num-primes uses thread_rng() internally, making its benchmarks
non-deterministic and causing false regressions in CodSpeed CI.
Remove num-primes from default features so it's excluded from CI
benchmarks. All num-primes bench_functions are gated behind
#[cfg(feature = "num-primes")] - use --features num-primes to
include them for local comparison.
num-primes uses thread_rng() internally, making its benchmarks
non-deterministic. CodSpeed's instruction-counting simulation
amplifies this into huge false regressions. Gate all num-primes
bench_functions with #[cfg(feature = "num-primes")] and build
without the feature in CodSpeed CI.
Use glass_pumpkin's from_rng() API with a seeded ChaCha8Rng instead of
new() which uses OsRng internally, making these benchmarks deterministic.
num-primes doesn't expose an RNG parameter so it remains non-deterministic.
Replace thread_rng() with StdRng::seed_from_u64() to ensure benchmarks
use the same random inputs across runs, eliminating variance from
different random numbers having vastly different primality testing times.