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