From dbe8daff45964ccb83931fb7cb7330f282f6eb35 Mon Sep 17 00:00:00 2001 From: Sean Gilligan Date: Thu, 5 Oct 2023 21:04:50 -0700 Subject: [PATCH] Prepare for release v0.7.0-alpha3 --- CHANGELOG.adoc | 30 +++++++++++++++++-- README.adoc | 6 ++-- ...rg.codehaus.groovy.runtime.ExtensionModule | 2 +- doc/release-process.adoc | 6 ++-- gradle.properties | 2 +- 5 files changed, 36 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index bc440a88f..0d635f894 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -3,14 +3,39 @@ A high-level view of the changes in each ConsensusJ binary release. -== v0.7.0-SNAPSHOT +== v0.7.0-alpha3 -Released: Under development +Released: 2023-10-05 + +This release includes significant updates the JSON-RPC client(s) and contains what should be relatively minor breaking changes. === JSON-RPC clients +* Upgraded to use `java.net.http` asynchronous client by default +* Async operation is now the default at the transport layer +* Asynchronous connection and "wait for server" logic +* Migrate "wait for server" logic from `BitcionCient` to `DefaultRpcClient` +* `DefaultRpcClient` replaces `AbstractRpcClient` and takes a configurable `JsonRpcTransport` +* Partial decoupling from Jackson JSON processor (see type parameter `T` in `JsonRpcClient`) * Remove deprecated methods that use `SSLSocketFactory` (In favor of `SSLContext`) +* Remove deprecated methods that use/return `NetworkParameters`. + +=== consensusj-jsonrpc-cli + +* Is now built using Java and GraalVM 21. +* `--log=n` option to set log-level. + +=== Reactive (Rx) Components + +* Migrate from `Flowable` to `Publisher` where possible (breaking changes but easy to work around) +* Migrate from `Single`/`Maybe` to `CompletableFuture` in some (mostly internal) places +* `ChainTipPublisher` class help solves issues with erasure in generics and allow DI component constructors + to take a `ChainTipPublisher` rather than `ChainTipClient`. + +=== Reproducible/Deterministic build +* See https://github.com/ConsensusJ/consensusj/issues/17[Issue 17] and `release-process.adoc`. +* CI builds generate `SHA256SUMS` file for verification. === Dependency Updates @@ -23,6 +48,7 @@ Released: Under development * Gradle 8.4 * Create GitHub Actions GraalVM CE Matrix: Java 17, **21** +* GitLab CI build uses Debian "Trixie" and OpenJDK 21 == v0.7.0-alpha2 diff --git a/README.adoc b/README.adoc index 89ede5038..fe614787d 100644 --- a/README.adoc +++ b/README.adoc @@ -1,9 +1,9 @@ = ConsensusJ Sean Gilligan -v0.7.0-alpha2 +v0.7.0-alpha3 :description: ConsensusJ README document. -:consensusj-version: 0.7.0-alpha2 -:bitcoinj-version: 0.17-alpha1 +:consensusj-version: 0.7.0-alpha3 +:bitcoinj-version: 0.17-alpha2 :bitcoinj-apidoc: https://bitcoinj.org/javadoc/{bitcoinj-version}/ :cj-apidoc: https://consensusj.github.io/consensusj/apidoc :tip-caption: :bulb: diff --git a/cj-bitcoinj-dsl-gvy/src/main/resources/META-INF/services/org.codehaus.groovy.runtime.ExtensionModule b/cj-bitcoinj-dsl-gvy/src/main/resources/META-INF/services/org.codehaus.groovy.runtime.ExtensionModule index 77e5a2d0f..c960c42af 100644 --- a/cj-bitcoinj-dsl-gvy/src/main/resources/META-INF/services/org.codehaus.groovy.runtime.ExtensionModule +++ b/cj-bitcoinj-dsl-gvy/src/main/resources/META-INF/services/org.codehaus.groovy.runtime.ExtensionModule @@ -1,4 +1,4 @@ moduleName=ConsensusJ Groovy extensions for bitcoinj -moduleVersion=0.7.0-SNAPSHOT +moduleVersion=0.7.0-alpha3 extensionClasses=org.consensusj.bitcoinj.dsl.groovy.categories.CoinCategory,org.consensusj.bitcoinj.dsl.groovy.categories.NumberCategory staticExtensionClasses=org.consensusj.bitcoinj.dsl.groovy.categories.StaticECKeyExtension \ No newline at end of file diff --git a/doc/release-process.adoc b/doc/release-process.adoc index db556f086..f91e48de4 100644 --- a/doc/release-process.adoc +++ b/doc/release-process.adoc @@ -2,9 +2,9 @@ == Main Release Process -. Use Java 17 for official builds -.. `sdk use 17.0.8-tem` -.. `sdk use 17.0.8-graalce` (for GraalVM build) +. Use Java 21 for official builds +.. `sdk use 21-tem` (not available yet!) +.. `sdk use 17.0.8-graalce` (for GraalVM build, used for 0.7.0-alpha3 official build) . Update `CHANGELOG.adoc` . Set versions .. `gradle.properties` diff --git a/gradle.properties b/gradle.properties index df2eddaa6..98f1b82a1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ -consensusjVersion = 0.7.0-SNAPSHOT +consensusjVersion = 0.7.0-alpha3 bitcoinjVersion = 0.17-alpha2 rxJavaVersion = 3.1.7