diff --git a/proto/pinax/ethereum/blobs/v1/blobs.proto b/proto/pinax/ethereum/blobs/v1/blobs.proto index fba8891..b320058 100644 --- a/proto/pinax/ethereum/blobs/v1/blobs.proto +++ b/proto/pinax/ethereum/blobs/v1/blobs.proto @@ -14,6 +14,7 @@ enum Spec { CAPELLA = 4; DENEB = 5; ELECTRA = 6; + FUSAKA = 7; } message Slot { diff --git a/substreams/Cargo.lock b/substreams/Cargo.lock index b0653c5..b5e0238 100644 --- a/substreams/Cargo.lock +++ b/substreams/Cargo.lock @@ -156,7 +156,7 @@ dependencies = [ [[package]] name = "eth_blobs" -version = "0.7.0" +version = "0.7.1" dependencies = [ "prost 0.11.9", "prost-types 0.11.9", diff --git a/substreams/Cargo.toml b/substreams/Cargo.toml index 703d023..3ee9e46 100644 --- a/substreams/Cargo.toml +++ b/substreams/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "eth_blobs" -version = "0.7.0" +version = "0.7.1" edition = "2021" [lib] diff --git a/substreams/src/lib.rs b/substreams/src/lib.rs index c74b6e9..0f36a34 100644 --- a/substreams/src/lib.rs +++ b/substreams/src/lib.rs @@ -31,6 +31,17 @@ fn map_blobs(blk: BeaconBlock) -> Result { kzg_commitment_inclusion_proof: b.kzg_commitment_inclusion_proof, }) .collect(), + Fusaka(body) => body + .embedded_blobs + .into_iter() + .map(|b| Blob { + index: b.index as u32, + blob: b.blob, + kzg_commitment: b.kzg_commitment, + kzg_proof: b.kzg_proof, + kzg_commitment_inclusion_proof: b.kzg_commitment_inclusion_proof, + }) + .collect(), _ => vec![], }; diff --git a/substreams/src/pb/pinax.ethereum.blobs.v1.rs b/substreams/src/pb/pinax.ethereum.blobs.v1.rs index 5505b28..d48dfd2 100644 --- a/substreams/src/pb/pinax.ethereum.blobs.v1.rs +++ b/substreams/src/pb/pinax.ethereum.blobs.v1.rs @@ -46,6 +46,8 @@ pub enum Spec { Bellatrix = 3, Capella = 4, Deneb = 5, + Electra = 6, + Fusaka = 7, } impl Spec { /// String value of the enum field names used in the ProtoBuf definition. @@ -60,6 +62,8 @@ impl Spec { Spec::Bellatrix => "BELLATRIX", Spec::Capella => "CAPELLA", Spec::Deneb => "DENEB", + Spec::Electra => "ELECTRA", + Spec::Fusaka => "FUSAKA", } } /// Creates an enum from field names used in the ProtoBuf definition. @@ -71,6 +75,8 @@ impl Spec { "BELLATRIX" => Some(Self::Bellatrix), "CAPELLA" => Some(Self::Capella), "DENEB" => Some(Self::Deneb), + "ELECTRA" => Some(Self::Electra), + "FUSAKA" => Some(Self::Fusaka), _ => None, } } diff --git a/substreams/src/pb/sf.beacon.type.v1.rs b/substreams/src/pb/sf.beacon.type.v1.rs index 34aec7c..01301d9 100644 --- a/substreams/src/pb/sf.beacon.type.v1.rs +++ b/substreams/src/pb/sf.beacon.type.v1.rs @@ -24,7 +24,7 @@ pub struct Block { pub signature: ::prost::alloc::vec::Vec, #[prost(message, optional, tag="31")] pub timestamp: ::core::option::Option<::prost_types::Timestamp>, - #[prost(oneof="block::Body", tags="20, 21, 22, 23, 24, 25")] + #[prost(oneof="block::Body", tags="20, 21, 22, 23, 24, 25, 26")] pub body: ::core::option::Option, } /// Nested message and enum types in `Block`. @@ -44,6 +44,8 @@ pub mod block { Deneb(super::DenebBody), #[prost(message, tag="25")] Electra(super::ElectraBody), + #[prost(message, tag="26")] + Fusaka(super::ElectraBody), } } #[allow(clippy::derive_partial_eq_without_eq)] @@ -546,6 +548,7 @@ pub enum Spec { Capella = 4, Deneb = 5, Electra = 6, + Fusaka = 7, } impl Spec { /// String value of the enum field names used in the ProtoBuf definition. @@ -561,6 +564,7 @@ impl Spec { Spec::Capella => "CAPELLA", Spec::Deneb => "DENEB", Spec::Electra => "ELECTRA", + Spec::Fusaka => "FUSAKA", } } /// Creates an enum from field names used in the ProtoBuf definition. @@ -573,6 +577,7 @@ impl Spec { "CAPELLA" => Some(Self::Capella), "DENEB" => Some(Self::Deneb), "ELECTRA" => Some(Self::Electra), + "FUSAKA" => Some(Self::Fusaka), _ => None, } } diff --git a/substreams/substreams.yaml b/substreams/substreams.yaml index 8360692..d9edeb1 100644 --- a/substreams/substreams.yaml +++ b/substreams/substreams.yaml @@ -1,7 +1,7 @@ specVersion: v0.1.0 package: name: "eth_blobs" - version: v0.7.0 + version: v0.7.1 image: ./logo.png doc: | This substreams package lets you stream Consensus Layer EIP-4844 blobs with attached meta data. @@ -15,9 +15,9 @@ package: - chiado-cl: chiado-cl.substreams.pinax.network:443 imports: - beacon: https://github.com/pinax-network/firehose-beacon/releases/download/beacon-spkg-v0.6.0/beacon-v0.6.0.spkg + beacon: https://github.com/pinax-network/firehose-beacon/releases/download/v0.7.1/beacon-v0.7.0.spkg kv: https://github.com/streamingfast/substreams-sink-kv/releases/download/v2.1.6/substreams-sink-kv-v2.1.6.spkg - entity: https://github.com/streamingfast/substreams-entity-change/releases/download/v1.1.0/substreams-entity-change-v1.1.0.spkg + entity: https://github.com/streamingfast/substreams-sink-entity-changes/releases/download/v1.3.2/substreams-sink-entity-changes-v1.3.2.spkg protobuf: files: