Merge remote-tracking branch 'origin/unstable' into progressive-list-tests

This commit is contained in:
Michael Sproul
2026-01-12 18:36:09 +11:00
304 changed files with 3275 additions and 4308 deletions

View File

@@ -28,14 +28,17 @@ fs2 = { workspace = true }
hex = { workspace = true }
kzg = { workspace = true }
logging = { workspace = true }
milhouse = { workspace = true }
rayon = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
serde_repr = { workspace = true }
serde_yaml = { workspace = true }
snap = { workspace = true }
ssz_types = { workspace = true }
state_processing = { workspace = true }
swap_or_not_shuffle = { workspace = true }
tree_hash = { workspace = true }
tree_hash_derive = { workspace = true }
typenum = { workspace = true }
types = { workspace = true }

View File

@@ -1,11 +1,12 @@
use super::*;
use crate::decode::{ssz_decode_file, ssz_decode_state, yaml_decode_file};
use serde::Deserialize;
use ssz_types::FixedVector;
use tree_hash::Hash256;
use typenum::Unsigned;
use types::{
BeaconBlockBody, BeaconBlockBodyCapella, BeaconBlockBodyDeneb, BeaconBlockBodyElectra,
BeaconBlockBodyFulu, BeaconBlockBodyGloas, BeaconState, FixedVector, FullPayload, Unsigned,
light_client_update,
BeaconBlockBodyFulu, BeaconBlockBodyGloas, BeaconState, FullPayload, light_client_update,
};
#[derive(Debug, Clone, Deserialize)]

View File

@@ -307,6 +307,7 @@ impl<E: EthSpec> Operation<E> for BeaconBlockBody<E, FullPayload<E>> {
ForkName::Deneb => BeaconBlockBody::Deneb(<_>::from_ssz_bytes(bytes)?),
ForkName::Electra => BeaconBlockBody::Electra(<_>::from_ssz_bytes(bytes)?),
ForkName::Fulu => BeaconBlockBody::Fulu(<_>::from_ssz_bytes(bytes)?),
// TODO(EIP-7732): See if we need to handle Gloas here
_ => panic!(),
})
})
@@ -366,6 +367,7 @@ impl<E: EthSpec> Operation<E> for BeaconBlockBody<E, BlindedPayload<E>> {
let inner = <BeaconBlockBodyFulu<E, FullPayload<E>>>::from_ssz_bytes(bytes)?;
BeaconBlockBody::Fulu(inner.clone_as_blinded())
}
// TODO(EIP-7732): See if we need to handle Gloas here
_ => panic!(),
})
})
@@ -417,6 +419,7 @@ impl<E: EthSpec> Operation<E> for WithdrawalsPayload<E> {
spec: &ChainSpec,
_: &Operations<E, Self>,
) -> Result<(), BlockProcessingError> {
// TODO(EIP-7732): implement separate gloas and non-gloas variants of process_withdrawals
process_withdrawals::<_, FullPayload<_>>(state, self.payload.to_ref(), spec)
}
}

View File

@@ -5,15 +5,15 @@ use crate::cases::common::{DecimalU128, DecimalU256, SszStaticType};
use crate::cases::ssz_static::{check_serialization, check_tree_hash};
use crate::decode::{context_yaml_decode_file, log_file_access, snappy_decode_file};
use context_deserialize::{ContextDeserialize, context_deserialize};
use milhouse::{List, ProgressiveList, Vector};
use serde::{Deserialize, Deserializer, de::Error as SerdeError};
use ssz::ProgressiveBitList;
use ssz_derive::{Decode, Encode};
use ssz_types::{BitList, BitVector, FixedVector, VariableList};
use tree_hash::TreeHash;
use tree_hash_derive::TreeHash;
use types::typenum::*;
use types::{
BitList, BitVector, FixedVector, ForkName, List, ProgressiveBitList, ProgressiveList,
VariableList, Vector,
};
use typenum::*;
use types::ForkName;
type U1280 = op!(U128 * U10);
type U1281 = op!(U1280 + U1);

View File

@@ -1,6 +1,7 @@
#![cfg(feature = "ef_tests")]
use ef_tests::*;
use typenum::Unsigned;
use types::*;
// Check that the hand-computed multiplications on EthSpec are correctly computed.