[ https://issues.apache.org/jira/browse/GROOVY-9736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17511031#comment-17511031 ]
Christopher Smith commented on GROOVY-9736: ------------------------------------------- I have a couple of AST transformations that add class members, and I need to specify the modifiers. Looking back at it, though, I wonder whether {{java.lang.reflect.Modifier}} might be suitable. > Remove org.objectweb.asm.Opcodes as implemented interface in most (all?) > places > ------------------------------------------------------------------------------- > > Key: GROOVY-9736 > URL: https://issues.apache.org/jira/browse/GROOVY-9736 > Project: Groovy > Issue Type: Improvement > Affects Versions: 3.0.5 > Reporter: Paul King > Assignee: Paul King > Priority: Major > Labels: breaking > Fix For: 4.0.0-alpha-1 > > Time Spent: 20m > Remaining Estimate: 0h > > Back before Java had static imports, a common usage pattern for using > `org.objectweb.asm.Opcodes` was just to implement that interface. Then, > referencing the constants within that interface was simply a matter of > referencing them directly rather than requiring them to be prefixed with the > class name. Since static imports, it is generally better to statically import > the required constants. This avoids that class from leaking into our public > API. It is even slightly more problematic than normal for us since that class > is one of the ones we jarjar, so the leaked class might have a different > package (groovyjarjarasm) than the one some might expect. > This issue is to consider removing all such usage (targeting Groovy 4). Code > which extends any impacted classes might now need to add additional static > imports. One the plus side, the jarjar side of things will then remain better > hidden. -- This message was sent by Atlassian Jira (v8.20.1#820001)