Skip to content

v2024.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 02 Apr 04:21
· 105 commits to 2024.1.x since this release
169a75d

What's Changed

This release is based on Spring Boot 3.4.13 and Spring Framework to 6.2.17, SiteMesh 2.6.2.

  • Upgrade to Groovy 4.0.30, Gradle 8.14.4, Tomcat 10.1.53
  • Upgrade to Maven 3.9.14, Maven Resolver 1.9.27

For a complete list of changes made in this release see the projects on GitHub.

⚠️ Noteworthy Changes

  • 4a64a9e Customize Groovy compiler configuration #1170
  • 2ee497b Allow developers to customize the app directory #1157
  • 5821a9c Support configuration of project resources and sources directories #1171
  • 5b594a8 Application type artifacts are supported in both the app/boot and src/main directories #1149
  • 8853c8c Restructure GORM Support #1182
  • 8d780cc Merge async and events plugins into the framework #1183
  • 1d34cd4 Migrate to Spring Framework's Resource API #1195
  • 09ab913 Move artefact Bootstrap.groovy from app\init to app\boot #1148
  • e1b61a4 Rename artefact type BootStrap to Bootstrap #1147

⭐️ New Features

Modularizing the codebase

Spring Boot 4 has refactored its codebase into a more modular structure, I believe this is the right direction for the future.
The Grace framework 2024 & 2025 will also start doing this. Grace's plugins will be independent, more focused, and at the same time, they will integrate better with Spring Boot's modules.

Core plugins have been consolidated into the framework

Others

  • b86cb42 Allow the BuildSettings.APP_DIR directory to not exist #1417
  • 3624a45 Provides binary, sources and docs distributions for Grace framework #1109
  • 0753d87 Update Grace Banner #1108
  • 30df877 Support combined use of MongoDB and Hibernate #1383
  • f760a3a Restore grace-plugin-dynamic-modules #1372
  • 00dc013 Add command group for ApplicationCommand #1354
    • Introduce Command
    • Use command group as the group of Gradle tasks
  • f320b43 Use AdditionalGormEntityTransformation to make GORM Entity injected same as Domain Class See graceframework/grace-data#83 #1349
  • 67eb947 Support Application type artifacts placed in src/main directory to be transformed #1348 #1149
  • a1991df Restore the use of GrailsDomainClass #1351
  • 3fcf0d1 Add project's classes dir to the current thread context classloader and allow CLI to discover project's command in app/commands #1358

🎯 Refactoring

🛠 Improvements

  • fac6d04 Update README - Update README in subprojects
  • 14767e0 Add release notes for 2024.0.0
  • 45747fd Update guides for installation and introduction
  • 992b525 Add more documentation dependencies to refine javadoc links #1419
  • e7a5484 Clean up non-existent grace-datastore-gorm-mongodb-ext in Gradle versions catalog #1418
  • 89b11f1 Keep the templates consistent between script commands and generators in scaffolding plugin #1416
  • 9171b37 Code formatting for scripts in the scaffolding plugin #1415
  • 0e07adf Keep the templates consistent with profiles base and web #1414 See grace-profiles/base#110 and grace-profiles/web#66
  • e71d071 Remove unused grace-sitemesh module #1409
  • 98e54e7 Various improvements related to stack trace logging and exception display #1252

🐞 Bug Fixes

  • eeb54d9 The generated ServiceSpec.groovy should be in integration-test See gh-1416

🚀 Dependency Upgrades

⚙️ Tasks

  • 169a75d Release v2024.0.0
  • bdfe57d Upgrade to actions/checkout@v6
  • 3076af0 Upgrade to actions/setup-java@v5
  • 787a9dc Upgrade to gradle/actions/setup-gradle@v5.0.2

🔌 Plugins

📜Profiles

Full Changelog: v2024.0.0-RC1...v2024.0.0