Hyperledger Fabric course is out!

Introducing3 new features you need to know about Hyperledger Fabric v2.4

There are 3 new features that are coming to Hyperledger Fabric which are worth your attention for the upcoming releases of v2.4.

Fabric gateway

The Fabric gateway is a new feature in Hyperledger Fabric v2.4.

Fabric gateway has offered a high level API to interact with the Fabric network, but these repositories were spread across multiple github projects, therefore, the API wasn't consistent between the programming languages:

  • Go
  • Java
  • Node.JS

The gateway offers the following functionality:

  • Submit transactions to the Fabric network
  • Evaluating transaction on the Fabric network
  • Subscribing to block events on the Fabric network.

Though, not all features are implemented in all SDKs, for example, HSM is only available on GoLang and Node.JS.

You can check out the current fabric-gateway repository on Github

Unjoin a channel from a peer

This feature has been requested for a long time, since 2018.

The workaround to remove the channel from a peer was delete the peer completely and recreate other, then join the peer to the desired channels, of course, this meant that the peer will be re-created and will need to download all the blocks for every channel joined, which can take multiple days, even weeks.

The only catch is that the peer needs to be stopped, which is a challenge for cloud native environments like Kubernetes, where stopping the peer and executing the command peer node unjoin is not something easy automatable.

Configure external builders

Before v2.4, we had a feature to configure external builders, which were used to build the chaincode, but this required to change the core.yaml configuration file for the peer, which felt like too much to only change the external builder configuration, and it was impossible to configure it using environment variables.

As of v2.4, it's possible to configure external builders using environment variables:

CORE_CHAINCODE_EXTERNALBUILDERS=[{name: my-builder, path: /my-builder}]

Which makes it a lot easier to configure external builders without changing the core.yaml file.

If you liked this content and you want more, there are 2 ways I can help you:

  • Hyperledger Fabric Course: Hyperledger Fabric explained how to level up your skills and be in the top 1% of blockchain engineers.
  • Work with me : We build your blockchain project and help you from start to end with simple pricing.