Skip to content

Commit

Permalink
Release v1.0.0-rc.1 (#1228)
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] committed Sep 29, 2023
1 parent 3043977 commit 67c925d
Show file tree
Hide file tree
Showing 16 changed files with 198 additions and 58 deletions.
6 changes: 6 additions & 0 deletions .github/releases/v1.0.0-rc.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
This version introduces a new DID method targeting the IOTA UTXO ledger. This method works fundamentally differently from the previous method and introduces new capabilities to interact with Layer 1 assets like Native Tokens, NFTs and various Output types.
\n
This version changes the credential and presentation format to JWT, as specified by the [VC Data Model v1.1](https://www.w3.org/TR/vc-data-model/#json-web-token).
\n\n
Note: Identities and credentials created with the earlier versions cannot be resolved with this version of the library.
\n\n
134 changes: 134 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,139 @@
# Changelog

## [1.0.0-rc.1](https://github.com/iotaledger/identity.rs/tree/v1.0.0-rc.1) (2023-09-29)

[Full Changelog](https://github.com/iotaledger/identity.rs/compare/v0.6.3...v1.0.0-rc.1)

This version introduces a new DID method targeting the IOTA UTXO ledger. This method works fundamentally differently from the previous method and introduces new capabilities to interact with Layer 1 assets like Native Tokens, NFTs and various Output types.

This version changes the credential and presentation format to JWT, as specified by the [VC Data Model v1.1](https://www.w3.org/TR/vc-data-model/#json-web-token).

Note: Identities and credentials created with the earlier versions cannot be resolved with this version of the library.

### Changed

- Add dedicated stronghold crate [#1243](https://github.com/iotaledger/identity.rs/pull/1243)
- Add dedicated EdDSA verifier crate [#1238](https://github.com/iotaledger/identity.rs/pull/1238)
- Use `VC Data Model v1.1` JWT encoding instead of `VC-JWT` [#1234](https://github.com/iotaledger/identity.rs/pull/1234)
- Remove `vp` and `vc` from JWT claims in JOSE [#1233](https://github.com/iotaledger/identity.rs/pull/1233)
- Mark error enums as non-exhaustive [#1227](https://github.com/iotaledger/identity.rs/pull/1227)
- Change `verifiable_credential` to type `Vec<CRED>` in `Presentation` [#1231](https://github.com/iotaledger/identity.rs/pull/1231)
- Bring JwkDocumentExt names in line with Wasm [#1233](https://github.com/iotaledger/identity.rs/pull/1223)
- Add lints for all crates [#1222](https://github.com/iotaledger/identity.rs/pull/1222)
- Bump `iota-sdk` and other dependencies [#1208](https://github.com/iotaledger/identity.rs/pull/1208)
- Polish `identity_credential` [#1205](https://github.com/iotaledger/identity.rs/pull/1205)
- Polish `identity_resolver` and`identity_storage` [#1204](https://github.com/iotaledger/identity.rs/pull/1204)
- Polish `identity_iota_core` [#1203](https://github.com/iotaledger/identity.rs/pull/1203)
- Rename `JwtPresentation` to `Presentation` [#1200](https://github.com/iotaledger/identity.rs/pull/1200)
- Polish `identity_document` [#1198](https://github.com/iotaledger/identity.rs/pull/1198)
- Polish `identity_did` & `identity_verification` [#1197](https://github.com/iotaledger/identity.rs/pull/1197)
- Polish `identity_core` [#1196](https://github.com/iotaledger/identity.rs/pull/1196)
- Remove identity-diff remains [#1195](https://github.com/iotaledger/identity.rs/pull/1195)
- Remove legacy signing and verification APIs [#1194](https://github.com/iotaledger/identity.rs/pull/1194)
- Remove old `Presentation` type [#1190](https://github.com/iotaledger/identity.rs/pull/1190)
- Remove reexported `Resolver` validation APIs [#1183](https://github.com/iotaledger/identity.rs/pull/1183)
- Use JWT credentials for Domain Linkage [#1180](https://github.com/iotaledger/identity.rs/pull/1180)
- Remove `identity_agent` & `identity_comm` [#1168](https://github.com/iotaledger/identity.rs/pull/1168)
- Remove `identity-diff` crate [#1167](https://github.com/iotaledger/identity.rs/pull/1167)
- JwkStorageDocument & JwtCredential validation [#1152](https://github.com/iotaledger/identity.rs/pull/1152)
- Adapt StorageError to be more generic [#1144](https://github.com/iotaledger/identity.rs/pull/1144)
- Add initial PublicKeyJwk support [#1143](https://github.com/iotaledger/identity.rs/pull/1143)
- Split JWS `Decoder` functionality [#1133](https://github.com/iotaledger/identity.rs/pull/1133)
- `CoreDocument` & `Service` and `VerificationMethod` are now in the `document` and `verification` modules respectively [#1104](https://github.com/iotaledger/identity.rs/pull/1104)
- Remove generics in CoreDocument, VerificationMethod, Service, DIDUrl and LinkedDomainService [#1110](https://github.com/iotaledger/identity.rs/pull/1110)
- Updated `iota-types` dependency to `1.0.0-rc.6` [#1121](https://github.com/iotaledger/identity.rs/pull/1121)
- Refactor `MethodType` to make it extensible [#1112](https://github.com/iotaledger/identity.rs/pull/1112)
- More identifier checks in `CoreDocument` [#1067](https://github.com/iotaledger/identity.rs/pull/1067)
- Update to `iota-client` 2.0.1-rc.4 and `iota-client-wasm` 0.5.0-alpha.6 [#1088](https://github.com/iotaledger/identity.rs/pull/1088)
- Update iota client 2.0.1 rc.3 [\#1062](https://github.com/iotaledger/identity.rs/pull/1062)
- Use Bech32-encoded state controller and governor addresses [\#1044](https://github.com/iotaledger/identity.rs/pull/1044)
- Expose iteration over verification relationship fields [\#1024](https://github.com/iotaledger/identity.rs/pull/1024)
- Remove `identity_agent` reexport [\#1031](https://github.com/iotaledger/identity.rs/pull/1031)
- Rename `MixedResolver` to `Resolver` in Wasm [\#1026](https://github.com/iotaledger/identity.rs/pull/1026)
- Add length prefix to DID Document payloads [\#1010](https://github.com/iotaledger/identity.rs/pull/1010)
- Feature-gate `Resolver` [\#1007](https://github.com/iotaledger/identity.rs/pull/1007)
- Rename `Stardust` types to `Iota` [\#1000](https://github.com/iotaledger/identity.rs/pull/1000)
- Change Stardust DID method to IOTA [\#982](https://github.com/iotaledger/identity.rs/pull/982)
- Add Wasm Stardust Client [\#975](https://github.com/iotaledger/identity.rs/pull/975)
- Generalized Resolver [\#970](https://github.com/iotaledger/identity.rs/pull/970)
- Change `Storage` to handle `CoreDID` [\#968](https://github.com/iotaledger/identity.rs/pull/968)
- Feature-gate `iota-client` dependency, integrate `StardustDID` [\#958](https://github.com/iotaledger/identity.rs/pull/958)
- Change `Storage` to store arbitrary blobs [\#953](https://github.com/iotaledger/identity.rs/pull/953)
- Add `StardustDocumentMetadata`, implement `StardustDocument` methods [\#951](https://github.com/iotaledger/identity.rs/pull/951)
- Fix stack overflow in `CoreDID` `PartialEq` impl [\#946](https://github.com/iotaledger/identity.rs/pull/946)
- Change `Service` `type` field to allow sets [\#944](https://github.com/iotaledger/identity.rs/pull/944)
- Generalise `CredentialValidator`, `PresentationValidator` to support arbitrary DID Documents [\#935](https://github.com/iotaledger/identity.rs/pull/935)


### Added

- Allow arbitrary JWS header parameters [#1245](https://github.com/iotaledger/identity.rs/pull/1245)
- Allow custom JWT claims for presentations [#1244](https://github.com/iotaledger/identity.rs/pull/1244)
- Allow custom `kid` to be set in JWS [#1239](https://github.com/iotaledger/identity.rs/pull/1239)
- Allow custom JWT claims for credentials [#1237](https://github.com/iotaledger/identity.rs/pull/1237)
- Improve `Proof` [#1209](https://github.com/iotaledger/identity.rs/pull/1209)
- Polish `identity_jose` [#1201](https://github.com/iotaledger/identity.rs/pull/1201)
- Add `resolve_multiple` to Resolver [#1189](https://github.com/iotaledger/identity.rs/pull/1189)
- Make JWT presentations generic [#1186](https://github.com/iotaledger/identity.rs/pull/1186)
- Support JWT presentations [#1175](https://github.com/iotaledger/identity.rs/pull/1175)
- Polish JWK thumbprint and document extension API [#1173](https://github.com/iotaledger/identity.rs/pull/1173)
- Stronghold Storage Implementation [#1157](https://github.com/iotaledger/identity.rs/pull/1157)
- Implement `KeyIdStorage` in Rust [#1134](https://github.com/iotaledger/identity.rs/pull/1134)
- Implement `JwkStorage` [#1116](https://github.com/iotaledger/identity.rs/pull/1133)
- Add Wasm Bindings for Domain Linkage [#1115](https://github.com/iotaledger/identity.rs/pull/1115)
- Introduce `IToCoreDocument` and document locks in the bindings [#1120](https://github.com/iotaledger/identity.rs/pull/1120)
- Add Support for Domain Linkage in Rust [#1094](https://github.com/iotaledger/identity.rs/pull/1094)
- Add JSON Object Signing capabilities [#1105](https://github.com/iotaledger/identity.rs/pull/1105)
- Make `StateMetadataDocument` public [#1085](https://github.com/iotaledger/identity.rs/pull/1085)
- Add v. credentials and presentations examples [#1070](https://github.com/iotaledger/identity.rs/pull/1070)
- Add revocation examples [#1076](https://github.com/iotaledger/identity.rs/pull/1076)
- Expose Controller and Governor Addresses in metadata [\#1023](https://github.com/iotaledger/identity.rs/pull/1023)
- Add Stardust Client Extension Trait [\#963](https://github.com/iotaledger/identity.rs/pull/963)
- Add StardustDID [\#949](https://github.com/iotaledger/identity.rs/pull/949)
- State metadata serialization for the stardust DID method [\#947](https://github.com/iotaledger/identity.rs/pull/947)
- Stardust DID Method Proof-of-Concept [\#940](https://github.com/iotaledger/identity.rs/pull/940)
- Implement the Identity Agent [\#322](https://github.com/iotaledger/identity.rs/pull/322)


### Patch

- Fix holder claim check in VP [#1236](https://github.com/iotaledger/identity.rs/pull/1236)
- Fix issuer claim check in VC [#1235](https://github.com/iotaledger/identity.rs/pull/1235)
- Feature-gate Domain Linkage [#1184](https://github.com/iotaledger/identity.rs/pull/1184)
- Update method spec and JWK method type [#1176](https://github.com/iotaledger/identity.rs/pull/1176)
- Replace `iota-client` with `iota-sdk` [#1161](https://github.com/iotaledger/identity.rs/pull/1161)
- Pin `form_urlencoded` to `1.1.0` [#1136](https://github.com/iotaledger/identity.rs/pull/1136)
- Remove legacy crates [#1080](https://github.com/iotaledger/identity.rs/pull/1080)
- Recommend unique `credentialStatus.id` in `RevocationBitmap2022` [\#1039](https://github.com/iotaledger/identity.rs/pull/1039)
- Pin agent dev-dependencies to crates versions [\#1029](https://github.com/iotaledger/identity.rs/pull/1029)
- Support case insensitive serialization of `RentStructure` [\#1012](https://github.com/iotaledger/identity.rs/pull/1012)
- Update stronghold to 0.6.4 [\#928](https://github.com/iotaledger/identity.rs/pull/928)

## [0.7.0-alpha.8](https://github.com/iotaledger/identity.rs/tree/v0.7.0-alpha.8) (2023-09-28)

[Full Changelog](https://github.com/iotaledger/identity.rs/compare/v0.7.0-alpha.7...v0.7.0-alpha.8)


### Changed
- Add dedicated stronghold crate [#1243](https://github.com/iotaledger/identity.rs/pull/1243)
- Add dedicated EdDSA verifier crate [#1238](https://github.com/iotaledger/identity.rs/pull/1238)
- Use `VC Data Model v1.1` JWT encoding instead of `VC-JWT` [#1234](https://github.com/iotaledger/identity.rs/pull/1234)
- Remove `vp` and `vc` from JWT claims in JOSE [#1233](https://github.com/iotaledger/identity.rs/pull/1233)
- Mark error enums as non-exhaustive [#1227](https://github.com/iotaledger/identity.rs/pull/1227)
- Change `verifiable_credential` to type `Vec<CRED>` in `Presentation` [#1231](https://github.com/iotaledger/identity.rs/pull/1231)
- Bring JwkDocumentExt names in line with Wasm [#1233](https://github.com/iotaledger/identity.rs/pull/1223)
- Add lints for all crates [#1222](https://github.com/iotaledger/identity.rs/pull/1222)

### Added
- Allow arbitrary JWS header parameters [#1245](https://github.com/iotaledger/identity.rs/pull/1245)
- Allow custom JWT claims for presentations [#1244](https://github.com/iotaledger/identity.rs/pull/1244)
- Allow custom `kid` to be set in JWS [#1239](https://github.com/iotaledger/identity.rs/pull/1239)
- Allow custom JWT claims for credentials [#1237](https://github.com/iotaledger/identity.rs/pull/1237)

### Patch
- Fix holder claim check in VP [#1236](https://github.com/iotaledger/identity.rs/pull/1236)
- Fix issuer claim check in VC [#1235](https://github.com/iotaledger/identity.rs/pull/1235)

## [v0.7.0-alpha.7](https://github.com/iotaledger/identity.rs/tree/v0.7.0-alpha.7) (2023-08-15)

[Full Changelog](https://github.com/iotaledger/identity.rs/compare/v0.7.0-alpha.6...v0.7.0-alpha.7)
Expand Down
4 changes: 2 additions & 2 deletions bindings/wasm/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ crate-type = ["cdylib", "rlib"]
async-trait = { version = "0.1", default-features = false }
console_error_panic_hook = { version = "0.1" }
futures = { version = "0.3" }
identity_eddsa_verifier = { version = "0.7.0-alpha.7", path = "../../identity_eddsa_verifier", default-features = false, features = ["ed25519"] }
identity_eddsa_verifier = { version = "1.0.0-rc.1", path = "../../identity_eddsa_verifier", default-features = false, features = ["ed25519"] }
js-sys = { version = "0.3.61" }
proc_typescript = { version = "0.1.0", path = "./proc_typescript" }
serde = { version = "1.0", features = ["derive"] }
Expand All @@ -31,7 +31,7 @@ wasm-bindgen = { version = "0.2.85", features = ["serde-serialize"] }
wasm-bindgen-futures = { version = "0.4", default-features = false }

[dependencies.identity_iota]
version = "0.7.0-alpha.8"
version = "1.0.0-rc.1"
path = "../../identity_iota"
default-features = false
features = ["client", "revocation-bitmap", "resolver", "domain-linkage"]
Expand Down
2 changes: 1 addition & 1 deletion examples/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "examples"
version = "0.7.0-alpha.8"
version = "1.0.0-rc.1"
authors = ["IOTA Stiftung"]
edition = "2021"
publish = false
Expand Down
2 changes: 1 addition & 1 deletion identity_core/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "identity_core"
version = "0.7.0-alpha.8"
version = "1.0.0-rc.1"
authors.workspace = true
edition.workspace = true
homepage.workspace = true
Expand Down
12 changes: 6 additions & 6 deletions identity_credential/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "identity_credential"
version = "0.7.0-alpha.8"
version = "1.0.0-rc.1"
authors = ["IOTA Stiftung"]
edition = "2021"
homepage.workspace = true
Expand All @@ -15,10 +15,10 @@ description = "An implementation of the Verifiable Credentials standard."
dataurl = { version = "0.1.2", default-features = false, optional = true }
flate2 = { version = "1.0.23", default-features = false, features = ["rust_backend"], optional = true }
futures = { version = "0.3", default-features = false, optional = true }
identity_core = { version = "=0.7.0-alpha.8", path = "../identity_core", default-features = false }
identity_did = { version = "=0.7.0-alpha.8", path = "../identity_did", default-features = false }
identity_document = { version = "=0.7.0-alpha.8", path = "../identity_document", default-features = false }
identity_verification = { version = "=0.7.0-alpha.8", path = "../identity_verification", default-features = false }
identity_core = { version = "=1.0.0-rc.1", path = "../identity_core", default-features = false }
identity_did = { version = "=1.0.0-rc.1", path = "../identity_did", default-features = false }
identity_document = { version = "=1.0.0-rc.1", path = "../identity_document", default-features = false }
identity_verification = { version = "=1.0.0-rc.1", path = "../identity_verification", default-features = false }
indexmap = { version = "2.0", default-features = false, features = ["std", "serde"] }
itertools = { version = "0.11", default-features = false, features = ["use_std"], optional = true }
once_cell = { version = "1.18", default-features = false, features = ["std"] }
Expand All @@ -31,7 +31,7 @@ thiserror.workspace = true
url = { version = "2.4", default-features = false }

[dev-dependencies]
identity_eddsa_verifier = { version = "=0.7.0-alpha.8", path = "../identity_eddsa_verifier", default-features = false, features = ["ed25519"] }
identity_eddsa_verifier = { version = "=1.0.0-rc.1", path = "../identity_eddsa_verifier", default-features = false, features = ["ed25519"] }
iota-crypto = { version = "0.23", default-features = false, features = ["ed25519", "std", "random"] }
proptest = { version = "1.0.0", default-features = false, features = ["std"] }
serde_json.workspace = true
Expand Down
4 changes: 2 additions & 2 deletions identity_did/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "identity_did"
version = "0.7.0-alpha.8"
version = "1.0.0-rc.1"
authors.workspace = true
edition = "2021"
homepage.workspace = true
Expand All @@ -13,7 +13,7 @@ description = "Agnostic implementation of the Decentralized Identifiers (DID) st
[dependencies]
did_url = { version = "0.1", default-features = false, features = ["std", "serde"] }
form_urlencoded = { version = "1.2.0", default-features = false, features = ["alloc"] }
identity_core = { version = "=0.7.0-alpha.8", path = "../identity_core" }
identity_core = { version = "=1.0.0-rc.1", path = "../identity_core" }
serde.workspace = true
strum.workspace = true
thiserror.workspace = true
Expand Down
8 changes: 4 additions & 4 deletions identity_document/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "identity_document"
version = "0.7.0-alpha.8"
version = "1.0.0-rc.1"
authors.workspace = true
edition.workspace = true
homepage.workspace = true
Expand All @@ -13,9 +13,9 @@ description = "Method-agnostic implementation of the Decentralized Identifiers (

[dependencies]
did_url = { version = "0.1", default-features = false, features = ["std", "serde"] }
identity_core = { version = "=0.7.0-alpha.8", path = "../identity_core" }
identity_did = { version = "=0.7.0-alpha.8", path = "../identity_did" }
identity_verification = { version = "=0.7.0-alpha.8", path = "../identity_verification", default-features = false }
identity_core = { version = "=1.0.0-rc.1", path = "../identity_core" }
identity_did = { version = "=1.0.0-rc.1", path = "../identity_did" }
identity_verification = { version = "=1.0.0-rc.1", path = "../identity_verification", default-features = false }
indexmap = { version = "2.0", default-features = false, features = ["std", "serde"] }
serde.workspace = true
strum.workspace = true
Expand Down
4 changes: 2 additions & 2 deletions identity_eddsa_verifier/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "identity_eddsa_verifier"
version = "0.7.0-alpha.8"
version = "1.0.0-rc.1"
authors.workspace = true
edition.workspace = true
homepage.workspace = true
Expand All @@ -12,7 +12,7 @@ rust-version.workspace = true
description = "JWS EdDSA signature verification for IOTA Identity"

[dependencies]
identity_jose = { version = "=0.7.0-alpha.8", path = "../identity_jose", default-features = false }
identity_jose = { version = "=1.0.0-rc.1", path = "../identity_jose", default-features = false }
iota-crypto = { version = "0.23", default-features = false, features = ["std"] }

[features]
Expand Down

0 comments on commit 67c925d

Please sign in to comment.