v3.0.0
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
- data-store: initialize DB using migrations (#679) (41f6240), closes #676
- key-manager: move private key storage to kms-local (#661) (6b1d135), closes #539 #540 #680
BREAKING CHANGES
- key-manager:
keyManagetGet
no longer returns private key data - key-manager:
KeyStore
no longer requires aSecretBox
- key-manager:
KeyManagementSystem
needs aPrivateKeyStore
- 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:
- Update your database connection to use migrations
- Remove the
SecretBox
parameter fromKeyManager
- Add a
PrivateKeyStore
parameter toKeyManagementSystem
with aSecretBox
that you were using before withKeyManager
(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 ontypeorm
as a database abstraction.
Typeorm has a connection flagsynchonize
which bootstraps the database along with schema and relations based on a set ofEntities
(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 theEntities
change, and there is a risk of data loss.
The recommended way to do things is to use themigrations
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.