You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Paul King (JIRA)" <ji...@apache.org> on 2018/10/04 03:51:00 UTC

[jira] [Resolved] (GROOVY-8806) Immutable classes break in groovy 2.5.2

     [ https://issues.apache.org/jira/browse/GROOVY-8806?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul King resolved GROOVY-8806.
-------------------------------
       Resolution: Fixed
         Assignee: Paul King
    Fix Version/s: 2.5.3
                   3.0.0-alpha-4

Proposed PR merged.

> 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
>            Assignee: Paul King
>            Priority: Major
>             Fix For: 3.0.0-alpha-4, 2.5.3
>
>
> 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)