Today, locking all Application Definition dependencies has some drawbacks:
- It ties Platform packages (nuxeo-web-ui, nuxeo-csv, ...) dependencies to an explicit target platform (2021.7.17 for instance) because of Platform Packages are only available to one target platform (per HF). And as of today, we are not able to specify an explicit target platform version.
- in Studio IDE, on the current application definition screen, the package search component is only able to select the latest compatible version of a package. Which conflicts with the previous point, or at least lead to not being able to lock a release to a prior version of the latest target platform.
- It makes a package installable to only one HF, and must be re-released to be compatible with a more recent HF.
- For now, we don't have the ability to list precisely available target platform (2021.1, 2021.2, ...) neither the corresponding technical build number (2021.1.4, 2021.2.5, ...)
In order to mitigate those identified issues, we have to:
- Add the ability to specify an explicit HF version in the application definition screen in order to have real compatible packages. Being able to set "latest" as HF to keep the current behavior.
- Fix the current package search component to only list exact compatible packages. It requires to find a way to remove the current retrcompatibility workaround on search query that listing all lts-2021.* packages. See: https://github.com/nuxeo/nos/blob/8943860ee57ba15a24b6f5e1d99da7fae5763ca1/connect/nuxeo-connect-plugin/src/main/java/com/nuxeo/connect/packagerepository/PackageRepositoryComponent.java#L316