Changelog for Groovy 1.0.0-RC-1
Bug
- [GROOVY-265] - The delegate is ignored when resolving names in a closure in a script
- [GROOVY-825] - Iterating through groovy binding variables in a script results in java.util.ConcurrentModificationException
- [GROOVY-937] - Can't access private field from closure
- [GROOVY-984] - ClassCastException calling super(String) of java.lang.Exception
- [GROOVY-996] - protected fields not visible in subclasses
- [GROOVY-1045] - groovy does not ignore global CLASSPATH even if -cp is specified on command line
- [GROOVY-1103] - Passing a Double to a method expecting String causes a StackOverflowError
- [GROOVY-1128] - [].asSynchronized() << 1 fails
- [GROOVY-1139] - String.getAt throws NoSuchPropertyException with integer references
- [GROOVY-1141] - Automatic Integer -> BigInteger coercion needed
- [GROOVY-1157] - Problem with vargs
- [GROOVY-1158] - Missing line/col information when using wrong constructors
- [GROOVY-1176] - Runtime does does not choose from multimethods corect;y
- [GROOVY-1188] - Unboxing a Boolean generates an NPE
- [GROOVY-1192] - ambiguous invocation exception for DOMCategory.getAt(Element, String)
- [GROOVY-1194] - Memory leak in MetaClassRegistry
- [GROOVY-1199] - Groovy generates invalid class files when having a method that invokes a super class method taking a primitive as an argument.
- [GROOVY-1208] - GroovyMarkup transforms single quotes in double quotes
- [GROOVY-1233] - VerifyError when printing map
- [GROOVY-1240] - Can't reference array classes statically
- [GROOVY-1262] - NPE in MetaClassHelper.getClassName when calling static methods
- [GROOVY-1263] - Potentially misleading error message
- [GROOVY-1264] - Incorrect reporting of errorful execution
- [GROOVY-1267] - MultipleCompilationErrorsException trying to run multiply by a negative with start and minus operator
- [GROOVY-1273] - VerifyError with ! and instanceof
- [GROOVY-1277] - Parent class private method shadows derived class private method with the same name.
- [GROOVY-1278] - Call to another contructor using this(args) results in constructor running on a new object.
- [GROOVY-1280] - Calling Closure property with super and named arguments causes error
- [GROOVY-1296] - Allow for null values in GroovyRowResult
- [GROOVY-1306] - MarkupBuilder does not escape strings with newlines
- [GROOVY-1312] - method resolution not working
- [GROOVY-1321] - "Caught A Bug" error message shows with some bad scripts
- [GROOVY-1338] - Iterator for (x in y) and .each returning conllection not items in deep nesting closures
- [GROOVY-1343] - Code ceneration error when constucting literal Map
- [GROOVY-1345] - static final declarations in classes not producing getter
- [GROOVY-1353] - UberTestCase3 is missing out tests
- [GROOVY-1363] - Wrong Error Message (java.lang.IncompatibleClassChangeError) for Undefined Variable
- [GROOVY-1364] - DOMCategory.getAt(Element, String) cannot be used because it conflicts with DGM.getAt(Object, String)
- [GROOVY-1386] - command line tools fail with SecurityException on OSX
- [GROOVY-1399] - NPE in eclipse-plugin: no .class file generated
- [GROOVY-1410] - test for Annotation
- [GROOVY-1412] - Ambiguous method overloading for method ... interface parameters
- [GROOVY-1415] - Cant see line/column number in groovy runtime exceptions.
- [GROOVY-1418] - MarkupBuilder does not escape element content correctly if it contains EOL sequences
- [GROOVY-1421] - Invoker.asIterator() does not check for metaclass methods when trying to create an Iterator for an object
- [GROOVY-1445] - VerifyError in generated class data
- [GROOVY-1448] - Startup error
- [GROOVY-1463] - println prepends erroneous "." to result of Class#getSimpleName()
- [GROOVY-1470] - Illegal class modifiers
- [GROOVY-1478] - at least one variable name makes trouble
- [GROOVY-1483] - Repeatable VerifyError
- [GROOVY-1484] - NoSuchMethodError because static method is tried to be invoked on super class bug method signature does not match
- [GROOVY-1498] - tools.jar needed for AntBuilder (and Gant)
- [GROOVY-1506] - groovy task in ant throws NPE when calling target from inside groovy with antcall
- [GROOVY-1509] - Error Message for errors happening in getter contains no usable information
- [GROOVY-1519] - Caught: BUG! exception in phase 'class generation'
- [GROOVY-1521] - The startup scripts for Groovy executables have problems on non-Windows systems
- [GROOVY-1533] - GroovyJ plugin is not listed as available for IDEA 6
- [GROOVY-1534] - Exception thrown in an overriden setProperty() trapped
- [GROOVY-1556] - ensure printing String[] shows the contents of the Array
- [GROOVY-1557] - calling getClass() fails if called on a java.lang.Class object
- [GROOVY-1571] - XmlSlurper GPathResult may contain erroneous null elements at end of findAll lists
- [GROOVY-1600] - Eclipse Plugin changes projects folder when default groovy output path changes
- [GROOVY-1601] - Same Groovy and Java Output Folders doesn't work
- [GROOVY-1606] - Caught: java.lang.ClassCastException: gjdk.console.Console_GroovyReflector
Improvement
- [GROOVY-170] - statically typed variables should generate compile errors if invalid methods/properties are used
- [GROOVY-498] - Use static method dispatch when possible if types are statically declared
- [GROOVY-748] - [PATCH] make sure files are closed, even on exceptions
- [GROOVY-1098] - Using the + operator to concatenate objects with a string does not call toString()
- [GROOVY-1115] - let Lists coerce to Sets
- [GROOVY-1120] - allow dynamic method calls via obj."$methodname"
- [GROOVY-1122] - rename 'eachLine' to 'each' for File, etc.
- [GROOVY-1125] - provide intersect on Collections generally, not only on List
- [GROOVY-1152] - Allow calling quoted methods and GString interpolated methods
- [GROOVY-1236] - make unique() supporting Closures analagous to sort()
- [GROOVY-1320] - add groupBy() method to Lists
- [GROOVY-1359] - Ability to import custom user class an use it in the body of template
- [GROOVY-1377] - Readers and InputStreams should have specialized 'each' methods
- [GROOVY-1378] - File.each is mapped to asCollection. Instead it should be mapped to asIterator to prevent out-of-memory errors
- [GROOVY-1379] - DefaultGroovyMethods.java contains unchecked .close operations. This should be remedied.
- [GROOVY-1384] - Make "as" be customisable through the asType(Class) method
- [GROOVY-1400] - GroovyRowResult should implement Map to access properties in JSPs (EL/JSTL)
- [GROOVY-1428] - groovysh's welcome is ungrammatical
- [GROOVY-1439] - Allow conversion from closure to interface
- [GROOVY-1459] - empty GStrings and Character 0 should evaluate to false in boolean tests
- [GROOVY-1482] - Sql#firstRow throws IndexOutOfBoundsException if no rows are found (Patch included)
- [GROOVY-1529] - Allow conversion from Map to interface
- [GROOVY-1537] - Upgrade dependencies
- [GROOVY-1559] - MissingMethodException should report whether the missing method is static or not
- [GROOVY-1568] - Improve error message when attempting to use inner classes
New Feature
- [GROOVY-463] - Allow default parameters on constructors
- [GROOVY-1070] - Add antlib support to Groovy ant support
- [GROOVY-1346] - Allow "in" to be a boolean operator
- [GROOVY-1488] - enable jumping to the groovy source when klicking on the stacktrace in the console
- [GROOVY-1507] - When using command-line scripts the line number in the current file is not available
- [GROOVY-1508] - Add option -a <splitpattern> to allow auto split of lines read when using command-line scripts (via -e)
- [GROOVY-1510] - Add groupBy() method to filter lists according to a critieria
- [GROOVY-1565] - Add Run As... JUnit Test for GroovyTestCases in Eclipse plugin
Sub-task
- [GROOVY-1387] - use central coercion mechnism when setting fields/proeprties
Task
Wish