Browse Source

remove solana-sdk from clap-v3-utils (#3628)

Kevin Heavey 1 year ago
parent
commit
b409104f44

+ 13 - 1
Cargo.lock

@@ -6350,9 +6350,21 @@ dependencies = [
  "chrono",
  "clap 3.2.23",
  "rpassword",
+ "solana-clock",
+ "solana-cluster-type",
+ "solana-commitment-config",
  "solana-derivation-path",
+ "solana-hash",
+ "solana-keypair",
+ "solana-native-token",
+ "solana-presigner",
+ "solana-program",
+ "solana-pubkey",
  "solana-remote-wallet",
- "solana-sdk",
+ "solana-seed-derivable",
+ "solana-seed-phrase",
+ "solana-signature",
+ "solana-signer",
  "solana-zk-token-sdk",
  "tempfile",
  "thiserror 1.0.69",

+ 15 - 2
clap-v3-utils/Cargo.toml

@@ -13,9 +13,21 @@ edition = { workspace = true }
 chrono = { workspace = true, features = ["default"] }
 clap = { version = "3.2.23", features = ["cargo"] }
 rpassword = { workspace = true }
+solana-clock = { workspace = true }
+solana-cluster-type = { workspace = true }
+solana-commitment-config = { workspace = true }
 solana-derivation-path = { workspace = true }
-solana-remote-wallet = { workspace = true }
-solana-sdk = { workspace = true }
+solana-hash = { workspace = true }
+solana-keypair = { workspace = true }
+solana-native-token = { workspace = true }
+solana-presigner = { workspace = true }
+solana-program = { workspace = true }
+solana-pubkey = { workspace = true }
+solana-remote-wallet = { workspace = true, features = ["default"] }
+solana-seed-derivable = { workspace = true }
+solana-seed-phrase = { workspace = true }
+solana-signature = { workspace = true }
+solana-signer = { workspace = true }
 solana-zk-token-sdk = { workspace = true }
 thiserror = { workspace = true }
 tiny-bip39 = { workspace = true }
@@ -24,6 +36,7 @@ url = { workspace = true }
 
 [dev-dependencies]
 assert_matches = { workspace = true }
+solana-pubkey = { workspace = true, features = ["rand"] }
 tempfile = { workspace = true }
 
 [lib]

+ 13 - 12
clap-v3-utils/src/input_parsers/mod.rs

@@ -5,14 +5,13 @@ use {
     },
     chrono::DateTime,
     clap::ArgMatches,
-    solana_sdk::{
-        clock::UnixTimestamp,
-        commitment_config::CommitmentConfig,
-        genesis_config::ClusterType,
-        native_token::sol_to_lamports,
-        pubkey::{Pubkey, MAX_SEED_LEN},
-        signature::{read_keypair_file, Keypair, Signer},
-    },
+    solana_clock::UnixTimestamp,
+    solana_cluster_type::ClusterType,
+    solana_commitment_config::CommitmentConfig,
+    solana_keypair::{read_keypair_file, Keypair},
+    solana_native_token::sol_to_lamports,
+    solana_pubkey::{Pubkey, MAX_SEED_LEN},
+    solana_signer::Signer,
     std::str::FromStr,
 };
 
@@ -347,7 +346,9 @@ mod tests {
     use {
         super::*,
         clap::{Arg, ArgAction, Command},
-        solana_sdk::{commitment_config::CommitmentLevel, hash::Hash, pubkey::Pubkey},
+        solana_commitment_config::{CommitmentConfig, CommitmentLevel},
+        solana_hash::Hash,
+        solana_pubkey::Pubkey,
     };
 
     fn app<'ab>() -> Command<'ab> {
@@ -369,8 +370,8 @@ mod tests {
         assert_eq!(values_of(&matches, "multiple"), Some(vec![50, 39]));
         assert_eq!(values_of::<u64>(&matches, "single"), None);
 
-        let pubkey0 = solana_sdk::pubkey::new_rand();
-        let pubkey1 = solana_sdk::pubkey::new_rand();
+        let pubkey0 = solana_pubkey::new_rand();
+        let pubkey1 = solana_pubkey::new_rand();
         let matches = app().get_matches_from(vec![
             "test",
             "--multiple",
@@ -390,7 +391,7 @@ mod tests {
         assert_eq!(value_of(&matches, "single"), Some(50));
         assert_eq!(value_of::<u64>(&matches, "multiple"), None);
 
-        let pubkey = solana_sdk::pubkey::new_rand();
+        let pubkey = solana_pubkey::new_rand();
         let matches = app().get_matches_from(vec!["test", "--single", &pubkey.to_string()]);
         assert_eq!(value_of(&matches, "single"), Some(pubkey));
     }

+ 7 - 7
clap-v3-utils/src/input_parsers/signer.rs

@@ -6,14 +6,14 @@ use {
     },
     clap::{builder::ValueParser, ArgMatches},
     solana_derivation_path::{DerivationPath, DerivationPathError},
+    solana_keypair::{read_keypair_file, Keypair},
+    solana_pubkey::Pubkey,
     solana_remote_wallet::{
         locator::{Locator as RemoteWalletLocator, LocatorError as RemoteWalletLocatorError},
         remote_wallet::RemoteWalletManager,
     },
-    solana_sdk::{
-        pubkey::Pubkey,
-        signature::{read_keypair_file, Keypair, Signature, Signer},
-    },
+    solana_signature::Signature,
+    solana_signer::Signer,
     std::{error, rc::Rc, str::FromStr},
     thiserror::Error,
 };
@@ -534,8 +534,8 @@ mod tests {
         crate::input_parsers::{keypair_of, pubkey_of, pubkeys_of},
         assert_matches::assert_matches,
         clap::{Arg, ArgAction, Command},
+        solana_keypair::write_keypair_file,
         solana_remote_wallet::locator::Manufacturer,
-        solana_sdk::signature::write_keypair_file,
         std::fs,
         tempfile::NamedTempFile,
     };
@@ -739,8 +739,8 @@ mod tests {
 
     #[test]
     fn test_pubkeys_sigs_of() {
-        let key1 = solana_sdk::pubkey::new_rand();
-        let key2 = solana_sdk::pubkey::new_rand();
+        let key1 = solana_pubkey::new_rand();
+        let key2 = solana_pubkey::new_rand();
         let sig1 = Keypair::new().sign_message(&[0u8]);
         let sig2 = Keypair::new().sign_message(&[1u8]);
         let signer1 = format!("{key1}={sig1}");

+ 5 - 6
clap-v3-utils/src/input_validators.rs

@@ -4,12 +4,11 @@ use {
         keypair::ASK_KEYWORD,
     },
     chrono::DateTime,
-    solana_sdk::{
-        clock::{Epoch, Slot},
-        hash::Hash,
-        pubkey::{Pubkey, MAX_SEED_LEN},
-        signature::{read_keypair_file, Signature},
-    },
+    solana_clock::{Epoch, Slot},
+    solana_hash::Hash,
+    solana_keypair::read_keypair_file,
+    solana_pubkey::{Pubkey, MAX_SEED_LEN},
+    solana_signature::Signature,
     std::{fmt::Display, ops::RangeBounds, str::FromStr},
 };
 

+ 12 - 12
clap-v3-utils/src/keypair.rs

@@ -19,20 +19,19 @@ use {
     clap::ArgMatches,
     rpassword::prompt_password,
     solana_derivation_path::DerivationPath,
+    solana_hash::Hash,
+    solana_keypair::{read_keypair, read_keypair_file, Keypair},
+    solana_presigner::Presigner,
+    solana_program::message::Message,
+    solana_pubkey::Pubkey,
     solana_remote_wallet::{
         remote_keypair::generate_remote_keypair,
         remote_wallet::{maybe_wallet_manager, RemoteWalletError, RemoteWalletManager},
     },
-    solana_sdk::{
-        hash::Hash,
-        message::Message,
-        pubkey::Pubkey,
-        signature::{
-            generate_seed_from_seed_phrase_and_passphrase, read_keypair, read_keypair_file,
-            EncodableKey, EncodableKeypair, Keypair, NullSigner, Presigner, SeedDerivable,
-            Signature, Signer,
-        },
-    },
+    solana_seed_derivable::SeedDerivable,
+    solana_seed_phrase::generate_seed_from_seed_phrase_and_passphrase,
+    solana_signature::Signature,
+    solana_signer::{null_signer::NullSigner, EncodableKey, EncodableKeypair, Signer},
     solana_zk_token_sdk::encryption::{auth_encryption::AeKey, elgamal::ElGamalKeypair},
     std::{
         cell::RefCell,
@@ -204,7 +203,7 @@ impl DefaultSigner {
     /// use clap::{Arg, Command};
     /// use solana_clap_v3_utils::keypair::{DefaultSigner, signer_from_path};
     /// use solana_clap_v3_utils::offline::OfflineArgs;
-    /// use solana_sdk::signer::Signer;
+    /// use solana_signer::Signer;
     ///
     /// let clap_app = Command::new("my-program")
     ///     // The argument we'll parse as a signer "path"
@@ -1211,8 +1210,9 @@ mod tests {
         super::*,
         crate::offline::OfflineArgs,
         clap::{Arg, Command},
+        solana_keypair::write_keypair_file,
+        solana_program::system_instruction,
         solana_remote_wallet::remote_wallet::initialize_wallet_manager,
-        solana_sdk::{signer::keypair::write_keypair_file, system_instruction},
         tempfile::TempDir,
     };
 

+ 1 - 1
clap-v3-utils/src/offline.rs

@@ -1,7 +1,7 @@
 use {
     crate::{input_parsers::signer::PubkeySignature, ArgConstant},
     clap::{value_parser, Arg, ArgAction, Command},
-    solana_sdk::hash::Hash,
+    solana_hash::Hash,
 };
 
 pub const BLOCKHASH_ARG: ArgConstant<'static> = ArgConstant {