The GitHub Actions job "CI" on grails-core.git/chore/8.1.x-datamapping-core-transform-cleanup has failed. Run started by GitHub user jdaugherty (triggered by jdaugherty).
Head commit for run: f7e08a3f8b3384af722d87223934e5afaa462055 / Walter Duque de Estrada <[email protected]> Add specs and clean up transactions.transform/transform in grails-datamapping-core Closes direct unit-spec coverage gaps left after PR #16148 for RollbackTransform, AbstractDatastoreMethodDecoratingTransformation, AbstractMethodDecoratingTransformation, AstMethodDispatchUtils, and AstPropertyResolveUtils. Writing the AstPropertyResolveUtils spec surfaced a real correctness bug: its property cache was keyed by class name (a String), so two distinct ClassNode instances sharing a name (e.g. from separate compilations of dynamically-generated/test classes) silently corrupted each other's cached property data under concurrent use. Fixed by keying the cache on ClassNode identity via a synchronized IdentityHashMap. Also extracts the duplicated applied-marker idempotency check/mark pattern (repeated across AbstractGormASTTransformation, AbstractMethodDecoratingTransformation, and AbstractDatastoreMethodDecoratingTransformation) into shared isAlreadyApplied/markApplied helpers, and applies a batch of small cleanups flagged by static analysis: equals() calls replaced with ==, an unused method parameter removed, Java 21 instanceof pattern variables replacing raw-type casts, String#isEmpty() over length()==0, Class#getDeclaredConstructor().newInstance() over the deprecated Class#newInstance(), and two stray doc/comment fixes. Co-Authored-By: Claude Sonnet 5 <[email protected]> Report URL: https://github.com/apache/grails-core/actions/runs/36732679542 With regards, GitHub Actions via GitBox
