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

jdaugherty pushed a commit to branch 7.1.x
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit 053610bb49260da91fc46d8c8e9b5f93276748d6
Merge: a7d262bc0e 93e150c0df
Author: Test <[email protected]>
AuthorDate: Fri Feb 20 09:15:41 2026 -0500

    Merge branch '7.0.x' into 7.1.x

 .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                       |  22 +-
 .github/workflows/groovy-joint-workflow.yml        |   4 +-
 .github/workflows/rat.yml                          |   2 +-
 .github/workflows/release-close.yml                |   2 +-
 .github/workflows/release-publish-docs.yml         |   2 +-
 .github/workflows/release.yml                      |  14 +-
 gradle/functional-test-config.gradle               |   1 +
 grails-console/build.gradle                        |   1 +
 .../GrailsApplicationContextCommandRunner.groovy   |  34 +-
 .../ui/script/GrailsApplicationScriptRunner.groovy |   9 +-
 ...railsApplicationContextCommandRunnerSpec.groovy | 136 ++++++++
 .../GrailsApplicationScriptRunnerSpec.groovy       |  54 +++
 grails-core/src/test/resources/application.yml     |   4 +-
 .../src/test/resources/foo-plugin-environments.yml |   4 +-
 .../grails-app/conf/application.yml                |   8 +-
 .../DataServiceMultiDataSourceSpec.groovy          | 365 ++++++++++++++++++++
 ...ataServiceMultiTenantMultiDataSourceSpec.groovy | 297 ++++++++++++++++
 .../gorm/tests/MultipleDataSourceSpec.groovy       |  67 ++--
 .../org/grails/datastore/gorm/GormEnhancer.groovy  |  18 +-
 .../jdbc/connections/DataSourceSettings.groovy     |   2 +-
 ...stractDetachedCriteriaServiceImplementor.groovy |  13 +-
 .../implementers/AbstractSaveImplementer.groovy    |   6 +-
 .../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 +++++++++++++++++++++
 .../gorm/GormEnhancerAllQualifiersSpec.groovy      | 204 +++++++++++
 grails-doc/src/en/guide/bestPractices.adoc         |  20 ++
 .../en/guide/bestPractices/codeAnalysisGroovy.adoc | 159 +++++++++
 .../guide/conf/dataSource/multipleDatasources.adoc |  12 +-
 grails-doc/src/en/guide/conf/environments.adoc     |   6 +-
 grails-doc/src/en/guide/toc.yml                    |   3 +
 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/GrailsGradlePlugin.groovy   |  39 +++
 .../gradle/plugin/core/GradleSpecification.groovy  | 134 ++++++++
 .../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 +
 .../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-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/GormDataServicesSpec.groovy        | 177 +++++++---
 .../build.gradle                                   |  49 +++
 .../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}        |  41 +--
 .../DataServiceMultiDataSourceSpec.groovy          | 134 ++++++++
 .../functional/tests/BookControllerSpec.groovy     |  24 +-
 .../functional/tests/pages/BookPages.groovy}       |  40 ++-
 .../build.gradle                                   |  49 +++
 .../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 ++++++++++
 .../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 +-
 .../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                                    |   8 +
 155 files changed, 4423 insertions(+), 969 deletions(-)


Reply via email to