Skip to content

Commit 83a9ee9

Browse files
authored
Merge pull request #13713 from jdaugherty/6.2.x
Merge Missing Changes from 6.1.x into 6.2.x
2 parents 333f0ab + e43ceee commit 83a9ee9

File tree

11 files changed

+149
-149
lines changed

11 files changed

+149
-149
lines changed

.github/workflows/gradle.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,6 @@ jobs:
3131
uses: gradle/gradle-build-action@29c0906b64b8fc82467890bfb7a0a7ef34bda89e # v3
3232
env:
3333
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
34-
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER }}
35-
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY }}
3634
with:
3735
arguments: build groovydoc
3836
publish:
@@ -55,8 +53,6 @@ jobs:
5553
uses: gradle/gradle-build-action@29c0906b64b8fc82467890bfb7a0a7ef34bda89e # v3
5654
env:
5755
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
58-
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER }}
59-
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY }}
6056
ARTIFACTORY_USERNAME: ${{ secrets.ARTIFACTORY_USERNAME }}
6157
ARTIFACTORY_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }}
6258
with:

.github/workflows/groovy-joint-workflow.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,10 @@ jobs:
5252
- name: Checkout Groovy 3_0_X (Grails 5 and later)
5353
if: startsWith(github.ref, 'refs/heads/6.') || startsWith(github.base_ref, '6.') || startsWith(github.ref, 'refs/heads/5.') || startsWith(github.base_ref, '5.')
5454
run: cd .. && git clone --depth 1 https://github.com/apache/groovy.git -b GROOVY_3_0_X --single-branch
55-
- name: Set CI_GROOVY_VERSION for Grails
55+
- name: Get Groovy version for Grails
5656
id: groovy-version
5757
run: |
5858
cd ../groovy
59-
echo "CI_GROOVY_VERSION=$(cat gradle.properties | grep groovyVersion | cut -d\= -f2 | tr -d '[:space:]')" >> $GITHUB_ENV
6059
echo "value=$(cat gradle.properties | grep groovyVersion | cut -d\= -f2 | tr -d '[:space:]')" >> $GITHUB_OUTPUT
6160
- name: Prepare GE Set-up Configuration
6261
id: ge_conf
@@ -130,7 +129,7 @@ jobs:
130129
distribution: 'adopt'
131130
java-version: '11'
132131
- name: Cache local Maven repository & Groovy
133-
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4
132+
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4
134133
with:
135134
path: |
136135
~/groovy
@@ -143,10 +142,11 @@ jobs:
143142
id: build_grails
144143
uses: gradle/gradle-build-action@29c0906b64b8fc82467890bfb7a0a7ef34bda89e # v3
145144
env:
145+
ORG_GRADLE_PROJECT_groovyVersion: ${{ needs.build_groovy.outputs.groovyVersion }}
146146
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
147147
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER }}
148148
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY }}
149149
with:
150150
arguments: |
151151
build
152-
-x groovydoc
152+
-x groovydoc

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY }}
5353
- name: Upload Distribution
5454
if: success()
55-
uses: actions/upload-artifact@v4
55+
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
5656
with:
5757
name: grails-${{ steps.release_version.outputs.value }}.zip
5858
path: build/distributions/grails-${{ steps.release_version.outputs.value }}.zip

.github/workflows/retry-release.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,6 @@ jobs:
4949
arguments: assemble
5050
env:
5151
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
52-
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER }}
53-
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY }}
5452
- name: Upload artifacts to the Github release
5553
id: upload_artifact
5654
if: steps.assemble.outcome == 'success'

build.gradle

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ ext {
2727
// When making changes in the dependencyVersions, remember to also update the Grails BOM Documentation:
2828
// https://docs.grails.org/snapshot/ref/Dependency%20Versions/Grails%20BOM.html
2929
dependencyVersions = [
30-
'fieldsPlugin' : [version: feildsPluginVersion,
30+
'fieldsPlugin' : [version: fieldsPluginVersion,
3131
group : 'org.grails.plugins',
3232
names : ['fields'],
3333
modules: ['']
@@ -220,14 +220,14 @@ if (isReleaseVersion) {
220220

221221
allprojects {
222222
repositories {
223-
mavenLocal()
223+
mavenLocal() // Used by the Groovy Joint Validation Github workflow after building groovy locally in CI
224224
mavenCentral()
225-
maven { url "https://repo.grails.org/grails/core" }
226-
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
225+
maven { url = "https://repo.grails.org/grails/core" }
226+
maven { url = "https://oss.sonatype.org/content/repositories/snapshots/" }
227227
if (groovyVersion.endsWith('-SNAPSHOT')) {
228-
maven {
229-
name 'JFrog OSS snapshot repo'
230-
url 'https://oss.jfrog.org/oss-snapshot-local/'
228+
maven { // Used for testing with Groovy snapshots locally
229+
name = 'Groovy Snapshot repository'
230+
url = 'https://groovy.jfrog.io/artifactory/libs-snapshot-local/'
231231
}
232232
}
233233
}

gradle.properties

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ cglibVersion=2.2.2
77
commonsLangVersion=2.6
88
datastoreVersion=8.1.2
99
directoryWatcherVersion=0.9.9
10-
feildsPluginVersion=5.1.0-SNAPSHOT
10+
fieldsPluginVersion=5.1.0-SNAPSHOT
1111
gdocEngineVersion=1.0.1
1212
gradleNexusPluginVersion=2.3.1
1313
gradleNexusStagingPluginVersion=0.12.0
@@ -42,6 +42,7 @@ spockVersion=2.1-groovy-3.0
4242
springBootVersion=2.7.18
4343
springLoadedVersion=1.2.8.RELEASE
4444
springVersion=5.3.39
45+
spring.version=5.3.39
4546
testingSupportVersion=3.2.1
4647
testingSupportVersionForTests=3.2.2
4748
tomcatLog4jVersion=8.5.2

grails-core/src/main/groovy/grails/boot/config/GrailsApplicationPostProcessor.groovy

Lines changed: 9 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -68,15 +68,10 @@ class GrailsApplicationPostProcessor implements BeanDefinitionRegistryPostProces
6868

6969
GrailsApplicationPostProcessor(GrailsApplicationLifeCycle lifeCycle, ApplicationContext applicationContext, Class...classes) {
7070
this.lifeCycle = lifeCycle
71-
if(lifeCycle instanceof GrailsApplicationClass) {
72-
this.applicationClass = (GrailsApplicationClass)lifeCycle
73-
}
74-
else {
75-
this.applicationClass = null
76-
}
77-
this.classes = classes != null ? classes : [] as Class[]
78-
grailsApplication = applicationClass != null ? new DefaultGrailsApplication(applicationClass) : new DefaultGrailsApplication()
79-
pluginManager = new DefaultGrailsPluginManager(grailsApplication)
71+
this.applicationClass = lifeCycle instanceof GrailsApplicationClass ? (GrailsApplicationClass) lifeCycle : null
72+
this.classes = classes ?: [] as Class[]
73+
this.grailsApplication = applicationClass ? new DefaultGrailsApplication(applicationClass) : new DefaultGrailsApplication()
74+
this.pluginManager = applicationContext?.getBeanNamesForType(GrailsPluginManager) ? applicationContext.getBean(GrailsPluginManager) : new DefaultGrailsPluginManager(grailsApplication)
8075
if(applicationContext != null) {
8176
setApplicationContext(applicationContext)
8277
}
@@ -290,30 +285,22 @@ class GrailsApplicationPostProcessor implements BeanDefinitionRegistryPostProces
290285
}
291286
}
292287

293-
@SuppressWarnings("GrMethodMayBeStatic")
294288
private void loadPluginConfigurationsToMicronautContext(ConfigurableApplicationContext applicationContext) {
295-
String[] beanNames = applicationContext.getBeanNamesForType(GrailsPluginManager)
296-
if (beanNames.length == 0) {
297-
// do not continue if PluginManager is not available
289+
ConfigurableApplicationContext parentApplicationContext = (ConfigurableApplicationContext) applicationContext.parent
290+
if (!parentApplicationContext) {
291+
// No Micronaut parent context, return early
298292
return
299293
}
300-
301-
GrailsPluginManager pluginManager = applicationContext.getBean(GrailsPluginManager)
302-
ConfigurableApplicationContext parentApplicationContext = (ConfigurableApplicationContext) applicationContext.parent
303294
ConfigurableEnvironment parentContextEnv = parentApplicationContext.getEnvironment()
304295
if (parentContextEnv instanceof MicronautEnvironment) {
305-
if (log.isDebugEnabled()) {
306-
log.debug("Loading configurations from the plugins to the parent Micronaut context")
307-
}
296+
log.debug('Loading configurations from the plugins to the parent Micronaut context')
308297
final io.micronaut.context.env.Environment micronautEnv = ((io.micronaut.context.env.Environment) parentContextEnv.getEnvironment())
309298
final GrailsPlugin[] plugins = pluginManager.allPlugins
310299
Integer priority = AbstractPropertySourceLoader.DEFAULT_POSITION
311300
Arrays.stream(plugins)
312301
.filter({ GrailsPlugin plugin -> plugin.propertySource != null })
313302
.forEach({ GrailsPlugin plugin ->
314-
if (log.isDebugEnabled()) {
315-
log.debug("Loading configurations from {} plugin to the parent Micronaut context", plugin.name)
316-
}
303+
log.debug('Loading configurations from {} plugin to the parent Micronaut context', plugin.name)
317304
micronautEnv.addPropertySource(PropertySource.of("grails.plugins.$plugin.name", (Map) plugin.propertySource.source, --priority))
318305
})
319306
micronautEnv.refresh()

grails-core/src/test/groovy/org/grails/plugins/GrailsPluginConfigurationClass.groovy

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
package org.grails.plugins
22

33
import grails.boot.config.GrailsAutoConfiguration
4-
import grails.core.DefaultGrailsApplication
54
import grails.core.GrailsApplication
65
import grails.plugins.GrailsPlugin
76
import grails.plugins.GrailsPluginManager
87
import groovy.transform.CompileStatic
9-
import org.grails.plugins.DefaultGrailsPlugin
10-
import org.grails.plugins.MockGrailsPluginManager
118
import org.springframework.context.annotation.Bean
129
import org.springframework.context.annotation.Configuration
1310
import org.springframework.core.io.FileSystemResource
@@ -24,17 +21,17 @@ class GrailsPluginConfigurationClass extends GrailsAutoConfiguration {
2421

2522
@Bean(name = "grailsPluginManager")
2623
GrailsPluginManager getGrailsPluginManager() {
27-
String tempDir = System.getProperty("java.io.tmpdir")
28-
GrailsApplication grailsApplication = new DefaultGrailsApplication()
29-
final MockGrailsPluginManager pluginManager = new MockGrailsPluginManager(grailsApplication)
30-
final List<DefaultGrailsPlugin> plugins = createGrailsPlugins(grailsApplication)
31-
plugins.forEach({ plugin -> pluginManager.registerMockPlugin((GrailsPlugin) plugin)})
32-
return pluginManager
24+
MockGrailsPluginManager pluginManager = new MockGrailsPluginManager()
25+
createGrailsPlugins(pluginManager.application).each {
26+
pluginManager.registerMockPlugin(it)
27+
}
28+
pluginManager
3329
}
3430

35-
private List<DefaultGrailsPlugin> createGrailsPlugins(DefaultGrailsApplication grailsApplication) {
31+
private List<GrailsPlugin> createGrailsPlugins(GrailsApplication grailsApplication) {
3632
final String grailsVersion = '4.0.1'
3733
def gcl = new GroovyClassLoader()
34+
3835
GrailsPlugin plugin = new MockTestGrailsPlugin(gcl.parseClass("""class TestGrailsPlugin {
3936
def version = '1.0.0'
4037
def grailsVersion = '$grailsVersion'
@@ -45,7 +42,8 @@ class GrailsPluginConfigurationClass extends GrailsAutoConfiguration {
4542
def version = '1.0.0'
4643
def grailsVersion = '$grailsVersion'
4744
}"""), grailsApplication)
48-
[plugin, plugin2]
45+
46+
List<GrailsPlugin>.of(plugin, plugin2)
4947
}
5048

5149
class MockTestGrailsPlugin extends DefaultGrailsPlugin {
@@ -82,10 +80,6 @@ class GrailsPluginConfigurationClass extends GrailsAutoConfiguration {
8280

8381
class MockTestTwoGrailsPlugin extends DefaultGrailsPlugin {
8482

85-
MockTestTwoGrailsPlugin(Class<?> pluginClass, Resource resource, GrailsApplication application) {
86-
super(pluginClass, resource, application)
87-
}
88-
8983
MockTestTwoGrailsPlugin(Class<?> pluginClass, GrailsApplication application) {
9084
super(pluginClass, application)
9185
}

0 commit comments

Comments
 (0)