# Adopting 4.20 mechanisms and APIs

This section describes changes that are required if you are trying to change your 4.19 plug-in to adopt the 4.20 mechanisms and APIs.

1. Pack200 artifacts will no longer be generated for Eclipse starting with 4.21 release
2. Pack200 APIs will no longer generate/use packed artifacts starting with 4.24 release and to be removed in 4.28 release

## 1. Pack200 artifacts will no longer be generated starting with 4.21 release

What is affected: Clients relying on availability of pack200 artifacts (*.pack.gz) in Eclipse Platform p2 repository.

Description: Clients using pack200 (*.pack.gz) artifacts from Eclipse Platform p2 repository are advised to stop doing so and rely on plain old *.jar files instead.

Action required: If your build system/scripts have strong requirement on existence of *.pack.gz artifacts for Eclipse Platform bits do the needed modifications so it can work when these are not around prior to starting to build against 4.21 release.

## 2. Pack200 APIs will no longer generate/use packed artifacts starting with 4.24 release and to be removed in 4.28 release

What is affected: Callers of pack200 specific APIs to experience pack200 artifacts to no longer be used/fetched/generated/mirrored or dealt with in any other way.

Description: Since Eclipse 4.16 these APIs have been having inconsistent behavior depending on the running JVM version - pack200 requests were honored if running on pre Java 14 and ignored on Java 14 and newer due to removal of the underlying tools from the JVM itself. With this upcoming change pack200 requests will no longer be honored no matter the running JVM version.

Action required: Migrate to non-deprecated APIs where possible and stop calling the pack200 specific APIs existing solely for packing reasons as they are not going to receive any replacement methods due to technology being removed from the JVM.