2023 Q1 Hyperledger Fabric

Created by David Enyeart, last modified by Arun S M on Jan 19, 2023

Project Health

Hyperledger Fabric is fairly mature and stable with a Long-term support (LTS) release and incremental new features being added in minor releases. There is less churn and fewer commits than in years past, with continued focus on quality and support. New features get proposed, approved, and implemented based on a community RFC process. Mailing list activity is down a bit compared to prior years. PRs and mailing list questions are generally turned around quickly.

Required Information

  1. Have you switched from master to main in all your repos ? Yes
  2. Have you implemented the Common Repository Structure in all your repos ? Yes
  3. Has your project implemented these inclusive language changes listed below to your repo? You can optionally use the DCI Lint tool to make this a recurring action on your repo. Yes
    1. master → main
    2. slave → replicas
    3. blacklist → denylist
    4. whitelist → allowlist
  4. Have you added an Inclusive Language Statement to your project’s documentation and/or Wiki pages? Yes

Questions/Issues for the TSC

None.

Releases

v2.2 is the current LTS releases with patch releases approximately quarterly.

Releases past quarter:

  • Fabric v2.2.9 - October 25, 2022
  • Fabric v2.4.7 - October 25, 2022
  • Fabric v2.5.0-alpha3 - December 21, 2022

Fabric CA

  • Fabric CA v1.5.6-beta3 - January 3, 2023

Fabric v2.5.0-alpha3 and Fabric CA v1.5.6-beta3 pre-releases were created so that the community can try the new ARM support in the binaries and images. This is more important these days given the rising prevalence of Mac M1 ARM architecture in the developer community.

Upcoming releases:

  • Fabric v2.5.0 - Expected to be next LTS release

Overall Activity in the Past Quarter

The project delivered fixes to the Fabric v2.2 (current LTS) and v2.4 (latest) releases.

The Purge Private Data History feature has been implemented with plan to release in Fabric v2.5 in Q1.

ARM support was added for Fabric binaries and images and made available in pre-releases v2.5.0-alpha3 and Fabric v1.5.6-beta3.

SmartBFT consensus algorithm is being integrated into the Fabric ordering service for an eventual Fabric v3.0 release.

An RFC was merged, and development started, to create a fabric-admin-sdk seeded from Technical Working Group China that will help with programatic channel and chaincode management. Targeting a Go SDK first.

The Fabric workshop created for Global Forum has been merged into fabric-samples .

New lab created - microfab - a single container Fabric environment intended to accelerate application and chaincode development, and used in the workshop mentioned above.

Additional Fabric repositories have shifted CI from Azure Pipelines to Github Actions.

Current Plans

The project is working on a v2.5.0 release in the release-2.5 branch, with a feature to Purge the history of private data. The feature may help organizations meet GDPR requirements with the ability to delete private data while preserving a hash of the data on the blockchain. The v2.5 release is expected early 2023 and is expected to become the next long-term support (LTS) release. 

Fabric v3.0 release development has started, primarily around refactoring the ordering service for the upcoming BFT consensus integration. In the v3.0 release we are considering deprecation and removal of some features that have historically made deployment difficult, such as docker-in-docker chaincode building.

Maintainer Diversity

6 of 8 maintainers from IBM.

Contributor Diversity

Year to year comparison, by commit:

  • Q4 2021 - 361 commits. 80% from IBM.
  • Q4 2022 - 382 commits. 80% from IBM.

Year to year comparison, by contributor:

  • Q4 2021 - 45 contributors. 42% from IBM.
  • Q4 2022 - 40 contributors. 38% from IBM.

Additional Information

Insights dashboard link

Reviewed By

Submission date

14-Jan-2023

Comments:

It was great to read that ARM support is something that you invest into! (We are hoping to do the same with Cacti, slowly but surely)

Posted by Peter Somogyvari at Jan 16, 2023 18:06

IMO the fabric-admin-sdk   would be a very useful thing from an engineering perspective. I remember those features were available in the Fabric SDK (at least the Node.js version) until v1.4 or so but were then dropped and exclusive use of the Fabric CLI was promoted.

Posted by vramaiitkgp at Jan 17, 2023 08:54

David Enyeart – That's great to see that the Fabric workshop created for Global Forum has been merged into fabric-samples.  If there's interest in delivering th"at content again this year, I'd be happy to help with that.  Running this as a virtual workshop would let us get this content to a much larger audience than we were able to do at the in person workshop in Dublin.  For other virtual workshops we've run we seen several hundred people signing up for them, so this could be a good way to help more people get started with Fabric this year.

Posted by davidwboswell at Jan 17, 2023 17:11

Yes, this is exactly the gap that will be resolved!

Posted by denyeart at Jan 17, 2023 21:24

David Boswell Sounds good, once v2.5 is released we'll be in a good position to deliver a virtual workshop on the long-term support stack (Fabric v2.5, gateway SDK), perhaps Q2. I'll mention to the folks that worked on the workshop.

Posted by denyeart at Jan 17, 2023 21:27

Great, sometime in Q2 or later sounds good.  If the folks that worked on the workshop want to reach out to me about timing and promotion, I'll be happy to talk with them.

Posted by davidwboswell at Jan 17, 2023 23:58

Thanks David Enyeart . Gre"at to see the progress on the SmartBFT integration. Also agree that the admin SDK for Go would be welcomed by the community!

Posted by jimthematrix at Jan 19, 2023 11:33