Skip to content

Releases: KILTprotocol/sdk-js

1.0.0

08 Aug 14:40
ec335d7
Compare
Choose a tag to compare

Release Notes for Version 1.0.0

To reduce the complexity of our SDK and improve its user-friendliness, we've redesigned its user-facing interfaces. Version 1.0.0 of @kiltprotocol/sdk-js comes with a streamlined surface that supports long-term maintainability. This includes a shift towards higher-level functions that conceal much of the underlying complexity.

As part of this effort, we've transitioned to exclusively using KILT credentials in their W3C Verifiable Credentials Data Model V1.1 representation. Credentials using the traditional format can be converted to and from the VC data model format using the new @kiltprotocol/legacy-credentials package.

Comprehensive documentation and migration instructions will be provided soon on docs.kilt.io.

What has changed

  • @kiltprotocol/sdk-js version 1.0.0 introduces a much cleaner, curated surface comprised only of high-level functions.
  • Lower-level functions can be imported directly from its constituent packages, for which we release versions 0.100.0.
  • New releases of existing packages:
    • @kiltprotocol/did
    • @kiltprotocol/chain-helpers
    • @kiltprotocol/types
    • @kiltprotocol/config
    • @kiltprotocol/utils
  • Releases of new packages:
    • @kiltprotocol/credentials: Provides functionality to issue and verify Verifiable Credentials and Verifiable Presentations; helps with creating and loading CTypes.
    • @kiltprotocol/legacy-credentials: Provides legacy credential functionality formerly provided by @kiltprotocol/core.
    • @kiltprotocol/asset-credentials: Provides functionality around Asset DIDs and Asset Credentials.
    • @kiltprotocol/jsonld-suites: Provides helpers for issuing and verifying KILT credentials using @digitalbazaar/vc.
  • The following packages have been discontinued or moved:
    • @kiltprotocol/augment-api & @kiltprotocol/type-definitions: Moved into a new repository (KILTprotocol/types-augment).
    • @kiltprotocol/vc-export: Discontinued; most functionality moved to @kiltprotocol/jsonld-suites, conversion between VCs and legacy credentials has moved to @kiltprotocol/legacy-credentials.
    • @kiltprotocol/asset-did: Discontinued; moved into @kiltprotocol/asset-credentials.
    • @kiltprotocol/core: Discontinued; most functions have moved into @kiltprotocol/legacy-credentials; CType-related functions have moved to @kiltprotocol/credentials; functions relating to connecting to a blockchain node have moved to @kiltprotocol/chain-helpers.
    • @kiltprotocol/messaging: Discontinued; functionality has been moved to @kiltprotocol/kilt-extension-api.

Changelog

chore: release v1 by @rflechtner in #897

Full Changelog: 0.35.2...1.0.0

Contributors

@rflechtner
@abdulmth
@ntn-x2
@arty-name
@tjwelde
@Dudleyneedham

0.35.2

30 May 14:35
1881c44
Compare
Choose a tag to compare

This release fixes a bug in which the a mismatch between a CType passed to 'verifyPresentation' and the actual CType of the credential was not detected and silently ignored.

Now compares the CType's id/hash, if present, with the CType Hash in the Credential.

What's Changed

Full Changelog: 0.35.1...0.35.2

0.35.1

02 May 12:34
0.35.1
aafd5ae
Compare
Choose a tag to compare

This release enables support for the DIP provider component by adding the necessary runtime call definitions and api augmentation.

What's Changed

Full Changelog: 0.35.0...0.35.1

0.35.0

14 Feb 09:38
0b8b38f
Compare
Choose a tag to compare

What's changed

We've added support for upcoming changes on the KILT network which are included in the kilt-node release 1.12.1. Upgrading to this version is recommended for all projects to maintain compatibility with future runtime upgrades.

Breaking Changes

Once upgraded to the latest runtime, account balances will be represented differently, where a distinction will be made only between free, frozen and reserved balance (see https://paritytech.github.io/polkadot-sdk/master/pallet_balances/struct.AccountData.html). Applications working with balance queries should make sure they are able to work with both the existing and future representations of account balances, as the new representation will be in effect for all apps immediately upon runtime upgrade.

This runtime also switches to version 4 of the TransactionPaymentApi runtime calls, requiring more recent versions of @polkadot/api for support. The dependency manifest has been updated accordingly.

All changes

fix: consider dispatchAs in ctype/public credential fetching logic by @rflechtner in e691cc2
test: add integration tests for dispatchAs by @rflechtner in e9c8a56
chore: augmentation for runtime 1.12.1 by @rflechtner in 9d0ea9b
chore: update references to mashnet-node by @rflechtner in 3852998
chore: require @polkadot/api^10.7.3 by @rflechtner in f73e393

Full Changelog: 0.34.0...0.35.0

0.34.1-rc.1

21 Dec 08:57
0.34.1-rc.1
8f19c1d
Compare
Choose a tag to compare
0.34.1-rc.1 Pre-release
Pre-release

What's changed

This small release adds support for the KILT Decentralized Identity Provider (DIP) components. It will be compatible with the current Spiritnet and Peregrine 11000 runtimes and with the upcoming Spiritnet and Peregrine runtimes 12000, the latter of which will add beta support for the DIP Provider components.
This PR also updates the type augmentation based on the latest version of the Spiritnet runtime.

Features

Chores

0.34.0

22 Aug 15:41
cb0b8e1
Compare
Choose a tag to compare

What's changed

Besides updating typings to match the latest chain runtime 1.11.0, this release includes mostly quality-of-life enhancements and improves coverage of integrated tests.

Breaking Changes

  • refactor!: nest ctype in ICTypeDetails by @rflechtner in #766
    • Migration: Instead of const { createdAt, creator, ...cType } = await CType.fetchFromChain(cTypeId) use the simplified syntax const { cType } = await CType.fetchFromChain(cTypeId) to retrieve a CType definition from the Kilt blockchain.

Features

  • feat: re-export imported types from @kiltprotocol/types by @rflechtner in #762
  • feat: deprecation message for CType meta schema draft-01 by @rflechtner in #778

Other

Full Changelog: 0.33.1...0.34.0

0.33.1

14 Jun 15:02
d0445c3
Compare
Choose a tag to compare

This release fixes an issue arising in 0.33.0 where the ESM builds of some packages failed to properly import the dependency cbor-web.

What's Changed

Full Changelog: 0.33.0...0.33.1

0.33.0

08 Jun 10:16
b166384
Compare
Choose a tag to compare

Breaking Changes

Credential Verification

  • Credential.verifyCredential & Credential.verifyPresentation will now check for an on-chain attestation (requires an open connection to a full node) and throw if the credential has not been attested.
    These functions now return the credential with two properties added: revoked (indicates whether the attestation was revoked) and attester (indicates the issuer of the attestation).
    To run only off-line integrity checks, use verifyWellFormed instead.
    • As part of the change to the credential verification logic, we introduced a function called refreshRevocationStatus, which is tailored towards re-checking the validity of an already verified credential to make sure it has not been revoked in the meantime.
  • The function verifyAgainstCType has been removed. Use CType.verifyClaimAgainstSchema(credential.claim.contents, ctype) instead, or simply use the optional ctype parameter on Credential.verifyWellFormed, Credential.verifyCredential & Credential.verifyPresentation.

CType Creation

  • We also introduced a new CType metaschema which allows additional features on CTypes, which is recommended to be used on all new CTypes.
    CType.fromProperties now defaults to using the new metaschema, which impacts the CType hash & id. If you need to recreate a CType using the old metaschema, set the newly introduced third parameter of this function to 'draft-01'.

Misc

  • Updating to recent versions of polkadot/api and polkadot/common dependencies required ending support for node 14.
  • We removed the BlockchainApiMissingError in order to reduce dependencies of the @kiltprotocol/config package. If no polkadot api object has been provided before calling chain-related functions, this will now throw a generic error instead.

What's Changed

Features

Bugfixes

Other

Full Changelog: 0.32.1...0.33.0

0.32.1

24 May 14:36
33a86b0
Compare
Choose a tag to compare

A smaller release comprising a bug fix for the @kiltprotocol/config package.

What's changed

Full Changelog: 0.32.0...0.32.1

0.32.0

21 Mar 17:54
440fe51
Compare
Choose a tag to compare

In addition to enabling linking Ethereum addresses to a DID, the upcoming kilt-node release 1.10.0 also changes the challenge mechanism used by the account linking pallet, resulting in a breaking change.

In order to be able to continue to create new links between DIDs and accounts after runtime upgrade, applications should upgrade to version 0.32.0 of the SDK as soon as possible.

What's Changed

Full Changelog: 0.31.1...0.32.0