I found that the latest ASM or more likely the now Java 11
Equinox broke the @NonNull test in the OCL CG that had stuck at
ASM5 initialization.
I therefore replaced the init by a reflective scan to discover
what the prevailing latest version of ASM is. (OCL mindlessly uses
whatever Xtext / the platform provides.)
private static int ASM_VERSION = Opcodes.ASM5; //
Default to first Java 8 version
static {
try {
for (int i = 6; true; i++) { // Loop
for as many versions are available
Field asmField =
org.objectweb.asm.Opcodes.class.getField("ASM" + i);
ASM_VERSION = asmField.getInt(null);
}
} catch (Throwable exception) {
}
}
The main reason we use a "fixed" asm version is the habit of
asm in the past dropping "EXPERMENTAL" constants for newer java
versions
and thus code that we might compile against asm 9.x wont run
with asm 9.x+1 anymore
so if we use a strict range we dont have to pay extra extra
attention about the (NOT)use of the constants that can be
deleted later
Am 06.05.22 um 11:39 schrieb Ed
Merks:
Jonah,
I suspect it's okay, but it's definitely a bit confusing.
I believe the eclipse/plugins/org.objectweb.asm_9.3.0.jar is
present because it hasn't been garbage collected yet. As your
console indicates, only the Orbit version is resolved and the
About dialog shows that too:

We see here too that the direct-from-maven bundles generally
have poor provider/name information.
These are the org.objectweb.asm.* bundles in the latest
2022-06/202205061000, i.e., a bunch of duplicate 9.2.0
versions, but for 9.3.0, only the Orbit version of
org.objectweb.asm along with the platform's version of
org.objectweb.asm.tree.

Why are these all there in the first place?
This view shows each duplicate org.objectweb.asm.* with
nested capabilities filtered to those to which a requirement
is resolved that is exclusively resolved only to that specific
IU's capability.

So we can see that org.objectweb.asm.tree is present only
because PDE requires it. We can see that Xtext and Platform
require the 9.3 version and while the Eclipse does not
preclude a 9.4 version, Xtext's bundle requirements do exclude
9.4. I wonder if there is a good reason for to exclude 9.4?
We can also see that ECF, EclEmma, and Linux Tools will need
to take action to eliminate the 9.2 versions. I wonder if
they are paying attention?
It would seem better to me if the Platform used the Orbit
versions to keep things more consistent...
Regards,
Ed
On 06.05.2022 02:08, Jonah Graham
wrote:
OK - in that case we have some specific SimRel
testing to do:
1- Which bundles ends up SimRel - or do both
end up there. I assume that it will be the Orbit
one because it is more recent as far as p2 is
concerned (not sure, just best guess).
In 4.24 SDK there is the Maven version of asm and
asm.tree.
In 2022-06 M2 p2 repo there is Maven version of
asm.tree (from platform p2 repo) and Orbit version of
asm (from Xtext's p2 repo)
2- Starting from the SDK, does installing
features from SimRel cause both to be
installed, and if so, are both resolved.
Starting with M2 SDK, installing Xtext SDK from
2022-06 M2 simrel causes asm.tree from Orbit to be
installed:
osgi> ss org.objectweb.asm
"Framework is launched."
id State Bundle
283 RESOLVED org.objectweb.asm.tree_9.3.0
374 RESOLVED org.objectweb.asm_9.3.0.v20220409-0157
Both versions of asm are in my plugins directory
after installing xtext:
$ ll eclipse/plugins/*asm*
-rw-r--r-- 1 jonah jonah 122176 Apr 28 19:00
eclipse/plugins/org.objectweb.asm_9.3.0.jar
-rw-rw-r-- 1 jonah jonah 136049 May 5 19:57
eclipse/plugins/org.objectweb.asm_9.3.0.v20220409-0157.jar
-rw-r--r-- 1 jonah jonah 52669 Apr 28 19:00
eclipse/plugins/org.objectweb.asm.tree_9.3.0.jar
So is that OK?
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cross-project-issues-dev
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cross-project-issues-dev
Vorstand/Board: Jens Wagener (Vors./chairman), Dr. Stephan
Eberle, Abdelghani El-Kacimi, Wolfgang Neuhaus, Franz-Josef
Schuermann
Aufsichtsrat/Supervisory Board: Michael Neuhaus
(Vors./chairman), Harald Goertz, Eric Swehla
Sitz der Gesellschaft/Registered Office: Am Brambusch 15-24,
44536 Lünen (Germany)
Registergericht/Registry Court: Amtsgericht Dortmund | HRB
20621
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cross-project-issues-dev