hyperledger-iroha / iroha-dco

Iroha - A simple, decentralized ledger
http://iroha.tech
Apache License 2.0
988 stars 296 forks source link

Hyperledger Iroha v1.0 Release Candidate 5 #2191

Closed lebdron closed 5 years ago

lebdron commented 5 years ago

HL Iroha team is happy to present the new Release Candidate. Here are some changes that we implemented in this release:

Pluggable Consensus: https://github.com/hyperledger/iroha/pull/2125

iroha::consensus::yac::SupermajorityChecker interface now has two implementations: a BFT and a CFT checker. Besides that all the signature-related logic was put away from that interface, and it now operates solely on numbers. Set to BFT by default.

New logger! https://github.com/hyperledger/iroha/pull/2126

Read more here: https://iroha.readthedocs.io/en/latest/guides/configuration.html#logging

Markdown to RST docs configuration: https://github.com/hyperledger/iroha/pull/2146

Now Markdown files from the repository can be referenced in the ReadTheDocs documentation! We also improved build documentation: https://github.com/hyperledger/iroha/pull/2162

Updated ed25519 cryptography to 2.0.1: https://github.com/hyperledger/iroha/pull/2157

YAC storage cleanup: https://github.com/hyperledger/iroha/pull/1947

Old rounds are now cleaned up and that improves stability StorageImpl: faster cleanup: https://github.com/hyperledger/iroha/pull/2174

Added installation security tips to documentation

So you could make sure you use Iroha securely: https://github.com/hyperledger/iroha/pull/2129

Updated configuration template for docker deployment: https://github.com/hyperledger/iroha/pull/2158

and added documentation for new parameters: https://github.com/hyperledger/iroha/pull/2173

Storage now only notifies subscribers of newly committed blocks after they have been actually applied to the ledger: https://github.com/hyperledger/iroha/pull/2179

Before, notification could be sent prior to actual commit which is not considered as correct behaviour.

Synchroniser subscription update: https://github.com/hyperledger/iroha/pull/2160

Now if the synchroniser is waiting for the block for too long, it will break the connection. Also, if the block is failed to be checked, further blocks will not be received from that peer.

Debug deb packages support: https://github.com/hyperledger/iroha/pull/2144

Decrease quantity of allocated proto query objects: https://github.com/hyperledger/iroha/pull/2148

Another improvement reducing memory consumption

Now Iroha version is available through --version argument and in log pattern: https://github.com/hyperledger/iroha/pull/2127

Added different Cmake sanitizers: https://github.com/hyperledger/iroha/pull/2131

Added a fix for direct propagation in YAC. If a peer sends a vote for the old round, Iroha will share last finalized state: https://github.com/hyperledger/iroha/pull/2139

Refactored ordering service queues: https://github.com/hyperledger/iroha/pull/2150

Got rid of consensus race by changing round queue management: https://github.com/hyperledger/iroha/pull/2151

Fixed race bug in command service: https://github.com/hyperledger/iroha/pull/2167

Made YAC accept votes only from peers that it knows: https://github.com/hyperledger/iroha/pull/2134

Created block storage dependency for mutable storage: https://github.com/hyperledger/iroha/pull/1994

Added fix for status stream initialization: https://github.com/hyperledger/iroha/pull/2169

If runtime cache doesn't contain any value we are going to check the persistent cache for the value.

Fixed hash set usage in OS. Fixed block leaks in YacGate and Simulator: https://github.com/hyperledger/iroha/pull/2170

Made most block manipulation functions of storage take constant blocks by shared pointer: https://github.com/hyperledger/iroha/pull/2178

Added implementation of BlockStorage interface based on FlatFile: https://github.com/hyperledger/iroha/pull/2180