[ https://issues.apache.org/jira/browse/GROOVY-10546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17512461#comment-17512461 ]
Eric Milles edited comment on GROOVY-10546 at 3/25/22, 4:22 PM: ---------------------------------------------------------------- At the moment, most discussions happen here in the comments sections of pertinent tickets or on github in the pull request comments. There isn't much in terms of release planning that I have observed. I generally try to fix old bugs from here or add tickets for items that I run into myself. For Groovy 5 I'm hoping to implement native interface default, private and static methods (GROOVY-8299/GROOVY-8989) and I think your traits static constants request (GROOVY-10000) dovetails nicely with the interface change as well. was (Author: emilles): At the moment, most discussions happen here in the comments sections of pertinent tickets or on github in the pull request comments. There isn't much in terms of release planning that I have observed. I generally try to fix old bugs from here or add tickets for items that I run into myself. For Groovy 5 I'm hoping to implement native interface default, private and static methods which is GROOVY-8299/GROOVY-8989 and I think your traits static constants request (GROOVY-10000) dovetails nicely with the interface change as well. > Regression: Indy compiler in 4.0 uses wrong key for map lookup > -------------------------------------------------------------- > > Key: GROOVY-10546 > URL: https://issues.apache.org/jira/browse/GROOVY-10546 > Project: Groovy > Issue Type: Bug > Components: Compiler > Reporter: Christopher Smith > Priority: Critical > Attachments: closure.javap.txt, image-2022-03-25-10-37-24-960.png, > screenshot-1.png > > > I have a Gremlin pipeline that returns a complex object as a nested map. > {code} > private static final String LABEL_INV = 'invitation-1234' > g./... > .select(LABEL_INV, LABEL_OTHER) > .next() > .with {] invitation: process(it[LABEL_INV]) ]} > {code} > This was working correctly in Groovy 3. In Groovy 4, however, the map lookup > is passed {{null}} instead of the value in the constant. The query builder > correctly passes the constant value, and the map contained in {{it}} has the > constant as a key as expected. However, {{DefaultGroovyMethods#getAt(Map, > Object)}} is passed the {{it}} map as self but {{null}} for the key. > I am a complete noob at InvokeDynamic, but _perhaps_ this seems to be a > sequencing issue where indy binds the value for {{key}} in bootstrap before > actually initializing it? -- This message was sent by Atlassian Jira (v8.20.1#820001)