-
Notifications
You must be signed in to change notification settings - Fork 201
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CDT 11.3 does not have BREE header in MANIFEST.MF, uses Require-Capability, causes false positive API Compatibility errors #551
Comments
I suspect the easiest thing short term is to add API filters for this error, but I need to track this back to Tycho and/or PDE to resolve fully. |
This is PDE issue for sure as BREE is deprecated by OSGi for years although PDE never made the move. |
I'm using Tycho 4.0.1 to build our IDE and we still have Bundle-RequiredExecutionEnvironment headers in manifests of the built jar files |
@jonahgraham Looking at the differences in the CDT pom & my local ones, I think the difference causing this is I have " |
With BREE back on in eclipse-cdt#551 we bump all affected bundles so make sure we republish updated versions in 11.4 Part of eclipse-cdt#548 Part of eclipse-cdt#551
Includes adding API error filters for the places where PDE does not detect Require-Capability in place of BREE. With BREE back on we bump all affected bundles so make sure we republish updated versions in 11.4 Fixes eclipse-cdt#551
Includes adding API error filters for the places where PDE does not detect Require-Capability in place of BREE. With BREE back on we bump all affected bundles so make sure we republish updated versions in 11.4 Fixes eclipse-cdt#551
To workaround eclipse-cdt#551 we need to make a CDT 11.3.1 build that has the BREE restored to use as a baseline for CDT 11.3.2 (if we release that) and CDT 11.4.0
This is to workaround the missing BREE in CDT 11.3.0, see eclipse-cdt#551 for details Part of eclipse-cdt#551
This is to workaround the missing BREE in CDT 11.3.0, see eclipse-cdt#551 for details Part of eclipse-cdt#551
This happened to work before because the contents of api-baseline.repo was in api-baseline.repo.simrel so the error in the pom.xml went undetected until eclipse-cdt#551 issue meant api-baseline.repo wasn't in api-baseline.repo.simrel
The final resolution of this:
Last question, should we publish 11.3.1 fully (i.e. add it to https://download.eclipse.org/tools/cdt/releases/11.3/ composite) or just add a note as to why it is excluded. My current preference is the latter, but I am open to suggestions! |
I'd vote for not publishing 11.3.1 and just adding a note. Future updates will still work so there doesn't seem to be any need to cause an extra update for users. |
Done in 78e1520 and https://ci.eclipse.org/cdt/job/promote-files-to-download/ has been run to copy the files to https://download.eclipse.org/tools/cdt/releases/11.3/ |
This is to workaround the missing BREE in CDT 11.3.0, see eclipse-cdt#551 for details Part of eclipse-cdt#551
This happened to work before because the contents of api-baseline.repo was in api-baseline.repo.simrel so the error in the pom.xml went undetected until eclipse-cdt#551 issue meant api-baseline.repo wasn't in api-baseline.repo.simrel
A newer Tycho is needed to enable build and test against more recent platform. tycho-packaging-plugin is needed explicitly to ensure that the headers in MANIFEST.MF are not removed during build. This ensures cdt-lsp doesn't have this same problem as CDT had recently eclipse-cdt/cdt#551 The inclusion of tycho-packaging-plugin also contains the missing source references in the MANIFEST.MF outputs.
A newer Tycho is needed to enable build and test against more recent platform. tycho-packaging-plugin is needed explicitly to ensure that the headers in MANIFEST.MF are not removed during build. This ensures cdt-lsp doesn't have this same problem as CDT had recently eclipse-cdt/cdt#551 The inclusion of tycho-packaging-plugin also contains the missing source references in the MANIFEST.MF outputs.
A newer Tycho is needed to enable build and test against more recent platform. tycho-packaging-plugin is needed explicitly to ensure that the headers in MANIFEST.MF are not removed during build. This ensures cdt-lsp doesn't have this same problem as CDT had recently eclipse-cdt/cdt#551 The inclusion of tycho-packaging-plugin also contains the missing source references in the MANIFEST.MF outputs.
A newer Tycho is needed to enable build and test against more recent platform. tycho-packaging-plugin is needed explicitly to ensure that the headers in MANIFEST.MF are not removed during build. This ensures cdt-lsp doesn't have this same problem as CDT had recently eclipse-cdt/cdt#551 The inclusion of tycho-packaging-plugin also contains the missing source references in the MANIFEST.MF outputs.
Perhaps as a result of updating Tycho upgrade the CDT 11.3 manifests publish with:
automatically converted from BREE:
This leads to false positive API errors like this:
2023-09-13T22:28:04.9985777Z [API ERROR] File MANIFEST.MF at line 5: The minor version should be incremented in version 8.3.0, since execution environments have been changed since version 8.3.0 (location: /home/runner/work/cdt/cdt/core/org.eclipse.cdt.core/META-INF/MANIFEST.MF)
The text was updated successfully, but these errors were encountered: