From 99b0968eab48b660314e6e484bceb1b4cef7cdea Mon Sep 17 00:00:00 2001 From: jnsiemer Date: Tue, 3 Mar 2026 11:37:05 +0000 Subject: [PATCH] Update according to breaking changes in rand-crate --- Cargo.toml | 8 ++++---- README.md | 2 +- src/rational/mat_q/sample/gauss.rs | 2 +- src/rational/poly_over_q/sample/gauss.rs | 2 +- src/rational/q/sample/gauss.rs | 2 +- src/utils/sample/discrete_gauss.rs | 2 +- src/utils/sample/uniform.rs | 2 +- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 95542a68..9271fe2c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,8 +1,8 @@ [package] name = "qfall-math" -version = "0.1.0" +version = "0.1.1" edition = "2024" -rust-version = "1.85" # due to rand and rand_distr dependency +rust-version = "1.87" # due to wit_bindgen dependency description = "Mathematical foundations for rapid prototyping of lattice-based cryptography" readme = "README.md" homepage = "https://qfall.github.io" @@ -17,8 +17,8 @@ criterion = { version = "0.8", features = ["html_reports"] } flint-sys = "0.7" libc = "0" paste = "1" -rand = "0" -rand_distr = "0" +rand = "0.10" +rand_distr = "0.6" regex = "1" serde = {version="1", features=["derive"]} serde_json = "1" diff --git a/README.md b/README.md index 6960ed7c..952c203d 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ This `math`-crate is a memory-safe wrapper of [FLINT](https://flintlib.org/) in ## Quick-Start First, ensure that you use a Unix-like distribution (Linux or MacOS). Setup [WSL](https://learn.microsoft.com/en-us/windows/wsl/install) if you're using Windows. This is required due to this crate's dependency on FLINT. -Then, make sure your `rustc --version` is `1.85` or newer. +Then, make sure your `rustc --version` is `1.87` or newer. Furthermore, it's required that `m4`, a C-compiler such as `gcc`, and `make` are installed. ```bash diff --git a/src/rational/mat_q/sample/gauss.rs b/src/rational/mat_q/sample/gauss.rs index 15fc8f83..6d7c5ca4 100644 --- a/src/rational/mat_q/sample/gauss.rs +++ b/src/rational/mat_q/sample/gauss.rs @@ -17,7 +17,7 @@ use probability::{ prelude::{Gaussian, Sample}, source, }; -use rand::RngCore; +use rand::Rng; use std::fmt::Display; impl MatQ { diff --git a/src/rational/poly_over_q/sample/gauss.rs b/src/rational/poly_over_q/sample/gauss.rs index 61d743c4..b5c5bde3 100644 --- a/src/rational/poly_over_q/sample/gauss.rs +++ b/src/rational/poly_over_q/sample/gauss.rs @@ -19,7 +19,7 @@ use probability::{ prelude::{Gaussian, Sample}, source, }; -use rand::RngCore; +use rand::Rng; use std::fmt::Display; impl PolyOverQ { diff --git a/src/rational/q/sample/gauss.rs b/src/rational/q/sample/gauss.rs index c97d8808..e2f440b7 100644 --- a/src/rational/q/sample/gauss.rs +++ b/src/rational/q/sample/gauss.rs @@ -13,7 +13,7 @@ use probability::{ distribution::{Gaussian, Sample}, source, }; -use rand::RngCore; +use rand::Rng; impl Q { /// Chooses a [`Q`] instance according to the continuous Gaussian distribution. diff --git a/src/utils/sample/discrete_gauss.rs b/src/utils/sample/discrete_gauss.rs index d0472605..f8a9429f 100644 --- a/src/utils/sample/discrete_gauss.rs +++ b/src/utils/sample/discrete_gauss.rs @@ -23,7 +23,7 @@ use crate::{ rational::{MatQ, Q}, traits::{MatrixDimensions, MatrixGetSubmatrix, Pow}, }; -use rand::Rng; +use rand::RngExt; use serde::{Deserialize, Serialize}; use std::collections::HashMap; diff --git a/src/utils/sample/uniform.rs b/src/utils/sample/uniform.rs index 4a8fc646..59727c9b 100644 --- a/src/utils/sample/uniform.rs +++ b/src/utils/sample/uniform.rs @@ -11,7 +11,7 @@ use crate::{error::MathError, integer::Z}; use flint_sys::fmpz::{fmpz_addmul_ui, fmpz_set_ui}; -use rand::{RngCore, rngs::ThreadRng}; +use rand::{Rng, rngs::ThreadRng}; /// Enables uniformly random sampling a [`Z`] in `[0, interval_size)`. ///