Skip to content

Migrate secp-api and secp-bouncy modules to Java 8 compatibility #165

@msgilligan

Description

@msgilligan

I had originally intended to use either Multi-Release JARs or the org.beryx.jar Gradle Plugin to allow the secp-api and secp-bouncy modules/jars to be used in Java 8 applications and libraries (especially bitcoinj.)

I ran into some issues with org.beryx.jar and multi-submodule Gradle builds, so I removed it with PR #144.

I'm thinking that the simplest and best solution is to downgrade secp-api and secp-bouncy to Java 8 starting with the 0.2 release and continuing through the 1.0 release.

I really wanted secp256k1-jdk to be fully-modular from the start, but I think having secp-api and secp-bouncy as Java 8 jars with the Automatic-Module-Name attribute should be fine.

The main two use-cases for secp256k1-jdk are bitcoinj and Sparrow Wallet. I know pure/simple Java 8 JARs are best for bitcoinj. And I don't think it matters to Sparrow, because it is using the BadAss JLink Plugin and already converting a bunch of non-modular JARs.

I'm thinking we can migrate to Java 9 (or later) and fully-modular JARs in either a 1.1 or 2.0 release.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions