You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "David Brown (Jira)" <ji...@apache.org> on 2022/02/26 20:24:00 UTC

[jira] [Created] (GROOVY-10515) EqualsAndHashCode no longer access parent class

David Brown created GROOVY-10515:
------------------------------------

             Summary: EqualsAndHashCode no longer access parent class
                 Key: GROOVY-10515
                 URL: https://issues.apache.org/jira/browse/GROOVY-10515
             Project: Groovy
          Issue Type: Bug
            Reporter: David Brown


It appears there is a breaking change between Groovy 2.4 and 2.5 to the EqualsAndHashCode() method.   In 2.4, the includes attribute could reference properties of parent classes up the inheritance tree, however, in 2.5 an exception is thrown indicating the inherited field(s) do not exist. 

The following code demonstrates a simple inheritance relationship with reproducible exception that works correctly with Groovy 2.4.x 

'''

import groovy.transform.EqualsAndHashCode

@EqualsAndHashCode(includes = ['level0field'], includeFields = true)
abstract class Level0 {
public String level0field
}

@EqualsAndHashCode(includes = ['level0field','level1field'], callSuper = true, includeFields = true)
class Level1 extends Level0{
String level1field
}'''



--
This message was sent by Atlassian Jira
(v8.20.1#820001)