Changelog for Groovy 1.1.0-unreleased

Bug

  • [GROOVY-1005] - The javadoc documentation in class org.codehaus.groovy.ant.Groovyc states wrong name for an attribute
  • [GROOVY-1019] - Ant Task Not Using Classpath
  • [GROOVY-1041] - No message for compilation errors in other files
  • [GROOVY-1048] - MetaClass.setProperty() tries to access protected fields instead of a given setter Method
  • [GROOVY-1061] - try..catch can't be in the middle of a method
  • [GROOVY-1066] - Task.execute() not called when expected within a sequential closure
  • [GROOVY-1079] - Unable to extend abstract Java base class in Groovy, but works from Groovyc
  • [GROOVY-1101] - Wrong line number reported for a ClassCastException
  • [GROOVY-1160] - Groovysh does not start in Windows 2000 with Java 1.5 if there are blanks in the file paths (fix included)
  • [GROOVY-1164] - Object.collect(Closure) fails to work on Set
  • [GROOVY-1167] - Object.collect(Collection,Closure) fails to work with Set parameter
  • [GROOVY-1173] - When importing a class that's not on the classpath, the import fails silently.
  • [GROOVY-1186] - NullpointerException occurs when unboxing boolean Java return type where no return value specified from Java interface implemented in Groovy
  • [GROOVY-1191] - -cp and Caller/Call example
  • [GROOVY-1260] - Using the Ant task with multiple targets fails
  • [GROOVY-1272] - pom missing from ibiblio release of groovy-all-1.0-jsr-05
  • [GROOVY-1300] - ClassFormatError: Invalid method Code ... thrown when using JOGL
  • [GROOVY-1322] - RangeExpression doesn't implement Expression not allowing it to be the target of an assert
  • [GROOVY-1323] - Inline conditional List << not being executed fully.
  • [GROOVY-134] - New "def" has short term memory in shell
  • [GROOVY-1342] - GroovyRowResult class raise exception when field value is null
  • [GROOVY-1360] - check why CompilerConfiguration(Properties) isn't used
  • [GROOVY-1383] - DOMBuilder class raises NPE if value is null
  • [GROOVY-1398] - array[0]++ doesn't compile
  • [GROOVY-1419] - calls to category methods (written in Groovy) don't recognise default parameters
  • [GROOVY-1437] - use not nestable
  • [GROOVY-1440] - println /hello/ results in unexpected token exception
  • [GROOVY-1441] - Syntax problem when multiply negative numbers
  • [GROOVY-1442] - Multi-line strings should use System.getProperty("line.separator") for EOL, not \n
  • [GROOVY-1456] - MarkupBuilder fails to escape entities in multi-line attributes
  • [GROOVY-1476] - Variable arity method problem
  • [GROOVY-1492] - Setting property value via GString causes VerifyError
  • [GROOVY-1503] - SimpleTemplateEngine drops Windows new-line character (\r)
  • [GROOVY-1517] - DomToGroovy outputs builder code not compatible with MarkupBuilder
  • [GROOVY-1518] - VerifyError
  • [GROOVY-1522] - catch block without explicit exception type results in VerifyError
  • [GROOVY-1526] - You cannot reference a closure from within itself without def'ing it first and then assigning it
  • [GROOVY-1530] - stack overflow error when supplying insufficient number of argments
  • [GROOVY-1539] - java.lang.VerifyError
  • [GROOVY-1549] - Array equality is not treated same as List equality
  • [GROOVY-1550] - Groovy Sql (or AST builder) doesn't respect bracketing of logical operators
  • [GROOVY-1551] - each invocation of run on GroovyScriptEngine don't share same GroovyClassLoader
  • [GROOVY-1553] - I fixed some problems with ranges and added some additional unit tests.
  • [GROOVY-1558] - backward Array Sintax
  • [GROOVY-1566] - problems with if statements not returning correctly
  • [GROOVY-1581] - ConcurrentModificationException when running same script in multiple threads
  • [GROOVY-1593] - Accessing map contents as properties fails for subclasses of HashMap
  • [GROOVY-1598] - Access an element in a Map
  • [GROOVY-1602] - Using the groovy task in ant, my tasks run twice
  • [GROOVY-1613] - groovy.inspect.Inspector isGroovy method probelm
  • [GROOVY-1615] - "Class is declared in a dynamic context"
  • [GROOVY-1616] - Inconsistent subList for ranges
  • [GROOVY-1618] - Groovy SQL insertion failing against SQL Server using JTDS
  • [GROOVY-1626] - Inconsitent stack height when using super
  • [GROOVY-1629] - (null as String) should return null but throws NullPointerException
  • [GROOVY-1633] - Problem with shadowing in an abstract class
  • [GROOVY-1634] - Can't set the delagate on a curried closure
  • [GROOVY-1639] - Can not do a "new SomeClass()" in a default argument...
  • [GROOVY-1645] - r4814 fails to build under Java SE 6
  • [GROOVY-1651] - Bitwise OR and AND operators with left operand inverted (!) cause VerifyError
  • [GROOVY-1655] - Subscript operator semantics on Map different to property operator
  • [GROOVY-1657] - XmlNodePrinter fails to print GString attribute values correctly
  • [GROOVY-1663] - try-finally block creates a VerifyError when used in methods with return values
  • [GROOVY-1664] - Case with Interface
  • [GROOVY-1668] - replace not thread safe reference map implementation with thread safe version
  • [GROOVY-1670] - toString() on NullObject does not throw a NPE
  • [GROOVY-1675] - Outline view throws exception when clicking on import statment
  • [GROOVY-1679] - Code causes compilation error even when commented out
  • [GROOVY-1682] - polymorphic static methods
  • [GROOVY-1683] - GROOVY_HOME should be quoted in startGroovy.bat
  • [GROOVY-1685] - using ranges as list subscripts limited to existing list size
  • [GROOVY-1697] - MemoryAwareConcurrentReadMap drops entries which are still live.
  • [GROOVY-1698] - No way to escape the / character in Groovy regex
  • [GROOVY-1702] - GroovyReflector: Class cast exception
  • [GROOVY-1703] - error in wiki example
  • [GROOVY-1708] - VerifyError when referring to a (nonstatic) property from a static method
  • [GROOVY-1730] - curried closure: getParameterTypes() doesn't work
  • [GROOVY-1731] - MarkupBuilder doesn't allow entities (like nbsp)
  • [GROOVY-1738] - Color settings not saving
  • [GROOVY-1744] - Extreme performance problem when calling closures using 'shorthand' notation
  • [GROOVY-1747] - Compiler doesn't recognize fully qualified class name in method
  • [GROOVY-1749] - java.lang.VerifyError with nested closures
  • [GROOVY-1760] - Static methods on a extending class are just ignored and hidden by the extended class
  • [GROOVY-1761] - NPE when the () after a method name are missing
  • [GROOVY-1763] - XmlSlurper GPath: why do children() have no children()?
  • [GROOVY-1774] - Problem when using primitive return type inside a try block
  • [GROOVY-1776] - GroovyJ 0.1.9 corrupts compiler caches in IDEA Selena
  • [GROOVY-1777] - Inconsistent stack height error
  • [GROOVY-1779] - super does not work for attribute lookup
  • [GROOVY-1785] - Problem With MarkupBuilder In Static Method
  • [GROOVY-1787] - GroovyClassLoader fails to load a script from a file whose absolute name contains spaces
  • [GROOVY-1788] - Can't execute Thread.setDefaultUncaughtExceptionHandler
  • [GROOVY-1790] - Calling back into java base class method inside an if statement causes java.lang.VerifyError: Inconsistent stack height 1 != 0
  • [GROOVY-1792] - Non writeable properties witreable
  • [GROOVY-1799] - this() does not work
  • [GROOVY-1800] - Inconsistent stack height 0 != 1
  • [GROOVY-1803] - Cannot apply function/closure arguments with defaults
  • [GROOVY-1805] - SwingBuilder does not intialzie properties in code order
  • [GROOVY-1806] - import static not supported
  • [GROOVY-1807] - Groovy fails to call varargs method signatures when an empty arg list is supplied
  • [GROOVY-1808] - make GPath work correctly on arrays
  • [GROOVY-1810] - size() not supported on two-dimensional boolean arrays
  • [GROOVY-1812] - == operator inconsistent with Object#equals
  • [GROOVY-1815] - import doesn't allow inner classes
  • [GROOVY-1816] - Closure Listener does not work with method events that have more than one parameter
  • [GROOVY-1817] - JTable ColumnModel not set in SwingBuilder
  • [GROOVY-1821] - Expecting to find object/array on stack
  • [GROOVY-1822] - Fallthrough in Switch Statements doesn't work for Patterns
  • [GROOVY-1824] - map.class returns null
  • [GROOVY-1829] - Problem with GString as names of the method call inside a closure.
  • [GROOVY-1833] - blank in path makes calling one groovy file from another fail
  • [GROOVY-1837] - Groovy console broken with NPE on Mac OS X
  • [GROOVY-1839] - Fully qualified annotations are not parsed properly
  • [GROOVY-1843] - java.lang.VerifyError: Expecting to find object/array on stac
  • [GROOVY-1844] - Subclasses of groovy.lang.Closure can't be invoked like closures
  • [GROOVY-1846] - Referencing a method closures should work with GStrings
  • [GROOVY-1848] - GCL does not close input stream when using URL to parseClass
  • [GROOVY-1852] - Closure constant on interface not callable without call()
  • [GROOVY-1853] - Groovy in maven(m2) repository does not have pom.xml
  • [GROOVY-1854] - DefaultGroovyMethods File[] null check
  • [GROOVY-1856] - Error while selecting appropriate method
  • [GROOVY-1860] - Problem calling override method with different return type.
  • [GROOVY-1861] - Snapshot downloads link points to empty directory
  • [GROOVY-1862] - Resource leak in ResolveVisitor.isSourceNewer()
  • [GROOVY-1863] - Groovy compiler executes code it is compiling
  • [GROOVY-1867] - java.lang.ClassCastException: gjdk.org.codehaus.groovy.tools.RootLoader_GroovyReflector
  • [GROOVY-1872] - compare operators throws comparing a Long type to a numeric String
  • [GROOVY-1874] - Problem compiling static initialiser
  • [GROOVY-1876] - try-finally does not always executes the finally block when used in methods with return values
  • [GROOVY-1878] - SwingBuilder / tableLayout -> more than two cells in one row are not displayed
  • [GROOVY-1879] - Error parsing simple expression in a conditional.
  • [GROOVY-1882] - NullPointerException when running two or more scripts with GroovyScriptEngine in multiple threads .
  • [GROOVY-1883] - sporadic MissingMethodExceptions when using categories to override math operators in multi-threaded applications
  • [GROOVY-1890] - MemoryAwareConcurrentReadMap cause thred dead lock,it will hang our application at some time.
  • [GROOVY-1891] - Assignment to array element yields null
  • [GROOVY-1904] - Iterators do not close streams
  • [GROOVY-1910] - Some property names used in the value of a Map cause IncompatibleClassChangeError
  • [GROOVY-1911] - Unwrapping needed before invokePogoMethod
  • [GROOVY-1912] - GroovyScriptEngine.loadScriptByName is the cause of Stack Overflow Error
  • [GROOVY-1913] - Problem when running script that uses java covariants
  • [GROOVY-1917] - VerifyError when using double instead of Double
  • [GROOVY-1918] - StackOverflowError when use GSQL's eachRow
  • [GROOVY-1919] - Infinite recursion while getting field from POJC
  • [GROOVY-1920] - Remove redundant groovy.jar from --classpath option to GroovyStarter
  • [GROOVY-1922] - NPE from classes that extend AbstractMap
  • [GROOVY-1923] - Can't call any methods on RootLoader
  • [GROOVY-1928] - startGroovy script has issue on cygwin
  • [GROOVY-1929] - Resource Leak in the GroovyScriptEngine
  • [GROOVY-1930] - Concurrency issue when loading dependencies in the GroovyScriptEngine
  • [GROOVY-1932] - ClassCastException caused by startGroovy script
  • [GROOVY-1935] - Continuous integration should test with CObertura coverage on
  • [GROOVY-1937] - Number conversion from BigDecimal to double does not work for Varargs
  • [GROOVY-1941] - Change pom version to lowercase
  • [GROOVY-1943] - ClassCastException for Reflector
  • [GROOVY-1944] - isCase implementation for BigDecimals needed based on numerical value only
  • [GROOVY-1945] - getting character encoding from command line is failed
  • [GROOVY-1947] - Empty case block before default prevents default block from executing
  • [GROOVY-1948] - == doesn't behave properly
  • [GROOVY-1949] - Problem With Stacked Cases In Switch Statements
  • [GROOVY-1956] - null's in lists are not handled correctly for unique(), sort()
  • [GROOVY-1958] - There's possibility that variable "encoding" is null in CompilerConfiguration.
  • [GROOVY-1961] - sum() should not assume the items are numbers or strings but apply normal duck typing
  • [GROOVY-1962] - add a stream based class reader and an optional java5 module
  • [GROOVY-1963] - list expansion in method call caching causes failing method call
  • [GROOVY-1964] - deadlock in MemoryAwareConcurrentReadMap.get
  • [GROOVY-1967] - When assigned to a local variable or attribute, a closure with named parameters throws a verify error
  • [GROOVY-1971] - Casting fails after instanceof succeeds
  • [GROOVY-1972] - Qualified class references broken in Groovy 1.1 beta 2
  • [GROOVY-1973] - ExpandoMetaClass doesn't inherit methods from super interfaces
  • [GROOVY-1978] - static imports not working with groovy classes
  • [GROOVY-1980] - GSE non-optimal behaviour
  • [GROOVY-1981] - ExpandoMetaClass should not display deprecated warnings when compiled
  • [GROOVY-1991] - Groovyc: Pass specified classpath to Javac on Joint Compilation
  • [GROOVY-1992] - MultipleCompilationErrorsException was thrown when the codes exist nested java style old loop
  • [GROOVY-1994] - Generic behavior is not correct.
  • [GROOVY-1995] - minus(List self, Collection removeMe) throws IllegalStateException for dupplicate values
  • [GROOVY-1998] - try-catch in constructor that calls super() causes VerifyError, Inconsistent stack height 0 != 1
  • [GROOVY-2000] - Can't override EMC added static methods if method has arguments
  • [GROOVY-2005] - XMLSlurper with Cyberneko, does not find children
  • [GROOVY-2006] - JDK Dynamic Proxies Broken
  • [GROOVY-2008] - The impossible is possible
  • [GROOVY-2009] - groovyc doesn't forward classpath to javac when doing joint compilation
  • [GROOVY-2010] - BUG! exception on spread expressions
  • [GROOVY-2014] - getMetaMethods and getProperties (should be getMetaProperties?) only return GDK methods and not all methods actually available to the class
  • [GROOVY-2015] - Under low memory situations ExpandoMetaClass inheritance stops working
  • [GROOVY-2016] - It is impossible to use nested Java classes and interfaces.
  • [GROOVY-2026] - How can i iterate recursively through OS Directories and check for files & directories ?
  • [GROOVY-2029] - When calling printf leads to exceptions in the parsing process of the format, the thrown exception is incorrect
  • [GROOVY-2031] - static import is no longer working
  • [GROOVY-2032] - MetaClassImpl invokeStaticMethod recurses up the class hierarchy losing the original sender
  • [GROOVY-2041] - The new algorithm for LoaderConfiguration's path matching does not work on Windows
  • [GROOVY-2045] - Groovy Tests in codehaus subdirs are not executed
  • [GROOVY-2047] - When in withWriter() the writer is closed, an exception is thrown after the closure is exited
  • [GROOVY-2048] - VerifyError
  • [GROOVY-2056] - Ant Task GroovyC and IBM BigDecimal
  • [GROOVY-2057] - MetaClassRegistryImpl creates mulitple Metaclasses for the same class
  • [GROOVY-2063] - Class reloading does not work with multi-level dependencies
  • [GROOVY-2069] - CLONE -Empty Range (0..<0) broken in List.getAt(Range)
  • [GROOVY-2076] - Compiling subset of sources when Java references Groovy causes compilation error in Joint Compilation
  • [GROOVY-2078] - Multiple compilations errors with Groovy annotations
  • [GROOVY-2079] - 'abc'++ throws Error
  • [GROOVY-2080] - table in SwingBuilder does not work properly and toolTipText seems not to work
  • [GROOVY-2084] - Joint groovy/java compiler doesn't set classpath correctly when path contains spaces in Windows
  • [GROOVY-2085] - SwingBuilder muddles up column values in tableModel()
  • [GROOVY-2088] - Inconsistent stack height when using super inside a conditional
  • [GROOVY-2089] - Failing Closure property acces for maximumNumberOfParameters and directive
  • [GROOVY-2090] - stubs for groovy sources with generics should retain generics, e.g. type arguments
  • [GROOVY-2092] - newlines in enum not fully supported
  • [GROOVY-2096] - Regression: Method calls in nested closures started fail
  • [GROOVY-2097] - StackOverflowError with Java sources that have no package declarations
  • [GROOVY-2103] - CompileTaskSupport sets class loader path incorrectly
  • [GROOVY-2105] - Groovy category support is broken in multi-threaded environment
  • [GROOVY-2106] - Verify Error if in constructor non-existing variable is referenced in call to super()
  • [GROOVY-2107] - Stack overflow occurs when subclass overrides and then calls superclass method containing a closure
  • [GROOVY-2111] - No data in ObjectBrowser tables when started from groovyConsole or groovysh
  • [GROOVY-2114] - Conditional expression containing an assignment operation requires double parentheses
  • [GROOVY-2117] - GroovyBuilder causes an NPE on non-Groovy projects
  • [GROOVY-2118] - Need to tag the Groovy Support for a project earlier
  • [GROOVY-2124] - groovyConsole can not read dead keys on Linux
  • [GROOVY-2125] - avoid reflector creation if relfection should be used for method dispatch
  • [GROOVY-2126] - ClassCastException when using java.util.prefs package
  • [GROOVY-2130] - Use of java iterators in for loop is syntax error
  • [GROOVY-2132] - Filter stacktraces in the new shell
  • [GROOVY-2133] - Static imports not working inside closures
  • [GROOVY-2136] - Static import of properties and fields does not work
  • [GROOVY-2137] - Enum class does not load
  • [GROOVY-2139] - Can not init instances with super(...)
  • [GROOVY-2141] - ExpandoMetaClass has concurrency modification issues with multiple threads
  • [GROOVY-2149] - Groovyc ant task cannot be found when using embeddable/groovy-all*.jar in ant build script
  • [GROOVY-2150] - ClosureMetaClass regression (mapping of ArrayLIst to parameters)
  • [GROOVY-2152] - Stacktrace in the new shell
  • [GROOVY-2153] - BUG! exception in phase 'semantic analysis'
  • [GROOVY-2155] - Some additional static import regressions since beta-2
  • [GROOVY-2156] - Parameter annotations cannot be queried at runtime
  • [GROOVY-2157] - Elvis operator is evaluating the "true" expression twice
  • [GROOVY-2158] - Code crashing in new shell but not in old
  • [GROOVY-2159] - Stub generator does not generate stubs for Groovy sub classes
  • [GROOVY-2165] - GroovyClassLoader dead lock situation with multiple threads
  • [GROOVY-2166] - ExpandoMetaClass causes exceptions with multiple threads, need to sync on isInitialised()
  • [GROOVY-2167] - Occasional NPE with multiple threads with class caching mechanism
  • [GROOVY-2169] - NPE in GroovyScriptEngine
  • [GROOVY-2170] - Purge commands don't work anymore in the new shell
  • [GROOVY-2180] - LoaderConfiguration is broken for relative paths
  • [GROOVY-2181] - NPE generated groovydoc documentation
  • [GROOVY-2182] - groovy.sql.Sql printing row in closure causes java.lang.StackOverflowError
  • [GROOVY-2185] - Java stub generator does not generate signatures for methods that take default arguments?
  • [GROOVY-2187] - GString as String[] returns a 1-element array with the whole text
  • [GROOVY-2188] - missing coercion for array
  • [GROOVY-2190] - check generics usage in class header
  • [GROOVY-2194] - The method primitiveArrayToList doesn't checks for nulls inside arrays causing NPE
  • [GROOVY-2195] - ConfigSlurper does not resolve within closures references to outer properties
  • [GROOVY-2198] - owner/delegatechain is broken for multiple delegates
  • [GROOVY-2201] - select code in groovyconsole and fails to execute selected code via ctrl + enter
  • [GROOVY-2203] - missing cast in covariant return types implementation
  • [GROOVY-2205] - Multiline text selection not handled correctly in GroovyConsole on execution (Windows only bug)
  • [GROOVY-2207] - row num and col num of error info is not correct
  • [GROOVY-2209] - Maps of closures coercion to classes fails with non-overriding methods, protected methods, and with arrays parameters
  • [GROOVY-2210] - The behavior of enum is different between Java and Groovy in switch statement.
  • [GROOVY-2213] - Instantiation exception in Groovysh when creating an enum type
  • [GROOVY-2215] - Cannot create enum type with explicit constructor
  • [GROOVY-2217] - FactoryBuilderSupport doesn't route all pertinent calls to its proxyBuilder
  • [GROOVY-2218] - TimeCategory Date subtraction does not always work for hours and minutes
  • [GROOVY-2219] - VerifyError with derived class
  • [GROOVY-2224] - Groovy Console - Closing Frame with Find/Replace dialog open leaves the dialog open and process not ending
  • [GROOVY-2225] - replaceAll cannot replace backslash
  • [GROOVY-2227] - Stacktrace/bytecode missing line numbers
  • [GROOVY-2231] - groovy.servlet.AbstractHttpServlet lacks unit test coverage
  • [GROOVY-2232] - VerifyError when using DelegatingMetaClass
  • [GROOVY-2236] - Groovysh in 1.1 rc-1 broken on 64-bit java
  • [GROOVY-2241] - Category does not select method with correct signature
  • [GROOVY-2243] - missing method list in exception
  • [GROOVY-2245] - groovy launch requires "tools.jar" system property to be set even if corresponding file does not exist
  • [GROOVY-2246] - subMap, findAll should return LinkedHashMap instead of plain HashMap
  • [GROOVY-2251] - Groovy Projects are not tracked properly with pre-existing Natures
  • [GROOVY-2255] - ClassLoader problem when creating a GroovyMBean for a remote service
  • [GROOVY-2256] - Unexpected exception when using StubFor and MockFor
  • [GROOVY-2258] - AntBuilder broken by a RC-1 -> RC-2 change: Can't find compiler
  • [GROOVY-2262] - groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create() causing java.lang.StackOverflowError
  • [GROOVY-2263] - DelegatingMetaClass causing java.lang.StackOverflowError when subclassed.
  • [GROOVY-2266] - closure called by using the call method handles arrays incorrectly
  • [GROOVY-2268] - "minimal" generic interface
  • [GROOVY-2272] - ShouldFail does not work with nested exceptions
  • [GROOVY-2273] - DGM.getAt(Collection, String) should not flatten result
  • [GROOVY-2274] - InvokerHelper.getVersion() returns an empty string
  • [GROOVY-2275] - Numbers placed in Strings
  • [GROOVY-2276] - Static typing issue using ternary operator
  • [GROOVY-2277] - run-app fails with JavacJavaCompiler NullPoniterException
  • [GROOVY-2279] - StackOverflowException in MarkupBuilder when inserting element named 'link'
  • [GROOVY-2284] - Groovyc does not accept non-existant files in classpath
  • [GROOVY-2287] - calling negate() method on Integer throws MissingMethodException
  • [GROOVY-2288] - GroovyConsole - Undo/Redo don't set the dirty flag
  • [GROOVY-2289] - Use clause does not work with dinamically created methods
  • [GROOVY-2291] - closure parameter default value
  • [GROOVY-2292] - Binding is not passed to the script if the parsed script text contains no statements
  • [GROOVY-2293] - Delete key not working in groovysh on Mac OS X
  • [GROOVY-2294] - Infinite loop causes StackOverflow retrieving MetaClass for Java class breaking Grails
  • [GROOVY-2295] - Groovy embeddable JAR contains outdated version of Commons CLI causing problems with Gant/Grails
  • [GROOVY-2303] - Upgrading to Groovy 1.1 final snapshot causes LinkageError in Grails
  • [GROOVY-2304] - Minor doc bug in GDK
  • [GROOVY-2307] - Reading static metaClass property of a class replaces existing metaClass in registry
  • [GROOVY-2309] - MockFor does not work properly with zero ranges
  • [GROOVY-2312] - DelegatingMetaClass does not display info about self in toString method
  • [GROOVY-2314] - Remove use of java 5 specific code in LoaderConfiguration
  • [GROOVY-2316] - Incorrect access of protected fields in parent classes
  • [GROOVY-2320] - the abstract method test seems not to know covariant returns types yet
  • [GROOVY-2321] - Sort fails on heterogenous collections
  • [GROOVY-2327] - VerifyError with a Closure using instanceof
  • [GROOVY-2333] - Spread dot operator doesn't work on arrays
  • [GROOVY-2336] - Can't implement a Java interface that references a Groovy class
  • [GROOVY-2338] - correct source-filename for org.codehaus.groovy.classgen.InterfaceTest
  • [GROOVY-2339] - Endless-loop with nested 'each'
  • [GROOVY-272] - Misleading MissingMethodException
  • [GROOVY-322] - Object allocations using GroovyShell and Binding not GCed
  • [GROOVY-393] - cannot update a write-only property
  • [GROOVY-446] - cvs tags are wrong in two files in groovy.ant package
  • [GROOVY-474] - Groovy forgets imports.
  • [GROOVY-554] - a Node created with no value can not have children added to it.
  • [GROOVY-571] - Groovy fails to complie against latest Xalan 2.6.0
  • [GROOVY-716] - Reader.readLine() consumes too many characters.
  • [GROOVY-737] - Aliasing problem
  • [GROOVY-807] - 'explain' broken in groovysh
  • [GROOVY-912] - Setting protected field using named arguments in constructor silently fails
  • [GROOVY-929] - Setting private field in Bean constructor fails sliently

Improvement

  • [GROOVY-1109] - provide method rows() and firstRow() on groovy.sql.DataSet
  • [GROOVY-1126] - make newObjectInputStream() available on InputStream
  • [GROOVY-1201] - Unsupport Classic for loop now reports strange error message
  • [GROOVY-1203] - Website should show Maven's artifactId and groupId on Download Page
  • [GROOVY-1311] - make Groovy Stubs and Mocks deal with property access same as with method calls
  • [GROOVY-1314] - support covariant return types (& generics)
  • [GROOVY-1376] - rename (or alias) assertArrayEquals to assertEquals
  • [GROOVY-1380] - "fileName" as File
  • [GROOVY-139] - user vs. developer error messages - filtering stack traces
  • [GROOVY-1524] - Additional helper methods for DOMCategory to make it feel more like XmlParser/Slurper
  • [GROOVY-1535] - Improve XML tests and reduce duplication
  • [GROOVY-1542] - Implement groupBy() for Maps as well as for Lists
  • [GROOVY-1610] - Allow nesting categories with method override
  • [GROOVY-1619] - Allow the addition of MetaBeanProperty instances to MetaClassImpl
  • [GROOVY-1640] - Add "".hasText() method
  • [GROOVY-1647] - Improve Groovy Truth for CharSequence and arrays
  • [GROOVY-1688] - Dynamic compilation excessive typed instance variables resolution as class lookup
  • [GROOVY-1719] - MetaClass enhancements
  • [GROOVY-1724] - Extend Map coercion to classes
  • [GROOVY-1727] - Groovy shell and Groovy swing console improvements
  • [GROOVY-1728] - Compiler performance
  • [GROOVY-1737] - Map unary negation operator to a method and be able to overload it via a Category
  • [GROOVY-1750] - printf should work with any PrintStream and support sprintf
  • [GROOVY-1752] - Add arg types and return types to error messages
  • [GROOVY-1770] - use(category){closure} should propagate the value returned by its closure
  • [GROOVY-1818] - Option to remove the GroovyObject dependency and compile to 'pure' Java
  • [GROOVY-1832] - XMLParser: remove method on NodeList returns true (success). But, Node is not removed.
  • [GROOVY-1835] - Allow string coercion into classes
  • [GROOVY-1849] - Add the ability to assign before and after interceptors to groovy shell and groovy console to hook into script execution
  • [GROOVY-1850] - Custom Metaclass creation handler
  • [GROOVY-1857] - Add a check for ant version 1.7
  • [GROOVY-1858] - Fix warnings about @deprecated methods for DelegatingMetaClass, ProxyMetaClass, and MockProxyMetaClass
  • [GROOVY-1859] - Enable warning messages about deprecated features in build
  • [GROOVY-1866] - Extend Closure coercion to classes
  • [GROOVY-1868] - Modify BuilderSupport to allow sub-class to change the node at node completion.
  • [GROOVY-1893] - Minor change to groovy-starter.conf
  • [GROOVY-1931] - Map::find() should support two-parameter closures (i.e. key,value -> )
  • [GROOVY-1938] - Allow GJDK method Timer.runAfter() to return the TimerTask which it created
  • [GROOVY-1952] - force SwingBulder to execute builder methods in EDT
  • [GROOVY-1955] - Adding complete body of XML tag with GPathResult.getBody() including CDATA sections
  • [GROOVY-1957] - Dynamically added static getters can't be called as properties
  • [GROOVY-1960] - bundling Groovy jar in Ant lib dir causes Sql to fail to fails to find driver class when jar file specified in classpath element
  • [GROOVY-1968] - add ConcurrentReaderHashMap to groovy
  • [GROOVY-1974] - Allow customisation of closure variable resolving strategy
  • [GROOVY-1977] - Allow static and default to be used as property names after the dereference operator
  • [GROOVY-1979] - SimpleTemplateEngine (and poentially other TemplateEngines) should allow caller to specify classloader
  • [GROOVY-1986] - Optimizing DefaultGroovyMethods.intersect()
  • [GROOVY-1996] - Groovy-all pom.xml has dependency to an outdated version of Castor
  • [GROOVY-2004] - File.withPrintWriter(String charset, Closure closure) is missing in GDK
  • [GROOVY-2018] - Need way to make a PropertyColumn non-editable
  • [GROOVY-202] - allow importing of static methods like Java 1.5
  • [GROOVY-2022] - Allow customisation of GC policy for MetaClass through GroovySystem
  • [GROOVY-2034] - Add JLine support to groovysh
  • [GROOVY-2039] - Change sleep() variant with closure to enable continued sleep
  • [GROOVY-2040] - The iteration method inject() should be provided for Object and Map as well as for Object[] and Collection
  • [GROOVY-2042] - Distribution archives should set the file mode of unix scripts to 775
  • [GROOVY-2053] - Re-write InteractiveShell (aka. groovysh) in Groovy
  • [GROOVY-2058] - increase Closure performance by using a specialized Closure MetaClass
  • [GROOVY-2068] - Extract a FactoryBuilder from SwingBuilder
  • [GROOVY-2087] - Groovy ant task should support passing parameters
  • [GROOVY-2091] - enum support
  • [GROOVY-2100] - add Elvis Operator
  • [GROOVY-2101] - Error message needs changing
  • [GROOVY-2102] - Groovy-all pom.xml omits <optional> tag for its optional dependencies
  • [GROOVY-2108] - Make static methodMissing through EMC use a synthetic method signature to distinguish it from an instance methodMissing
  • [GROOVY-2110] - MetaClass.getMetaMethods() only returns methods from DGM, should return all meta methods
  • [GROOVY-2121] - change the groovyc ant task to enable embedding the javac ant task
  • [GROOVY-2122] - .each {} should return its collection, not void
  • [GROOVY-2123] - DGM methods on object for min, max, sum, and perhaps unique and sort
  • [GROOVY-2140] - Handle Null Attributes in MarkupBuilder
  • [GROOVY-2142] - Add new metaClass property to all objects to unify access to meta class across instances
  • [GROOVY-2145] - Groovy Project Preferences should override a default global preference
  • [GROOVY-2162] - The unary negate "~" operator could work with any kind of object, not just numbers and strings
  • [GROOVY-217] - support java style old for loop notation
  • [GROOVY-2172] - Change the new groovysh IO debug/verbose/quiet to a single verbosity field
  • [GROOVY-2173] - Create a Main CLI class for the new groovysh, to free Groovysh from those details
  • [GROOVY-2179] - Make the *new* groovysh the default
  • [GROOVY-2186] - Configurable reaction to exceptions during template binding
  • [GROOVY-2199] - FileNameFinder should supports excludes pattern as well as current includes pattern
  • [GROOVY-2200] - AllTestSuite should supports excludes pattern as well as current includes pattern
  • [GROOVY-2206] - Add row num to Groovy Console
  • [GROOVY-2233] - GPath: allow attribute reference using unquoted selectors in XmlParser Nodes, making it consistent with XmlSlurper
  • [GROOVY-2234] - XmlParser results are missing ability to set attribute values using assignment
  • [GROOVY-2267] - Make CompilerConfiguration copying version independent
  • [GROOVY-2269] - Use qualifier tag to allow Eclipse to place DATE/TIME in version info
  • [GROOVY-2270] - Display line numbers in the groovyConsole
  • [GROOVY-2285] - Keep the current directory of GroovyConsole dialogs
  • [GROOVY-2286] - groovy Ant task: provide better information on script name in exception message / stack
  • [GROOVY-2313] - add ant like file matching logic for the groovy-starter.conf file
  • [GROOVY-2319] - org.codehaus.groovy.reflection.FastArray doesn't overwrite toString() method
  • [GROOVY-392] - an alternative InteractiveShell
  • [GROOVY-635] - Overloading divide - method is called "div" not "divide"
  • [GROOVY-849] - + operator on null string concat causes exception
  • [GROOVY-860] - Command "clear" for the text InteractiveShell
  • [GROOVY-892] - refactor groovy.inspector.Inspector to be in a different package; either groovy.lang. or groovy.util.

New Feature

  • [GROOVY-164] - Date/Calendar operations
  • [GROOVY-1665] - Allow Closures to be lazily evaluated in GStrings
  • [GROOVY-1676] - Implement literal Map addition/concatenation like "[a:1, b:2] + [c:3]"
  • [GROOVY-1695] - Add (new|with)(Object|Data)(Input|Output)Stream
  • [GROOVY-1714] - Java 5 features
  • [GROOVY-1718] - Named-parameters without parentheses
  • [GROOVY-174] - Round Peg, Square Hole
  • [GROOVY-1745] - DefaultGroovyStaticMethods addShutdownHook( Object obj, Closure closure)
  • [GROOVY-1784] - Add deploy to m2 repository to groovy-core ant build
  • [GROOVY-1828] - GDK: Add eachDirMatch and eachDirRecurse on File
  • [GROOVY-1834] - Migrate ExpandoMetaClass from Grails into Groovy
  • [GROOVY-1851] - Expose unary plus and unary minus operators as interceptable method calls: positive() and negative()
  • [GROOVY-1886] - leftShift operator for ObjectOutputStream
  • [GROOVY-1887] - It would be useful to have a DGM Socket.withObjectStreams to complement Socket.withStreams
  • [GROOVY-1969] - Migrate Grails' ConfigSlurper to a groovy.util
  • [GROOVY-1988] - Add support for "method missing" behaviour to Groovy
  • [GROOVY-2036] - There is no equivalent of Ruby's respond_to - you have to catch MissingMethodException
  • [GROOVY-2073] - add DGM combinations methods
  • [GROOVY-2098] - Add support for propertyMissing to Groovy
  • [GROOVY-21] - .. as a new binary operator
  • [GROOVY-2109] - Implement respondsTo and hasProperty to make runtime evaluation more elegant
  • [GROOVY-2120] - Groovy should have a transpose() method
  • [GROOVY-2131] - Map implementation that fires PropertyChangeEvents
  • [GROOVY-2174] - Add commands to capture/manage a complete transcript of a groovysh session
  • [GROOVY-2175] - Add something like pythons {{sys.displayhook}} to the new groovysh
  • [GROOVY-2176] - Install SecurityManager for groovysh to prevent unwanted System.exit()
  • [GROOVY-2220] - ObjectGraphBuilder
  • [GROOVY-2253] - XmlParser should provide a getter/setter to allow adjustment of the trimWhitespace settting
  • [GROOVY-2317] - Subscript Support For Groovy BitSets
  • [GROOVY-455] - Add groovy plugin for Maven
  • [GROOVY-496] - Signatures
  • [GROOVY-502] - Adding instance methods to classes
  • [GROOVY-604] - Provide parsing errors and warnings
  • [GROOVY-605] - Automatic imports
  • [GROOVY-608] - Provide refactoring capabilities
  • [GROOVY-611] - Intention actions
  • [GROOVY-614] - Add an Outline/File structure pane
  • [GROOVY-776] - Create a GroovyDoc/JavaDoc tool
  • [GROOVY-783] - Make GroovyShell read script using specified encoding
  • [GROOVY-809] - enum Implementation

Sub-task

  • [GROOVY-1715] - Annotation support
  • [GROOVY-1717] - Enum support
  • [GROOVY-1720] - Integrate Grails' ExpandoMetaClass in Groovy-core
  • [GROOVY-1722] - Extract interfaces from the Meta* classes
  • [GROOVY-1723] - Provide unit tests for date/time support
  • [GROOVY-1894] - enable the usage of normal classes as parameter in the class header
  • [GROOVY-1895] - simple usage of formal type parameters
  • [GROOVY-1896] - nested usage of formal type parameters
  • [GROOVY-1897] - usage of formal parameters in the extends part
  • [GROOVY-1898] - usage of class parameters at fields
  • [GROOVY-1899] - usage of formal parameters at fields
  • [GROOVY-1900] - usage of generics type parameter in methods
  • [GROOVY-1901] - usage of multiple interfaces as bound for generic parameterization
  • [GROOVY-1902] - add check for usage of generics only with generics enabled classes and with the correct number of parameters
  • [GROOVY-1939] - Annotation Support for method parameters
  • [GROOVY-1940] - Annotation support for fields
  • [GROOVY-1951] - build a compiler that can compile mixed groovy and java code on the command line
  • [GROOVY-2059] - Add syntax highlighting, printing, search, and undo/redo to Groovy Console
  • [GROOVY-2060] - Font Sizeing in Console Broken
  • [GROOVY-2151] - Filter stack traces in GroovyConsole

Task

Wish

  • [GROOVY-1287] - use(category, closure) should return the closures return value.
  • [GROOVY-1636] - Support as SortedSet
  • [GROOVY-1916] - I need to get the metaData even when I get no results/I'd like an easier way to get the metaData from the Sql class.
  • [GROOVY-1946] - getting the value of groovy.source.encoding from system property in default constractor of CompilerConfiguration.
  • [GROOVY-25] - MetaData parsing
  • [GROOVY-301] - consider adding neater syntax for getters/setters maybe using closure-like syntax
  • [GROOVY-349] - Groovyc - Synthetic Metadata (Java 1.5)
  • [GROOVY-890] - Allow sublists as lvalue in range notation