The GitHub Actions job "CI" on grails-core.git/fix/customizable-rollback-tx-attribute-copy has succeeded. Run started by GitHub user jdaugherty (triggered by jdaugherty).
Head commit for run: 7c69251c84302acf9a19773266f185ba9f2a2049 / James Daugherty <[email protected]> fix: honor @NotTransactional opt-out on class-annotated services TransactionalTransform's hasExcludedAnnotation override was removed along with its ANNOTATION_NAME_EXCLUDES set in 2926a0f644 (#16066). That override was the only thing implementing the @NotTransactional opt-out: the base implementation in AbstractMethodDecoratingTransformation excludes only @PostConstruct, @PreDestroy, @ControllerMethod and annotations carrying @GormASTTransformationClass, none of which match the plain @NotTransactional marker. As a result a method marked @NotTransactional inside a class annotated @Transactional, @ReadOnly or @Rollback was still given a $tt__ wrapper and silently ran with an active transaction, contrary to the documented contract in the guide and to the behaviour of 7.x. Restore the override, scoped to the one annotation that is still live; the legacy grails.transaction.* names in the original set no longer exist, and method-level @Transactional/@ReadOnly/@Rollback are already handled by the hasLocalAnnotation override. TransactionalTransformSpec declared a TransactionalTransformSpecService fixture modelling this exact contract but no feature method ever referenced it, which is why the removal went unnoticed. Wire it up and add coverage for all three class-level annotations, plus assertions in the gorm and hibernate7 example integration specs, whose existing @NotTransactional test only checked a return value. Fixes #16334 Report URL: https://github.com/apache/grails-core/actions/runs/35931970781 With regards, GitHub Actions via GitBox
