Problem
When depending on `rustls-rustcrypto`, the build fails due to incompatible version constraints in the dependency tree:
Error:
```
error[E0277]: the trait bound `for<'a> primeorder::AffinePoint: MulVartime<&'a Scalar>` is not satisfied
--> p256-0.14.0-rc.8/src/arithmetic.rs:24:24
```
Root Cause
The dependency chain pulls incompatible versions:
- `rustls-rustcrypto` → `ecdsa v0.17.0-rc.17` → `elliptic-curve v0.14.0-rc.31`
- `rustls-rustcrypto` → `p256 v0.14.0-rc.8` (requires `elliptic-curve` v0.14.0-rc.29 API)
`p256 v0.14.0-rc.8` and `p384 v0.14.0-rc.8` were released against `elliptic-curve v0.14.0-rc.29`, but `ecdsa v0.17.0-rc.17` pulls `elliptic-curve v0.14.0-rc.31` which has breaking API changes.
Working Configuration
Using `ecdsa v0.17.0-rc.16` (which pulls `elliptic-curve v0.14.0-rc.29`) works correctly.
Dependency Tree (failing)
```
elliptic-curve v0.14.0-rc.31
├── ecdsa v0.17.0-rc.17
│ ├── p256 v0.14.0-rc.8 ← incompatible with rc.31
│ └── p384 v0.14.0-rc.8 ← incompatible with rc.31
```
Suggested Fix
- Pin `ecdsa` to `0.17.0-rc.16` in `Cargo.toml` until `p256`/`p384` are updated
- Or update `p256`/`p384` to versions compatible with `elliptic-curve` rc.31
Environment
- Rust: 1.77+
- Commit: `aecee37208823f6a4ffabeb7c0a1227015b131cb`
Problem
When depending on `rustls-rustcrypto`, the build fails due to incompatible version constraints in the dependency tree:
Error:
```
error[E0277]: the trait bound `for<'a> primeorder::AffinePoint: MulVartime<&'a Scalar>` is not satisfied
--> p256-0.14.0-rc.8/src/arithmetic.rs:24:24
```
Root Cause
The dependency chain pulls incompatible versions:
`p256 v0.14.0-rc.8` and `p384 v0.14.0-rc.8` were released against `elliptic-curve v0.14.0-rc.29`, but `ecdsa v0.17.0-rc.17` pulls `elliptic-curve v0.14.0-rc.31` which has breaking API changes.
Working Configuration
Using `ecdsa v0.17.0-rc.16` (which pulls `elliptic-curve v0.14.0-rc.29`) works correctly.
Dependency Tree (failing)
```
elliptic-curve v0.14.0-rc.31
├── ecdsa v0.17.0-rc.17
│ ├── p256 v0.14.0-rc.8 ← incompatible with rc.31
│ └── p384 v0.14.0-rc.8 ← incompatible with rc.31
```
Suggested Fix
Environment