Skip to content

v3.0.0

Compare
Choose a tag to compare
@uport-automation-bot uport-automation-bot released this 20 Sep 14:01
· 538 commits to next since this release

3.0.0 (2021-09-20)

Bug Fixes

  • deps: update all non-major dependencies (8fc5312)
  • deps: update builders-and-testers (acef171)
  • deps: update builders-and-testers (ca746d2)
  • deps: update dependency @microsoft/api-extractor to v7.18.6 (80b8f67)
  • deps: update dependency @microsoft/api-extractor to v7.18.7 (28d7cf0)
  • deps: update dependency uint8arrays to v3 (#669) (a5f5c42)
  • did-ethr-provider: allow initialization with chainId number (#678) (38cd0ae), closes #677
  • did-resolver: always include didResolutionMetadata in result (#682) (aabddb4), closes #681
  • key-manager: handle eth_signTransaction with from field (#675) (50f074d), closes #674

Features

BREAKING CHANGES

  • key-manager: keyManagetGet no longer returns private key data
  • key-manager: KeyStore no longer requires a SecretBox
  • key-manager: KeyManagementSystem needs a PrivateKeyStore
  • key-manager: @veramo/cli configuration version update to 3.0

If you're already working with Veramo and wish to upgrade existing agents to veramo 3.0, you'll have to make some changes to your configuration, depending on how you're using the framework.

It boils down to these 3 steps:

  1. Update your database connection to use migrations
  2. Remove the SecretBox parameter from KeyManager
  3. Add a PrivateKeyStore parameter to KeyManagementSystem with a SecretBox that you were using before with KeyManager (and keep the same encryption key)
  • feat(key-manager): move private key storage to kms-local
  • data-store: database needs migrations for initialization. See #679 #676
    The @veramo/data-store package relies on typeorm as a database abstraction.
    Typeorm has a connection flag synchonize which bootstraps the database along with schema and relations based on a set of Entities (annotated typescript classes).
    This is very handy for fast development iterations but it is not recommended for production use because there is too much ambiguity possible when the Entities change, and there is a risk of data loss.
    The recommended way to do things is to use the migrations mechanism. It allows you to migrate to new database schemas when necessary, and even customize the database to your own needs.

Going forward, this is the mechanism we will be recommending for connections.