Skip to content

Releases: hyperledger/iroha

2.0.0-pre-rc.21.1

03 May 08:16
Compare
Choose a tag to compare
2.0.0-pre-rc.21.1 Pre-release
Pre-release

Fixed

  • add RawGenesisBlock to schema (#4538)
  • remove nested option on TransactionEventFilter::block_height (#4538)

2.0.0-pre-rc.21

19 Apr 11:04
d7e7cca
Compare
Choose a tag to compare
2.0.0-pre-rc.21 Pre-release
Pre-release

Added

  • include trigger id in trigger entrypoint (#4391)
  • expose event set as bitfields in schema (#4381)
  • introduce new wsv with granular access (#2664)
  • add event filters for PermissionTokenSchemaUpdate, Configuration and Executor events
  • introduce snapshot "mode" (#4365)
  • allow granting/revoking role's permissions (#4244)
  • introduce arbitrary-precision numeric type for assets (remove all other numeric types) (#3660)
  • different fuel limit for Executor (#3354)
  • integrate pprof profiler (#4250)
  • add asset subcommand in client CLI (#4200)
  • Register<AssetDefinition> permissions (#4049)
  • add chain_id to prevent replay attacks (#4185)
  • add subcommands to edit domain metadata in client CLI (#4175)
  • implement store set, remove, get operations in Client CLI (#4163)
  • count identical smart contracts for triggers (#4133)
  • add subcommand into client CLI to transfer domains (#3974)
  • support boxed slices in FFI (#4062)
  • git commit SHA to client CLI (#4042)
  • proc macro for default validator boilerplate (#3856)
  • build progress information to wasm_builder_cli (#3237)
  • introduced query request builder into Client API (#3124)
  • lazy queries inside smart contracts (#3929)
  • fetch_size query parameter (#3900)
  • asset store tranfer instruction (#4258)
  • guard against secrets leakage (#3240)
  • deduplicate triggers with the same source code (#4419)

Changed

  • bump rust toolchain to nightly-2024-04-18
  • send blocks to observing peers (#4387)
  • split pipeline events into block and transaction events (#4366)
  • rename [telemetry.dev] config section to [dev_telemetry] (#4377)
  • make Action and Filter non-generic types (#4375)
  • improve event filtering API with builder pattern (#3068)
  • unify various event filter APIs, introduce a fluent builder API
  • rename FilterBox into EventFilterBox
  • rename TriggeringFilterBox into TriggeringEventFilterBox
  • improve filter naming, e.g. AccountFilter -> AccountEventFilter
  • rewrite config according to the configuration RFC (#4239)
  • hide internal structure of the versioned structs from the public API (#3887)
  • temporarily introduce predictable ordering after too many failed view changes (#4263)
  • use concrete key types in iroha_crypto (#4181)
  • split view changes from normal messages (#4115)
  • make SignedTransaction immutable (#4162)
  • export iroha_config through iroha_client (#4147)
  • export iroha_crypto through iroha_client (#4149)
  • export data_model through iroha_client (#4081)
  • remove openssl-sys dependency from iroha_crypto and introduce configurable tls backends to iroha_client (#3422)
  • replace unmaintained EOF hyperledger/ursa with in-house solution iroha_crypto (#3422)
  • optimize executor performance (#4013)
  • topology peer update (#3995)

Fixed

  • remove corresponding triggers on Unregister<Domain> (#4461)
  • remove permissions from roles on entity unregistration (#4242)
  • assert that genesis tranasction is signed by genesis pub key (#4253)
  • introduce timeout for unresponsive peers in p2p (#4267)
  • prevent registering genesis Domain or Account (#4226)
  • MinSize for ChaCha20Poly1305 (#4395)
  • start console when tokio-console is enabled (#4377)
  • separate each item with \n and recursively create parent directories for dev-telemetry file logs
  • prevent account registration without signatures (#4212)
  • key pair generation is now infallible (#4283)
  • stop encoding X25519 keys as Ed25519 (#4174)
  • do signature validation in no_std (#4270)
  • calling blocking methods within async context (#4211)
  • revoke associated tokens on entity unregistretration (#3962)
  • async blocking bug when starting Sumeragi
  • fixed (get|set)_config 401 HTTP (#4177)
  • musl archiver name in Docker (#4193)
  • smart contract debug print (#4178)
  • topology update on restart (#4164)
  • registration of new peer (#4142)
  • on-chain predictable iteration order (#4130)
  • re-architect logger and dynamic configuration (#4100)
  • trigger atomicity (#4106)
  • query store message ordering issue (#4057)
  • set Content-Type: application/x-parity-scale for endpoints which reply using SCALE

Removed

  • logger.tokio_console_address configuration parameter (#4377)
  • NotificationEvent (#4377)
  • Value enum (#4305)
  • MST aggregation from iroha (#4229)
  • cloning for ISI and query execution in smart contracts (#4182)
  • bridge and dex features (#4152)
  • flattened events (#3068)
  • expressions (#4089)
  • auto-generated config reference
  • IROHA_SKIP_WASM_CHECKS env variable (#4096)
  • warp noise in logs (#4097)

Security

  • prevent pub key spoofing in p2p (#4065)
  • ensure the secp256k1 signatures coming out of OpenSSL are normalized (#4155)

1.6.0

05 Apr 11:16
8586246
Compare
Choose a tag to compare

Here are the changes compared to HL Iroha 1.5 (since 10th May 2022):

Features

  1. Added iroha-cpp library. This was done according to Hyperledger Mentorship 2022: Implement iroha-cpp library for Hyperledger Iroha 1: #2660 by @andprogrammer (mentors were: @baziorek and @Pawlak00)
  2. Extended commands AddAssetQuantity and SubtractAssetQuantity with optional parameter "description". This was done according to Hyperledger Mentorship 2023: Iroha 1: Enhance query functionality by introducing supplementary, optional parameters to extend the versatility and customization capabilities of queries within the Hyperledger Iroha 1 blockchain: #4003 by @dominious1 (mentors were: @baziorek , @andprogrammer, @6r1d and @appetrosyan)
  3. Feature/proposal batches: #2357 by @iceseer
  4. Feature/db cache multi layer: #2387 by @iceseer
  5. Feature/single pointer cache ref: #2364 by @iceseer
  6. Allow configuring max past time of transaction created_time #1776 by @baziorek

Fixes:

  1. Fix/rdb burrow storage tests #2243 by @iceseer
  2. Synchronizer fix to store not more than 1000 blocks #2269 by @iceseer
  3. No cache synchronization on round switch and Send/Recv packets size become 128 Mb #2218 by @iceseer
  4. Fix/transfer asset permitions #2720 by @iceseer
  5. Fix/unkai unexpected symbol check #2731 by @iceseer
  6. Fix/gRPC drop stream bugfix #2749 by @iceseer
  7. Many devops fixes of CI by @safinsaf : (17 Pull Requests or commits)
  8. Fix compilation: #2902 by @baziorek

Documentation changes:

  1. #2446 by @6r1d
  2. #2448 by @6r1d
  3. #2448 by @6r1d
  4. #2475 by @baziorek
  5. #2739 by @baziorek
  6. #2739 by @LiraLemur
  7. #2739 by @cavalryjim
  8. #1920 by @6r1d
  9. Added information how to built Iroha 1 on Raspberry Pi 4: #2948 by @baziorek
  10. Maintainer list update: #2957 by @6r1d
  11. #2579 by @6r1d
  12. #3034 by @6r1d
  13. #3057 by @omahs
  14. #3070 by @6r1d
  15. #3079 by @6r1d
  16. #3086 by @6r1d
  17. #4055 by @6r1d

What's Changed (all commits)


Read more

2.0.0-pre-rc.20 (LTS)

14 Nov 10:38
f9f5ede
Compare
Choose a tag to compare
2.0.0-pre-rc.20 (LTS) Pre-release
Pre-release

Below is the list of changes that were introduced in RC20 long term-supported release candidate of Iroha 2.

New Features

  • Soft fork recovery
  • Runtime-definable permissions
  • Executor and instruction visitor
  • WSV snapshots via the SnapshotMaker actor for a fast restart without the block replay
  • Domain ownership (domains now have the owned_by field)
  • Server-side cursor fetch_size for query batching (used to be defined in the client configuration)

Removed Features

  • Ursa support was discontinued in favor of iroha_crypto.
  • Expressions were removed as well as the simplified data model API that has become obsolete.

Improvements

  • Standardized the layout of blocks: introduced BlockBuilder and ProofBuilder, replaced VersionedCommittedBlock with SignedBlock, improved block lifecycle and state transitions.
  • Standardized the layout of transactions: removed the Versioned prefix from versioned containers.
  • Simplified the layout of Iroha 2 schema: every entry is now unique.

2.0.0-pre-rc.19 (lts-candidate)

15 Aug 08:07
Compare
Choose a tag to compare
Pre-release

The latest development in the private DLT.

Includes dynamic permission validators, an improved consensus engine, and various smaller improvements.

2.0.0-pre-rc.6 (LTS)

07 Jul 06:49
Compare
Choose a tag to compare
2.0.0-pre-rc.6 (LTS) Pre-release
Pre-release

Long term-supported release candidate. We have reached a level of feature completeness, but want to ensure that things are working properly. This is the first major development milestone and we expect a lot of feedback with the option to re-architect some bits later down the line.

What's Changed

Read more

1.5.0

10 May 12:18
0d22d11
Compare
Choose a tag to compare

Here are the changes compared to HL Iroha 1.4:

Features

RocksDB Storage Implementation for Burrow #2065

Removed proposal_delay timeout (now is set automatically as 2 * proposal_creation_timeout based on the calculations of the optimal value of the proposal delay) #1847

Performance Improvement

Removed separate MST endpoint: MST module is now located in the Ordering Service module to improve the performance #1927

Proposal request optimization #1869 #1971

Documentation

Documentation on Healthcheck Endpoint, Iroha Swarm, RocksDB and Postgres comparison and an example of good migration practice #1935
Documentation build fix #2069

Infrastructure

Removed Jenkins-related files as a part of moving CI to GitHub Actions #1921
More changes in CI can be seen here

Docker image existence flag fix #1901

2.0.0-pre-rc.3

10 May 11:10
8d83a3e
Compare
Choose a tag to compare
2.0.0-pre-rc.3 Pre-release
Pre-release
  • Schema changes that fix #1969
  • Schema endpoint (use curl -X GET http://127.0.0.1:8080/schema)
  • WASM decode optimisations
  • timed triggers
  • Improved API for generating ISI (documentation pending)
  • By-call triggers

2.0.0-pre-rc.2

05 Mar 12:10
920e4d1
Compare
Choose a tag to compare
2.0.0-pre-rc.2 Pre-release
Pre-release

Contains accumulated work and is the first timed public release of Iroha 2. Currently includes

  • Fully functioning Sumeragi consensus
  • Partial support for permissioned and permissionless deployment
  • Fully functional front- and back-end, for block deployment and synchronisation.
  • Prometheus metrics
  • Basic trigger implementation
  • Basic WASM support
  • Fully functional structured logging without rotation

The tutorial describing how to get started can be found here

1.4.0

17 Feb 10:00
310d1cd
Compare
Choose a tag to compare

Since 1.3 the team implemented the following features and fixes:

Features

Syncing Node #1648

Adds syncing node state for Iroha.

What is a syncing node?

Node in the state can:

  • send transactions
  • execute queries
  • synchronize with remote nodes
  • apply and validate blocks
  • construct WSV

It can not:

  • request proposals
  • send votes(votes from such a node will be skipped)
  • generate events of building block

RocksDB Metrics #1692

Healthcheck #1735

Added healthcheck interfaces via:

  • http
  • grpc
  • metrics

General Fixes

Iroha v1.4-rc.1 fixes #1785 :

  • Drop wsv flag behavior
  • Signatory case insensetive checks
  • Transaction status description from 5 byte to 1 byte if true or 0 byte if false
  • Bloom filter in RDB
  • RadixTrie enumerates nodes by prefix filter
  • RDB 2-layer cache for WSV

Iroha v1.4-rc.2 fixes #1824 :

  • Switched from optimistic to transactions database in RocksDB
  • WSV and block store are now in different column families
  • WSV schema version increased to 1.4.0

GitHub Action Docker tag #1609

Fixed sample config files (from max_rounds_delay to proposal_creation_timeout and deprecated DB connection string) #1662

Docs Fixes

Fixed broken links: build status, build guide, etc. #1318
Small Fixes on Configuration and Docker Metrics #1654
Added missing dependencies: #1393