Skip to end of metadata
Go to start of metadata

Considering our limited human resources and time constraints, it is hard to give definitive and accurate estimates of the milestones we are going to release.

Groovy 2.3

Groovy 2.3 is the latest stable version of Groovy.

Feature set

  • official support for running Groovy on JDK 8
  • traits, as a new object oriented way of composing behavior in your classes
  • new and improved AST transformations like @TailRecursive@Builder and @Sortable
  • a new NIO2 module with Path support
  • lightening fast JSON parsing and building
  • closure parameter type inference
  • a new markup template engine
  • Groovysh and GroovyConsole ease of use improvements
  • a new GroovyAssert test utility
  • more @BaseScript class capabilities, and more.

Releases

  • Groovy 2.3 beta: February-March 2014
  • Groovy 2.3 release candidates: April 2014
  • Groovy 2.3 finale: May 2014 

Groovy 3.0 (Q4 2014)

Feature set for consideration

  • New Meta-Object Protocol dedicated 
    • to fully leverage "invoke dynamic" (method handles, class values, etc)
    • make the sedimented dynamic features more coherent
    • to fix the private visibility conundrum 
    • to shield libraries from "monkey patching" with a notion of "realm"
  • Rewrite the Groovy grammar from scratch with Antlr 4
    • in particular adapt to the Java 8 language features
      • lambdas
      • method references
      • default methods in interfaces
      • annotations on types
      • repeated annotations
  • Java 8 / JDK 8 support
    • lambdas
    • method references
    • default methods in interfaces
    • annotations on types
    • repeated annotations
    • stream API
    • date / time API

Releases

  • Groovy 3.0 alpha: Q3 2014
  • Groovy 3.0 betas: Q4 2014 - Q1 21015
  • Groovy 3.0 release candidates: Q1 2015
  • Groovy 3.0 final: end of Q2 2015

Groovy 4.0 (Q4 2015)

Feature set for consideration

  • No concrete plans at the moment

Other topics we could consider for later Groovy

  • true named arguments
  • compiler related:
    • investigate making the groovyc compiler multithreaded
    • Incremental compiler
  • ability to pass expression trees / AST nodes as parameters (see C# 4's own expression tree)
  • lexical categories
  • a symbol concept, a bit like Ruby's :symbol, or like Java interned strings
  • co-routines and/or generators
  • pattern matching
  • parser combinators
  • a native template engine compiling to AST (faster, correct line numbers for error reporting, optimized outputting, etc.)
  • ...
  • No labels

4 Comments

  1. Hi,

    I'm very interested in the Groovy 2 roadmap. Unfortunately this wiki seems to be a bit outdated in such matter. (beta 3 is out, there won't be a beta4.) In the download page, there are some RC download links, but up to now there wasn't any announcements.

    I would really appreciate if you could tell me when we should expect to have Groovy 2.0 final.

    Kind regards,

    Ariel

    senior oracle member of technical staff.

  2. Could someone please update the roadmap? I am interested in current process of groovy 3.0, but it´s seems quite difficult to get informations!

  3. I've updated the roadmap, thanks for reminding me of doing so!

  4. Thx a lot for updating!