Although Groovy haven’t enjoyed the most auspicious start for 2015, having learnt in January that Pivotal will be dropping sponsorship of the JVM language in favour of commercial and open source projects that support its “growing traction” in PaaS, Data, and Agile development. In the midst of all this however, the language continues to move forward. Today, it was announced via the official Groovy blog that a duo of updates are now available – Groovy 2.4.1 and Groovy 2.3.10.
Both releases are ostensibly bug fixes, and whilst Groovy 2.4.1 remains the latest stable branch, the team have also opted to issue on final release for the 2.3 edition to help out folks still working on projects on this line. You can learn about the full list of fixes by checking out the Groovy 2.4.1 changelog and the Groovy 2.3.10 changelog. You can get the binary distribution from the new Groovy website, or update your dependencies with those new version numbers.
Looking to the Future
Given Groovy’s pending eviction, this progression is also a little bittersweet, with the end of Pivotal’s patronage set to coincide with the release of version 3.0 of the Grails framework at the end of March. Coupled with this, it’s been announced that Codehaus – the place where Groovy took its original development manifesto and houses its infrastructure, is set to shut-down in the near future.
Last week, in an open thread to the GVM community, Cédric Champeau explained that the decision had been made to move Groovy to a foundation – sooner rather than later. In fact, this will likely happen before the Pivotal separation on March 31st.
Having weighed up all the options, Champeau explained that this move is “very important for the future of the language”. Ideally, he’d want the language to continue under the Apache 2.0 license, and not be subject to a strict governance model. Currently there are three candidates that come close to the desired criteria: the Apache Software Foundation, the Eclipse Foundation, or the Software Freedom Conservancy.
Freedom to Choose
Whilst the Groovy team appreciate the “clearer governance approach” and branding power of both Eclipse and Apache, there are also some considerable drawbacks to rehousing with either of these foundations that will require some “negotiation.” These range from issues with having to conform to new governance models, for example how and where deliverables are deployed, to having to reset project history if they opt for Eclipse.
Not all of these would necessarily be to the detriment of Groovy however. As CloudBees’ Kohsuke Kawaguchi comments, a clearer governance could actually serve to benefit the language. Currently, Kawaguchi writes, factors such as, “Is the name “Groovy” trademarked? If so, who owns it? How about the domain name? How is the decision making done? Who becomes committers?” aren’t clear. Without clear guidelines as to who owns what, there’s an obvious risk of fragmentation and wider licensing issues.
Although a smaller name, the Software Freedom Conservancy will allow Groovy to adopt and clarify their existing manifesto from Codehause and give the team more of a say in terms of resources and funding. It will also allow them to continue to support older versions of Groovy. The critical factor here though is money, meaning they’ll be forced to build their own infrastructure, which could channel away vital resources.
For now the discussion remains open, however with the deadline for transfer ticking, it’s ultimately going to have to be a decision weighted more on expediency than a glass slipper perfect-fit scenario. As Apache Brand Manager Shane Curcuru writes on the Community Over Code blog, whilst “legal support, infrastructure, community and governance models, and a stable and well-branded place to call home” aren’t sexy, exciting things to be pondering, they’re “critical” if Champeau and Co. want to maintain autonomy over Groovy’s future, rather than having it “dictated by a single for-profit company.”