Bug
- [GROOVY-384] - The inner class representing a closure has a bad constructor
- [GROOVY-723] - MethodClosure doesn't support variable arguments method
- [GROOVY-851] - groovy doesn't support spaces in JAVA_HOME
- [GROOVY-853] - Creating class with run() method in groovysh can produce error
- [GROOVY-883] - when passing an list of gstrings to Java, it will never be treated as a String[]
- [GROOVY-923] - Default access level of members should be 'protected' but is private
- [GROOVY-934] - Stacked cases with switch
- [GROOVY-1003] - Reassignment of args parameter fails in main method
- [GROOVY-1073] - finally block not called, when "return"ed from catch block
- [GROOVY-1106] - Invoker.format() can cause StackOverflowError
- [GROOVY-1159] - Misleading error message when using Java-style for loops
- [GROOVY-1210] - complete Implementation of finally
- [GROOVY-1216] - Scoping: precedence rules for getters / property access / field access
- [GROOVY-1222] - Object[] as List causes ClassCastException
- [GROOVY-1255] - Type coercion ambiguity int -> (long, double)
- [GROOVY-1313] - cannot access superclass' field
- [GROOVY-1326] - method closures for static methods
- [GROOVY-1331] - Overloaded plus on java.sql.Date returns java.util.Date
- [GROOVY-1334] - Return from synchronized block throws IllegalMonitorStateException
- [GROOVY-1430] - Invalid Package declaration: abc.groovy is not in a source folder matching the package declaration
- [GROOVY-1443] - no AST when groovy compiler report compilation errors
- [GROOVY-1452] - GroovyEclipse should not touch the .classpath of a plugin
- [GROOVY-1468] - Illegal modifier on abstract method declarator
- [GROOVY-1469] - Duplicate method declarators in interface
- [GROOVY-1471] - Using both abstract and final as class modifiers
- [GROOVY-1477] - Can the Groovy compiler detect two methods with the same signature?
- [GROOVY-1481] - only files in source folders should be compiled
- [GROOVY-1531] - No useful error message
- [GROOVY-1538] - Calling a static method in a closure from another static method fails to find the static method
- [GROOVY-1564] - finally not called if try contains return
- [GROOVY-1578] - mkp.ueildUnescaped does not encode characters
- [GROOVY-1582] - Category Properties broken in RC1
- [GROOVY-1583] - interface declaration in Groovy generates duplicate class definition when run
- [GROOVY-1596] - NPE in GroovyClassLoader
- [GROOVY-1599] - thisObject not available in closure
- [GROOVY-1608] - GroovyCastException when accessing a closure's this.getClass()
- [GROOVY-1611] - Groovy should complain when you provide method bodies in an interface
- [GROOVY-1612] - Badly named getIntance method on MetaClassRegistry
- [GROOVY-1614] - Parsing a class from a script that has a CNFE in it produces no errors
- [GROOVY-1622] - Groovy Compiler and GroovyConsole work in a very different way
- [GROOVY-1631] - StackOverflowError on super method invocation
- [GROOVY-1632] - "Duplicate class definiton" error with interfaces
- [GROOVY-1654] - Groovy Eclipse Editor pegs CPU to 100% when editing certain .groovy files on linux
- [GROOVY-1700] - println of org.w3c.dom.Node fails with NoClassDefFoundError: org/apache/xml/serialize/OutputFormat
- [GROOVY-1831] - VariableScope node contains only formal parameters, lacks local variable information
- [GROOVY-2239] - Groovy POM on ibilio prevents builds.
Improvement
- [GROOVY-254] - range precedence should be fixed
- [GROOVY-371] - support mixed named parameters and regular parameters
- [GROOVY-394] - super not found
- [GROOVY-597] - Allow for( foo in bar) syntax for enumerations
- [GROOVY-623] - Implement Expected Collection#asImmutable(): Collection
- [GROOVY-921] - use maps analagous to lists in implicit ctors on 'as' enforced coercion
- [GROOVY-1370] - Improve error messages on failed compilation
- [GROOVY-1420] - disallow top-level assignments in "assert" analogous to "if"
- [GROOVY-1494] - Add links to classes to Groovy JDK documentation page for quick navigation
- [GROOVY-1574] - DelegatingMetaClass should have a constuctor taking a Class parameter
- [GROOVY-1577] - Add alternative notations for mkp.yield ans mkp.yieldUnescaped in the Streaming Builders
- [GROOVY-1836] - Add newInstance method of java.lang.Class that takes a map like the default constructor
New Feature
- [GROOVY-261] - make comma optional when item the last thing on a line
- [GROOVY-845] - Groovy For Web Services: Easy web service consumption
- [GROOVY-1093] - Ant Build Scripts
- [GROOVY-1166] - allow methods taking a parameter of an interface-with-one-methods to auto-coerce closures as parameters
- [GROOVY-1511] - Dynamic constructor invocation via Class object
- [GROOVY-1764] - Support a groovy .classes directory (like that for a webpps directory
Task
- [GROOVY-753] - complete parser
- [GROOVY-754] - scoping
- [GROOVY-756] - improve GroovyShell
- [GROOVY-758] - testcases
- [GROOVY-759] - groovelet/gsp
- [GROOVY-760] - improve error reporting
- [GROOVY-761] - static typing
- [GROOVY-762] - implement syntax improvements
- [GROOVY-763] - implement java parts
- [GROOVY-764] - closures
- [GROOVY-765] - implement compiler checks
Wish
- [GROOVY-63] - support JSR 45?
Edit/Copy Release Notes
The text area below allows the project release notes to be edited and copied to another document.