This is an automated email from the ASF dual-hosted git repository.

jamesfredley pushed a change to branch upgrade/gradle-9.3.1
in repository https://gitbox.apache.org/repos/asf/grails-core.git


    from a52f2df2f1 Merge branch '8.0.x' into upgrade/gradle-9.3.1
     add 4218868c6e Simplify importGrailsCommonAnnotations check
     add 3cb6063959 Merge branch '7.1.x' into 7.1.x-startImports-check
     add a9c1d1aa66 groovy refactor
     add babbedccca Merge pull request #15361 from 
codeconsole/7.1.x-startImports-check
     add 45b4680c96 [skip ci] Release v7.0.7
     add 105c12e1b4 Update root-reserve-mb to 4096 in gradle.yml
     add 2f307d3d29 Increase root reserve space to 4 GB in release workflow
     add 6fe1360fca Add standalone workflow for publishing documentation
     add a42aa087f6 Merge pull request #15368 from 
apache/ci/publish-docs-workflow
     add 74a4bdd3f8 Use workflow_dispatch ref instead of manual inputs
     add 6420033e8b Merge pull request #15369 from 
apache/ci/publish-docs-workflow
     add c828b81ee3 Add version input while using branch from workflow dispatch
     add cd67c3f3d2 Merge pull request #15370 from 
apache/ci/publish-docs-workflow
     add a91af5588f Set build-mount-path to /home/runner
     add 45df475255 Merge pull request #15371 from 
apache/ci/publish-docs-workflow
     add 6cce089473 Increase build runner root reserve to 6 GB
     add 0aba2a9f8b Remove build-mount-path from publish-docs workflow
     add 771d483924 Remove maximize-build-space step from workflow
     add 801c628822 Merge branch '7.0.x' into release-7.0.7-docs
     add eda4479a88 Maximize build space in publish-docs workflow
     add d0696e686c Replace maximize-build-space with manual cleanup
     add a5d9f71834 Update build space maximization method in workflow
     add 0047ba6337 Add release-close workflow; rename publish-docs
     add 01764cf338 Merge branch '7.0.x' into release-7.0.7-docs
     add ea12b76202 [skip ci] Bump version to release-7.0.8-SNAPSHOT
     add 207758c8df Fix expected Grails version in unit test
     add aafb7158b8 Update project version to 7.0.8-SNAPSHOT
     add 69e47e3d62 Merge pull request #15372 from 
apache/merge-back-release-7.0.7-docs
     add 80f93d9948 Bump com.gradle.develocity from 4.1.1 to 4.2.2 in 
/grails-forge
     add 2e47155016 Merge pull request #15137 from 
apache/dependabot/gradle/grails-forge/7.0.x/com.gradle.develocity-4.2.2
     add 4c4c85292b Merge branch '7.0.x' into 7.1.x
     add 025d43fc24 Merge branch '7.1.x' into 8.0.x
     add fed50d0f2c #15378 - Update asset pipeline to 5.0.32
     add 4ca9b1ebce Merge pull request #15379 from jdaugherty/7.0.x
     add 1f7594c2c4 #15376 - remove .mailmap
     add 71f076e812 Merge branch '7.0.x' into 7.1.x
     add 5dbe4667c4 Merge branch '7.1.x' into 8.0.x
     add c9544f62b1 feat(grails-gradle): move indy configuration from generated 
apps to Gradle plugin
     add 6e696327f1 docs: update upgrade guide for indy configuration move to 
Gradle plugin
     add 5880404fac fix: add setIndy setter and defer indy configuration to 
afterEvaluate
     add 4f08683f85 Fix typo in upgrading documentation for Groovy 4
     add d1db8ab004 Merge pull request #15375 from 
apache/feat/move-indy-config-to-gradle-plugin
     add 4415845554 test(ci): add indy matrix to functional test CI jobs
     add a7d262bc0e Merge pull request #15415 from 
jamesfredley/test/indy-ci-coverage
     add f106a6e6e8 fix GRAILS_REPO_URL in profile app generation to not output 
a regular string for path based repositories
     add 010ab77e13 Merge pull request #15383 from jdaugherty/7.0.x
     add 6f9ae2ba52 Incorrect password mapping in DataSourceSettings
     add 1166c26602 Merge pull request #15381 from rahulshishodia/ds-mapping
     add b531f5d1c7 docs: Update Maven Central badge in Geb README.md
     add d44784efff Merge pull request #15390 from apache/matrei-patch-1
     add 890e2fd220 Remove MVCC=true from H2 urls
     add b697f35f36 Merge pull request #15389 from jdaugherty/7.0.x
     add 50ceb6f46d Document CodeNarc configuration for Grails projects
     add 5c1baa1caa Align CodeNarc docs with canonical ruleset and 
grails-server-timing feedback
     add 19ce40acdc Move code analysis out of testing into new section per 
review
     add a1257482f7 Bump actions/checkout from 4 to 6
     add ddf4afd358 Merge pull request #15380 from 
apache/dependabot/github_actions/actions/checkout-6
     add c59fe669f4 test: stabilize flaky scaffolding Geb tests for slow CI 
environments
     add dd973f5032 fix: remove waitFor from cleanup to prevent 
WaitTimeoutException in Geb lifecycle
     add 1d02a35cef test: cleanup tests with Page objects
     add af04a73cb4 Merge pull request #15394 from 
apache/fix/flaky-scaffolding-geb-tests
     add b5b7f46d16 Include jakarta.servlet-api in CLI runtime classpath
     add 4ada477550 Merge pull request #15392 from 
jamesfredley/fix/grails-cli-servlet-classpath
     add 534a3e58a2 fix: filter command options from Spring Boot args in 
GrailsApplicationContextCommandRunner and GrailsApplicationScriptRunner
     add f1c335af60 Simplify filterCommandOptions to idiomatic Groovy findAll 
per review feedback
     add 2c855f7f02 fix: add defensive null guard to filterCommandOptions
     add 9fea2dea0c Merge pull request #15397 from 
jamesfredley/fix/command-runner-spring-boot-arg-conflict
     add 4ff82d73e9 docs: add comment explaining why jakarta.servlet-api is 
implementation scope
     add 3d1d619478 Merge pull request #15412 from 
apache/docs/cli-servlet-dependency-comment
     add 4e04e96f81 fix: preserve explicit datasource qualifiers for 
MultiTenant entities in allQualifiers()
     add fe2682be81 test: add DataServiceMultiTenantMultiDataSourceSpec for 
DISCRIMINATOR + secondary datasource
     add 58b5fe2c9d test: add functional test app and address review feedback 
for MultiTenant + multi-datasource
     add d507d56731 test: register functional test app in settings.gradle and 
add logback.xml
     add 465218f747 test: clean up some tests
     add db9083dc8f Merge pull request #15393 from 
jamesfredley/fix/multitenant-datasource-qualifier-routing
     add ceb3e52195 Merge branch '7.0.x' into docs/codenarc-gorm-compatibility
     add dd033e5b98 Merge pull request #15404 from 
jamesfredley/docs/codenarc-gorm-compatibility
     add 749ac0edd0 Propagate Java toolchain to JavaExec tasks
     add fec38f4908 Rewrite toolchain tests to Spock with file-based fixtures
     add 5d7c861a40 fix: move test system properties to shared 
test-config.gradle
     add 63beaf36fb Merge pull request #15403 from 
jamesfredley/fix/javaexec-toolchain-inheritance
     add c441af1fa8 fix: reject unsupported JSP/Groovy declaration blocks in 
GSP parser
     add 8472bb3b69 Merge pull request #15398 from 
jamesfredley/fix/gsp-declaration-block-error
     add 55b443443b fix: route auto-implemented save/delete/get through 
connection-aware API
     add 07fb4937af fix: route FindAndDeleteImplementer through 
connection-aware API + add tests
     add 6524784893 test: add DataServiceMultiDataSourceSpec and functional 
test app for connection routing
     add 1b5c7c1589 test: add logback.xml to functional test app
     add cad5796a38 refactor: harmonize newMethodNode usage and add interface 
Data Service TCK tests
     add 3e742f6aab Merge branch '7.0.x' into 
fix/data-service-connection-routing
     add 647ffd41bb test: clean up some tests and improve readability
     add 7cfae2f071 fix: use abstractMethodNode for findConnectionId to resolve 
class-level @Transactional annotations
     add 66fcfb85e5 test: clean up and improve readability
     add 0202ae682b Merge pull request #15395 from 
jamesfredley/fix/data-service-connection-routing
     add 3a7c0f99a5 fix: remove @CompileStatic-incompatible lazy getters from 
@Service abstract classes
     add 70a04fdeb0 test: add functional test for @CompileStatic service with 
injected @Service property
     add aa9fb52c9c fix: address Copilot review - correct comment and test name 
accuracy
     add e71a310230 fix: remove unused imports left over from lazy getter 
removal
     add b4c9e6ce21 style: whitespace for readability
     add 0cb1654740 style(test): formatting
     add bc9aa89836 Merge pull request #15396 from 
jamesfredley/fix/compile-static-service-injection
     add f09f5f90c4 fix: use Page Object pattern for flaky Geb tests across all 
subprojects
     add 4be5f97fe8 fix: address review feedback - add leading slashes to URLs, 
rename AdminPagePage/FrontendPagePage
     add 138c52665e test: some more cleanup of geb specs
     add 2e3bf9d477 ci: trigger CI re-run
     add 8519169c4f docs: correct timeout settings in Geb README.md
     add 4e643d216f chore: double the Geb timeout setting for CI to 10 seconds
     add 7a40ae107d fix(geb): overriding default timeouts with settings
     add aad9bf13b2 Merge branch '7.0.x' into fix/flaky-geb-tests
     add 93e150c0df Merge pull request #15410 from 
jamesfredley/fix/flaky-geb-tests
     add 053610bb49 Merge branch '7.0.x' into 7.1.x
     add f89fb0313b Merge branch '7.1.x' into 8.0.x
     add 32ac3863a5 prevent duplicate loading of micronaut beans & fix bootJar 
task
     add 37f5114dbf Merge remote-tracking branch 'origin/7.0.x' into 
micronaut-fixes
     add 6fd254b99d fix: configure Micronaut annotation processor and CLASSIC 
loader in GrailsGradlePlugin
     add 19fa41e0fe fix: add bootWar CLASSIC loader to Forge-generated 
build.gradle
     add beff44a522 chore: add Apache license header to GrailsMicronautValidator
     add 888fa45a59 test: add integration tests for Micronaut bean type 
registration
     add 6d4dfc9e2f docs: document Micronaut annotation processor and CLASSIC 
loader in upgrade guide
     add fbf50a26b8 fix: exclude Spring Boot DevTools for Micronaut apps in 
Forge
     add b3062c6478 test: add bean duplication and cross-context identity tests 
for Micronaut
     add b04d6d51ef fix: address review feedback on test correctness and 
documentation
     add 4e9d6b9259 refactor: extract JavaMessageProvider to its own file
     add ae7747aee5 fix: remove annotation processor auto-config and add 
declarative @Client test
     add e6e202ab13 Merge branch '7.0.x' into micronaut-fixes-2
     add 782b950a65 test: invoke declarative @Client through load balancing 
path with ersatz mock
     add 03d1a51674 fix: restore Micronaut annotation processor auto-config in 
GrailsGradlePlugin
     add 79cdfc189e fix: move Micronaut annotation processor config to test 
apps with Java sources
     add af9191215c style: formatting and readability
     add f4fe7bdc1e refactor: groovify
     add 6c812442a4 Use BootArchive instead of BootWar/BootJar
     add 749364dd9a Remove unused imports
     add 52f1180917 Fix exists() cross-join caused by duplicate CriteriaQuery 
root
     add d430eed0a6 Merge pull request #15419 from apache/fix/exists-cross-join
     add 251e6fd857 Merge branch '7.0.x' into micronaut-fixes-2
     add 6b59b6f1a3 Address PR review feedback: comprehensive ersatz tests, 
plugin @Singleton beans, and docs updates
     add db7f62f9bb Exhaustive ersatz integration tests for all Micronaut 
client patterns
     add 7c25aa5cf3 Auto-exclude Spring Boot LiquibaseAutoConfiguration when 
Database Migration Plugin is present
     add 8fd3c59a46 Switch to AST-based LiquibaseAutoConfiguration exclusion 
with opt-out
     add a2e6cd15d4 refactor: groovify and readability
     add 656158070e test: clean up and simplify
     add f608051cdc Merge branch '7.0.x' into fix/liquibase-autoconfig-exclusion
     add ca84fb2513 Rename system property to 
grails.autoconfigure.exclude.liquibase
     add 26a8ee47ad Merge pull request #15405 from 
jamesfredley/fix/liquibase-autoconfig-exclusion
     add 3bc530e990 fix: copy missing fields in AbstractDetachedCriteria.clone()
     add 8395e3d8a3 Merge pull request #15424 from 
apache/fix/detached-criteria-clone
     add 13d86abc46 fix: add jboss-threads 3.9.2 to Undertow feature for Java 
25 compatibility
     add f4f9120872 Merge pull request #15427 from 
apache/fix/undertow-jboss-threads-java25
     add f8fd27a682 Upgrade to Spring Boot 3.5.11
     add c8b1b28d89 test(deps): bump `grails-spring-security`
     add 1b4a0ba679 Merge pull request #15428 from apache/upgrade-boot
     add c0d58dfda8 fix: add Java 23+/24+ compatibility JVM args and upgrade 
commons-lang3 to 3.20.0
     add 7ed3ffde65 fix: make Java compat tests JDK-version-aware for CI on 
Java 25
     add 8f22d071a5 Merge branch '7.0.x' into fix/java-compat-jvm-args
     add abbde8cf43 fix: replace afterEvaluate with plugins.withId and add 
logger.info per review
     add b3c414b875 fix: replace afterEvaluate with lazy plugin syntax in 
configureToolchainForForkTasks
     add 418cde8b33 Merge pull request #15417 from 
apache/fix/java-compat-jvm-args
     add 7ae3260c47 Fix @Where and DetachedCriteria query methods ignoring 
@Transactional(connection)
     add dbb0e9851e Merge branch '7.0.x' into fix/where-connection-routing
     add 98e9b512fd Add @Where connection routing TCK test for multi-datasource 
support
     add 5a50372074 refactor: use public GORM multi-datasource API in test 
helpers
     add 118f897eab Merge pull request #15418 from 
apache/fix/where-connection-routing
     add 47e4cbd8a2 Merge branch '7.0.x' into micronaut-fixes-2
     add 13447162ac test: add Groovy-only Micronaut test module
     add c80069261c Merge pull request #15411 from apache/micronaut-fixes-2
     add fe158099bc test: add @Query Data Service connection routing tests
     add a514a047c9 fix: restore removed documentation comments
     add 95bb3023f1 Merge pull request #15423 from 
apache/test/query-connection-routing
     add 2988347767 Merge pull request #15434 from apache/7.0.x
     add ca408bf1d9 Merge remote-tracking branch 'upstream/7.1.x' into 8.0.x
     add d9eb4d15bd ci: reduce indy=true to one job per test type
     add 587980e5d5 Merge pull request #15438 from 
jamesfredley/ci/indy-one-per-job
     add 5f250cb93f fix(grails-gradle): change indy log level from lifecycle to 
info
     add f5806529bb Merge pull request #15446 from apache/fix/indy-log-level
     add 1c3e18ec24 docs: add quality rules to AGENTS.md critical rules
     add 6a79a64983 Merge pull request #15440 from 
apache/docs/agents-md-conventions
     add 2e3f6a8e7a fix: where query composition fails when variable is 
re-assigned in if/else blocks
     add 4db4ed8126 test: add functional tests for where query composition with 
re-assigned variables
     add dee7d110ac fix: update variable type for constructor case in 
visitBinaryExpression
     add da6bf78e32 Merge pull request #15447 from 
apache/fix/where-query-reassignment-composition
     add f0e966098a Merge pull request #15449 from apache/7.0.x
     add bb9a4ca0ee Merge pull request #15450 from apache/7.1.x
     add f9cef7d394 fix: use GroovyPlugin class reference instead of string in 
GrailsGradlePlugin
     add 237b8ec59d Merge pull request #15451 from 
jamesfredley/fix/unused-groovyplugin-import
     add fb05e70439 Merge remote-tracking branch 'origin/8.0.x' into 
upgrade/gradle-9.3.1

No new revisions were added by this update.

Summary of changes:
 .github/workflows/codeql.yml                       |   2 +-
 .github/workflows/codestyle.yml                    |   6 +-
 .github/workflows/forge-deploy-next.yml            |   6 +-
 .github/workflows/forge-deploy-prev-snapshot.yml   |   6 +-
 .github/workflows/forge-deploy-prev.yml            |   6 +-
 .github/workflows/forge-deploy-release.yml         |   6 +-
 .github/workflows/forge-deploy-snapshot.yml        |   6 +-
 .github/workflows/gradle.yml                       |  76 +-
 .github/workflows/groovy-joint-workflow.yml        |   4 +-
 .github/workflows/rat.yml                          |   2 +-
 .github/workflows/release-close.yml                |  96 +++
 .github/workflows/release-publish-docs.yml         |  79 ++
 .github/workflows/release.yml                      |  34 +-
 .mailmap                                           | 933 ---------------------
 AGENTS.md                                          |   4 +
 dependencies.gradle                                |   8 +-
 gradle.properties                                  |   3 +-
 gradle/functional-test-config.gradle               |   1 +
 gradle/grails-extension-gradle-config.gradle       |   7 +
 grails-console/build.gradle                        |   1 +
 .../GrailsApplicationContextCommandRunner.groovy   |  34 +-
 .../ui/script/GrailsApplicationScriptRunner.groovy |   9 +-
 ...railsApplicationContextCommandRunnerSpec.groovy | 136 +++
 .../GrailsApplicationScriptRunnerSpec.groovy       |  54 ++
 .../injection/ApplicationClassInjector.groovy      |  46 +-
 .../injection/ApplicationClassInjectorSpec.groovy  | 100 +++
 grails-core/src/test/resources/application.yml     |   4 +-
 .../src/test/resources/foo-plugin-environments.yml |   4 +-
 .../grails-app/conf/application.yml                |   8 +-
 .../AbstractHibernateGormStaticApi.groovy          |   2 +-
 .../core/GrailsDataHibernate5TckManager.groovy     |  47 +-
 .../orm/hibernate/ExistsCrossJoinSpec.groovy       | 122 +++
 .../DataServiceMultiDataSourceSpec.groovy          | 472 +++++++++++
 ...ataServiceMultiTenantMultiDataSourceSpec.groovy | 297 +++++++
 .../WhereQueryMultiDataSourceSpec.groovy           | 179 ++++
 grails-data-hibernate5/dbmigration/README.md       |  22 +
 .../mongo/core/GrailsDataMongoTckManager.groovy    |  38 +
 .../gorm/tests/MultipleDataSourceSpec.groovy       |  67 +-
 .../grails/gorm/tests/WhereMethodSpec.groovy       |  67 ++
 .../org/grails/datastore/gorm/GormEnhancer.groovy  |  18 +-
 .../jdbc/connections/DataSourceSettings.groovy     |   2 +-
 .../query/criteria/AbstractDetachedCriteria.groovy |   4 +
 .../transform/DetachedCriteriaTransformer.java     |  83 ++
 ...stractDetachedCriteriaServiceImplementor.groovy |  13 +-
 .../implementers/AbstractSaveImplementer.groovy    |   6 +-
 .../implementers/AbstractWhereImplementer.groovy   |   8 +-
 .../services/implementers/DeleteImplementer.groovy |  11 +-
 .../implementers/FindAndDeleteImplementer.groovy   |  32 +-
 .../services/implementers/SaveImplementer.groovy   |  19 +-
 .../implementers/UpdateOneImplementer.groovy       |   2 +-
 .../transform/ServiceTransformation.groovy         |  23 +-
 .../CompileStaticServiceInjectionSpec.groovy       | 356 ++++++++
 .../ConnectionRoutingServiceTransformSpec.groovy   | 380 +++++++++
 .../services/WhereConnectionRoutingSpec.groovy     | 211 +++++
 .../gorm/GormEnhancerAllQualifiersSpec.groovy      | 204 +++++
 .../criteria/DetachedCriteriaCloneSpec.groovy      | 123 +++
 .../testing/tck/base/GrailsDataTckManager.groovy   |  16 +
 .../testing/tck/domains/WhereRoutingItem.groovy    |  43 +
 .../tck/domains/WhereRoutingItemService.groovy     |  37 +
 .../tests/WhereQueryConnectionRoutingSpec.groovy   | 140 ++++
 grails-doc/src/en/guide/bestPractices.adoc         |  20 +
 .../en/guide/bestPractices/codeAnalysisGroovy.adoc | 159 ++++
 .../dataSource/automaticDatabaseMigration.adoc     |  15 +-
 .../guide/conf/dataSource/multipleDatasources.adoc |  12 +-
 grails-doc/src/en/guide/conf/environments.adoc     |   6 +-
 grails-doc/src/en/guide/toc.yml                    |   3 +
 .../src/en/guide/upgrading/upgrading60x.adoc       |  33 +-
 .../build/gradle/templates/buildGradle.rocker.raw  |   6 +-
 .../micronaut/GrailsMicronautValidator.java        |  48 ++
 .../feature/reloading/SpringBootDevTools.java      |  12 +-
 .../feature/spring/SpringBootUndertowFeature.java  |   4 +
 .../grails-forge-core/src/main/resources/pom.xml   |   6 +
 .../reloading/SpringBootDevToolsSpec.groovy        |  32 +-
 .../forge/feature/spring/SpringBootSpec.groovy     |  14 +
 grails-geb/README.md                               |   4 +-
 .../src/main/templates/FunctionalSpec.groovy       |  19 +-
 .../plugin/geb/WebDriverContainerHolder.groovy     |   4 +-
 grails-gradle/gradle/test-config.gradle            |   2 +
 grails-gradle/plugins/build.gradle                 |  11 +
 .../gradle/plugin/core/GrailsExtension.groovy      |  14 +
 .../gradle/plugin/core/GrailsGradlePlugin.groovy   | 182 +++-
 .../gradle/plugin/core/GradleSpecification.groovy  | 134 +++
 .../core/GrailsGradlePluginJavaCompatSpec.groovy   | 109 +++
 .../core/GrailsGradlePluginToolchainSpec.groovy    | 136 +++
 .../fork-settings-custom/build.gradle              |  18 +
 .../fork-settings-custom/gradle.properties         |   1 +
 .../grails-app/conf/application.yml                |   0
 .../fork-settings-custom/settings.gradle           |   1 +
 .../fork-settings-defaults/build.gradle            |  18 +
 .../fork-settings-defaults/gradle.properties       |   1 +
 .../grails-app/conf/application.yml                |   0
 .../fork-settings-defaults/settings.gradle         |   1 +
 .../java-compat-no-toolchain/build.gradle          |  21 +
 .../java-compat-no-toolchain/gradle.properties     |   1 +
 .../grails-app/conf/application.yml                |   0
 .../java-compat-no-toolchain/settings.gradle       |   1 +
 .../java-compat-toolchain-23/build.gradle          |  29 +
 .../java-compat-toolchain-23/gradle.properties     |   1 +
 .../grails-app/conf/application.yml                |   0
 .../java-compat-toolchain-23/settings.gradle       |   1 +
 .../java-compat-toolchain-24/build.gradle          |  29 +
 .../java-compat-toolchain-24/gradle.properties     |   1 +
 .../grails-app/conf/application.yml                |   0
 .../java-compat-toolchain-24/settings.gradle       |   1 +
 .../java-compat-toolchain-current/build.gradle     |  27 +
 .../gradle.properties                              |   1 +
 .../grails-app/conf/application.yml                |   0
 .../java-compat-toolchain-current/settings.gradle  |   1 +
 .../no-toolchain-javaexec/build.gradle             |  19 +
 .../no-toolchain-javaexec/gradle.properties        |   1 +
 .../grails-app/conf/application.yml                |   0
 .../no-toolchain-javaexec/settings.gradle          |   1 +
 .../test-projects/no-toolchain-web/build.gradle    |   9 +
 .../no-toolchain-web/gradle.properties             |   1 +
 .../grails-app/conf/application.yml                |   0
 .../test-projects/no-toolchain-web/settings.gradle |   1 +
 .../test-projects/toolchain-command/build.gradle   |  25 +
 .../toolchain-command/gradle.properties            |   1 +
 .../grails-app/conf/application.yml                |   0
 .../toolchain-command/settings.gradle              |   1 +
 .../test-projects/toolchain-javaexec/build.gradle  |  26 +
 .../toolchain-javaexec/gradle.properties           |   1 +
 .../grails-app/conf/application.yml                |   0
 .../toolchain-javaexec/settings.gradle             |   1 +
 .../test-projects/toolchain-override/build.gradle  |  30 +
 .../toolchain-override/gradle.properties           |   1 +
 .../grails-app/conf/application.yml                |   0
 .../toolchain-override/settings.gradle             |   1 +
 .../test-projects/toolchain-test/build.gradle      |  21 +
 .../test-projects/toolchain-test/gradle.properties |   1 +
 .../toolchain-test/grails-app/conf/application.yml |   0
 .../test-projects/toolchain-test/settings.gradle   |   1 +
 .../org/grails/gsp/compiler/GroovyPageParser.java  |  13 +-
 .../groovy/org/grails/web/pages/ParseSpec.groovy   |  31 +
 grails-micronaut/build.gradle                      |   3 +-
 .../micronaut/GrailsMicronautGrailsPlugin.groovy   |  36 +-
 grails-profiles/base/skeleton/build.gradle         |   4 -
 grails-shell-cli/build.gradle                      |   8 +-
 .../cli/profile/commands/CreateAppCommand.groovy   |   8 +-
 .../functionaltests/BookFunctionalSpec.groovy      |  47 +-
 .../groovy/functionaltests/HomeSpec.groovy         |  37 +-
 .../groovy/functionaltests/LoadAfterSpec.groovy    |  10 +-
 .../functionaltests/MiscFunctionalSpec.groovy      |  28 +-
 .../layout/LayoutFunctionalSpec.groovy             |  27 +-
 .../layout/LayoutWithTemplateSpec.groovy           |  13 +-
 .../functionaltests/pages/BarListPage.groovy}      |  15 +-
 .../groovy/functionaltests/pages/BookPages.groovy  |  62 ++
 .../pages/ConventionLayoutPage.groovy}             |  15 +-
 .../functionaltests/pages/FooLayoutPage.groovy}    |  15 +-
 .../pages/FooLayoutSnippetPage.groovy}             |  15 +-
 .../functionaltests/pages/FooListPage.groovy}      |  15 +-
 .../groovy/functionaltests/pages/HomePage.groovy}  |  20 +-
 .../functionaltests/pages/LoginAuthPage.groovy}    |  15 +-
 .../groovy/functionaltests/pages/MiscPages.groovy} |  27 +-
 .../functionaltests/pages/PartialPage.groovy}      |  15 +-
 .../scaffolding/BarFunctionalSpec.groovy           |  14 +-
 .../scaffolding/FooFunctionalSpec.groovy           |  14 +-
 .../groovy/app2/NotFoundHandlerSpec.groovy         |  22 +-
 .../groovy/app2/pages/FooPages.groovy}             |  23 +-
 .../groovy/app3/LoadAfterSpec.groovy               |   9 +-
 .../groovy/app3/pages/LoginAuthPage.groovy}        |  15 +-
 .../groovy/exploded/LoadAfterSpec.groovy           |   9 +-
 .../groovy/exploded/pages/LoginAuthPage.groovy}    |  14 +-
 .../services/gorm/AuthorDataService.groovy}        |  26 +-
 .../services/gorm/CompileStaticBookService.groovy  |  89 ++
 .../groovy/gorm/ExistsSpec.groovy}                 |  38 +-
 .../groovy/gorm/GormDataServicesSpec.groovy        | 177 ++--
 .../groovy/gorm/GormWhereQueryAdvancedSpec.groovy  |  47 ++
 .../build.gradle                                   |  21 +-
 .../grails-app/conf/application.yml                |  58 ++
 .../grails-app/conf/logback.xml                    |  37 +
 .../grails-app/domain/example/Product.groovy}      |  25 +-
 .../grails-app/init/example/Application.groovy}    |  19 +-
 .../services/example/ProductService.groovy         |  58 ++
 .../DataServiceMultiDataSourceSpec.groovy          | 180 ++++
 .../functional/tests/BookControllerSpec.groovy     |  24 +-
 .../functional/tests/pages/BookPages.groovy}       |  40 +-
 .../build.gradle                                   |  21 +-
 .../grails-app/conf/application.yml                |  62 ++
 .../grails-app/conf/logback.xml                    |  37 +
 .../grails-app/domain/example/Metric.groovy}       |  37 +-
 .../grails-app/init/example/Application.groovy}    |  16 +-
 .../services/example/MetricService.groovy          |  65 ++
 .../MultiTenantMultiDataSourceSpec.groovy          | 183 ++++
 .../build.gradle                                   |  18 +-
 .../grails-app/conf/application.yml                |  35 +-
 .../micronautgroovyonly}/UrlMappings.groovy        |   3 +-
 .../init/micronautgroovyonly/Application.groovy}   |  22 +-
 .../BeanInjectionService.groovy}                   |  33 +-
 .../micronautgroovyonly/TestService.groovy}        |  16 +-
 .../BeanInjectionServiceSpec.groovy                |  57 ++
 .../MicronautContextSpec.groovy                    |  83 ++
 .../MicronautQualifierSpec.groovy                  |  97 +++
 .../main/groovy/bean/injection/AppConfig.groovy}   |  18 +-
 .../bean/injection/FactoryCreatedService.groovy}   |  17 +-
 .../groovy/bean/injection/NamedService.groovy}     |  16 +-
 .../bean/injection/PrimaryNamedService.groovy}     |  16 +-
 .../main/groovy/bean/injection/Qualified.groovy    |   0
 .../bean/injection/QualifiedNamedService.groovy}   |  17 +-
 .../bean/injection/RegularNamedService.groovy}     |  18 +-
 .../groovy/bean/injection/ServiceFactory.groovy}   |  22 +-
 .../bean/injection/SpecialNamedService.groovy      |   0
 grails-test-examples/micronaut/build.gradle        |  14 +-
 .../micronaut/grails-app/conf/application.yml      |   7 +
 .../micronaut/ExternalApiController.groovy         | 113 +++
 ...pings.groovy => MicronautTestController.groovy} |  42 +-
 .../controllers/micronaut/UrlMappings.groovy       |  15 +
 .../services/micronaut/ExternalApiService.groovy   | 110 +++
 .../micronaut/MicronautBeanDuplicationSpec.groovy  | 105 +++
 .../groovy/micronaut/MicronautBeanTypesSpec.groovy |  99 +++
 .../MicronautDeclarativeClientSpec.groovy          | 299 +++++++
 .../micronaut/MicronautErsatzAdvancedSpec.groovy   | 863 +++++++++++++++++++
 .../micronaut/MicronautErsatzPatternSpec.groovy    | 481 +++++++++++
 .../micronaut/MicronautErsatzRoundtripSpec.groovy  | 531 ++++++++++++
 .../micronaut/MicronautPluginBeanSpec.groovy       |  85 ++
 .../main/groovy/bean/injection/AppConfig.groovy}   |  18 +-
 .../bean/injection/FactoryCreatedService.groovy}   |  17 +-
 .../groovy/bean/injection/ServiceFactory.groovy}   |  22 +-
 .../client/MicronautAdvancedClient.groovy          |  59 ++
 .../client/MicronautFilteredClient.groovy}         |  22 +-
 .../micronaut/client/MicronautHeaderClient.groovy} |  24 +-
 .../micronaut/client/MicronautPathClient.groovy}   |  25 +-
 .../client/MicronautReactiveClient.groovy}         |  31 +-
 .../micronaut/client/MicronautTestClient.groovy}   |  33 +-
 .../java/bean/injection/JavaMessageProvider.java   |  23 +
 .../java/bean/injection/JavaSingletonService.java  |  28 +
 .../client/MicronautRetryableClient.java}          |  22 +-
 .../micronaut/filter/AuthTokenClientFilter.java}   |  21 +-
 .../functional/tests/BookControllerSpec.groovy     |  28 +-
 .../functional/tests/pages/BookPages.groovy}       |  40 +-
 .../functional/tests/AuthorControllerSpec.groovy   |  28 +-
 .../functional/tests/BookControllerSpec.groovy     |  28 +-
 .../functional/tests/pages/AuthorPages.groovy}     |  41 +-
 .../functional/tests/pages/BookPages.groovy}       |  40 +-
 .../groovy/context/ContextPathSpec.groovy          |  23 +-
 .../groovy/context/pages/EnvironmentPages.groovy}  |  21 +-
 .../groovy/namespaces/PageControllerSpec.groovy    |  19 +-
 .../namespaces/admin/ReportControllerSpec.groovy   |  18 +-
 .../namespaces/admin/pages/ReportPages.groovy}     |  22 +-
 .../groovy/namespaces/pages/AdminPage.groovy}      |  15 +-
 .../groovy/namespaces/pages/FrontendPage.groovy}   |  15 +-
 .../plugins/issue-11767/build.gradle               |   6 +-
 .../build.gradle                                   |  15 +-
 .../MicronautSingletonGrailsPlugin.groovy}         |  18 +-
 .../plugins/micronaut/PluginMessageProvider.java   |  22 +
 .../plugins/micronaut/PluginSingletonService.java  |  28 +
 .../scaffoldingfields/CrudFunctionalSpec.groovy    | 284 +++----
 .../groovy/scaffoldingfields/FieldTypesSpec.groovy |  52 +-
 .../scaffoldingfields/pages/DepartmentPages.groovy |   5 +
 .../scaffoldingfields/pages/EmployeePages.groovy   |  10 +
 .../pages/ScaffoldEditPage.groovy                  |   2 +-
 .../pages/ScaffoldShowPage.groovy                  |   2 +-
 .../com/example/UserCommunityControllerSpec.groovy |  26 +-
 .../groovy/com/example/UserControllerSpec.groovy   |  24 +-
 ...outPage.groovy => CommunityUserListPage.groovy} |  12 +-
 .../groovy/com/example/pages/LoginPage.groovy      |  17 +-
 .../groovy/com/example/pages/LogoutPage.groovy     |  15 +-
 .../{LogoutPage.groovy => UserListPage.groovy}     |  12 +-
 settings.gradle                                    |  12 +
 259 files changed, 10056 insertions(+), 2306 deletions(-)
 create mode 100644 .github/workflows/release-close.yml
 create mode 100644 .github/workflows/release-publish-docs.yml
 delete mode 100644 .mailmap
 create mode 100644 
grails-console/src/test/groovy/grails/ui/command/GrailsApplicationContextCommandRunnerSpec.groovy
 create mode 100644 
grails-console/src/test/groovy/grails/ui/script/GrailsApplicationScriptRunnerSpec.groovy
 create mode 100644 
grails-core/src/test/groovy/org/grails/compiler/injection/ApplicationClassInjectorSpec.groovy
 create mode 100644 
grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/ExistsCrossJoinSpec.groovy
 create mode 100644 
grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/DataServiceMultiDataSourceSpec.groovy
 create mode 100644 
grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/DataServiceMultiTenantMultiDataSourceSpec.groovy
 create mode 100644 
grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/WhereQueryMultiDataSourceSpec.groovy
 create mode 100644 
grails-datamapping-core/src/test/groovy/grails/gorm/services/CompileStaticServiceInjectionSpec.groovy
 create mode 100644 
grails-datamapping-core/src/test/groovy/grails/gorm/services/ConnectionRoutingServiceTransformSpec.groovy
 create mode 100644 
grails-datamapping-core/src/test/groovy/grails/gorm/services/WhereConnectionRoutingSpec.groovy
 create mode 100644 
grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/GormEnhancerAllQualifiersSpec.groovy
 create mode 100644 
grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/criteria/DetachedCriteriaCloneSpec.groovy
 create mode 100644 
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/domains/WhereRoutingItem.groovy
 create mode 100644 
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/domains/WhereRoutingItemService.groovy
 create mode 100644 
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/WhereQueryConnectionRoutingSpec.groovy
 create mode 100644 grails-doc/src/en/guide/bestPractices.adoc
 create mode 100644 
grails-doc/src/en/guide/bestPractices/codeAnalysisGroovy.adoc
 create mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/micronaut/GrailsMicronautValidator.java
 create mode 100644 
grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GradleSpecification.groovy
 create mode 100644 
grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GrailsGradlePluginJavaCompatSpec.groovy
 create mode 100644 
grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GrailsGradlePluginToolchainSpec.groovy
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/fork-settings-custom/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/fork-settings-custom/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/fork-settings-custom/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/fork-settings-custom/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/fork-settings-defaults/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/fork-settings-defaults/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/fork-settings-defaults/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/fork-settings-defaults/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-no-toolchain/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-no-toolchain/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-no-toolchain/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-no-toolchain/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-23/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-23/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-23/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-23/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-24/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-24/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-24/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-24/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-current/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-current/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-current/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/java-compat-toolchain-current/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/no-toolchain-javaexec/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/no-toolchain-javaexec/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/no-toolchain-javaexec/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/no-toolchain-javaexec/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/no-toolchain-web/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/no-toolchain-web/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/no-toolchain-web/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/no-toolchain-web/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-command/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-command/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-command/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-command/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-javaexec/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-javaexec/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-javaexec/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-javaexec/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-override/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-override/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-override/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-override/settings.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-test/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-test/gradle.properties
 copy grails-forge/grails-forge-core/src/main/resources/.gitkeep => 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-test/grails-app/conf/application.yml
 (100%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/toolchain-test/settings.gradle
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => app1/src/integration-test/groovy/functionaltests/pages/BarListPage.groovy} 
(77%)
 create mode 100644 
grails-test-examples/app1/src/integration-test/groovy/functionaltests/pages/BookPages.groovy
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
app1/src/integration-test/groovy/functionaltests/pages/ConventionLayoutPage.groovy}
 (77%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
app1/src/integration-test/groovy/functionaltests/pages/FooLayoutPage.groovy} 
(77%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
app1/src/integration-test/groovy/functionaltests/pages/FooLayoutSnippetPage.groovy}
 (77%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => app1/src/integration-test/groovy/functionaltests/pages/FooListPage.groovy} 
(77%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => app1/src/integration-test/groovy/functionaltests/pages/HomePage.groovy} 
(74%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
app1/src/integration-test/groovy/functionaltests/pages/LoginAuthPage.groovy} 
(77%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LoginPage.groovy
 => app1/src/integration-test/groovy/functionaltests/pages/MiscPages.groovy} 
(62%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => app1/src/integration-test/groovy/functionaltests/pages/PartialPage.groovy} 
(77%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => app2/src/integration-test/groovy/app2/pages/FooPages.groovy} (72%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => app3/src/integration-test/groovy/app3/pages/LoginAuthPage.groovy} (77%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => exploded/src/integration-test/groovy/exploded/pages/LoginAuthPage.groovy} 
(77%)
 copy 
grails-test-examples/{app3/src/integration-test/groovy/app3/LoadAfterSpec.groovy
 => gorm/grails-app/services/gorm/AuthorDataService.groovy} (65%)
 create mode 100644 
grails-test-examples/gorm/grails-app/services/gorm/CompileStaticBookService.groovy
 copy 
grails-test-examples/{app2/src/integration-test/groovy/app2/NotFoundHandlerSpec.groovy
 => gorm/src/integration-test/groovy/gorm/ExistsSpec.groovy} (50%)
 copy grails-test-examples/{plugins/issue-11767 => 
hibernate5/grails-data-service-multi-datasource}/build.gradle (66%)
 create mode 100644 
grails-test-examples/hibernate5/grails-data-service-multi-datasource/grails-app/conf/application.yml
 create mode 100644 
grails-test-examples/hibernate5/grails-data-service-multi-datasource/grails-app/conf/logback.xml
 copy 
grails-test-examples/{app1/src/integration-test/groovy/functionaltests/LoadAfterSpec.groovy
 => 
hibernate5/grails-data-service-multi-datasource/grails-app/domain/example/Product.groovy}
 (64%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
hibernate5/grails-data-service-multi-datasource/grails-app/init/example/Application.groovy}
 (75%)
 create mode 100644 
grails-test-examples/hibernate5/grails-data-service-multi-datasource/grails-app/services/example/ProductService.groovy
 create mode 100644 
grails-test-examples/hibernate5/grails-data-service-multi-datasource/src/integration-test/groovy/functionaltests/DataServiceMultiDataSourceSpec.groovy
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LoginPage.groovy
 => 
hibernate5/grails-hibernate/src/integration-test/groovy/functional/tests/pages/BookPages.groovy}
 (52%)
 copy grails-test-examples/{plugins/issue-11767 => 
hibernate5/grails-multitenant-multi-datasource}/build.gradle (66%)
 create mode 100644 
grails-test-examples/hibernate5/grails-multitenant-multi-datasource/grails-app/conf/application.yml
 create mode 100644 
grails-test-examples/hibernate5/grails-multitenant-multi-datasource/grails-app/conf/logback.xml
 copy 
grails-test-examples/hibernate5/{grails-hibernate/src/integration-test/groovy/functional/tests/BookControllerSpec.groovy
 => 
grails-multitenant-multi-datasource/grails-app/domain/example/Metric.groovy} 
(56%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
hibernate5/grails-multitenant-multi-datasource/grails-app/init/example/Application.groovy}
 (76%)
 create mode 100644 
grails-test-examples/hibernate5/grails-multitenant-multi-datasource/grails-app/services/example/MetricService.groovy
 create mode 100644 
grails-test-examples/hibernate5/grails-multitenant-multi-datasource/src/integration-test/groovy/functionaltests/MultiTenantMultiDataSourceSpec.groovy
 copy grails-test-examples/{micronaut => micronaut-groovy-only}/build.gradle 
(71%)
 copy grails-test-examples/{micronaut => 
micronaut-groovy-only}/grails-app/conf/application.yml (74%)
 copy grails-test-examples/{micronaut/grails-app/controllers/micronaut => 
micronaut-groovy-only/grails-app/controllers/micronautgroovyonly}/UrlMappings.groovy
 (94%)
 copy 
grails-test-examples/{exploded/src/integration-test/groovy/exploded/LoadAfterSpec.groovy
 => 
micronaut-groovy-only/grails-app/init/micronautgroovyonly/Application.groovy} 
(69%)
 copy 
grails-test-examples/{app1/src/integration-test/groovy/functionaltests/LoadAfterSpec.groovy
 => 
micronaut-groovy-only/grails-app/services/micronautgroovyonly/BeanInjectionService.groovy}
 (61%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
micronaut-groovy-only/grails-app/services/micronautgroovyonly/TestService.groovy}
 (75%)
 create mode 100644 
grails-test-examples/micronaut-groovy-only/src/integration-test/groovy/micronautgroovyonly/BeanInjectionServiceSpec.groovy
 create mode 100644 
grails-test-examples/micronaut-groovy-only/src/integration-test/groovy/micronautgroovyonly/MicronautContextSpec.groovy
 create mode 100644 
grails-test-examples/micronaut-groovy-only/src/integration-test/groovy/micronautgroovyonly/MicronautQualifierSpec.groovy
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => micronaut-groovy-only/src/main/groovy/bean/injection/AppConfig.groovy} (75%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
micronaut-groovy-only/src/main/groovy/bean/injection/FactoryCreatedService.groovy}
 (75%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => micronaut-groovy-only/src/main/groovy/bean/injection/NamedService.groovy} 
(75%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
micronaut-groovy-only/src/main/groovy/bean/injection/PrimaryNamedService.groovy}
 (75%)
 copy grails-test-examples/{micronaut => 
micronaut-groovy-only}/src/main/groovy/bean/injection/Qualified.groovy (100%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
micronaut-groovy-only/src/main/groovy/bean/injection/QualifiedNamedService.groovy}
 (75%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
micronaut-groovy-only/src/main/groovy/bean/injection/RegularNamedService.groovy}
 (75%)
 copy 
grails-test-examples/{exploded/src/integration-test/groovy/exploded/LoadAfterSpec.groovy
 => micronaut-groovy-only/src/main/groovy/bean/injection/ServiceFactory.groovy} 
(69%)
 copy grails-test-examples/{micronaut => 
micronaut-groovy-only}/src/main/groovy/bean/injection/SpecialNamedService.groovy
 (100%)
 create mode 100644 
grails-test-examples/micronaut/grails-app/controllers/micronaut/ExternalApiController.groovy
 copy 
grails-test-examples/micronaut/grails-app/controllers/micronaut/{UrlMappings.groovy
 => MicronautTestController.groovy} (51%)
 create mode 100644 
grails-test-examples/micronaut/grails-app/services/micronaut/ExternalApiService.groovy
 create mode 100644 
grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautBeanDuplicationSpec.groovy
 create mode 100644 
grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautBeanTypesSpec.groovy
 create mode 100644 
grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautDeclarativeClientSpec.groovy
 create mode 100644 
grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautErsatzAdvancedSpec.groovy
 create mode 100644 
grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautErsatzPatternSpec.groovy
 create mode 100644 
grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautErsatzRoundtripSpec.groovy
 create mode 100644 
grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautPluginBeanSpec.groovy
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => micronaut/src/main/groovy/bean/injection/AppConfig.groovy} (75%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => micronaut/src/main/groovy/bean/injection/FactoryCreatedService.groovy} (75%)
 copy 
grails-test-examples/{exploded/src/integration-test/groovy/exploded/LoadAfterSpec.groovy
 => micronaut/src/main/groovy/bean/injection/ServiceFactory.groovy} (69%)
 create mode 100644 
grails-test-examples/micronaut/src/main/groovy/micronaut/client/MicronautAdvancedClient.groovy
 copy 
grails-test-examples/{app3/src/integration-test/groovy/app3/LoadAfterSpec.groovy
 => micronaut/src/main/groovy/micronaut/client/MicronautFilteredClient.groovy} 
(67%)
 copy 
grails-test-examples/{app3/src/integration-test/groovy/app3/LoadAfterSpec.groovy
 => micronaut/src/main/groovy/micronaut/client/MicronautHeaderClient.groovy} 
(65%)
 copy 
grails-test-examples/{app3/src/integration-test/groovy/app3/LoadAfterSpec.groovy
 => micronaut/src/main/groovy/micronaut/client/MicronautPathClient.groovy} (62%)
 copy 
grails-test-examples/{app1/src/integration-test/groovy/functionaltests/LoadAfterSpec.groovy
 => micronaut/src/main/groovy/micronaut/client/MicronautReactiveClient.groovy} 
(50%)
 copy 
grails-test-examples/{app1/src/integration-test/groovy/functionaltests/LoadAfterSpec.groovy
 => micronaut/src/main/groovy/micronaut/client/MicronautTestClient.groovy} (51%)
 create mode 100644 
grails-test-examples/micronaut/src/main/java/bean/injection/JavaMessageProvider.java
 create mode 100644 
grails-test-examples/micronaut/src/main/java/bean/injection/JavaSingletonService.java
 copy 
grails-test-examples/{exploded/src/integration-test/groovy/exploded/LoadAfterSpec.groovy
 => micronaut/src/main/java/micronaut/client/MicronautRetryableClient.java} 
(70%)
 copy 
grails-test-examples/{app3/src/integration-test/groovy/app3/LoadAfterSpec.groovy
 => micronaut/src/main/java/micronaut/filter/AuthTokenClientFilter.java} (67%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LoginPage.groovy
 => 
mongodb/base/src/integration-test/groovy/functional/tests/pages/BookPages.groovy}
 (52%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LoginPage.groovy
 => 
mongodb/hibernate5/src/integration-test/groovy/functional/tests/pages/AuthorPages.groovy}
 (51%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LoginPage.groovy
 => 
mongodb/hibernate5/src/integration-test/groovy/functional/tests/pages/BookPages.groovy}
 (52%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
namespaces/src/integration-test/groovy/context/pages/EnvironmentPages.groovy} 
(69%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
namespaces/src/integration-test/groovy/namespaces/admin/pages/ReportPages.groovy}
 (69%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => namespaces/src/integration-test/groovy/namespaces/pages/AdminPage.groovy} 
(77%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
namespaces/src/integration-test/groovy/namespaces/pages/FrontendPage.groovy} 
(77%)
 copy grails-test-examples/plugins/{issue-11767 => 
micronaut-singleton}/build.gradle (70%)
 copy 
grails-test-examples/{scaffolding/src/integrationTest/groovy/com/example/pages/LogoutPage.groovy
 => 
plugins/micronaut-singleton/src/main/groovy/micronaut/singleton/MicronautSingletonGrailsPlugin.groovy}
 (73%)
 create mode 100644 
grails-test-examples/plugins/micronaut-singleton/src/main/java/com/example/grails/plugins/micronaut/PluginMessageProvider.java
 create mode 100644 
grails-test-examples/plugins/micronaut-singleton/src/main/java/com/example/grails/plugins/micronaut/PluginSingletonService.java
 copy 
grails-test-examples/scaffolding/src/integrationTest/groovy/com/example/pages/{LogoutPage.groovy
 => CommunityUserListPage.groovy} (79%)
 copy 
grails-test-examples/scaffolding/src/integrationTest/groovy/com/example/pages/{LogoutPage.groovy
 => UserListPage.groovy} (82%)

Reply via email to