diff --git a/Cargo.lock b/Cargo.lock index 0cd317497..b74fb4310 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1000,8 +1000,9 @@ checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" [[package]] name = "blockbuster" -version = "1.1.0" -source = "git+https://github.com/rpcpool/blockbuster.git?branch=rm-plerkle-101#4c136e32de3dfce04a8bbf014d458b22f48ae06b" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "429446ab240a173ca553b6960fcd3d0b843006d89da18fe6c7445a34d9130f7d" dependencies = [ "anchor-lang", "async-trait", @@ -4016,7 +4017,8 @@ dependencies = [ [[package]] name = "plerkle_serialization" version = "1.8.0" -source = "git+https://github.com/rpcpool/digital-asset-validator-plugin.git?branch=espi/plerkle-solana-parsers#a623576e6022b9d4a0ae4c6b0bd1b1a4dc8c2b93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f832646491065468aa8e222b47d41dd5250e4be7866725bef5f0d31c64538f5f" dependencies = [ "bs58 0.4.0", "chrono", diff --git a/Cargo.toml b/Cargo.toml index 30df86430..619da0dac 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -31,7 +31,7 @@ anyhow = "1.0.75" async-std = "1.0.0" async-trait = "0.1.60" backon = "0.4.1" -blockbuster = "1.1.0" +blockbuster = "2.0.0" borsh = "~0.10.3" borsh-derive = "~0.10.3" bs58 = "0.4.0" @@ -118,10 +118,6 @@ clone_on_ref_ptr = "deny" missing_const_for_fn = "deny" trivially_copy_pass_by_ref = "deny" -[patch.crates-io] -blockbuster = { git = "https://github.com/rpcpool/blockbuster.git", branch = "rm-plerkle-101" } -plerkle_serialization = { git = "https://github.com/rpcpool/digital-asset-validator-plugin.git", branch = "espi/plerkle-solana-parsers" } - [profile.release] codegen-units = 1 lto = true diff --git a/nft_ingester/src/plerkle.rs b/nft_ingester/src/plerkle.rs index f514e53ed..bef3d4ff6 100644 --- a/nft_ingester/src/plerkle.rs +++ b/nft_ingester/src/plerkle.rs @@ -57,11 +57,12 @@ impl<'a> TryFrom> for TransactionInfo { .try_into()?; let compiled = tx_info.compiled_inner_instructions(); let inner = tx_info.inner_instructions(); - let meta_inner_instructions = compiled - .map(|c| PlerkleCompiledInnerInstructionVector(c).try_into()) - .or_else(|| inner.map(|i| PlerkleInnerInstructionsVector(i).try_into())) - .transpose()? - .unwrap_or_default(); + let meta_inner_instructions = if let Some(c) = compiled { + PlerkleCompiledInnerInstructionVector(c).try_into() + } else { + PlerkleInnerInstructionsVector(inner.ok_or(PlerkleDeserializerError::NotFound)?) + .try_into() + }?; Ok(Self { slot,