Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 1.2.0 doesn't compile (method cannot be called on MontgomeryPoint due to unsatisfied trait bounds) #83

Open
Revertron opened this issue Sep 27, 2021 · 2 comments

Comments

@Revertron
Copy link

Please, see this PR checks: https://github.com/Revertron/Alfis/pull/163/checks?check_run_id=3716024097
And here is a copy:

   Compiling x25519-dalek v1.2.0
     Running `rustc --crate-name x25519_dalek --edition=2018 /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/x25519-dalek-1.2.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on --cfg 'feature="default"' --cfg 'feature="std"' --cfg 'feature="u64_backend"' -C metadata=baaddb637a5d6d32 -C extra-filename=-baaddb637a5d6d32 --out-dir /home/runner/work/Alfis/Alfis/target/debug/deps -L dependency=/home/runner/work/Alfis/Alfis/target/debug/deps --extern curve25519_dalek=/home/runner/work/Alfis/Alfis/target/debug/deps/libcurve25519_dalek-8ade5031273b1cae.rmeta --extern rand_core=/home/runner/work/Alfis/Alfis/target/debug/deps/librand_core-b12315593518f00b.rmeta --extern zeroize=/home/runner/work/Alfis/Alfis/target/debug/deps/libzeroize-bc125cf8446a0177.rmeta --cap-lints allow`
error[E0599]: the method `is_identity` exists for struct `MontgomeryPoint`, but its trait bounds were not satisfied
   --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/x25519-dalek-1.2.0/src/x25519.rs:265:17
    |
265 |         !self.0.is_identity()
    |                 ^^^^^^^^^^^ method cannot be called on `MontgomeryPoint` due to unsatisfied trait bounds
    | 
   ::: /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/curve25519-dalek-3.1.0/src/montgomery.rs:71:1
    |
71  | pub struct MontgomeryPoint(pub [u8; 32]);
    | -----------------------------------------
    | |
    | doesn't satisfy `MontgomeryPoint: Identity`
    | doesn't satisfy `MontgomeryPoint: IsIdentity`
    |
    = note: the following trait bounds were not satisfied:
            `MontgomeryPoint: Identity`
            which is required by `MontgomeryPoint: IsIdentity`

For more information about this error, try `rustc --explain E0599`.
error: could not compile `x25519-dalek` due to previous error

Caused by:
  process didn't exit successfully: `rustc --crate-name x25519_dalek --edition=2018 /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/x25519-dalek-1.2.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on --cfg 'feature="default"' --cfg 'feature="std"' --cfg 'feature="u64_backend"' -C metadata=baaddb637a5d6d32 -C extra-filename=-baaddb637a5d6d32 --out-dir /home/runner/work/Alfis/Alfis/target/debug/deps -L dependency=/home/runner/work/Alfis/Alfis/target/debug/deps --extern curve25519_dalek=/home/runner/work/Alfis/Alfis/target/debug/deps/libcurve25519_dalek-8ade5031273b1cae.rmeta --extern rand_core=/home/runner/work/Alfis/Alfis/target/debug/deps/librand_core-b12315593518f00b.rmeta --extern zeroize=/home/runner/work/Alfis/Alfis/target/debug/deps/libzeroize-bc125cf8446a0177.rmeta --cap-lints allow` (exit status: 1)
warning: build failed, waiting for other jobs to finish...
error: build failed
@Ryanmtate
Copy link

try to update curve25519-dalek to v3.2.0

@teor2345
Copy link

teor2345 commented Nov 16, 2021

try to update curve25519-dalek to v3.2.0

We also had this issue, it seems like x25519-dalek 1.2.0's dependency on curve25519-dalek should be 3.1 or 3.2.

teor2345 added a commit to ZcashFoundation/zebra that referenced this issue Nov 17, 2021
This fixes an incorrect dependency in x25519-dalek 1.2.0, see:
dalek-cryptography/x25519-dalek#83
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants