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)

Reply via email to