Переглянути джерело

remove solana-sdk from transaction-view (#4174)

* remove solana-sdk from transaction-view

* sort deps
Kevin Heavey 10 місяців тому
батько
коміт
3aa7fdc2c7

+ 11 - 1
Cargo.lock

@@ -239,9 +239,19 @@ dependencies = [
  "agave-transaction-view",
  "agave-transaction-view",
  "bincode",
  "bincode",
  "criterion",
  "criterion",
- "solana-sdk",
+ "solana-hash",
+ "solana-instruction",
+ "solana-keypair",
+ "solana-message",
+ "solana-packet",
+ "solana-pubkey",
  "solana-sdk-ids",
  "solana-sdk-ids",
+ "solana-short-vec",
+ "solana-signature",
+ "solana-signer",
  "solana-svm-transaction",
  "solana-svm-transaction",
+ "solana-system-interface",
+ "solana-transaction",
 ]
 ]
 
 
 [[package]]
 [[package]]

+ 6 - 1
programs/sbf/Cargo.lock

@@ -77,8 +77,13 @@ dependencies = [
 name = "agave-transaction-view"
 name = "agave-transaction-view"
 version = "2.2.0"
 version = "2.2.0"
 dependencies = [
 dependencies = [
- "solana-sdk",
+ "solana-hash",
+ "solana-message",
+ "solana-packet",
+ "solana-pubkey",
  "solana-sdk-ids",
  "solana-sdk-ids",
+ "solana-short-vec",
+ "solana-signature",
  "solana-svm-transaction",
  "solana-svm-transaction",
 ]
 ]
 
 

+ 6 - 1
svm/examples/Cargo.lock

@@ -77,8 +77,13 @@ dependencies = [
 name = "agave-transaction-view"
 name = "agave-transaction-view"
 version = "2.2.0"
 version = "2.2.0"
 dependencies = [
 dependencies = [
- "solana-sdk",
+ "solana-hash",
+ "solana-message",
+ "solana-packet",
+ "solana-pubkey",
  "solana-sdk-ids",
  "solana-sdk-ids",
+ "solana-short-vec",
+ "solana-signature",
  "solana-svm-transaction",
  "solana-svm-transaction",
 ]
 ]
 
 

+ 13 - 1
transaction-view/Cargo.toml

@@ -10,8 +10,13 @@ license = { workspace = true }
 edition = { workspace = true }
 edition = { workspace = true }
 
 
 [dependencies]
 [dependencies]
-solana-sdk = { workspace = true }
+solana-hash = { workspace = true }
+solana-message = { workspace = true }
+solana-packet = { workspace = true }
+solana-pubkey = { workspace = true }
 solana-sdk-ids = { workspace = true }
 solana-sdk-ids = { workspace = true }
+solana-short-vec = { workspace = true }
+solana-signature = { workspace = true }
 solana-svm-transaction = { workspace = true }
 solana-svm-transaction = { workspace = true }
 
 
 [dev-dependencies]
 [dev-dependencies]
@@ -19,6 +24,13 @@ solana-svm-transaction = { workspace = true }
 agave-transaction-view = { path = ".", features = ["dev-context-only-utils"] }
 agave-transaction-view = { path = ".", features = ["dev-context-only-utils"] }
 bincode = { workspace = true }
 bincode = { workspace = true }
 criterion = { workspace = true }
 criterion = { workspace = true }
+solana-instruction = { workspace = true }
+solana-keypair = { workspace = true }
+solana-message = { workspace = true, features = ["serde"] }
+solana-signature = { workspace = true, features = ["serde"] }
+solana-signer = { workspace = true }
+solana-system-interface = { workspace = true, features = ["bincode"] }
+solana-transaction = { workspace = true, features = ["bincode"] }
 
 
 [features]
 [features]
 dev-context-only-utils = []
 dev-context-only-utils = []

+ 2 - 4
transaction-view/benches/bytes.rs

@@ -2,10 +2,8 @@ use {
     agave_transaction_view::bytes::{optimized_read_compressed_u16, read_compressed_u16},
     agave_transaction_view::bytes::{optimized_read_compressed_u16, read_compressed_u16},
     bincode::{serialize_into, DefaultOptions, Options},
     bincode::{serialize_into, DefaultOptions, Options},
     criterion::{black_box, criterion_group, criterion_main, Criterion, Throughput},
     criterion::{black_box, criterion_group, criterion_main, Criterion, Throughput},
-    solana_sdk::{
-        packet::PACKET_DATA_SIZE,
-        short_vec::{decode_shortu16_len, ShortU16},
-    },
+    solana_packet::PACKET_DATA_SIZE,
+    solana_short_vec::{decode_shortu16_len, ShortU16},
 };
 };
 
 
 fn setup() -> Vec<(u16, usize, Vec<u8>)> {
 fn setup() -> Vec<(u16, usize, Vec<u8>)> {

+ 12 - 12
transaction-view/benches/transaction_view.rs

@@ -4,18 +4,18 @@ use {
         black_box, criterion_group, criterion_main, measurement::Measurement, BenchmarkGroup,
         black_box, criterion_group, criterion_main, measurement::Measurement, BenchmarkGroup,
         Criterion, Throughput,
         Criterion, Throughput,
     },
     },
-    solana_sdk::{
-        hash::Hash,
-        instruction::Instruction,
-        message::{
-            v0::{self, MessageAddressTableLookup},
-            Message, MessageHeader, VersionedMessage,
-        },
-        pubkey::Pubkey,
-        signature::Keypair,
-        signer::Signer,
-        system_instruction,
-        transaction::{SanitizedVersionedTransaction, VersionedTransaction},
+    solana_hash::Hash,
+    solana_instruction::Instruction,
+    solana_keypair::Keypair,
+    solana_message::{
+        v0::{self, MessageAddressTableLookup},
+        Message, MessageHeader, VersionedMessage,
+    },
+    solana_pubkey::Pubkey,
+    solana_signer::Signer,
+    solana_system_interface::instruction as system_instruction,
+    solana_transaction::versioned::{
+        sanitized::SanitizedVersionedTransaction, VersionedTransaction,
     },
     },
 };
 };
 
 

+ 5 - 5
transaction-view/src/address_table_lookup_frame.rs

@@ -7,7 +7,10 @@ use {
         result::{Result, TransactionViewError},
         result::{Result, TransactionViewError},
     },
     },
     core::fmt::{Debug, Formatter},
     core::fmt::{Debug, Formatter},
-    solana_sdk::{hash::Hash, packet::PACKET_DATA_SIZE, pubkey::Pubkey, signature::Signature},
+    solana_hash::Hash,
+    solana_packet::PACKET_DATA_SIZE,
+    solana_pubkey::Pubkey,
+    solana_signature::Signature,
     solana_svm_transaction::message_address_table_lookup::SVMMessageAddressTableLookup,
     solana_svm_transaction::message_address_table_lookup::SVMMessageAddressTableLookup,
 };
 };
 
 
@@ -211,10 +214,7 @@ impl Debug for AddressTableLookupIterator<'_> {
 
 
 #[cfg(test)]
 #[cfg(test)]
 mod tests {
 mod tests {
-    use {
-        super::*,
-        solana_sdk::{message::v0::MessageAddressTableLookup, short_vec::ShortVec},
-    };
+    use {super::*, solana_message::v0::MessageAddressTableLookup, solana_short_vec::ShortVec};
 
 
     #[test]
     #[test]
     fn test_zero_atls() {
     fn test_zero_atls() {

+ 2 - 1
transaction-view/src/bytes.rs

@@ -199,7 +199,8 @@ mod tests {
     use {
     use {
         super::*,
         super::*,
         bincode::{serialize_into, DefaultOptions, Options},
         bincode::{serialize_into, DefaultOptions, Options},
-        solana_sdk::{packet::PACKET_DATA_SIZE, short_vec::ShortU16},
+        solana_packet::PACKET_DATA_SIZE,
+        solana_short_vec::ShortU16,
     };
     };
 
 
     #[test]
     #[test]

+ 2 - 2
transaction-view/src/instructions_frame.rs

@@ -149,8 +149,8 @@ impl Debug for InstructionsIterator<'_> {
 #[cfg(test)]
 #[cfg(test)]
 mod tests {
 mod tests {
     use {
     use {
-        super::*,
-        solana_sdk::{instruction::CompiledInstruction, short_vec::ShortVec},
+        super::*, solana_message::compiled_instruction::CompiledInstruction,
+        solana_short_vec::ShortVec,
     };
     };
 
 
     #[test]
     #[test]

+ 1 - 1
transaction-view/src/message_header_frame.rs

@@ -4,7 +4,7 @@ use {
         result::{Result, TransactionViewError},
         result::{Result, TransactionViewError},
         transaction_version::TransactionVersion,
         transaction_version::TransactionVersion,
     },
     },
-    solana_sdk::message::MESSAGE_VERSION_PREFIX,
+    solana_message::MESSAGE_VERSION_PREFIX,
 };
 };
 
 
 /// Metadata for accessing message header fields in a transaction view.
 /// Metadata for accessing message header fields in a transaction view.

+ 14 - 18
transaction-view/src/resolved_transaction_view.rs

@@ -9,15 +9,13 @@ use {
         fmt::{Debug, Formatter},
         fmt::{Debug, Formatter},
         ops::Deref,
         ops::Deref,
     },
     },
-    solana_sdk::{
-        bpf_loader_upgradeable, ed25519_program,
-        hash::Hash,
-        message::{v0::LoadedAddresses, AccountKeys, TransactionSignatureDetails},
-        pubkey::Pubkey,
-        secp256k1_program,
-        signature::Signature,
+    solana_hash::Hash,
+    solana_message::{v0::LoadedAddresses, AccountKeys, TransactionSignatureDetails},
+    solana_pubkey::Pubkey,
+    solana_sdk_ids::{
+        bpf_loader_upgradeable, ed25519_program, secp256k1_program, secp256r1_program,
     },
     },
-    solana_sdk_ids::secp256r1_program,
+    solana_signature::Signature,
     solana_svm_transaction::{
     solana_svm_transaction::{
         instruction::SVMInstruction, message_address_table_lookup::SVMMessageAddressTableLookup,
         instruction::SVMInstruction, message_address_table_lookup::SVMMessageAddressTableLookup,
         svm_message::SVMMessage, svm_transaction::SVMTransaction,
         svm_message::SVMMessage, svm_transaction::SVMTransaction,
@@ -222,7 +220,7 @@ impl<D: TransactionData> SVMMessage for ResolvedTransactionView<D> {
         &self,
         &self,
     ) -> impl Iterator<
     ) -> impl Iterator<
         Item = (
         Item = (
-            &solana_sdk::pubkey::Pubkey,
+            &solana_pubkey::Pubkey,
             solana_svm_transaction::instruction::SVMInstruction,
             solana_svm_transaction::instruction::SVMInstruction,
         ),
         ),
     > + Clone {
     > + Clone {
@@ -289,16 +287,14 @@ mod tests {
     use {
     use {
         super::*,
         super::*,
         crate::transaction_view::SanitizedTransactionView,
         crate::transaction_view::SanitizedTransactionView,
-        solana_sdk::{
-            instruction::CompiledInstruction,
-            message::{
-                v0::{self, MessageAddressTableLookup},
-                MessageHeader, VersionedMessage,
-            },
-            signature::Signature,
-            system_program, sysvar,
-            transaction::VersionedTransaction,
+        solana_message::{
+            compiled_instruction::CompiledInstruction,
+            v0::{self, MessageAddressTableLookup},
+            MessageHeader, VersionedMessage,
         },
         },
+        solana_sdk_ids::{system_program, sysvar},
+        solana_signature::Signature,
+        solana_transaction::versioned::VersionedTransaction,
     };
     };
 
 
     #[test]
     #[test]

+ 9 - 11
transaction-view/src/sanitize.rs

@@ -105,18 +105,16 @@ mod tests {
     use {
     use {
         super::*,
         super::*,
         crate::transaction_view::TransactionView,
         crate::transaction_view::TransactionView,
-        solana_sdk::{
-            hash::Hash,
-            instruction::CompiledInstruction,
-            message::{
-                v0::{self, MessageAddressTableLookup},
-                Message, MessageHeader, VersionedMessage,
-            },
-            pubkey::Pubkey,
-            signature::Signature,
-            system_instruction,
-            transaction::VersionedTransaction,
+        solana_hash::Hash,
+        solana_message::{
+            compiled_instruction::CompiledInstruction,
+            v0::{self, MessageAddressTableLookup},
+            Message, MessageHeader, VersionedMessage,
         },
         },
+        solana_pubkey::Pubkey,
+        solana_signature::Signature,
+        solana_system_interface::instruction as system_instruction,
+        solana_transaction::versioned::VersionedTransaction,
     };
     };
 
 
     fn create_legacy_transaction(
     fn create_legacy_transaction(

+ 4 - 2
transaction-view/src/signature_frame.rs

@@ -3,7 +3,9 @@ use {
         bytes::{advance_offset_for_array, read_byte},
         bytes::{advance_offset_for_array, read_byte},
         result::{Result, TransactionViewError},
         result::{Result, TransactionViewError},
     },
     },
-    solana_sdk::{packet::PACKET_DATA_SIZE, pubkey::Pubkey, signature::Signature},
+    solana_packet::PACKET_DATA_SIZE,
+    solana_pubkey::Pubkey,
+    solana_signature::Signature,
 };
 };
 
 
 // The packet has a maximum length of 1232 bytes.
 // The packet has a maximum length of 1232 bytes.
@@ -51,7 +53,7 @@ impl SignatureFrame {
 
 
 #[cfg(test)]
 #[cfg(test)]
 mod tests {
 mod tests {
-    use {super::*, solana_sdk::short_vec::ShortVec};
+    use {super::*, solana_short_vec::ShortVec};
 
 
     #[test]
     #[test]
     fn test_zero_signatures() {
     fn test_zero_signatures() {

+ 3 - 2
transaction-view/src/static_account_keys_frame.rs

@@ -3,7 +3,8 @@ use {
         bytes::{advance_offset_for_array, read_byte},
         bytes::{advance_offset_for_array, read_byte},
         result::{Result, TransactionViewError},
         result::{Result, TransactionViewError},
     },
     },
-    solana_sdk::{packet::PACKET_DATA_SIZE, pubkey::Pubkey},
+    solana_packet::PACKET_DATA_SIZE,
+    solana_pubkey::Pubkey,
 };
 };
 
 
 // The packet has a maximum length of 1232 bytes.
 // The packet has a maximum length of 1232 bytes.
@@ -49,7 +50,7 @@ impl StaticAccountKeysFrame {
 
 
 #[cfg(test)]
 #[cfg(test)]
 mod tests {
 mod tests {
-    use {super::*, solana_sdk::short_vec::ShortVec};
+    use {super::*, solana_short_vec::ShortVec};
 
 
     #[test]
     #[test]
     fn test_zero_accounts() {
     fn test_zero_accounts() {

+ 8 - 9
transaction-view/src/transaction_frame.rs

@@ -9,7 +9,9 @@ use {
         static_account_keys_frame::StaticAccountKeysFrame,
         static_account_keys_frame::StaticAccountKeysFrame,
         transaction_version::TransactionVersion,
         transaction_version::TransactionVersion,
     },
     },
-    solana_sdk::{hash::Hash, pubkey::Pubkey, signature::Signature},
+    solana_hash::Hash,
+    solana_pubkey::Pubkey,
+    solana_signature::Signature,
 };
 };
 
 
 #[derive(Debug)]
 #[derive(Debug)]
@@ -258,14 +260,11 @@ impl TransactionFrame {
 mod tests {
 mod tests {
     use {
     use {
         super::*,
         super::*,
-        solana_sdk::{
-            address_lookup_table::AddressLookupTableAccount,
-            message::{v0, Message, MessageHeader, VersionedMessage},
-            pubkey::Pubkey,
-            signature::Signature,
-            system_instruction::{self, SystemInstruction},
-            transaction::VersionedTransaction,
-        },
+        solana_message::{v0, AddressLookupTableAccount, Message, MessageHeader, VersionedMessage},
+        solana_pubkey::Pubkey,
+        solana_signature::Signature,
+        solana_system_interface::instruction::{self as system_instruction, SystemInstruction},
+        solana_transaction::versioned::VersionedTransaction,
     };
     };
 
 
     fn verify_transaction_view_frame(tx: &VersionedTransaction) {
     fn verify_transaction_view_frame(tx: &VersionedTransaction) {

+ 8 - 8
transaction-view/src/transaction_view.rs

@@ -6,7 +6,9 @@ use {
         transaction_version::TransactionVersion,
         transaction_version::TransactionVersion,
     },
     },
     core::fmt::{Debug, Formatter},
     core::fmt::{Debug, Formatter},
-    solana_sdk::{hash::Hash, pubkey::Pubkey, signature::Signature},
+    solana_hash::Hash,
+    solana_pubkey::Pubkey,
+    solana_signature::Signature,
     solana_svm_transaction::instruction::SVMInstruction,
     solana_svm_transaction::instruction::SVMInstruction,
 };
 };
 
 
@@ -228,13 +230,11 @@ impl<const SANITIZED: bool, D: TransactionData> Debug for TransactionView<SANITI
 mod tests {
 mod tests {
     use {
     use {
         super::*,
         super::*,
-        solana_sdk::{
-            message::{Message, VersionedMessage},
-            pubkey::Pubkey,
-            signature::Signature,
-            system_instruction::{self},
-            transaction::VersionedTransaction,
-        },
+        solana_message::{Message, VersionedMessage},
+        solana_pubkey::Pubkey,
+        solana_signature::Signature,
+        solana_system_interface::instruction as system_instruction,
+        solana_transaction::versioned::VersionedTransaction,
     };
     };
 
 
     fn verify_transaction_view_frame(tx: &VersionedTransaction) {
     fn verify_transaction_view_frame(tx: &VersionedTransaction) {