Exonum Java Binding 0.9.0-rc1
Pre-release
Pre-release
·
301 commits
to master
since this release
Overview
The main feature of this release is support for dynamic services. Dynamic services can be added
to the blockchain network after it has been started. Since this release EJB also supports multiple
instances of the same service.
Creating proofs is not supported in this release. They will be re-enabled in one of the following
releases.
This release is based on Exonum 0.13.0-rc.2.
If you are upgrading an existing Java service, consult the migration guide.
Added
- Dynamic services support. (#1065, #1145, #1183)
- Exonum protobuf messages to
common
module. (#1085) Service#beforeCommit
handler. (#1132)TestKit
support for dynamic services. (#1145)- Support for flat list proofs, the new compact proof format for
ProofList
. Not introduced to
ProofListIndexProxy
for now. (#1156) - Java runtime plugin for exonum-launcher. (#1171)
serviceName
andserviceId
were added toTransactionContext
. They are used for creating
schemas with unique namespaces. (#1181)- Implement
run-dev
command support for running the node in development mode. (#1217) Configurable
interface corresponding toexonum.Configure
. (#1234)ProofMapIndexProxy#truncate
and#removeLast
. (#1272)- Java 13 support.
Changed
- Support for the new protobuf-based
TransactionMessage
format is provided. (#1085) TimeSchema
supports multiple time service instances. (#1136)TransactionResult
is replaced withExecutionStatus
. (#1174)MapProof
enforces 32-byte long hash codes. (#1191)- The default
ProofMapIndexProxy
implementation has been changed to hash user keys to produce an
internal key. The implementation that does not hash the keys is still supported, see
documentation. (#1222) - Updated Exonum to 0.13.0-rc.2 — see Exonum release page
for details.
Removed
Service#getId
andService#getName
are removed.AbstractService
now provides
similar methods that can be used as replacements. (#1065)Blockchain#getActualConfiguration
has been replaced with
Blockchain#getConsensusConfiguration
, returning only the consensus configuration (now also
containing the validator public keys) as a Protobuf message. (#1185)Transaction#info
method is removed as it is no longer used by the framework. (#1225)ProofMapIndexProxy#getProof
andProofListIndexProxy#getProof
are disabled in this release.
Known Issues
- exonum-java-app module, required by testkit, is not deployed to Maven Central.
That is resolved inmaster
andejb/v0.9.0-rc2
and will be released soon as "0.9.0-rc2" (#1297)