jamesfredley opened a new pull request, #15365:
URL: https://github.com/apache/grails-core/pull/15365
## Summary
This PR upgrades the Grails build infrastructure to use Gradle 9.3.1 and
upgrades the grails-forge module to Micronaut 4.
## Changes
### Gradle 9.3.1 Upgrade
- Update Gradle wrapper from 8.14.4 to 9.3.1 across all modules
- Fix deprecated Gradle APIs:
- Replace `convention` with `extensions` API
- Replace `ConfigureUtil` with `ClosureBackedAction`
- Replace `JavaPluginConvention` with `JavaPluginExtension`
- Replace `outputFile` with `destinationFile` in `WriteProperties`
- Add JUnit Platform launcher dependency required by Gradle 9 for test
execution
- Update `.sdkmanrc` to reference Gradle 9.3.1
### Micronaut 4 Upgrade (grails-forge)
- Upgrade Micronaut from 3.10.4 to 4.10.7
- Upgrade Groovy from 3.x to 4.0.30
- Upgrade Spock from 2.1-groovy-3.0 to 2.3-groovy-4.0
- Migrate `javax.*` to `jakarta.*` validation annotations:
- `javax.validation.constraints.*` → `jakarta.validation.constraints.*`
- `javax.transaction.*` → `jakarta.transaction.*`
- Update dependency coordinates:
- `org.codehaus.groovy` → `org.apache.groovy`
- `io.micronaut:micronaut-bom` → `io.micronaut.platform:micronaut-platform`
- `javax.inject:javax.inject` → `jakarta.inject:jakarta.inject-api`
- Add `micronaut-validation-processor` for annotation processing
- Add `micronaut-jackson-databind` runtime dependency
- Add `@Validated` annotation to controllers using validation
- Remove explicit shadow plugin (now provided by micronaut-application
plugin)
### Test Infrastructure Updates
- Add ByteBuddy dependency for Spock mocking on Java 17+ (CGLIB doesn't
support Java 17 class files)
- Add `--add-opens java.base/java.lang=ALL-UNNAMED` JVM arg for test
execution
- Update Coherence BOM license mapping for version 25.03.2
## Testing
- [x] grails-forge-web-netty starts successfully and displays Micronaut 4
banner
- [x] Application starts on configured port
## Breaking Changes
None expected for end users. This is an internal build infrastructure
upgrade.
## Related Issues
Part of the ongoing effort to keep Grails on the latest stable versions of
its dependencies.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]