crypto-bigint breaking changes
Every breaking API change we have recorded in crypto-bigint on crates.io: 137 breaking changes in 2 versions. Below are its newest 2 versions, removals and renames first, each with its source.
Newest change February 14, 2025

On this page
0.6.1
- Signature changed
crypto_bigint::Odd::random
Was fn random(rng: &mut impl RngCore, bit_length: u32) -> Self; now fn random(rng: &mut (impl RngCore + ?Sized), bit_length: u32) -> Self. crates.io - Signature changed
crypto_bigint::prelude::Random::random
Was fn random(rng: &mut impl RngCore) -> Self; now fn random(rng: &mut (impl RngCore + ?Sized)) -> Self. crates.io - Signature changed
crypto_bigint::prelude::RandomBits::random_bits
Was fn random_bits(rng: &mut impl RngCore, bit_length: u32) -> Self; now fn random_bits(rng: &mut (impl RngCore + ?Sized), bit_length: u32) -> Self. crates.io - Signature changed
crypto_bigint::prelude::RandomBits::random_bits_with_precision
Was fn random_bits_with_precision(rng: &mut impl RngCore, bit_length: u32, bits_precision: u32) -> Self; now fn random_bits_with_precision(rng: &mut (impl RngCore + ?Sized), bit_length: u32, bits_precision: u32) -> Self. crates.io - Signature changed
crypto_bigint::prelude::RandomBits::try_random_bits
Was fn try_random_bits(rng: &mut impl RngCore, bit_length: u32) -> Result<Self, RandomBitsError>; now fn try_random_bits(rng: &mut (impl RngCore + ?Sized), bit_length: u32) -> Result<Self, RandomBitsError>. crates.io - Signature changed
crypto_bigint::prelude::RandomBits::try_random_bits_with_precision
Was fn try_random_bits_with_precision(rng: &mut impl RngCore, bit_length: u32, bits_precision: u32) -> Result<Self, RandomBitsError>; now fn try_random_bits_with_precision(rng: &mut (impl RngCore + ?Sized), bit_length: u32, bits_precision... crates.io - Signature changed
crypto_bigint::prelude::RandomMod::random_mod
Was fn random_mod(rng: &mut impl RngCore, modulus: &NonZero<Self>) -> Self; now fn random_mod(rng: &mut (impl RngCore + ?Sized), modulus: &NonZero<Self>) -> Self. crates.io - Signature changed
crypto_bigint::Random::random
Was fn random(rng: &mut impl RngCore) -> Self; now fn random(rng: &mut (impl RngCore + ?Sized)) -> Self. crates.io - Signature changed
crypto_bigint::RandomBits::random_bits
Was fn random_bits(rng: &mut impl RngCore, bit_length: u32) -> Self; now fn random_bits(rng: &mut (impl RngCore + ?Sized), bit_length: u32) -> Self. crates.io - Signature changed
crypto_bigint::RandomBits::random_bits_with_precision
Was fn random_bits_with_precision(rng: &mut impl RngCore, bit_length: u32, bits_precision: u32) -> Self; now fn random_bits_with_precision(rng: &mut (impl RngCore + ?Sized), bit_length: u32, bits_precision: u32) -> Self. crates.io
And 3 more in this version.
0.6.0
- Removed
crypto_bigint::BoxedUint::new
crypto_bigint::BoxedUint::new was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::CheckedAdd::Output
crypto_bigint::CheckedAdd::Output was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::CheckedMul::Output
crypto_bigint::CheckedMul::Output was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::CheckedSub::Output
crypto_bigint::CheckedSub::Output was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::const_assert_eq!
crypto_bigint::const_assert_eq! was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::const_assert_ne!
crypto_bigint::const_assert_ne! was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::const_residue!
crypto_bigint::const_residue! was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::fuzz
crypto_bigint::fuzz was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::Integer::BITS
crypto_bigint::Integer::BITS was removed in crypto-bigint 0.6.0 crates.io - Removed
crypto_bigint::Integer::BYTES
crypto_bigint::Integer::BYTES was removed in crypto-bigint 0.6.0 crates.io
And 114 more in this version.
Check your code
These are the changes. To see which of them reach your code, scan a public repository, or have your coding agent call check_code with your manifest or lockfile over MCP. The API reads every change in every version, not only the newest. On Team and up, a fix pull request opens for the changes that reach a connected repository. Nothing merges or deploys.

Put your code on continuous management.
Scan a public repository now, or give your agent one line.
See how out of date your code is.
Tell your agent what changed since it was trained.
claude mcp add --transport http since https://api.since.dev/mcp