Changelog for Groovy 1.8.9

Bug

  • [GROOVY-4373] - Groovlet generated error "The requested resource () is not available."
  • [GROOVY-4458] - NPE in org.codehaus.groovy.runtime.dgmimpl.NumberNumberPlus$DoubleInteger
  • [GROOVY-4648] - Pasting into groovy console using shift+insert turns overwrite mode on.
  • [GROOVY-4820] - Problems using Groovlet / GSP from embedded Jetty
  • [GROOVY-4950] - ConfigSlurper broken on AppEngine
  • [GROOVY-4975] - GroovyScripeEngine fails to properly reload when dependent class is updated
  • [GROOVY-5009] - Problem dispatching array as argument to a closure
  • [GROOVY-5187] - Groovy Script Engine creates new classes for each script and doesn't get garbage collected
  • [GROOVY-5189] - Character XOR behaves differently depending on JVM
  • [GROOVY-5289] - Using GroovyServlet deployed to Tomcat with a multi-level context causes 404 errors
  • [GROOVY-5418] - Compilation error with covariant return types (incompatible types)
  • [GROOVY-5425] - ObjectRange doesn't have BigInteger optimisation for size()
  • [GROOVY-5433] - Node is missing documentation
  • [GROOVY-5439] - error: incompatible types on Java stubs returning generics
  • [GROOVY-5468] - Documentation error for ExpandoMetaClass
  • [GROOVY-5630] - Java stub generator generates wrong cast for return value of generic method
  • [GROOVY-5665] - Groovyc ant task fails with nested javac when using generics
  • [GROOVY-5675] - Stub compiler expands generic-inner-class variable declaration incorrectly
  • [GROOVY-5706] - JSR 223 invokeFunction broken in 2.0.2 - regression
  • [GROOVY-5710] - Stub generator should not use raw types when casting default return values
  • [GROOVY-5713] - timing problem with GroovyScriptEngine recompilation
  • [GROOVY-5723] - Problem with cached calls with GroovyServlet
  • [GROOVY-5729] - Delegation to an interface with deprecated methods shows a compile error
  • [GROOVY-5730] - array given spreaded to doCall method if EMC is enabled
  • [GROOVY-5732] - Delegating to an abstract class hierarchy doesn't implement interfaces at a higher level
  • [GROOVY-5739] - performance problem in DefaultGroovyMethods.removeAll()
  • [GROOVY-5747] - First call to Groovlet succeeds but subsequent calls return 404
  • [GROOVY-5751] - Adding milliseconds with TimeCategory gives incorrect toString
  • [GROOVY-5786] - methods defined by one eval are 'lost' over time
  • [GROOVY-5803] - wasted work in "ClassNode.addMixin"
  • [GROOVY-5809] - .groovy files on the classpath don't work if the absolute path contains non-latin characters
  • [GROOVY-5844] - Copy/paste error in EmptyBorderFactory
  • [GROOVY-5858] - "string".count('') fails
  • [GROOVY-5901] - @AutoClone excludes param works correctly only for COPY_CONSTRUCTOR AutoCloneStyle
  • [GROOVY-5932] - covariant method addition causing call to abstract method
  • [GROOVY-5937] - groovydoc does not document type alias for property correctly
  • [GROOVY-5938] - groovydoc does not document array property correctly
  • [GROOVY-5939] - groovydoc does not show link for property type
  • [GROOVY-5940] - groovydoc does not show class hierarchy correctly
  • [GROOVY-5958] - 'Allowed Interruption' menu item is missing at GroovyConsole on MacOSX
  • [GROOVY-5980] - Finally executes twice on NPE while casting method result

Improvement

  • [GROOVY-5370] - ConfigSlurper - multiple environment blocks broken
  • [GROOVY-5509] - Add base script option to groovyc and its ant task
  • [GROOVY-5626] - Remove buildSrc's target and .gradle directories from the source distribution
  • [GROOVY-5716] - @Immutable annotation should allow Cloneable fields
  • [GROOVY-5761] - getBytes for GString

Sub-task

Task