(Quick Reference)

2 Release History

Version: 2024.0.0-M1

2 Release History

To make it easier for users to use and upgrade, Grace Framework adopts a version policy consistent with the Spring Boot.

Grace Version

Spring Boot Version

2024.0.x

3.4.x

2023.3.x

3.3.x

2023.2.x

3.2.x

2023.1.x

3.1.x

2023.0.x

3.0.x

2022.2.x

2.7.x

2022.1.x

2.7.x

2022.0.x

2.7.x

2.1 What's new in 2024.x

2024.0.0-M1

πŸ›  Improvements

  • Update README

  • Add release notes for 2024.0.0-M1 #1111

  • Use the new url of Grace binary distribution for sdkMan #1110

  • Provides binary, sources and docs distributions for Grace framework #1109

  • Update Grace Banner #1108

  • Spring Boot 3.3.x is no longer supported #1107

  • Update grace-doc to 2023.3.0 #1106

  • Don’t publish docs to Maven Central and includes it in the distribution #1104

  • Add support for creating Grace 2024 project #1100

  • Update GrailsTests: bannerMode has been bound to properties #1050

πŸš€ Dependency Upgrades

  • Upgrade to AssertJ 3.26.3 #1088

  • Upgrade to Byte Buddy 1.15.11 #1089

  • Upgrade to Commons Codec 1.17.2 #1091

  • Upgrade to Commons Lang3 3.17.0 #1090

  • Upgrade to Commons Text 1.13.1 #1099

  • Upgrade to Gson 2.11.0 #1101

  • Upgrade to H2 2.3.232 #1093

  • Upgrade to Jackson Databind 2.18.4 #1092

  • Upgrade to JUnit Jupiter 5.11.4 #1094

  • Upgrade to JUnit Platform 1.11.4 #1095

  • Upgrade to Mockito 5.14.2 #1102

  • Upgrade to SnakeYAML 2.3 #1096

  • Upgrade to Spring Boot 3.4.6 #1050

  • Upgrade to Spring Boot 3.4.7 #1097

  • Upgrade to Spring Framework 6.2.7 #1051

  • Upgrade to Spring Framework 6.2.8 #1098

βš™οΈ Tasks

  • Release v2023.3.0-M1

  • Update GitHub workflows - Switch to 2024.0.x

  • Next development version: 2024.0.0-SNAPSHOT

2.2 What's new in 2023.x

2023.3.0

⭐️ New Features

  • Support custom Grace banner #1083

  • Add documentation: user guide and api docs #1081

  • Config generate docs step to the release workflow #1080

  • Setup docs workflow #1079

πŸ›  Improvements

  • Change to graceVersion of the app info #1085

  • Exclude obsolete gsp plugin from the plugin list #1084

  • Enhance IntegrationTestGradlePlugin - Deprecation warning of the IdeaModule.testSourceDirs - Migrate to tasks.register() #1074

  • Only show internal commands and features by using flag only, removing flag all #1073 #1042

  • Improve GradleUtil - Use System.in as the standardInput of Gradle’s BuildLauncher - It will make shell command work normally #1072

🐞 Bug Fixes

  • Fixes groovydoc: error parsing Java source file: org/grails/plugins/datasource/DataSourcePluginConfiguration.java #1082

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.3.0 #1022

  • Upgrade to Grace Async and Events 6.3.0 #1023

  • Upgrade to Grace Cache Plugin 6.3.0 #1024

  • Upgrade to Grace Data 2023.3.0 #1025

  • Upgrade to Grace Data Hibernate 2023.3.0 #1026

  • Upgrade to Grace Data MongoDB 2023.3.0 #1027

  • Upgrade to Grace Database Migration Plugin 6.3.0 #1028

  • Upgrade to Grace Fields Plugin 6.3.0 #1029

  • Upgrade to Grace Geb Plugin 6.3.0 #1030

  • Upgrade to Grace Profile: Base 2023.3.0 #1033

  • Upgrade to Grace Profile: Base 2023.3.1 #1086

  • Upgrade to Grace Profile: Plugin 2023.3.0 #1034

  • Upgrade to Grace Profile: Profile 2023.3.0 #1035

  • Upgrade to Grace Profile: Rest API 2023.3.0 #1036

  • Upgrade to Grace Profile: Starter 2023.3.0 #1037

  • Upgrade to Grace Profile: Web 2023.3.0 #1038

  • Upgrade to Grace Profile: Web Plugin 2023.3.0 #1039

  • Upgrade to Grace Scaffolding 6.3.0 #1031

  • Upgrade to Grace Views 6.3.0 #1032

  • Upgrade to Gradle 8.14.2 #1068

  • Upgrade to Gradle Tooling API 8.14.2 #1069

  • Upgrade to Groovy 4.0.27 #1067

  • Upgrade to Maven 3.9.10 #1070

  • Upgrade to Maven Resolver 1.9.23 #1071

  • Upgrade to Spring Boot 3.3.13 #1076

  • Upgrade to Spring Boot 3.3.12 #1052

  • Upgrade to Spring Framework 6.1.21 #1077

  • Upgrade to Spring Framework 6.1.20 #1053

  • Upgrade to Tomcat 10.1.42 #1078

  • Upgrade to Tomcat 10.1.41 #1066

βš™οΈ Tasks

  • Remove deprecated gradle/actions/wrapper-validation in the release workflow #1075

  • Update github workflows - Upgrade to setup-gradle@v4 - Upgrade to latest ubuntu

  • Release v2023.3.0

πŸ”Œ Plugins

πŸ“œProfiles

2023.3.0-RC2

⭐️ New Features

  • Support create-app for Spring Boot 3.5.0 #1046

  • Add ApplicationCommand commands back to Shell #1063

  • Add support custom fonts for PDF #1064

  • Add support for PDF bookmarks #1057

  • Add flag --all to command profile-info #1042 #1041

πŸ›  Improvements

  • Update README

  • Improve the styles for PDF document #1062

  • Refactor PdfBuilder DocPublisher and PublishPdfTask #1059

  • Introduce ResourceChecker to check resources for YamlTocStrategy #1058

  • Improve the print media styles: hide the nav links and quick reference #1056

  • Improve the section level as HTML headings #1055

  • Improve guide logo and title for doc templates #1054

  • Update docs template’s styles #1047

  • Support docs task’s default sourceDir may be docs or src/docs #1045

  • Command profile-info should show whether the feature is Required or Default #1044

  • Command profile-info should show the extended Profiles #1043

  • Command profile-info support show all the Profile’s commands and features included parent Profile’s #1041

  • Command profile-info should only show the Profile’s internal commands and features #1040

🐞 Bug Fixes

  • Correct the path of the generated single.html #1061

  • Fix wrong src of the logo image in doc templates #1060

πŸš€ Dependency Upgrades

  • Upgrade to Gradle 8.14 #1048

  • Upgrade to Gradle Tooling API 8.14 #1049

βš™οΈ Tasks

  • Release v2023.3.0-RC2

2023.3.0-RC1

This release is based on Spring Boot 3.3.11 and Spring Framework to 6.1.19.

  • Upgrade to Groovy 4.0.26, Gradle 8.13, Tomcat 10.1.40

  • Refactor grace-docs and GrailsDocGradlePlugin, now you can use org.graceframework.grace-doc gradle plugin to generate guide

  • bootstrap feature in base profile has upgrade to 5.3.5

  • Add grace-datastore-gorm-tck and some more dependencies to BOM

For a complete list of changes made in this release see [this project on GitHub](https://github.com/orgs/graceframework/projects/8).

⭐️ New Features

  • Update docs styles: make logo on the left and nav links on the right #1019

  • Refactor GrailsDocGradlePlugin: register tasks PublishGuideTask and PublishPdfTask #1018

  • Rename PublishPdf to PublishPdfTask #1017

  • Enhance PublishGuideTask and remove duplicated PublishGuide #1016

  • Add dependency gradleApi() to fix NoSuchMethodError: ScriptBytecodeAdapter.createRange(java.lang.Object, java.lang.Object, boolean, boolean) #1014

  • Enhance PublishPdf: Make it CompileStatic and remove property 'outputDirectory' #1015

  • Remove grace-docs' dependency on Gradle Api #1012

  • Update DocPublisherTask: migrate to groovy.ant.AntBuilder #1011

  • Update The radeox macros to clean up Gradle task related annotations #1010

  • Move Gradle related tasks to grace-gradle-plugin * MigrateLegacyDocs * PublishGuide * PublishPdf #1009

  • Remove CreateReleaseDropDownTask #1008

  • Update doc templates: clean unused scripts #1007

  • Add input properties asciidoc and language to PublishGuideTask #1006

  • Explicitly set the source and target compatibility of PublishGuideTask #1005

  • Add dependency grace-docs directly to gradle plugin #1004

  • Add more dependencies to BOM #1000

  • Add grace-datastore-gorm-tck dependency to BOM #996

πŸ›  Improvements

  • Update README - Add information about Grace vs Spring Boot - Update the badge of Spring Boot

  • Rerun some skipped tests - GrailsWebDataBinderSpec - EntityTransformTests - InheritanceWithValidationTests - DomainConstraintGettersSpec - DefaultXmlRendererSpec #1020

  • Change file and task name from grails-doc-files.jar to grace-doc-resources.jar #1003

  • Don’t provide database driver dependency when using mongodb feature #1001 #939

  • Remove unused mongodb-java-driver in libs.versions.toml #1002

🐞 Bug Fixes

  • Remove SoftwareVersionSpec: cause SoftwareVersion already removed #1013 #1008

  • Correct the artifactId of Asset Pipeline Plugin in BOM #999

  • Remove obsolete grails.factories in Services plugin #998

  • Correct the artifactId of Asset Pipeline Plugin in BOM #997

  • Remove grace-test-suite-* dependencies in the generated BOM #995

πŸš€ Dependency Upgrades

  • Upgrade to AspectJ 1.9.24 #994

  • Upgrade to Grace Asset Pipeline Plugin 6.3.0-RC1 #969

  • Upgrade to Grace Async and Events 6.3.0-RC1 #970

  • Upgrade to Grace Cache Plugin 6.3.0-RC1 #971

  • Upgrade to Grace Data 2023.3.0-RC1 #972

  • Upgrade to Grace Data Hibernate 2023.3.0-RC1 #973

  • Upgrade to Grace Data MongoDB 2023.3.0-RC1 #974

  • Upgrade to Grace Database Migration Plugin 6.3.0-RC1 #975

  • Upgrade to Grace Fields Plugin 6.3.0-RC1 #976

  • Upgrade to Grace Geb Plugin 6.3.0-RC1 #977

  • Upgrade to Grace Profile: Base 2023.3.0-RC1 #980

  • Upgrade to Grace Profile: Plugin 2023.3.0-RC1 #981

  • Upgrade to Grace Profile: Rest API 2023.3.0-RC1 #982

  • Upgrade to Grace Profile: Starter 2023.3.0-RC1 #983

  • Upgrade to Grace Profile: Web 2023.3.0-RC1 #984

  • Upgrade to Grace Profile: Web Plugin 2023.3.0-RC1 #985

  • Upgrade to Grace Profile: Profile 2023.3.0-RC1 #986

  • Upgrade to Grace Scaffolding 6.3.0-RC1 #978

  • Upgrade to Grace Views 6.3.0-RC1 #979

  • Upgrade to Java Parser 3.26.4 #987

  • Upgrade to Jsoup 1.18.3 #989

  • Upgrade to Mockito 5.11.0 #990

  • Upgrade to Spring Boot 3.3.11 #992

  • Upgrade to Spring Framework 6.1.19 #991

  • Upgrade to SLF4J 2.0.17 #988

  • Upgrade to Tomcat 10.1.40 #993

βš™οΈ Tasks

  • Release v2023.3.0-RC1

πŸ”Œ Plugins

πŸ“œProfiles

2023.3.0-M2

Include total 127 issues were closed https://github.com/orgs/graceframework/projects/7

⭐️ New Features

  • Introduce GlobalCommand to indicate some commands alwasy be available #967

  • Add GORM for MongoDB artifacts to BOM #965

  • Rewrite the Script Commands list-plugins plugin-info in Profile base to Shell CLI Commands #962

  • Support skipping some features with flag --skip on create-app #961

  • Add new property examples to CommandDescription #959

  • Support specific package name using command flag 'package-name' #957

  • Add liquibase-core and liquibase-hibernate5 to BOM #956

  • Support specific Database type using command flag 'database' #938 #939

  • Support Groovy Template in the skeleton of Profile #938

πŸ›  Improvements

  • Update README - Update badge versions of Grace and Spring Boot - Add more Plugins and Guides

  • Make list-profiles profile-info available in the project context, currently only globally #963

  • Refine the help message of help command #960

  • Refine the help message of create-app create-plugin create-profile #958

  • Exclude logback-spring.xml when packaging plugins #948

  • Increase the output width of application running status and plugin list information tables #947

  • Update README Update badge versions of Groovy and Spring Boot

  • No need to configure the assetsPath of asset-pipeline plugin #946

  • Support using methods instead of Closures in BootStrap class #943

  • grace-doc only support Gradle 8.0+ because of groovy-ant #937

  • Raise the minimum supported version of Gradle to 7.6.4+ or 8.3+ #936

  • Spring Dependency Management Plugin: Disable the customization of a generated pom

  • Also remove unused methods resolveSpringBootVersion(), resolveSpringFrameworkVersion(), resolveTomcatVersion() #934

  • Update README Update badge of Spring Boot version

🐞 Bug Fixes

  • The 'applicationClass' of Integration should be a valid main Application class annotated with @SpringBootApplication #964

  • Fixed CreateAppCommandSpec #961

  • Update DocPublisher: migrate to groovy.ant.AntBuilder #935

  • Improve GrailsGradlePlugin: Optimize the generated POM of plugin * GrailsGradlePlugin: Remove duplicated spring-boot-dependencies

πŸš€ Dependency Upgrades

  • Upgrade to AspectJ 1.9.23 #953

  • Upgrade to Grace Asset Pipeline Plugin 6.3.0-M1 #904

  • Upgrade to Grace Async and Events 6.3.0-M1 #931

  • Upgrade to Grace Cache Plugin 6.3.0-M1 #921

  • Upgrade to Grace Data 2023.3.0-M1 #922

  • Upgrade to Grace Data Migration Plugin 6.3.0-M1 #908

  • Upgrade to Grace Data MongoDB 2023.3.0-M1 #966

  • Upgrade to Grace Data Hibernate 2023.3.0-M1 #923

  • Upgrade to Grace Fields Plugin 6.3.0-M1 #924

  • Upgrade to Grace Geb Plugin 6.3.0-M1 #919

  • Upgrade to Grace Profile: Base 2023.3.0-M2 #925

  • Upgrade to Grace Profile: Plugin 2023.3.0-M2 #926

  • Upgrade to Grace Profile: Profile 2023.3.0-M2 #920

  • Upgrade to Grace Profile: Rest API 2023.3.0-M2 #927

  • Upgrade to Grace Profile: Starter 2023.3.0-M2 #915

  • Upgrade to Grace Profile: Web 2023.3.0-M2 #928

  • Upgrade to Grace Profile: Web Plugin 2023.3.0-M2 #929

  • Upgrade to Grace Scaffolding 6.3.0-M1 #930

  • Upgrade to Grace Views 6.3.0-M1 #905

  • Upgrade to Gradle 8.13 #954

  • Upgrade to Gradle 8.12.1 #944

  • Upgrade to Gradle Tooling API 8.13 #955

  • Upgrade to Gradle Tooling API 8.12.1 #945

  • Upgrade to Groovy 4.0.26 #952

  • Upgrade to Groovy 4.0.25 #933

  • Upgrade to Spring Boot 3.3.10 #949

  • Upgrade to Spring Boot 3.3.9 #940

  • Upgrade to Spring Boot 3.3.8 #932

  • Upgrade to Spring Framework 6.1.18 #950

  • Upgrade to Spring Framework 6.1.17 #941

  • Upgrade to Tomcat 10.1.39 #951

  • Upgrade to Tomcat 10.1.36 #942

βš™οΈ Tasks

  • Release v2023.3.0-M2

πŸ”Œ Plugins

πŸ“œProfiles

2023.3.0-M1

πŸ›  Improvements

  • Spring Boot 3.2 is no longer supported #894

  • Remove the workaround for logback 1.5.7+ in Spring Boot 3.3 #895

πŸš€ Dependency Upgrades

  • Upgrade to AssertJ 3.25.3 #891

  • Upgrade to Commons Lang3 3.14.0 #892

  • Upgrade to Grace Profile: Base 2023.3.0-M1 #896

  • Upgrade to Grace Profile: Plugin 2023.3.0-M1 #897

  • Upgrade to Grace Profile: Profile 2023.3.0-M1 #898

  • Upgrade to Grace Profile: Rest API 2023.3.0-M1 #899

  • Upgrade to Grace Profile: Starter 2023.3.0-M1 #900

  • Upgrade to Grace Profile: Web 2023.3.0-M1 #901

  • Upgrade to Grace Profile: Web Plugin 2023.3.0-M1 #902

  • Upgrade to Jackson Databind 2.17.3 #893

  • Upgrade to Spring Boot 3.3.7 #520

βš™οΈ Tasks

  • Release v2023.3.0-M1

  • Disables Groovy Joint Validation Build

  • Switch to '2023.3.x' Update github workflows

  • Next development version: 2023.3.0-SNAPSHOT

πŸ“œProfiles

2023.2.0

πŸ›  Improvements

  • Update dependencies of grace-web-jsp #889

  • Bean jspTagLibraryResolver is created only if JSTL exists #888

  • Improve assemble task and remove deprecation warnings #887

  • Code format

  • Add dependencies jsp jstl el to grace-web-jsp #886

  • Make jakarta-servlet as a compileOnlyApi Dependency #885

  • Update build scripts to avoid deprecation warnings with Gradle 8 #884

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.2.0 #867

  • Upgrade to Grace Async and Events 6.2.0 #868

  • Upgrade to Grace Cache Plugin 6.2.0 #869

  • Upgrade to Grace Data 2023.2.0 #870

  • Upgrade to Grace Data Hibernate 2023.2.0 #871

  • Upgrade to Grace Database Migration Plugin 6.2.0 #872

  • Upgrade to Grace Fields Plugin 6.2.0 #873

  • Upgrade to Grace Geb Plugin 6.2.0 #874

  • Upgrade to Grace Profile: Base 2023.2.0 #875

  • Upgrade to Grace Profile: Plugin 2023.2.0 #876

  • Upgrade to Grace Profile: Profile 2023.2.0 #877

  • Upgrade to Grace Profile: Rest API 2023.2.0 #878

  • Upgrade to Grace Profile: Starter 2023.2.0 #879

  • Upgrade to Grace Profile: Web 2023.2.0 #880

  • Upgrade to Grace Profile: Web Plugin 2023.2.0 #881

  • Upgrade to Grace Scaffolding 6.2.0 #882

  • Upgrade to Grace Views 6.2.0 #883

βš™οΈ Tasks

  • Release v2023.2.0

πŸ”Œ Plugins

πŸ“œProfiles

2023.2.0-RC1

⭐️ New Features

  • Auto-configure GrailsApplication and GrailsPluginManager #857

  • Supports for Multiple Data Sources #858

πŸ›  Improvements

  • Improves CreateAppCommand: Use explicit assignment instead of "space-assignment" #865

  • Improve conditions on DataSourcePluginConfiguration #859

🐞 Bug Fixes

  • The value of basePath in GroovyPageUnitTestResourceLoader is wrong after initialization #864

  • Remove Gradle Extra Configurations Plugin #850

πŸš€ Dependency Upgrades

  • Upgrade to CodeNarc Gradle Plugin 3.5.0 #854

  • Upgrade to Checkstyle Gradle Plugin 10.12.4 #852

  • Upgrade to Grace Asset Pipeline Plugin 6.2.0-RC1 #822

  • Upgrade to Grace Async and Events 6.2.0-RC1 #823

  • Upgrade to Grace Cache Plugin 6.2.0-RC1 #824

  • Upgrade to Grace Data 2023.2.0-RC1 #825

  • Upgrade to Grace Data Hibernate 2023.2.0-RC1 #826

  • Upgrade to Grace Database Migration Plugin 6.2.0-RC1 #827

  • Upgrade to Grace Fields Plugin 6.2.0-RC1 #828

  • Upgrade to Grace Geb Plugin 6.2.0-RC1 #829

  • Upgrade to Grace Profile: Base 2023.2.0-RC1 #830

  • Upgrade to Grace Profile: Plugin 2023.2.0-RC1 #831

  • Upgrade to Grace Profile: Profile 2023.2.0-RC1 #832

  • Upgrade to Grace Profile: Rest API 2023.2.0-RC1 #833

  • Upgrade to Grace Profile: Starter 2023.2.0-RC1 #834

  • Upgrade to Grace Profile: Web 2023.2.0-RC1 #835

  • Upgrade to Grace Profile: Web Plugin 2023.2.0-RC1 #836

  • Upgrade to Grace Scaffolding 6.2.0-RC1 #837

  • Upgrade to Grace Views 6.2.0-RC1 #838

  • Upgrade to Gradle 8.12 #848

  • Upgrade to Gradle Tooling API 8.12 #849

  • Upgrade to JaCoCo Gradle Plugin 0.8.12 #853

  • Upgrade to Spring Dependency Management Plugin 1.1.7 #856

  • Upgrade to Spring Framework 6.1.16 #855

  • Upgrade to Test Retry Gradle Plugin 1.6.0 #851

βš™οΈ Tasks

  • Release v2023.2.0-RC1

2023.2.0-M3

⭐️ New Features

  • Setup GitHub Workflow to publish Grace plugins #845

  • Publish Grace plugins to the Gradle Plugin Portal #844

πŸ›  Improvements

  • Define common properties for all Gradle plugins #846

🐞 Bug Fixes

  • Remove all the unnecessary Gradle plugins properties files #843

  • Task publishMavenPublication should be declared an explicit dependency on Sign #842

  • Failed to publish publication 'graceXxxPluginMarkerMaven' to repository 'Sonatype' #841

  • Enable pluginMaven publication for Gradle plugins by removing automatedPublishing = false #840

  • Update DocPublisher: migrate to groovy.ant.AntBuilder #839

βš™οΈ Tasks

  • Release v2023.2.0-M3

2023.2.0-M2

⭐️ New Features

  • Grace destroy command destroy as the opposite of generate, it will figure out what generate did, and undo it. #803

  • Grace generate command #771

  • Grace Generator API #772

πŸ›  Improvements

  • Improve Gradle build scripts #820

  • Update DataSourcePluginConfigurationTests #819

  • Remove bean transactionManager from DataSource plugin #817

  • Add plugin Generator #815

  • Enhance I18nGenerator #814

  • Use Apache Commons Text #810

  • Add @ConditionalOnMissingBean on beans in UrlMappingsPluginConfiguration #809

  • Add i18n Generator #807

  • Refactor AbstractGenerator #806

  • Refactor Generator API #805

  • Update Interceptor generator template #804

  • Generator: generate operation can be revoked #802

  • Refactor Generator API #801

  • Update Gradle Build Scripts #799

  • Improvements for GrailsProfileGradlePlugin #796

  • Exclude micrometer in the distribution of Grace #795

  • Change PluginDefiner org.grails.plugins to org.graceframework.plugins #777

  • Improve GrailsPluginGradlePlugin with no functional changes #776

  • Plugin projects should not have bootRun tasks enabled by default #775

  • Plugin projects should not create tasks such as console shell ApplicationCommand runCommand runScript pathingJar #774

  • Allows to set a name for the Script Command #773

  • Allows to create a project that don’t include any features #770

  • Fix CommandLineParser throw ArrayIndexOutOfBoundsException when the option value is empty #769

  • Disables Gradle console output coloring in interactive mode #768

  • Register GrailsExtension in GroovyPagePlugin #767

  • Support TemplateRenderer.template() to find specific the root directory of the templates #766

  • Support GrailsConsole to customize category and color of status message #765

  • Add new properties to CommandArgument: type aliases banner #764

  • Allow commands to display help information on their own #763

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.2.0-M2 #813

  • Upgrade to Grace Async and Events 6.2.0-M1 #779

  • Upgrade to Grace Cache Plugin 6.2.0-M1 #780

  • Upgrade to Grace Data 2023.2.0-M1 #781

  • Upgrade to Grace Data Hibernate 2023.2.0-M1 #782

  • Upgrade to Grace Database Migration Plugin 6.2.0-M1 #783

  • Upgrade to Grace Fields Plugin 6.2.0-M1 #784

  • Upgrade to Grace Geb Plugin 6.2.0-M1 #785

  • Upgrade to Grace Profile: Base 2023.2.0-M2 #786

  • Upgrade to Grace Profile: Plugin 2023.2.0-M2 #787

  • Upgrade to Grace Profile: Profile 2023.2.0-M2 #788

  • Upgrade to Grace Profile: Rest API 2023.2.0-M2 #789

  • Upgrade to Grace Profile: Starter 2023.2.0-M2 #790

  • Upgrade to Grace Profile: Web 2023.2.0-M2 #791

  • Upgrade to Grace Profile: Web Plugin 2023.2.0-M2 #792

  • Upgrade to Grace Scaffolding 6.2.0-M1 #793

  • Upgrade to Grace Views 6.2.0-M1 #794

  • Upgrade to Gradle 8.11.1 #797

  • Upgrade to Gradle Tooling API 8.11.1 #798

  • Upgrade to Maven 3.9.9 #800

  • Upgrade to Tomcat 10.1.34 #812

βš™οΈ Tasks

  • Release v2023.2.0-M2

2023.2.0-M1

πŸ›  Improvements

  • Performs a SDKMan Minor Release for Milestone releases and Release Candidates #761

  • Improve create-app command for Spring Boot versions #753

  • Update README

  • Update github workflows

πŸš€ Dependency Upgrades

  • Upgrade to Byte Buddy 1.14.19 #741

  • Upgrade to Commons Codec 1.16.1 #742

  • Upgrade to Commons Lang3 3.13.0 #743

  • Upgrade to Grace Profile: Base 2023.2.0-M1 #754

  • Upgrade to Grace Profile: Plugin 2023.2.0-M1 #755

  • Upgrade to Grace Profile: Profile 2023.2.0-M1 #756

  • Upgrade to Grace Profile: Rest API 2023.2.0-M1 #757

  • Upgrade to Grace Profile: Starter 2023.2.0-M1 #758

  • Upgrade to Grace Profile: Web 2023.2.0-M1 #759

  • Upgrade to Grace Profile: Web Plugin 2023.2.0-M1 #760

  • Upgrade to H2 2.2.224 #744

  • Upgrade to HSQLDB 2.7.3 #745

  • Upgrade to JUnit Jupiter 5.10.5 #751

  • Upgrade to JUnit Platform 1.10.5 #752

  • Upgrade to Mockito 5.7.0 #746

  • Upgrade to SLF4J 2.0.16 #747

  • Upgrade to SnakeYAML 2.2 #748

  • Upgrade to Spring Boot 3.2.12 #749

  • Upgrade to Spring Framework 6.1.15 #750

βš™οΈ Tasks

  • Release v2023.2.0-M1

  • Next development version: 2023.2.0-SNAPSHOT

2023.1.1

πŸ›  Improvements

  • Update DataSourcePluginConfigurationTests #818

  • Add @ConditionalOnMissingBean on beans in UrlMappingsPluginConfiguration #808

  • Update README Update current version for Groovy Badge

🐞 Bug Fixes

  • Remove bean transactionManager from DataSource plugin #816

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.1.1 #862

  • Upgrade to Grace Data 2023.1.1 #860

  • Upgrade to Grace Data Hibernate 2023.1.1 #861

  • Upgrade to Tomcat 10.1.34 #811

βš™οΈ Tasks

  • Release v2023.1.1

  • Next development version: 2023.1.1-SNAPSHOT

2023.1.0

πŸ›  Improvements

  • Plugin gsp dependency on plugin i18n should be optional #737

🐞 Bug Fixes

  • Fixed bean grailsResourceLocator name conflict in CoreConfiguration and GroovyPagesAutoConfiguration #736

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.1.0 #719

  • Upgrade to Grace Async and Events 6.1.0 #720

  • Upgrade to Grace Cache Plugin 6.1.0 #721

  • Upgrade to Grace Data 2023.1.0 #722

  • Upgrade to Grace Data Hibernate 2023.1.0 #723

  • Upgrade to Grace Database Migration Plugin 6.1.0 #724

  • Upgrade to Grace Fields Plugin 6.1.0 #725

  • Upgrade to Grace Geb Plugin 6.1.0 #726

  • Upgrade to Grace Profile: Base 2023.1.0 #727

  • Upgrade to Grace Profile: Plugin 2023.1.0 #728

  • Upgrade to Grace Profile: Profile 2023.1.0 #729

  • Upgrade to Grace Profile: Rest API 2023.1.0 #730

  • Upgrade to Grace Profile: Starter 2023.1.0 #731

  • Upgrade to Grace Profile: Web 2023.1.0 #732

  • Upgrade to Grace Profile: Web Plugin 2023.1.0 #733

  • Upgrade to Grace Scaffolding 6.1.0 #734

  • Upgrade to Grace Views 6.1.0 #735

βš™οΈ Tasks

  • Release v2023.1.0

πŸ”Œ Plugins

πŸ“œProfiles

2023.1.0-RC1

⭐️ New Features

  • Binding variable config to Console and Shell #709

πŸ›  Improvements

  • Improve CreateAppCommand Remove some unnecessary directories and extra configurations when creating a minimal application #712

  • Grace Plugin Controllers: Update additional Spring Boot configuration metadata files #711

  • Move from GroovyPageForkCompileTask’s deprecated Project.javaexec(Action) method to ExecOperations.javaexec(Action) #708

🐞 Bug Fixes

  • Fixed a bug due to use Configuration Properties: GroovyPagesProperties #713

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.1.0-RC1 #688

  • Upgrade to Grace Async and Events 6.1.0-RC1 #689

  • Upgrade to Grace Cache Plugin 6.1.0-RC1 #690

  • Upgrade to Grace Data 2023.1.0-RC1 #691

  • Upgrade to Grace Data Hibernate 2023.1.0-RC1 #692

  • Upgrade to Grace Database Migration Plugin 6.1.0-RC1 #693

  • Upgrade to Grace Fields Plugin 6.1.0-RC1 #694

  • Upgrade to Grace Geb Plugin 6.1.0-RC1 #695

  • Upgrade to Grace Profile: Base 2023.1.0-RC1 #696

  • Upgrade to Grace Profile: Plugin 2023.1.0-RC1 #697

  • Upgrade to Grace Profile: Profile 2023.1.0-RC1 #698

  • Upgrade to Grace Profile: Rest API 2023.1.0-RC1 #699

  • Upgrade to Grace Profile: Starter 2023.1.0-RC1 #700

  • Upgrade to Grace Profile: Web 2023.1.0-RC1 #701

  • Upgrade to Grace Profile: Web Plugin 2023.1.0-RC1 #702

  • Upgrade to Grace Scaffolding 6.1.0-RC1 #703

  • Upgrade to Grace Views 6.1.0-RC1 #704

  • Upgrade to Gradle Nexus Publish Plugin 2.0.0 #707

  • Upgrade to Groovy 4.0.24 #705

  • Upgrade to Tomcat 10.1.33 #706

βš™οΈ Tasks

  • Release v2023.1.0-RC1

2023.1.0-M3

⭐️ New Features

  • Support creating a minimal application by using a minimal flag #679

  • Grace Plugin Url Mappings: Generating Spring Boot configuration metadata files #677

  • Grace Plugin Rest: Generating Spring Boot configuration metadata files #676

  • Grace Plugin Mimetypes: Generating Spring Boot configuration metadata files #675

  • Grace Plugin Interceptors: Generating Spring Boot configuration metadata files #674

  • Grace Plugin Domain Class: Generating Spring Boot configuration metadata files #673

  • Grace Plugin Codecs: Generating Spring Boot configuration metadata files #672

  • Grace Plugin i18n: Generating Spring Boot configuration metadata files #671

  • Grace Plugin Datasource: Generating Spring Boot configuration metadata files #670

  • Grace Plugin Databinding: Generating Spring Boot configuration metadata files #669

  • Grace Plugin Core: Generating Spring Boot configuration metadata files #668

  • Grace Plugin Converters: Generating Spring Boot configuration metadata files #667

  • Grace Plugin Controllers: Generating Spring Boot configuration metadata files #666

  • Grace Plugin API: Generating Spring Boot configuration metadata files #665

  • Grace Boot: Generating Spring Boot configuration metadata files #664

  • Enabling Configuration Properties for GSP Plugin #663

πŸ›  Improvements

  • Add more Mime Types to the default configuration #686

  • Cleanup Dependencies #685

  • Enhances Groovy awared AutoProxy for AOP #684

  • Remove Jakarta Servlet from Grace distribution #683

  • Excluding all the transitive dependencies of grace-datastore-core #682

  • Make jakarta-servlet as a Compile-only Dependency #681

  • Improvements for updating to new Spring Boot versions #680

🐞 Bug Fixes

  • Fix jspTagLibraryResolver bean definition error in WebSetupSpecInterceptor #678

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.1.0-M3 #643

  • Upgrade to Grace Async and Events 6.1.0-M3 #644

  • Upgrade to Grace Cache Plugin 6.1.0-M3 #645

  • Upgrade to Grace Data 2023.1.0-M3 #646

  • Upgrade to Grace Data Hibernate 2023.1.0-M3 #647

  • Upgrade to Grace Database Migration Plugin 6.1.0-M3 #648

  • Upgrade to Grace Fields Plugin 6.1.0-M3 #649

  • Upgrade to Grace Geb Plugin 6.1.0-M3 #650

  • Upgrade to Grace Profile: Base 2023.1.0-M3 #651

  • Upgrade to Grace Profile: Plugin 2023.1.0-M3 #652

  • Upgrade to Grace Profile: Profile 2023.1.0-M3 #653

  • Upgrade to Grace Profile: Rest API 2023.1.0-M3 #654

  • Upgrade to Grace Profile: Starter 2023.1.0-M3 #655

  • Upgrade to Grace Profile: Web 2023.1.0-M3 #656

  • Upgrade to Grace Profile: Web Plugin 2023.1.0-M3 #657

  • Upgrade to Grace Scaffolding Plugin 6.1.0-M3 #658

  • Upgrade to Grace Views 6.1.0-M3 #659

  • Upgrade to Tomcat 10.1.31 #661

βš™οΈ Tasks

  • Release v2023.1.0-M3

2023.1.0-M2

⭐️ New Features

  • Auto-Configure Bean proxyHandler #626

  • Auto-Configure Groovy-aware Bean org.springframework.aop.config.internalAutoProxyCreator #627

  • Auto-Configure DomainClass Plugin #630

  • Auto-Configure Converters Plugin #628

  • Auto-Configure DataSource Plugin #629

πŸ›  Improvements

  • Make validateableConstraintsEvaluator as Primary bean #641

  • Support specific Spring Boot version using command flag boot-version #640

  • Make gradle-tooling-api scope only for shell #639

  • Remove submodule grace-web-boot #638

  • Add events plugin to grace-dependencies #636

  • ApplicationClassInjector: No need to exclude auto configure classes for Application #635

  • Enhance GrailsLayoutViewResolverPostProcessor #634

  • Make bean grailsLayoutViewResolverPostProcessor auto configure #633

  • Remove unused bean abstractViewResolver #632

  • Remove unused bean abstractGrailsResourceLocator #631

🐞 Bug Fixes

  • Fixes wrong @ConditionalOnProperty with grails.web.hiddenmethod.filter.enabled #637

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.1.0-M2 #609

  • Upgrade to Grace Async and Events 6.1.0-M2 #610

  • Upgrade to Grace Cache Plugin 6.1.0-M2 #611

  • Upgrade to Grace Data 2023.1.0-M2 #612

  • Upgrade to Grace Data Hibernate 2023.1.0-M2 #613

  • Upgrade to Grace Database Migration Plugin 6.1.0-M2 #614

  • Upgrade to Grace Fields Plugin 6.1.0-M2 #615

  • Upgrade to Grace Geb Plugin 6.1.0-M2 #616

  • Upgrade to Grace Profile: Base 2023.1.0-M2 #617

  • Upgrade to Grace Profile: Plugin 2023.1.0-M2 #618

  • Upgrade to Grace Profile: Profile 2023.1.0-M2 #619

  • Upgrade to Grace Profile: Rest API 2023.1.0-M2 #620

  • Upgrade to Grace Profile: Starter 2023.1.0-M2 #621

  • Upgrade to Grace Profile: Web 2023.1.0-M2 #622

  • Upgrade to Grace Profile: Web Plugin 2023.1.0-M2 #623

  • Upgrade to Grace Scaffolding 6.1.0-M2 #624

  • Upgrade to Grace Views 6.1.0-M2 #625

βš™οΈ Tasks

  • Release v2023.1.0-M2

2023.1.0-M1

πŸ›  Improvements

  • Remove the mandatory setting that allows beans to override and circular references #607

  • Enhance ResourceTransform #606

  • Make grailsResourceLocator Bean Auto-Configure #605

  • Update Badges Update Spring Boot version

  • Adds more badges Java, Groovy, Spring Boot

🐞 Bug Fixes

  • Fix Jakarta JSTL Config package name wrong #603

  • Compile profile failed with an exception when using Gradle 8 #600

  • Fixes CLI error when creating a Plugin of profile plugin #590

πŸš€ Dependency Upgrades

  • Upgrade to Apache Ant 1.10.15 #593

  • Upgrade to AsciidoctorJ 2.5.13 #571

  • Upgrade to AspectJ 1.9.22.1 #551

  • Upgrade to AssertJ 3.24.2 #552

  • Upgrade to Byte Buddy 1.14.16 #553

  • Upgrade to Grace Asset Pipeline Plugin 6.1.0-M1 #572

  • Upgrade to Grace Async and Events 6.1.0-M1 #573

  • Upgrade to Grace Cache Plugin 6.1.0-M1 #574

  • Upgrade to Grace Data 2023.1.0-M1 #575

  • Upgrade to Grace Data Hibernate 2023.1.0-M1 #576

  • Upgrade to Grace Database Migration Plugin 6.1.0-M1 #577

  • Upgrade to Grace Fields Plugin 6.1.0-M1 #578

  • Upgrade to Grace Geb Plugin 6.1.0-M1 #579

  • Upgrade to Grace Profile: Base 2023.1.0-M1 #580

  • Upgrade to Grace Profile: Plugin 2023.1.0-M1 #581

  • Upgrade to Grace Profile: Profile 2023.1.0-M1 #582

  • Upgrade to Grace Profile: Rest API 2023.1.0-M1 #583

  • Upgrade to Grace Profile: Starter 2023.1.0-M1 #584

  • Upgrade to Grace Profile: Web 2023.1.0-M1 #585

  • Upgrade to Grace Profile: Web Plugin 2023.1.0-M1 #586

  • Upgrade to Grace Scaffolding 6.1.0-M1 #587

  • Upgrade to Grace Views 6.1.0-M1 #588

  • Upgrade to Gradle Git Properties 2.4.2 #554

  • Upgrade to Groovy 4.0.23 #594

  • Upgrade to Gson 2.10.1 #555

  • Upgrade to HSQLDB 2.7.2 #556

  • Upgrade to Jackson Databind 2.15.4 #557

  • Upgrade to Jakarta Inject 2.0.1 #558

  • Upgrade to Jakarta Servlet JSP 3.1.1 #559

  • Upgrade to Jakarta Servlet JSP JSTL 3.0.2 #560

  • Upgrade to Jakarta XML Bind 4.0.2 #561

  • Upgrade to Java Parser 3.26.2 #562

  • Upgrade to Javassist 3.30.2-GA #563

  • Upgrade to Json Unit 2.40.1 #564

  • Upgrade to Jsoup 1.18.1 #565

  • Upgrade to JUnit Jupiter 5.9.3 #566

  • Upgrade to JUnit Platform 1.9.3 #567

  • Upgrade to Mockito 5.3.1 #568

  • Upgrade to Objenesis 3.4 #569

  • Upgrade to SLF4J 2.0.13 #570

  • Upgrade to Spring Boot 3.1.12 #550

  • Upgrade to Tomcat 10.1.29 #596

  • Upgrade to Tomcat 10.1.30 #598

βš™οΈ Tasks

  • Release v2023.1.0-M1

  • Update github workflows

  • Next development version: 2023.1.0-SNAPSHOT

2023.0.2

🐞 Bug Fixes

  • Compile profile failed with an exception when using Gradle 8 #599

  • Fixes error when creating a Plugin of profile plugin #589

βš™οΈ Tasks

  • Release v2023.0.2

  • Next development version: 2023.0.2-SNAPSHOT

πŸš€ Dependency Upgrades

  • Upgrade to Apache Ant 1.10.15 #591

  • Upgrade to Groovy 4.0.23 #592

  • Upgrade to Tomcat 10.1.29 #595

  • Upgrade to Tomcat 10.1.30 #597

2023.0.1

πŸ›  Improvements

  • Change group and description of Gradle task console and shell #525

  • Change group of Gradle task urlMappingsReport #524

  • Change group of Gradle task runCommand and runScript #523

  • Set group of Gradle task configScript #522

  • Improve ApplicationTemplateCommand Support using command line options in app:template #516

🐞 Bug Fixes

  • Task mergeTestReports shoud explicit depend on test #548

  • Grace BOM: Add missing grace-datastore-web #547

  • Fixes compiling error when a Domain Class with @Resource annotation #545

  • Remove exclude dependency org.codehaus.groovy of grace-datatore-* #544

  • Use ResourceUtils.getURL to resolve the viewsDir location to a java.net.URL #526

  • Fixes link 404 in grace-plugin-dynamic-modules/README.md #515

βš™οΈ Tasks

  • Release v2023.0.1

  • Next development version: 2023.0.1-SNAPSHOT

πŸš€ Dependency Upgrades

  • Upgrade to Caffeine 3.1.8 #546

  • Upgrade to Grace Asset Pipeline Plugin 6.0.1 #527

  • Upgrade to Grace Async and Events 6.0.1 #528

  • Upgrade to Grace Cache Plugin 6.0.1 #529

  • Upgrade to Grace Data 2023.0.1 #530

  • Upgrade to Grace Data Hibernate 2023.0.1 #531

  • Upgrade to Grace Database Migration Plugin 6.0.1 #532

  • Upgrade to Grace Fields Plugin 6.0.1 #533

  • Upgrade to Grace Geb Plugin 6.0.1 #534

  • Upgrade to Grace Profile: Base 2023.0.1 #535

  • Upgrade to Grace Profile: Plugin 2023.0.1 #536

  • Upgrade to Grace Profile: Profile 2023.0.1 #537

  • Upgrade to Grace Profile: Rest API 2023.0.1 #538

  • Upgrade to Grace Profile: Starter 2023.0.1 #539

  • Upgrade to Grace Profile: Web 2023.0.1 #540

  • Upgrade to Grace Profile: Web Plugin 2023.0.1 #541

  • Upgrade to Grace Scaffolding 6.0.1 #542

  • Upgrade to Grace Views 6.0.1 #543

2023.0.0

πŸ›  Improvements

  • Update README.md

  • Set group and description of Gradle task pathingJar and pathingJarCommand #513

  • Set group and description of Gradle task runCommand and runScript #512

  • Set group and description of Gradle task findMainClass #511

  • Set description of Gradle task configScript #510

  • Set group and description of Gradle task compileGroovyPages and compileWebappGroovyPages #509

  • Set group and description of Gradle task urlMappingsReport #508

  • Set group and description of Gradle task buildProperties #507

  • Improvements for GrailsPluginManager and DefaultModuleDescriptorFactory #505

  • Adds new method doDynamicModules() to GrailsPluginManager

  • Refactor DefaultModuleDescriptorFactory

  • Enhance DefaultModuleDescriptorFactory Don’t throw exception when ModuleDescriptor class of module type not found

  • Deprecate grace-plugin-dynamic-modules #504

  • Update DefaultGrailsPluginTests

  • Deprecate grace-plugin-dynamic-modules

  • Update DynamicPlugin, change void doWithDynamicModules() to Closure doWithDynamicModules()

  • Make tests passed Because dependency spring-boot changed to compileOnly #501

  • Cleanup runtime dependencies of gracce-shell #501

  • Ensure that features are applied in a fixed order when creating a project #498

  • Refine ProfileInfoCommand: Check wheather commands deprecated of profile, and append [deprecated] to its description #444

  • Change URL of grails-bom to mavenCentral() repository #443

🐞 Bug Fixes

  • Disable banner and logging off when executing ./gradlew urlMappingsReport #506

  • Fixed NPE error with DynamicPlugin.doWithDynamicModules() #504

  • Fixes StaticResourceLoaderTests#500

  • Fixes create-app error with App Template #499

  • Don’t exclude **/.gitkeep when creating a new project #497

  • Remove exclusions of dependency groovy #496

  • Optimize SLF4J dependencies for all modules #495

  • Exclude grace-shell.tar in the distribution of Grace #494

  • Singleton as the defualt scope of Controllers #493

  • Use HttpMethod.valueOf instead of resolve method

βš™οΈ Tasks

  • Release v2023.0.0

  • Start building against Grace Fields Plugin 6.0.0 snapshots #481

  • Start building against Grace Scaffolding 6.0.0 snapshots #490

  • Start building against Grace Profile: Web 2023.0.0 snapshots #488

  • Start building against Grace Profile: Base 2023.0.0 snapshots #483

πŸš€ Dependency Upgrades

  • Upgrade to Apache Ant 1.10.14 #503

  • Upgrade to Grace Asset Pipeline Plugin 6.0.0 #475

  • Upgrade to Grace Async and Events 6.0.0 #476

  • Upgrade to Grace Cache Plugin 6.0.0 #477

  • Upgrade to Grace Data 2023.0.0 #478

  • Upgrade to Grace Data Hibernate 2023.0.0 #479

  • Upgrade to Grace Database Migration Plugin 6.0.0 #480

  • Upgrade to Grace Fields Plugin 6.0.0 #481

  • Upgrade to Grace Geb Plugin 6.0.0 #482

  • Upgrade to Grace Profile: Base 2023.0.0 #483

  • Upgrade to Grace Profile: Plugin 2023.0.0 #484

  • Upgrade to Grace Profile: Profile 2023.0.0 #485

  • Upgrade to Grace Profile: Rest API 2023.0.0 #486

  • Upgrade to Grace Profile: Starter 2023.0.0 #487

  • Upgrade to Grace Profile: Web 2023.0.0 #488

  • Upgrade to Grace Profile: Web Plugin 2023.0.0 #489

  • Upgrade to Grace Scaffolding 6.0.0 #490

  • Upgrade to Grace Views 6.0.0 #491

  • Upgrade to Maven Settings Builder 3.9.4 #502

  • Upgrade to Spring Dependency Management Plugin 1.1.6 #445

  • Upgrade to Spring Framework 6.0.23 #492

2023.0.0-RC2

🐞 Bug Fixes

  • Fixes GrailsVersion throw NPE when execute grace -v #440

βš™οΈ Tasks

  • Release v2023.0.0-RC2

πŸš€ Dependency Upgrades

  • Upgrade to Grace Profile: Base 2023.0.0-RC2 #432

  • Upgrade to Grace Profile: Plugin 2023.0.0-RC2 #433

  • Upgrade to Grace Profile: Profile 2023.0.0-RC2 #434

  • Upgrade to Grace Profile: Rest API 2023.0.0-RC2 #435

  • Upgrade to Grace Profile: Starter 2023.0.0-RC2 #436

  • Upgrade to Grace Profile: Web Plugin 2023.0.0-RC2 #437

  • Upgrade to Grace Profile: Web 2023.0.0-RC2 #438

  • Upgrade to Tomcat 10.1.28 #439

2023.0.0-RC1

⭐️ New Features

  • Add a new Profile starter starter is a new Profile provides only one file, it gives you to write your own Application Templates, apply it when you create a new project including app, plugin, profile. #427

  • Force overwrite of existing files When creating an new app When creating a new app, force overwrite are allowed even if the directory already exists #426

  • Support for creating Grails apps that using Profiles Using a specific Grails version when you create a new app with create-app command, but not support SNAPSHOT versions. #425

  • Support using latest Grace Snapshot version to test Snapshot is the latest, un-released version of Grace. #424

  • Support specific Grace version using command flag grace-version #423

  • Add supports quiet flag in CreateAppCommand #421

  • Refine GroovyScriptCommand This allow script command to apply Application Templates to exist project, perform some complex tasks such as install, uninstall, upgrade. #413

  • Namespaced Command Add new attribute namespace to org.grails.cli.profile.Command, allow commands groupd by namespace. #410

  • Support Command can be hidden Commands can be hidden, in some cases, some infrequently used commands do not need to be shown to the user. #409

  • Application templates are simple Groovy files containing DSL, Ant scripts, etc. you can use templates to generate/customize Grace applications. #406

  • Support start scripts including lib\ext jars in classpath #382

⚑️ Breaking Changes

🐞 Bug Fixes

  • Throw StackOverflowError when GSP view not exists Don’t return cached UrlMappingInfo in the UrlMappingsHandlerMapping #378

πŸ›  Improvements

  • Make tomcat-jdbc as implementation dependency to grace-plugin-datasource #429

  • Don’t show app:template in non project directory ApplicationTemplateCommand should implements ProjectCommand instead of ProfileCommand #428

  • Don’t add log field for Domain Class #422

  • Refactor GrailsVersion

  • Fixes getGrailsGradlePluginVersion() error for using Grails version

  • Fixes value of option grace-version maybe null when using toString

  • Support specific Grails version using command flag grace-version Supports Grails 3, 4

  • Make Gradle compatible old versions used in Grails 3/4

  • Fixes issues when initializing dependencies of Profile and Features

  • Support specific Grails version using command flag grace-version Supports Grails 5, 6

  • Add methods to check Grails versions

  • Support specific Grace version using command flag grace-version

  • Add methods to check Grace versions

  • Update CreateAppCommand to allow only log errors

  • Add quiet flag to CommandLine

  • Provide Command Options for Application Templates When creating a new project, we need to know the command options to create files or apply templates. #420

  • Add command options to script property and template binding

  • Add more options: css database javascript enable-preview Use enable-preview to ignore flags or options valiate

  • Add getDeclaredOptions() for CommandLine

  • Set archiveClassifier of plugin jar to plugin #419

  • Enhance UrlMappingsHolderFactoryBean Remove unneed code, it will cause type cast exception #418

  • Use a temporary directory to generate template files #406

  • Refine ApplicationTemplateCommand Fixes a minor bug in CreateAppCommand #406

  • Add apply() method to GroovyScriptCommand This will supports script commands to apply Application Templates

  • Add deprecated property to GroovyScriptCommand

  • Add visible property to GroovyScriptCommand

  • Provides namespace for Script Command

  • Deprecate open command #412

  • Allow Command to be deprecated #411

  • Display a warning message when executing a deprecated command

  • Marked [deprecated] on commands in help command

  • Add deprecated property to MultiStepCommand

  • Add boolean isDeprecated() to Command

  • Support namespaced commands

  • Add getNamespace() and getFullName() to Command

  • Refactor HelpCommand Add flag all to show all commands, only show visible commands default

  • Add visible property to MultiStepCommand

  • Convert org.grails.cli.profile.Command to Java Add default method boolean isVisible()

  • Fixes fail tests related Groovy STC #404

  • Remove deprecated LazyBeanMap Use LazyMetaPropertyMap instead #408

  • Extract method evaluateFeatures

  • Support template hooks postGenerateProject

  • Extract method generateProjectSkeleton

  • Support template hooks preApplyTemplate and postApplyTemplate

  • Use Groovy task to execute Application Template scripts

  • Fixes error in hasFeature

  • Fixes template could be null

  • Improve generated project information

  • Use GrailsConsoleAntProject and Grace’s Ant tasks

  • Add more Ant tasks: * File * Git * Grace * Gradle * Groovy * Npm * Run * Say

  • Move GrailsConsoleLogger to its own class

  • Refactor CreateAppCommand * Fixes wrong project type * Make getDestinationDirectory protected

  • Refactor CreateAppCommand Cleanup

  • Refactor CreateAppCommand Don’t use global variables

  • remove unneed method resolveArtifactString

  • Define constant UNZIP_TEMPLATE_TEMP_DIR

  • Refactor CreateAppCommand

  • Refactor CreateAppCommand

  • Refactor CreateAppCommand

  • Binding variables and versions to GStringTemplate

  • Don’t call replacestring on binary files

  • Improve copySkeleton Check file exists before copying Copy .gitattributes

  • Refactor CreateAppCommand

  • Add more variables to Ant project properties

  • Support zip and git template and template directory

  • Support url resource for templates

  • Introduce Grace Application Templates

  • Improve create-app command: display project informations after project created #385

  • ImproveΒ create-app command error message when the app directory exists #384

  • Update Gradle default Start Script Templates #383

  • Add flags stacktrace and verbose to create-app command #381

  • Add mavenLocal() repository when using Grace snapshots version #380

  • Gradle: Use JavaPluginExtension instead of deprecated JavaPluginConvention

  • Improve DirectoryWatcher: Change logging level to debug when jna not available on MacOS

  • Update docs templates

  • Update github workflows Upgrade Gradle Actions

  • Add Jakarta Servlet and JSP taglib schema definitions

  • Update Metadata.DEFAULT_SERVLET_VERSION to 6.0

βš™οΈ Tasks

  • Release v2023.0.0-RC1

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.0.0-RC1 #386

  • Upgrade to Grace Async and Events 6.0.0-RC1 #387

  • Upgrade to Grace Cache Plugin 6.0.0-RC1 #388

  • Upgrade to Grace Data 2023.0.0-RC1 #389

  • Upgrade to Grace Data Hibernate 2023.0.0-RC1 #390

  • Upgrade to Grace Database Migration Plugin 6.0.0-RC1 #391

  • Upgrade to Grace Fields Plugin 6.0.0-RC1 #392

  • Upgrade to Grace Geb Plugin 6.0.0-RC1 #393

  • Upgrade to Grace Profile: Base 2023.0.0-RC1 #396

  • Upgrade to Grace Profile: Plugin 2023.0.0-RC1 #397

  • Upgrade to Grace Profile: Profile 2023.0.0-RC1 #398

  • Upgrade to Grace Profile: Rest API 2023.0.0-RC1 #399

  • Upgrade to Grace Profile: Starter 2023.0.0-RC1 #430

  • Upgrade to Grace Profile: Web Plugin 2023.0.0-RC1 #400

  • Upgrade to Grace Profile: Web 2023.0.0-RC1 #401

  • Upgrade to Grace Scaffolding 6.0.0-RC1 #394

  • Upgrade to Grace Views 6.0.0-RC1 #395

  • Upgrade to Groovy 4.0.22 #404

  • Upgrade to Maven Resolver 1.9.14 #403

  • Upgrade to Maven 3.9.4 #402

  • Upgrade to org.xhtmlrenderer:core-renderer R8 #407

  • Upgrade to SiteMesh 2.6.0 #350

  • Upgrade to Spring Framework 6.0.22 #351

  • Upgrade to Tomcat 10.1.25 #352

2023.0.0-M7

⚑️ Breaking Changes

  • Temporarily remove the run command

  • Migrate the new hibernate plugin

🐞 Bug Fixes

  • Fixes task compileGroovy execute failed on Windows

  • test: Use NullObject.getNullObject()

  • Gradle build: Using ByteBuddy instead of Cglib with Spock

  • Make tests passed Some tests ignored, should resolved later

  • The SourceDirectorySet.outputDir property has been deprecated, use the classesDirectory property instead

  • Fixes test because NullObject’s constructor is private now

  • Grails Web: Fixes StackOverflowError when view not found

  • Grails GSP: Fixes failed test in GrailsConventionGroovyPageLocatorSpec

  • Grails Bootstrap: Fixes failed test in GrailsPluginMetadataTests

  • Grails Plugin GSP: Fixes StackOverflowError, because DefaultGroovyPageLocatorβ€˜s precompiledGspMap was not properly initialized

  • Grails Plugin GSP: Fixes circle reference error in GroovyPagesAutoConfiguration

  • Grails Plugin GSP: Fixes NPE in GroovyPagesAutoConfiguration

  • Grails Boot: fixes NOT generate ApplicationLoader in BootInitializerClassInjector

πŸ›  Improvements

  • Start building against SiteMesh 2.6.0 snapshots #299

  • Start building against Grace Data Hibernate 2023.0.0 snapshots #296

  • Start building against Grace Data 2023.0.0 snapshots #295

  • Grails GSP: Make logger protected in DefaultGroovyPageLocator

  • Grails GSP: Improvements for DefaultGroovyPageLocator

  • Grails Shell: Make Commands and Features displaying by order

  • Grails Shell: Rearrange repositories and buildRepositories before using Grails profile

  • Grails Core: Make shouldInject(URL) default method in ClassInjector

  • Grails Plugin Interceptors: Adds missing grails.factories

  • Grails Plugin GSP: Adding version property to groovyPages plugin

  • Grails Core: GrailsASTUtils: adding more methods to check whether the specified source is a Grails project source

  • Grails Core: Deprecated ClassInjector.shouldInject(URL), in favor of shouldInject(ClassNode)

  • Grails Gradle Plugin: configure Groovy AST Metadata for configurationScript of GroovyCompileOptions

  • Improve Gradle build

  • Gradle Build: cleanup

  • Gradle Build: Configure Java toolchain

βš™οΈ Tasks

  • Release v2023.0.0-M7

  • Grace: update github workflows

  • ci: turn on unit tests

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.0.0-M4 #297

  • Upgrade to Grace Async and Events 6.0.0-M4 #327

  • Upgrade to Grace Cache Plugin 6.0.0-M3 #329

  • Upgrade to Grace Data 2023.0.0-M5 #295

  • Upgrade to Grace Data Hibernate 2023.0.0-M5 #296

  • Upgrade to Grace Database Migration Plugin 6.0.0-M3 #333

  • Upgrade to Grace Fields Plugin 6.0.0-M3 #330

  • Upgrade to Grace Geb Plugin 6.0.0-M3 #331

  • Upgrade to Grace Profile: Base 2023.0.0-M5 #334

  • Upgrade to Grace Profile: Plugin 2023.0.0-M4 #335

  • Upgrade to Grace Profile: Profile 2023.0.0-M4 #336

  • Upgrade to Grace Profile: Rest API 2023.0.0-M4 #337

  • Upgrade to Grace Profile: Web Plugin 2023.0.0-M4 #338

  • Upgrade to Grace Profile: Web 2023.0.0-M4 #339

  • Upgrade to Grace Scaffolding 6.0.0-M3 #332

  • Upgrade to Grace Views 6.0.0-M4 #328

  • Upgrade to Gradle Wrapper 7.6.4 #326

  • Upgrade to Gradle Tooling Api 7.6.4 #325

  • Upgrade to Groovy 4.0.21 #320

  • Upgrade to SiteMesh 2.6.0-M1 #299

  • Upgrade to SLF4J 2.0.9 #324

  • Upgrade to Spring Boot 3.0.13 #321

  • Upgrade to Spring Framework 6.0.14 #322

  • Upgrade to Tomcat 10.1.16 #323

2023.0.0-M6

⭐️ New Features

  • Grails Plugin GSP: Migrate to Jakarta Standard Tag Library 3.0

  • Grails Web JSP: adding web-app_5_0.xsd web-app_6_0.xsd web-jsptaglibrary_3_0.xsd

πŸ›  Improvements

  • Use default compileDir configured in asset-pipeline #292

  • Remove Micronaut related libraries in Gradle versions catalog #291

  • Rewrite Metadata #290

  • Add tests to check resolve strategy of BeanBuilder invokeBeanDefiningClosure() #269

  • Improvements for run-command #288

  • Supports run-script loading in /app/scripts and scripts #287

  • Grails Boot: Support configure watch files in application.yml in dev mode

  • Grails Boot: Support reloading spring beans from resources.xml when changed

  • Grails Plugin Core: Support reloading spring resources.groovy when changed

  • Grails Bootstrap: Update BuildSettings

  • Grails Bootstrap: Minor improvements for GrailsResourceUtils

  • Grails Bootstrap: Improve documentation and comments for GrailsResourceUtils

  • Grails i18n Plugin: Revert 0adeb492

  • Grails Boot: Refine GrailsDevelopmentModeWatchApplicationContextInitializer

  • Grails Boot: Simplify GrailsDevelopmentModeWatchApplicationContextInitializer

  • Grails Bootstrap: adding new BuildSettings.GRAILS_APP_PATH property, it may be app or grails-app as default.

  • Grails i18n Plugin: Support watching i18n properties, use Ant to convert files to ASCII

  • Grails Boot: Refine GrailsDevelopmentModeWatchApplicationContextInitializer, use BuildSettings.GRAILS_APP_DIR

  • Grails Console: set IO verbosity to VERBOSE

  • Grails Gradle Plugin: Always configure system properties of BuildSettings when executing command like bootRun, runCommand, runScript

  • Grails Shell: using BuildSettings.GRAILS_APP_DIR to load the project Classes in Completer

  • Grails Shell: using BuildSettings.GRAILS_APP_DIR to load config files

  • Grails i18n Plugin: using BuildSettings.GRAILS_APP_DIR to get i18n properties

  • Grails Bootstrap: adding new BuildSettings.APP_DIR system property, also configure it by Gradle plugin

  • Grails Console: use GrailsConsoleLogger when running application commands or scripts

  • Grails Console: Running scripts from GRAILS_APP_DIR/scripts directory

  • Grails Bootstrap: Adding GRAILS_APP_DIR to BuildSettings

  • Grails Console: Rename GrailsApplicationContextCommandRunner to GrailsApplicationCommandRunner

  • Grails Console: set IO verbosity to VERBOSE

🐞 Bug Fixes

  • Remove WARN: Using deprecated '-debug' fallback for parameter name resolution #294

  • Migrate to grace-docs dependency in GrailsDocGradlePlugin #293

  • Remove duplicated line

  • Remove unused grails-plugin-gsp

  • Fixes event.source.file.canonicalFile error #289

  • Remove unused Gradle plugin descriptors

  • Explicitly set resolve strategy to OWNER_FIRST in BeanBuilder.invokeBeanDefiningClosure #269

  • GrailsDevelopmentModeWatchApplicationContextInitializer compilerConfig.targetDirectory is not correct #261

  • Ignore SystemEnvironmentConfigSpec

  • Grails Core: fix tests in StackTracePrinterSpec

  • Grails Plugin REST: fix tests

  • Fixes tests related aop scoped-proxy, set proxy-target-class: false

  • Revert "Grails Boot: Support configure watch files in application.yml in dev mode"

  • Grails Gradle Plugin: Don’t use deprecated Gradle ConfigureUtil

  • Grails Bootstrap: Fixes GrailsResourceUtils.getPathFromBaseDir(), the path relative to the project base directory

  • Grails Bootstrap: Update GrailsVersion in GrailsUtilTests

  • Grails Gradle Plugin: Import grails-bom after spring-boot-dependencies

  • Grails Console: remove unnecessary configureApplicationContextClass() in DevelopmentGrails

  • Grails Gradle Plugin: set systemProperty base.dir when running command or script

  • Grails Console: Fixes BUG: The run-script command does not work if grails.codegen.defaultPackage is set

  • Grails Console: Don’t hook interceptors when execute commands

  • Grails Console: remove unnecessary configureApplicationContextClass() in GrailsConsole and GrailsShell

βš™οΈ Tasks

  • Release v2023.0.0-M6

  • Update github workflows

  • Add Badges

  • Update README

  • Update readme

  • Update GitHub ISSUE_TEMPLATE.md

  • Update github workflows

  • Update github issue templates

  • Update github issue templates

  • Grace: update github workflows

  • Grace: migrate to grace

πŸš€ Dependency Upgrades

  • Upgrade to Grace Asset Pipeline Plugin 6.0.0-M3 #271

  • Upgrade to Grace Async and Events 6.0.0-M3 #272

  • Upgrade to Grace Cache Plugin 6.0.0-M2 #273

  • Upgrade to Grace Data 2023.0.0-M4 #274

  • Upgrade to Grace Data Hibernate 2023.0.0-M4 #275

  • Upgrade to Grace Database Migration Plugin 6.0.0-M2 #276

  • Upgrade to Grace Fields Plugin 6.0.0-M2 #277

  • Upgrade to Grace Geb Plugin 6.0.0-M2 #278

  • Upgrade to Grace Profile: Base 2023.0.0-M4 #281

  • Upgrade to Grace Profile: Plugin 2023.0.0-M3 #282

  • Upgrade to Grace Profile: Profile 2023.0.0-M3 #283

  • Upgrade to Grace Profile: Rest API 2023.0.0-M3 #284

  • Upgrade to Grace Profile: Web Plugin 2023.0.0-M3 #285

  • Upgrade to Grace Profile: Web 2023.0.0-M3 #286

  • Upgrade to Grace Scaffolding 6.0.0-M2 #279

  • Upgrade to Grace Views 6.0.0-M3 #280

  • Upgrade to Groovy 4.0.12

  • Upgrade to Jackson Databind 2.14.3

  • Upgrade to Micronaut 3.9.2

  • Upgrade to Spring Boot 3.0.7

  • Upgrade to Spring Framework 6.0.9

2023.0.0-M5

🐞 Bug Fixes

  • Set default compatibility of ProfileCompilerTask to 17

  • Cleanup build scripts: make spring-test test only

  • Fixed NPE in GroovyPagesAutoConfiguration

  • Adds missing spring resources

  • Revert GroovyPageLayoutFinder

  • Groovy 3: Migrate to groovy.test.NotYetImplemented

  • Code format: make imports ordered

  • Update AbstractGrailsTagTests

  • Grails Console: Remove dependency of jna

  • Grails Gradle Plugin: Fixes run-command fails

  • Fixes findMainClass errors in Groovy 4

πŸ›  Improvements

  • Gradle Plugin: Database Migration plugin no longer uses app\migrations by default #227

  • Gradle Plugin: app\views should not be treated as Resource dir #226

  • Remove deprecated Gradle plugins: gracePluginPublish and graceProfilePublish #217

  • Gradle Plugin: console and shell should be listed by group in Gradle tasks #216

  • Make application running status logging only when debug enabled

  • Grace: change console title

  • Update project skeleton: migrating from old apply plugin to plugins block #219

  • Use properties of grace-bom as variables for CreateAppCommand #218

  • Remove the direct dependency of GSP on url-mappings plugin #228

  • Format codes in GroovyPagesGrailsPlugin

  • Auto-Configure GroovyPagesGrailsPlugin

  • Auto-Configure GroovyPagesGrailsPlugin

  • Auto-Configure GroovyPagesGrailsPlugin

  • Auto-Configure GroovyPagesGrailsPlugin

  • Grails Boot: use configureProfiles in Grails

  • Grails Console: custom title for GrailsConsole fileNewWindow

  • Grails Console: Rename GrailsSwingConsole to GrailsConsole

  • Grails Console: Adding JVM and OS version for showAbout dialog

  • Grails Console: Migrate to Groovy 4, because Groovy 4 enable indy default

  • Grails Boot: Refactoring Grails

  • Grails Boot: Improve print information of the running app status

  • Grails Console: Improve GrailsSwingConsole

  • Grails Console: Improve the Grails shell with two call hooks: beforeExecution and afterExecution

βš™οΈ Tasks

  • Grace: update github workflows

  • Grace: update github workflows

  • Grace: migrate to grace

πŸš€ Dependency Upgrades

  • Upgrade to Ant 1.10.13

  • Upgrade to Grace Profile: Base 2023.0.0-M3 #220

  • Upgrade to Grace Profile: Plugin 2023.0.0-M2 #221

  • Upgrade to Grace Profile: Profile 2023.0.0-M2 #222

  • Upgrade to Grace Profile: Rest API 2023.0.0-M2 #223

  • Upgrade to Grace Profile: Web 2023.0.0-M2 #225

  • Upgrade to Grace Profile: Web Plugin 2023.0.0-M2 #224

  • Upgrade to Jackson Databind 2.14.2

  • Upgrade to Methvin Directory Watcher 0.18.0

2023.0.0-M4

🐞 Bug Fixes

  • Fixes bug: ApplicationCommand in app/commands should be listed in Gradle tasks #179

  • Fixes findMainClass errors in Groovy 4

  • Downgrade Jansi to 1.18 #178

βš™οΈ Tasks

  • Grace: update github workflows

πŸš€ Dependency Upgrades

  • Upgrade to Ant 1.10.13

  • Upgrade to AsciidoctorJ 2.5.8

  • Upgrade to JSoup 1.16.1

  • Upgrade to Objenesis 3.3

  • Upgrade to SLF4J 2.0.7

2023.0.0-M3

⭐️ New Features

  • ApplicationCommand can be registered as a Gradle task #175

  • Migrate to Jakarta: using Jakarta XML Binding 4.0.0

  • Migrate to Jakarta: remove javax libs in Gradle version catalog

  • Migrate to Jakarta: Using jakarta.persistence-api

  • Migrate auto-configurations to @AutoConfiguration

  • Grails Shell: Adding variable projectSnakeCaseName to CreateAppCommand

  • Grails Service and Spring Service coexist harmoniously

  • Grails Controller and Spring Controller coexist harmoniously

  • Changed viewName to better support integration with other view templates, like Groovy Templates

  • Improve log statements to help with debugging

  • Adding toString method, this is helpful for logs

⚑️ Breaking Changes

  • Remove supports for micronaut spring

  • Break Changes: Scaffold templates moved to resources root

  • Break changes: JPA Entity is no longer considered Grails Domain

🐞 Bug Fixes

  • Update Grails version pattern

  • Grails Plugin REST: fixes AbstractJsonViewContainerRenderer compiling errors in grails-views project

  • Use jakarta servlet

  • Grails GSP: fixes layout view not found

  • Fixes violations for Checkstyle check

  • Fixes violations for Codenarc check

  • Fixes violations for Codenarc check

  • Grails Plugin GSP: remove loadAfter 'filters'

πŸ›  Improvements

  • Gradle Plugin: remove unused constants

  • Gradle Plugin: remove configureGroovy

  • Gradle Plugin: remove micronaut dependency and configureFileWatch

  • Update runtime dependencies of shell

  • Refine GrailsResourceBanner Support Spring Boot 3

  • Grails REST render context support viewName including namespace and controller name

  • Grails REST render context support viewName including namespace and controller name

  • Improve ApplicationClassInjector: make Grails to take advantage of DataSource and JPA configurations in Spring Boot

  • Improvements made to JPA Entity compatibility

  • Update Dependencies

  • Refine GroovyPageViewResolver

  • Make GroovyGrailsPlugin ordered

  • Grails Shell: format Gradle build.gradle

  • Grails Shell: remove extra spaces

βš™οΈ Tasks

  • Gradle build: remove dependencySubstitution force using Groovy 4

  • Gradle Build: remove dependencySubstitution for using Groovy 4

  • Grace: add dependencySubstitution to use Groovy 4

  • Grace: update github workflows

  • Grace: optimize shell dependencies

  • Grace: update gradle build scripts

  • Don’t publish milestones to sdkman

πŸš€ Dependency Upgrades

  • Upgrade to Caffeine 3.1.6

  • Upgrade to Grace Async and Events 6.0.0-M2 #170

  • Upgrade to Grace Cache Plugin 6.0.0-M1 #151

  • Upgrade to Grace Data 2023.0.0-M2 #166

  • Upgrade to Grace Data 2023.0.0-M3 #168

  • Upgrade to Grace Data Hibernate 2023.0.0-M2 #167

  • Upgrade to Grace Data Hibernate 2023.0.0-M3 #169

  • Upgrade to Grace Database Migration Plugin 6.0.0-M1 #154

  • Upgrade to Grace Fields Plugin 6.0.0-M1 #155

  • Upgrade to Grace Geb Plugin 6.0.0-M1 #156

  • Upgrade to Grace Profile: Base 2023.0.0-M2 #173

  • Upgrade to Grace Profile: Plugin 2023.0.0-M1 #158

  • Upgrade to Grace Profile: Profile 2023.0.0-M1 #159

  • Upgrade to Grace Profile: Rest API 2023.0.0-M1 #160

  • Upgrade to Grace Profile: Web Plugin 2023.0.0-M1 #161

  • Upgrade to Grace Profile: Web 2023.0.0-M1 #162

  • Upgrade to Grace Scaffolding 6.0.0-M1 #163

  • Upgrade to Grace Views 6.0.0-M2 #172

  • Upgrade to Groovy 4.0.11

  • Upgrade to groovy-toml 4.0.11

  • Upgrade to Micronaut Core 4.0.7 #171

  • Upgrade to SLF4J 2.0.7 #174

  • Upgrade to Spring Boot 3.0.6

  • Upgrade to Spring Framework 6.0.8

  • Upgrade to Tomcat 10.1.8

2023.0.0-M2

🐞 Bug Fixes

  • Use jakarta servlet

  • Update Dependencies

  • Don’t publish milestones to sdkman

  • Fixes pluginExcludes type error

  • Grails Shell: fixes failing in 'create-app' Command

  • Gradle: migrate to Gradle 8 Gradle 8: 'classifier' was removed from type org.gradle.api.tasks.bundling.Jar

  • Grails Gradle Plugin: fixes some errors like AbstractMethodError in GrailsExtension and Environment

  • Gradle: Support Gradle 8.0 fixed: Could not create task of type 'GroovyPageForkCompileTask' in Gradle 8

  • Migrate to jakarta.* namespace

  • Grails Core: make GrailsASTUtils isDomainClass decoupled with 'javax.persistence-api' and GORM

  • Gradle Plugin: remove SDK Plugin

πŸ›  Improvements

  • Grace: update install.txt

  • Grace: update runtime dependencies for shell

  • Grace: optimize shell dependencies

  • Grace: rename install and license

  • Grace: update readmes and license

βš™οΈ Tasks

  • Grace: update gradle build scripts

  • Grace: update github workflows skip tests

  • Grace: update github workflows

  • Grace: update github workflows

  • Grace: fix Conflicting module versions

  • Grace: rename grails-sitemesh to grace-sitemesh

  • Grace: update run command

  • Grace: optimize shell dependencies

  • Grace: fixed some known issues

  • Grace: update profile and commands

  • Grace: update banner

  • Grace: fixed failed tests

  • Grace: update media assets

  • Grace: update testsuite build scripts

  • Grace: update github workflows

  • Grace: update gradle build scripts

  • Grace: rename all sub-projects

πŸš€ Dependency Upgrades

  • Gradle Plugin: Upgrade to JaCoCo 0.8.9

  • Gradle Plugin: Test Retry Plugin 1.5.2

  • Gradle Plugin: Upgrade to Nexus Publish Plugin 1.3.0

  • Gradle Plugin: Upgrade to Nebula Extra Configuration Plugin 9.0.0

  • Upgrade to Grace Asset Pipeline Plugin 6.0.0-M1 #149

  • Upgrade to Grace Asset Pipeline Plugin 6.0.0-M2 #165

  • Upgrade to Grace Async and Events 6.0.0-M1 #150

  • Upgrade to Grace Data Hibernate 2023.0.0-M1 #153

  • Upgrade to Grace Data 2023.0.0-M1 #152

  • Upgrade to Grace Profile: Base 2023.0.0-M1 #157

  • Upgrade to Grace View 6.0.0-M1 #164

2023.0.0-M1

Grace 2023.0 will be the first release to support Spring Boot 3.0 and Spring Framework 6.0. This release will be migrated to Jakarta namespace, upgraded to Jakarta Servlet 6 and Jakarta JSP 3.1, Jakarta Transaction API 2.0. To accomplish this, we merged both the SiteMesh 2.4.2 and GSP projects into this repository, and did a lot of migration and upgrade work. The next step will be to gradually upgrade other major projects, such as Grace GORM, as well as other core plugins.

⭐️ New Features

  • Jakarta: Migrate to 'jakarta.*' namespaces

  • Jakarta: Migrate to 'jakarta.persistence' namespaces

  • Jakarta: Migrate to 'jakarta.*' namespaces

  • Jakarta: Using jakarta.persistence-api

  • Support Jakarta EE 9

  • Support Jakarta EE 9

  • SiteMesh: Support Jakarta EE 9

  • Grails GSP Import GSP related projects into Grails Framework

  • Adding Grails Dynamic Modules Plugin

  • Import Spring Boot CLI

⚑️ Breaking Changes

  • Micronaut: Remove supports for Micronaut Spring

🐞 Bug Fixes

  • Grace: fixed some known issues

  • Fixes deprecated warnings from SafeConstructor and Representer

  • CodeNarc: Fixes violations for CodeNarc check

  • Fixes errors for Checkstyle check: [RequireThis]

  • Grails Shell: fixes wrong location of 'grails-bom-effective.xml'

  • Grails Shell: fixed error import of GrailsDependenciesDependencyManagement

  • Grails GSP: fixes tests NPE with JSP 2.2 and JSTL 1.2

  • Grails GSP: fixes JSP tags not found

  • Grails GSP: added missing grails-plugin.xml

  • Grails GSP: fixed STC errors

  • Fixes some errors related to classLoader

  • Fixes type cast error in GradleCommand

πŸ›  Improvements

  • Groovy: explicitly import 'groovy.xml.XmlSlurper' *: revert 'Adding not related modules'

  • SiteMesh: make tests pass

  • SiteMesh: adding module: 'grails-sitemesh'

  • SiteMesh: relocate to 'grails-sitemesh'

  • SiteMesh: Remove some files unused and not related

  • SiteMesh: relocate tlds to src/main/resources

  • Using Gradle to build

  • Update Grails version to 2023.0.0

  • Reorganizing the project codebase

  • fix: remove unused 'grails-gsp' in libs.version

  • Grails GSP: remove support for loading NamespacedTagDispatcher from Spring Beans

  • Grails GSP: minor improvements

  • Improvements for customizing Tag Namespace

  • Grails Gradle Plugin: remove dependency of 'spring-boot-cli'

  • Grails Gradle Plugin: adding dependency 'spring-boot-cli'

  • Grails Shell: remove depracted 'AetherGrapeEngine' and 'AetherGrapeEngineFactory'

  • Grails Shell: rename 'GrailsAetherGrapeEngineFactory' to 'GrailsMavenGrapeEngineFactory'

  • Grails Shell: use 'MavenResolverGrapeEngine' inplace of depracted 'AetherGrapeEngine'

  • Grails Shell: remove dependency of 'spring-boot-cli'

  • Grails Shell: remove SpringInvoker

  • Grails Shell: refactoring code

  • Grails Shell: refactoring GrailsApplicationCompilerAutoConfiguration and GrailsTestCompilerAutoConfiguration

  • Grails Shell: Apply IDEA Groovy and Java Code Style

  • Grails Shell: remove unused GrailsDependencyVersions

  • Grails Shell: relocate GrailsDependenciesDependencyManagement

  • Minor improvement: Correct words

  • Grails Web: Improvements for HttpServletReuest.isXhr

  • Grails Shell: Update RunCommand

  • Grails Shell: Update dependencies for GrailsCompilerAutoConfiguration

  • Grails Shell: Use GrailsDependenciesDependencyManagement replace of GrailsDependencyVersions

  • Grails GSP: adding web-app_3_0.x and web-app_4_0.xsd

  • Grails GSP: remove '@Depreacted' in JspInvokeGrailsTagLibTag

  • build: fixes Java Compile warnings of deprecated, unchecked, rawtypes

  • Grails GSP: isolated tests

  • Grails GSP: relocate test resources

  • Grails GSP: replace deprecated GrailsTagLibClass, DefaultGrailsTagLibClass, TagLibArtefactHandler

  • Grails GSP: cleanup build.gradle

  • Grails GSP: relocate ControllerTagLibraryTraitInjector to src/main/groovy

  • Grails GSP: define versions in Gradle version catalog

  • Grails GSP: update dependencies

  • Grails GSP: Update build.gradle

  • Prepare to merge

  • Grails Plugin Dynamic Modules: Change url to Object type

  • Update default Servlet version to 4.0

  • Refine UrlMappingsPluginConfiguration

  • Grails Plugin API: change closure ResolveStrategy to DELEGATE_FIRST

  • Grails Plugin API: relocate AbstractModuleDescriptor to 'grails.plugins.descriptors'

βš™οΈ Tasks

  • Release v2023.0.0-M1

  • Grace: update github workflows

  • Grace: update github workflows

  • Grace: fixed failed tests

  • Grace: optimize shell dependencies

  • Grace: remove excluding slf4j-simple in all dependencies

  • Grace: update custom banner file

  • Grace: update profile repository

  • Grace: update commands

  • Grace: update banner

  • Grace: update media assets

  • Grace: update gradle build scripts

  • Grace: rename all sub-projects

  • Update to Jakarta dependencies in all the subprojects

  • Added Jakarta EE dependencies to Gradle version catalog

  • Update build to JDK 17

  • Upgrade io.github.gradle-nexus:publish-plugin to 1.3.0

  • Upgrade com.netflix.nebula:gradle-extra-configurations-plugin to 8.0.0

  • build: Upgrade to Checkstyle 10.9.3

  • build: Upgrade to CodeNarc 3.2.0

  • Next development version: 2023.0.0-SNAPSHOT

πŸš€ Dependency Upgrades

  • Upgrade to Apache Groovy 3.0.16

  • Upgrade to AspectJ 1.9.19

  • Upgrade to Caffeine 3.1.5

  • Upgrade to groovy-toml 4.0.10

  • Upgrade to HSQLDB 2.7.1

  • Upgrade to JUnit Jupiter 5.9.2 and JUnit Platform 1.9.2

  • Upgrade to Spring Boot 3.0.5

  • Upgrade to Spring Boot 3.0.0