Changelog for Groovy 2.5.3
Bug
- [GROOVY-7330] - Incorrect dynamic proxy creation from map when there are default methods
- [GROOVY-7412] - Map-to-interface cast: map method definition does not override the default method
- [GROOVY-8084] - Captured types doesn't work in @CompileStatic
- [GROOVY-8090] - Incorrectly processing method-level type generics information
- [GROOVY-8250] - VariableScopeVisitor does not set declaring class on property nodes
- [GROOVY-8327] - Can't access static method from same class within this constructor call
- [GROOVY-8337] - STC: instanceof in ternary expression not propagating type info to true expression
- [GROOVY-8342] - Static compilation error with a method returning an array in a type parameter
- [GROOVY-8405] - Inherited methods with default parameters cause cause static compilation to fail
- [GROOVY-8549] - Compile Static causes getAt to fail
- [GROOVY-8669] - Groovy class does not compile if the ValueType of an annotation is not on the classpath
- [GROOVY-8703] - Unexpected behavior with @NamedVariant on constructor *
- [GROOVY-8727] - JDK 11 Compilation Failure: ClassVisitor.visitNestMemberExperimental throws UnsupportedOperationException
- [GROOVY-8747] - jar/zip file and input stream are not closed in grape
- [GROOVY-8753] - Compiler error in STC: exception in phase 'instruction selection'
- [GROOVY-8754] - Spaces in JAVA_HOME not handled properly for JDK10 on windows
- [GROOVY-8757] - Incorrect bytecode produced after compiling class implementing trait with generic method
- [GROOVY-8758] - @WithReadLock in inner class of @CompileStatic class causes java.lang.VerifyError
- [GROOVY-8761] - Exception in phase 'instruction selection'
- [GROOVY-8764] - Closure inside an anonymous class uses wrong outside class instance with @CS
- [GROOVY-8768] - Unable to add Groovy indy JARs as dependency in Gradle
- [GROOVY-8779] - Groovy 2.5.2 triggers a bug in IntelliJ IDEA
- [GROOVY-8797] - VariableScopeVisitor.getPropertyName does not check for "isser" style method
- [GROOVY-8800] - Wrong detection of Java 10 version in groovy-json
- [GROOVY-8806] - Immutable classes break in groovy 2.5.2
- [GROOVY-8816] - NPE in inferClosureParameterTypes with CompileStatic and incorrect zero-arg closure
- [GROOVY-8819] - java.lang.VerifyError when calling this() with static final field from a super class
- [GROOVY-8822] - Conflict between @Generated and @Delegate
- [GROOVY-8833] - @Canonical creates invalid hashCode
- [GROOVY-8835] - AstNodeToScriptVisitor - no token needed for EmptyStatement initialization
Dependency upgrade
- [GROOVY-8744] - bump ASM to 6.2.1
- [GROOVY-8745] - bump ant versions
- [GROOVY-8746] - bump bridger to 1.5.Final
- [GROOVY-8759] - groovy.cli.picocli.CliBuilder should behave like cli.commons.CliBuilder on invalid options
- [GROOVY-8767] - bump gradle to 4.10
- [GROOVY-8773] - Bump JUnit 5 to 5.3
- [GROOVY-8785] - Bump JUnit 5 to 5.3.1
- [GROOVY-8786] - Bump picocli to 3.6.0 from 3.5.0
- [GROOVY-8789] - Bump spot bugs to 1.6.3
- [GROOVY-8790] - bump gradle to 4.10.1
- [GROOVY-8807] - Bump gradle to 4.10.2
- [GROOVY-8809] - Bump Spock version to 1.2-Final
- [GROOVY-8818] - Bump asm to 7.0-beta
- [GROOVY-8823] - Bump slf4j to 1.7.25
Improvement
- [GROOVY-7554] - Add method to get printed stack trace in Throwable
- [GROOVY-8748] - CompileUnit could implement NodeMetaDataHandler to act as a "global" node for metadata
- [GROOVY-8765] - Annotate generated methods with @Generated
- [GROOVY-8780] - Add `sha256` DGM
- [GROOVY-8783] - Support Java 9/10/11 bytecode
- [GROOVY-8784] - Prepare for supporting JDK 12 bytecode
- [GROOVY-8812] - Make `Sql` and `BatchingStatementWrapper` implement `AutoCloseable`
- [GROOVY-8827] - Close a small gap in the EMC DSL for constructors
New Feature
- [GROOVY-8808] - Add DGM `Throwable.asString`
Sub-task
- [GROOVY-8802] - GroovyObject method implementations when supplied by Groovy compiler are now marked with @Internal
* potentially breaking change (read issue for details - even minor differences are sometimes flagged as potentially breaking changes)