|
1 |
| -What's new in v1.3 |
| 1 | +What's new in v1.4 |
2 | 2 | ==================
|
3 | 3 |
|
4 |
| -A quick rundown of the new features and documentation in the v1.3 release of |
5 |
| -Hyperledger Fabric: |
| 4 | +Hyperledger Fabric has matured since the initial v1.0 release, and so has the |
| 5 | +community of Fabric operators and developers. The Fabric developers have been |
| 6 | +working with network operators and application developers to deliver v1.4 with |
| 7 | +a focus on production operations and developer ease of use. The two major |
| 8 | +release themes for Hyperledger Fabric v1.4 revolve around these two areas: |
6 | 9 |
|
7 |
| -New features |
8 |
| ------------- |
| 10 | +* **Serviceability and Operations**: As more Hyperledger Fabric networks get |
| 11 | + deployed and enter a production state, serviceability and operational aspects |
| 12 | + are critical. Fabric v1.4 takes a giant leap forward with logging improvements, |
| 13 | + health checks, and operational metrics. Along with a focus on stability |
| 14 | + and fixes, Fabric v1.4 is the recommended release for production operations. |
| 15 | + Future fixes will be delivered on the v1.4.x stream, while new features are |
| 16 | + being developed in the v2.0 stream. |
9 | 17 |
|
10 |
| -* :doc:`idemix`: |
11 |
| - A way to keep identities anonymous and unlinkable through the use of zero-knowledge |
12 |
| - proofs. There is a tool that can generate Identity Mixer credentials in test |
13 |
| - environments known as `idexmigen`, the documentation for which can be found in |
14 |
| - :doc:`idemixgen`. |
| 18 | +* **Improved programming model for developing applications**: Writing |
| 19 | + decentralized applications has just gotten easier. Programming model |
| 20 | + improvements in the Node.js SDK and Node.js chaincode makes the development |
| 21 | + of decentralized applications more intuitive, allowing you to focus |
| 22 | + on your application logic. The existing npm packages are still available for |
| 23 | + use, while the new npm packages provide a layer of abstraction to improve |
| 24 | + developer productivity and ease of use. |
15 | 25 |
|
16 |
| -* :ref:`key-level-endorsement`: |
17 |
| - Allows the default chaincode-level endorsement policy to be overridden by a |
18 |
| - per-key endorsement policy. |
| 26 | +Serviceability and operations improvements |
| 27 | +------------------------------------------ |
19 | 28 |
|
20 |
| -* :ref:`cdb-pagination`: |
21 |
| - Clients can now page through result sets from chaincode queries, making it |
22 |
| - feasible to support large result sets with high performance. |
| 29 | +* :doc:`operations_service`: |
| 30 | + The new RESTful operations service provides operators with three |
| 31 | + services to monitor and manage peer and orderer node operations: |
23 | 32 |
|
24 |
| -* :doc:`chaincode4ade`: |
25 |
| - As an addition to the current Fabric support for chaincode written in Go and |
26 |
| - node.js, Java is now supported. You can find a javadoc for this |
27 |
| - `here <https://fabric-chaincode-java.github.io/>`__. |
| 33 | + * The logging ``/logspec`` endpoint allows operators to dynamically get and set |
| 34 | + logging levels for the peer and orderer nodes. |
28 | 35 |
|
29 |
| -* :doc:`peer_event_services`: |
30 |
| - The peer channel-based event service itself is not new (it first debuted in v1.1), |
31 |
| - but the v1.3 release marks the end of the old event hub. Applications using |
32 |
| - the old event hub must switch over to the new peer channel-based event service prior to |
33 |
| - upgrading to v1.3. |
| 36 | + * The ``/healthz`` endpoint allows operators and container orchestration services to |
| 37 | + check peer and orderer node liveness and health. |
| 38 | + |
| 39 | + * The ``/metrics`` endpoint allows operators to utilize Prometheus to pull operational |
| 40 | + metrics from peer and orderer nodes. Metrics can also be pushed to StatsD. |
| 41 | + |
| 42 | +Improved programming model for developing applications |
| 43 | +------------------------------------------------------ |
| 44 | + |
| 45 | +The new Node.js SDK and chaincode programming model makes developing decentralized |
| 46 | +applications easier and improves developer productivity. New documentation helps you |
| 47 | +understand the various aspects of creating a decentralized application for |
| 48 | +Hyperledger Fabric, using a commercial paper business network scenario. |
| 49 | + |
| 50 | +* :doc:`developapps/scenario`: |
| 51 | + Describes a hypothetical business network involving six organizations who want |
| 52 | + to build an application to transact together that will serve as a use case |
| 53 | + to describe the programming model. |
| 54 | + |
| 55 | +* :doc:`developapps/analysis`: |
| 56 | + Describes the structure of a commercial paper and how transactions affect it |
| 57 | + over time. Demonstrates that modeling using states and transactions |
| 58 | + provides a precise way to understand and model the decentralized business process. |
| 59 | + |
| 60 | +* :doc:`developapps/architecture`: |
| 61 | + Shows how to design the commercial paper processes and their related data |
| 62 | + structures. |
| 63 | + |
| 64 | +* :doc:`developapps/smartcontract`: |
| 65 | + Shows how a smart contract governing the decentralized business process of |
| 66 | + issuing, buying and redeeming commercial paper should be designed. |
| 67 | + |
| 68 | +* :doc:`developapps/application` |
| 69 | + Conceptually describes a client application that would leverage the smart contract |
| 70 | + described in :doc:`developapps/smartcontract`. |
| 71 | + |
| 72 | +* :doc:`developapps/designelements`: |
| 73 | + Describes the details around contract namespaces, transaction context, |
| 74 | + transaction handlers, connection profiles, connection options, wallets, and |
| 75 | + gateways. |
| 76 | + |
| 77 | +And finally, a tutorial and sample that brings the commercial paper scenario to life: |
| 78 | + |
| 79 | +* :doc:`tutorial/commercial_paper` |
34 | 80 |
|
35 | 81 | New tutorials
|
36 | 82 | -------------
|
37 | 83 |
|
| 84 | +* :doc:`write_first_app`: |
| 85 | + This tutorial has been updated to leverage the improved Node.js SDK and chaincode |
| 86 | + programming model. The tutorial has both JavaScript and Typescript examples of |
| 87 | + the client application and chaincode. |
| 88 | + |
| 89 | +* :doc:`tutorial/commercial_paper` |
| 90 | + As mentioned above, this is the tutorial that accompanies the new Developing |
| 91 | + Applications documentation. |
| 92 | + |
38 | 93 | * :doc:`upgrade_to_newest_version`:
|
39 |
| - Leverages the BYFN network to show how an upgrade flow should work. Includes |
40 |
| - both a script (which can serve as a template for upgrades), as well as the |
41 |
| - individual commands. |
| 94 | + Leverages the network from :doc:`build_network` to demonstrate an upgrade from |
| 95 | + v1.3 to v1.4. Includes both a script (which can serve as a template for upgrades), |
| 96 | + as well as the individual commands so that you can understand every step of an |
| 97 | + upgrade. |
| 98 | + |
| 99 | +Private data enhancements |
| 100 | +------------------------- |
42 | 101 |
|
43 |
| -* :ref:`cdb-pagination`: |
44 |
| - Expands the current CouchDB tutorial to add pagination. |
| 102 | +* :doc:`private-data-arch`: |
| 103 | + The Private data feature has been a part of Fabric since v1.2, and this release |
| 104 | + debuts two new enhancements: |
45 | 105 |
|
46 |
| -Other new documentation |
47 |
| ------------------------ |
| 106 | + * **Reconciliation**, which allows peers for organizations that are added |
| 107 | + to private data collections to retrieve the private data for prior |
| 108 | + transactions to which they now are entitled. |
48 | 109 |
|
49 |
| -* :doc:`network/network`: |
50 |
| - Conceptual documentation that shows how the parts of a network interact with |
51 |
| - each other. The initial version of this document was added in v1.2. |
| 110 | + * **Client access control** to automatically enforce access control within |
| 111 | + chaincode based on the client organization collection membership without having |
| 112 | + to write specific chaincode logic. |
52 | 113 |
|
53 | 114 | Release notes
|
54 | 115 | =============
|
55 | 116 |
|
56 |
| -For more information, including `FAB` numbers for the issues and code reviews |
57 |
| -that made up these changes (in addition to other hygiene/performance/bug fixes |
58 |
| -we did not explicitly document), check out the release notes. Note that these |
59 |
| -links will not work on the release candidate, only on the GA release. |
| 117 | +The release notes provide more details for users moving to the new release, along |
| 118 | +with a link to the full release change log. |
60 | 119 |
|
61 |
| -* `Fabric release notes <https://github.com/hyperledger/fabric/releases/tag/v1.3.0>`_. |
62 |
| -* `Fabric CA release notes <https://github.com/hyperledger/fabric-ca/releases/tag/v1.3.0>`_. |
| 120 | +* `Fabric release notes <https://github.com/hyperledger/fabric/releases/tag/v1.4.0>`_. |
| 121 | +* `Fabric CA release notes <https://github.com/hyperledger/fabric-ca/releases/tag/v1.4.0>`_. |
63 | 122 |
|
64 | 123 | .. Licensed under Creative Commons Attribution 4.0 International License
|
65 | 124 | https://creativecommons.org/licenses/by/4.0/
|
0 commit comments