We have a long history of maintaining quite a large grails application since Grails 1.0. Over the first few major versions upgrading was a real pain.
The situation changed dramatically after Grails 3 as you can see in our former blog posts and and the upgrade from 3 to 4. Going from 4 to 5 was so smooth that I did not even dedicate a blog post to it.
A few weeks ago we decided to upgrade from version 5 to 6 and here is a short summary of our experiences. Things fortunately went quite smooth again:
The changes
The new major version 6 contains mostly dependency upgrades and official support for Java 17 which is probably the biggest selling point.
Some other minor things to note are without any particular order:
- The logback configuration file name has changed from logback.groovy to logback-config.groovy
- The pathing-jar is already setup for you, so you can remove the directive from your build files if you had it in
- The build uses the standard gradle-application plugin allowing some more simplifications in your build files and infrastructure
Other noteworthy news
Object Computing stepped down as the steward of the grails framework and informed the community in an open letter. While there is still the grails foundation and the open source community we can expect the development and changes to slow down.
Whether this results in negative developer experience remains to be seen.
Conclusion
Using and maintaining a Grails application developed to a rather smooth ride and only poorly maintained plugins hurt your experience. The framework and its foundation have been pretty solid for some time now.
Regarding new projects you certainly have to evaluate if using grails is the best option. For an full stack framework the answer maybe yes, but if you only need a powerful API backend lighter and more modern frameworks like micronaut or javalin may be a better choice.