Skip to content

Latest commit

 

History

History
231 lines (195 loc) · 21 KB

CHANGELOG.md

File metadata and controls

231 lines (195 loc) · 21 KB

0.5.0 (Wed May 18 2022)

This release of caliper adds new capabilities and addresses lots of bugs. Note that Hyperledger Fabric 1.4 SUT binding is still available in this release however it now is deprecated.

Notable

  • [Feature] Official support for Node 14 and Node 16 for users and contributors
  • [Feature] Experimental release for a Declaritive Workload Module
  • [Feature] Support for the new Peer Gateway API introduced in Hyperledger Fabric 2.4
  • [Fix] Fix Caliper round hang with unfinished transactions never completing
  • [Fix] Corrections and Improvements to the documentation
  • [Breaking] Caliper no longer supports the 1.0 version of the Fabric Network Configuration format
  • [Breaking] Caliper no longer supports creating channels or deploying chaincode to Hyperledger Fabric
  • [Breaking] Caliper no longer supports Hyperledger Fabric 1.3 or older

Commits

  • 2fd8925 Fixes caliper hang of unfinished transactions (#1342)
  • df1b96c Peer Gateway txs error messsage: added output of the contents of the err details array (#1345)
  • 671ca2f explicitly bind grpc-js for fabric 2.4 connector (#1344)
  • 4bbb40c changed all bit.ly links with a direct link (#1336)
  • 14467a4 upgraded node-sdk binding for fabric-v2-lts from 2.2.11 to 2.2.12 (#1335)
  • b554467 upgraded node-sdk binding for fabric-v1-lts from 1.4.19 to 1.4.20 (#1332)
  • 1a6639c add peers property support to fabric network config (#1329)
  • ca58c47 disable logging debug to file (#1331)
  • 35ae4ca Ensure that connector errors finishes caliper transactions (#1328)
  • d699171 Fix cli and update dependabot security dependencies (#1324)
  • da99385 correct interval usage in fabric-tests (#1323)
  • 031267f fixed docker monitor to use dockerode only (#1319)
  • af6440f address worker cleanup when an error occurs (#1315)
  • 57d8d46 Change monitor intervals from milliseconds to seconds (#1314)
  • 7f4d374 fixed colors dependency to 1.4.0 (#1311)
  • 6fb76f2 add integration test for peer gateway connector + updated docker compose for fabric 2.4 (#1310)
  • 9e736c0 edit defaul.yaml (updated comments and deleted sllep after option for fabric) + updated the fabric Channel operations for the v1 fabric connector (#1306)
  • 25f905d added logic to pick new Peer Gateway connector in the connector selector in FabriConnectorFactory.js + added 2.4 fabric SUT version with binding packages in .config.yaml + added last fixes for the Peer Gateway connector implementation (#1298)
  • 7c33aca Update the usage examples to more appropriate versions (#1297)
  • 66e8386 remove latency values if no successful txns in final report (#1290)
  • 5f9aa29 fix RecordRate rate controller (#1292)
  • a372f18 added main logic for the new peer-gateaway connector including unit tests (#1270)
  • ada19c3 Caliper terminates if prometheus is not available (#1288)
  • 6a76834 Remove CountQueryAsLoad Option (#1276)
  • 4f03fef rename certain terms in code base (#1280)
  • 4356663 improve message to help when file not found (#1262)
  • ba1ffcf Improve integration tests (#1259)
  • a84cdd9 add changes to ConnectionProfileDefinition for new PeerGateway connector and add peer-gateway to nyc of caliper-fabric (#1253)
  • 5ee6aaa Remove the need for gateway-enabled when binding to a fabric 2.2 SUT (#1255)
  • 5380af7 add txid to proposal when doing a query (#1247)
  • c72dc9f ensure endorsetimeout is set on v2 fabric connector (#1246)
  • 71a5a87 Update bindings to latest fabric sdks and remove old ones (#1244)
  • 9043fd0 Remove the legacy fabric connectors (#1235)
  • 338212d Bump version to 0.5.0-unstable (#1239)
  • cbacc35 Correct timeout defaults (#1230)
  • a8652a6 Reference Discord instead of Rocket Chat (#1228)
  • 986c856 Add support for node 16 (#1223)
  • 5922238 add new folder peer-gateway containing new connector Wallet Facade and Wallet Facade Factory (#1227)
  • 24fcdf3 Node 14 support (#1221)
  • 4a1860e enable support for node 14 - node engine >=14.19.0 (#1219)
  • caad464 Docker monitor metrics fixes - cpu and memory usage (#1214)
  • 7c2b3f7 address fabric:1.4 sut binding not working in caliper container (#1211)
  • f0553d1 Declarative workload module base integration (#1194)
  • a8e9ada Add GitHub web forms-based issue templates (#1189)
  • 9e296ac Update CONTRIBUTING.md document (#1192)
  • 8701938 Fix the unit of the interval of default-observer in the log (#1193)
  • 1fb6011 Propose myself as a new caliper Maintainer (#1186)
  • aa0b3db Fix CompositeRateController class bug (#1181) (#1184)
  • 595942a Fix issue where init flow errors when not using mutual TLS (#1183)
  • cc19cd6 Fix generator integration test (#1176)
  • 5a538e1 Fix Ethereum integration test (#1175)
  • c73f5a7 Fix Besu integration test (#1174)
  • 14bbbcb Add ValueProviderFactory, ListElementValueProvider and FormattedStringValueProvider. (#1168)
  • 6d5f071 Update branch name in Azure CI pipeline configuration (#1172)
  • 4bd51cf Update link for security bug handling wiki page (#1171)
  • 4f98fa7 Open in Visual Studio Code badge added
  • 0053563 Add base classes for declarative workload module and unit tests for the base classes.
  • 550fdb7 comparison to ===
  • 61410f3 Resolve issue in which only first round would be docker-monitored
  • 5a34ad7 Make Mosquitto authentication and authorization explicit for v2
  • b615b17 FIX: caliper bind command now compatible with Windows OS
  • 12a3e52 Adding changes related to value parameter for payable function in Ethereum. (#1122)
  • 69eec09 use 0.21.1 axios (#1119)
  • 369d11e use single publish script (#1118)
  • c48f9ad Publish containers (#1117)
  • 88a1568 prevent cascade skip (#1116)
  • 5b74a2c Change build reason for publish (#1114)
  • c3090ea update pipeline condition (#1113)
  • 6ced65a update conditionals (#1112)
  • 6fa9b12 publish to npm stage (#1110)
  • 730a884 Update contributing guide (#1109)
  • d6f0027 Enable builds for PRs that target main branch (#1108)
  • bc436e8 Azure pipelines build (#1105)

0.4.2

  • [Feature] New Fabric connector (completed with PR1095)
  • [Feature] New Fabric connector tutorial (PR1091)

0.4.1

  • [Feature] Besu private transactions (PR1030)

  • [Fix] Node engines out of date for project (PR1053)

  • [Fix] Caliper docker image workers can hang (PR1050)

  • [Fix] Negative send rates observable in reports (PR1045)

0.4.0

  • Core changes

    • [Breaking] Burrow connector removed

    • [Breaking] Sawtooth connector removed

    • [Breaking] Iroha connector removed

    • [Breaking] Modification of Prometheus Resource Monitor configuration (PR974)

    • [Breaking] Modification of Prometheus Push gateway configuration (PR966)

    • [Breaking] Alignment of rate controller configuration to be SUT centric (PR959)

    • [Breaking] Caliper API change for workload specification (PR950)

    • [Breaking] Caliper API change: removal of queryState (PR931)

    • [Breaking] Caliper API change: rename CLI subcommand to manager (PR893)

    • [Breaking] Caliper API change: chaincode -> contract (PR891)

    • [Breaking] Caliper API change: adaptor -> connector (PR881)

    • [Breaking] Caliper API change: callbacks converted to Workload module class (PR856)

    • [Feature] Basic auth for Prometheus interaction (PR966, PR960)

    • [Feature] Prometheus txObserver scrape target (PR960)

    • [Feature] Introduction of txObservers (PR943)

    • [Feature] Max rate controller (PR874)

  • Hyperledger Fabric adapter changes

    • [Breaking] Modification to Fabric binding options (PR984)

    • [Feature] Addition of target Organizations to fabric connector (PR937)

    • [Feature] Addition of target channel to fabric connector (PR925)

0.3.2 (June 11, 2020)

  • Core changes

    • Addition of unbind command to Caliper CLI (PR864)
    • Fix of MQTT messenger disposal process (PR863)
  • Hyperledger Fabric adapter changes

    • Fix network validation in V2 gateway adaptor (PR863)
    • Aligned passage of private data in gateway transactions with the documented specification (PR863)
    • Addition of 1.4.8 binding (PR866)
  • Ethereum/Hyperledger Besu adapter changes

    • Update HL Besu binding web3 version (PR#863)
  • FISCO-BCOS adapter changes

    • Removal of docker requirement for contract compilation (PR#861)
  • Hyperledger generator

    • Enable publishing of generator (PR#804)

0.3.1 (May 11, 2020)

  • Core changes

    • Relax constraints for monitor/observer combinations (PR#761)
    • Call the end function of workload modules sooner, so they can still access the adapter context (PR#779)
    • Improved error reporting in the worker processes (PR#782)
    • Improve TX handling/waiting approach for worker processes, thus enabling long-term benchmarks (PR#794)
    • Improve core package management for the Docker image (PR#795)
    • Improve handling of benchmark errors upon monitoring data reporing (PR#797)
  • Hyperledger Fabric adapter changes

    • Fix orderer name check for Fabric v2 adapter (PR#762)
    • Add support for stable Fabric v2 SDK packages
  • Ethereum/Hyperledger Besu adapter changes

    • Improve connection/TX management to SUT (PR#780)
    • Update HL Besu versions (PR#786)
    • Make contractDeployerAddress available in the adapter context (PR#808)
  • Hyperledger Sawtooth adapter changes

    • Refactored adapter to be more OO-like, and fixed non-existing variable reference bug (PR#782)
  • Hyperledger Burrow adapter changes

    • Switch SDK package to @hyperledger/burrow (PR#804)

0.3.0 (March 4, 2020)

  • Core changes

    • Fixed the round index bug in some rate controllers (PR#747).
    • Added statistic summation option to Prometheus queries (PR#720).
    • Fixed monitor bugs resulting in extra empty columns/metrics (PR#718).
    • BREAKING: Simplified backlog rate controller configuration (PR#704).
    • Added MQTT-based communication between the manager and worker processes for fully distributed operation (PR#682).
    • Added Yeoman generator for the benchmark configuration and workload module files (PR#671).
    • Added charting capabilities to the report generation (PR#650).
    • BREAKING: Configuration structure for Docker and process monitoring changed (PR#650).
    • BREAKING: Simplified (flattened) round settings in the benchmark configuration file, i.e., the YAML structure changed (PR#639).
  • CLI changes

    • Added new SDK bindings for Fabric (PR#742).
    • BREAKING: Changed the CLI commands. The binding command now accepts an external configuration file. The new launch commands can perform binding automatically (PR#734, PR#742).
  • Hyperledger Fabric adapter changes

    • Fixed channel initialization for the connection profiles (PR#751).
    • Fixed error handling for TX broadcast errors (PR#750).
    • Relaxed the network configuration schema constraints for channel peers and registrars (PR#733).
    • Pass explicit Orderer objects when broadcasting a TX so the SDK won't create a new connection for each TX (PR#731).
    • Added ability to pass transient data and peer targets to a gateway TXs (PR#713).
    • Added experimental Fabric v2 support (PR#703).
  • Ethereum/Hyperledger Besu adapter changes

    • Added support for HD keys (PR#652).
    • Gas estimation is now opt-in and secondary to explicit gas values. Nonces are only added if Caliper signs the TXs (PR#640).
    • Allow the network configuration to specify the gas values that each method call is allotted (PR#627).
  • FISCO-BCOS adapter changes

    • Fixed bug for resolving certificate file paths (PR#677).
    • Fixed bug related to stale response handling (PR#647).
  • Hyperledger Composer adapter changes

    • BREAKING: The deprecated adapter has now been removed (PR#655).

0.2.0 (October 25, 2019)

  • REMOVED: The Zookeeper-based distributed clients feature has been removed, and will be reimplemented in 0.3.0 (PR#588).
  • DEPRECATED: The HL Composer adapter has been marked as deprecated and will be removed in 0.3.0.
  • BREAKING: Added rigorous and strict validation for Fabric network configuration files. Some attributes became mutually exclusive, which might break your previous configuration files that relied on precedence between attributes (PR#595).
  • BREAKING: Improved the logging configuration flexibility. The default log message structure has changed, which might break your dependent (e.g. log mining) applications (PR#598, PR#607).
  • BREAKING: Made report file path configurable. The default report path has changed, which might break your dependent applications (PR#601).
  • Added support for Ethereum (PR#432)
  • Added support for Hyperledger Besu (PR#616)
  • Added support for FISCO BCOS (PR#515)
  • Added the querySmartContract function to the Blockchain interface (PR#578). The old queryState function will be deprecated and removed in the upcoming releases (once every adapter supports the new function)!
  • Introduced observers for continuous status updates about the running benchmark (PR#588).
  • Added a Prometheus-based observer and monitor (PR#588).
  • Fixed bug that prevented using mutual TLS with the Fabric gateway mode (PR#604)

0.1.0 (September 5, 2019)

Initial release of Caliper.

License

Hyperledger Project source code files are made available under the Apache License, Version 2.0 (Apache-2.0), located in the LICENSE file. Hyperledger Project documentation files are made available under the Creative Commons Attribution 4.0 International License (CC-BY-4.0), available at http://creativecommons.org/licenses/by/4.0/.