diff --git a/Cargo.lock b/Cargo.lock index c76f2cd236..1e6eea8bf7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3216,16 +3216,16 @@ dependencies = [ "solana-budget-program 0.21.0", "solana-clap-utils 0.21.0", "solana-client 0.21.0", - "solana-config-api 0.21.0", + "solana-config-program 0.21.0", "solana-core 0.21.0", "solana-drone 0.21.0", "solana-logger 0.21.0", "solana-net-utils 0.21.0", "solana-runtime 0.21.0", "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", + "solana-stake-program 0.21.0", "solana-storage-api 0.21.0", - "solana-vote-api 0.21.0", + "solana-vote-program 0.21.0", "solana-vote-signer 0.21.0", "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3252,22 +3252,13 @@ dependencies = [ ] [[package]] -name = "solana-config-api" +name = "solana-config-program" version = "0.21.0" dependencies = [ "bincode 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-sdk 0.21.0", -] - -[[package]] -name = "solana-config-program" -version = "0.21.0" -dependencies = [ - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-config-api 0.21.0", "solana-logger 0.21.0", "solana-sdk 0.21.0", ] @@ -3281,7 +3272,6 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-config-api 0.21.0", "solana-config-program 0.21.0", "solana-logger 0.21.0", "solana-runtime 0.21.0", @@ -3342,10 +3332,10 @@ dependencies = [ "solana-reed-solomon-erasure 4.0.1-3 (registry+https://github.com/rust-lang/crates.io-index)", "solana-runtime 0.21.0", "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", + "solana-stake-program 0.21.0", "solana-storage-api 0.21.0", "solana-storage-program 0.21.0", - "solana-vote-api 0.21.0", + "solana-vote-program 0.21.0", "solana-vote-signer 0.21.0", "symlink 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sys-info 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3455,9 +3445,9 @@ dependencies = [ "solana-genesis-programs 0.21.0", "solana-ledger 0.21.0", "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", + "solana-stake-program 0.21.0", "solana-storage-api 0.21.0", - "solana-vote-api 0.21.0", + "solana-vote-program 0.21.0", "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3470,19 +3460,15 @@ dependencies = [ "solana-bpf-loader-program 0.21.0", "solana-budget-api 0.21.0", "solana-budget-program 0.21.0", - "solana-config-api 0.21.0", "solana-config-program 0.21.0", "solana-exchange-api 0.21.0", "solana-exchange-program 0.21.0", "solana-runtime 0.21.0", "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", "solana-stake-program 0.21.0", "solana-storage-api 0.21.0", "solana-storage-program 0.21.0", - "solana-vest-api 0.21.0", "solana-vest-program 0.21.0", - "solana-vote-api 0.21.0", "solana-vote-program 0.21.0", ] @@ -3523,7 +3509,7 @@ dependencies = [ "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "solana-clap-utils 0.21.0", "solana-client 0.21.0", - "solana-config-api 0.21.0", + "solana-config-program 0.21.0", "solana-logger 0.21.0", "solana-sdk 0.21.0", "tar 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3584,8 +3570,8 @@ dependencies = [ "solana-reed-solomon-erasure 4.0.1-3 (registry+https://github.com/rust-lang/crates.io-index)", "solana-runtime 0.21.0", "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", - "solana-vote-api 0.21.0", + "solana-stake-program 0.21.0", + "solana-vote-program 0.21.0", "sys-info 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", "tar 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3607,7 +3593,7 @@ dependencies = [ "solana-logger 0.21.0", "solana-runtime 0.21.0", "solana-sdk 0.21.0", - "solana-vote-api 0.21.0", + "solana-vote-program 0.21.0", ] [[package]] @@ -3633,7 +3619,7 @@ dependencies = [ "serial_test 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "serial_test_derive 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "solana-client 0.21.0", - "solana-config-api 0.21.0", + "solana-config-program 0.21.0", "solana-core 0.21.0", "solana-drone 0.21.0", "solana-exchange-api 0.21.0", @@ -3644,11 +3630,11 @@ dependencies = [ "solana-rayon-threadlimit 0.21.0", "solana-runtime 0.21.0", "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", + "solana-stake-program 0.21.0", "solana-storage-api 0.21.0", "solana-storage-program 0.21.0", - "solana-vest-api 0.21.0", - "solana-vote-api 0.21.0", + "solana-vest-program 0.21.0", + "solana-vote-program 0.21.0", "symlink 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3869,10 +3855,8 @@ dependencies = [ "solana-noop-program 0.21.0", "solana-rayon-threadlimit 0.21.0", "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", "solana-stake-program 0.21.0", "solana-storage-api 0.21.0", - "solana-vote-api 0.21.0", "solana-vote-program 0.21.0", "sys-info 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3921,7 +3905,7 @@ dependencies = [ ] [[package]] -name = "solana-stake-api" +name = "solana-stake-program" version = "0.21.0" dependencies = [ "bincode 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3931,21 +3915,11 @@ dependencies = [ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-config-api 0.21.0", + "solana-config-program 0.21.0", "solana-logger 0.21.0", "solana-metrics 0.21.0", "solana-sdk 0.21.0", - "solana-vote-api 0.21.0", -] - -[[package]] -name = "solana-stake-program" -version = "0.21.0" -dependencies = [ - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-logger 0.21.0", - "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", + "solana-vote-program 0.21.0", ] [[package]] @@ -3957,9 +3931,8 @@ dependencies = [ "solana-logger 0.21.0", "solana-runtime 0.21.0", "solana-sdk 0.21.0", - "solana-stake-api 0.21.0", "solana-stake-program 0.21.0", - "solana-vote-api 0.21.0", + "solana-vote-program 0.21.0", ] [[package]] @@ -4023,14 +3996,14 @@ dependencies = [ "solana-perf 0.21.0", "solana-runtime 0.21.0", "solana-sdk 0.21.0", - "solana-vote-api 0.21.0", + "solana-vote-program 0.21.0", "solana-vote-signer 0.21.0", "tar 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] -name = "solana-vest-api" +name = "solana-vest-program" version = "0.21.0" dependencies = [ "bincode 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4040,23 +4013,13 @@ dependencies = [ "num-traits 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-config-api 0.21.0", + "solana-config-program 0.21.0", "solana-runtime 0.21.0", "solana-sdk 0.21.0", ] [[package]] -name = "solana-vest-program" -version = "0.21.0" -dependencies = [ - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-logger 0.21.0", - "solana-sdk 0.21.0", - "solana-vest-api 0.21.0", -] - -[[package]] -name = "solana-vote-api" +name = "solana-vote-program" version = "0.21.0" dependencies = [ "bincode 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4070,16 +4033,6 @@ dependencies = [ "solana-sdk 0.21.0", ] -[[package]] -name = "solana-vote-program" -version = "0.21.0" -dependencies = [ - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-logger 0.21.0", - "solana-sdk 0.21.0", - "solana-vote-api 0.21.0", -] - [[package]] name = "solana-vote-signer" version = "0.21.0" diff --git a/Cargo.toml b/Cargo.toml index 320b89d959..6d0ae47e64 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -31,23 +31,19 @@ members = [ "programs/btc_spv_program", "programs/btc_spv_api", "programs/btc_spv_bin", - "programs/config_api", - "programs/config_program", + "programs/config", "programs/config_tests", "programs/exchange_api", "programs/exchange_program", "programs/failure_program", "programs/noop_program", "programs/ownable_api", - "programs/stake_api", - "programs/stake_program", + "programs/stake", "programs/stake_tests", "programs/storage_api", "programs/storage_program", - "programs/vest_api", - "programs/vest_program", - "programs/vote_api", - "programs/vote_program", + "programs/vest", + "programs/vote", "archiver", "runtime", "sdk", diff --git a/ci/nits.sh b/ci/nits.sh index 7eec11b2d1..a8f24b93ad 100755 --- a/ci/nits.sh +++ b/ci/nits.sh @@ -26,10 +26,8 @@ declare print_free_tree=( 'sdk/bpf/rust/rust-utils' 'sdk/src' 'programs/bpf/rust' - 'programs/stake_api/src' - 'programs/stake_program/src' - 'programs/vote_api/src' - 'programs/vote_program/src' + 'programs/stake/src' + 'programs/vote/src' ) if _ git --no-pager grep -n --max-depth=0 "${prints[@]/#/-e }" -- "${print_free_tree[@]}"; then diff --git a/cli/Cargo.toml b/cli/Cargo.toml index bdc4a9dcb1..37c27b9ae1 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -30,15 +30,15 @@ serde_yaml = "0.8.11" solana-budget-api = { path = "../programs/budget_api", version = "0.21.0" } solana-clap-utils = { path = "../clap-utils", version = "0.21.0" } solana-client = { path = "../client", version = "0.21.0" } -solana-config-api = { path = "../programs/config_api", version = "0.21.0" } +solana-config-program = { path = "../programs/config", version = "0.21.0" } solana-drone = { path = "../drone", version = "0.21.0" } solana-logger = { path = "../logger", version = "0.21.0" } solana-net-utils = { path = "../net-utils", version = "0.21.0" } solana-runtime = { path = "../runtime", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-stake-api = { path = "../programs/stake_api", version = "0.21.0" } +solana-stake-program = { path = "../programs/stake", version = "0.21.0" } solana-storage-api = { path = "../programs/storage_api", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } solana-vote-signer = { path = "../vote-signer", version = "0.21.0" } url = "2.1.0" diff --git a/cli/src/cli.rs b/cli/src/cli.rs index 38b4ba8575..e8358eb8ec 100644 --- a/cli/src/cli.rs +++ b/cli/src/cli.rs @@ -29,9 +29,9 @@ use solana_sdk::{ system_transaction, transaction::{Transaction, TransactionError}, }; -use solana_stake_api::stake_state::{Lockup, StakeAuthorize}; +use solana_stake_program::stake_state::{Lockup, StakeAuthorize}; use solana_storage_api::storage_instruction::StorageAccountType; -use solana_vote_api::vote_state::VoteAuthorize; +use solana_vote_program::vote_state::VoteAuthorize; use std::{ fs::File, io::{Read, Write}, diff --git a/cli/src/stake.rs b/cli/src/stake.rs index 50d9a36c02..008889ba60 100644 --- a/cli/src/stake.rs +++ b/cli/src/stake.rs @@ -18,12 +18,12 @@ use solana_sdk::{ }, transaction::Transaction, }; -use solana_stake_api::stake_state::Meta; -use solana_stake_api::{ +use solana_stake_program::stake_state::Meta; +use solana_stake_program::{ stake_instruction::{self, StakeError}, stake_state::{Authorized, Lockup, StakeAuthorize, StakeState}, }; -use solana_vote_api::vote_state::VoteState; +use solana_vote_program::vote_state::VoteState; use std::ops::Deref; pub trait StakeSubCommands { @@ -536,7 +536,7 @@ pub fn process_show_stake_account( use_lamports_unit: bool, ) -> ProcessResult { let stake_account = rpc_client.get_account(stake_account_pubkey)?; - if stake_account.owner != solana_stake_api::id() { + if stake_account.owner != solana_stake_program::id() { return Err(CliError::RpcRequestError( format!("{:?} is not a stake account", stake_account_pubkey).to_string(), ) diff --git a/cli/src/validator_info.rs b/cli/src/validator_info.rs index fe31b40dcb..1b2f451d61 100644 --- a/cli/src/validator_info.rs +++ b/cli/src/validator_info.rs @@ -13,7 +13,7 @@ use solana_clap_utils::{ input_validators::{is_pubkey, is_url}, }; use solana_client::rpc_client::RpcClient; -use solana_config_api::{config_instruction, get_config_data, ConfigKeys, ConfigState}; +use solana_config_program::{config_instruction, get_config_data, ConfigKeys, ConfigState}; use solana_sdk::{ account::Account, commitment_config::CommitmentConfig, @@ -137,7 +137,7 @@ fn parse_validator_info( pubkey: &Pubkey, account: &Account, ) -> Result<(Pubkey, Map), Box> { - if account.owner != solana_config_api::id() { + if account.owner != solana_config_program::id() { return Err(format!("{} is not a validator info account", pubkey).into()); } let key_list: ConfigKeys = deserialize(&account.data)?; @@ -281,7 +281,7 @@ pub fn process_set_validator_info( info: validator_string, }; // Check for existing validator-info account - let all_config = rpc_client.get_program_accounts(&solana_config_api::id())?; + let all_config = rpc_client.get_program_accounts(&solana_config_program::id())?; let existing_account = all_config .iter() .filter(|(_, account)| { @@ -371,7 +371,7 @@ pub fn process_get_validator_info(rpc_client: &RpcClient, pubkey: Option rpc_client.get_account(&validator_info_pubkey)?, )] } else { - let all_config = rpc_client.get_program_accounts(&solana_config_api::id())?; + let all_config = rpc_client.get_program_accounts(&solana_config_program::id())?; all_config .into_iter() .filter(|(_, validator_info_account)| { @@ -494,7 +494,7 @@ mod tests { parse_validator_info( &Pubkey::default(), &Account { - owner: solana_config_api::id(), + owner: solana_config_program::id(), data, ..Account::default() } diff --git a/cli/src/vote.rs b/cli/src/vote.rs index fe8e94584b..7dd0c9749e 100644 --- a/cli/src/vote.rs +++ b/cli/src/vote.rs @@ -10,7 +10,7 @@ use solana_sdk::{ account::Account, pubkey::Pubkey, signature::KeypairUtil, system_instruction::SystemError, transaction::Transaction, }; -use solana_vote_api::{ +use solana_vote_program::{ vote_instruction::{self, VoteError}, vote_state::{VoteAuthorize, VoteInit, VoteState}, }; @@ -309,7 +309,7 @@ fn get_vote_account( ) -> Result<(Account, VoteState), Box> { let vote_account = rpc_client.get_account(vote_account_pubkey)?; - if vote_account.owner != solana_vote_api::id() { + if vote_account.owner != solana_vote_program::id() { return Err(CliError::RpcRequestError( format!("{:?} is not a vote account", vote_account_pubkey).to_string(), ) diff --git a/core/Cargo.toml b/core/Cargo.toml index 3eb8e4a5e5..27d1f501d4 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -57,10 +57,10 @@ solana-net-utils = { path = "../net-utils", version = "0.21.0" } solana-perf = { path = "../perf", version = "0.21.0" } solana-runtime = { path = "../runtime", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-stake-api = { path = "../programs/stake_api", version = "0.21.0" } +solana-stake-program = { path = "../programs/stake", version = "0.21.0" } solana-storage-api = { path = "../programs/storage_api", version = "0.21.0" } solana-storage-program = { path = "../programs/storage_program", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } solana-vote-signer = { path = "../vote-signer", version = "0.21.0" } symlink = "0.1.0" sys-info = "0.5.8" diff --git a/core/src/cluster_info_vote_listener.rs b/core/src/cluster_info_vote_listener.rs index 1e313a4ddc..5b93c40cc5 100644 --- a/core/src/cluster_info_vote_listener.rs +++ b/core/src/cluster_info_vote_listener.rs @@ -86,8 +86,8 @@ mod tests { use solana_sdk::hash::Hash; use solana_sdk::signature::{Keypair, KeypairUtil}; use solana_sdk::transaction::Transaction; - use solana_vote_api::vote_instruction; - use solana_vote_api::vote_state::Vote; + use solana_vote_program::vote_instruction; + use solana_vote_program::vote_state::Vote; #[test] fn test_max_vote_tx_fits() { diff --git a/core/src/commitment.rs b/core/src/commitment.rs index e3e0b4568b..9903fd57ac 100644 --- a/core/src/commitment.rs +++ b/core/src/commitment.rs @@ -1,7 +1,7 @@ use crate::result::{Error, Result}; use solana_runtime::bank::Bank; use solana_sdk::clock::Slot; -use solana_vote_api::{vote_state::VoteState, vote_state::MAX_LOCKOUT_HISTORY}; +use solana_vote_program::{vote_state::VoteState, vote_state::MAX_LOCKOUT_HISTORY}; use std::{ collections::HashMap, sync::atomic::{AtomicBool, Ordering}, @@ -238,8 +238,8 @@ mod tests { use super::*; use crate::genesis_utils::{create_genesis_config, GenesisConfigInfo}; use solana_sdk::pubkey::Pubkey; - use solana_stake_api::stake_state; - use solana_vote_api::vote_state; + use solana_stake_program::stake_state; + use solana_vote_program::vote_state; #[test] fn test_block_commitment() { diff --git a/core/src/consensus.rs b/core/src/consensus.rs index 2815cd722e..a9f708de43 100644 --- a/core/src/consensus.rs +++ b/core/src/consensus.rs @@ -2,7 +2,7 @@ use solana_ledger::bank_forks::BankForks; use solana_metrics::datapoint_debug; use solana_runtime::bank::Bank; use solana_sdk::{account::Account, clock::Slot, hash::Hash, pubkey::Pubkey}; -use solana_vote_api::vote_state::{Lockout, Vote, VoteState, MAX_LOCKOUT_HISTORY}; +use solana_vote_program::vote_state::{Lockout, Vote, VoteState, MAX_LOCKOUT_HISTORY}; use std::{ collections::{HashMap, HashSet}, sync::Arc, diff --git a/core/src/replay_stage.rs b/core/src/replay_stage.rs index 40a4fdc18e..51b83e3c37 100644 --- a/core/src/replay_stage.rs +++ b/core/src/replay_stage.rs @@ -28,7 +28,7 @@ use solana_sdk::{ timing::{self, duration_as_ms}, transaction::Transaction, }; -use solana_vote_api::vote_instruction; +use solana_vote_program::vote_instruction; use std::{ collections::HashMap, collections::HashSet, @@ -1081,7 +1081,7 @@ mod test { use solana_sdk::signature::{Keypair, KeypairUtil}; use solana_sdk::system_transaction; use solana_sdk::transaction::TransactionError; - use solana_vote_api::vote_state::VoteState; + use solana_vote_program::vote_state::VoteState; use std::fs::remove_dir_all; use std::iter::FromIterator; use std::sync::{Arc, RwLock}; diff --git a/core/src/rpc.rs b/core/src/rpc.rs index fae2515da1..881005dc00 100644 --- a/core/src/rpc.rs +++ b/core/src/rpc.rs @@ -30,7 +30,7 @@ use solana_sdk::{ signature::Signature, transaction::{self, Transaction}, }; -use solana_vote_api::vote_state::{VoteState, MAX_LOCKOUT_HISTORY}; +use solana_vote_program::vote_state::{VoteState, MAX_LOCKOUT_HISTORY}; use std::{ net::{SocketAddr, UdpSocket}, sync::{Arc, RwLock}, diff --git a/core/src/rpc_subscriptions.rs b/core/src/rpc_subscriptions.rs index 1fc2201126..13a3ad4676 100644 --- a/core/src/rpc_subscriptions.rs +++ b/core/src/rpc_subscriptions.rs @@ -9,7 +9,7 @@ use solana_runtime::bank::Bank; use solana_sdk::{ account::Account, clock::Slot, pubkey::Pubkey, signature::Signature, transaction, }; -use solana_vote_api::vote_state::MAX_LOCKOUT_HISTORY; +use solana_vote_program::vote_state::MAX_LOCKOUT_HISTORY; use std::collections::HashMap; use std::sync::{Arc, RwLock}; diff --git a/genesis-programs/Cargo.toml b/genesis-programs/Cargo.toml index 217e2d4296..b8e3654a24 100644 --- a/genesis-programs/Cargo.toml +++ b/genesis-programs/Cargo.toml @@ -14,20 +14,16 @@ solana-bpf-loader-api = { path = "../programs/bpf_loader_api", version = "0.21.0 solana-bpf-loader-program = { path = "../programs/bpf_loader_program", version = "0.21.0" } solana-budget-api = { path = "../programs/budget_api", version = "0.21.0" } solana-budget-program = { path = "../programs/budget_program", version = "0.21.0" } -solana-config-api = { path = "../programs/config_api", version = "0.21.0" } -solana-config-program = { path = "../programs/config_program", version = "0.21.0" } +solana-config-program = { path = "../programs/config", version = "0.21.0" } solana-exchange-api = { path = "../programs/exchange_api", version = "0.21.0" } solana-exchange-program = { path = "../programs/exchange_program", version = "0.21.0" } solana-runtime = { path = "../runtime", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-stake-api = { path = "../programs/stake_api", version = "0.21.0" } -solana-stake-program = { path = "../programs/stake_program", version = "0.21.0" } +solana-stake-program = { path = "../programs/stake", version = "0.21.0" } solana-storage-api = { path = "../programs/storage_api", version = "0.21.0" } solana-storage-program = { path = "../programs/storage_program", version = "0.21.0" } -solana-vest-api = { path = "../programs/vest_api", version = "0.21.0" } -solana-vest-program = { path = "../programs/vest_program", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } -solana-vote-program = { path = "../programs/vote_program", version = "0.21.0" } +solana-vest-program = { path = "../programs/vest", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } [lib] crate-type = ["lib"] diff --git a/genesis/Cargo.toml b/genesis/Cargo.toml index 3ce1f503fa..97a36b6c53 100644 --- a/genesis/Cargo.toml +++ b/genesis/Cargo.toml @@ -19,7 +19,7 @@ solana-clap-utils = { path = "../clap-utils", version = "0.21.0" } solana-genesis-programs = { path = "../genesis-programs", version = "0.21.0" } solana-ledger = { path = "../ledger", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-stake-api = { path = "../programs/stake_api", version = "0.21.0" } +solana-stake-program = { path = "../programs/stake", version = "0.21.0" } solana-storage-api = { path = "../programs/storage_api", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } tempfile = "3.1.0" diff --git a/genesis/src/main.rs b/genesis/src/main.rs index 8a2d6981dc..63c82867a2 100644 --- a/genesis/src/main.rs +++ b/genesis/src/main.rs @@ -20,9 +20,9 @@ use solana_sdk::{ signature::{read_keypair_file, Keypair, KeypairUtil}, system_program, timing, }; -use solana_stake_api::stake_state; +use solana_stake_program::stake_state; use solana_storage_api::storage_contract; -use solana_vote_api::vote_state; +use solana_vote_program::vote_state; use std::{collections::HashMap, error, fs::File, io, path::PathBuf, str::FromStr, time::Duration}; pub enum AccountFileFormat { @@ -446,7 +446,7 @@ fn main() -> Result<(), Box> { // add genesis stuff from storage and stake solana_storage_api::rewards_pools::add_genesis_accounts(&mut genesis_config); - solana_stake_api::add_genesis_accounts(&mut genesis_config); + solana_stake_program::add_genesis_accounts(&mut genesis_config); create_new_ledger(&ledger_path, &genesis_config)?; Ok(()) diff --git a/install/Cargo.toml b/install/Cargo.toml index 343cc66ac9..19b1359183 100644 --- a/install/Cargo.toml +++ b/install/Cargo.toml @@ -29,7 +29,7 @@ serde_yaml = "0.8.11" sha2 = "0.8.0" solana-clap-utils = { path = "../clap-utils", version = "0.21.0" } solana-client = { path = "../client", version = "0.21.0" } -solana-config-api = { path = "../programs/config_api", version = "0.21.0" } +solana-config-program = { path = "../programs/config", version = "0.21.0" } solana-logger = { path = "../logger", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } tar = "0.4.26" diff --git a/install/src/command.rs b/install/src/command.rs index fdfec06242..255e6b5038 100644 --- a/install/src/command.rs +++ b/install/src/command.rs @@ -6,7 +6,7 @@ use console::{style, Emoji}; use indicatif::{ProgressBar, ProgressStyle}; use sha2::{Digest, Sha256}; use solana_client::rpc_client::RpcClient; -use solana_config_api::{config_instruction, get_config_data}; +use solana_config_program::{config_instruction, get_config_data}; use solana_sdk::message::Message; use solana_sdk::pubkey::Pubkey; use solana_sdk::signature::{read_keypair_file, Keypair, KeypairUtil, Signable}; diff --git a/install/src/update_manifest.rs b/install/src/update_manifest.rs index f634b0383e..ec834e16f0 100644 --- a/install/src/update_manifest.rs +++ b/install/src/update_manifest.rs @@ -1,5 +1,5 @@ use serde_derive::{Deserialize, Serialize}; -use solana_config_api::ConfigState; +use solana_config_program::ConfigState; use solana_sdk::pubkey::Pubkey; use solana_sdk::signature::{Signable, Signature}; use std::borrow::Cow; diff --git a/ledger-tool/Cargo.toml b/ledger-tool/Cargo.toml index a0aa18e685..40dd75aaee 100644 --- a/ledger-tool/Cargo.toml +++ b/ledger-tool/Cargo.toml @@ -20,7 +20,7 @@ solana-ledger = { path = "../ledger", version = "0.21.0" } solana-logger = { path = "../logger", version = "0.21.0" } solana-runtime = { path = "../runtime", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } [dev-dependencies] assert_cmd = "0.11" diff --git a/ledger-tool/src/main.rs b/ledger-tool/src/main.rs index 780eb5dd98..7be7001c98 100644 --- a/ledger-tool/src/main.rs +++ b/ledger-tool/src/main.rs @@ -12,7 +12,7 @@ use solana_sdk::{ clock::Slot, genesis_config::GenesisConfig, instruction_processor_utils::limited_deserialize, native_token::lamports_to_sol, pubkey::Pubkey, }; -use solana_vote_api::vote_state::VoteState; +use solana_vote_program::vote_state::VoteState; use std::{ collections::{BTreeMap, HashMap, HashSet}, ffi::OsStr, @@ -76,10 +76,10 @@ fn output_slot(blocktree: &Blocktree, slot: Slot, method: &LedgerOutputMethod) { } let mut raw = true; - if program_pubkey == solana_vote_api::id() { + if program_pubkey == solana_vote_program::id() { if let Ok(vote_instruction) = limited_deserialize::< - solana_vote_api::vote_instruction::VoteInstruction, + solana_vote_program::vote_instruction::VoteInstruction, >(&instruction.data) { println!(" {:?}", vote_instruction); diff --git a/ledger/Cargo.toml b/ledger/Cargo.toml index 2a381e7939..411a9ea190 100644 --- a/ledger/Cargo.toml +++ b/ledger/Cargo.toml @@ -39,8 +39,8 @@ ed25519-dalek = "1.0.0-pre.1" solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "0.21.0" } solana-runtime = { path = "../runtime", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-stake-api = { path = "../programs/stake_api", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } +solana-stake-program = { path = "../programs/stake", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } sys-info = "0.5.8" tar = "0.4.26" tempfile = "3.1.0" diff --git a/ledger/src/staking_utils.rs b/ledger/src/staking_utils.rs index 83d9efbf47..fc8a686344 100644 --- a/ledger/src/staking_utils.rs +++ b/ledger/src/staking_utils.rs @@ -4,7 +4,7 @@ use solana_sdk::{ clock::{Epoch, Slot}, pubkey::Pubkey, }; -use solana_vote_api::vote_state::VoteState; +use solana_vote_program::vote_state::VoteState; use std::{borrow::Borrow, collections::HashMap}; /// Looks through vote accounts, and finds the latest slot that has achieved @@ -113,11 +113,11 @@ pub(crate) mod tests { }, transaction::Transaction, }; - use solana_stake_api::{ + use solana_stake_program::{ stake_instruction, stake_state::{Authorized, Stake}, }; - use solana_vote_api::{vote_instruction, vote_state::VoteInit}; + use solana_vote_program::{vote_instruction, vote_state::VoteInit}; use std::sync::Arc; fn new_from_parent(parent: &Arc, slot: Slot) -> Bank { @@ -180,6 +180,7 @@ pub(crate) mod tests { #[test] fn test_epoch_stakes_and_lockouts() { + solana_logger::setup(); let stake = BOOTSTRAP_LEADER_LAMPORTS * 100; let leader_stake = Stake { stake: BOOTSTRAP_LEADER_LAMPORTS, diff --git a/local-cluster/Cargo.toml b/local-cluster/Cargo.toml index 26c5f30299..e6f9e7c540 100644 --- a/local-cluster/Cargo.toml +++ b/local-cluster/Cargo.toml @@ -11,7 +11,7 @@ homepage = "https://solana.com/" [dependencies] log = "0.4.8" rand = "0.6.5" -solana-config-api = { path = "../programs/config_api", version = "0.21.0" } +solana-config-program = { path = "../programs/config", version = "0.21.0" } solana-core = { path = "../core", version = "0.21.0" } solana-client = { path = "../client", version = "0.21.0" } solana-drone = { path = "../drone", version = "0.21.0" } @@ -22,11 +22,11 @@ solana-ledger = { path = "../ledger", version = "0.21.0" } solana-logger = { path = "../logger", version = "0.21.0" } solana-runtime = { path = "../runtime", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-stake-api = { path = "../programs/stake_api", version = "0.21.0" } +solana-stake-program = { path = "../programs/stake", version = "0.21.0" } solana-storage-api = { path = "../programs/storage_api", version = "0.21.0" } solana-storage-program = { path = "../programs/storage_program", version = "0.21.0" } -solana-vest-api = { path = "../programs/vest_api", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } +solana-vest-program = { path = "../programs/vest", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } symlink = "0.1.0" tempfile = "3.1.0" solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "0.21.0" } diff --git a/local-cluster/src/local_cluster.rs b/local-cluster/src/local_cluster.rs index ecf9dfa83c..058e398714 100644 --- a/local-cluster/src/local_cluster.rs +++ b/local-cluster/src/local_cluster.rs @@ -23,7 +23,7 @@ use solana_sdk::{ system_transaction, transaction::Transaction, }; -use solana_stake_api::{ +use solana_stake_program::{ config as stake_config, stake_instruction, stake_state::{Authorized as StakeAuthorized, StakeState}, }; @@ -31,7 +31,7 @@ use solana_storage_api::{ storage_contract, storage_instruction::{self, StorageAccountType}, }; -use solana_vote_api::{ +use solana_vote_program::{ vote_instruction, vote_state::{VoteInit, VoteState}, }; diff --git a/local-cluster/tests/local_cluster.rs b/local-cluster/tests/local_cluster.rs index d5fe6a5b66..a0c592c3ea 100644 --- a/local-cluster/tests/local_cluster.rs +++ b/local-cluster/tests/local_cluster.rs @@ -416,10 +416,10 @@ fn test_softlaunch_operating_mode() { // Programs that are not available at soft launch for program_id in [ - &solana_config_api::id(), + &solana_config_program::id(), &solana_sdk::bpf_loader::id(), &solana_sdk::system_program::id(), - &solana_vest_api::id(), + &solana_vest_program::id(), ] .iter() { diff --git a/programs/config_program/Cargo.toml b/programs/config/Cargo.toml similarity index 88% rename from programs/config_program/Cargo.toml rename to programs/config/Cargo.toml index 967edf3c79..ea05511292 100644 --- a/programs/config_program/Cargo.toml +++ b/programs/config/Cargo.toml @@ -9,8 +9,10 @@ homepage = "https://solana.com/" edition = "2018" [dependencies] +bincode = "1.2.0" log = "0.4.8" -solana-config-api = { path = "../config_api", version = "0.21.0" } +serde = "1.0.102" +serde_derive = "1.0.102" solana-logger = { path = "../../logger", version = "0.21.0" } solana-sdk = { path = "../../sdk", version = "0.21.0" } diff --git a/programs/config_api/src/config_instruction.rs b/programs/config/src/config_instruction.rs similarity index 100% rename from programs/config_api/src/config_instruction.rs rename to programs/config/src/config_instruction.rs diff --git a/programs/config_api/src/config_processor.rs b/programs/config/src/config_processor.rs similarity index 99% rename from programs/config_api/src/config_processor.rs rename to programs/config/src/config_processor.rs index a2d421e247..2f4739318d 100644 --- a/programs/config_api/src/config_processor.rs +++ b/programs/config/src/config_processor.rs @@ -29,7 +29,7 @@ pub fn process_instruction( .collect(); if current_signer_keys.is_empty() { - // Config account keypair must be a signer on account initilization, + // Config account keypair must be a signer on account initialization, // or when no signers specified in Config data if config_keyed_account.signer_key().is_none() { error!("account[0].signer_key().is_none()"); diff --git a/programs/config_api/src/lib.rs b/programs/config/src/lib.rs similarity index 90% rename from programs/config_api/src/lib.rs rename to programs/config/src/lib.rs index d0e6075b70..311ffae5cf 100644 --- a/programs/config_api/src/lib.rs +++ b/programs/config/src/lib.rs @@ -1,18 +1,21 @@ +pub mod config_instruction; +pub mod config_processor; + +use crate::config_processor::process_instruction; use bincode::{deserialize, serialize, serialized_size}; use serde_derive::{Deserialize, Serialize}; use solana_sdk::{account::Account, pubkey::Pubkey, short_vec}; -pub mod config_instruction; -pub mod config_processor; - const CONFIG_PROGRAM_ID: [u8; 32] = [ 3, 6, 74, 163, 0, 47, 116, 220, 200, 110, 67, 49, 15, 12, 5, 42, 248, 197, 218, 39, 246, 16, 64, 25, 163, 35, 239, 160, 0, 0, 0, 0, ]; -solana_sdk::solana_name_id!( +solana_sdk::declare_program!( CONFIG_PROGRAM_ID, - "Config1111111111111111111111111111111111111" + "Config1111111111111111111111111111111111111", + solana_config_program, + process_instruction ); pub trait ConfigState: serde::Serialize + Default { diff --git a/programs/config_api/Cargo.toml b/programs/config_api/Cargo.toml deleted file mode 100644 index 7ac51a56b6..0000000000 --- a/programs/config_api/Cargo.toml +++ /dev/null @@ -1,21 +0,0 @@ -[package] -name = "solana-config-api" -version = "0.21.0" -description = "config program API" -authors = ["Solana Maintainers "] -repository = "https://github.com/solana-labs/solana" -license = "Apache-2.0" -homepage = "https://solana.com/" -edition = "2018" - -[dependencies] -bincode = "1.2.0" -log = "0.4.8" -serde = "1.0.102" -serde_derive = "1.0.102" -solana-sdk = { path = "../../sdk", version = "0.21.0" } - - -[lib] -crate-type = ["lib"] -name = "solana_config_api" diff --git a/programs/config_program/src/lib.rs b/programs/config_program/src/lib.rs deleted file mode 100644 index 8d0bb0d959..0000000000 --- a/programs/config_program/src/lib.rs +++ /dev/null @@ -1,9 +0,0 @@ -#[macro_export] -macro_rules! solana_config_program { - () => { - ("solana_config_program".to_string(), solana_config_api::id()) - }; -} -use solana_config_api::config_processor::process_instruction; - -solana_sdk::solana_entrypoint!(process_instruction); diff --git a/programs/config_tests/Cargo.toml b/programs/config_tests/Cargo.toml index ec64748e09..777557b094 100644 --- a/programs/config_tests/Cargo.toml +++ b/programs/config_tests/Cargo.toml @@ -15,8 +15,7 @@ serde = "1.0.102" serde_derive = "1.0.102" solana-logger = { path = "../../logger", version = "0.21.0" } solana-sdk = { path = "../../sdk", version = "0.21.0" } -solana-config-api = { path = "../config_api", version = "0.21.0" } -solana-config-program = { path = "../config_program", version = "0.21.0" } +solana-config-program = { path = "../config", version = "0.21.0" } [dev-dependencies] diff --git a/programs/config_tests/tests/config_processor.rs b/programs/config_tests/tests/config_processor.rs index 18240b992c..939d6967c2 100644 --- a/programs/config_tests/tests/config_processor.rs +++ b/programs/config_tests/tests/config_processor.rs @@ -2,7 +2,7 @@ use bincode::{deserialize, serialized_size}; use serde_derive::{Deserialize, Serialize}; -use solana_config_api::{ +use solana_config_program::{ config_instruction, config_processor::process_instruction, get_config_data, id, ConfigKeys, ConfigState, }; diff --git a/programs/stake_api/Cargo.toml b/programs/stake/Cargo.toml similarity index 73% rename from programs/stake_api/Cargo.toml rename to programs/stake/Cargo.toml index ca506917d7..00e0861ac2 100644 --- a/programs/stake_api/Cargo.toml +++ b/programs/stake/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "solana-stake-api" +name = "solana-stake-program" version = "0.21.0" description = "Solana Stake program API" authors = ["Solana Maintainers "] @@ -19,9 +19,9 @@ serde_derive = "1.0.102" solana-logger = { path = "../../logger", version = "0.21.0" } solana-metrics = { path = "../../metrics", version = "0.21.0" } solana-sdk = { path = "../../sdk", version = "0.21.0" } -solana-vote-api = { path = "../vote_api", version = "0.21.0" } -solana-config-api = { path = "../config_api", version = "0.21.0" } +solana-vote-program = { path = "../vote", version = "0.21.0" } +solana-config-program = { path = "../config", version = "0.21.0" } [lib] -crate-type = ["lib"] -name = "solana_stake_api" +crate-type = ["lib", "cdylib"] +name = "solana_stake_program" diff --git a/programs/stake_api/src/config.rs b/programs/stake/src/config.rs similarity index 97% rename from programs/stake_api/src/config.rs rename to programs/stake/src/config.rs index 6836dba598..655c3be4f8 100644 --- a/programs/stake_api/src/config.rs +++ b/programs/stake/src/config.rs @@ -2,7 +2,7 @@ //! carries variables that the stake program cares about use bincode::{deserialize, serialized_size}; use serde_derive::{Deserialize, Serialize}; -use solana_config_api::{create_config_account, get_config_data, ConfigState}; +use solana_config_program::{create_config_account, get_config_data, ConfigState}; use solana_sdk::{ account::{Account, KeyedAccount}, instruction::InstructionError, diff --git a/programs/stake_api/src/lib.rs b/programs/stake/src/lib.rs similarity index 80% rename from programs/stake_api/src/lib.rs rename to programs/stake/src/lib.rs index 1cc980682a..be46ddd464 100644 --- a/programs/stake_api/src/lib.rs +++ b/programs/stake/src/lib.rs @@ -1,5 +1,6 @@ use crate::config::create_genesis_account; use crate::rewards_pools::create_rewards_accounts; +use crate::stake_instruction::process_instruction; use solana_sdk::genesis_config::GenesisConfig; pub mod config; @@ -12,9 +13,11 @@ const STAKE_PROGRAM_ID: [u8; 32] = [ 120, 114, 43, 104, 164, 157, 192, 0, 0, 0, 0, ]; -solana_sdk::solana_name_id!( +solana_sdk::declare_program!( STAKE_PROGRAM_ID, - "Stake11111111111111111111111111111111111111" + "Stake11111111111111111111111111111111111111", + solana_stake_program, + process_instruction ); pub fn add_genesis_accounts(genesis_config: &mut GenesisConfig) { diff --git a/programs/stake_api/src/rewards_pools.rs b/programs/stake/src/rewards_pools.rs similarity index 100% rename from programs/stake_api/src/rewards_pools.rs rename to programs/stake/src/rewards_pools.rs diff --git a/programs/stake_api/src/stake_instruction.rs b/programs/stake/src/stake_instruction.rs similarity index 100% rename from programs/stake_api/src/stake_instruction.rs rename to programs/stake/src/stake_instruction.rs diff --git a/programs/stake_api/src/stake_state.rs b/programs/stake/src/stake_state.rs similarity index 99% rename from programs/stake_api/src/stake_state.rs rename to programs/stake/src/stake_state.rs index 5326b7493b..a964b2494c 100644 --- a/programs/stake_api/src/stake_state.rs +++ b/programs/stake/src/stake_state.rs @@ -17,7 +17,7 @@ use solana_sdk::{ stake_history::{StakeHistory, StakeHistoryEntry}, }, }; -use solana_vote_api::vote_state::VoteState; +use solana_vote_program::vote_state::VoteState; use std::collections::HashSet; #[derive(Debug, Serialize, Deserialize, PartialEq, Clone, Copy)] @@ -804,7 +804,7 @@ mod tests { use super::*; use crate::id; use solana_sdk::{account::Account, pubkey::Pubkey, system_program}; - use solana_vote_api::vote_state; + use solana_vote_program::vote_state; #[test] fn test_stake_state_stake_from_fail() { diff --git a/programs/stake_program/Cargo.toml b/programs/stake_program/Cargo.toml deleted file mode 100644 index 8a0e72a15a..0000000000 --- a/programs/stake_program/Cargo.toml +++ /dev/null @@ -1,19 +0,0 @@ -[package] -name = "solana-stake-program" -version = "0.21.0" -description = "Solana stake program" -authors = ["Solana Maintainers "] -repository = "https://github.com/solana-labs/solana" -license = "Apache-2.0" -homepage = "https://solana.com/" -edition = "2018" - -[dependencies] -log = "0.4.8" -solana-logger = { path = "../../logger", version = "0.21.0" } -solana-sdk = { path = "../../sdk", version = "0.21.0" } -solana-stake-api = { path = "../stake_api", version = "0.21.0" } - -[lib] -crate-type = ["lib", "cdylib"] -name = "solana_stake_program" diff --git a/programs/stake_program/src/lib.rs b/programs/stake_program/src/lib.rs deleted file mode 100644 index 31ad5f4683..0000000000 --- a/programs/stake_program/src/lib.rs +++ /dev/null @@ -1,9 +0,0 @@ -#[macro_export] -macro_rules! solana_stake_program { - () => { - ("solana_stake_program".to_string(), solana_stake_api::id()) - }; -} - -use solana_stake_api::stake_instruction::process_instruction; -solana_sdk::solana_entrypoint!(process_instruction); diff --git a/programs/stake_tests/Cargo.toml b/programs/stake_tests/Cargo.toml index f3acea29a2..3ab61fe1b0 100644 --- a/programs/stake_tests/Cargo.toml +++ b/programs/stake_tests/Cargo.toml @@ -12,9 +12,8 @@ edition = "2018" log = "0.4.8" solana-logger = { path = "../../logger", version = "0.21.0" } solana-sdk = { path = "../../sdk", version = "0.21.0" } -solana-stake-api = { path = "../stake_api", version = "0.21.0" } -solana-stake-program = { path = "../stake_program", version = "0.21.0" } -solana-vote-api = { path = "../vote_api", version = "0.21.0" } +solana-stake-program = { path = "../stake", version = "0.21.0" } +solana-vote-program = { path = "../vote", version = "0.21.0" } [dev-dependencies] solana-runtime = { path = "../../runtime", version = "0.21.0" } diff --git a/programs/stake_tests/tests/stake_instruction.rs b/programs/stake_tests/tests/stake_instruction.rs index fc63257e65..d65cd48428 100644 --- a/programs/stake_tests/tests/stake_instruction.rs +++ b/programs/stake_tests/tests/stake_instruction.rs @@ -12,11 +12,11 @@ use solana_sdk::{ signature::{Keypair, KeypairUtil}, sysvar::{self, rewards::Rewards, stake_history::StakeHistory, Sysvar}, }; -use solana_stake_api::{ +use solana_stake_program::{ stake_instruction::{self}, stake_state::{self, StakeState}, }; -use solana_vote_api::{ +use solana_vote_program::{ vote_instruction, vote_state::{Vote, VoteInit, VoteState}, }; diff --git a/programs/vest_api/Cargo.toml b/programs/vest/Cargo.toml similarity index 83% rename from programs/vest_api/Cargo.toml rename to programs/vest/Cargo.toml index 30f3bb27db..68a78cd798 100644 --- a/programs/vest_api/Cargo.toml +++ b/programs/vest/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "solana-vest-api" +name = "solana-vest-program" version = "0.21.0" description = "Solana Vest program API" authors = ["Solana Maintainers "] @@ -17,11 +17,11 @@ num-traits = "0.2" serde = "1.0.102" serde_derive = "1.0.102" solana-sdk = { path = "../../sdk", version = "0.21.0" } -solana-config-api = { path = "../config_api", version = "0.21.0" } +solana-config-program = { path = "../config", version = "0.21.0" } [dev-dependencies] solana-runtime = { path = "../../runtime", version = "0.21.0" } [lib] crate-type = ["lib"] -name = "solana_vest_api" +name = "solana_vest_program" diff --git a/programs/vest_api/src/date_instruction.rs b/programs/vest/src/date_instruction.rs similarity index 96% rename from programs/vest_api/src/date_instruction.rs rename to programs/vest/src/date_instruction.rs index 353385766f..379fa922d0 100644 --- a/programs/vest_api/src/date_instruction.rs +++ b/programs/vest/src/date_instruction.rs @@ -7,7 +7,7 @@ use chrono::{ serde::ts_seconds, }; use serde_derive::{Deserialize, Serialize}; -use solana_config_api::{config_instruction, ConfigState}; +use solana_config_program::{config_instruction, ConfigState}; use solana_sdk::{instruction::Instruction, pubkey::Pubkey}; #[derive(Serialize, Deserialize, Debug, PartialEq, Eq, Clone)] diff --git a/programs/vest_api/src/lib.rs b/programs/vest/src/lib.rs similarity index 65% rename from programs/vest_api/src/lib.rs rename to programs/vest/src/lib.rs index e27e821a3c..e96432c59a 100644 --- a/programs/vest_api/src/lib.rs +++ b/programs/vest/src/lib.rs @@ -4,12 +4,16 @@ pub mod vest_processor; pub mod vest_schedule; pub mod vest_state; +use crate::vest_processor::process_instruction; + const VEST_PROGRAM_ID: [u8; 32] = [ 7, 87, 23, 47, 219, 236, 238, 33, 137, 188, 215, 141, 32, 229, 155, 195, 133, 124, 23, 232, 113, 153, 252, 252, 111, 5, 187, 128, 0, 0, 0, 0, ]; -solana_sdk::solana_name_id!( +solana_sdk::declare_program!( VEST_PROGRAM_ID, - "Vest111111111111111111111111111111111111111" + "Vest111111111111111111111111111111111111111", + solana_vest_program, + process_instruction ); diff --git a/programs/vest_api/src/vest_instruction.rs b/programs/vest/src/vest_instruction.rs similarity index 100% rename from programs/vest_api/src/vest_instruction.rs rename to programs/vest/src/vest_instruction.rs diff --git a/programs/vest_api/src/vest_processor.rs b/programs/vest/src/vest_processor.rs similarity index 96% rename from programs/vest_api/src/vest_processor.rs rename to programs/vest/src/vest_processor.rs index 01087cc735..fc1ce422e3 100644 --- a/programs/vest_api/src/vest_processor.rs +++ b/programs/vest/src/vest_processor.rs @@ -5,7 +5,7 @@ use crate::{ vest_state::VestState, }; use chrono::prelude::*; -use solana_config_api::get_config_data; +use solana_config_program::get_config_data; use solana_sdk::{ account::{Account, KeyedAccount}, instruction::InstructionError, @@ -17,7 +17,7 @@ fn verify_date_account( keyed_account: &mut KeyedAccount, expected_pubkey: &Pubkey, ) -> Result, InstructionError> { - if keyed_account.account.owner != solana_config_api::id() { + if keyed_account.account.owner != solana_config_program::id() { return Err(InstructionError::IncorrectProgramId); } @@ -149,8 +149,8 @@ mod tests { let (genesis_config, mint_keypair) = create_genesis_config(lamports); let mut bank = Bank::new(&genesis_config); bank.add_instruction_processor( - solana_config_api::id(), - solana_config_api::config_processor::process_instruction, + solana_config_program::id(), + solana_config_program::config_processor::process_instruction, ); bank.add_instruction_processor(id(), process_instruction); (bank, mint_keypair) @@ -252,7 +252,7 @@ mod tests { fn test_verify_account_unauthorized() { // Ensure client can't sneak in with an untrusted date account. let date_pubkey = Pubkey::new_rand(); - let mut account = Account::new(1, 0, &solana_config_api::id()); + let mut account = Account::new(1, 0, &solana_config_program::id()); let mut keyed_account = KeyedAccount::new(&date_pubkey, false, &mut account); let mallory_pubkey = Pubkey::new_rand(); // <-- Attack! Not the expected account. @@ -266,7 +266,7 @@ mod tests { fn test_verify_signed_account_missing_signature() { // Ensure client can't sneak in with an unsigned account. let date_pubkey = Pubkey::new_rand(); - let mut account = Account::new(1, 0, &solana_config_api::id()); + let mut account = Account::new(1, 0, &solana_config_program::id()); let mut keyed_account = KeyedAccount::new(&date_pubkey, false, &mut account); // <-- Attack! Unsigned transaction. assert_eq!( @@ -291,7 +291,7 @@ mod tests { fn test_verify_date_account_uninitialized_config() { // Ensure no panic when `get_config_data()` returns an error. let date_pubkey = Pubkey::new_rand(); - let mut account = Account::new(1, 0, &solana_config_api::id()); // <-- Attack! Zero space. + let mut account = Account::new(1, 0, &solana_config_program::id()); // <-- Attack! Zero space. let mut keyed_account = KeyedAccount::new(&date_pubkey, false, &mut account); assert_eq!( verify_date_account(&mut keyed_account, &date_pubkey).unwrap_err(), @@ -303,7 +303,7 @@ mod tests { fn test_verify_date_account_invalid_date_config() { // Ensure no panic when `deserialize::()` returns an error. let date_pubkey = Pubkey::new_rand(); - let mut account = Account::new(1, 1, &solana_config_api::id()); // Attack! 1 byte, enough to sneak by `get_config_data()`, but not DateConfig deserialize. + let mut account = Account::new(1, 1, &solana_config_program::id()); // Attack! 1 byte, enough to sneak by `get_config_data()`, but not DateConfig deserialize. let mut keyed_account = KeyedAccount::new(&date_pubkey, false, &mut account); assert_eq!( verify_date_account(&mut keyed_account, &date_pubkey).unwrap_err(), @@ -315,7 +315,7 @@ mod tests { fn test_verify_date_account_deserialize() { // Ensure no panic when `deserialize::()` returns an error. let date_pubkey = Pubkey::new_rand(); - let mut account = Account::new(1, 1, &solana_config_api::id()); // Attack! 1 byte, enough to sneak by `get_config_data()`, but not DateConfig deserialize. + let mut account = Account::new(1, 1, &solana_config_program::id()); // Attack! 1 byte, enough to sneak by `get_config_data()`, but not DateConfig deserialize. let mut keyed_account = KeyedAccount::new(&date_pubkey, false, &mut account); assert_eq!( verify_date_account(&mut keyed_account, &date_pubkey).unwrap_err(), diff --git a/programs/vest_api/src/vest_schedule.rs b/programs/vest/src/vest_schedule.rs similarity index 100% rename from programs/vest_api/src/vest_schedule.rs rename to programs/vest/src/vest_schedule.rs diff --git a/programs/vest_api/src/vest_state.rs b/programs/vest/src/vest_state.rs similarity index 100% rename from programs/vest_api/src/vest_state.rs rename to programs/vest/src/vest_state.rs diff --git a/programs/vest_program/Cargo.toml b/programs/vest_program/Cargo.toml deleted file mode 100644 index c48c1d1c88..0000000000 --- a/programs/vest_program/Cargo.toml +++ /dev/null @@ -1,19 +0,0 @@ -[package] -name = "solana-vest-program" -version = "0.21.0" -description = "Solana Vest program" -authors = ["Solana Maintainers "] -repository = "https://github.com/solana-labs/solana" -license = "Apache-2.0" -homepage = "https://solana.com/" -edition = "2018" - -[dependencies] -log = "0.4.8" -solana-logger = { path = "../../logger", version = "0.21.0" } -solana-sdk = { path = "../../sdk", version = "0.21.0" } -solana-vest-api = { path = "../vest_api", version = "0.21.0" } - -[lib] -crate-type = ["lib", "cdylib"] -name = "solana_vest_program" diff --git a/programs/vest_program/src/lib.rs b/programs/vest_program/src/lib.rs deleted file mode 100644 index 1e70a403af..0000000000 --- a/programs/vest_program/src/lib.rs +++ /dev/null @@ -1,9 +0,0 @@ -#[macro_export] -macro_rules! solana_vest_program { - () => { - ("solana_vest_program".to_string(), solana_vest_api::id()) - }; -} - -use solana_vest_api::vest_processor::process_instruction; -solana_sdk::solana_entrypoint!(process_instruction); diff --git a/programs/vote_api/Cargo.toml b/programs/vote/Cargo.toml similarity index 86% rename from programs/vote_api/Cargo.toml rename to programs/vote/Cargo.toml index 94754d2285..e342c7e9d0 100644 --- a/programs/vote_api/Cargo.toml +++ b/programs/vote/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "solana-vote-api" +name = "solana-vote-program" version = "0.21.0" description = "Solana Vote program API" authors = ["Solana Maintainers "] @@ -20,5 +20,5 @@ solana-metrics = { path = "../../metrics", version = "0.21.0" } solana-sdk = { path = "../../sdk", version = "0.21.0" } [lib] -crate-type = ["lib"] -name = "solana_vote_api" +crate-type = ["lib", "cdylib"] +name = "solana_vote_program" diff --git a/programs/vote_api/src/lib.rs b/programs/vote/src/lib.rs similarity index 58% rename from programs/vote_api/src/lib.rs rename to programs/vote/src/lib.rs index b08b845a95..b968c13445 100644 --- a/programs/vote_api/src/lib.rs +++ b/programs/vote/src/lib.rs @@ -1,12 +1,16 @@ pub mod vote_instruction; pub mod vote_state; +use crate::vote_instruction::process_instruction; + const VOTE_PROGRAM_ID: [u8; 32] = [ 7, 97, 72, 29, 53, 116, 116, 187, 124, 77, 118, 36, 235, 211, 189, 179, 216, 53, 94, 115, 209, 16, 67, 252, 13, 163, 83, 128, 0, 0, 0, 0, ]; -solana_sdk::solana_name_id!( +solana_sdk::declare_program!( VOTE_PROGRAM_ID, - "Vote111111111111111111111111111111111111111" + "Vote111111111111111111111111111111111111111", + solana_vote_program, + process_instruction ); diff --git a/programs/vote_api/src/vote_instruction.rs b/programs/vote/src/vote_instruction.rs similarity index 100% rename from programs/vote_api/src/vote_instruction.rs rename to programs/vote/src/vote_instruction.rs diff --git a/programs/vote_api/src/vote_state.rs b/programs/vote/src/vote_state.rs similarity index 100% rename from programs/vote_api/src/vote_state.rs rename to programs/vote/src/vote_state.rs diff --git a/programs/vote_program/Cargo.toml b/programs/vote_program/Cargo.toml deleted file mode 100644 index bada32a7c0..0000000000 --- a/programs/vote_program/Cargo.toml +++ /dev/null @@ -1,19 +0,0 @@ -[package] -name = "solana-vote-program" -version = "0.21.0" -description = "Solana Vote program" -authors = ["Solana Maintainers "] -repository = "https://github.com/solana-labs/solana" -license = "Apache-2.0" -homepage = "https://solana.com/" -edition = "2018" - -[dependencies] -log = "0.4.8" -solana-logger = { path = "../../logger", version = "0.21.0" } -solana-sdk = { path = "../../sdk", version = "0.21.0" } -solana-vote-api = { path = "../vote_api", version = "0.21.0" } - -[lib] -crate-type = ["lib", "cdylib"] -name = "solana_vote_program" diff --git a/programs/vote_program/src/lib.rs b/programs/vote_program/src/lib.rs deleted file mode 100644 index 27ef5e25e7..0000000000 --- a/programs/vote_program/src/lib.rs +++ /dev/null @@ -1,9 +0,0 @@ -#[macro_export] -macro_rules! solana_vote_program { - () => { - ("solana_vote_program".to_string(), solana_vote_api::id()) - }; -} - -use solana_vote_api::vote_instruction::process_instruction; -solana_sdk::solana_entrypoint!(process_instruction); diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index c514816952..671a6e2e63 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -30,11 +30,9 @@ solana-metrics = { path = "../metrics", version = "0.21.0" } solana-bpf-loader-api = { path = "../programs/bpf_loader_api", version = "0.21.0" } solana-bpf-loader-program = { path = "../programs/bpf_loader_program", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-stake-api = { path = "../programs/stake_api", version = "0.21.0" } -solana-stake-program = { path = "../programs/stake_program", version = "0.21.0" } +solana-stake-program = { path = "../programs/stake", version = "0.21.0" } solana-storage-api = { path = "../programs/storage_api", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } -solana-vote-program = { path = "../programs/vote_program", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } sys-info = "0.5.8" tempfile = "3.1.0" solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "0.21.0" } diff --git a/runtime/src/accounts_db.rs b/runtime/src/accounts_db.rs index 910356f0ae..b442f93ce8 100644 --- a/runtime/src/accounts_db.rs +++ b/runtime/src/accounts_db.rs @@ -1306,7 +1306,7 @@ pub mod tests { } for t in 0..num_vote { let pubkey = Pubkey::new_rand(); - let account = Account::new((num + t + 1) as u64, space, &solana_vote_api::id()); + let account = Account::new((num + t + 1) as u64, space, &solana_vote_program::id()); pubkeys.push(pubkey.clone()); let ancestors = vec![(slot, 0)].into_iter().collect(); assert!(accounts.load_slow(&ancestors, &pubkey).is_none()); diff --git a/runtime/src/bank.rs b/runtime/src/bank.rs index 9cb92abcad..49252a66ab 100644 --- a/runtime/src/bank.rs +++ b/runtime/src/bank.rs @@ -1637,8 +1637,8 @@ mod tests { system_instruction, sysvar::{fees::Fees, rewards::Rewards}, }; - use solana_stake_api::stake_state::Stake; - use solana_vote_api::{ + use solana_stake_program::stake_state::Stake; + use solana_vote_program::{ vote_instruction, vote_state::{self, Vote, VoteInit, VoteState, MAX_LOCKOUT_HISTORY}, }; @@ -3281,9 +3281,9 @@ mod tests { Err(InstructionError::CustomError(42)) } - assert!(bank.get_account(&solana_vote_api::id()).is_none()); - bank.add_instruction_processor(solana_vote_api::id(), mock_vote_processor); - assert!(bank.get_account(&solana_vote_api::id()).is_some()); + assert!(bank.get_account(&solana_vote_program::id()).is_none()); + bank.add_instruction_processor(solana_vote_program::id(), mock_vote_processor); + assert!(bank.get_account(&solana_vote_program::id()).is_some()); let mock_account = Keypair::new(); let instructions = vote_instruction::create_account( @@ -3340,9 +3340,9 @@ mod tests { bank.last_blockhash(), ); - let vote_loader_account = bank.get_account(&solana_vote_api::id()).unwrap(); - bank.add_instruction_processor(solana_vote_api::id(), mock_vote_processor); - let new_vote_loader_account = bank.get_account(&solana_vote_api::id()).unwrap(); + let vote_loader_account = bank.get_account(&solana_vote_program::id()).unwrap(); + bank.add_instruction_processor(solana_vote_program::id(), mock_vote_processor); + let new_vote_loader_account = bank.get_account(&solana_vote_program::id()).unwrap(); // Vote loader account should not be updated since it was included in the genesis config. assert_eq!(vote_loader_account.data, new_vote_loader_account.data); assert_eq!( diff --git a/runtime/src/genesis_utils.rs b/runtime/src/genesis_utils.rs index 028692f7a2..28568b18da 100644 --- a/runtime/src/genesis_utils.rs +++ b/runtime/src/genesis_utils.rs @@ -7,8 +7,8 @@ use solana_sdk::{ signature::{Keypair, KeypairUtil}, system_program::{self, solana_system_program}, }; -use solana_stake_api::stake_state; -use solana_vote_api::vote_state; +use solana_stake_program::stake_state; +use solana_vote_program::vote_state; // The default stake placed with the bootstrap leader pub const BOOTSTRAP_LEADER_LAMPORTS: u64 = 42; @@ -85,7 +85,7 @@ pub fn create_genesis_config_with_leader( ..GenesisConfig::default() }; - solana_stake_api::add_genesis_accounts(&mut genesis_config); + solana_stake_program::add_genesis_accounts(&mut genesis_config); solana_storage_api::rewards_pools::add_genesis_accounts(&mut genesis_config); GenesisConfigInfo { diff --git a/runtime/src/native_loader.rs b/runtime/src/native_loader.rs index e37423d3c7..a470da8f9b 100644 --- a/runtime/src/native_loader.rs +++ b/runtime/src/native_loader.rs @@ -89,8 +89,11 @@ pub fn invoke_entrypoint( let path = create_path(&name); match library_open(&path) { Ok(library) => unsafe { - let entrypoint: Symbol = - match library.get(instruction_processor_utils::ENTRYPOINT.as_bytes()) { + let entrypoint: Symbol = match library + .get(name.as_bytes()) + { + Ok(s) => s, + Err(_) => match library.get(instruction_processor_utils::ENTRYPOINT.as_bytes()) { Ok(s) => s, Err(e) => { warn!( @@ -100,7 +103,8 @@ pub fn invoke_entrypoint( ); return Err(InstructionError::GenericError); } - }; + }, + }; let ret = entrypoint(program_id, params, ix_data); symbol_cache .write() diff --git a/runtime/src/stakes.rs b/runtime/src/stakes.rs index dc840c416c..352a72dc9d 100644 --- a/runtime/src/stakes.rs +++ b/runtime/src/stakes.rs @@ -4,8 +4,8 @@ use solana_sdk::account::Account; use solana_sdk::clock::Epoch; use solana_sdk::pubkey::Pubkey; use solana_sdk::sysvar::stake_history::StakeHistory; -use solana_stake_api::stake_state::{new_stake_history_entry, StakeState}; -use solana_vote_api::vote_state::VoteState; +use solana_stake_program::stake_state::{new_stake_history_entry, StakeState}; +use solana_vote_program::vote_state::VoteState; use std::collections::HashMap; #[derive(Default, Clone, PartialEq, Debug, Deserialize, Serialize)] @@ -96,13 +96,13 @@ impl Stakes { } pub fn is_stake(account: &Account) -> bool { - solana_vote_api::check_id(&account.owner) - || solana_stake_api::check_id(&account.owner) + solana_vote_program::check_id(&account.owner) + || solana_stake_program::check_id(&account.owner) && account.data.len() >= std::mem::size_of::() } pub fn store(&mut self, pubkey: &Pubkey, account: &Account) { - if solana_vote_api::check_id(&account.owner) { + if solana_vote_program::check_id(&account.owner) { if account.lamports == 0 { self.vote_accounts.remove(pubkey); } else { @@ -124,7 +124,7 @@ impl Stakes { self.vote_accounts.insert(*pubkey, (stake, account.clone())); } - } else if solana_stake_api::check_id(&account.owner) { + } else if solana_stake_program::check_id(&account.owner) { // old_stake is stake lamports and voter_pubkey from the pre-store() version let old_stake = self.stake_accounts.get(pubkey).and_then(|old_account| { StakeState::stake_from(old_account).map(|stake| { @@ -210,8 +210,8 @@ impl Stakes { pub mod tests { use super::*; use solana_sdk::{pubkey::Pubkey, rent::Rent}; - use solana_stake_api::stake_state; - use solana_vote_api::vote_state::{self, VoteState, MAX_LOCKOUT_HISTORY}; + use solana_stake_program::stake_state; + use solana_vote_program::vote_state::{self, VoteState, MAX_LOCKOUT_HISTORY}; // set up some dummies for a staked node (( vote ) ( stake )) pub fn create_staked_node_accounts(stake: u64) -> ((Pubkey, Account), (Pubkey, Account)) { @@ -508,7 +508,10 @@ pub mod tests { } // not a stake account, and whacks above entry - stakes.store(&stake_pubkey, &Account::new(1, 0, &solana_stake_api::id())); + stakes.store( + &stake_pubkey, + &Account::new(1, 0, &solana_stake_program::id()), + ); { let vote_accounts = stakes.vote_accounts(); assert!(vote_accounts.get(&vote_pubkey).is_some()); diff --git a/sdk/src/epoch_schedule.rs b/sdk/src/epoch_schedule.rs index 4dd7a8b92f..4c44370f81 100644 --- a/sdk/src/epoch_schedule.rs +++ b/sdk/src/epoch_schedule.rs @@ -8,7 +8,7 @@ pub use crate::clock::{Epoch, Slot, DEFAULT_SLOTS_PER_EPOCH}; /// the beginning of epoch X - 1. pub const DEFAULT_LEADER_SCHEDULE_SLOT_OFFSET: u64 = DEFAULT_SLOTS_PER_EPOCH; -/// based on MAX_LOCKOUT_HISTORY from vote_api +/// based on MAX_LOCKOUT_HISTORY from vote_program pub const MINIMUM_SLOTS_PER_EPOCH: u64 = 32; #[repr(C)] diff --git a/sdk/src/instruction_processor_utils.rs b/sdk/src/instruction_processor_utils.rs index 6cd7ef70f7..07bb180b0e 100644 --- a/sdk/src/instruction_processor_utils.rs +++ b/sdk/src/instruction_processor_utils.rs @@ -11,6 +11,7 @@ pub type Entrypoint = unsafe extern "C" fn( data: &[u8], ) -> Result<(), InstructionError>; +// Deprecated // Convenience macro to define the native program entrypoint. Supply a fn to this macro that // conforms to the `Entrypoint` type signature. #[macro_export] @@ -27,6 +28,65 @@ macro_rules! solana_entrypoint( ) ); +/// Convenience macro to declare a native program +/// +/// id: Variable containing the program's id (public key bytes) +/// bs58: BS58 encoding of the id, used verify check the id bytes +/// name: Name of the program, must match the library name in Cargo.toml +/// entrypoint: Program's entrypoint, must be of `type Entrypoint` +/// +/// # Examples +/// +/// ``` +/// use solana_sdk::account::KeyedAccount; +/// use solana_sdk::instruction::InstructionError; +/// use solana_sdk::pubkey::Pubkey; +/// use solana_sdk::declare_program; +/// +/// const MY_PROGRAM_ID: [u8; 32] = [ +/// 6, 161, 216, 23, 145, 55, 84, 42, 152, 52, 55, 189, 254, 42, 122, 178, 85, 127, 83, 92, 138, +/// 120, 114, 43, 104, 164, 157, 192, 0, 0, 0, 0, +/// ]; +/// +/// fn my_process_instruction( +/// program_id: &Pubkey, +/// keyed_accounts: &mut [KeyedAccount], +/// data: &[u8], +/// ) -> Result<(), InstructionError> { +/// // Process an instruction +/// Ok(()) +/// } +/// +/// solana_sdk::declare_program!( +/// MY_PROGRAM_ID, +/// "My!!!11111111111111111111111111111111111111", +/// solana_my_program, +/// my_process_instruction +/// ); +/// ``` +#[macro_export] +macro_rules! declare_program( + ($id:ident, $bs58:expr, $name:ident, $entrypoint:ident) => ( + $crate::solana_name_id!($id, $bs58); + + #[macro_export] + macro_rules! $name { + () => { + (stringify!($name).to_string(), $crate::id()) + }; + } + + #[no_mangle] + pub extern "C" fn $name( + program_id: &$crate::pubkey::Pubkey, + keyed_accounts: &mut [$crate::account::KeyedAccount], + data: &[u8], + ) -> Result<(), $crate::instruction::InstructionError> { + $entrypoint(program_id, keyed_accounts, data) + } + ) +); + impl From for InstructionError where T: ToPrimitive, diff --git a/validator/Cargo.toml b/validator/Cargo.toml index fa09c947e9..df1d42dc1b 100644 --- a/validator/Cargo.toml +++ b/validator/Cargo.toml @@ -28,7 +28,7 @@ solana-metrics = { path = "../metrics", version = "0.21.0" } solana-net-utils = { path = "../net-utils", version = "0.21.0" } solana-runtime = { path = "../runtime", version = "0.21.0" } solana-sdk = { path = "../sdk", version = "0.21.0" } -solana-vote-api = { path = "../programs/vote_api", version = "0.21.0" } +solana-vote-program = { path = "../programs/vote", version = "0.21.0" } solana-vote-signer = { path = "../vote-signer", version = "0.21.0" } tempfile = "3.1.0" tar = "0.4.26" diff --git a/validator/src/main.rs b/validator/src/main.rs index 688b2a84ef..b44aa371c9 100644 --- a/validator/src/main.rs +++ b/validator/src/main.rs @@ -244,7 +244,7 @@ fn check_vote_account( .get_account(vote_pubkey) .map_err(|err| format!("Failed to get vote account: {}", err.to_string()))?; - if found_vote_account.owner != solana_vote_api::id() { + if found_vote_account.owner != solana_vote_program::id() { return Err(format!( "not a vote account (owned by {}): {}", found_vote_account.owner, vote_pubkey @@ -255,7 +255,7 @@ fn check_vote_account( .get_account(node_pubkey) .map_err(|err| format!("Failed to get identity account: {}", err.to_string()))?; - let found_vote_account = solana_vote_api::vote_state::VoteState::from(&found_vote_account); + let found_vote_account = solana_vote_program::vote_state::VoteState::from(&found_vote_account); if let Some(found_vote_account) = found_vote_account { if found_vote_account.authorized_voter != *voting_pubkey { return Err(format!(