This is an automated email from the ASF dual-hosted git repository. jamesfredley pushed a commit to branch merge/7.0.x-into-7.1.x in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit 6cf5fea99d845b269f298ec42c8088937f8792a1 Merge: c54cacc0f9 b4ee9d9b7d Author: James Fredley <[email protected]> AuthorDate: Fri Mar 20 15:26:25 2026 -0400 Merge remote-tracking branch 'origin/7.0.x' into merge/7.0.x-into-7.1.x # Conflicts: # gradle.properties # grails-core/src/test/groovy/grails/util/GrailsUtilTests.java .github/workflows/groovy-joint-workflow.yml | 1 + .github/workflows/release-notes.yml | 2 +- .github/workflows/release.yml | 10 +- gradle.properties | 1 + .../grails/core/gsp/DefaultGrailsTagLibClass.java | 17 + .../core/gsp/DefaultGrailsTagLibClassSpec.groovy | 108 ++ grails-test-examples/app1/build.gradle | 3 +- .../groovy/functionaltests/AtResourceSpec.groovy | 27 +- .../BookRestfulControllerSpec.groovy | 36 +- .../functionaltests/async/AsyncPromiseSpec.groovy | 278 ++--- .../binding/AdvancedDataBindingSpec.groovy | 390 ++++--- .../functionaltests/caching/CachingSpec.groovy | 147 +-- .../codecs/SecurityCodecsSpec.groovy | 365 +++--- .../commanddi/CommandObjectDISpec.groovy | 273 ++--- .../contentneg/ContentNegotiationSpec.groovy | 277 ++--- .../functionaltests/cors/CorsAdvancedSpec.groovy | 262 ++--- .../errorhandling/ErrorHandlingSpec.groovy | 181 ++- .../fileupload/FileUploadSpec.groovy | 342 +++--- .../flow/FlashChainForwardSpec.groovy | 249 ++--- .../i18n/InternationalizationSpec.groovy | 342 +++--- .../InterceptorAdvancedMatchingSpec.groovy | 214 ++-- .../interceptors/InterceptorOrderingSpec.groovy | 205 ++-- .../requestresponse/RequestResponseSpec.groovy | 355 +++--- .../springevents/SpringEventsSpec.groovy | 134 +-- .../functionaltests/taglib/TagLibSpec.groovy | 664 ++++------- .../urlmappings/UrlMappingsSpec.groovy | 259 ++--- .../async-events-pubsub-demo/build.gradle | 4 +- .../groovy/pubsub/demo/TaskControllerSpec.groovy | 34 +- grails-test-examples/cache/build.gradle | 8 +- .../com/demo/AdvancedCachingIntegrationSpec.groovy | 237 +--- grails-test-examples/demo33/build.gradle | 2 + .../groovy/demo/JsonControllerSpec.groovy | 26 +- .../grails-multiple-datasources/build.gradle | 8 +- .../MultiDataSourceWithSessionSpec.groovy | 44 +- .../hibernate5/issue450/build.gradle | 3 +- .../groovy/example/BookControllerSpec.groovy | 27 +- grails-test-examples/issue-11102/build.gradle | 6 +- .../groovy/issue11102/HttpClientCommonSpec.groovy | 45 - .../groovy/issue11102/TestControllerSpec.groovy | 27 +- grails-test-examples/issue-11767/build.gradle | 7 +- .../groovy/issue11767/app/ConfigLoadingSpec.groovy | 37 +- grails-test-examples/issue-15228/build.gradle | 3 +- .../issue11767/app/GsonViewRespondSpec.groovy | 58 +- grails-test-examples/issue-views-182/build.gradle | 3 +- .../groovy/views182/CustomErrorSpec.groovy | 27 +- .../groovy/views182/HttpClientCommonSpec.groovy | 46 - grails-test-examples/micronaut/build.gradle | 3 +- .../MicronautDeclarativeClientSpec.groovy | 197 ++-- .../micronaut/MicronautErsatzAdvancedSpec.groovy | 733 ++++-------- .../micronaut/MicronautErsatzPatternSpec.groovy | 337 +++--- .../micronaut/MicronautErsatzRoundtripSpec.groovy | 453 +++----- .../views-functional-tests/build.gradle | 5 +- .../groovy/functional/tests/BookSpec.groovy | 181 +-- .../groovy/functional/tests/BulletinSpec.groovy | 26 +- .../groovy/functional/tests/CircularSpec.groovy | 74 +- .../groovy/functional/tests/CustomerSpec.groovy | 41 +- .../groovy/functional/tests/EmbeddedSpec.groovy | 58 +- .../groovy/functional/tests/HttpClientSpec.groovy | 44 - .../groovy/functional/tests/InheritanceSpec.groovy | 38 +- .../tests/ModelInterceptorIntSpec.groovy | 37 +- .../functional/tests/ObjectTemplateSpec.groovy | 27 +- .../functional/tests/PersonInheritanceSpec.groovy | 32 +- .../groovy/functional/tests/ProductSpec.groovy | 218 ++-- .../groovy/functional/tests/ProjectSpec.groovy | 38 +- .../groovy/functional/tests/ProxySpec.groovy | 31 +- .../groovy/functional/tests/TeamSpec.groovy | 91 +- .../functional/tests/TestControllerSpec.groovy | 28 +- .../functional/tests/TestGmlControllerSpec.groovy | 32 +- .../functional/tests/TestGsonControllerSpec.groovy | 86 +- .../groovy/functional/tests/VehicleSpec.groovy | 61 +- .../functional/tests/api/NamespacedBookSpec.groovy | 143 +-- grails-test-suite-uber/build.gradle | 83 +- .../testing/cleanup/core/DatabaseCleanup.groovy | 2 + grails-testing-support-http-client/README.md | 201 ++++ grails-testing-support-http-client/build.gradle | 58 + .../testing/http/client/HttpClientSupport.groovy | 1169 ++++++++++++++++++++ .../testing/http/client/MultipartBody.groovy | 191 ++++ .../testing/http/client/TestHttpResponse.groovy | 994 +++++++++++++++++ .../testing/http/client/utils/JsonUtils.groovy | 276 +++++ .../testing/http/client/utils/XmlUtils.groovy | 241 ++++ .../http/client/HttpClientSupportSpec.groovy | 1165 +++++++++++++++++++ .../testing/http/client/MultipartBodySpec.groovy | 67 ++ .../http/client/TestHttpResponseSpec.groovy | 542 +++++++++ .../testing/http/client/utils/JsonUtilsSpec.groovy | 159 +++ .../testing/http/client/utils/XmlUtilsSpec.groovy | 329 ++++++ settings.gradle | 9 +- 86 files changed, 8673 insertions(+), 5621 deletions(-)
