What's Changed
- Resolve tag calls at compile time instead of through the metaclass @codeconsole (#16134)
- Import grails-quartz @jdaugherty (#16185)
- Update Spring Boot to 4.1.1 @matrei (#16187)
- Make precompiled GSPs reproducible without disabling runtime reloading @codeconsole (#16142)
- fix(cas): repair proxy receptor and single sign-out, add integration tests @sbglasius (#16174)
- Fix flaky grails-views-gson tests caused by shared static test state @borinquenkid (#16033)
- BUGFIX: message bundles silently failing to resolve in development @codeconsole (#16179)
- Neo4j GormRegistry migration (consolidated: replaces #15816, #15951, #15817, #15832, #15833) @borinquenkid (#15972)
- Upgrade to Groovy 5.1.0 @matrei (#16163)
- Move i18n onto Spring Boot's MessageSource @codeconsole (#16102)
- Make Grails applications processable by Spring AOT (Leyden AOT Cache + GraalVM Native Image Support) @codeconsole (#16094)
- Fix flaky WhereQueryClosureCaptureSpec: key AstPropertyResolveUtils cache by ClassNode identity @borinquenkid (#16034)
- feat: GORM O(M+N) scaling — GormRegistry, SessionResolver infrastructure, and core-class tests (consolidates #15779, #15780, #15790) @borinquenkid (#16066)
- build(test): stop test forks oversubscribing the machine @jamesfredley (#16158)
- Fix DDL failure for hasMany collections of enums @borinquenkid (#16052)
- Fix 16133: Unset default nullable domain property passes validation but fails at the database @matrei (#16136)
- fix(grails-data-hibernate7): make type: 'text' produce an unbounded column @borinquenkid (#16020)
- Bump github/codeql-action init and analyze together to v4.37.3 @borinquenkid (#16050)
- Fix flaky RunningApplicationProcessSpec by widening the stop() timeout budget @borinquenkid (#16032)
- Clear omitted bindData fields when clearMissing is enabled @jamesfredley (#15950)
- Add JMH performance regression reporting for pull requests @jamesfredley (#16071)
- Add opt-in deny-by-default data binding and always honor bindable:false @jamesfredley (#15947)
- Document Grails 7 plugin compatibility on Grails 8 @jamesfredley (#16141)
- Bump softprops/action-gh-release from 3.0.0 to 3.0.2 @dependabot[bot] (#16138)
- Bump testlens-app/setup-testlens from 1.9.2 to 1.9.3 @dependabot[bot] (#16137)
- Support escaping a GSP expression with a backslash ${} @codeconsole (#16144)
- Start and manage an embedded MongoDB so generated apps run without one installed @codeconsole (#16095)
- Fix
@ManagedEntitycompilation for Grails domains @matrei (#16121) - Compile GSP pages with the Java the project asked for @codeconsole (#16118)
- Generate Spring Security wiring through the beans DSL @codeconsole (#16119)
- Remove decommissioned test code @matrei (#16096)
- [Build] Cleanup redundant build console output @matrei (#16104)
- [Build] Replace deprecated Gradle test listener creation @matrei (#16103)
- fix(grails-data-hibernate7): stop conflating decimal and bit precision for numeric columns @borinquenkid (#16026)
- Reduce cached codec metaclass registration overhead @jamesfredley (#15800)
- Parallelize critical CI test workloads @jamesfredley (#16116)
- Revert "Keep BeanBuilder DSL independent of XML setup" @borinquenkid (#16112)
- Keep BeanBuilder DSL independent of XML setup @jamesfredley (#15824)
- Remove unused Forge GitHub create and OAuth integration @jamesfredley (#15812)
- Harden synchronizer token consumption @jamesfredley (#15803)
- Bump codecov/codecov-action from 6.0.0 to 7.0.0 @dependabot[bot] (#16038)
- Bump release-drafter/release-drafter from e1247478eabc9f6d9cf5ec2b3547469b0e1d2767 to 693d20e7c1ce1a81d3a41962f85914253b518449 @dependabot[bot] (#15711)
- port validate-actions GitHub action from Groovy project to Grails @paulk-asert (#16100)
- change cooldown for dependabot to 7 days @paulk-asert (#16099)
- docs: add Gradle 9 developer skill for monorepo builds @jamesfredley (#16083)
- Fall back to the WatchService watcher instead of polling on macOS @codeconsole (#16089)
- Do not cache project references @matrei (#16087)
- Add @GrailsBeans: compile bean-wiring DSL into real @autoConfiguration classes @codeconsole (#16019)
- Fix reproducible build artifact verification script @matrei (#16091)
- Backport reproducability fix @matrei (#16090)
- Remove the vestigial gspCompile configuration @codeconsole (#16088)
- Replace Gradle APIs deprecated for removal in Gradle 10 @codeconsole (#16075)
- Remove the hardcoded servlet API dependency from gspCompile @codeconsole (#16068)
- fix(deps): Manage bnd.annotation 7.1.0 for Log4j 2.25.5 (7.1.x) @jamesfredley (#16084)
🚀 Features
- Support MongoDB Testing in Forge @sanjana2505006 (#15339)
🔧 Maintenance
- Support MongoDB Testing in Forge @sanjana2505006 (#15339)
Contributors
@ErikSteNL, @amondel2, @anshbansal, @arjangch, @bobbywarner, @borinquenkid, @burtbeckwith, @chriskuehl, @codeconsole, @dauer, @davydotcom, @dependabot[bot], @doelleri, @dtamm, @fernando88to, @graemerocher, @grails-build, @hbogaards, @jamesfredley, @jameskleeh, @jdaugherty, @jeffscottbrown, @jpdev01, @kapoormanish, @kefirfromperm, @maczikasz, @magx2, @mamunsardar, @matrei, @miguelabautista, @ozren1983, @paulk-asert, @puneetbehl, @robbugh, @rvanderwerf, @sanjana2505006, @sbglasius, @skomma, @stokito, @xadagaras, Aaron Long, AlexKovynev, Aseem Bansal, Mamun Sardar, Ryan Vanderwerf, Vitalii Samolovskikh, dependabot[bot], github-actions[bot], rbugh, rvanderwerf@gmail.com and t