Fix conflicts rebasing eip4844
This commit is contained in:
parent
1f3eef2c5f
commit
02cca3478b
13
Cargo.lock
generated
13
Cargo.lock
generated
@ -6827,19 +6827,6 @@ dependencies = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
<<<<<<< HEAD
|
|
||||||
name = "serde-big-array"
|
|
||||||
version = "0.3.2"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "18b20e7752957bbe9661cff4e0bb04d183d0948cdab2ea58cdb9df36a61dfe62"
|
|
||||||
dependencies = [
|
|
||||||
"serde",
|
|
||||||
"serde_derive",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
=======
|
|
||||||
>>>>>>> 5ef38b590 (Fix conflicts rebasing eip4844)
|
|
||||||
name = "serde_array_query"
|
name = "serde_array_query"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
@ -4539,7 +4539,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
|
|||||||
None,
|
None,
|
||||||
),
|
),
|
||||||
BeaconState::Merge(_) => {
|
BeaconState::Merge(_) => {
|
||||||
let block_contents = block_contents
|
let (payload, _, _) = block_contents
|
||||||
.ok_or(BlockProductionError::MissingExecutionPayload)?
|
.ok_or(BlockProductionError::MissingExecutionPayload)?
|
||||||
.deconstruct();
|
.deconstruct();
|
||||||
(
|
(
|
||||||
@ -4559,8 +4559,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
|
|||||||
voluntary_exits: voluntary_exits.into(),
|
voluntary_exits: voluntary_exits.into(),
|
||||||
sync_aggregate: sync_aggregate
|
sync_aggregate: sync_aggregate
|
||||||
.ok_or(BlockProductionError::MissingSyncAggregate)?,
|
.ok_or(BlockProductionError::MissingSyncAggregate)?,
|
||||||
execution_payload: block_contents
|
execution_payload: payload
|
||||||
.payload
|
|
||||||
.try_into()
|
.try_into()
|
||||||
.map_err(|_| BlockProductionError::InvalidPayloadFork)?,
|
.map_err(|_| BlockProductionError::InvalidPayloadFork)?,
|
||||||
},
|
},
|
||||||
@ -4569,10 +4568,9 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
BeaconState::Capella(_) => {
|
BeaconState::Capella(_) => {
|
||||||
let block_contents = block_contents
|
let (payload, _, _) = block_contents
|
||||||
.ok_or(BlockProductionError::MissingExecutionPayload)?
|
.ok_or(BlockProductionError::MissingExecutionPayload)?
|
||||||
.deconstruct();
|
.deconstruct();
|
||||||
|
|
||||||
(
|
(
|
||||||
BeaconBlock::Capella(BeaconBlockCapella {
|
BeaconBlock::Capella(BeaconBlockCapella {
|
||||||
slot,
|
slot,
|
||||||
@ -4590,8 +4588,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
|
|||||||
voluntary_exits: voluntary_exits.into(),
|
voluntary_exits: voluntary_exits.into(),
|
||||||
sync_aggregate: sync_aggregate
|
sync_aggregate: sync_aggregate
|
||||||
.ok_or(BlockProductionError::MissingSyncAggregate)?,
|
.ok_or(BlockProductionError::MissingSyncAggregate)?,
|
||||||
execution_payload: block_contents
|
execution_payload: payload
|
||||||
.payload
|
|
||||||
.try_into()
|
.try_into()
|
||||||
.map_err(|_| BlockProductionError::InvalidPayloadFork)?,
|
.map_err(|_| BlockProductionError::InvalidPayloadFork)?,
|
||||||
bls_to_execution_changes: bls_to_execution_changes.into(),
|
bls_to_execution_changes: bls_to_execution_changes.into(),
|
||||||
@ -4601,22 +4598,9 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
BeaconState::Eip4844(_) => {
|
BeaconState::Eip4844(_) => {
|
||||||
let block_contents_unpacked = block_contents
|
let (payload, kzg_commitments, blobs) = block_contents
|
||||||
.ok_or(BlockProductionError::MissingExecutionPayload)?
|
.ok_or(BlockProductionError::MissingExecutionPayload)?
|
||||||
.deconstruct();
|
.deconstruct();
|
||||||
|
|
||||||
let (blob_kzg_commitments, blobs) = match block_contents_unpacked.blobs_content {
|
|
||||||
Some(blobs_content) => {
|
|
||||||
let kzg_commitments: KzgCommitments<T::EthSpec> =
|
|
||||||
blobs_content.kzg_commitments;
|
|
||||||
let blobs: Blobs<T::EthSpec> = blobs_content.blobs;
|
|
||||||
(kzg_commitments, blobs)
|
|
||||||
}
|
|
||||||
None => {
|
|
||||||
return Err(BlockProductionError::InvalidPayloadFork);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
(
|
(
|
||||||
BeaconBlock::Eip4844(BeaconBlockEip4844 {
|
BeaconBlock::Eip4844(BeaconBlockEip4844 {
|
||||||
slot,
|
slot,
|
||||||
@ -4634,15 +4618,15 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
|
|||||||
voluntary_exits: voluntary_exits.into(),
|
voluntary_exits: voluntary_exits.into(),
|
||||||
sync_aggregate: sync_aggregate
|
sync_aggregate: sync_aggregate
|
||||||
.ok_or(BlockProductionError::MissingSyncAggregate)?,
|
.ok_or(BlockProductionError::MissingSyncAggregate)?,
|
||||||
execution_payload: block_contents_unpacked
|
execution_payload: payload
|
||||||
.payload
|
|
||||||
.try_into()
|
.try_into()
|
||||||
.map_err(|_| BlockProductionError::InvalidPayloadFork)?,
|
.map_err(|_| BlockProductionError::InvalidPayloadFork)?,
|
||||||
bls_to_execution_changes: bls_to_execution_changes.into(),
|
bls_to_execution_changes: bls_to_execution_changes.into(),
|
||||||
blob_kzg_commitments,
|
blob_kzg_commitments: kzg_commitments
|
||||||
|
.ok_or(BlockProductionError::InvalidPayloadFork)?,
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
Some(blobs),
|
blobs,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -153,7 +153,9 @@ pub async fn broadcast_address_changes<T: BeaconChainTypes>(
|
|||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use super::*;
|
use super::*;
|
||||||
use beacon_chain::test_utils::{BeaconChainHarness, EphemeralHarnessType};
|
use beacon_chain::test_utils::{
|
||||||
|
BeaconChainHarness, EphemeralTestingSlotClockHarnessType as HarnessType,
|
||||||
|
};
|
||||||
use operation_pool::ReceivedPreCapella;
|
use operation_pool::ReceivedPreCapella;
|
||||||
use state_processing::{SigVerifiedOp, VerifyOperation};
|
use state_processing::{SigVerifiedOp, VerifyOperation};
|
||||||
use std::collections::HashSet;
|
use std::collections::HashSet;
|
||||||
@ -166,7 +168,7 @@ mod tests {
|
|||||||
pub const EXECUTION_ADDRESS: Address = Address::repeat_byte(42);
|
pub const EXECUTION_ADDRESS: Address = Address::repeat_byte(42);
|
||||||
|
|
||||||
struct Tester {
|
struct Tester {
|
||||||
harness: BeaconChainHarness<EphemeralHarnessType<E>>,
|
harness: BeaconChainHarness<HarnessType<E>>,
|
||||||
/// Changes which should be broadcast at the Capella fork.
|
/// Changes which should be broadcast at the Capella fork.
|
||||||
received_pre_capella_changes: Vec<SigVerifiedOp<SignedBlsToExecutionChange, E>>,
|
received_pre_capella_changes: Vec<SigVerifiedOp<SignedBlsToExecutionChange, E>>,
|
||||||
/// Changes which should *not* be broadcast at the Capella fork.
|
/// Changes which should *not* be broadcast at the Capella fork.
|
||||||
|
@ -133,6 +133,7 @@ pub enum BlockProposalContents<T: EthSpec, Payload: AbstractExecPayload<T>> {
|
|||||||
payload: Payload,
|
payload: Payload,
|
||||||
block_value: Uint256,
|
block_value: Uint256,
|
||||||
kzg_commitments: KzgCommitments<T>,
|
kzg_commitments: KzgCommitments<T>,
|
||||||
|
blobs: Blobs<T>,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -147,7 +148,7 @@ pub struct BlockProposalContentsDeconstructed<T: EthSpec, Payload: AbstractExecP
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl<T: EthSpec, Payload: AbstractExecPayload<T>> BlockProposalContents<T, Payload> {
|
impl<T: EthSpec, Payload: AbstractExecPayload<T>> BlockProposalContents<T, Payload> {
|
||||||
pub fn deconstruct(self) -> BlockProposalContentsDeconstructed<T, Payload> {
|
pub fn deconstruct(self) -> (Payload, Option<KzgCommitments<T>>, Option<Blobs<T>>) {
|
||||||
match self {
|
match self {
|
||||||
Self::Payload {
|
Self::Payload {
|
||||||
payload,
|
payload,
|
||||||
@ -158,13 +159,7 @@ impl<T: EthSpec, Payload: AbstractExecPayload<T>> BlockProposalContents<T, Paylo
|
|||||||
block_value: _,
|
block_value: _,
|
||||||
kzg_commitments,
|
kzg_commitments,
|
||||||
blobs,
|
blobs,
|
||||||
} => BlockProposalContentsDeconstructed {
|
} => (payload, Some(kzg_commitments), Some(blobs)),
|
||||||
payload,
|
|
||||||
blobs_content: Some(BlockProposalBlobsContents {
|
|
||||||
kzg_commitments,
|
|
||||||
blobs,
|
|
||||||
}),
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user