Re: ASM6 beta !
Cédric Champeau <[email protected]> Tue, 18 Jul 2017 16:57:34 +0200
| Newsgroups | gmane.comp.java.objectweb.asm |
|---|---|
| Message-ID | <CADQzvm=cNexW9G-T440ZHV-BEoG2xWS+7mHMakQ9-FteM3hdKg@mail.gmail.com> |
2017-07-17 19:27 GMT+02:00 <[email protected]>: > [Cedric send this privately but given the content, i suppose, he wanted to > post it for everybody] > indeed > It's a good idea for ProGuard to choke on the module-info. > except that it wasn't intentional, but yeah :) > You have two kinds of tools that consume bytecodes, you have VMs and > agents, those consume bytecode lazily thus will never see a > module-info.class (apart if they follow the Java 9 spec), for other tools > that scan jars, they will need to be updated to either skip the module-info > or to read it (maybe with ASM *). > agreed > > In the case of ProGuard, it should read the module-info.class because 1/ > it lists the exported packages, so the config of ProGuard can be simpler > (before you add to explain which package was internal or not), 2/ the > module-info reference services (interfaces and impls) that are classes, if > those are renamed by ProGuard, the module-info need to be updated > accordingly. > yes. In our case we produce an API jar of Gradle, that plugins compile against. This is done once per Gradle version, at runtime. This API doesn't need the module info file (and it should not contain it, in any case, because we don't want the API of Gradle to be the API of ASM). Then some tool consumed that jar and used ProGuard, which choked because it wasn't able to read the class format. That's how we detected the problem (we shouldn't have included the module info file), but it was accidental... > > Also, Cedric, do you have file a bug report to ProGuard ? I was not able > to find it ? And feel free to link to that discussion. > > I didn't file a bug report yet. I need to check with my colleagues who found the problem if they did. > regards, > Rémi > > * ProGuard does not use ASM to read/write the bytecode but its own codes. > > > > 2017-07-16 16:36 GMT+02:00 Remi Forax <[email protected]>: > >> Hi all, >> we, the ASM Team, are proud to announce the release of ASM6 Beta, >> which include the support of the Java 9 classfile format. >> >> Over the last month, we have (mostly Eric in fact) moved ASM out of SVN >> to Git, >> the code source is now available at >> https://gitlab.ow2.org/asm/ >> >> The issues and the docs, etc have not yet migrated to OW2's Gitlab but >> will be soon. >> >> The binaries of the ASM6 beta releases are available on the Gforge: >> http://forge.ow2.org/projects/asm/ >> >> Maven Central repository will be updated soon, we're still have a small >> issue with the internal ow2 nexus due to the migration to Gitlab. >> >> The ASM6_FUTURE branch has been merged to the master (ex trunk) so bug >> fixes, etc, will be done in priority on ASM6. >> >> ASM 6 release notes: >> - add a new kind of visitor, ModuleVisitor that visit a module >> descriptor (module-info) >> - add a new API constant: Opcodes.ASM6 >> - support JDK specific attributes (ModuleTarget, ModuleHashes and >> ModuleResolution) in asm.commons >> - support PACKAGE and MODULE new constant pool entries (can be used by >> custom attributes) >> - update asm.tree by adding ModuleNode, ModuleRequireNode, >> ModuleExportNode, ModuleOpenNode and ModuleProvideNode >> - update ASMifier and the Trace visitors >> - the remapper support to remap module name (and update ModuleHashes if >> present accordingly) >> - ASM jars are now modules too, most of the jars are still compatible >> with Java 1.3, asm-xml is compatible with Java 1.4 and asm-all-debug is >> compatible with Java 1.5 >> - does not work with javac 9 (yet !) >> >> regards, >> Rémi >> >> >> >> >> >> >> -- >> You receive this message as a subscriber of the [email protected] mailing list. >> To unsubscribe: mailto:[email protected] >> For general help: mailto:[email protected]?subject=help >> OW2 mailing lists service home page: http://www.ow2.org/wws >> >> > -- You receive this message as a subscriber of the [email protected] mailing list. To unsubscribe: mailto:[email protected] For general help: mailto:[email protected]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws