Changelog for Groovy 3.0.0-rc-3

Bug

  • [GROOVY-8296] - Groovydoc Recognition exception with Java 8 class
  • [GROOVY-8298] - Slow Performance Caused by Invoke Dynamic
  • [GROOVY-8648] - Compound assignment to attribute fails with ASM error
  • [GROOVY-8762] - Invalid this reference in nested class
  • [GROOVY-9317] - Value record missing for assert on field expression
  • [GROOVY-9327] - @CompileStatic is not propagated to anonymous class
  • [GROOVY-9328] - Cannot call private member of containing class in @CS
  • [GROOVY-9329] - OOME raised while `parseClass(scriptText)`
  • [GROOVY-9332] - Error occurred when accessing static field in lambda within static initialization block
  • [GROOVY-9333] - `this` within native lambda does not reference the instance of enclosing class
  • [GROOVY-9336] - Shift operator used in field initial value expression causing incorrect type conversion
  • [GROOVY-9337] - DGM: more Optional and Stream extension methods
  • [GROOVY-9338] - STC: no error for incorrect bounds match
  • [GROOVY-9340] - Lambda using variable expression parameter produces generics error for self type
  • [GROOVY-9341] - SC: Lambda within lambda that references "this" produces cast exceptions
  • [GROOVY-9342] - SC: Lambda in static initializer that uses static field on LHS of += produces errors
  • [GROOVY-9347] - STC: lambda expression on wildcard generics fail to resolve param type(s)
  • [GROOVY-9352] - Static compilation fails with NoClassDefFoundError

Dependency upgrade

Improvement

  • [GROOVY-8517] - Add ASTNode.getNodeMetaData overload that supports computation of missing value (like Map.computeIfAbsent)
  • [GROOVY-9331] - shuffled() DGM method shuffles wrong list
  • [GROOVY-9351] - Make `NumberRange` serializable to align with `IntRange`