Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Admin sdk
    • 3.0 bft preview supported
    • Create feature branch for CLI use of admin SDK - Dave



February 21, 2024 (recording)

  • Recent Fabric releases
    • Fabric v2.2.15, v2.5.6, CA v1.5.9
      • Dependency updates
      • Remove dependency between Fabric CA and Fabric (common code pushed down to fabric-lib-go)

...

  • Fabric v3.0 work items
    • Finalize SmartBFT for eventual production GA release
      • Byzantine block puller for the peer (merged) and the orderer (in progress) - Yoav

      • Improved transaction pool for SmartBFT - defer based on performance trial

      • Unit test coverage for SmartBFT chain - in progress - Emil

      • Integration test coverage for SmartBFT orderer - in progress - May, Arkadi

      • Migration from Raft to SmartBFT - done


March 20, 2024 (recording)

- Fabric v3.0.0-beta (announcement) - March 14

...

  • Already removed features
    • system channel
    • solo ordering
    • kafka ordering
  • Need to finish
    • Finish SmartBFT tests, SmartBFT library moved to hyperledger-labs already
    • Finish v1 chaincode lifecycle removal - keep external APIs but just return an error message - Artem finishing it out
  • Deprecated features in v2 that could potentially be removed in v3
    • Specifying orderer endpoints at the global level in channel configuration (instead, utilize v2 'OrdererEndpoints' in org config) - let's remove it, Yacov will find someone
    • configtxgen flag --outputAnchorPeersUpdate  flag (instead, utilize channel config updates) - let's remove it, Tatsuya will take it
    • fabric-tools image (instead, utilize client connection to network), note fabric-tools still used by fabric-samples as a convenience for jq commands - Sam will assess
    • Block dissemination via gossip (instead, configure all peers as org leaders to receive blocks from ordering service). Minimally, let's set blockGossipEnabled default to false.
  • #3663 Fabric v3 epic misc items 
    • #3306 new channel config for CouchDB max_document_size, use during validation to prevent transactions too large to persist, along with application capability - Dave will assess
    • #3650 fabric-protos Go bindings based on protocol buffer APIv2 (v1 protobuf is deprecated) - potential deferral
    • #3704 older v3 ideas from Jira - e.g. Remove support for remaining Go plugins (endorsement and validation plugins) - potential deferral
    • #3343 ed25519 support
  • Identity Mixer replacement proposal from Ale
    • Update Idemix to use the aries-provided, standard-draft-compatible implementation as opposed to the legacy implementation used in Fabric v2. Fabric v2 would still uses the legacy implementation of idemix, which is still available. For v3 switch fabric to use the new implementation. The change will not be backward-compatible so existing networks that use the legacy fabric implementation will need to remain on Fabric v2.

    • The new idemix implementation would no longer be supported by fabric-ca. Idemixgen would be the default issuance tool. Users could build customised issuing services using idemixgen as a library.



April 17, 2024 (recording)

  • Recent Fabric releases
    • Fabric v2.5.7, CA v1.5.10
      • Dependency updates
      • Note that v2.2 is no longer being maintained, users are encouraged to upgrade to v2.5 LTS release
  • Fabric v3
    • See prior meeting for notes on remaining items.
    • Progress has been made on removing --outputAnchorPeersUpdate flag, removing global orderer endpoints, and removing fabric-tools image.
    • Still need to complete:
      • SmartBFT final tests
      • v1 lifecycle removal
      • channel config for CouchDB max_document_size
      • Identity Mixer update - current thinking is to defer any changes from v3.
  • Chaincode builders/launchers and k8s builder - James Taylor




    May 15, 2024 (recording)


    - Remaining items for production v3.0 release

    • Previously deprecated features that have already been removed in v3 main branch
      • system channel
      • solo ordering (instead, utilize single node Raft)
      • kafka ordering (instead, utilize Raft)
      • configtxgen flag --outputAnchorPeersUpdate  flag (instead, utilize channel config updates)
      • fabric-tools image (instead, utilize client connections into Fabric networks)
    • Need to finish
      • Finish SmartBFT
        • Finish tests
        • Fix frequent test failures in SmartBFT unit tests and integration test
        • Allow the peer delivery client to select between Deliverer or BFTDeliverer - PR #4856
      • Finish v1 chaincode lifecycle removal - keep external APIs but just return an error message - Tatsuya can help Artem
      • Remove ability to specify orderer endpoints in channel configuration at global level 'Orderer.Addresses' as deprecated in v2 (instead, utilize v2 'OrdererEndpoints' in org config) - PR #4800
      • Change peer property blockGossipEnabled default to false - Block dissemination via gossip already deprecated in v2 (recommendation is to configure all peers as org leaders to receive blocks from ordering service).
    • #3663 Fabric v3 epic misc items 
      • #3306 new channel config MaxWriteSize, prevents large writes that potentially exceeds CouchDB max_document_size
      • #3343 ed25519 support
      • #3650 fabric-protos Go bindings based on protocol buffer APIv2 (v1 protobuf is deprecated) - potential deferral
      • #3704 older v3 ideas from Jira - e.g. Remove support for remaining Go plugins (endorsement and validation plugins) - potential deferral



    June 19, 2024 (recording)


    - Recent Fabric releases

    • Fabric v2.5.9, CA v1.5.12 - June 18
      • Dependency updates

    - Remaining items for production v3.0 release

    • Previously deprecated features that have already been removed in v3 main branch
      • system channel
      • solo ordering (instead, utilize single node Raft)
      • kafka ordering (instead, utilize Raft)
      • Remove ability to specify orderer endpoints in channel configuration at global level 'Orderer.Addresses' as deprecated in v2 (instead, utilize v2 'OrdererEndpoints' in org config, enforced when channel capability at V3_0 ) 
      • configtxgen flag --outputAnchorPeersUpdate  flag (instead, utilize channel config updates)
      • fabric-tools image (instead, utilize client connections into Fabric networks)
    • Need to finish
      • Finish SmartBFT
        • Finish tests
        • Fix frequent test failures in SmartBFT unit tests and integration test
      • Finish v1 chaincode lifecycle removal - keep external APIs but just return an error message - Tatsuya can help Artem
        • Legacy lifecycle has been removed from integration test and peer cli, meaning no one could use it.

        • Updated tests and removed logic that relied on legacy LCC.

        • What is still to be done?

          • Need to remove the initialization of the LSCC code as a chaincode (in progress)

          • Need to ensure peers won't crash in case we get connected to the legacy system, meaning the system is probably being upgraded. We need to ensure newly joined peers won't crash on instantiate transactions; the validation part should still be aware of these updates.

          • The last thing is mostly cosmetics to refactor the code to move or fuse legacy validation logic with new _lifecycle.

          • Ensure all documentation is updated
      • Change peer property blockGossipEnabled default to false - Block dissemination via gossip already deprecated in v2 (recommendation is to configure all peers as org leaders to receive blocks from ordering service).
    • #3663 Fabric v3 epic misc items 
      • #3306 new channel config MaxWriteSize, prevents large writes that potentially exceeds CouchDB max_document_size
      • #3343 ed25519 support