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:
Which makes it a lot easier to configure external builders without changing the core.yaml file.