Merged
Conversation
chore: merge 7.0.6->7.0.x; bump to 7.0.7-SNAPSHOT
Add a new static method to the Validateable trait that allows clearing the cached constraints map, forcing re-evaluation on next access. This is useful in testing scenarios where shared constraints may need to be re-evaluated after configuration changes, particularly during parallel test execution where constraints may be evaluated before doWithConfig() has registered shared constraints. The method enables proper test isolation by allowing tests to clear the constraint cache in setup/cleanup methods.
Fix links in documentation
Bumped the Groovy version to 3.0.25 in grails-data-graphql, grails-data-neo4j, and grails-forge modules to ensure consistency and benefit from the latest bug fixes and improvements.
The Rocker template for gradle-wrapper.properties was still using Gradle 8.14.3, causing CreateControllerCommandSpec to timeout while downloading the older Gradle distribution.
Added comments to all 9 locations where Gradle 8.14.4 is defined, referencing the other locations that need to be updated together to help maintainers keep versions in sync.
…versions Update Java, Gradle, and Groovy versions
# Conflicts: # gradle.properties # grails-core/src/test/groovy/grails/util/GrailsUtilTests.java
Update Javadoc and comments across constraint cache clearing code to use clearer 'prevent test environment pollution' wording instead of 'parallel test execution'.
…he-api Add clearConstraintsMapCache() public API to Validateable trait
Contributor
There was a problem hiding this comment.
Pull request overview
This PR merges changes from the 7.1.x branch into 8.0.x. The changes primarily focus on improving test environment isolation by adding constraint cache cleanup mechanisms, updating dependency versions, and modernizing documentation link syntax.
Changes:
- Added
clearConstraintsMapCache()method to the Validateable trait and setup/cleanup hooks in test specs to prevent test environment pollution from cached constraints - Updated Java (17.0.12 → 17.0.18), Spring Boot (3.4.5 → 3.5.10), Gradle (8.14.3 → 8.14.4), and Groovy (various → 3.0.25) versions
- Converted documentation references from old cross-reference syntax to modern link syntax with proper reference variables
- Added synchronization comments across gradle-wrapper.properties files to help maintain version consistency
Reviewed changes
Copilot reviewed 26 out of 27 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| grails-validation/src/main/groovy/grails/validation/Validateable.groovy | Added clearConstraintsMapCache() static method to clear cached constraints for testing scenarios |
| grails-validation/src/test/groovy/grails/validation/ValidateableTraitSpec.groovy | Added setup/cleanup methods to clear constraints cache for SharedConstraintsValidateable |
| grails-validation/src/test/groovy/grails/validation/ValidateableTraitAdHocSpec.groovy | Added setup/cleanup methods to clear constraints cache for PersonAdHocSharedConstraintsValidateable |
| grails-test-suite-web/src/test/groovy/org/grails/web/commandobjects/CommandObjectsSpec.groovy | Added setup/cleanup methods with ConstraintEvalUtils import to clear both static and global constraint caches |
| grails-test-suite-web/src/test/groovy/org/grails/web/commandobjects/CommandObjectNoDataSpec.groovy | Added setup/cleanup methods with ConstraintEvalUtils import to clear constraint caches for Artist class |
| grails-test-examples/gsp-spring-boot/script/.sdkmanrc | Updated Java version to 17.0.18 and Spring Boot to 3.5.10 |
| Multiple gradle-wrapper.properties files | Added comment about keeping Gradle version synced across configuration files |
| grails-forge/grails-forge-core/.../gradleWrapperProperties.rocker.raw | Updated Gradle version to 8.14.4 and added synchronization comment |
| grails-forge/gradle.properties | Updated Groovy version to 3.0.25 |
| grails-data-neo4j/gradle.properties | Updated Groovy version to 3.0.25 |
| grails-data-graphql/gradle.properties | Updated Groovy version to 3.0.25 |
| gradle.properties | Updated gradleToolingApiVersion to 8.14.4 with synchronization comment |
| .sdkmanrc | Updated Java to 17.0.18 and Gradle to 8.14.4 with synchronization comments |
| etc/bin/Dockerfile | Updated Java to 17.0.18 with synchronization comment |
| .github/workflows/release.yml | Updated JAVA_VERSION to 17.0.18 with updated synchronization comment |
| .github/workflows/gradle.yml | Changed test matrix from Java 17,21 to Java 17,25 |
| grails-geb/.../ServiceRegistry.groovy | Updated comment from "parallel test execution" to "test environment pollution" |
| grails-doc/.../docengine.adoc | Converted reference link syntax from <<ref-...>> to link:{...}[...] format |
| grails-doc/.../multipleDatasources.adoc | Converted reference links to external wikipedia links |
| grails-doc/.../creatingCustomCommands.adoc | Converted reference link to modern link syntax |
| grails-doc/.../basicCRUD.adoc | Converted multiple reference links to modern link syntax |
| grails-doc/.../quickStartGuide.adoc | Converted multiple reference links to modern link syntax |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.