Paul King created GROOVY-9736:
---------------------------------
Summary: 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
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.3.4#803005)