Am 17.08.23 um 08:07 schrieb Paul King:
I created this issue to track that work: https://issues.apache.org/jira/browse/GROOVY-11158 <https://issues.apache.org/jira/browse/GROOVY-11158> There are possibly still a few places where we use some classes directly still. Also, we want to retain backwards compatibility, e.g. libraries/plugins compiled on earlier versions should still work in Groovy 5. [...]
well.. how are dgm helper classes are used? In dynamic Groovy they are not compiled against, their runtime information is used to enhance the classes and their invocation mechanism is not with invokedynamic and should actually be changed. Now in static Groovy there is a chance that for example list#each will compile to something using a dgm. But that would be quite unfortunate, as the dgm classes are really only numbered and their numbering can vary from release to release. I would consider that a bug actually. let me check ... oh btw, the jfrog download link on the top of the download page is giving a 404 - actually several jfrog links give that error. Anyway.. looking at the static compiled code we correctly ignore the dgm helper classes and directly go for DefaultGroovyMethods & Co. Thus I do not really see any danger here. In the worst case a precompiled program with Groovy 4 would be have a slightly longer initialization time on Groovy 5. But that is something I can tell for sure only after the change has been done. bye Jochen