-
Notifications
You must be signed in to change notification settings - Fork 601
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
Update to Smallrye OpenAPI 3.1.1 and add Jandex 3 #23686
Update to Smallrye OpenAPI 3.1.1 and add Jandex 3 #23686
Conversation
Joe's DHE check: ✔️ I found your oss_ibm.maven GAV artifacts on DHE. Thank you! ✔️ |
#build |
Please code review feature-related files, @OpenLiberty/delivery-approvers |
Your personal build request is at https://wasrtc.hursley.ibm.com:9443/jazz/resource/itemOid/com.ibm.team.build.BuildResult/_7AYgUHvNEe2gZbZD5Lij6g Target locations of links might be accessible only to IBM employees. |
afd9cb2
to
1d177d7
Compare
#build |
Please code review feature-related files, @OpenLiberty/delivery-approvers |
Your personal build request is at https://wasrtc.hursley.ibm.com:9443/jazz/resource/itemOid/com.ibm.team.build.BuildResult/_aeJEkJD_Ee2FQJgc_COkyw Target locations of links might be accessible only to IBM employees. |
Joe's DHE check: ✔️ I found your oss_ibm.maven GAV artifacts on DHE. Thank you! ✔️ |
1d177d7
to
c6c280f
Compare
#build |
Please code review feature-related files, @OpenLiberty/delivery-approvers |
Your personal build request is at https://wasrtc.hursley.ibm.com:9443/jazz/resource/itemOid/com.ibm.team.build.BuildResult/_SWm6hpG0Ee2FQJgc_COkyw Target locations of links might be accessible only to IBM employees. |
Joe's DHE check: ✔️ I found your oss_ibm.maven GAV artifacts on DHE. Thank you! ✔️ |
The build Azquelt-23686-20230111-0639 |
During code review, we noticed that although the new bundles are correct, the old smallrye-open-api bundles don't list jandex on their classpath which results in a manifest with no version. This would break if it was used with a feature which included jandex since it would be wired to the wrong bundle. When rebundling a third-party dependency, it's possible to depend on a package without any reference to it in the bnd file so I think it's necessary for me to search through the built version of all bundle manifests to see if there are any references to jandex packages which don't have a version. |
I did a search of the manifest files of all bundles from a recent release build and found a few that import jandex without version ranges. I've updated the bnd files to include the relevant version of jandex on the build path so that bnd will generate an appropriate version range. It looks like the Narayana bundle has some other unversioned imports which may need to be fixed in the future but I haven't tried to fix those here. @idlewis please review b8fc06c |
#build |
Please code review feature-related files, @OpenLiberty/delivery-approvers |
Your personal build request is at https://wasrtc.hursley.ibm.com:9443/jazz/resource/itemOid/com.ibm.team.build.BuildResult/_JkuMAJXDEe2YL83b0ePHDw Target locations of links might be accessible only to IBM employees. |
Joe's DHE check: ✔️ I found your oss_ibm.maven GAV artifacts on DHE. Thank you! ✔️ |
5dfe6f7
to
860bfa1
Compare
Previous build has not started so it will include the latest changes. #libby |
Joe's DHE check: ✔️ I found your oss_ibm.maven GAV artifacts on DHE. Thank you! ✔️ |
The build Azquelt-23686-20230118-1159 For help analyzing your personal build, go to https://cognitive.hursley.ibm.com/buildAnalysis.html?uuid=_JkuMAJXDEe2YL83b0ePHDw |
- Update smallrye-open-api to 3.1.1 - Spec API is now on maven central
For compatibility with smallrye-open-api 3.1.1 which has made updates to their config which we must serialize for our caching.
The original VersionUtil attempts to read the pom.properties from the API jar to obtain the version of OpenAPI in use. Liberty does not package this file because we rebundle the API jar and generate new maven metadata.
Add Jandex to the build path so that we get version ranges on its package imports.
Add Jandex to the build path so that we get version ranges on its package imports.
Add additional projects to the build path so that imports from packages in those projects get the correct version ranges. Need to specify a manual range for MP Config as this bundle needs to work with MP Config 2.0 and 3.0.
860bfa1
to
fcd364b
Compare
Added a manual version range for org.eclipse.microprofile.config to |
#libby |
#build |
Please code review feature-related files, @OpenLiberty/delivery-approvers |
Your personal build request is at https://wasrtc.hursley.ibm.com:9443/jazz/resource/itemOid/com.ibm.team.build.BuildResult/_WtGeoJjQEe2YL83b0ePHDw Target locations of links might be accessible only to IBM employees. |
Code analysis and actionsDO NOT DELETE THIS COMMENT.
|
Joe's DHE check: ✔️ I found your oss_ibm.maven GAV artifacts on DHE. Thank you! ✔️ |
Please code review feature-related files, @OpenLiberty/delivery-approvers |
Your personal build request is at https://wasrtc.hursley.ibm.com:9443/jazz/resource/itemOid/com.ibm.team.build.BuildResult/_fqMVcJjQEe2YL83b0ePHDw Target locations of links might be accessible only to IBM employees. |
The build Azquelt-23686-20230120-0827 |
Additionally the 3.1 spec API artifact is now on maven central so we can reference it there.
SmallRye OpenAPI 3.1.1 depends on Jandex 3, so we also need to add that. Jandex 3 has breaking changes compared to Jandex 2 so Jandex 2 also needs to remain to support older features which use it. I have created a private feature for Jandex 3 since I anticipate that other features will also depend on it.
For the moment, there's one class which is overlaid, I have raised an issue which would allow us to remove that here: smallrye/smallrye-open-api#1333
Fixes #23687