Remove consensus/types re-exports (#8540)

There are certain crates which we re-export within `types` which creates a fragmented DevEx, where there are various ways to import the same crates.

```rust
// consensus/types/src/lib.rs
pub use bls::{
AggregatePublicKey, AggregateSignature, Error as BlsError, Keypair, PUBLIC_KEY_BYTES_LEN,
PublicKey, PublicKeyBytes, SIGNATURE_BYTES_LEN, SecretKey, Signature, SignatureBytes,
get_withdrawal_credentials,
};
pub use context_deserialize::{ContextDeserialize, context_deserialize};
pub use fixed_bytes::FixedBytesExtended;
pub use milhouse::{self, List, Vector};
pub use ssz_types::{BitList, BitVector, FixedVector, VariableList, typenum, typenum::Unsigned};
pub use superstruct::superstruct;
```

This PR removes these re-exports and makes it explicit that these types are imported from a non-`consensus/types` crate.


Co-Authored-By: Mac L <mjladson@pm.me>
This commit is contained in:
Mac L
2025-12-09 11:13:41 +04:00
committed by GitHub
parent 77d58437da
commit f3fd1f210b
213 changed files with 556 additions and 259 deletions

View File

@@ -9,9 +9,11 @@ portable = ["beacon_chain/portable"]
[dependencies]
bitvec = { workspace = true }
bls = { workspace = true }
educe = { workspace = true }
ethereum_ssz = { workspace = true }
ethereum_ssz_derive = { workspace = true }
fixed_bytes = { workspace = true }
itertools = { workspace = true }
metrics = { workspace = true }
parking_lot = { workspace = true }
@@ -20,6 +22,8 @@ rayon = { workspace = true }
serde = { workspace = true }
state_processing = { workspace = true }
store = { workspace = true }
superstruct = { workspace = true }
typenum = { workspace = true }
types = { workspace = true }
[dev-dependencies]

View File

@@ -1,12 +1,13 @@
use crate::attestation_storage::{CompactAttestationRef, CompactIndexedAttestation};
use crate::max_cover::MaxCover;
use crate::reward_cache::RewardCache;
use ssz::BitList;
use state_processing::common::{
attesting_indices_base::get_attesting_indices, base, get_attestation_participation_flag_indices,
};
use std::collections::HashMap;
use types::{
Attestation, BeaconState, BitList, ChainSpec, EthSpec,
Attestation, BeaconState, ChainSpec, EthSpec,
beacon_state::BeaconStateBase,
consts::altair::{PARTICIPATION_FLAG_WEIGHTS, PROPOSER_WEIGHT, WEIGHT_DENOMINATOR},
};

View File

@@ -1,11 +1,13 @@
use crate::AttestationStats;
use bls::AggregateSignature;
use itertools::Itertools;
use ssz::{BitList, BitVector};
use std::collections::{BTreeMap, HashMap, HashSet};
use superstruct::superstruct;
use typenum::Unsigned;
use types::{
AggregateSignature, Attestation, AttestationData, BeaconState, BitList, BitVector, Checkpoint,
Epoch, EthSpec, Hash256, Slot, Unsigned,
Attestation, AttestationData, BeaconState, Checkpoint, Epoch, EthSpec, Hash256, Slot,
attestation::{AttestationBase, AttestationElectra},
superstruct,
};
#[derive(Debug, PartialEq, Eq, Hash, Clone, Copy)]

View File

@@ -35,12 +35,12 @@ use state_processing::{SigVerifiedOp, VerifyOperation};
use std::collections::{HashMap, HashSet, hash_map::Entry};
use std::marker::PhantomData;
use std::ptr;
use typenum::Unsigned;
use types::{
AbstractExecPayload, Attestation, AttestationData, AttesterSlashing, BeaconState,
BeaconStateError, ChainSpec, Epoch, EthSpec, ProposerSlashing, SignedBeaconBlock,
SignedBlsToExecutionChange, SignedVoluntaryExit, Slot, SyncAggregate,
SyncCommitteeContribution, Validator, sync_aggregate::Error as SyncAggregateError,
typenum::Unsigned,
};
type SyncContributions<E> = RwLock<HashMap<SyncAggregateId, Vec<SyncCommitteeContribution<E>>>>;
@@ -793,6 +793,8 @@ mod release_tests {
use beacon_chain::test_utils::{
BeaconChainHarness, EphemeralHarnessType, RelativeSyncCommittee, test_spec,
};
use bls::Keypair;
use fixed_bytes::FixedBytesExtended;
use maplit::hashset;
use state_processing::epoch_cache::initialize_epoch_cache;
use state_processing::{VerifyOperation, common::get_attesting_indices_from_state};

View File

@@ -11,6 +11,7 @@ use state_processing::SigVerifiedOp;
use std::collections::HashSet;
use std::mem;
use store::{DBColumn, Error as StoreError, StoreItem};
use superstruct::superstruct;
use types::attestation::AttestationOnDisk;
use types::*;

View File

@@ -1,8 +1,7 @@
use crate::OpPoolError;
use bitvec::vec::BitVec;
use types::{
BeaconState, BeaconStateError, Epoch, EthSpec, FixedBytesExtended, Hash256, ParticipationFlags,
};
use fixed_bytes::FixedBytesExtended;
use types::{BeaconState, BeaconStateError, Epoch, EthSpec, Hash256, ParticipationFlags};
#[derive(Debug, PartialEq, Eq, Clone)]
struct Initialization {