Roberto Perez Alcolea created GROOVY-8806:
---------------------------------------------
Summary: Immutable classes break in groovy 2.5.2
Key: GROOVY-8806
URL: https://issues.apache.org/jira/browse/GROOVY-8806
Project: Groovy
Issue Type: Bug
Affects Versions: 2.5.2
Reporter: Roberto Perez Alcolea
We've being running tests of gradle plugins with latest gradle nightly release
which upgraded to groovy 2.5.2
Since then, we've seen multiple plugins breaking with errors around
immutability:
{code:java}
> Unsupported type (org.ajoberstar.grgit.Branch) found for field
> 'trackingBranch' while constructing immutable class
> org.ajoberstar.grgit.Branch.
Immutable classes only support properties with effectively immutable types
including:
- Strings, primitive types, wrapper types, Class, BigInteger and BigDecimal,
enums
- classes annotated with @KnownImmutable and known immutables (java.awt.Color,
java.net.URI)
- Cloneable classes, collections, maps and arrays, and other classes with
special handling
(java.util.Date and various java.time.* classes and interfaces)
Other restrictions apply, please see the groovydoc for ImmutableOptions for
further details{code}
I was wondering if this change is related to
[https://github.com/apache/groovy/commit/3471f55ea5839ab3c9dfa51cdca081bc7b4c020e#diff-8f745c460bc1abf332f21067b21ec551R754]
And also, looks like gradle plugins that use the gradleApi and are compiled
with groovy 2.4 could break with groovy 2.5 with usages like this one
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)