Object Computing, Inc. (OCI) has announced the formation of the Grails Foundation, a not-for-profit company established to advance innovation and adoption of the Grails framework. The foundation will "oversee software roadmap and development, best practices and processes, repository control, documentation and support, and fundraising related to the open source framework." The foundation will receive initial funding of $200,000 from OCI for development and evangelism.
Originally named Groovy on Rails, Grails was co-founded in 2005 by Graeme Rocher, Guillaume LaForge, Steven Devijver and Dierk König. At the time, Rocher was CTO at the now-defunct G2One, an open-source Groovy/Grails company that provided training, consultancy, support and products around Groovy and Grails.
Grails, originally branded under G2One, had made its way through a number of companies via acquisitions and spin-offs. Grails finally found a new home in OCI when Pivotal ended support for Grails in early-2015. OCI recently celebrated the five-year anniversary of this milestone that included hiring Jeff Scott Brown and Graeme Rocher to continue the work on Grails.
A Technical Advisory Board, composed of key project contributors and partners, will steward and manage the foundation. Board members include:
- Jeff Scott Brown - Grails Foundation, co-founder and director; Grails practice lead at OCI
- Graeme Rocher - Grails co-founder; architect at Oracle
- Puneet Behl - Grails product development lead at OCI
- David Estes - Co-founder and VP of engineering at Morpheus Data; creator of the Grails Asset-Pipeline
- James Kleeh - Micronaut product development lead at OCI
When asked about his thoughts on having been selected to serve on the Grails Foundation Technical Advisory Board and what he plans to achieve in this role, Estes told InfoQ:
Being selected for the Grails Foundation Technology Advisory Board has been an honor. My experience as a Grails community member for many years and contributing to the Grails ecosystem has given me a broader perspective of the technology as well as community needs.
It is my goal to help provide feedback and contributions to the Grails team that help move Grails forward and keep the magic of the Grails alive. To this day, Grails is a powerful framework and is an excellent solution for both complex and simple web applications. Its developer friendliness is excellent and keeping that developer-friendly aspect of the Grails framework is one of my key goals.
Jeff Scott Brown and Puneet Behl spoke to InfoQ about the formation of the Grails Foundation.
InfoQ: Was the creation of the Micronaut Foundation in mid-2020 an influence to create the Grails Foundation?
Jeff Scott Brown: The decision had been made to launch both foundations, and we decided to get one of them established and up-and-running before launching the other in case we encountered any lessons learned before launching the second one. We chose to launch the Micronaut Foundation first and followed that up fairly quickly with the launch of the Grails Foundation.
InfoQ: What are the initial short-term goals of the Grails Foundation?
Brown: Short-term goals include getting the Technology Advisory Board up-and-running with its first meeting, which will be Q1 2021. One of the first significant orders of business for that board is to agree on the focus of the roadmap for the short-to-mid term. We have a lot coming up and that team is going to be important.
InfoQ: How were the members of the Technical Advisory Board chosen, especially those outside of OCI?
Puneet Behl: The board members outside of OCI have been selected based on project contributions and demonstrated commitment to the success of the Grails framework over the years.
InfoQ: The Grails framework has come a long way since version 1.0 was released in early 2008. What’s on the horizon for the framework?
Behl: Grails continues to be a compelling application development framework for the JVM. In Grails 4, we integrated the Micronaut framework into the technology. We will be focusing on making it more modular and improving the application development experience and performance by leveraging the benefits of Micronaut, such as reduced memory footprint and fast load time.
We're excited about some of the changes we're planning for upcoming releases. Starting with Grails 4.0.0, the framework will be following a semantic versioning and a new release cadence. In addition, we hold a weekly Grails engineering meeting with the key contributors from the community, as well as the OCI Grails development team.
InfoQ: Please describe to our readers more about the Grails engineering meetings.
Behl: The core Grails team regularly meets to discuss current activities around the development of the Grails framework. Meeting minutes are recorded and published here. If you have a topic you would like to discuss with the core Grails team, you can request an invitation by sending an email to grails-eng-meeting-request@objectcomputing.com.
InfoQ: Why was semantic versioning adopted for the Grails framework?
Behl: We adopted semantic versioning to make the release process more predictable and simple. Doing so will have a number of benefits, including making upgrading much easier for users.
InfoQ: Is there a defined short-to-mid term roadmap for the Grails framework?
Behl: We are planning a number of enhancements including:
- Making Groovy Server Pages (GSP) more modular and independent of the framework.
- Transaction support in GORM for MongoDB.
- Native support for web-sockets.
- Continuously improving Grails documentation (especially around plugins, Micronaut configuration, HTTP Client, and other features).
- Better integration with Micronaut, such as declarative HTTP Client.
- Better support for Kafka, including creating Kafka listeners through a plugin and more.
InfoQ: What can developers expect from Grails 5?
Behl: When we decided to start using semantic versioning, we determined that the breaking changes we planned for the Grails 4.1.0 milestone should be instead released as Grails 5. We are happy to share that the Grails 5 release will support Java 15. Apart from this, we have also upgraded to the latest stable releases of some other third-party libraries, including:
- Apache Groovy 3 offers several enhancements to the language, including improvements to the Groovy Development Kit (GDK), a new parrot parser - far more flexible than the previous versions - and a collection of other new features and capabilities.
- SpringBoot 2.4: This release adds a significant number of new features and improvements, such as improvements to config file processing, a new startup actuator endpoint to help identify beans that are taking longer than expected to start, and an update to Spring Framework 5.3. For more information, check out SpringBoot 2.4 release notes.
- Gradle 6 brings faster incremental Java and Groovy compilation, better version ordering, many bug fixes, and more. Refer to Gradle release notes for more information.
A Grails 5 milestone release will be available the week of January 25th, 2021.
InfoQ: How may the Java community participate in achieving the goals of the Grails Foundation?
Behl: The Java community can participate by contributing technical innovation, evangelizing and promoting use of the software, and donating financial support.
Behl also told InfoQ that the Grails framework will be following a new release cadence:
- A patch release every three weeks will include only bug fixes and no new features or breaking changes
- A minor release every six weeks will add new features and functionality in a backward-compatible manner
- A major release once every year may introduce breaking changes
Full details on all the recent Grails framework updates may be found in this blog post.
Formation of the Grails Foundation, announced at the inaugural 2GM Town Hall meeting, comes only a few short months after OCI announced the formation of the Micronaut Foundation. Estes, a special guest at this Town Hall meeting, was awarded the OCI 2020 Community Rockstar Award for his work on the Grails Asset-Pipeline, a plug-in used for managing and processing static assets in Grails applications. OCI plans to host these 2GM (Groovy, Grails and Micronaut) Town Hall meetings on a quarterly basis. The slides and video recording of the October 2020 2GM event may be found here.