Mickael,
I think p2 will currently just fail if pack200 is absent. It definitely
could be smart enough to ignore pack200 artifacts if it knows it can't
unpack them, but I don't think that's currently the case. In fact there
was some rather questionable logic in the code that if some pack200
artifact is downloaded, but it can't be unpacked, p2 will download it
again, assuming that the artifact it downloaded is corrupt, and it will
try that 200 times (I believe that's the magic number) before it tries
to just download the plain .jar artifact, if available. This of course
leads to horrible performance.
But I agree that if there were a Java unpack200 library p2 could use,
that would be better and perhaps perform better than execing a process.
Keep in mind that one of the "smart" aspects of the current design of
using the JRE's pack200 is that you could update your IDE from say a
version that currently requires Java 8 but is running with Java 9 to a
version that actually requires Java 9. If the library for unpack200 is
included in the IDE itself, it would only know about unpacking Java 8
and wouldn't be able to unpack Java 9 (leading to the above horrible
performance problem).
Regards,
Ed
On 26.06.2018 09:11, Mickael Istria wrote:
Hi Peter, hi Ed,
Thanks Peter for anticipating this upcoming issue!
I think relying on a Java-based implementation of pack200 is a good idea.
Indeed, when pack200 is not shipped with the JRE by default, p2
wouldn't be able to use it anymore if there is no alternative. I think
p2 has the necessary smartness (maybe some switches) to just ignore
pack200 artifacts if we don't have a better solution by then.
In the meantime, I think the best strategy for p2 is just to wait
until the removal of pack200 happens, and when it happens, switch to
whichever best pack200 implementation (could be yours) or simply drop
pack200 if it happens that the overall state of pack200 in the Java
community reached a point where we can assume it's dead.
I do not have the feeling that p2 project and its contributors can be
strong drivers about the future of pack200 here because everyone is
busy with many things, and both p2 and the Eclipse world could survive
very well without pack200 (updates would "just" be a bit slower). I
guess pack200 is not critical enough to p2.
But that's an interesting topic to discuss with the community at
large. I'll make it a topic for the Architecture Council to discuss.
Maybe there will be more interest than I expect in actively keeping
support of pack200.
Cheers,
_______________________________________________
p2-dev mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from
this list, visit
https://dev.eclipse.org/mailman/listinfo/p2-dev
_______________________________________________
p2-dev mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from
this list, visit
https://dev.eclipse.org/mailman/listinfo/p2-dev