Skip to content

Commit 4b95ad4

Browse files
committed
fix: #14930 - switch to a single shadow project so that slf4j can be excluded
1 parent 598ddf8 commit 4b95ad4

File tree

4 files changed

+9
-38
lines changed

4 files changed

+9
-38
lines changed

grails-forge/grails-shell-cli-shadow/build.gradle renamed to grails-forge/grails-cli-shadow/build.gradle

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,11 @@ dependencies {
4141
implementation 'org.apache.grails:grails-core' // for ApplicationContextCommandFactory to lookup commands
4242
implementation 'org.apache.grails:grails-url-mappings' // for UrlMappingsReportCommand
4343
// profiles will add additional libraries as needed to surface commands
44+
45+
// forge dependencies
46+
implementation project(':grails-forge-cli'), {
47+
exclude group: 'org.slf4j', module: 'slf4j-nop'
48+
}
4449
}
4550

4651
apply {

grails-forge/grails-cli/build.gradle

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -38,17 +38,13 @@ ext {
3838
version = projectVersion
3939
group = 'org.apache.grails'
4040

41-
evaluationDependsOn(':grails-forge-cli')
42-
evaluationDependsOn(':grails-shell-cli-shadow')
41+
evaluationDependsOn(':grails-cli-shadow')
4342
dependencies {
4443
implementation platform("org.apache.grails:grails-bom:$projectVersion")
4544
implementation 'org.apache.groovy:groovy'
4645

47-
// shell-cli dependencies
48-
runtimeOnly files(project(':grails-shell-cli-shadow').tasks.named('shadowJar'))
49-
50-
// forge dependencies
51-
runtimeOnly files(project(':grails-forge-cli').tasks.named('shadowJar'))
46+
// forge & shell-cli dependencies have to be pulled via a file to ensure the transforms are applied to both dependencies and our own projects
47+
runtimeOnly files(project(':grails-cli-shadow').tasks.named('shadowJar'))
5248
}
5349

5450
apply {

grails-forge/grails-forge-cli/build.gradle

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ plugins {
2727
id 'groovy'
2828
id 'java-library'
2929
id 'org.grails.forge.rocker'
30-
id 'com.gradleup.shadow'
3130
}
3231

3332
version = projectVersion
@@ -107,35 +106,6 @@ dependencies {
107106
testImplementation "org.codehaus.groovy:groovy-test:$groovyVersion"
108107
}
109108

110-
TaskProvider<Jar> shadowJarTask = tasks.named('shadowJar', ShadowJar)
111-
shadowJarTask.configure { ShadowJar it ->
112-
it.archiveClassifier.set('all')
113-
114-
// services & custom grails.factories have to be merged since commands can be created from both sources
115-
it.mergeServiceFiles()
116-
it.mergeServiceFiles('META-INF/grails.factories')
117-
118-
// groovy extensions are shipped with grails-core
119-
it.mergeGroovyExtensionModules()
120-
121-
// combines all NOTICE files
122-
it.transform(GrailsShadowNoticeTransform) {
123-
it.projectName = 'Apache Grails'
124-
it.inceptionYear = '2005'
125-
}
126-
127-
// combines all LICENSE files
128-
it.transform(GrailsShadowLicenseTransform) {
129-
it.licenseText = rootProject.layout.projectDirectory.file('../licenses/LICENSE-Apache-2.0.txt').getAsFile().text
130-
}
131-
132-
it.exclude(
133-
'DISCLAIMER', // because we include our own jars, we need to exclude any files that we include
134-
'META-INF/DEPENDENCIES', // until we publish our own SBOM, this won't be correct so exclude
135-
'about.html' // restatement of the Eclipse Distribution License - Version 1.0 for jakarta
136-
)
137-
}
138-
139109
rocker {
140110
postProcessing = ['org.grails.forge.rocker.plugin.WhitespaceProcessor']
141111
}

grails-forge/settings.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ include(
5454
'grails-cli',
5555
'grails-forge-core',
5656
'grails-forge-cli',
57-
'grails-shell-cli-shadow', // used by delegating cli, but not published
57+
'grails-cli-shadow', // to allow us to transform our own artifacts
5858
'test-core',
5959
'grails-forge-api',
6060
'grails-forge-web-netty',

0 commit comments

Comments
 (0)