wasmCloud/nkeys

nkeys 0.3.0 doesn't build with old `ed25519`

Closed this issue · 0 comments

Looks like nkeys depends on ed25519_dalek::Signature::BYTE_SIZE which isn't actually guaranteed by the ed25519-dalek = { version = "1.0.1", default-features = false, features = ["u64_backend"] } dependency in Cargo.toml. ed25519_dalek::Signature is a re-exported ed25519::Signature, and ed25519's Cargo.toml in turns only depends on ed25519 = { version = "1", default-features = false }.

ed25519 commit 5286a9768217b6ca0911f25991558a0bb97bedcd added Signature::BYTE_SIZE. Looks like the next release tag was v1.3.0.

I suppose nkeys should directly depend on ed25519 = "1.3".

I'll send a PR shortly.

$ cargo check
...success..
$ cargo update -p ed25519
$ cargo check
...
    Checking nkeys v0.3.0 (/Users/slamb/git/crates/nkeys)
error[E0599]: no associated item named `BYTE_SIZE` found for struct `ed25519_dalek::Signature` in the current scope
   --> src/lib.rs:257:58
    |
257 |         let mut fixedsig = [0; ed25519_dalek::Signature::BYTE_SIZE];
    |                                                          ^^^^^^^^^ associated item not found in `Signature`

error[E0599]: no function or associated item named `from_bytes` found for struct `ed25519_dalek::Signature` in the current scope
   --> src/lib.rs:259:47
    |
259 |         let insig = ed25519_dalek::Signature::from_bytes(&fixedsig)?;
    |                                               ^^^^^^^^^^ function or associated item not found in `Signature`
    |
    = help: items from traits can only be used if the trait is in scope
help: the following trait is implemented but not in scope; perhaps add a `use` for it:
    |
48  + use signatory::signature::Signature;
    |
help: there is a method with a similar name
    |
259 |         let insig = ed25519_dalek::Signature::to_bytes(&fixedsig)?;
    |                                               ~~~~~~~~

For more information about this error, try `rustc --explain E0599`.
error: could not compile `nkeys` (lib) due to 2 previous errors
...