Skip to content

build(deps): align RustCrypto ECC dependency versions and remove unnecessary transitive pins#506

Merged
Benoît Cortier (CBenoit) merged 5 commits into
masterfrom
copilot/move-stable-versions-rustcrypto
Jun 26, 2026
Merged

build(deps): align RustCrypto ECC dependency versions and remove unnecessary transitive pins#506
Benoît Cortier (CBenoit) merged 5 commits into
masterfrom
copilot/move-stable-versions-rustcrypto

Conversation

Copilot AI commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

RustCrypto’s ECC stack was still on older RC-era constraints. This PR updates the direct ECC dependencies to a compatible newer set and removes transitive pins that are no longer needed, letting Cargo resolve those crates naturally (including stable elliptic-curve).

  • Direct dependency alignment

    • p256/p384/p521=0.14.0-rc.14
    • primeorder=0.14.0-rc.14
    • ecdsa=0.17.0-rc.22
    • ed25519-dalek/x25519-dalek=3.0.0-rc.1
    • curve25519-dalek=5.0.0-rc.1
  • Transitive pin cleanup

    • Removed now-unnecessary transitive pins from picky/Cargo.toml (including elliptic-curve, primefield, and related transitive trait crates), per review feedback.
  • Code compatibility adjustment

    • Added SignatureEncoding trait import in Ed25519 signing code so to_vec() remains available with the resolved dependency graph.
  • Lockfile refresh

    • Regenerated root and wasm lockfiles to capture the cleaned dependency graph.
# picky/Cargo.toml (excerpt)

p256 = { version = "=0.14.0-rc.14", features = ["ecdh"] }
p384 = { version = "=0.14.0-rc.14", features = ["ecdh"] }
p521 = { version = "=0.14.0-rc.14", features = ["ecdh"] }
ecdsa = "=0.17.0-rc.22"
primeorder = "=0.14.0-rc.14"

# (unneeded transitive pins removed)

Comment thread picky/Cargo.toml
Comment on lines 81 to +96
# Pin transitive dependencies versions.
# TODO: Remove when stable versions will be released.
aead = { version = "0.6", optional = true }
blake2 = { version = "=0.11.0-rc.6", optional = true }
ed25519 = "=3.0.0"
ecdsa = "=0.17.0-rc.18"
elliptic-curve = "=0.14.0-rc.33"
ecdsa = "=0.17.0-rc.22"
elliptic-curve = "0.14"
pkcs1 = "=0.8.0-rc.4"
primefield = "=0.14.0-rc.12"
primeorder = "=0.14.0-rc.10"
primefield = "0.14"
primeorder = "=0.14.0-rc.14"
ff = { version = "0.14", default-features = false }
group = "0.14"
rustcrypto-ff = "=0.14.0-rc.1"
rustcrypto-ff_derive = "=0.14.0-rc.0"
rustcrypto-group = "=0.14.0-rc.1"
curve25519-dalek = "=5.0.0-rc.0"
curve25519-dalek = "=5.0.0-rc.1"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot Remove any dependency that we don’t need to pin anymore.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in 3bd6247.
I removed the unneeded transitive RustCrypto pins from picky/Cargo.toml and refreshed both lockfiles accordingly.

@CBenoit Benoît Cortier (CBenoit) changed the title Bump RustCrypto deps to stable elliptic-curve and align ECC stack versions build(deps): bump RustCrypto deps to stable elliptic-curve and align ECC stack versions Jun 25, 2026
Copilot AI changed the title build(deps): bump RustCrypto deps to stable elliptic-curve and align ECC stack versions Align RustCrypto ECC dependency versions and remove unnecessary transitive pins Jun 25, 2026
@CBenoit

Copy link
Copy Markdown
Member

Copilot removed pins that are still required. I’ll do the final edits myself.

@CBenoit Benoît Cortier (CBenoit) force-pushed the copilot/move-stable-versions-rustcrypto branch from 3bd6247 to 85b51a5 Compare June 26, 2026 05:51
@CBenoit Benoît Cortier (CBenoit) changed the title Align RustCrypto ECC dependency versions and remove unnecessary transitive pins build(deps): align RustCrypto ECC dependency versions and remove unnecessary transitive pins Jun 26, 2026
@CBenoit Benoît Cortier (CBenoit) marked this pull request as ready for review June 26, 2026 06:06
@CBenoit Benoît Cortier (CBenoit) enabled auto-merge (squash) June 26, 2026 06:11
@CBenoit Benoît Cortier (CBenoit) merged commit a4346f2 into master Jun 26, 2026
11 checks passed
@CBenoit Benoît Cortier (CBenoit) deleted the copilot/move-stable-versions-rustcrypto branch June 26, 2026 07:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants