(Quick Reference)

2 Release History

Version: 2023.3.0

Table of Contents

2 Release History

2.1 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