Skip to content

Commit a9e6e04

Browse files
Add v0.3 release highlights [ECR-2551] (#547)
* Add the release highlights and some links to Javadocs, clarify the wording. * Update the release date.
1 parent 46f72ef commit a9e6e04

File tree

1 file changed

+31
-13
lines changed

1 file changed

+31
-13
lines changed

CHANGELOG.md

Lines changed: 31 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,30 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
1515

1616
## [Unreleased]
1717

18-
## [0.3] - TBA <!-- somewhere next week -->
18+
## [0.3] - 2018-10-30
19+
20+
### Highlights
21+
22+
This release brings:
23+
- Support of flat map proofs, the new compact proof format for `ProofMap`,
24+
supporting several keys.
25+
- Built-in serializers of Java primitive types, some Exonum library types
26+
and protobuf messages.
27+
- Ability to report the transaction execution result as an exception with
28+
extra information accessible by a client: `TransactionExecutionException`.
29+
- A separate module `exonum-java-binding-common` that can be used in _client_
30+
applications to create transaction messages, check proofs, serialize/deserialize data,
31+
perform cryptographic operations.
32+
- Various fixes and improvements.
33+
34+
The release is based on Exonum 0.8.
1935

2036
### Added
2137
- Flat map proofs support, including proofs of absence and multiproofs — proofs for several
2238
entries at once. (#250, #507, #532)
23-
- `StandardSerializers` now supports `bool`, `fixed32`, `uint32`, `sint32`,
24-
`fixed64`, `uint64`, `sint64`, `float` and `double` primitive types,
25-
`PrivateKey`, `PublicKey` and `byte[]` serialization. (#514, #523)
39+
- [`StandardSerializers`](https://exonum.com/doc/api/java-binding-common/0.3/com/exonum/binding/common/serialization/StandardSerializers.html)
40+
now supports `bool`, `fixed32`, `uint32`, `sint32`, `fixed64`, `uint64`, `sint64`, `float`
41+
and `double` primitive types, `PrivateKey`, `PublicKey` and `byte[]` serialization. (#514, #523)
2642
- A deterministic `Serializer` of any protobuf message — `StandardSerializers#protobuf`. (#493)
2743
- Static factory methods accepting protobuf messages to collections,
2844
allowing to pass Protocol Buffer messages directly instead of using
@@ -32,18 +48,20 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
3248
- Wallet transactions history support to the cryptocurrency-demo. (#481)
3349

3450
### Changed
35-
- `Transaction#execute` can throw `TransactionExecutionException` to roll back
51+
- [`Transaction#execute`](https://exonum.com/doc/api/java-binding-core/0.3/com/exonum/binding/transaction/Transaction.html#execute-com.exonum.binding.storage.database.Fork-)
52+
can throw `TransactionExecutionException` to roll back
3653
any changes to the database. The exception includes an error code and an optional
37-
description which the framework saves to the storage for later retrieval. (#392)
38-
- Refactor `exonum-java-proofs` module to `exonum-java-binding-common` module
54+
description which the framework saves to the storage for later retrieval.
55+
Any other exception is considered as an unexpected error (panic in Rust terms). (#392)
56+
- Refactored `exonum-java-proofs` module to `exonum-java-binding-common` module
3957
with `com.exonum.binding.common` root package so that more functionality
4058
is available to client applications with no dependency on `exonum-java-binding-core` (#459)
41-
- Move `crypto` package to `exonum-java-binding-common` module. (#467)
42-
- Move `hash` package to `exonum-java-binding-common` module. (#469)
43-
- Move `Transaction`-related classes to the new `com.exonum.binding.transaction` package. (#469)
44-
- Move `messages` package to `message` package in `exonum-java-binding-common` module. (#469)
45-
- Move `proofs` package to `com.exonum.binding.common` package. (#469)
46-
- Move `serialization` package to `com.exonum.binding.common` package. (#469)
59+
- Moved `crypto` package to `exonum-java-binding-common` module. (#467)
60+
- Moved `hash` package to `exonum-java-binding-common` module. (#469)
61+
- Moved `Transaction`-related classes to the new `com.exonum.binding.transaction` package. (#469)
62+
- Moved `messages` package to `message` package in `exonum-java-binding-common` module. (#469)
63+
- Moved `proofs` package to `com.exonum.binding.common` package. (#469)
64+
- Moved `serialization` package to `com.exonum.binding.common` package. (#469)
4765
- `ProofMapIndexProxy#getProof` to return a flat `UncheckedMapProof`
4866
instead of tree-like `MapProof`, which is a more efficient format in terms of space. (#478)
4967
- `ProofListIndexProxy#getProof` and `ProofListIndexProxy#getRangeProof` to return

0 commit comments

Comments
 (0)