Make default programs static (#9717)

This commit is contained in:
Jack May
2020-04-27 21:05:12 -07:00
committed by GitHub
parent 193dbb1794
commit efad193180
34 changed files with 134 additions and 173 deletions

View File

@ -1988,6 +1988,7 @@ dependencies = [
"rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.106 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.106 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.0",
"solana-logger 1.2.0",
"solana-measure 1.2.0",
"solana-metrics 1.2.0",

View File

@ -238,7 +238,7 @@ mod tests {
fn create_bank(lamports: u64) -> (Bank, Keypair) {
let (genesis_config, mint_keypair) = create_genesis_config(lamports);
let mut bank = Bank::new(&genesis_config);
bank.add_instruction_processor(id(), process_instruction);
bank.add_static_program("budget_program", id(), process_instruction);
(bank, mint_keypair)
}

View File

@ -18,7 +18,7 @@ solana-logger = { path = "../../logger", version = "1.2.0" }
solana-sdk = { path = "../../sdk", version = "1.2.0" }
[lib]
crate-type = ["lib", "cdylib"]
crate-type = ["lib"]
name = "solana_config_program"
[package.metadata.docs.rs]

View File

@ -2,16 +2,11 @@ pub mod config_instruction;
pub mod config_processor;
pub mod date_instruction;
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};
solana_sdk::declare_program!(
"Config1111111111111111111111111111111111111",
solana_config_program,
process_instruction
);
solana_sdk::declare_id!("Config1111111111111111111111111111111111111");
pub trait ConfigState: serde::Serialize + Default {
/// Maximum space that the serialized representation will require

View File

@ -577,7 +577,7 @@ mod test {
fn create_bank(lamports: u64) -> (Bank, Keypair) {
let (genesis_config, mint_keypair) = create_genesis_config(lamports);
let mut bank = Bank::new(&genesis_config);
bank.add_instruction_processor(id(), process_instruction);
bank.add_static_program("excahnge_program", id(), process_instruction);
(bank, mint_keypair)
}

View File

@ -13,7 +13,7 @@ fn test_program_native_failure() {
let (genesis_config, alice_keypair) = create_genesis_config(50);
let program_id = Pubkey::new_rand();
let bank = Bank::new(&genesis_config);
bank.register_native_instruction_processor("solana_failure_program", &program_id);
bank.add_native_program("solana_failure_program", &program_id);
// Call user program
let instruction = create_invoke_instruction(alice_keypair.pubkey(), program_id, &1u8);

View File

@ -2483,6 +2483,7 @@ dependencies = [
"rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.106 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.106 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.0",
"solana-logger 1.2.0",
"solana-measure 1.2.0",
"solana-metrics 1.2.0",

View File

@ -156,10 +156,7 @@ mod tests {
let (mut genesis_config, mint) = create_genesis_config(lamports);
genesis_config.rent.lamports_per_byte_year = 0;
let bank = Bank::new(&genesis_config);
bank.register_native_instruction_processor(
"solana_move_loader_program",
&solana_sdk::move_loader::id(),
);
bank.add_native_program("solana_move_loader_program", &solana_sdk::move_loader::id());
let shared_bank = Arc::new(bank);
let bank_client = BankClient::new_shared(&shared_bank);
let genesis_pubkey = create_genesis(&mint, &bank_client, 1_000_000);

View File

@ -71,7 +71,7 @@ mod tests {
fn create_bank(lamports: u64) -> (Bank, Keypair) {
let (genesis_config, mint_keypair) = create_genesis_config(lamports);
let mut bank = Bank::new(&genesis_config);
bank.add_instruction_processor(crate::id(), process_instruction);
bank.add_static_program("ownable_program", crate::id(), process_instruction);
(bank, mint_keypair)
}

View File

@ -23,7 +23,7 @@ solana-config-program = { path = "../config", version = "1.2.0" }
thiserror = "1.0"
[lib]
crate-type = ["lib", "cdylib"]
crate-type = ["lib"]
name = "solana_stake_program"
[package.metadata.docs.rs]

View File

@ -4,11 +4,7 @@ pub mod config;
pub mod stake_instruction;
pub mod stake_state;
solana_sdk::declare_program!(
"Stake11111111111111111111111111111111111111",
solana_stake_program,
stake_instruction::process_instruction
);
solana_sdk::declare_id!("Stake11111111111111111111111111111111111111");
pub fn add_genesis_accounts(genesis_config: &mut GenesisConfig) -> u64 {
config::add_genesis_account(genesis_config)

View File

@ -161,11 +161,7 @@ mod tests {
fn create_bank(lamports: u64) -> (Bank, Keypair) {
let (genesis_config, mint_keypair) = create_genesis_config(lamports);
let mut bank = Bank::new(&genesis_config);
bank.add_instruction_processor(
solana_config_program::id(),
solana_config_program::config_processor::process_instruction,
);
bank.add_instruction_processor(id(), process_instruction);
bank.add_static_program("vest_program", id(), process_instruction);
(bank, mint_keypair)
}
@ -472,7 +468,7 @@ mod tests {
)
.unwrap_err();
// Ensure bob can update which account he wants vested funds transfered to.
// Ensure bob can update which account he wants vested funds transferred to.
bank_client
.transfer(1, &alice_keypair, &bob_pubkey)
.unwrap();

View File

@ -21,7 +21,7 @@ solana-sdk = { path = "../../sdk", version = "1.2.0" }
thiserror = "1.0"
[lib]
crate-type = ["lib", "cdylib"]
crate-type = ["lib"]
name = "solana_vote_program"
[package.metadata.docs.rs]

View File

@ -6,10 +6,4 @@ pub mod vote_transaction;
#[macro_use]
extern crate solana_metrics;
use crate::vote_instruction::process_instruction;
solana_sdk::declare_program!(
"Vote111111111111111111111111111111111111111",
solana_vote_program,
process_instruction
);
solana_sdk::declare_id!("Vote111111111111111111111111111111111111111");