Changelog for Groovy 2.6.0-alpha-4
Bug
- [GROOVY-5912] - Static compilation: Groovy doesn't fail compilation when accessing package scope methods, but fails at runtime
- [GROOVY-6167] - Generics: within a single declaration, generic type definition order matters
- [GROOVY-6632] - CompileStatic selects wrong constructor when GString is a parameter
- [GROOVY-6742] - Groovy is unable to resolve this Generics use case
- [GROOVY-6938] - Wrong error reported by @CompileStatic when overriding a method returning a parameterized value
- [GROOVY-7031] - @CompileStatic breaks assign in combination with dereferencing
- [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-7691] - Type checking error on generic property with covariant type in subclass
- [GROOVY-7753] - regression of return type from ternary operator
- [GROOVY-7883] - Static compiler prefers private constructor over public if private matches better
- [GROOVY-7985] - Wrong "incompatible generic type" error
- [GROOVY-8055] - @CompileStatic improperly orders parameter types
- [GROOVY-8059] - STC overloaded generic method selection not using resolved types
- [GROOVY-8171] - Escaped dollar slashy difference between old and parrot parsers
- [GROOVY-8408] - invokeMethod cannot be set through category
- [GROOVY-8439] - @CompileStatic cannot compile generic class's static method
- [GROOVY-8470] - dead loop when compiling 'enum in enum without semicolon'
- [GROOVY-8483] - groovy-all v2.5.0-beta-3 is missing from bintray
- [GROOVY-8493] - Native lambdas with @CompileStatic at method level
- [GROOVY-8509] - SC: error for call to protected method from same package
- [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-8541] - Incorrect packaging in groovy-all pom
- [GROOVY-8546] - Parrot Parser: multiple Reader instances opened from SourceUnit; many left open
- [GROOVY-8583] - Fail to infer auto-return type from ternary operator
- [GROOVY-8590] - STC incorrectly infers type of nested method call used in a return stmt
- [GROOVY-8595] - Expected parameter of type XXX but got YYY static compile error
- [GROOVY-8598] - Possible bug in AstBuilder Antlr4
- [GROOVY-8609] - Fails to compile when upper bound has generics
- [GROOVY-8610] - STC NPE using DGM collect on Iterator
- [GROOVY-8613] - GCE in elvis assignment evaluation
- [GROOVY-8624] - File descriptor leaks in compiler and runtime
- [GROOVY-8628] - Groovydoc fails to parse static nested classes with diamond operator
- [GROOVY-8629] - Groovy STC fails on the nested method call in constructor call
- [GROOVY-8750] - the jar file, and only the jar file is missing from a large number of releases on Maven Central
Dependency upgrade
Documentation
Improvement
- [GROOVY-3867] - Allow methodMissing/propertyMissing to be defined through category
- [GROOVY-4585] - backslash can not be escaped by `SimpleTemplateEngine`
- [GROOVY-8490] - Extend @Newify to support a class name pattern parameter
- [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
- [GROOVY-8604] - Cache the parameterized type for better performance
- [GROOVY-8621] - Grape command line tool synopsis improvement
- [GROOVY-8630] - Refine the parameterized type cache
New Feature
- [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
- [GROOVY-8558] - Add DGM `getLocation` to get the url of the jar containing the specified class
Sub-task
- [GROOVY-8594] - DocGenerator could be moved to avoid split packages - part (2)
- [GROOVY-8597] - SqlGroovyMethods could be moved to avoid split packages - part (2)