The v2.0 release is functionally equivalent to prior pseudo-versions (the module didn't have tagged releases previously). The primary difference is the use of the current Go API for protocol buffers in place of the original (deprecated) API. The v2 implementation retains wire-level compatibility with Fabric but does include the following changes:
-
Chaincode implementations that make direct use of github.com/hyperledger/fabric-protos-go will experience protocol buffer namespace conflicts (as described in https://protobuf.dev/reference/go/faq/). Any use of fabric-protos-go must be replaced by github.com/hyperledger/fabric-protos-go-apiv2.
-
The Chaincode interface and Stub now use only pointers to protocol buffer messages in their API. Chaincode implementations must provide matching Init and Invoke methods.
-
The (deprecated) mock implementations in the shimtest package have been removed from the v2 implementation.
The module path is updated to github.com/hyperledger/fabric-chaincode-go/v2
.