2022 Q4 Hyperledger Iroha

Created by Victor Gridnevsky, last modified by Jim Zhang on Dec 01, 2022

Project Health

While the active maintainance of Iroha 1 stopped and no major releases are planned at this time, it still receives regular contributions from outside the core development team.  Grzegorz Bazior  is actively  contributing himself, both with code and support, and organizing contributions from his students. The Iroha 2 team is doing bug triage for both projects and implements security fixes for Iroha 1.

All Iroha 2 developers are now fully onboarded and at maximum productivity. We have implemented a crude delineation of responsibilities, and implemented all processes for long-term development. We are following a timed release cadence, with  a  Long-term supported release planned at critical stability milestones. Iroha 2 repository is well organised, with branch protection rules enforced for all main branches ( iroha2-stable iroha2-dev iroha2-lts iroha2-staging ) as well as a common  CI/CD  pipeline with thorough testing/linting and API verification systems. Iroha 1 and Iroha 2 branches may soon switch places due to the limited maintainance of Iroha 1.

An interaction between Iroha and Ursa teams was established and updates are being implemented.

Questions/Issues for the TSC

None.

Releases

Releases past quarter:

  • v2.0.0-pre-rc.4  (internal)
  • v2.0.0-pre-rc.5  (internal)
  • v2.0.0-pre-rc.6 (LTS)
  • v2.0.0-pre-rc.7  (internal)

Timed:

  • v2.0.0-pre-rc.9

Overall Activity in the Past Quarter

Iroha v1

  • Sample config update: max_rounds_delay was replaced with proposal_creation_timeout in #1662
  • Compile errors with G++11 in Iroha 1 were fixed in #1765
  • Documentation was improved in #2475 and  #2494
  • Building was fixed in #2902 and  #2906

Iroha v2

  • Outstanding PR count: 9, all of which are new.  PRs are approximately closed in a week.
  • A new QA process is implemented. It focuses on the defect reproduction and MWE generation. 100% of the tickets are filed as bugs and are re-tested.
  • New Sumeragi consensus was implemented, tested and merged into the lts branch; it focuses on ironing out the previous p2p actor problem and it improves the performance.
  • P2P module restructuring leads to the stability improvements.
  • Ursa preliminary cleanup is in progress.
  • Kura inspector CLI is stable and working.
  • Docker and docker-compose configuration was improved
  • WASM: there’s an ongoing work regarding the compilation time, file size, security, introspection and documentation.
  • Iroha configuration parser handles the default values better, covering more edge-cases.
  • The documentation was updated to RC10
  • An initial implementation of  iroha_swarm  by our intern, Michael
  • A Blockchain explorer demo was implemented
  • A new JSON logging mode improves the diagnostic process.
  • A new feature for Kagami: synthetic genesis blocks
  • A syntax block generation tool was added
  • Load test generation tool was added (both statistic and representative)
  • Kagami UX:
  • Better help messages,
  • More subcommands,
  • Easier generation of keys given passphrase
  • CVE in  SignatureCheckCondition  fixed
  • Permission validators can be registered at run-time and user-generated with run-time upgradeability.
  • What changed regarding the Kagami UX?
  • Run-time permission validators implementation (?)
  • Sumeragi optimisation (what was changed?)
  • WASM dynamic linkage: FFI interface 95% finished.
  • Fully functional events:
  • Scoped
  • Global
  • Event-based
  • Time-based
  • By-call
  • With event processing
  • QA testing roadmap (De-containerised tests, CI Tests for SDK compatibility)
  • The Websocket connections are closed cleanly
  • Error states are reported with more information and with better feedback to the user

Maintainer Diversity

As of writing the Iroha 2 core development team consists of:

  • 8 Rust developers + 1 tech lead
  • 1 front-end developer
  • 2 full-time QA engineers (functional and load testing/benchmarking)
  • 1 full-time technical writer
  • 1 full-time DevOps
  • 1 community manager, who also handles front-end, back-end, DevOps and writing tasks as needed

Currently, the maintainer team consists of the Soramitsu employees.  Gregorz Bazior  (Yonix Digital Systems, AGH University of Science and Technology ) is interested in Iroha 2 and maintains Iroha 1.

Contributor Diversity

A practice of working with interns was established and will continue.

Since the last time, Jonathan Plasse contributed a fix ( #2670 ) for issue  #2667 , “Refactor &Option<T> to Option<&T>”.

Reviewed By

Submission date

11-Nov-2022

Comments:

Victor Gridnevsky – If we can do anything to help you share about the work you're doing with Iroha and get people interested in contributing, we're happy to help.  I think there's a lot we could do to get people interested.  For instance, we've recently run workshops for other Hyperledger projects and those have had a lot of interest – each of those have had over 400 people sign up for them and many more are watching the recordings after the event and people are learning how to use the projects and how to get involved.  If you'd be interested, let me know and we can talk more.

Posted by davidwboswell at Nov 11, 2022 16:52

The Contributor Diversity section seems like a change to our project reporting template. I believe this section is supposed to be maintainer diversity. Could you comment on the organizational diversity of the maintainers?

Posted by tkuhrt at Nov 11, 2022 17:10

Just checked template. Seems there is a contributor diversity section too. Looks like the maintainer diversity section was dropped. 

Posted by tkuhrt at Nov 11, 2022 17:13

Thanks, fixed!

Posted by vgridnevsky at Nov 17, 2022 08:31