Changelog for Groovy 3.0.0-alpha-2

Bug

  • [GROOVY-7061] - Type inference not working for Collections.sort()
  • [GROOVY-7083] - PermGen memory leak in ConfigSlurper.parse(Script script, URL location)
  • [GROOVY-7202] - Unable to resolve nested enum of parent class when compiling against binary parent
  • [GROOVY-8241] - SAM parameter type inference for explicit parameter
  • [GROOVY-8317] - Smart type inference doesn't work on explicit closure params
  • [GROOVY-8338] - Calling Stream.of from groovy class in JDK 9 fails
  • [GROOVY-8432] - Weird behavior parsing dates
  • [GROOVY-8436] - IOException "Stream closed" occurred when rebuilding Apache Groovy in IntelliJ IDEA
  • [GROOVY-8439] - @CompileStatic cannot compile generic class's static method
  • [GROOVY-8445] - Static analysis does not work properly when coercing Closure to FunctionInterface
  • [GROOVY-8447] - It is allowed to define local variable of void type
  • [GROOVY-8470] - dead loop when compiling 'enum in enum without semicolon'
  • [GROOVY-8471] - Contents of META-INF/services/org.codehaus.groovy.source.Extensions conflict with Maven/Jisaw
  • [GROOVY-8474] - 'Unexpected super property set for:' when accessing super class property via super.propertyName
  • [GROOVY-8486] - Closure executed multiple times even if memoized
  • [GROOVY-8493] - Native lambdas with @CompileStatic at method level
  • [GROOVY-8515] - groovy.g no longer included in sources jars
  • [GROOVY-8531] - Fail to resolve type defined in super class written in Java
  • [GROOVY-8537] - GroovyCollections.combinations(Iterable) exhibits incorrect (asymmetric) behavior
  • [GROOVY-8750] - the jar file, and only the jar file is missing from a large number of releases on Maven Central

Dependency upgrade

Improvement

  • [GROOVY-4585] - backslash can not be escaped by `SimpleTemplateEngine`
  • [GROOVY-8410] - Provide a common cache
  • [GROOVY-8428] - Add DGM startsWithAny(String...) and endsWithAny(String...)
  • [GROOVY-8437] - Implement an atomic `getAndPut` method for `LRUCache`
  • [GROOVY-8464] - Allow rendering inline json
  • [GROOVY-8466] - Support native lambda in static compilation mode
  • [GROOVY-8492] - Groovy console should show generated lambda classes when showing generated closure classes
  • [GROOVY-8510] - Safe number parsing methods for more convenient XML parsing
  • [GROOVY-8524] - Triple quoted string with quotes on end of line

New Feature

  • [GROOVY-8138] - Compile static to support streams
  • [GROOVY-8334] - Java 8 Date/Time type support in Groovy JDK (JSR 310)
  • [GROOVY-8498] - [PARROT] Support `var` keyword of Java10
  • [GROOVY-8500] - Support logging the stacktrace of bytecode generation
  • [GROOVY-8516] - Add DGM `md5`
  • [GROOVY-8518] - Add DGM `digest`
  • [GROOVY-8542] - Support creating instances of non-static inner classes with Java-Like syntax