Changelog for Groovy 5.0.0-alpha-11
Bug
- [GROOVY-5881] - Type inference breaks in longer transitive generic structures
- [GROOVY-6324] - Cannot call closure like a method in type checked mode
- [GROOVY-9306] - error for enum constant with comma followed by method *
- [GROOVY-11258] - AssertJ collection mapping is badly supported
- [GROOVY-11274] - Not reporting error when implicit default constructor is private
- [GROOVY-11286] - Extraneous bytecode generated after calls to void methods
- [GROOVY-11288] - Unnecessary bytecode generated after variable assignment
- [GROOVY-11365] - IllegalAccessError when using protected method as reference
- [GROOVY-11366] - STC: callable (closure) property from super class
- [GROOVY-11412] - SC: outer class field and self dynamic property
- [GROOVY-11440] - invalid reference to an array constructor leads to type unsafe results
- [GROOVY-11451] - IncompatibleClassChange with map-style constructor and overloaded setters
- [GROOVY-11453] - Spread-safe operator differences and efficiencies *
- [GROOVY-11459] - weak hashing algorithm (使用弱哈希算法)
- [GROOVY-11474] - flow typing on loops can introduce type unsafety
- [GROOVY-11479] - crash when annotating a lambda parameter
- [GROOVY-11480] - Cast exception when using qualified this in lambda
- [GROOVY-11481] - anonymous inner class visibility *
- [GROOVY-11483] - reference to outer class non-private static field before special ctor call
- [GROOVY-11485] - undefined default constructor of outer class causes runtime exception
- [GROOVY-11490] - ClassCastException when assigning a lambda returning null into a SAM expecting a primitive
- [GROOVY-11507] - "class" and "empty" listed as map properties
- [GROOVY-11512] - Inconsistent isAttribute & getAttribute behavior in Groovy 4 with traits
Dependency upgrade
- [GROOVY-11484] - Downgrade asciidoctorj-diagram to 2.2.10 due to errors
- [GROOVY-11494] - Bump gradle to 8.10.2
- [GROOVY-11497] - Bump asm to 9.7.1
- [GROOVY-11498] - Bump junit to 5.11.2
- [GROOVY-11499] - Bump jackson to 2.18.0
- [GROOVY-11500] - Bump japicmp to 0.4.4
- [GROOVY-11501] - Bump log4j2 to 2.24.1
- [GROOVY-11502] - Bump asciidoctorj-pdf to 2.3.19
- [GROOVY-11503] - Bump asciidoctorj-diagram to 2.2.17
- [GROOVY-11504] - Bump jqwik to 1.9.1
- [GROOVY-11505] - Bump logback to 1.5.11
- [GROOVY-11506] - Bump checkstyle to 10.18.2
- [GROOVY-11510] - Bump junit5 to 5.11.3
- [GROOVY-11511] - Bump logback to 1.5.12
- [GROOVY-11514] - Bump jackson to 2.18.1
- [GROOVY-11517] - Bump checkstyle to 10.20.0
Improvement
- [GROOVY-8551] - Java compatibility: support multi-dimensional array initializers
- [GROOVY-8566] - Array initialization from list literal without "as" should be supported under static compilation for multi-dimension arrays
- [GROOVY-10687] - JEP 181: replace bridge methods with nest-based access control
- [GROOVY-11181] - Improve STC error message for non-functional interface
- [GROOVY-11305] - STC: support for-each or for-in loop for implicitly-Iterable type
- [GROOVY-11309] - Optimise bytecode for empty list expressions
- [GROOVY-11478] - Enable GroovyClassLoader to be ParallelCapable
- [GROOVY-11491] - Add support for join and group by in ginq
* potentially breaking change (read issue for details - even minor differences are sometimes flagged as potentially breaking changes)