This repository was archived by the owner on Oct 11, 2023. It is now read-only.
Replies: 2 comments 1 reply
-
Many thanks for your efforts @merks @jonahgraham |
Beta Was this translation helpful? Give feedback.
1 reply
This comment has been hidden.
This comment has been hidden.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Orbit has moved to its own GitHub organization:
In this organization, the new orbit-simrel repository is intended to replace (as much as possible) the use of EBR for the obit repository's recipes.
maven-osgi
Every Orbit recipe that corresponds to a Maven dependency that is available from Maven central as an OSGi artifact, will be removed from the orbit repository. Projects can instead directly specify such dependencies in their target platform. The following folder of the orbit-simrel repository shows how that's properly done, including the necessary Tycho infrastructure:
As a convenience for SimRel participants, the Orbit project provides the following p2 repository with PGP-signed artifacts that is effectively the "augmented union" of all the dependencies of all SimRel participants:
The dependencies here are automatically updated to the latest minor version as such versions become available.
In addition, reports are generated to help SimRel participants keep their dependencies up-to-date:
Note that often the direct-from-Maven OSGi-bundle will have a different bundle symbolic name than the legacy Orbit bundled version.
maven-bnd
Each remaining Orbit recipe will gradually be replaced (as much as possible) by a dependency specified in a PDE target platform using a "maven" location along with BND instructions. Here's an example:
https://github.com/eclipse-orbit/orbit-simrel/blob/9a03cd1aba89351daccf1d69a7e3d6f4f268bf84/maven-bnd/tp/MavenBND.target#L6-L83
The Orbit project provides the following p2 repository with jar-signed bundled artifacts:
The dependencies here too are automatically updated to the latest minor version as such versions become available.
maven-sign
Some bundles contain native libraries. Native macos libraries,
*.jnilib
, in particular must generally be signed in order to be able to notarize products containing such bundles.The Orbit project provides the following p2 repository with jar-signed bundled artifacts containing signed native libraries:
The dependencies here too are automatically updated to the latest minor version as such versions become available.
orbit-aggregation
To provide "one-stop-shopping", the Orbit project provides a p2 repository that is an aggregation of the following:
I.e., the following aggregated repository is provided:
Repository Structure
This is the general structure of all these three new p2 repositories:
Legacy Links
The existing "legacy composites are planned to be updated as follows:
This cycle will repeat.
Note that old releases (2023-06 and earlier) URLs will not be modified and will continue to point at the same location they were already pointing at.
SimRel Recommendations
Following the above recommendations will allow your contribution to be aggregated without duplication and will allow your contributed bundles to resolve their requirements to newer updated versions (within the range constraints you specify) as those versions become available. Collectively, this will help us to simplify and streamline Orbit's management of 3rd party libraries, In addition, it will make it easier to be responsive to any CVEs that might be discovered in 3rd party libraries without you needing to lift a finger!
Finding Things
Many of the bundles that comes directly from Maven as OSGi artifacts have a different bundle symbolic name than before. The generated page for each simple update site includes useful links and details to help you find what you need. You can click the underlined swizzle to expand all the details to make it easier to search for things like package names. The bundles that are available directly from Maven, and can be specified directly in your target platform using a
maven
location, have a link to Maven Central which gives you the coordinates that you can use:The Repository Explorer is helpful too, especially in "Expert Mode" as underlined on the view toolbar, along with filtering as underlined:
You can even search for packages and double click on one to open the details dialog where you can see which bundles provide that package.
Beta Was this translation helpful? Give feedback.
All reactions