A multi-faceted language tool for the Java platform!

Groovy

Groovy 3.0.9

  -  58.15 MB  -  Open Source

Sometimes latest versions of the software can cause issues when installed on older devices or devices running an older version of the operating system.

Software makers usually fix these issues but it can take them some time. What you can do in the meantime is to download and install an older version of Groovy 3.0.9.


For those interested in downloading the most recent release of Groovy or reading our review, simply click here.


All old versions distributed on our website are completely virus-free and available for download at no cost.


We would love to hear from you

If you have any questions or ideas that you want to share with us - head over to our Contact page and let us know. We value your feedback!

  • Groovy 3.0.9 Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    Groovy 3.0.9 Screenshot 1

What's new in this version:

Fixed:
- TracingInterceptor throws NullPointerException if arguments contains a null argument
- STC: method call with GString elements in list/array has different error from assignment
- STC: NamedParams error for method call argument
- Compiler crash when encountering function reference on nested class
- NPE in static compiler
- STC infers Closure instead of SAM for method references
- Inferred parameter type of lambda expression for multi-dimensions array is not correct
- Static compiler incorrectly typechecks extension modules
- groovyc does not perform unboxing on Character type
- Class.isCase() documentation does not clarify that Class.isCase(SomeClass) is false, or why
- STC does not perform boxing on chars when encountering assignment and function call
- CLONE - Better propagation of InterruptedException (additional cases)
- Unexpected behaviour when the return type of a closure is a type parameter
- Type checking fails when calling trait method using indirect SelfType relation
- SC: runtime error for default argument call expression
- STC error for call to static trait method from closure
- Cannot assign null to a variable with a bounded generic type
- compiler crash during canonicalization
- StackOverflowError in STC
- @AnnotationCollector does not work with JUnit 5
- Wrong cast in stubs generated
- XmlUtil.serialize() Emoji bug
- NPE in InnerClassVisitor for non-static inner class CCE within two AICs
- Compilation failure: ClassCastException
- RootLoader cannot be set as system class loader in Java 12+
- STC: instanceof and for-in variable type
- Groovy 3 AST for annotated fields reports wrong lastLineNumber if field not initialized
- Different treatment of property expressions in closures from 2.4 to 2.5
- File.withWriter and Path.withWriter are inconsistent
- NoSuchMethodError during static field inlining is not caught, unlike NoSuchFieldException
- "PermittedSubclasses requires ASM9" when importing enum on Java 17
- "Cannot find matching method" with specific class hierarchy and static compilation
- java.lang.VerifyError using property inside enum's constant
- ASTTest cannot reference types from transform classpath
- Static scope error for variable in non-static method of static inner class
 Seems like ClosureMetaClass#invokeMethod does not respect the interceptable nature of the owner/delegate
 Expression underlying a spread map expression is evaluated twice
 GroovyInterceptable (AOP) not working with closures
 Incorrect resolve of category property for String
 groovyc ant task generates invalid stub (picks wrong constructor) and fails in Java 1.7 compilation
 asType(Collection col, Class clazz) ingnores exceptions in clazz constructor
 Stack overflow between WideningCategories lowestUpperBound and parameterizeLowestUpperBound
 Map-style constructor call, inner class and static compilation
 void tail calls in closures break @CompileStatic type inference
 @CompileStatic, generic with 'extends' bug: Expected parameter of type ? but got A
 CompileStatic fails with Guava Multimap#asMap
 Putting key on generic Map fails when using CompileStatic
 STC: explicit declared variable type ignored in favor of assigned value type(s)
 STC: call to static method fails with incompatible generics error
 STC: Cannot find matching method when using Generics
 @TypeChecked: Closure<String> no longer compatible with Closure<GString> argument
 Wrong type inference when passing null
 STC: cast or coerce to functional interface fails to infer param types of closure/lambda

Dependency upgrade:
- Bump picocli to 4.6.1
- Bump Ant version to 1.10.10
- Bump spotbugs to 4.2.3
- Bump versions plugin to 0.38.0
- Bump Gradle to 6.8.3
- Bump junit to 5.7.1
- Bump Spock version to 2.0 final
- Bump jackson version to 2.12.4
- Bump Ant version to 1.10.11 (incorporates CVE-2021-36373 and CVE-2021-36374)
- Bump JUnit Jupiter/JUnit Platform to 5.7.2/1.7.2
- Bump slf4j to 1.7.31
- Bump Spotbugs version to 4.3.0
- Bump checkstyle to 8.44
- Bump gson to 2.8.7
- Bump Codenarc to 2.1.0
- Bump Gradle to 6.9.1
- Bump xstream to 1.4.18
- Bump javaparser to 3.23.0
- Bump jackson version to 2.12.5
- Bump Spotbugs version to 4.4.0
- Bump Codenarc to 2.2.0

Improvement:
- STC: unresolved generics for return type of extension method call with full type arguments
- STC sometimes requires explicit closure to SAM cast inside of another closure
- Groovy Console: Support JDKs without macOS Runtime Support for Java
- IndexedProperty AST transform should only provide the getter for immutable fields
- Groovy 3 compilation errors are less accurate than Groovy 2
- Eliminate ambiguities while parsing non-static class creator
- Provide a mechanism for users to enable Antlr4's SLL (fast but only simple) mode

New Feature:
- Provide a helper factory class to assist with porting

Task:
 Prepare for bintray/jcenter sunset