Releases: zigbee-alliance/distributed-compliance-ledger
Releases · zigbee-alliance/distributed-compliance-ledger
Pre-Release 1.1.1
Changes and Fixes
- Update DCL Code for Approval count to ceiling instead of round #409
- Feature: re-vote for pending #412
- Feature: remove a proposal by the owner #287
- Do not allow proposing Root certificate by non-Trustee #427
- Deletion of Model Versions #421
- Document subscribing to events via Tendermint WebSockets #414
- Adding a Model requires "partNumber" and "productLabel" but those attributes should be optional #429
- NFR: New Role with permission to add/update Vendor Info #430
- Edit of DCL Compliance entry #464
- Deletion of DCL Compliance entry #465
- Set OTA for existing Model #466
Upgrade procedure
- The release is not intended to be applied to the production networks. It's for local testing only.
Release 0.12.0
Release 0.12.0
- Upgrade procedure
- The release must be applied via cosmovisor and Upgrade Proposal transactions, see pool-upgrade-how-to.md.
- The upgrade name must be equal to
v0.12.0
. - The release must be applied to all nodes (Validators, Observers, Sentries, etc.)
- All upgraded nodes must be at 0.11.0 with cosmovisor enabled.
- It's recommended to enable the auto-download for cosmovisor on all nodes, see pool-upgrade-how-to.md.
- Adding new nodes to the running pool (Test Net in particular) must be done via one of the ways described in running-node-in-existing-network.md. Starting a new node from the genesis state will not work. There are instructions on how to add a new node to the Test Net:
- Running Node Index with examples for the Test Net
- Adding new Observer nodes to Test Net
- Adding new Validator nodes to Test Net
Major Changes (comparing to 0.11.0)
Release 0.11.0
- Upgrade procedure
- The release must be applied via cosmovisor and Upgrade Proposal transactions, see pool-upgrade-how-to.md.
- The upgrade name must be equal to
v0.11.0
. - The release must be applied to all nodes (Validators, Observers, Sentries, etc.)
- All upgraded nodes must be at 0.10.0 with cosmovisor enabled.
- The release contains a number of breaking changes which leads to the consequences mentioned below.
- Adding new nodes to the running pool (Test Net in particular) must be done via one of the ways described in running-node-in-existing-network.md. Starting a new node from the genesis state as described in running-node.md will not work. There are instructions on how to add a new node to the Test Net:
- Querying Certificates:
- Certificates created before 0.10.0 must be queried as follows:
subject
is a human readable string with unparsed VID/PID OIDS (before More human friendly way to display Matter OIDs in the certificates is fixed);subject_key_id
is a hex string without leading zeros.
- Certificates created after 0.11.0 must be queried as follows:
subject
is a certificates's Subject's DER sequence bytes encoded in base64 format;subject_key_id
is a hex string with leading zeros.- See transactions.md.
- See Certificate SKID and subject should be unambiguous format for X509 transactions for details.
- The reason for that difference is that data migration hasn't been done for the Test Net, so certificates created before 0.10.0 should be queried in the "old" way.
- Certificates created before 0.10.0 must be queried as follows:
Major Changes (comparing to 0.10.0)
- Features:
- Defects Fixed:
- Certificate subject must be a base64 encoded Subject DER sequence bytes, not base64 encoded Subject string
- Be able to re-propose Upgrade with the same name if we don't get a quorum of Trustee approvals by the specified block height (time)
- New accounts cannot be added even if there is a quorum of trustee approvals
- Rename "FirmwareDigests" to "FirmwareInformation"
Release 0.10.0
- Upgrade procedure
- The release must be applied via cosmovisor and Upgrade Proposal transactions, see pool-upgrade-how-to.md.
- The upgrade name must be equal to
v0.10.0
. - The release must be applied to all nodes (Validators, Observers, Sentries, etc.)
- All upgraded nodes must be at 0.9.0 with cosmovisor enabled.
- The release contains a number of breaking changes which leads to the consequences mentioned below.
- Adding new nodes to the running pool (Test Net in particular) must be done via one of the ways described in running-node-in-existing-network.md. Starting a new node from the genesis state as described in running-node.md will not work. There are instructions on how to add a new node to the Test Net:
- Querying Certificates:
- Certificates created before 0.10.0 must be queried as follows:
subject
is a human readable string with unparsed VID/PID OIDS (before More human friendly way to display Matter OIDs in the certificates is fixed);subject_key_id
is a hex string without leading zeros.
- Certificates created after 0.10.0 must be queried as follows:
subject
is a certificates's Subject in base64 format;subject_key_id
is a hex string with leading zeros.- See transactions.md.
- See Certificate SKID and subject should be unambiguous format for X509 transactions for details.
- The reason for that difference is that data migration hasn't been done for the Test Net, so certificates created before 0.10.0 should be queried in the "old" way.
- Certificates created before 0.10.0 must be queried as follows:
Major Changes (comparing to 0.9.0)
- Features:
- Defects Fixed:
- Certificate SKID and subject should be unambiguous format for X509 transactions
- More human friendly way to display Matter OIDs in the certificates
- Defect: Certificate approval should need 2/3 Trustee Votes
- VIDs should be hexadecimal values
- typo "companyPrefferedName" in /dcl/vendorinfo/vendors
- Defect: Account Approvals were getting overwritten in store
Release 0.9.0
- The release doesn't contain any breaking changes from the data/consensus point of view comparing to 0.7.0.
- The release can be safely applied by every Node Admin asynchronously (no need to coordinate and upgrade at the same time).
- The recommended way to apply the release to the Test Net is to use switch_to_cosmovisor script as described in switch to cosmovisor how to.
- The release contains a breaking change for the REST API (openapi): camel case instead of snake case is now used in JSON requests and replies for model, pki and compliance queries.
Major Changes (comparing to 0.7.0)
- Software upgrade and cosmovisor support
- REST API fix (breaking change): openapi uses camel case instead of snake case.
Release 0.8.0
Please don't upgrade to this release now!
- Software upgrade and cosmovisor support
- Bug fixes
Release 0.7.0
Please note, that there were breaking changes in DCL 0.7.0 (migration to the latest Cosmos SDK), so the current master and DCL releases 0.6+ are not compatible with pools and Test Nets running DCL 0.5.
Changes
Release 0.6.0
Please note, that there were breaking changes in DCL 0.6.0 (migration to the latest Cosmos SDK), so the current master and DCL releases 0.6+ are not compatible with pools and Test Nets running DCL 0.5.
Major Changes
- Migrated to the latest Cosmos-sdk v0.44.5 and Tendermint v0.34.14 which causes lots of changes (usage of protobuf in particular).
dclcli
is deprecated.dcld
contains all CLI commands now.- gRPC interface is now exposed by every node.
- REST API is now exposed by every node (no need to run a separate service).
- Light Client Proxy is supported. It can be used to automatically verify state proofs for single-value query requests sent by a CLI or Tendermint RPC. It allows connection to untrusted nodes.
- Various fixes and improvements.
Release 0.5.1 (Test Net Re-Launch Release Fix)
- Fixes for setup scripts and docs
Release 0.5 (Test Net Re-Launch Release)
- Updated ledger schemes and commands to match the latest DCL spec DistributedComplianceLedger.adoc
- Support multiple Models with the same VID/PID but different versions (introduced
modelversion
entity) vendorinfo
module is added- Restrict Vendor accounts to work with the given
vid
only (vid
is specified when creating a new account withVendor
role) - Compliance tests and compliance info are created against a given Modelversion (VID/PID/SoftwareVersion), not just a Model (VID/PID)
- Support multiple Models with the same VID/PID but different versions (introduced
- Simplified deployment by introducing helper scripts:
- DCL web UI is open sourced: dcl-ui
- It's not compatible with the latest schema changes
- Load Tests framework: bench
- Bug fixing: