Skip to content

Conversation

@jamesfredley
Copy link
Contributor

No description provided.

jdaugherty and others added 17 commits January 22, 2026 14:26
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.
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
Copilot AI review requested due to automatic review settings January 27, 2026 20:07
@jamesfredley jamesfredley self-assigned this Jan 27, 2026
@jamesfredley jamesfredley moved this to In Progress in Apache Grails Jan 27, 2026
@jamesfredley jamesfredley added this to the grails:8.0.0-M1 milestone Jan 27, 2026
@jamesfredley jamesfredley merged commit 9dc73d3 into 8.0.x Jan 27, 2026
56 of 66 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in Apache Grails Jan 27, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants