Changelog for Groovy 1.7.0-beta-2
Bug
- [GROOVY-2886] - Wrong method is called when using default arguments
- [GROOVY-3044] - preserve classLoader in Script.evaluate() method
- [GROOVY-3275] - Process.consumeProcessOutput leads to a race condition
- [GROOVY-3544] - GroovyConsole AST Viewer creates duplicate nodes in the tree view for some top level nodes
- [GROOVY-3552] - new "power" assertion messages do not work in GroovyConsole and groovysh
- [GROOVY-3556] - 'this' reference in closure of a closure not correctly resolved when using @Category annotation
- [GROOVY-3578] - Ordering of files passed to compiler affects whether some (invalid) generics errors get reported
- [GROOVY-3583] - Grape issues
- [GROOVY-3633] - CLONE -Some GroovyClassLoader issues around recompile
- [GROOVY-3658] - function call in assigning default method parameter throws: Expecting to find object/array on stack
- [GROOVY-3659] - Synchronization isn't done correctly for groovy.sl.Sql
- [GROOVY-3664] - this.class fails to compile in a static context
- [GROOVY-3667] - Stub compilation cannot handle spaces in method names
- [GROOVY-3668] - Groovy compiler on Google App Engine thinks it is facing Java 1.4 (and therefore annotations don't work)
- [GROOVY-3669] - Can't use several times the same JSR-223 ScriptContext for differents groovy script
- [GROOVY-3672] - Stack trace doesn't point to source of error in DELEGATE_ONLY assignment case
- [GROOVY-3677] - SQL documentation: executeInsert Javadoc error
- [GROOVY-3678] - SQL documentation: executeInsert result Javadoc error
- [GROOVY-3679] - ClassCastException writing entry to map via [] when key matches private field name
- [GROOVY-3685] - Printing script causes the editor font to change
- [GROOVY-3687] - TimeCategory 10.minutes.ago zeros out the time
- [GROOVY-3693] - static init block in enum fails in 1-7-beta1
- [GROOVY-3698] - GANT_HOME ending in a slash causes ClassNotFoundException
- [GROOVY-3705] - Sql rows() methods access ResultSet after Connection closed
- [GROOVY-3709] - javadoc of toMapString
- [GROOVY-3711] - NPE when using JSR223 implementation under some conditions
- [GROOVY-3713] - @Immutable should not override toString() if provided in source
- [GROOVY-3716] - groovyc doesn't catch wrong return type in overriding method
- [GROOVY-3718] - Regular-Expression-Evaluates-Null-As-True
- [GROOVY-3719] - Script thinks it cannot be run
- [GROOVY-3720] - MockFor and StubFor call unsupported method in ProxyGenerator for creation of instances of Abstract classes
- [GROOVY-3721] - Strange behavior for properties that differ only in their capitalization
- [GROOVY-3723] - EMC weirdness: adding properties and setProperty/getProperty in common
- [GROOVY-3726] - Compiler incorrectly generating bridge methods
- [GROOVY-3727] - Nested top-level class causes problems
- [GROOVY-3728] - Compiler doesn't enforce that annotations are only applied to program elements they are intended for
- [GROOVY-3729] - ~/.groovy/grapeConfig.xml file with only comment causes bug report
- [GROOVY-3731] - Faulty generic declaration accepted but generates illegal bytecode
- [GROOVY-3732] - Groovyc throws exception in code using ASTTransformations
- [GROOVY-3735] - AstBuilder fromSpec creates extra generics info in some cases
- [GROOVY-3749] - Cannot have a script with a main method as the starting point
- [GROOVY-3750] - groovydoc doesn't handle leading asterisks in descriptions within project-info.groovy correctly
- [GROOVY-3761] - Nested tags in nested javac tag of a groovc tag in Ant file is ignored
- [GROOVY-3762] - Use of generics causes "The class p.A refers to the class p.A and uses 1 parameters, but the referred class takes no parameters"
- [GROOVY-3763] - CLONE -Using the Ant task with multiple targets fails
- [GROOVY-3768] - Groovy compiler allows local variables to be marked static
- [GROOVY-3770] - Curried closure does not refer get/setResolveStrategy or getDelegate to parent
- [GROOVY-3776] - Parser accepts invalid List literal
- [GROOVY-3777] - Compiler behaviour different between script and compilation; line numbers missing in error message
- [GROOVY-3784] - @Delegate breaks use of Generics
- [GROOVY-3789] - switch should be expression like if
- [GROOVY-3794] - Joint compiler fails with generics
- [GROOVY-3796] - Process.waitForOrKill doesn't wait after killing; leading to a race condition
- [GROOVY-3798] - Incorrect generated bytecode (duplicate field and method) on service with multiple methods returning array of same type
- [GROOVY-3799] - Bug in passing in Var Args with Inheriters of Abstract classes
- [GROOVY-3801] - Can't run compiled groovy class unless main method is defined Java-style
- [GROOVY-3803] - NullObject is ignored by EMC
- [GROOVY-3806] - Sql.java contains assertion which is always false
- [GROOVY-3817] - try {} block followed by list notation does not work, needs something else in between
- [GROOVY-3818] - grep or findAll results in ClassCastException (Comparaple) on TreeSet, TreeMap with custom comparator
Improvement
- [GROOVY-982] - provide a general isTrue() analogous to isCase()
- [GROOVY-3665] - Allow subclasses of groovy.sql.Sql to get ResultSet
- [GROOVY-3688] - Move TimeCategory to a public package
- [GROOVY-3691] - sql.withTransaction needs to save/restore "autoCommit "
- [GROOVY-3694] - Consistent parameter names for DGM regex methods
- [GROOVY-3730] - Provide more control for @Grapes to exclude transitives or adjust classloader
- [GROOVY-3753] - Expose the antXmlContext in the AntBuilder
- [GROOVY-3786] - Multiple MarkupBuilder Issues
- [GROOVY-3813] - MarkupBuilder alignment of special mkp commands compared with StreamingMarkupBuilder
- [GROOVY-3816] - Should be possible to declare a class in a script and use it in another script with JSR223
New Feature
- [GROOVY-1523] - Prototype based OO with Groovy
- [GROOVY-3686] - Add line numbers to the groovy console (patch supplied)
- [GROOVY-3725] - Provide a mechanism for defining system properties within groovy-starter.conf
- [GROOVY-3804] - Ability to customize Groovy Truth
- [GROOVY-3805] - Boolean coercion for closures
Wish
- [GROOVY-2655] - Add an option for not fetching dependencies automatically using Maven when building Groovy