Changelog for Groovy 2.2.0-beta-1
Bug
- [GROOVY-4258] - wiki-snapshot.pdf is not searchable. Text can't be copied.
- [GROOVY-4485] - enum does not support default map constructors
- [GROOVY-4503] - The delete key doesn't work as expected on groovysh on Linux
- [GROOVY-4641] - Defining an abstract method in enum
- [GROOVY-4655] - groovy.transform.EqualsAndHashCode annotation does not handle cycles
- [GROOVY-4663] - Groovy Console shows both full and sanitized stack trace by default
- [GROOVY-4701] - MissingMethodException#printStackTrace() throws exception if an arguments toString() method fails
- [GROOVY-4794] - enum constant initializer parsing
- [GROOVY-5068] - SecureASTCustomizer receiver needs documentation
- [GROOVY-5211] - Method dispatch error with @Delegate
- [GROOVY-5243] - @Canonical @TupleConstructor can't handle Object or Map properties
- [GROOVY-5349] - ICO file in distribution is broken/missing
- [GROOVY-5474] - groovy-all-2.0.0-beta-3-indy.jar invoke dynamic jar lacks osgi attributes
- [GROOVY-5697] - Wiki snapshot (pdf) is outdated
- [GROOVY-5755] - MissingPropertyException thrown when referencing an externally declared constant from a switch case in an enum instance method
- [GROOVY-5756] - error during class generation: cannot define closures inside methods of an enum instance
- [GROOVY-5771] - Project compilation fails when I put an enum in my project
- [GROOVY-5801] - sql.firstRow() fetches all rows of query
- [GROOVY-5802] - Exception thrown in groovyConsole
- [GROOVY-5871] - @Grapes/@Grab not working with GroovyConsole
- [GROOVY-5898] - Sql.java throws IllegalStateException("Failed to process query. Unterminated ' character?") when comments contain quotes
- [GROOVY-5931] - groovy.util.slurpersupport.GPathResult is not java.lang.Iterable
- [GROOVY-5937] - groovydoc does not document type alias for property correctly
- [GROOVY-5938] - groovydoc does not document array property correctly
- [GROOVY-5939] - groovydoc does not show link for property type
- [GROOVY-5940] - groovydoc does not show class hierarchy correctly
- [GROOVY-5948] - memoizeAtLeast and memoizeBetween don't cleanup garbage-collected SoftReferences
- [GROOVY-5958] - 'Allowed Interruption' menu item is missing at GroovyConsole on MacOSX
- [GROOVY-5971] - jarjar issue with CliBuilder/GroovyPosixParser
- [GROOVY-5980] - Finally executes twice on NPE while casting method result
- [GROOVY-6004] - Groovydoc should process annotations more intelligently
- [GROOVY-6007] - @GrabResolver doesn't affect Ivy
- [GROOVY-6017] - NPE in Groovydoc
- [GROOVY-6019] - Cross compilation of Groovy annotation on Java class does not work
- [GROOVY-6025] - Using short, byte, char annotation definition attribute constants should be supported
- [GROOVY-6032] - @GrabResolver information is not retained at runtime in compiled class
- [GROOVY-6054] - context variable breaks output transformation
- [GROOVY-6057] - Add a Collection#combinations(Closure) method
- [GROOVY-6058] - JsonSlurper should support URL and File variants for parse
- [GROOVY-6065] - Overriding enum methods in constant specific body does not work if non-default constructor is used
- [GROOVY-6068] - Thread safety issue in AntBuilder leads to major memory leak
- [GROOVY-6082] - GroovyResultSet not updateable for Prepared Statements
- [GROOVY-6085] - Annotation for inner interface in Java stub should not use dollar notation
- [GROOVY-6093] - @XmlEnumValue annotation is lost from enum constant during compilation
- [GROOVY-6106] - A list of syntax highlighting errors
- [GROOVY-6120] - Verify error in class annotated with @Category if instance field is used *
- [GROOVY-6121] - Object[].groupBy is not defined
- [GROOVY-6122] - FilteredNodeChildren doesn't provide childNodes() iterator
- [GROOVY-6125] - Bugs in GPathResult.parent() and '..' notation *
- [GROOVY-6143] - groovysh & groovysh completion vulnerable to Classes with custom getProperty()
- [GROOVY-6152] - LazyList does not allow range access
- [GROOVY-6158] - Missing directory entries in groovy-all JAR
- [GROOVY-6171] - Memory tweaks for groovy compiler
- [GROOVY-6192] - @EqualsAndHashCode override not working when used with @Immutable if @Immutable appears first
- [GROOVY-6201] - groovysh hangs on Edit command when using terminal editor (vim, nano, etc.) on posix terminals
- [GROOVY-6205] - META-INF/services/org.codehaus.groovy.runtime.ExtensionModule missing from groovy-all.jar
- [GROOVY-6211] - Fix failing Process tests on windows
- [GROOVY-6217] - The Edit command should replace the shell buffer, not append.
- [GROOVY-6232] - Type checker fails with internal error for diamond
- [GROOVY-6233] - static type checker fails to check constructor arguments
- [GROOVY-6234] - Groovy can not be build with Gradle 1.6
- [GROOVY-6237] - wrong resolution for hidden generics
Improvement
- [GROOVY-2183] - Allow the 'edit' command to work on windows
- [GROOVY-3332] - The groovy.time.*Duration classes make use of java.sql.Date
- [GROOVY-4778] - The groovy wiki pdf dosn't support searching
- [GROOVY-4877] - Groovy Console should set the context class loader to the class loader that loaded the script.
- [GROOVY-4943] - Allow enableAutoDownload to be set when using @Grab
- [GROOVY-5445] - Make @Delegate delegate to inherited property accessors
- [GROOVY-5709] - improve Grapes error reporting for ZipException
- [GROOVY-5749] - Groovy Console -- Option to Auto-Save on Run
- [GROOVY-5973] - DGM.collectMany() overload that accepts Iterable
- [GROOVY-6039] - Allow type checking extensions to handle ambiguous references to methods
- [GROOVY-6043] - Precompiled typechecking extension scripts
- [GROOVY-6044] - Add handler for "Cannot return value of type Foo on method returning type Bar" error
- [GROOVY-6053] - Try iterating or transforming Object into Collection in DefaultGroovyMethods like count(), sort() and other Collection methods.
- [GROOVY-6062] - Hard check for JTable in ColumnModelFactory.onNodeCompleted prevented columnModel() to be used in a noparent()-block
- [GROOVY-6073] - Fixes and improvements for Groovysh
- [GROOVY-6074] - Import completion for all jar files on CLASSPATH
- [GROOVY-6076] - New DelegatingScript Class which provides a delegate for property and method calls
- [GROOVY-6112] - Support AST transforms on the field generated by @Field in scripts
- [GROOVY-6134] - Make @DelegatesTo support mapping to generic type argument
- [GROOVY-6139] - Extend groovysh completion evaluating "mostly" safe expressions before cursor
- [GROOVY-6145] - Groovysh could allow filename completion inside strings
- [GROOVY-6150] - Add 'doc' command to groovysh
- [GROOVY-6160] - @DelegatesTo should be @Documented
New Feature
- [GROOVY-4379] - Providing Groovy binary release (groovy-binary.zip) in Maven repository
- [GROOVY-4993] - @Memoized AST Transformation for Methods
- [GROOVY-6087] - grape command could provide a resolver option for "install"
- [GROOVY-6178] - Add class name completion to 'doc' command
Sub-task
- [GROOVY-3105] - API documentation for ConfigSlurper
- [GROOVY-5968] - Show only parts of bytecode
- [GROOVY-5969] - Show closures in AST browser
- [GROOVY-5970] - Non-blocking bytecode view
- [GROOVY-5977] - "please select a class node" message in AST view
- [GROOVY-6189] - basic SAM conversion
Task
- [GROOVY-3055] - Improve API class documentation
- [GROOVY-5342] - Update hsqldb dependency
- [GROOVY-5344] - Update jline dependency *
- [GROOVY-5964] - Upgrade gradle to 1.5
- [GROOVY-5965] - Upgrade ivy to 2.3.0
- [GROOVY-6060] - Upgrade Ant to 1.9.0
- [GROOVY-6081] - Improve unit tests execution time
- [GROOVY-6170] - Upgrade ant 1.9.0 -> 1.9.1
- [GROOVY-6172] - bump testng dependency 6.8 -> 6.8.5
- [GROOVY-6173] - bump xstream dependency 1.4.2 -> 1.4.4
- [GROOVY-6216] - Upgrade to ASM 4.1
Wish
- [GROOVY-6208] - Move groovy.icns to lib
- [GROOVY-6225] - Change template of "index-all.html" so that it can be parsed by Dash's javadocset command
* potentially breaking change (read issue for details - even minor differences are sometimes flagged as potentially breaking changes)