Skip to content

Conversation

@str4d
Copy link
Member

@str4d str4d commented Mar 9, 2025

This is a feature branch; PR is open to track the overall 0.14.0 changes.

src/lib.rs Outdated

/// Returns an element chosen uniformly at random using a user-provided RNG.
fn random(rng: impl RngCore) -> Self;
fn random<R: RngCore + ?Sized>(rng: &mut R) -> Self;
Copy link
Member Author

Choose a reason for hiding this comment

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

This change is blocked on being included in a zkcrypto RFC.

@str4d
Copy link
Member Author

str4d commented Mar 9, 2025

CI is failing because changes in main currently conflict with changes here. I will fix this by merging main into this PR after #131 is merged.

@baloo
Copy link

baloo commented Mar 9, 2025

I'm not very familiar with the zkcrypto processes, any chance you could tag and publish a pre-release for 0.14.0? (with #127 preferably).

@str4d
Copy link
Member Author

str4d commented Mar 9, 2025

That's my plan. We do not normally do pre-releases because they are hard to use correctly in general, but given the need to coordinate with RustCrypto I'll be doing so in this instance.

And as noted elsewhere, the trait changes in any pre-release builds will not be included in the final release unless they are also in a merged zkcrypto RFC. The pre-release builds we create in this instance should be used for RFC consensus building.

adds a Field::try_from_rng method
tarcieri pushed a commit to RustCrypto/traits that referenced this pull request Mar 9, 2025
@str4d
Copy link
Member Author

str4d commented Nov 22, 2025

RustCrypto have decided to skip rand_core 0.9 entirely, and moved to 0.10.0-rc* in the last few weeks. There's very little motivation for me now in releasing ff 0.14 with rand_core 0.9, because it would be nigh-unusable in concrete downstreams like bls12_381 and pasta_curves which depend on various RustCrypto trait crates. So I will review #147 (and the equivalent PRs on group etc.) for an ff 0.14.0-pre.1.

This has two main implications:

  • ff 0.14 will have an MSRV bump to whatever rand_core 0.10 uses (currently 1.85, which seems reasonable as that's the Rust 2024 edition boundary).
  • ff 0.14 will be blocked until rand_core 0.10 releases, which currently has no date. (Thus far we've been blocked on a zkcrypto RFC being written but also waiting for RustCrypto to get close to needing a published ff 0.14 to ensure we're compatible; useful in this particular instance!)

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

Successfully merging this pull request may close these issues.

4 participants