-
Notifications
You must be signed in to change notification settings - Fork 4
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
secp-api/secp-bouncy: backport to Java 8 #140
Conversation
5336a79
to
8d68d1d
Compare
If this is approved/merged, I plan to backport it to the 0.0.2 branch before releasing it. @schildbach This should allow us to start experimental refactoring of |
8d68d1d
to
52b3e2c
Compare
@craigraw This shouldn't affect you, but I thought you might be interested and you also have experience with modules so maybe you might have an idea for improvement. |
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.
I don't have much experience with multi-release jars, but I'm certainly in favour of modular support by default.
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.
Looks good! Being Java 8 compatible certainly makes it easier for us.
secp-api/src/main/java/org/bitcoinj/secp/api/Secp256k1Provider.java
Outdated
Show resolved
Hide resolved
* IDEs will see secp-api, secp-bouncy modules as Java 9 * apiModuleJavaCompatibility property is used with `org.beryx.jar` Gradle plugin to create Java 8 JARs with module-info on official builds * Remove usages of Java 9 API in secp-api and secp-bouncy Developers of secp-jdk using IDEs will need to be aware that the actual requirements are Java 8 API. But mistakes will be caught by CI.
52b3e2c
to
de600d7
Compare
Technically they aren't multi-release jars. They're just Java 8 JARs with |
This PR means that released jars for the API and the Bouncy Castle implementation will be Java 8-compatible, but will still have
module-info
records in them. Thesecp-ffm
module will remain at JDK 23+.Developers of secp-jdk using IDEs will need to be aware that the actual requirements are Java 8 API. But mistakes will be caught by CI.