-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Rewrite APIJAR extractor to use Java 24 classfile API and kill ASM dependency also for build system #14613
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
Conversation
…pendency also for build system
|
P.S.: The preview flag removal code is not used by vector API, but I ported it over, too. I tested it with temporarily extracting the Java 24 |
|
Output of regnerate is same as before: The resulting apijar file has similar size, but it is a bit larger. I did not find out what exactly the problem is. But also from my work on the expressions module I figured out that classfile API is a bit more verbose when building the constant pool (numbers are much larger,...). Maybe this is where it comes from. I compared the Eclipse CLASS file dumps in old and new JAR, they contains same symbols and constants, just with different indexes. |
|
I added an additional check missing previously as replacement for the last line in above output: All referenced classes left over after processing need to be publicly available in |
dweiss
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice
dc1d6ed to
fd704fb
Compare
ChrisHegarty
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome! LGTM
|
Thanks for review, I will merge now! |
|
this is awesome, thank you @uschindler |
* main: (27 commits) deps(java): bump com.github.luben:zstd-jni from 1.5.7-2 to 1.5.7-3 (apache#14621) Improve user-facing docs for geo package (apache#14534) Enabling histogram collection for PointRangeQuery (apache#14560) Move sloppySin into SloppyMath from GeoUtils (apache#14516) Rewrite APIJAR extractor to use Java 24 classfile API and kill ASM dependency also for build system (apache#14613) CHANGES entry for apache#14226 (optimistic KNN Query) OptimisticKnnVectorQuery (apache#14226) Fix for Windows (spaces in paths) apache#14608 Update jdk requirements in README to OpenJDK 24 (apache#14610) Always check gradle wrapper sha checksum and download if necessary (apache#14608) Fix changelog verifier (apache#14606) MultiRange query for SortedNumeric DocValues (apache#14404) Remove RANDOM_PRELOAD read advice, which is not actually used (apache#14593) Remove duplicate test (apache#14602) Refactor the expressions compiler to use official ClassData BSM with indexed lookup (apache#14602) Disallow EA versions to run Gradle (apache#14601) Add back-compat indices for 10.2.1 Add Lucene 10.2.1 version constant DOAP changes for release 10.2.1 Revert "An attempt to make jenkins pass with the currently installed jdk24-ea. To be reverted later. apache#14600" ...
The rewrite was not so easy but I got it working.... (in fact, the Javascript compiler was easier).
The code also adds some more sanity checks about correct Java versions. So it will complain in future when the APIJAR extractor extracts for a older java version than the compile target.