Hyperledger Fabric https://github.com/hyperledger/fabric
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 compared to prior years. PRs and mailing list questions are generally turned around quickly.
- Have you switched from master to main in all your repos? Yes
- Have you implemented the Common Repository Structure in all your repos? Yes
Questions/Issues for the TSC
v2.2 is the current LTS releases with patch releases approximately quarterly.
Releases past quarter:
- v2.2.4 - September 8, 2021
- v2.3.3 - September 8, 2021
- v2.4.0 - November 29, 2021
- v2.4.1 - December 17, 2021
Additionally, SDKs are regularly patched, most notably Java SDK v2.2.11 to update log4j and address the log4j December vulnerability.
- v2.2.5 - Update to Go 1.17
- v2.4.2 - Update to Go 1.17
- v2.5.0 - Expected to be next LTS release
Overall Activity in the Past Quarter
The project delivered v2.4.0 with two significant new features:
- Fabric Gateway - The Fabric Gateway will remove much of the transaction submission and query logic from the client application and shift it to a common gateway running within the Fabric peer, enabling each of the various client SDKs to be slimmer, more consistent, and require less maintenance. Applications will interact with a trusted peer (e.g. at their organization) and the peer will coordinate endorsements from other peers and submission to the ordering service. It will also simplify the administrative overhead of running a Fabric network because client applications will be able to connect and submit transactions via a single network port at their organization rather than the current situation where ports have to be opened from a client application to multiple peers across potentially multiple organizations. The Fabric Gateway is delivered along with slim SDKs in the https://github.com/hyperledger/fabric-gateway repository.
- Peer unjoin - The new command "peer node unjoin" enables an administrator to remove (unjoin) a channel from a peer.
The peer must be stopped when the command is executed so that channel artifacts can be cleaned up.
The channel's blockchain, state database, and associated entries will be removed from the peer.
When the peer is restarted it will no longer receive blocks for the channel.
v2.4.1 also added an external builder for 'chaincode as a service' to the fabric-peer docker image that makes deployment to Kubernetes environments simpler.
For more details on v2.4 see the What's New documentation.
Additionally the project has been planning future work through the RFC process.
RFCs merged this quarter:
- Purge Private Data
Other RFCs are in review with recent discussions surrounding SmartBFT, OpenTelemetry tracing, and module crypto service.
Finally, new project samples have been added to help users get up to speed and deploy Fabric:
- Asset transfer samples with new Gateway SDK - https://hyperledger-fabric.readthedocs.io/en/latest/write_first_app.html
- Advanced REST sample demonstrating good practices for interacting with a Fabric network - https://github.com/hyperledger/fabric-samples/tree/main/asset-transfer-basic/rest-api-typescript
- Kubernetes Test Network - https://github.com/hyperledger/fabric-samples/tree/main/test-network-k8s
The project is working on a v2.5.0 release 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.
Discussion about a future Fabric v3.0 release was kicked off at the January 5th contributor meeting. The proposal is to refactor some Fabric components so that new features can be more easily added on top, most notably a proposed BFT ordering service. For more details see the recording at Contributor Meetings 2022.
We plan to resume the Fabric community documentation meetings and update Fabric documentation in the following areas:
- Developing Applications with new Gateway SDKs
- Certificate management (expirations, renewals)
Update Caliper client for Fabric.
No changes. 6 of 11 maintainers of core Fabric from IBM.
Year to year comparison, by commit:
- Q4 2020 - 674 commits. 71% from IBM.
- Q4 2021 - 361 commits. 80% from IBM
Year to year comparison, by contributor:
- Q4 2020 - 94 contributors. 38% from IBM.
- Q4 2021 - 45 contributors. 42% from IBM.
Link to the Fabric dashboard: Q4 2021
- Angelo De Caro
- Arnaud J Le Hors
- Artem Barger
- Arun S M
- Bobbi Muscara
- Danno Ferrin
- David Enyeart
- Grace Hartley
- Hart Montgomery
- Jianjun Zhang
- Kamlesh Nagware
- Nathan George
- Peter Somogyvari
- Tracy Kuhrt
- Troy Ronda