Changelog for Groovy 3.0.0-rc-1

Bug

  • [GROOVY-6777] - Inner class causes VerifierError
  • [GROOVY-6809] - VerifyError With Inner Class
  • [GROOVY-6996] - Anonymous class field initialized with an enclosing argument results in MissingPropertyException
  • [GROOVY-7609] - java.lang.VerifyError when initializing object of inner class within the constructor of its containing class
  • [GROOVY-8053] - Groovyc: anonymous class in static method cannot access its fields without "this"
  • [GROOVY-8314] - groovy Eclipse task is generating classpath with duplicated src/main entry
  • [GROOVY-8321] - !instanceof treated incorrectly in type checker
  • [GROOVY-8418] - getSet* property name => Cannot read write-only property exception
  • [GROOVY-8442] - java.lang.VerifyError: Bad <init> method call from inside of a branch
  • [GROOVY-8815] - Inconsistent class file - undefined type parameter for trait implementer
  • [GROOVY-9005] - SomeClass.groovy: -1: Access to java.lang.Object#this is forbidden @ line -1, column -1
  • [GROOVY-9031] - Traits using generics generate incorrect stub for Properties
  • [GROOVY-9059] - Failed to parse/compile generic methods with "extends"
  • [GROOVY-9189] - AIC in default argument expression of static method causes class cast exception
  • [GROOVY-9215] - Incorrect compile time access error is raised when using @CompileStatic and/or @TypeChecked
  • [GROOVY-9226] - Calling super.toString() with @TypeChecked or @CompileStatic will throw java.lang.StackOverflowError
  • [GROOVY-9231] - groovy.lang.TypeChecked should be groovy.transform
  • [GROOVY-9237] - GContracts and Groovy3
  • [GROOVY-9243] - Fail to resolve nested type defined in base type written in Groovy
  • [GROOVY-9244] - Anonymous subclasses should cast their super-parameters
  • [GROOVY-9246] - Version 3.0.0-beta-3 does not conform to OSGi version standard.
  • [GROOVY-9252] - -1: Access to java.lang.Object#myField is forbidden @ line -1, column -1.
  • [GROOVY-9265] - ScriptMain.groovy: -1: Access to bugs.ClassWithInnerClass$InnerClass#obj is forbidden @ line -1, column -1.
  • [GROOVY-9268] - Access to ... is forbidden
  • [GROOVY-9270] - Using "instanceof boolean" or using a Trait will cause the compiled code to not work with OSGi/maven-bundle-plugin/bnd
  • [GROOVY-9281] - Unqualified reference to inner class of super class does not support package-private visibility
  • [GROOVY-9282] - Account for package-private methods when overriding as protected

Dependency upgrade

Improvement

  • [GROOVY-4816] - Visiting Empty expressions
  • [GROOVY-8185] - Change Groovydoc processing to support antlr4 grammar including getting comments from AST
  • [GROOVY-8444] - Support unqualified enum constants in switch cases (like Java)
  • [GROOVY-9217] - Fix warning "An illegal reflective access operation has occurred" when setting property
  • [GROOVY-9218] - Reduce the memory usage of `MethodIndex` instances
  • [GROOVY-9223] - Avoid generating common methods for each groovy class
  • [GROOVY-9228] - CLI options for static compilation
  • [GROOVY-9229] - Add @ClosureParams to closure input parameter of Sql.withInstance(...)
  • [GROOVY-9233] - Add @ClosureParams to closure input parameter of Sql.withBatch(...)
  • [GROOVY-9236] - Avoid unnecessary resolving
  • [GROOVY-9240] - Better signature for ResourceGroovyMethods.traverse(File, Map<String, Object>, Closure) (and overloadings)
  • [GROOVY-9261] - Refine type checking for ARM
  • [GROOVY-9266] - Extension method metaClass lacks closure metadata for IDE/STC
  • [GROOVY-9274] - Add DGM `minus` to `LocalDate`
  • [GROOVY-9276] - Improve the performance of parsing

Sub-task