Blog

Blog from January, 2013

Groovy 2.1 released
The Groovy team is pleased to announce the release of Groovy 2.1.0.
With over 1.7 million downloads in 2012, a strong ecosystem, Groovy continues its development and adoption, refines existing features and evolves new ones.
In this new release, Groovy 2.1:
  • offers full support for the JDK 7 “invoke dynamic” bytecode instruction and API,
  • goes beyond conventional static type checking capabilities with a special annotation to assist with documentation and type safety of DSLs and adds static type checker extensions,
  • provides additional compilation customization options,
  • features a meta-annotation facility for combining annotations elegantly,
  • and provides various other enhancements and minor improvements.
Please read all the details about the new features and improvements in the Groovy 2.1 release notes document:
You can download Groovy 2.1.0 from the Download area:
And have a look at the JIRA tickets we worked on:
Thanks a lot to all our users, contributors and committers who made this release possible.
I'd particularly like thank our new committers: Pascal Schumacher, André Steingreß and Tim Yates, for all their feedback and various contributions. Welcome to the team!
The Groovy team is looking forward to your feedback on this new release!
Keep on groovy'ing!
The Groovy team is pleased to announce the second release candidate of Groovy 2.1.0.
The final release is merely days away, so please be sure to test that release and give us your feedback, before we go gold.
Unless really critical bugs or regressions arise, we're aiming at going final next week or the following.
Download and try Groovy 2.1.0-rc-2 here:
The JIRA release notes:
As a reminder of what's coming, here's what you can expect from Groovy 2.1:
  • complete invoke dynamic support when running with the "indy" JAR on JDK 7
  • upgrade to GPars 1.0: the Groovy distribution now bundles the GPars 1.0 final release
  • @DelegatesTo annotation: to help IDEs and the static type checker and compiler to know that method calls in a method parameter closure are delegated to another parameter of the method -- nice for DSLs like in Gradle build files
  • custom type checking extensions: so you can type check your DSLs at compile-time with your own logic
  • meta-annotation system: which allows you to define a new annotation actually combining several others -- which also means being able to apply several AST transformations with a single custom annotation
  • custom base script class flag for the groovyc compiler: to set a base script class when compiling Groovy scripts
  • compiler configuration script: to let you define various configuration options for the Groovy compiler, like specifying custom file extensions, various compilation customizers to apply, etc.
  • compilation customizer builder: a special builder for specifying compilation customizers
  • jar://, file://, http:// prefix support for launching Groovy scripts from the command line
  • and many bug fixes and various minor improvements
Thanks a lot for your great contributions, in whichever form it takes, and particular thanks to some of our most prolific contributors sending us frequent patches and pull requests: André Steingreß, Tim Yates, and Pascal Schumacher.

As promised before the Christmas / New Year's Eve break, I'm happy to announce the availability of the Release Candidate for Groovy 2.1.0.

Please be sure to test that release and give us your feedback, before we go final.
Unless really critical bugs or regressions arise, we're aiming at going final by the end of the month.
Download and try Groovy 2.1.0-rc-1 here:
The JIRA release notes:
As a reminder of what's coming (pending the final release notes document), here's what you can expect from Groovy 2.1:
  • complete invoke dynamic support when running with the "indy" JAR on JDK 7
  • upgrade to GPars 1.0: the Groovy distribution now bundles the GPars 1.0 final release
  • @DelegatesTo annotation: to help IDEs and the static type checker and compiler to know that method calls in a method parameter closure are delegated to another parameter of the method -- nice for DSLs like in Gradle build files
  • custom type checking extensions: so you can type check your DSLs at compile-time with your own logic
  • meta-annotation system: which allows you to define a new annotation actually combining several others -- which also means being able to apply several AST transformations with a single custom annotation
  • custom base script class flag for the groovyc compiler: to set a base script class when compiling Groovy scripts
  • compiler configuration script: to let you define various configuration options for the Groovy compiler, like specifying custom file extensions, various compilation customizers to apply, etc.
  • compilation customizer builder: a special builder for specifying compilation customizers
  • jar://, file://, http:// prefix support for launching Groovy scripts from the command line
  • and many bug fixes and various minor improvements
Thanks a lot to all the contributors to this release!
And on behalf of the team, I wish our Groovy users all the best for 2013!