diff --git a/arkworks/src/lib.rs b/arkworks/src/lib.rs index 496f93e2d..3681c1331 100644 --- a/arkworks/src/lib.rs +++ b/arkworks/src/lib.rs @@ -22,33 +22,3 @@ pub mod poly; pub mod recover; pub mod utils; pub mod zero_poly; - -trait Eq { - fn equals(&self, other: &T) -> bool; -} - -trait Inverse { - fn inverse(&self) -> T; -} - -trait Zero { - fn is_zero(&self) -> bool; -} - -impl Eq for P1 { - fn equals(&self, other: &P1) -> bool { - self.x.l.eq(&other.x.l) && self.y.l.eq(&other.x.l) && self.z.l.eq(&other.x.l) - } -} - -impl Eq for Fr { - fn equals(&self, other: &Fr) -> bool { - self.l.eq(&other.l) - } -} - -impl Zero for Fr { - fn is_zero(&self) -> bool { - self.l[0] == 0 && self.l[1] == 0 && self.l[2] == 0 && self.l[3] == 0 - } -} diff --git a/arkworks/tests/eip_4844.rs b/arkworks/tests/eip_4844.rs index 8d77c7545..938ff0fd2 100644 --- a/arkworks/tests/eip_4844.rs +++ b/arkworks/tests/eip_4844.rs @@ -12,15 +12,13 @@ mod tests { compute_and_verify_blob_kzg_proof_fails_with_incorrect_proof_test, compute_and_verify_blob_kzg_proof_test, compute_and_verify_kzg_proof_fails_with_incorrect_proof_test, - compute_and_verify_kzg_proof_round_trip_test, compute_kzg_proof_test, compute_powers_test, - verify_kzg_proof_batch_fails_with_incorrect_proof_test, verify_kzg_proof_batch_test, - }; - #[cfg(not(feature = "minimal-spec"))] - use kzg_bench::tests::eip_4844::{ - compute_and_verify_kzg_proof_within_domain_test, test_vectors_blob_to_kzg_commitment, + compute_and_verify_kzg_proof_round_trip_test, + compute_and_verify_kzg_proof_within_domain_test, compute_kzg_proof_test, + compute_powers_test, test_vectors_blob_to_kzg_commitment, test_vectors_compute_blob_kzg_proof, test_vectors_compute_kzg_proof, test_vectors_verify_blob_kzg_proof, test_vectors_verify_blob_kzg_proof_batch, - test_vectors_verify_kzg_proof, + test_vectors_verify_kzg_proof, verify_kzg_proof_batch_fails_with_incorrect_proof_test, + verify_kzg_proof_batch_test, }; use rust_kzg_arkworks::consts::SCALE2_ROOT_OF_UNITY; use rust_kzg_arkworks::eip_4844::load_trusted_setup_filename_rust; @@ -96,7 +94,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn compute_and_verify_kzg_proof_within_domain_test_() { compute_and_verify_kzg_proof_within_domain_test::< @@ -221,7 +218,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_blob_to_kzg_commitment_() { test_vectors_blob_to_kzg_commitment::< @@ -240,7 +236,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_compute_kzg_proof_() { test_vectors_compute_kzg_proof::< @@ -259,7 +254,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_compute_blob_kzg_proof_() { test_vectors_compute_blob_kzg_proof::< @@ -278,7 +272,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_kzg_proof_() { test_vectors_verify_kzg_proof::< @@ -293,7 +286,6 @@ mod tests { >(&load_trusted_setup_filename_rust, &verify_kzg_proof_rust); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_blob_kzg_proof_() { test_vectors_verify_blob_kzg_proof::< @@ -312,7 +304,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_blob_kzg_proof_batch_() { test_vectors_verify_blob_kzg_proof_batch::< diff --git a/arkworks3/src/lib.rs b/arkworks3/src/lib.rs index 496f93e2d..3681c1331 100644 --- a/arkworks3/src/lib.rs +++ b/arkworks3/src/lib.rs @@ -22,33 +22,3 @@ pub mod poly; pub mod recover; pub mod utils; pub mod zero_poly; - -trait Eq { - fn equals(&self, other: &T) -> bool; -} - -trait Inverse { - fn inverse(&self) -> T; -} - -trait Zero { - fn is_zero(&self) -> bool; -} - -impl Eq for P1 { - fn equals(&self, other: &P1) -> bool { - self.x.l.eq(&other.x.l) && self.y.l.eq(&other.x.l) && self.z.l.eq(&other.x.l) - } -} - -impl Eq for Fr { - fn equals(&self, other: &Fr) -> bool { - self.l.eq(&other.l) - } -} - -impl Zero for Fr { - fn is_zero(&self) -> bool { - self.l[0] == 0 && self.l[1] == 0 && self.l[2] == 0 && self.l[3] == 0 - } -} diff --git a/arkworks3/tests/eip_4844.rs b/arkworks3/tests/eip_4844.rs index dd0c8d47b..7c6e27b9b 100644 --- a/arkworks3/tests/eip_4844.rs +++ b/arkworks3/tests/eip_4844.rs @@ -12,15 +12,13 @@ mod tests { compute_and_verify_blob_kzg_proof_fails_with_incorrect_proof_test, compute_and_verify_blob_kzg_proof_test, compute_and_verify_kzg_proof_fails_with_incorrect_proof_test, - compute_and_verify_kzg_proof_round_trip_test, compute_kzg_proof_test, compute_powers_test, - verify_kzg_proof_batch_fails_with_incorrect_proof_test, verify_kzg_proof_batch_test, - }; - #[cfg(not(feature = "minimal-spec"))] - use kzg_bench::tests::eip_4844::{ - compute_and_verify_kzg_proof_within_domain_test, test_vectors_blob_to_kzg_commitment, + compute_and_verify_kzg_proof_round_trip_test, + compute_and_verify_kzg_proof_within_domain_test, compute_kzg_proof_test, + compute_powers_test, test_vectors_blob_to_kzg_commitment, test_vectors_compute_blob_kzg_proof, test_vectors_compute_kzg_proof, test_vectors_verify_blob_kzg_proof, test_vectors_verify_blob_kzg_proof_batch, - test_vectors_verify_kzg_proof, + test_vectors_verify_kzg_proof, verify_kzg_proof_batch_fails_with_incorrect_proof_test, + verify_kzg_proof_batch_test, }; use rust_kzg_arkworks3::consts::SCALE2_ROOT_OF_UNITY; use rust_kzg_arkworks3::eip_4844::load_trusted_setup_filename_rust; @@ -96,7 +94,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn compute_and_verify_kzg_proof_within_domain_test_() { compute_and_verify_kzg_proof_within_domain_test::< @@ -221,7 +218,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_blob_to_kzg_commitment_() { test_vectors_blob_to_kzg_commitment::< @@ -240,7 +236,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_compute_kzg_proof_() { test_vectors_compute_kzg_proof::< @@ -259,7 +254,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_compute_blob_kzg_proof_() { test_vectors_compute_blob_kzg_proof::< @@ -278,7 +272,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_kzg_proof_() { test_vectors_verify_kzg_proof::< @@ -293,7 +286,6 @@ mod tests { >(&load_trusted_setup_filename_rust, &verify_kzg_proof_rust); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_blob_kzg_proof_() { test_vectors_verify_blob_kzg_proof::< @@ -312,7 +304,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_blob_kzg_proof_batch_() { test_vectors_verify_blob_kzg_proof_batch::< diff --git a/blst/src/eip_4844.rs b/blst/src/eip_4844.rs index b7556bf36..36406f6dd 100644 --- a/blst/src/eip_4844.rs +++ b/blst/src/eip_4844.rs @@ -268,27 +268,34 @@ pub unsafe extern "C" fn free_trusted_setup(s: *mut CKZGSettings) { PRECOMPUTATION_TABLES.remove_precomputation(&*s); - let max_width = (*s).max_width as usize; - let roots = Box::from_raw(core::slice::from_raw_parts_mut( - (*s).roots_of_unity, - max_width, - )); - drop(roots); - (*s).roots_of_unity = null_mut(); + if !(*s).roots_of_unity.is_null() { + let max_width = (*s).max_width as usize; + let roots = Box::from_raw(core::slice::from_raw_parts_mut( + (*s).roots_of_unity, + max_width, + )); + drop(roots); + (*s).roots_of_unity = null_mut(); + } - let g1 = Box::from_raw(core::slice::from_raw_parts_mut( - (*s).g1_values, - TRUSTED_SETUP_NUM_G1_POINTS, - )); - drop(g1); - (*s).g1_values = null_mut(); + if !(*s).g1_values.is_null() { + let g1 = Box::from_raw(core::slice::from_raw_parts_mut( + (*s).g1_values, + TRUSTED_SETUP_NUM_G1_POINTS, + )); + drop(g1); + (*s).g1_values = null_mut(); + } + + if !(*s).g2_values.is_null() { + let g2 = Box::from_raw(core::slice::from_raw_parts_mut( + (*s).g2_values, + TRUSTED_SETUP_NUM_G2_POINTS, + )); + drop(g2); + (*s).g2_values = null_mut(); + } - let g2 = Box::from_raw(core::slice::from_raw_parts_mut( - (*s).g2_values, - TRUSTED_SETUP_NUM_G2_POINTS, - )); - drop(g2); - (*s).g2_values = null_mut(); (*s).max_width = 0; } diff --git a/constantine/src/types/fp.rs b/constantine/src/types/fp.rs index aef809279..5693d67bc 100644 --- a/constantine/src/types/fp.rs +++ b/constantine/src/types/fp.rs @@ -79,7 +79,7 @@ impl G1Fp for CtFp { fn from_underlying_arr(arr: &[u64; 6]) -> Self { unsafe { Self(bls12_381_fp { - limbs: core::mem::transmute(*arr), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(*arr), }) } } diff --git a/constantine/src/types/fr.rs b/constantine/src/types/fr.rs index 2d429defd..aca8c645b 100644 --- a/constantine/src/types/fr.rs +++ b/constantine/src/types/fr.rs @@ -40,7 +40,7 @@ impl CtFr { pub fn from_blst_fr(fr: blst::blst_fr) -> Self { unsafe { Self(bls12_381_fr { - limbs: core::mem::transmute(fr.l), + limbs: core::mem::transmute::<[u64; 4], [usize; 4]>(fr.l), }) } } @@ -48,7 +48,7 @@ impl CtFr { pub fn to_blst_fr(&self) -> blst_fr { unsafe { blst_fr { - l: core::mem::transmute(self.0.limbs), + l: core::mem::transmute::<[usize; 4], [u64; 4]>(self.0.limbs), } } } @@ -282,7 +282,7 @@ impl Fr for CtFr { let mut scalar = constantine::big255::default(); unsafe { constantine::ctt_big255_from_bls12_381_fr(&mut scalar, &self.0); - Scalar256::from_u64(core::mem::transmute(scalar.limbs)) + Scalar256::from_u64(core::mem::transmute::<[usize; 4], [u64; 4]>(scalar.limbs)) } } } diff --git a/constantine/src/types/g1.rs b/constantine/src/types/g1.rs index a7dbfb02a..bcc5c9093 100644 --- a/constantine/src/types/g1.rs +++ b/constantine/src/types/g1.rs @@ -57,13 +57,13 @@ impl CtG1 { unsafe { Self(bls12_381_g1_jac { x: bls12_381_fp { - limbs: core::mem::transmute(p1.x.l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p1.x.l), }, y: bls12_381_fp { - limbs: core::mem::transmute(p1.y.l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p1.y.l), }, z: bls12_381_fp { - limbs: core::mem::transmute(p1.z.l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p1.z.l), }, }) } @@ -73,13 +73,13 @@ impl CtG1 { unsafe { blst::blst_p1 { x: blst::blst_fp { - l: core::mem::transmute(self.0.x.limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.x.limbs), }, y: blst::blst_fp { - l: core::mem::transmute(self.0.y.limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.y.limbs), }, z: blst::blst_fp { - l: core::mem::transmute(self.0.z.limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.z.limbs), }, } } @@ -353,8 +353,12 @@ impl G1Affine for CtG1Affine { fn into_affines_loc(out: &mut [Self], g1: &[CtG1]) { unsafe { constantine::ctt_bls12_381_g1_jac_batch_affine( - core::mem::transmute(out.as_mut_ptr()), - core::mem::transmute(g1.as_ptr()), + core::mem::transmute::<*mut CtG1Affine, *const constantine_sys::bls12_381_g1_aff>( + out.as_mut_ptr(), + ), + core::mem::transmute::<*const CtG1, *const constantine_sys::bls12_381_g1_jac>( + g1.as_ptr(), + ), g1.len(), ); } diff --git a/constantine/src/types/g2.rs b/constantine/src/types/g2.rs index f7ae5dea5..212bab024 100644 --- a/constantine/src/types/g2.rs +++ b/constantine/src/types/g2.rs @@ -30,30 +30,30 @@ impl CtG2 { x: bls12_381_fp2 { c: [ bls12_381_fp { - limbs: core::mem::transmute(p2.x.fp[0].l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p2.x.fp[0].l), }, bls12_381_fp { - limbs: core::mem::transmute(p2.x.fp[1].l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p2.x.fp[1].l), }, ], }, y: bls12_381_fp2 { c: [ bls12_381_fp { - limbs: core::mem::transmute(p2.y.fp[0].l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p2.y.fp[0].l), }, bls12_381_fp { - limbs: core::mem::transmute(p2.y.fp[1].l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p2.y.fp[1].l), }, ], }, z: bls12_381_fp2 { c: [ bls12_381_fp { - limbs: core::mem::transmute(p2.z.fp[0].l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p2.z.fp[0].l), }, bls12_381_fp { - limbs: core::mem::transmute(p2.z.fp[1].l), + limbs: core::mem::transmute::<[u64; 6], [usize; 6]>(p2.z.fp[1].l), }, ], }, @@ -67,30 +67,30 @@ impl CtG2 { x: blst::blst_fp2 { fp: [ blst::blst_fp { - l: core::mem::transmute(self.0.x.c[0].limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.x.c[0].limbs), }, blst::blst_fp { - l: core::mem::transmute(self.0.x.c[1].limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.x.c[1].limbs), }, ], }, y: blst::blst_fp2 { fp: [ blst::blst_fp { - l: core::mem::transmute(self.0.y.c[0].limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.y.c[0].limbs), }, blst::blst_fp { - l: core::mem::transmute(self.0.y.c[1].limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.y.c[1].limbs), }, ], }, z: blst::blst_fp2 { fp: [ blst::blst_fp { - l: core::mem::transmute(self.0.z.c[0].limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.z.c[0].limbs), }, blst::blst_fp { - l: core::mem::transmute(self.0.z.c[1].limbs), + l: core::mem::transmute::<[usize; 6], [u64; 6]>(self.0.z.c[1].limbs), }, ], }, diff --git a/kzg-bench/src/tests/poly.rs b/kzg-bench/src/tests/poly.rs index 5abf0c6f3..8bab4d5f5 100644 --- a/kzg-bench/src/tests/poly.rs +++ b/kzg-bench/src/tests/poly.rs @@ -121,7 +121,7 @@ fn test_data(a: usize, b: usize) -> Vec { test_data[a][b].clone() } -fn new_test_poly>(coeffs: &Vec) -> TPoly { +fn new_test_poly>(coeffs: &[i32]) -> TPoly { let mut p = TPoly::new(coeffs.len()); for (i, &coeff) in coeffs.iter().enumerate() { if coeff >= 0 { diff --git a/kzg/src/eip_4844.rs b/kzg/src/eip_4844.rs index 388f6dbf1..563136557 100644 --- a/kzg/src/eip_4844.rs +++ b/kzg/src/eip_4844.rs @@ -114,6 +114,18 @@ where tables: BTreeMap>>, } +impl Default for PrecomputationTableManager +where + TFr: Fr, + TG1: G1 + G1Mul + G1GetFp, + TG1Fp: G1Fp, + TG1Affine: G1Affine, +{ + fn default() -> Self { + Self::new() + } +} + impl PrecomputationTableManager where TFr: Fr, @@ -854,8 +866,8 @@ pub fn evaluate_polynomial_in_evaluation_form< } fn is_trusted_setup_in_lagrange_form, TG2: G2>( - g1_values: &Vec, - g2_values: &Vec, + g1_values: &[TG1], + g2_values: &[TG2], ) -> bool { if g1_values.len() < 2 || g2_values.len() < 2 { return false; diff --git a/kzg/src/msm/thread_pool.rs b/kzg/src/msm/thread_pool.rs index a6aa96129..2f743e8f8 100644 --- a/kzg/src/msm/thread_pool.rs +++ b/kzg/src/msm/thread_pool.rs @@ -14,7 +14,7 @@ pub fn da_pool() -> ThreadPool { INIT.call_once(|| { let pool = Mutex::new(ThreadPool::default()); - unsafe { POOL = transmute(Box::new(pool)) }; + unsafe { POOL = transmute::, *const _>(Box::new(pool)) }; }); unsafe { (*POOL).lock().unwrap().clone() } } diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 030782bb4..64c4ae40e 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,5 +1,5 @@ [toolchain] -channel = 'stable-2023-09-19' +channel = 'stable-2024-09-05' profile = 'minimal' components = ['clippy', 'rustfmt'] targets = ["x86_64-unknown-linux-gnu", "x86_64-pc-windows-gnu", "wasm32-unknown-unknown"] diff --git a/zkcrypto/bls12_381/src/scalar.rs b/zkcrypto/bls12_381/src/scalar.rs index c253ed427..9ca02b00e 100644 --- a/zkcrypto/bls12_381/src/scalar.rs +++ b/zkcrypto/bls12_381/src/scalar.rs @@ -831,7 +831,6 @@ fn test_inv() { assert_eq!(inv, INV); } -#[cfg(feature = "std")] #[test] fn test_debug() { assert_eq!( diff --git a/zkcrypto/src/lib.rs b/zkcrypto/src/lib.rs index a59aa0b2a..563a68681 100644 --- a/zkcrypto/src/lib.rs +++ b/zkcrypto/src/lib.rs @@ -22,32 +22,3 @@ pub mod poly; pub mod recover; pub mod utils; pub mod zero_poly; -trait Eq { - fn equals(&self, other: &T) -> bool; -} - -trait Inverse { - fn inverse(&self) -> T; -} - -trait Zero { - fn is_zero(&self) -> bool; -} - -impl Eq for P1 { - fn equals(&self, other: &P1) -> bool { - self.x.l.eq(&other.x.l) && self.y.l.eq(&other.x.l) && self.z.l.eq(&other.x.l) - } -} - -impl Eq for Fr { - fn equals(&self, other: &Fr) -> bool { - self.l.eq(&other.l) - } -} - -impl Zero for Fr { - fn is_zero(&self) -> bool { - self.l[0] == 0 && self.l[1] == 0 && self.l[2] == 0 && self.l[3] == 0 - } -} diff --git a/zkcrypto/tests/eip_4844.rs b/zkcrypto/tests/eip_4844.rs index a2e46f201..5ddd80433 100644 --- a/zkcrypto/tests/eip_4844.rs +++ b/zkcrypto/tests/eip_4844.rs @@ -12,15 +12,13 @@ mod tests { compute_and_verify_blob_kzg_proof_fails_with_incorrect_proof_test, compute_and_verify_blob_kzg_proof_test, compute_and_verify_kzg_proof_fails_with_incorrect_proof_test, - compute_and_verify_kzg_proof_round_trip_test, compute_kzg_proof_test, compute_powers_test, - verify_kzg_proof_batch_fails_with_incorrect_proof_test, verify_kzg_proof_batch_test, - }; - #[cfg(not(feature = "minimal-spec"))] - use kzg_bench::tests::eip_4844::{ - compute_and_verify_kzg_proof_within_domain_test, test_vectors_blob_to_kzg_commitment, + compute_and_verify_kzg_proof_round_trip_test, + compute_and_verify_kzg_proof_within_domain_test, compute_kzg_proof_test, + compute_powers_test, test_vectors_blob_to_kzg_commitment, test_vectors_compute_blob_kzg_proof, test_vectors_compute_kzg_proof, test_vectors_verify_blob_kzg_proof, test_vectors_verify_blob_kzg_proof_batch, - test_vectors_verify_kzg_proof, + test_vectors_verify_kzg_proof, verify_kzg_proof_batch_fails_with_incorrect_proof_test, + verify_kzg_proof_batch_test, }; use rust_kzg_zkcrypto::consts::SCALE2_ROOT_OF_UNITY; use rust_kzg_zkcrypto::eip_4844::load_trusted_setup_filename_rust; @@ -87,7 +85,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn compute_and_verify_kzg_proof_within_domain_test_() { compute_and_verify_kzg_proof_within_domain_test::< @@ -212,7 +209,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_blob_to_kzg_commitment_() { test_vectors_blob_to_kzg_commitment::< @@ -231,7 +227,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_compute_kzg_proof_() { test_vectors_compute_kzg_proof::< @@ -250,7 +245,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_compute_blob_kzg_proof_() { test_vectors_compute_blob_kzg_proof::< @@ -269,7 +263,6 @@ mod tests { ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_kzg_proof_() { test_vectors_verify_kzg_proof::< @@ -284,7 +277,6 @@ mod tests { >(&load_trusted_setup_filename_rust, &verify_kzg_proof_rust); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_blob_kzg_proof_() { test_vectors_verify_blob_kzg_proof::< @@ -302,7 +294,6 @@ mod tests { &verify_blob_kzg_proof_rust, ); } - #[cfg(not(feature = "minimal-spec"))] #[test] pub fn test_vectors_verify_blob_kzg_proof_batch_() { test_vectors_verify_blob_kzg_proof_batch::<