From e7dc57d84d66f3288391bb436a247dbf977f970c Mon Sep 17 00:00:00 2001 From: Dave Enyeart Date: Fri, 17 Jun 2022 10:31:24 -0400 Subject: [PATCH] Release commit for v2.2.6 (#3488) Update docs and release notes for v2.2.6. Signed-off-by: David Enyeart --- Makefile | 2 +- docs/source/install.rst | 4 +- docs/source/whatsnew.rst | 1 + release_notes/v2.2.6.md | 93 ++++++++++++++++++++++++++++++++++++++++ scripts/bootstrap.sh | 8 ++-- 5 files changed, 101 insertions(+), 7 deletions(-) create mode 100644 release_notes/v2.2.6.md diff --git a/Makefile b/Makefile index 6554520bac3..4a7a40e0c75 100644 --- a/Makefile +++ b/Makefile @@ -45,7 +45,7 @@ # - verify - runs unit tests for only the changed package tree ALPINE_VER ?= 3.16 -BASE_VERSION = 2.2.5 +BASE_VERSION = 2.2.6 # 3rd party image version # These versions are also set in the runners in ./integration/runners/ diff --git a/docs/source/install.rst b/docs/source/install.rst index bae5d35b700..d89790efe4a 100644 --- a/docs/source/install.rst +++ b/docs/source/install.rst @@ -47,12 +47,12 @@ the binaries and images. .. note:: If you want a specific release, pass a version identifier for Fabric and Fabric-CA docker images. The command below demonstrates how to download the latest production releases - - **Fabric v2.2.5** and **Fabric CA v1.5.2** + **Fabric v2.2.6** and **Fabric CA v1.5.3** .. code:: bash curl -sSL https://bit.ly/2ysbOFE | bash -s -- - curl -sSL https://bit.ly/2ysbOFE | bash -s -- 2.2.5 1.5.2 + curl -sSL https://bit.ly/2ysbOFE | bash -s -- 2.2.6 1.5.3 .. note:: If you get an error running the above curl command, you may have too old a version of curl that does not handle diff --git a/docs/source/whatsnew.rst b/docs/source/whatsnew.rst index 65214df4b4c..90166db3a72 100644 --- a/docs/source/whatsnew.rst +++ b/docs/source/whatsnew.rst @@ -225,6 +225,7 @@ announced in each of the v2.x releases. * `Fabric v2.2.3 release notes `_. * `Fabric v2.2.4 release notes `_. * `Fabric v2.2.5 release notes `_. +* `Fabric v2.2.6 release notes `_. .. Licensed under Creative Commons Attribution 4.0 International License https://creativecommons.org/licenses/by/4.0/ diff --git a/release_notes/v2.2.6.md b/release_notes/v2.2.6.md new file mode 100644 index 00000000000..3d7aa02921b --- /dev/null +++ b/release_notes/v2.2.6.md @@ -0,0 +1,93 @@ +v2.2.6 Release Notes - June 17, 2022 +==================================== + +Fixes +----- + +**peer and orderer - Handle TLS CA certificate expiry** + +When any TLS CA certificate configured on a channel expired, peer and orderer nodes fail to start due to MSP initialization error "setting up the MSP manager failed: CA Certificate is not valid: certificate has expired or is not yet valid". MSP initialization now ignores TLS CA certificate expiration so that the peer or orderer can start up and receive channel configuration updates with renewed TLS CA certificates. + + +Dependencies +------------ +Fabric v2.2.6 has been tested with the following dependencies: +* Go 1.18.2 +* CouchDB v3.2.2 + +Fabric docker images on dockerhub utilize Alpine 3.16. + +Deprecations (existing) +----------------------- + +**FAB-15754: The 'Solo' consensus type is deprecated.** + +The 'Solo' consensus type has always been marked non-production and should be in +use only in test environments, however for compatibility it is still available, +but may be removed entirely in a future release. + +**FAB-16408: The 'Kafka' consensus type is deprecated.** + +The 'Raft' consensus type was introduced in v1.4.1 and has become the preferred +production consensus type. There is a documented and tested migration path from +Kafka to Raft, and existing users should migrate to the newer Raft consensus type. +For compatibility with existing deployments, Kafka is still supported, +but may be removed entirely in a future release. +Additionally, the fabric-kafka and fabric-zookeeper docker images are no longer updated, maintained, or published. + +**Fabric CouchDB image is deprecated** + +v2.2.0 added support for CouchDB 3.1.0 as the recommended and tested version of CouchDB. +If prior versions are utilized, a Warning will appear in peer log. +Note that CouchDB 3.1.0 requires that an admin username and password be set, +while this was optional in CouchDB v2.x. See the +[Fabric CouchDB documentation](https://hyperledger-fabric.readthedocs.io/en/v2.2.0/couchdb_as_state_database.html#couchdb-configuration) +for configuration details. +Also note that CouchDB 3.1.0 default max_document_size is reduced to 8MB. Set a higher value if needed in your environment. +Finally, the fabric-couchdb docker image will not be updated to v3.1.0 and will no longer be updated, maintained, or published. +Users can utilize the official CouchDB docker image maintained by the Apache CouchDB project instead. + +**FAB-7559: Support for specifying orderer endpoints at the global level in channel configuration is deprecated.** + +Utilize the new 'OrdererEndpoints' stanza within the channel configuration of an organization instead. +Configuring orderer endpoints at the organization level accommodates +scenarios where orderers are run by different organizations. Using +this configuration ensures that only the TLS CA certificates of that organization +are used for orderer communications, in contrast to the global channel level endpoints which +would cause an aggregation of all orderer TLS CA certificates across +all orderer organizations to be used for orderer communications. + +**FAB-17428: Support for configtxgen flag `--outputAnchorPeersUpdate` is deprecated.** + +The `--outputAnchorPeersUpdate` mechanism for updating anchor peers has always had +limitations (for instance, it only works the first time anchor peers are updated). +Instead, anchor peer updates should be performed through the normal config update flow. + +**FAB-15406: The fabric-tools docker image is deprecated** + +The fabric-tools docker image will not be published in future Fabric releases. +Instead of using the fabric-tools docker image, users should utilize the +published Fabric binaries. The Fabric binaries can be used to make client calls +to Fabric runtime components, regardless of where the Fabric components are running. + +**FAB-15317: Block dissemination via gossip is deprecated** + +Block dissemination via gossip is deprecated and may be removed in a future release. +Fabric peers can be configured to receive blocks directly from an ordering service +node by using the following configuration: +``` +peer.gossip.orgLeader: true +peer.gossip.useLeaderElection: false +peer.gossip.state.enabled: false +peer.deliveryclient.blockGossipEnabled: false +``` + +**FAB-15061: Legacy chaincode lifecycle is deprecated** + +The legacy chaincode lifecycle from v1.x is deprecated and will be removed +in a future release. To prepare for the eventual removal, utilize the v2.x +chaincode lifecycle instead, by enabling V2_0 application capability on all +channels, and redeploying all chaincodes using the v2.x lifecycle. The new +chaincode lifecycle provides a more flexible and robust governance model +for chaincodes. For more details see the +[documentation for enabling the new lifecycle](https://hyperledger-fabric.readthedocs.io/en/release-2.2/enable_cc_lifecycle.html). diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh index 53379c30c7c..cad39d5fa9f 100755 --- a/scripts/bootstrap.sh +++ b/scripts/bootstrap.sh @@ -6,9 +6,9 @@ # # if version not passed in, default to latest released version -VERSION=2.2.5 +VERSION=2.2.6 # if ca version not passed in, default to latest released version -CA_VERSION=1.5.2 +CA_VERSION=1.5.3 ARCH=$(echo "$(uname -s|tr '[:upper:]' '[:lower:]'|sed 's/mingw64_nt.*/windows/')-$(uname -m | sed 's/x86_64/amd64/g')") MARCH=$(uname -m) @@ -21,8 +21,8 @@ printHelp() { echo "-s : bypass fabric-samples repo clone" echo "-b : bypass download of platform-specific binaries" echo - echo "e.g. bootstrap.sh 2.2.5 1.5.2 -s" - echo "will download docker images and binaries for Fabric v2.2.5 and Fabric CA v1.5.2" + echo "e.g. bootstrap.sh 2.2.6 1.5.3 -s" + echo "will download docker images and binaries for Fabric v2.2.6 and Fabric CA v1.5.3" } # dockerPull() pulls docker images from fabric and chaincode repositories