Fork me on GitHub

Changelog for Groovy 1.0.0

Bug

  • [GROOVY-100] - [] operator does not work on Arrays
  • [GROOVY-1000] - reset call in getAt for Matcher
  • [GROOVY-1003] - Reassignment of args parameter fails in main method
  • [GROOVY-1004] - List.minus() sometimes results in a list w/ elements ordered differently from the original list
  • [GROOVY-1006] - Bugs in handling lists consisting of numbers of mixed types
  • [GROOVY-1008] - Overriding properties defined w/ @Property gives wrong results
  • [GROOVY-1013] - groovy command accepts very limited number of command line args on windows
  • [GROOVY-1014] - Problem invoking a method with arrays as arguments
  • [GROOVY-1017] - Cannot compile two classes that depend on each other
  • [GROOVY-1018] - cannot access public static attributes called "Class"
  • [GROOVY-102] - Install Problem, I have added the Path and Groovy_Home Variable
  • [GROOVY-1020] - Bad error reporting in the "groovy" Ant task
  • [GROOVY-1021] - Can't do multi-line input with groovysh since JSR-02
  • [GROOVY-1022] - MarkupBuilder can't output tags with colons or hyphens
  • [GROOVY-1023] - methods with varargs are called with null when args are empty but should use an empty Array
  • [GROOVY-1024] - Static Member Access Error by ClassName
  • [GROOVY-1025] - Can not use the syntax obj.@name in the left hand side of assgnment operators (=, +=, *=, etc)
  • [GROOVY-1026] - Null argument to methods with vararg parameters are replaced with array of length 1
  • [GROOVY-1028] - When accessing a static member of an interface null is delivered.
  • [GROOVY-103] - Invoker helper class depends on mockobjects
  • [GROOVY-1030] - no source and line number is shown in exceptions thrown from inside a script
  • [GROOVY-1031] - Currying and recursive closures
  • [GROOVY-1032] - Missing End Quote Hangs Script Created Through InvokerHelper
  • [GROOVY-1035] - gpath is broken when using xml namespaces in attributes
  • [GROOVY-1036] - Expando's class attribute should be overwritable
  • [GROOVY-1037] - Primitive types don't have default values
  • [GROOVY-1038] - Misleading error message when accessing a private static field
  • [GROOVY-1039] - VerifyError: returning local variable outside of scope
  • [GROOVY-104] - addition of two ranges fails
  • [GROOVY-1042] - NoClassDefFoundError in Spring when calling static methods
  • [GROOVY-1043] - java.util.regex.Matcher: group access by [] operator broken in jsr-03
  • [GROOVY-1045] - groovy does not ignore global CLASSPATH even if -cp is specified on command line
  • [GROOVY-1046] - Scoping bug results in a null pointer exception
  • [GROOVY-105] - Parent class print method is wrongly picked up
  • [GROOVY-1051] - Can't multiply two numbers ;-)
  • [GROOVY-1052] - Improper line endings in groovy bootstrap scripts
  • [GROOVY-1055] - MissingPropertyException: No such property: println
  • [GROOVY-1056] - MetaClass.getAttribute() doesn't work if the field is on a superclass
  • [GROOVY-1057] - If a class has a property and an attribute with the same name then getProperty always reruens the attribute
  • [GROOVY-1058] - Can't set the vaule of an attribute on a superclass
  • [GROOVY-1059] - a.@b() is flagged as a syntax error
  • [GROOVY-106] - support the \uxxxx style escapes for Unicode characters
  • [GROOVY-1064] - Compiler throws NPE when it can't find an imported class
  • [GROOVY-1068] - setDelegate doesn't work when 'def' is used
  • [GROOVY-107] - Constructor returns class instead of instance in groovlet
  • [GROOVY-1071] - import com.foo.SomeClass.* does not work properly
  • [GROOVY-1072] - void.class is not recognized by groovy
  • [GROOVY-1073] - finally block not called, when "return"ed from catch block
  • [GROOVY-1076] - MarkupBuilder does not work with escaped tags
  • [GROOVY-1080] - Slash cannot be specified in regex
  • [GROOVY-1081] - reader.transformLine(writer) {closure} doesn't yield closure return value to the writer
  • [GROOVY-1082] - Currying a Writable closure results in a non writable closure
  • [GROOVY-1099] - Changing the delegate ona Curried Closure causes subsiquent calls to fail
  • [GROOVY-110] - println(true == false) fails
  • [GROOVY-1102] - Fix mockobjects dependency in project.xml
  • [GROOVY-1103] - Passing a Double to a method expecting String causes a StackOverflowError
  • [GROOVY-1104] - possible bug in ClassNode#isScript
  • [GROOVY-1106] - Invoker.format() can cause StackOverflowError
  • [GROOVY-111] - unning groovy with a 0 length file crashes.
  • [GROOVY-1117] - constants in interfaces
  • [GROOVY-1118] - NPE when accessing a reference that was set inside a Builder
  • [GROOVY-1128] - [].asSynchronized() << 1 fails
  • [GROOVY-113] - entering # into the console causes an infinite loop & 100% CPU
  • [GROOVY-1130] - byte[] to Byte[] coercions behave unexpectedly in both directions
  • [GROOVY-1136] - GroovyClassLoader's additionalPaths has no effect on loadClass(string, boolean)
  • [GROOVY-1139] - String.getAt throws NoSuchPropertyException with integer references
  • [GROOVY-114] - use of 'class' as a property in named-property calling syntax
  • [GROOVY-1140] - Groovy-classloader: class in same .groovy file not found when used within a package
  • [GROOVY-1141] - Automatic Integer -> BigInteger coercion needed
  • [GROOVY-1142] - Number comparison inconsistent
  • [GROOVY-1148] - NPE in CompileUnit.addModule
  • [GROOVY-1149] - GroovyResourceLoader not used when loading Groovy class from .groovy source
  • [GROOVY-115] - fix the bug Guillaume found with using foo++ as a key value
  • [GROOVY-1151] - 'bad interpreter' message when running groovy on OSX
  • [GROOVY-1156] - Can't access nested enums
  • [GROOVY-1157] - Problem with vargs
  • [GROOVY-1158] - Missing line/col information when using wrong constructors
  • [GROOVY-1159] - Misleading error message when using Java-style for loops
  • [GROOVY-116] - calling closures within closures bug
  • [GROOVY-1169] - Constants defined in interface not visible to subclasses
  • [GROOVY-117] - Inconsistent Stack Height bug when using try / finally
  • [GROOVY-1170] - for loop scope is bogus
  • [GROOVY-1171] - NullPointerException caused by interaction of for loop scope and SwingBuilder
  • [GROOVY-1175] - Ability to create empty multi-D arrays
  • [GROOVY-1176] - Runtime does does not choose from multimethods corect;y
  • [GROOVY-1179] - GroovyScriptEngine does not let you specify parent ClassLoader for GroovyClassLoader
  • [GROOVY-118] - updating outer variables in closures inside shell Scripts seems to fail
  • [GROOVY-1180] - GroovyScriptEngine fails to load scripts that exist on file:// roots if they only exist on a root that is not the last root
  • [GROOVY-1184] - final @Property x generates a setX method
  • [GROOVY-1188] - Unboxing a Boolean generates an NPE
  • [GROOVY-1190] - error running groovyc from ant
  • [GROOVY-1192] - ambiguous invocation exception for DOMCategory.getAt(Element, String)
  • [GROOVY-1194] - Memory leak in MetaClassRegistry
  • [GROOVY-1197] - Multi-D arrays don't work with custom classes as base element
  • [GROOVY-1198] - Internal NPE when reusing variable name in different scopes
  • [GROOVY-1199] - Groovy generates invalid class files when having a method that invokes a super class method taking a primitive as an argument.
  • [GROOVY-120] - NullPointer when calling a java.util.Arrays.asList()
  • [GROOVY-1208] - GroovyMarkup transforms single quotes in double quotes
  • [GROOVY-1209] - Accented Latin characteres are not allowed in Groovy identifires
  • [GROOVY-121] - Closure Bracket placement bug
  • [GROOVY-1210] - complete Implementation of finally
  • [GROOVY-1211] - String containing an integer is considered a character for ranges
  • [GROOVY-1212] - Bad implementation of MultipleCompilationErrorsException
  • [GROOVY-1216] - Scoping: precedence rules for getters / property access / field access
  • [GROOVY-1217] - invalid class file generated when property and field name overlap
  • [GROOVY-1219] - AntBuilder fileScanner broken after new Scoping
  • [GROOVY-122] - print "foo" does not throw compile error
  • [GROOVY-1220] - groovyConsole broken after new Scoping
  • [GROOVY-1222] - Object[] as List causes ClassCastException
  • [GROOVY-1224] - inter- onstructor call "this ( ..) " makes 2nd object!
  • [GROOVY-1225] - Can't access static inner classes
  • [GROOVY-1226] - Multiple Class fail to work with loadClass method in GCL
  • [GROOVY-1227] - class resolution pb when A.groovy script calls class in B.groovy under Java 5
  • [GROOVY-1228] - Scoping/variable resolving problem when static final field with same name declared in class
  • [GROOVY-1229] - Problem with access to instance methods from closures in SwingBuilder
  • [GROOVY-1230] - ClassFormatError when defining two identical methods in the same class
  • [GROOVY-1231] - Make GroovyShell take care of CompilerConfiguration's source encoding
  • [GROOVY-1233] - VerifyError when printing map
  • [GROOVY-1234] - assertArrayEquals problem when multidimensional array
  • [GROOVY-1237] - Concurrency problem when compiling scripts
  • [GROOVY-1238] - NullPointerException oddity related to variable scope
  • [GROOVY-1239] - Builders: calls to owner methods from within nested closures lead to markup instead of method calling
  • [GROOVY-124] - Can't update static variable from closure in static method
  • [GROOVY-1240] - Can't reference array classes statically
  • [GROOVY-1241] - Actual ClassNotFoundException is hidden when loading classes with GCL
  • [GROOVY-1242] - Cant have a class method returning an array of complex type
  • [GROOVY-1243] - class generation does not enforce the "implements" keyword
  • [GROOVY-1245] - Switch is not working
  • [GROOVY-1249] - Class Reloading Doesn't work with inheritance
  • [GROOVY-1250] - BigDecimal unnecessarily coerced into double on method invocation
  • [GROOVY-1251] - java.lang.VerifyError with nested closures
  • [GROOVY-1252] - Import class does not work with if the imported script is named as 'XXX.gvy' instead of 'XXX.groovy'
  • [GROOVY-1254] - NPE in calculateParameterDistance
  • [GROOVY-1255] - Type coercion ambiguity int -> (long, double)
  • [GROOVY-1258] - A extends A causes compiler freeze
  • [GROOVY-126] - MarkupBuilder: no such field "owner" error while generating HTML
  • [GROOVY-1262] - NPE in MetaClassHelper.getClassName when calling static methods
  • [GROOVY-1263] - Potentially misleading error message
  • [GROOVY-1264] - Incorrect reporting of errorful execution
  • [GROOVY-1265] - using 'this' in field assignments
  • [GROOVY-1267] - MultipleCompilationErrorsException trying to run multiply by a negative with start and minus operator
  • [GROOVY-127] - Local variable not updated through closure with Groovy shell
  • [GROOVY-1270] - implementation of interface named exactly as the groovy class, but in another package yields stack overflow
  • [GROOVY-1271] - Function names are not properly resoved in Scripts when trying to create a function pointer
  • [GROOVY-1273] - VerifyError with ! and instanceof
  • [GROOVY-1274] - NPE executing Collection.toArray( new String[ foo.size() ] )
  • [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-1279] - VerifyError on a method override
  • [GROOVY-128] - Function with statically typed parameter generates bad bytecodes
  • [GROOVY-1280] - Calling Closure property with super and named arguments causes error
  • [GROOVY-1281] - GroovyClassLoader should attempt to reload class after compilation error
  • [GROOVY-1283] - Names in inner closure are not resolved against the right owner
  • [GROOVY-1288] - When creating a map, the key cannot reference to a variable?
  • [GROOVY-129] - A .map of an integer list passes in an IntRange rather than each integer
  • [GROOVY-1291] - GroovyMBean doesn't support the use of overloaded MBean operations
  • [GROOVY-1296] - Allow for null values in GroovyRowResult
  • [GROOVY-1297] - Adding a setX method via a category doesn't work if the property is set via a Map in the constructor
  • [GROOVY-130] - GString not converted to String in some cases
  • [GROOVY-1306] - MarkupBuilder does not escape strings with newlines
  • [GROOVY-1307] - Parameter values not available in nested closures
  • [GROOVY-1309] - cannot create class WholeNumber
  • [GROOVY-131] - Variable visibility issue within nested closures
  • [GROOVY-1312] - method resolution not working
  • [GROOVY-1313] - cannot access superclass' field
  • [GROOVY-1316] - Groovy Console ClassCastException with groovy/ui/Console.groovy
  • [GROOVY-1319] - Object Inspector doesn't start from groovysh
  • [GROOVY-1321] - "Caught A Bug" error message shows with some bad scripts
  • [GROOVY-1326] - method closures for static methods
  • [GROOVY-133] - Closure parameters can't be of static primative type
  • [GROOVY-1331] - Overloaded plus on java.sql.Date returns java.util.Date
  • [GROOVY-1334] - Return from synchronized block throws IllegalMonitorStateException
  • [GROOVY-1335] - AntBuilder doesn't instantiate Tasks the Ant way
  • [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-1344] - IncompatibleClassChangeError is thrown when an arg is assigned a default value from a static constant of another class.
  • [GROOVY-1345] - static final declarations in classes not producing getter
  • [GROOVY-1347] - MissingPropertyException is thrown when calling a method with a default arg set to a static field of another class.
  • [GROOVY-1349] - allow throws clause for methodsin interfaces without semicolon
  • [GROOVY-135] - println requires parentheses when new is used
  • [GROOVY-1352] - allow GString equals String
  • [GROOVY-1353] - UberTestCase3 is missing out tests
  • [GROOVY-1354] - Parser fails when parentheses omitted from constructor
  • [GROOVY-1357] - VerifyError Exception for boolean member variable
  • [GROOVY-136] - parser chokes on file names beginning with the slash symbol
  • [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-1366] - Unexpected newline error in method declaration
  • [GROOVY-137] - unary minus exception
  • [GROOVY-1373] - use correct class names for arrays, when loading through class$
  • [GROOVY-1374] - cache only files by default
  • [GROOVY-1386] - command line tools fail with SecurityException on OSX
  • [GROOVY-1390] - Eclipse Project can exist outside of Workspace's physical location
  • [GROOVY-1395] - GroovyEclipse RunAs Groovy doesn't check for a main method with the wrong kind of arguments
  • [GROOVY-1399] - NPE in eclipse-plugin: no .class file generated
  • [GROOVY-1408] - Closure parameters unnecessarily wrapped in groovy.lang.References
  • [GROOVY-141] - break inside a while loop causes NPE
  • [GROOVY-1410] - test for Annotation
  • [GROOVY-1412] - Ambiguous method overloading for method ... interface parameters
  • [GROOVY-1413] - public static variables not modifiable by top-level inner classes
  • [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-1427] - Calling intValue on a bound variable fails with java.lang.IncompatibleClassChangeError
  • [GROOVY-143] - GString not replacing ${value} correctly
  • [GROOVY-1430] - Invalid Package declaration: abc.groovy is not in a source folder matching the package declaration
  • [GROOVY-144] - A closure body can't be a single identifier
  • [GROOVY-1443] - no AST when groovy compiler report compilation errors
  • [GROOVY-1445] - VerifyError in generated class data
  • [GROOVY-1448] - Startup error
  • [GROOVY-145] - Miltiline Strings don't work on Windows
  • [GROOVY-1452] - GroovyEclipse should not touch the .classpath of a plugin
  • [GROOVY-146] - Groovyc doesn't handle Windows format files properly
  • [GROOVY-1463] - println prepends erroneous "." to result of Class#getSimpleName()
  • [GROOVY-1468] - Illegal modifier on abstract method declarator
  • [GROOVY-1469] - Duplicate method declarators in interface
  • [GROOVY-1470] - Illegal class modifiers
  • [GROOVY-1471] - Using both abstract and final as class modifiers
  • [GROOVY-1477] - Can the Groovy compiler detect two methods with the same signature?
  • [GROOVY-1478] - at least one variable name makes trouble
  • [GROOVY-148] - ternary operator doesn't work
  • [GROOVY-1481] - only files in source folders should be compiled
  • [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-151] - Sometimes calling a closure with () doen't work
  • [GROOVY-1519] - Caught: BUG! exception in phase 'class generation'
  • [GROOVY-152] - Parser doesn't like a closure called with no parameters
  • [GROOVY-1521] - The startup scripts for Groovy executables have problems on non-Windows systems
  • [GROOVY-153] - Statically typed static fields generates a bad class file
  • [GROOVY-1531] - No useful error message
  • [GROOVY-1533] - GroovyJ plugin is not listed as available for IDEA 6
  • [GROOVY-1534] - Exception thrown in an overriden setProperty() trapped
  • [GROOVY-1538] - Calling a static method in a closure from another static method fails to find the static method
  • [GROOVY-155] - Can't test if a the value of a Character is greater than or less than a value
  • [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-1564] - finally not called if try contains return
  • [GROOVY-1571] - XmlSlurper GPathResult may contain erroneous null elements at end of findAll lists
  • [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-159] - for in where the control variable id used in the range specification doesn't work
  • [GROOVY-1596] - NPE in GroovyClassLoader
  • [GROOVY-1599] - thisObject not available in closure
  • [GROOVY-16] - Support closures with no parameters
  • [GROOVY-160] - Use of control variable after a for loop generates bad bytecodes
  • [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
  • [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-162] - Can't cast an Integer to a Character
  • [GROOVY-1622] - Groovy Compiler and GroovyConsole work in a very different way
  • [GROOVY-163] - String Array Problem!
  • [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-166] - Broken Links on Groovy website, possible example syntax error
  • [GROOVY-167] - should support getting of listener properties
  • [GROOVY-168] - for loop variable is not correctly passed into inner closure
  • [GROOVY-1700] - println of org.w3c.dom.Node fails with NoClassDefFoundError: org/apache/xml/serialize/OutputFormat
  • [GROOVY-171] - Null pointer in groovysh on ctrl-D
  • [GROOVY-175] - super-constructor calling bug
  • [GROOVY-176] - A range between an integer and a character doesn'r work
  • [GROOVY-177] - fix build system so that the groovyConsole works again
  • [GROOVY-178] - Arithmetic characters held in dynamically trped variables doesn't work
  • [GROOVY-179] - Character doesn't support arithmetic operations
  • [GROOVY-181] - bad GroovyServlet link in Groovlets example
  • [GROOVY-182] - classes derived indirectly from Script don't work with Bindings
  • [GROOVY-183] - MarkupBuilder fails for embedded groovy
  • [GROOVY-1831] - VariableScope node contains only formal parameters, lacks local variable information
  • [GROOVY-184] - for loop fails for embedded groovy
  • [GROOVY-185] - setProperty() and now getProperty() do not throw MissingPropertyException
  • [GROOVY-188] - Trailing null when iterating StringTokenizer
  • [GROOVY-19] - package should be optional in a Groovy class
  • [GROOVY-191] - 4 + 'x' causes error. most-general-type rule not applied
  • [GROOVY-1927] - startGroovy script has issues on cygwin
  • [GROOVY-194] - System.out.println() called in bsf.GroovyEngine#declareBean()
  • [GROOVY-195] - Unable to new arbitary script name for in BSFManager#exec()
  • [GROOVY-196] - java.lang.String.multiply(0) should return "" not throw exception
  • [GROOVY-199] - overriding an inherited method that has basic types in the signature is problematic
  • [GROOVY-20] - allow 'package' to be optional
  • [GROOVY-200] - at runtime, groovy incorrectly fails when choosing between signature-specialized versions of a method
  • [GROOVY-203] - Missing plugin dependencies
  • [GROOVY-204] - org.osgi.framework.BundleException when running Eclipse plugin
  • [GROOVY-206] - GroovyStrings are not always coerced to String
  • [GROOVY-209] - Empty try block causes VerifyError
  • [GROOVY-210] - System.out and classloader issues under Tomcat
  • [GROOVY-211] - Cand have a closure over the parameters of another closure
  • [GROOVY-212] - assigning to a class name should give a meaningful error message
  • [GROOVY-213] - (NegativeArraySizeException) cannot handle 128 variable expansions
  • [GROOVY-214] - nested closures seem to have a problem with variable passing
  • [GROOVY-216] - println "${1}${1}" prints 1 not 11
  • [GROOVY-220] - Object[] or String[] not allowd for type of a variable
  • [GROOVY-2239] - Groovy POM on ibilio prevents builds.
  • [GROOVY-224] - Variable declartion with type gets lost in closure
  • [GROOVY-227] - BigDecimal type does not behave as expected with operators (+, -, ...)
  • [GROOVY-230] - use of variable inside closure seems broken
  • [GROOVY-232] - inherited invokeMethod does not work
  • [GROOVY-233] - super call in invokeMethod causes a VerifyError
  • [GROOVY-234] - GroovyScripEngine is broken for Threads
  • [GROOVY-237] - Verify error when closure parameter is reused
  • [GROOVY-238] - Nested closure with the same parameter name generates bad bytecodes
  • [GROOVY-239] - Closures nested more than two deep can't access top level variables
  • [GROOVY-240] - Parser thows nullpointer exception for missing close brace
  • [GROOVY-241] - Currying a curried closure doesn't produce a new object
  • [GROOVY-243] - Closure#curry doesn't support multiple args (and ius supposed to)
  • [GROOVY-244] - Currying a Curried Closure changes base closure
  • [GROOVY-245] - Cloning a curried closure removes the currying
  • [GROOVY-249] - MarkupBuilder can't reference binding variables
  • [GROOVY-251] - Lexer does not recognize .1 as a numeric literal
  • [GROOVY-252] - Verify Error on member function in class
  • [GROOVY-253] - Odd string crashes the parser
  • [GROOVY-255] - Throwing Exceptions in Builders confuses groovy
  • [GROOVY-264] - Parser doesn't like literal closures in stings
  • [GROOVY-265] - The delegate is ignored when resolving names in a closure in a script
  • [GROOVY-266] - an inner closure doesn't use the outer closures delegate to resolve names
  • [GROOVY-267] - url(label: 'test') { CDATA(body) }
  • [GROOVY-268] - Lexer doesn't understand hex constants
  • [GROOVY-269] - parameters of boolean type to methods were not generated correctly in bytecode
  • [GROOVY-271] - Groovy does not support floating point constants with exponents
  • [GROOVY-273] - ClassGenration for numeric literal types other than Double and Integer
  • [GROOVY-274] - Negate (-) does not work for types other than Integer, Double
  • [GROOVY-276] - problems with packages
  • [GROOVY-278] - Subclassing a java object in Groovy still has problame
  • [GROOVY-279] - closures don't find variables in a delegate if the variable written to before it's read
  • [GROOVY-280] - ClassFormatError with JDK 1.5
  • [GROOVY-282] - isCase() - static method invocation by way of InvokeHelper should be polymorphic
  • [GROOVY-284] - groovy script has issues on cygwin
  • [GROOVY-285] - parsing 'int x = 123' fails
  • [GROOVY-286] - modulo operator doesn't work
  • [GROOVY-288] - User Guide bugs
  • [GROOVY-289] - groovyconsole not starting because of non existing jar in CLASSPATH
  • [GROOVY-293] - Exception thrown when assigning value to variable outside closure
  • [GROOVY-294] - Syntax highlighting for comments not working correctly
  • [GROOVY-295] - Compilation error information not displayd correctly
  • [GROOVY-296] - default package handling in content outline broken
  • [GROOVY-299] - Content outline exception
  • [GROOVY-302] - plugin fails if workspace has any closed projects
  • [GROOVY-303] - import using package.* doesn't seem to work properly for implements/extends class
  • [GROOVY-304] - return <newline> value - throws exception
  • [GROOVY-305] - single character strings should be coerced to characters if it helps
  • [GROOVY-306] - Printing the result of the ternery operator ? : is broken
  • [GROOVY-308] - system.out << a << b not working
  • [GROOVY-309] - GString is not always converted to String when calling a Java method
  • [GROOVY-310] - Subclasses cannot access inhierited static fields from implicit class context
  • [GROOVY-311] - Groovy 1.0 beta4 BSF implementation does not work
  • [GROOVY-313] - 'package' accessible methods not handled correctly
  • [GROOVY-320] - Support remainder (%) operator
  • [GROOVY-321] - Verify error in a Closure
  • [GROOVY-324] - Inconsistent stack height on assignment within closure
  • [GROOVY-325] - Static closures have wrong owner object
  • [GROOVY-326] - Groovy fails to build under JDK 1.5 (CVS HEAD)
  • [GROOVY-327] - refresh project kills eclipse
  • [GROOVY-330] - broken classpath in builder while using jars from workspace
  • [GROOVY-335] - Nested closures : variable assignment ignored
  • [GROOVY-336] - Empty try skips finally
  • [GROOVY-337] - closure not using its parameter
  • [GROOVY-339] - Problem coercing 7/3 to double
  • [GROOVY-342] - try/catch not catching
  • [GROOVY-343] - VerifyError (InconsistentStackHeight) on assignment to external variable from a scope nested inside a closure
  • [GROOVY-344] - operator precedence in print and inject()
  • [GROOVY-350] - test multidimension arrays work properly
  • [GROOVY-351] - continue must have semicolon
  • [GROOVY-353] - IncompatibleClassChangeError on wrong variable name
  • [GROOVY-354] - Array.length not working
  • [GROOVY-355] - VerbatimGStringTest failures - Windows vs. Unix EOL problem
  • [GROOVY-356] - super used in method causes Verify error
  • [GROOVY-357] - TemplateServlet cause Template not found error
  • [GROOVY-358] - Lexer/parser problem with tertiary operator
  • [GROOVY-359] - Problems with numeric types (for example, 2.0D)
  • [GROOVY-361] - closure syntax not recognized
  • [GROOVY-362] - synchronized keyword
  • [GROOVY-363] - lineNumber table has all 0 instead of correct offsets
  • [GROOVY-364] - Class names can not have dot
  • [GROOVY-365] - variables created within the closure fail to be visible outside as local variables
  • [GROOVY-366] - 65 << 2 gets No such method: leftShift for class: java.lang.Integer with arguments: [2]
  • [GROOVY-368] - character sequences (String.next()) don't work as expected
  • [GROOVY-369] - prefix increment may need a higher precedence
  • [GROOVY-372] - VerifyError on += of instance variable
  • [GROOVY-373] - VerifyError on assignment to boolean variable inside method
  • [GROOVY-376] - list and map creating syntax does not allow trailing comma
  • [GROOVY-377] - insert ${..} in string fails when singlequoted
  • [GROOVY-378] - strang behavior: sort vs sort()
  • [GROOVY-379] - incorrect inner classes naming
  • [GROOVY-381] - simple primitive casting not parsed
  • [GROOVY-382] - Cast to int[] fails at runtime
  • [GROOVY-383] - bad constructor in generating classes for 'loose' scripts
  • [GROOVY-384] - The inner class representing a closure has a bad constructor
  • [GROOVY-385] - numerous primitives declaration errors in a loose function
  • [GROOVY-386] - continue in switch generates verificartion error
  • [GROOVY-387] - can't return from void method
  • [GROOVY-388] - method signature for == operator overload
  • [GROOVY-389] - cant use closures inside case statement
  • [GROOVY-39] - println("Hello World") throws Error
  • [GROOVY-390] - Closure cannot be used to invoke recursive function
  • [GROOVY-391] - Mnemonics don't work correctly in SwingBuilder
  • [GROOVY-395] - GroovyClassLoader fails to resolve .groovy files in classpath on win32
  • [GROOVY-396] - closure can't see script method
  • [GROOVY-40] - Allow 'class' to be used as a special variable inside expressions or as a named parameter
  • [GROOVY-401] - Errors in classes are sometimes hidden
  • [GROOVY-404] - MissingMethodException for rightShift on Integer
  • [GROOVY-405] - Can't generate bytecode for void return
  • [GROOVY-406] - Autoboxing not working for method parameter
  • [GROOVY-407] - Static member variable causing ClassFormatError
  • [GROOVY-408] - Pattern causing java.lang.VerifyError
  • [GROOVY-41] - Logical && expressions are not currently handled properly by the parser
  • [GROOVY-410] - GroovyShell.evaluate
  • [GROOVY-412] - Inconsistent stack height with "if" in closure
  • [GROOVY-413] - groovy shell script error messages when no args
  • [GROOVY-414] - Class names are not case sensitive on Mac OS X
  • [GROOVY-419] - Error when parsing strings
  • [GROOVY-42] - ! expressions not working
  • [GROOVY-420] - IncompatibleClassChangeError when accessing an undefined variable
  • [GROOVY-421] - groovyc doesn't check final method / class overrides
  • [GROOVY-422] - groovyc doesn't check that inherited abstract methods are implemented
  • [GROOVY-424] - locals in static method clashing with class properties
  • [GROOVY-425] - groovy does not completely support evaluating files
  • [GROOVY-426] - Infinite loop for n = []; println n[-1];
  • [GROOVY-427] - Can't execute a command line where arguments have spaces in them
  • [GROOVY-429] - groovy doesn't load ~/.groovy/lib
  • [GROOVY-43] - a + b + c expressions don't work
  • [GROOVY-430] - problem with session in Groovlets
  • [GROOVY-432] - Groovy Reflection problem for unknown classes
  • [GROOVY-433] - Null Object
  • [GROOVY-434] - parser will hang on the attached code
  • [GROOVY-435] - Can't have private constructors
  • [GROOVY-44] - 5.times { ... } fails. Calling methods on numbers with closures seems bonked
  • [GROOVY-441] - Expression in string is expanded at the begin of the string, not where it is defined
  • [GROOVY-447] - clear variable declarationi is need
  • [GROOVY-449] - classes cant access superclass fields
  • [GROOVY-45] - Referring to a class name in Groovy to another Groovy class thats not yet been turned into bytecode causes a compile error
  • [GROOVY-451] - num.times fails in specific situation
  • [GROOVY-452] - NPE in GroovyClassLoader
  • [GROOVY-453] - Use of "int" causes method signature crash
  • [GROOVY-454] - Ambiguous method overloading
  • [GROOVY-458] - should be able to invoke a method called property
  • [GROOVY-459] - DomBuilder can't create elements with just text
  • [GROOVY-460] - improper parsing behavior or error message
  • [GROOVY-461] - Compiler does not inforce the Java rules for definite assignment before use
  • [GROOVY-462] - ClassGenerator patches for a few VerifyErrors, primitive uses as parameters and local vars
  • [GROOVY-464] - provide access to public fields if they overload properties
  • [GROOVY-465] - primitive type casting doesn't work
  • [GROOVY-466] - The print statement overrides parent print methods
  • [GROOVY-467] - method invocation should be able to choose between int and float types
  • [GROOVY-468] - Type names are sometimes in .class file syntax, rather than source syntax.
  • [GROOVY-47] - Allow # as a first character of a line to mean a comment like shell scripts
  • [GROOVY-470] - broken link to CVS file
  • [GROOVY-472] - interactive shell can't handle strings which span multiple lines
  • [GROOVY-473] - creating primitive type arrays don't actually create primitive type arrays
  • [GROOVY-475] - BSF integration doesn't use BSFManager's class loader
  • [GROOVY-477] - ClassFormatError with Groovy Beta 5 and JDK 1.5 Beta 1
  • [GROOVY-48] - Bugs in the "text ${foo} text" parser
  • [GROOVY-480] - num.times fails in specific situation (incorrectly removed)
  • [GROOVY-484] - parser error with static initializer
  • [GROOVY-485] - Method closures don't work for static methods
  • [GROOVY-487] - "in" property of AntBuilder causes error
  • [GROOVY-488] - this[offset] is not considered modifiable
  • [GROOVY-490] - Groovy shell scripts can't find environment if invoked via a symlink
  • [GROOVY-492] - Possible NPE with GroovyClassLoader#expandClassPath
  • [GROOVY-494] - closure syntax following function call syntax
  • [GROOVY-495] - 'if(condition) return' causes VerifyError
  • [GROOVY-499] - constructor can't invoke overloaded constructor
  • [GROOVY-50] - 'class' cannot be used as a property
  • [GROOVY-500] - Can't pass this in super()
  • [GROOVY-5012] - Can't have private constructors again
  • [GROOVY-504] - Fresh install doesn't run
  • [GROOVY-505] - dash in script filename
  • [GROOVY-506] - Invoker.asArray, does not function w/ Constructors with (String[]) params
  • [GROOVY-507] - Can not pass String[] to constructor
  • [GROOVY-508] - Node.depthFirst() and Node.breadthFirst ommit the root element
  • [GROOVY-509] - Infinite loop in StringLexer
  • [GROOVY-51] - script doesn't let you construct the class you are defining
  • [GROOVY-510] - a = b = 0 produces a Verify error
  • [GROOVY-511] - The delegate of an eclosing closure is not being used to resolve references
  • [GROOVY-512] - code generator fails to cast argument to "~" to string
  • [GROOVY-513] - comparison with Integer.MIN_VALUE behaves incorrectly
  • [GROOVY-514] - ServletResponse#setContentType needs to be called before ServletResponse#getWriter
  • [GROOVY-515] - static access vs. Class access (conflicts)
  • [GROOVY-516] - Groovy editor and builder do not work in post-M7
  • [GROOVY-517] - Groovy editor and builder do not work in post-M7
  • [GROOVY-52] - script doesn't let you println from a static method
  • [GROOVY-520] - Groovy cannot be compiled under JDK1.5
  • [GROOVY-521] - Boolean constants don't support ".class" like Numbers do.
  • [GROOVY-522] - groovy batch file doesn't work if -cp specified
  • [GROOVY-523] - ~/.groovy/lib doesn't work as advertised
  • [GROOVY-524] - groovy has major problems loading classes
  • [GROOVY-525] - after upack, files in bin aren't executable
  • [GROOVY-528] - says ambiguity where there is no ambiguity
  • [GROOVY-529] - property assignment using ["property"] doesn't work correctly
  • [GROOVY-530] - Cannot call static method without fully qualifying class name
  • [GROOVY-531] - Strange MissingMethodException
  • [GROOVY-532] - += gives me "Unable to pop operand off"
  • [GROOVY-533] - Dangling meta character
  • [GROOVY-534] - Nested closures - variable scope problem
  • [GROOVY-535] - Parse error - 100% CPU
  • [GROOVY-536] - IncompatibleClassChange error with the file below
  • [GROOVY-537] - evaluate and class lookup
  • [GROOVY-539] - wrong classworlds version in scripts
  • [GROOVY-540] - Cannot catch imported exception
  • [GROOVY-541] - flow block inside methods causes verification errors
  • [GROOVY-543] - Incorrect exception MissingMethodException when closure references an uninitialized variable
  • [GROOVY-545] - Ambiguous method exception when calling Math.min(), even with casts
  • [GROOVY-546] - Global variables can not be accessed from many places
  • [GROOVY-547] - GStringTemplate executes embadded Groovy code too early
  • [GROOVY-549] - VerifyError when return in catch lbock
  • [GROOVY-550] - General error during class generation: Should not be called.
  • [GROOVY-552] - Double-quoted string containing just a backslash
  • [GROOVY-553] - CLASSWORLDS_VERSION is old
  • [GROOVY-556] - API does not support providing a custom metaclass for a Class
  • [GROOVY-557] - Windows scripts have wrong CLASSWORLDS_VERSION (1.0-rc2 instead of 1.0)
  • [GROOVY-558] - AnyClass.class and AnyClass.getClass() always return java.lang.Class.
  • [GROOVY-559] - Can't find constractor with an array parameter
  • [GROOVY-561] - NullPointerException in Invodker.toTypeString if arg is null
  • [GROOVY-562] - String "\\r" not evaluated properly
  • [GROOVY-564] - Verify error with polymorphic functions
  • [GROOVY-566] - throwing exception within each() closure gets changed to InvokerInvocationException
  • [GROOVY-567] - Groovy shell swoallows exceptions
  • [GROOVY-575] - A closure created in a closure does not have access to properties on the parent closure's delegate
  • [GROOVY-578] - Groovyshell.runMainOrTestOrRunnable
  • [GROOVY-579] - undefined variables behave differently in scripts and classes
  • [GROOVY-580] - setter method for mixed case properties is not found
  • [GROOVY-584] - Exception passing array into Closure
  • [GROOVY-585] - groovy can't handle public static nested classes
  • [GROOVY-586] - Groovy seems to have trouble with jrockit-j2sdk1.4.2_04-linux
  • [GROOVY-59] - support heredocs to allow text to be easily marked up using <<token ... token
  • [GROOVY-593] - XMLBuilder makes broken XML if data contains &
  • [GROOVY-598] - array of object in class
  • [GROOVY-599] - GString not coerced for static methods
  • [GROOVY-60] - Verify error when you test a list property and set it then use it
  • [GROOVY-600] - java1.5 cant run groovyConsole on Windows XP Pro
  • [GROOVY-61] - full regex support
  • [GROOVY-613] - global properties referenced from closure that are declared later cause early NullPointer
  • [GROOVY-615] - 100% CPU during compile: [ buggy string" ]
  • [GROOVY-616] - references to ".class" do not work if full qualified class name is used - will always evaluate to "java.lang.Class.class"
  • [GROOVY-617] - Parser goes to the endless loop on unterminated string
  • [GROOVY-620] - not finding local variable in method
  • [GROOVY-621] - Clarification for CodeSource to allow compilation against 1.5
  • [GROOVY-627] - Groovy not compatible with asm-1.5
  • [GROOVY-628] - -cp option don't works on Windows's groovy.bat
  • [GROOVY-629] - -cp option don't works on Windows's groovy.bat
  • [GROOVY-632] - Groovy editor doesn't highlight multi-line strings
  • [GROOVY-634] - variable assignment within nested closures doesn't work
  • [GROOVY-64] - using a primitive type name causes OutOfMemoryException
  • [GROOVY-641] - The groovyConsole command doesnt work
  • [GROOVY-642] - aStringBuffer + anObject gives runtime error
  • [GROOVY-643] - HOME not quoted in groovysh
  • [GROOVY-649] - Seriously Large Memory Leak (reproducable)
  • [GROOVY-651] - fix build system so that the groovyConsole works again
  • [GROOVY-652] - package name contained "def" groovyc report error.
  • [GROOVY-654] - eta Characters \t \n \r in String Literal
  • [GROOVY-655] - Error in generating meta characters \t \n \r in string literal
  • [GROOVY-656] - Can't pass negative arguments to script (because of the minus sign)
  • [GROOVY-657] - Unable to invoke method on BuilderClassSupport subclasses
  • [GROOVY-658] - Problems with XP install
  • [GROOVY-659] - [PATCH] Fix behavior of scripts when invoked via symlink
  • [GROOVY-66] - remove the x.print() or y.println() from all web pages
  • [GROOVY-660] - Multi-threaded groovy: get java.lang.LinkageError: duplicate class definition
  • [GROOVY-661] - unexpected behavior with adding list to a number
  • [GROOVY-664] - reference inner java classes
  • [GROOVY-665] - CVS at 200411210956
  • [GROOVY-666] - JDK 1.5 problem
  • [GROOVY-669] - groovyc creates class files that does not verify (java.lang.VerifyError)
  • [GROOVY-67] - Null property causes OutOfMemoryError in groovyc
  • [GROOVY-670] - embedded: when using alternative classloader code parsing succeeds but evaluation fails
  • [GROOVY-671] - Groovy / Java Mismatch with simple class
  • [GROOVY-672] - grovvyConsole doesn't seems to be working with the release "groovy-1.0-beta-7.zip"
  • [GROOVY-673] - incorrect scoping in closures and blocks
  • [GROOVY-674] - println in closure has problem
  • [GROOVY-675] - multiple backslashes and backslash plus dollarsign are not correctly interpreted
  • [GROOVY-676] - AntBuilder doesn't call Tasks nested in TaskContainers properly
  • [GROOVY-68] - Inconsistent Stack Height
  • [GROOVY-681] - MissingPropertyException when trying to call a static method
  • [GROOVY-683] - Can't assign to native types in Groovy Beans
  • [GROOVY-686] - GroovyServlet will crash if parameters are passed in HTTP Request
  • [GROOVY-691] - Duplicate class error with listen mode
  • [GROOVY-696] - Groovy misses first exception
  • [GROOVY-698] - Here-docs should allow spaces after initial token (and better errors when unterminated)
  • [GROOVY-70] - ranges should support backwards iteration too
  • [GROOVY-700] - Escaping Slash
  • [GROOVY-703] - Check null pointer condition in method convertToByteArray
  • [GROOVY-704] - Primitive function arguments cause VerifyError
  • [GROOVY-705] - Syntax error in correct code
  • [GROOVY-707] - Integer division operator (backslash \) removed - conflicts with unicode escape sequence
  • [GROOVY-708] - Misleading error message
  • [GROOVY-709] - println error reporting not correct
  • [GROOVY-711] - Antlr parser bugs in New Groovy
  • [GROOVY-712] - Closures do not localize variables.
  • [GROOVY-713] - Method Overload with Primitive Array Parameters
  • [GROOVY-714] - Which method should be called in this case (primitive array vs its wrapper array)?
  • [GROOVY-717] - method call for method with same name as a field causes wierdness
  • [GROOVY-721] - respect null values when unboxing arrays
  • [GROOVY-722] - don't use boxing for arrays created when calling methods
  • [GROOVY-723] - MethodClosure doesn't support variable arguments method
  • [GROOVY-724] - class cast exception when using empty boolean arrays
  • [GROOVY-726] - no line number in exception stack trace
  • [GROOVY-727] - Parsing Error for the Multiplication Operator(*) in New Groovy
  • [GROOVY-728] - Error declaring variables in scripts
  • [GROOVY-73] - Wrong return type in function
  • [GROOVY-731] - Misleading error message when accessing non-static members from static functions
  • [GROOVY-732] - Problem accessing static fields
  • [GROOVY-733] - NullpointerException instead of MissingMethodException
  • [GROOVY-734] - General error during class generation: java.lang.NullPointerException
  • [GROOVY-735] - Dynamic and static typing
  • [GROOVY-736] - Class constructor problem
  • [GROOVY-738] - Parsing Error for Bitwise Operations in NewGroovy
  • [GROOVY-739] - Handling the Meta Character \b in String or GString
  • [GROOVY-74] - method invocation passing a String[] seems to barf when there is more than one element
  • [GROOVY-740] - Closures can't modify variables more than 1 lexical level up
  • [GROOVY-743] - Accessing private field gives MissingPropertyException, not
  • [GROOVY-75] - overloading getter methods doesn't seem to work
  • [GROOVY-752] - java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V
  • [GROOVY-755] - Allow # as first character of a Groovy script
  • [GROOVY-76] - Broken GroovyMock test case
  • [GROOVY-766] - Infinite Loop if the Last Line contains Single Line Comment without Carriage Return.
  • [GROOVY-767] - groovysh does not work.
  • [GROOVY-768] - divide 0 by any other number => groovy soils its breeches
  • [GROOVY-769] - Parser error when Map key contains period in JSR mode
  • [GROOVY-770] - In some cases minus operator does not work with lists
  • [GROOVY-772] - implicit 'it' parameter created wrongly
  • [GROOVY-778] - wrong CHECKCAST in bytecode for native arrays
  • [GROOVY-779] - Type Checking Bypassed in Default Constructor
  • [GROOVY-780] - MarkupBuilder works not the same as NodeBuilder
  • [GROOVY-788] - [1,2,] or ["a":1,] should be supported
  • [GROOVY-800] - VerifyError with synchronized
  • [GROOVY-801] - Incorrect error message for missing class
  • [GROOVY-802] - GroovyClassLoader.parseClass(File) Not Closing Streams
  • [GROOVY-803] - unterminated strings make the parser go OutOfMemoryException
  • [GROOVY-804] - Stacktrace when upgrading to #3281
  • [GROOVY-805] - Method calls on a separate line should be supported
  • [GROOVY-806] - NPE for import statement
  • [GROOVY-808] - Does not like untyped variables in classes
  • [GROOVY-813] - no assignments to literals
  • [GROOVY-815] - Include of groovlets does not work
  • [GROOVY-818] - expecting anything but ''\n''; got it anyway
  • [GROOVY-82] - GroovySwing examples fail to execute
  • [GROOVY-820] - GroovyMain command line switch -i fails when no backup extension is specified
  • [GROOVY-821] - Groovy fails to set field without qualifying with "this"
  • [GROOVY-822] - Running "groovy -version" does not print the Groovy version
  • [GROOVY-823] - Running "groovy -version" does not print the Groovy version
  • [GROOVY-824] - AntBuilder doesn't handle ConditionTask
  • [GROOVY-825] - Iterating through groovy binding variables in a script results in java.util.ConcurrentModificationException
  • [GROOVY-826] - the new parser does not seem to recognize the new function pointer assignment for a particular case
  • [GROOVY-83] - Syntax error in quickStart.html page
  • [GROOVY-830] - Scope bug in using the use directive
  • [GROOVY-831] - @Property causes ClassCastException in constructor
  • [GROOVY-833] - Groovy-core compile errors in eclipse with 5.0 compiler enabled
  • [GROOVY-834] - Many, many compiler warnings (Eclipse 3.1 M6)
  • [GROOVY-835] - GroovyClassloader doesn't use CompilerConfiguration for classpath
  • [GROOVY-841] - Array literals not parsed correctly
  • [GROOVY-843] - Compile error in GString when there is a "." in Map key
  • [GROOVY-844] - "throws" found when expecting type: SLIST at line ...
  • [GROOVY-846] - The groovyc Ant task doesn't work in Maven
  • [GROOVY-847] - Correct documentation to point to
  • [GROOVY-850] - Infinite looping of closures with at least two patameters
  • [GROOVY-851] - groovy doesn't support spaces in JAVA_HOME
  • [GROOVY-852] - Servlets
  • [GROOVY-853] - Creating class with run() method in groovysh can produce error
  • [GROOVY-857] - support for abstract classes
  • [GROOVY-858] - interfaces in groovy
  • [GROOVY-859] - Fail to call Java non-latin named method from Groovy
  • [GROOVY-86] - support -1
  • [GROOVY-861] - Expclit Groovy Types or embedding in Tomcat
  • [GROOVY-863] - Interfaces and abstract classes definitions require semi-colons
  • [GROOVY-866] - negative number can be used as key for map
  • [GROOVY-868] - Cannot call existing Java 1.5 varargs functions
  • [GROOVY-869] - Build failed with groovyc task but no error message reported
  • [GROOVY-870] - groovy.bat doesn't execute scripts with spaces in their path
  • [GROOVY-871] - allow line ends after label declaration
  • [GROOVY-872] - GregorianCalendar and groovysh not printing or throwing exception
  • [GROOVY-874] - With the command "groovy <filename>", a FileNotFoundException has been expected, but a NullPointException is generated.
  • [GROOVY-877] - Groovy gives an incorrect error message when it fails to compile a dependent class
  • [GROOVY-88] - BSFManager not available to GroovyShell when using GroovyEngine.exec()
  • [GROOVY-880] - NullPointerException at groovy.ui.GroovyMain.run(GroovyMain.java:267)
  • [GROOVY-881] - can't call this(string) in constructor
  • [GROOVY-883] - when passing an list of gstrings to Java, it will never be treated as a String[]
  • [GROOVY-886] - each(){} throws NPE when called on a Java Object[], that contains String[]'s with null entries
  • [GROOVY-887] - JavaDoc APIs not uploaded on the website
  • [GROOVY-889] - Under JDK 1.5 the registration of static meta method seems to result in doubled entries of the instance meta methods
  • [GROOVY-89] - First example on first page of site is broken !
  • [GROOVY-893] - left paren must be on same line as throw exception declaration
  • [GROOVY-896] - Problem when accessing arrays of arrays from groovy
  • [GROOVY-897] - JSRVariableScopeCodeVisitor doesn't like String[]
  • [GROOVY-898] - NPE in ErrorCollector / Null CompilerConfiguration?!
  • [GROOVY-90] - variables are not preserved across commands in the shell
  • [GROOVY-900] - + not concatenating
  • [GROOVY-901] - SimpleTemplateEngine error :"Caught: Script1.groovy: 1: expecting anything but ''\n''; got it anyway @ line"
  • [GROOVY-902] - GroovyClassLoader is unable to load dependent scripts that have an absolute path containing whitespaces
  • [GROOVY-903] - 'groovy' is unable to run scripts that have an absolute path containing whitespaces
  • [GROOVY-907] - Empty Range (0..<0) broken
  • [GROOVY-91] - Problem calling Java methods that take boolean arguments
  • [GROOVY-913] - Windows Batch File Fails to Pass More than Eight Arguments
  • [GROOVY-915] - import * doesn't import inner classes
  • [GROOVY-916] - Confusing error message when creating inner class without outer instance
  • [GROOVY-918] - Cannot set outside variables from within nested closures
  • [GROOVY-922] - Coercion in Method lookup should take generic ctors into account
  • [GROOVY-923] - Default access level of members should be 'protected' but is private
  • [GROOVY-927] - IncompatibleClassChangeError when implementing a class instead of extending it
  • [GROOVY-928] - No line numbers/source file for exceptions
  • [GROOVY-93] - Class type not honored
  • [GROOVY-930] - Iterator.next() returning Object[] causes NullPointerException.
  • [GROOVY-931] - Closure problem in JSR-02 which was fine under JSR-01
  • [GROOVY-932] - Missing line/col information
  • [GROOVY-934] - Stacked cases with switch
  • [GROOVY-935] - Explicit import needed to call static method
  • [GROOVY-937] - Can't access private field from closure
  • [GROOVY-94] - Impossible to compare Double or Float with Integer or Byte
  • [GROOVY-941] - groovyj plugin does not report the file that compilation errors occur within and you can't click on them to jump to the line
  • [GROOVY-942] - Empty Range (0..<0) broken in List.getAt(Range)
  • [GROOVY-947] - VerifyError with Runnable.run and synchronized wait()-notify
  • [GROOVY-948] - GroovyJ breaks the "Colors and Fonts" panel in global settings
  • [GROOVY-949] - Cannot access private instance variable from static context
  • [GROOVY-95] - Evaluation fails after the first subscript operator
  • [GROOVY-956] - Methods are wrongly picked when the arguments are interfaces
  • [GROOVY-958] - List + List => Wrong Result
  • [GROOVY-959] - About the number of arguments in calling methods
  • [GROOVY-96] - Property access doesn't always work on Java objects
  • [GROOVY-961] - Groovyc ant task (and eclipse groovy plugin) reports compile error on declaring type on lhs
  • [GROOVY-962] - groovy -n -p not working when reading from stdin
  • [GROOVY-964] - Can't access dynamicly defined properties from scriptlets in Groovy scriptlets in Ant build files
  • [GROOVY-966] - StringBuffer getAt throws RuntimeError: Ambigous Method overloading
  • [GROOVY-968] - list.putAt(EmptyRange) doesn't obey position
  • [GROOVY-97] - fix toString() equals() and hashCode() for listener dynamic proxies
  • [GROOVY-970] - error using read(char[ ] array) of reader class
  • [GROOVY-979] - ('00'..'10').each{println it} stalls VM
  • [GROOVY-98] - use of an undefined variable should throw an exception
  • [GROOVY-980] - SimpleTemplateEngine fails when enclose expression dosn't immediately evaluate to a String
  • [GROOVY-984] - ClassCastException calling super(String) of java.lang.Exception
  • [GROOVY-986] - Bugs of Range with BigDecimal boundaries
  • [GROOVY-987] - Groovy Beans Now Have More Flavor
  • [GROOVY-988] - Java syntax for creating an array does not work
  • [GROOVY-989] - Closures and the handling of variables
  • [GROOVY-99] - modify variables outside closures, then recalling the closure does not use new value
  • [GROOVY-990] - Closure access to outer block variables - inconsistant behavior
  • [GROOVY-991] - Can't find/access AST Node typeorg.codehaus.groovy.antlr.GroovySourceAST
  • [GROOVY-992] - Can not set property from sub class
  • [GROOVY-993] - confused by the def used in closure
  • [GROOVY-994] - PARSER BUG: Tried to configure ArgumentListExpression with null Node
  • [GROOVY-995] - wrong funtion is used
  • [GROOVY-996] - protected fields not visible in subclasses
  • [GROOVY-998] - GroovyJ: Error while opening ColorAndFontPanel in IDEA 5.0
  • [GROOVY-999] - Eclipse plugin does not compile groovy classes that rely on jar imports (patch included)

Improvement

  • [GROOVY-101] - Add equals(), hashCode(), and Comparable support to GString
  • [GROOVY-1010] - [patch] add parent() implement to XmlSlurper
  • [GROOVY-1027] - improved error messages
  • [GROOVY-1033] - gpath syntax for xml documents with namespaces
  • [GROOVY-1047] - Don't print the full file path in stack traces
  • [GROOVY-1060] - Exception "The variable name 'i' conflicts with the class name 'i'" even if no class "i" exists
  • [GROOVY-1062] - Error messages when a depended on class is not found are not very informative
  • [GROOVY-1075] - splitEachLine() wraps the result of the split in a (useless) single element list
  • [GROOVY-109] - Groovy shell doesn't support Cp850 encoding on windows
  • [GROOVY-1094] - Use "root.maven" classloader for GroovyShell
  • [GROOVY-1095] - Use "root.maven" classloader for GroovyShell
  • [GROOVY-1098] - Using the + operator to concatenate objects with a string does not call toString()
  • [GROOVY-1115] - let Lists coerce to Sets
  • [GROOVY-1119] - allow certain mehtods to be called on null
  • [GROOVY-1120] - allow dynamic method calls via obj."$methodname"
  • [GROOVY-1121] - provide File.size() and Matcher.size()
  • [GROOVY-1122] - rename 'eachLine' to 'each' for File, etc.
  • [GROOVY-1125] - provide intersect on Collections generally, not only on List
  • [GROOVY-1129] - de-/encodeBase64 should both use byte[] or Byte[]
  • [GROOVY-1134] - groovy.util.Node rename Methods to allow property-like access.
  • [GROOVY-1145] - Change the signature of GroovyResourceLoader.loadGroovyFile() to support URLs
  • [GROOVY-1147] - Workaround fix for checking mod time for file:// URL
  • [GROOVY-1152] - Allow calling quoted methods and GString interpolated methods
  • [GROOVY-1187] - Allow loading of groovy classes from GroovyScriptEngine, leveraging the reloading and caching support.
  • [GROOVY-119] - support the creation of arrays of primitive types in groovy
  • [GROOVY-1196] - provide an AllTestSuite.java that collects Groovy tests and make them available as a test suite for easy running in the IDE
  • [GROOVY-1202] - provide a feature to declare TestCases as 'notYetImplemented' and thus expected to fail
  • [GROOVY-1223] - provide simplified support for using commons-cli in Groovy command-line scripts
  • [GROOVY-123] - Block treated as closure
  • [GROOVY-1236] - make unique() supporting Closures analagous to sort()
  • [GROOVY-1247] - GroovyTestCase.shouldFail{} should return the message of the enclosed Exception
  • [GROOVY-125] - upto() should be inclusive, just like .. now is
  • [GROOVY-1266] - Groovy Ant task is too chatty
  • [GROOVY-1275] - Removing @Property Syntax
  • [GROOVY-1289] - Create new methods in GroovyMBean to get MbeanInfo object such as Attributes and Operations of an MBean
  • [GROOVY-1290] - Provides a sensible default value for join()
  • [GROOVY-1292] - Improve the provision of toXXX methods in DGM
  • [GROOVY-1293] - Add toXXX methiods to GPath expressions for objects produced by XMLSlurper
  • [GROOVY-1301] - Refactor GCL to allow greater extensibility by sub classes
  • [GROOVY-1302] - Provide access to auto-generated column values when using INSERT through groovy.sql.Sql
  • [GROOVY-1318] - Add compiler warning for imported classes that can no be found on the classpath
  • [GROOVY-132] - Comparison operators throw NPE, contrary to docs
  • [GROOVY-1320] - add groupBy() method to Lists
  • [GROOVY-1329] - handle null more gracefully in switch/case
  • [GROOVY-1359] - Ability to import custom user class an use it in the body of template
  • [GROOVY-1362] - leftShift and append on File only work with Strings
  • [GROOVY-1370] - Improve error messages on failed compilation
  • [GROOVY-1371] - Add ability to specify parent class loader for InteractiveShell
  • [GROOVY-1372] - Add ability to specify parent class loader for Groovy Console
  • [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-1420] - disallow top-level assignments in "assert" analogous to "if"
  • [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-147] - refactor GroovyShell.evaluate() to be simpler to use
  • [GROOVY-1482] - Sql#firstRow throws IndexOutOfBoundsException if no rows are found (Patch included)
  • [GROOVY-1490] - Groovy MarkupBuilder generates single quoted attributes
  • [GROOVY-1494] - Add links to classes to Groovy JDK documentation page for quick navigation
  • [GROOVY-150] - Streamline exception hierarchy under SyntaxException
  • [GROOVY-1529] - Allow conversion from Map to interface
  • [GROOVY-1537] - Upgrade dependencies
  • [GROOVY-154] - Improve Groovy methods' Javadoc comments
  • [GROOVY-1559] - MissingMethodException should report whether the missing method is static or not
  • [GROOVY-156] - support next/previous, plus/minus and ranges of java.util.Date
  • [GROOVY-1568] - Improve error message when attempting to use inner classes
  • [GROOVY-157] - support map.each { key, value | ... } notation for maps
  • [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-161] - Refactor some methods of GroovyShell
  • [GROOVY-169] - Readline support in groovysh
  • [GROOVY-170] - statically typed variables should generate compile errors if invalid methods/properties are used
  • [GROOVY-18] - Replace := with == for equality testing and use === for identity
  • [GROOVY-180] - bug in DocGenerator.groovy
  • [GROOVY-1836] - Add newInstance method of java.lang.Class that takes a map like the default constructor
  • [GROOVY-189] - Groovysh double return should be replaced
  • [GROOVY-190] - Add way to configure classpath used by groovysh
  • [GROOVY-192] - AntBuilder should be able to access properties defined outside of its closures
  • [GROOVY-201] - new Groovy stream methods
  • [GROOVY-207] - rename queryEach to be eachRow for Groovy SQL
  • [GROOVY-208] - new readText() and maybe writeText() methods on File, InputStream, Reader
  • [GROOVY-215] - change the 'dc' build target so that it redeploys a snapshot binary distro
  • [GROOVY-218] - Support JDK 1.5 style for loop with optional type and use of ':' instead of 'in'
  • [GROOVY-219] - support currying when calling closures with too few parameters
  • [GROOVY-221] - Support """ as an alternative to here-docs
  • [GROOVY-222] - add a grep method on Object to perform a filter using a case expression (regex, range, class etc)
  • [GROOVY-228] - allow script base class to be specified on a GroovyShell or GroovyClassLoader
  • [GROOVY-229] - allow ~/.groovy/lib to provide libraries used for groovy shell & scripts
  • [GROOVY-231] - resolve the SomeClass.class versus SomeClass issue
  • [GROOVY-235] - TemplateEngine
  • [GROOVY-236] - use add/subtract operator overloading methods rather than plus/minus
  • [GROOVY-242] - rename map methods to collect to be more consistent
  • [GROOVY-248] - Groovy String's toString() method always returns the same string
  • [GROOVY-254] - range precedence should be fixed
  • [GROOVY-256] - Numeric literals: default BigDecimal for decimals, support suffixes
  • [GROOVY-270] - should Groovy allow constants of the form 1L?
  • [GROOVY-2724] - CLONE -make eachLine,eachByte,eachFile take inject like each
  • [GROOVY-281] - Improve error message when a matching constructor cannot be found at runtime
  • [GROOVY-283] - Add -encoding parameter when parsing scripts/classes
  • [GROOVY-290] - Get rid of GROOVY_HOME
  • [GROOVY-291] - add new negate() methods to Number
  • [GROOVY-297] - Get the builder to only build changed groovy files
  • [GROOVY-307] - Improve addition of groovy runtime support
  • [GROOVY-312] - Improve Groovy markup to support all XML constructs.
  • [GROOVY-323] - Compilation speedup
  • [GROOVY-328] - Create action without parent
  • [GROOVY-329] - Automatic conversion of acceleratorKey in SwingBuilder
  • [GROOVY-333] - Allow for custom widget types using SwingBuilder
  • [GROOVY-338] - Error message for out of scope variables
  • [GROOVY-345] - Expando did not use native property
  • [GROOVY-352] - auto coerce List to Object[]
  • [GROOVY-36] - Create some javadoc of all the new methods added to the JDK
  • [GROOVY-371] - support mixed named parameters and regular parameters
  • [GROOVY-375] - classloader enhancements to MetaClass
  • [GROOVY-394] - super not found
  • [GROOVY-398] - add Map.synchronized(), List.synchronized() methods
  • [GROOVY-403] - allow easier recursive file processing with File.eachFileRecurse { ... }
  • [GROOVY-411] - here-doc
  • [GROOVY-418] - simple placeholder format in GString
  • [GROOVY-436] - groovy should have an antlib descriptor for groovyc and possibly wiki2html
  • [GROOVY-437] - Support bitwise operators
  • [GROOVY-438] - String objects could use left-pad and right-pad methods
  • [GROOVY-448] - Improved Groovy Console
  • [GROOVY-450] - Iterating with eachWithIndex() and reverseEachWithIndex()
  • [GROOVY-46] - Parser to support method declarations in scripts
  • [GROOVY-469] - new helper methods to convert Strings into common types (Integer, Long, Float, Double etc)
  • [GROOVY-478] - Build includes .groovy files in the jar archive
  • [GROOVY-479] - Tidy up Closure.java
  • [GROOVY-483] - Reduce Groovy build time on damagecontrol/beaver
  • [GROOVY-493] - Full stored procedure for groovy.sql.Sql
  • [GROOVY-498] - Use static method dispatch when possible if types are statically declared
  • [GROOVY-501] - SwingBuilder - add more components to support ButtonDemo
  • [GROOVY-527] - make eachLine,eachByte,eachFile take inject like each
  • [GROOVY-542] - bitwise "or", "and" and "xor"
  • [GROOVY-55] - notes
  • [GROOVY-555] - Ability to run unit tests with groovy
  • [GROOVY-56] - notes
  • [GROOVY-573] - remove runtime dependency on asm-util
  • [GROOVY-58] - MetaClass and MetaClassRegistry should be refactored so that all methods are registered in MetaClass
  • [GROOVY-581] - SwingBuilder does not support all stanard Swing Widgets
  • [GROOVY-587] - Added a -v/--version command line argument to the "groovy" command line program
  • [GROOVY-588] - Call myBean.myClosure() as a method call
  • [GROOVY-597] - Allow for( foo in bar) syntax for enumerations
  • [GROOVY-623] - Implement Expected Collection#asImmutable(): Collection
  • [GROOVY-633] - Initialize "primitive" type to default values
  • [GROOVY-648] - Fall through to method closures call from the binding of a script
  • [GROOVY-65] - parser to handle ; and newlines better which could help reduce ambiguity
  • [GROOVY-662] - Extending HashMap and adding JavaBean properties confuses Groovy
  • [GROOVY-677] - Call statically typed method first before anything else
  • [GROOVY-678] - swing 2d example code cleaning
  • [GROOVY-680] - the tarball does not include +x permissions on the bin/* scripts
  • [GROOVY-693] - Have only one range operator
  • [GROOVY-695] - GroovyServlet web.xml mapping dependency removed and various refactorings
  • [GROOVY-699] - GroovyServlet: generate binary content
  • [GROOVY-701] - log error/throw exception in Builder
  • [GROOVY-706] - version of sort that sorts relative to value returned by closure
  • [GROOVY-710] - Removed a needless IOException from GroovyShell
  • [GROOVY-718] - improve error reporting for throwables
  • [GROOVY-72] - allow named parameters to be used to create beans. new SomeBean(foo:123, bar:true, xyz:'hello)
  • [GROOVY-730] - Add the "oneRow" method to the groovy.sql.Sql class
  • [GROOVY-745] - more readabel error message when script name is equal to an variabel name
  • [GROOVY-746] - [PATCH] use equals to compare strings
  • [GROOVY-748] - [PATCH] make sure files are closed, even on exceptions
  • [GROOVY-771] - Lexer should return Comments and Whitespaces when demanded
  • [GROOVY-773] - migration tool to help to migrate automatically from old groovy to new groovy
  • [GROOVY-785] - Create a jar with its own namespace for dependencies
  • [GROOVY-79] - GroovyClassLoader should use the generated classes cache
  • [GROOVY-790] - List operations minus and plus not symmetrical
  • [GROOVY-791] - implement Number.downto()
  • [GROOVY-792] - Allow stepping backwards with Number.step(end, with)
  • [GROOVY-812] - Strings should evaluate in asBool() like in Java
  • [GROOVY-836] - GStringTemplateEngine breaks on multi-line templates
  • [GROOVY-85] - Allow single statement without {} with if, for, while
  • [GROOVY-862] - Declared variables in scripts shouldn't be added to the binding
  • [GROOVY-875] - The Expando thing should be able to print the property map
  • [GROOVY-876] - support closure with 2 params in default Method collect(Map, Collection, Closure)
  • [GROOVY-884] - Improve Error Message when using the unsupported Multi-Dim Arrays
  • [GROOVY-911] - eachFile* and eachDir methods should report useful errors
  • [GROOVY-92] - Groovy Strings don't support +=
  • [GROOVY-920] - provide size() on StringBuffer
  • [GROOVY-921] - use maps analagous to lists in implicit ctors on 'as' enforced coercion
  • [GROOVY-924] - implement list.putAt(Range) to work like list.putAt(splice)
  • [GROOVY-925] - map.findAll() should return a subMap rather than a list of HashMap Entries
  • [GROOVY-926] - One-line integration with Java for the simplest cases
  • [GROOVY-940] - factor out groovy.util.XmlTemplateEngine.XmlPrinter as stand-alone class
  • [GROOVY-943] - provide putAt(Range) on StringBuffer
  • [GROOVY-945] - keep StringBuffer << closed under its type and make String << return StringBuffer
  • [GROOVY-946] - support sleep(seconds) as static method on Object
  • [GROOVY-955] - Improvement to permissions handling.
  • [GROOVY-957] - Overriding Object methods using "field" closure methods on Expando
  • [GROOVY-967] - remove PropertyValue from Object.allProperties() and eachProperty{}, refactor methods to use a Map
  • [GROOVY-976] - allow Groovlets to map any url to any resource
  • [GROOVY-978] - Accessing match groups from the closure called by String.replaceAll(regex, closure)
  • [GROOVY-983] - About the string representations of maps, lists, and arrays
  • [GROOVY-997] - GroovyJ should allow the compilation of individual Groovy scripts

New Feature

  • [GROOVY-1040] - support namespaced (QName) based navigations in the Node XML model.
  • [GROOVY-1070] - Add antlib support to Groovy ant support
  • [GROOVY-1093] - Ant Build Scripts
  • [GROOVY-1135] - Provide a GroovyLogTestCase that allows running tests under a certain log level and spoof that log
  • [GROOVY-1154] - Implement output << input with streams
  • [GROOVY-1166] - allow methods taking a parameter of an interface-with-one-methods to auto-coerce closures as parameters
  • [GROOVY-1200] - include appropriate JSP 2.0/EL implicit variables in Groovlets
  • [GROOVY-1204] - Procide a way of acessing all the attributes of a node in a GPath expression
  • [GROOVY-1214] - Support reloading of classes through GCL
  • [GROOVY-1246] - All-Groovy Mock support
  • [GROOVY-1248] - Class reloading of classes through GCL fails when a groovy class is a subclass of another groovy class
  • [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-149] - Add new Groovy methods
  • [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-1511] - Dynamic constructor invocation via Class object
  • [GROOVY-1565] - Add Run As... JUnit Test for GroovyTestCases in Eclipse plugin
  • [GROOVY-17] - Support @ as a new operation via BinaryOperation for accessing fields
  • [GROOVY-1764] - Support a groovy .classes directory (like that for a webpps directory
  • [GROOVY-225] - Allow \ to escape line ending
  • [GROOVY-23] - 'while' statement
  • [GROOVY-247] - support synchronized blocks
  • [GROOVY-258] - Provide support for running groovy based unit tests
  • [GROOVY-260] - Thread.start { } to execute a closure in a new thread
  • [GROOVY-261] - make comma optional when item the last thing on a line
  • [GROOVY-315] - Ability to create static groovy methods
  • [GROOVY-317] - Support bitwise OR in groovy.util.Bitwise
  • [GROOVY-332] - Support events using SwingBuilder
  • [GROOVY-360] - dynamic evaluation of expressionin Groovy scripts
  • [GROOVY-37] - Support instanceof as an operator in the language
  • [GROOVY-38] - parser to support interactive shell style parsing
  • [GROOVY-416] - support better stepwise iteration
  • [GROOVY-428] - Socket and ServerSocket groovy methods
  • [GROOVY-443] - Add base64 methods to String and byte[]
  • [GROOVY-463] - Allow default parameters on constructors
  • [GROOVY-476] - with keyword
  • [GROOVY-486] - add new URL.eachLine() method for working with URLs like File objects
  • [GROOVY-57] - expression x = 5 should return 5 to outer expressions so we can do x = y = 5
  • [GROOVY-572] - more groovy methods on InputStream. getText() to be like File / URL
  • [GROOVY-62] - implement switch statement
  • [GROOVY-646] - Fix InteractiveShell to allow embedded shells
  • [GROOVY-647] - Provide a binding command in the interactive shell
  • [GROOVY-692] - minv/maxv where closure computes value
  • [GROOVY-702] - GroovySQL should allow a closure to be registered to configure the JDBC statement before use
  • [GROOVY-744] - Allow groovy script extensions to be left off when running from command line
  • [GROOVY-793] - implement Collection.unique()
  • [GROOVY-797] - Groovy plugin should include a default runtime for scripts
  • [GROOVY-811] - empty Map should evaluate to false in asBool()
  • [GROOVY-832] - Support for eachObject, eachDir and runAfter (patch provided)
  • [GROOVY-84] - Allow import blah.* support
  • [GROOVY-840] - Provide a replaceAll() method on String to transform captured text through a closure
  • [GROOVY-845] - Groovy For Web Services: Easy web service consumption
  • [GROOVY-878] - Allow Closures to be a switch case by implementing the isCase() method
  • [GROOVY-879] - Provide a replacement for the dropped === operator, e.g. Object.is(Object)
  • [GROOVY-938] - Debug option for groovyc
  • [GROOVY-963] - provide StringBuffer.putAt(Range) analogous to List.putAt(Range)
  • [GROOVY-969] - Support the method inject() on arrays

Sub-task

  • [GROOVY-1387] - use central coercion mechnism when setting fields/proeprties

Task

Wish

  • [GROOVY-112] - support ... syntax for exclusive ranges?
  • [GROOVY-138] - The groovy script should automatically compile any dependent groovy scripts
  • [GROOVY-1409] - remove old closure syntax
  • [GROOVY-173] - provide security sandbox for executing scripts
  • [GROOVY-186] - Runtime addition or overriding of methods
  • [GROOVY-187] - cleaner alternative to using static void main()
  • [GROOVY-198] - it would be nice if conditional clauses could be coerced to a boolean
  • [GROOVY-205] - Fix warnings
  • [GROOVY-26] - Refactor the parser so that it can be used to parse command lines interactively
  • [GROOVY-29] - Refactor the MetaClass to use an Object[] rather than Object for arguments?
  • [GROOVY-30] - Add super and class as new static & instance variables
  • [GROOVY-31] - Add MetaClass.getMethodClosure to allow analysis of 'does understand method'
  • [GROOVY-32] - Support operators +=, -=, ++, --, *=, /= etc
  • [GROOVY-33] - improve semantic validator to catch common compile errors
  • [GROOVY-367] - Consider with() block/statement for "importing" methods into a namespace
  • [GROOVY-415] - Please deploy groovy-xmlrpc on dist.codehaus.org
  • [GROOVY-49] - Support method invocation with closure syntax sugar for constructor calls
  • [GROOVY-518] - array toString()
  • [GROOVY-53] - Support cardinality syntax (*, !, +, ?) like UML, DTDs or Xen
  • [GROOVY-63] - support JSR 45?
  • [GROOVY-77] - upgrade to latest greatest ASM release
  • [GROOVY-78] - create a single uber-jar with all the stuff you need to run groovy
  • [GROOVY-782] - Provide a xml printer to print Node as xml format
  • [GROOVY-80] - Add neater python style import statements
  • [GROOVY-81] - groovlets improvements - support cross-script dependencies