Refactor: Move sdk::process_instruction in program-runtime-crate (#21180)

* Moves the Executor dyn Trait to instruction_processor.rs

* Moves the Logger dyn Trait as well as the ic_msg and ic_logger_msg macros to log_collector.rs,
and moves the stable_log to stable_log.rs

* Moves the ComputeMeter dyn Trait to invoke_context.rs

* Moves the InvokeContext dyn Trait and the ProcessInstructionWithContext type to invoke_context.rs

* Updates cargo files.

* Re-export InvokeContext in program-test

Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
This commit is contained in:
Alexander Meißner
2021-11-17 19:35:07 +01:00
committed by GitHub
parent c3e5927d16
commit e540b1cf3c
35 changed files with 319 additions and 317 deletions

View File

@ -2795,6 +2795,7 @@ name = "solana-bpf-rust-mem"
version = "1.9.0"
dependencies = [
"solana-program 1.9.0",
"solana-program-runtime",
"solana-program-test",
"solana-sdk",
]
@ -2879,6 +2880,7 @@ name = "solana-bpf-rust-sanity"
version = "1.9.0"
dependencies = [
"solana-program 1.9.0",
"solana-program-runtime",
"solana-program-test",
"solana-sdk",
]
@ -2917,6 +2919,7 @@ name = "solana-bpf-rust-sysvar"
version = "1.9.0"
dependencies = [
"solana-program 1.9.0",
"solana-program-runtime",
"solana-program-test",
"solana-sdk",
]
@ -3036,6 +3039,7 @@ dependencies = [
name = "solana-compute-budget-program"
version = "1.9.0"
dependencies = [
"solana-program-runtime",
"solana-sdk",
]
@ -3047,6 +3051,7 @@ dependencies = [
"chrono",
"serde",
"serde_derive",
"solana-program-runtime",
"solana-sdk",
]
@ -3310,7 +3315,9 @@ dependencies = [
name = "solana-program-runtime"
version = "1.9.0"
dependencies = [
"base64 0.13.0",
"bincode",
"itertools 0.10.1",
"libc",
"libloading",
"log",
@ -3578,6 +3585,7 @@ dependencies = [
"solana-frozen-abi-macro 1.9.0",
"solana-logger 1.9.0",
"solana-metrics",
"solana-program-runtime",
"solana-sdk",
"thiserror",
]

View File

@ -18,14 +18,13 @@ use solana_runtime::{
genesis_utils::{create_genesis_config, GenesisConfigInfo},
loader_utils::load_program,
};
use solana_program_runtime::invoke_context::with_mock_invoke_context;
use solana_program_runtime::invoke_context::{with_mock_invoke_context, InvokeContext};
use solana_sdk::{
bpf_loader,
client::SyncClient,
entrypoint::SUCCESS,
instruction::{AccountMeta, Instruction},
message::Message,
process_instruction::InvokeContext,
pubkey::Pubkey,
signature::{Keypair, Signer},
};

View File

@ -16,6 +16,7 @@ no-entrypoint = []
solana-program = { path = "../../../../sdk/program", version = "=1.9.0" }
[dev-dependencies]
solana-program-runtime = { path = "../../../../program-runtime", version = "=1.9.0" }
solana-program-test = { path = "../../../../program-test", version = "=1.9.0" }
solana-sdk = { path = "../../../../sdk", version = "=1.9.0" }

View File

@ -16,6 +16,7 @@ test-bpf = []
solana-program = { path = "../../../../sdk/program", version = "=1.9.0" }
[dev-dependencies]
solana-program-runtime = { path = "../../../../program-runtime", version = "=1.9.0" }
solana-program-test = { path = "../../../../program-test", version = "=1.9.0" }
solana-sdk = { path = "../../../../sdk", version = "=1.9.0" }

View File

@ -13,6 +13,7 @@ edition = "2018"
solana-program = { path = "../../../../sdk/program", version = "=1.9.0" }
[dev-dependencies]
solana-program-runtime = { path = "../../../../program-runtime", version = "=1.9.0" }
solana-program-test = { path = "../../../../program-test", version = "=1.9.0" }
solana-sdk = { path = "../../../../sdk", version = "=1.9.0" }

View File

@ -31,7 +31,7 @@ use solana_runtime::{
upgrade_program,
},
};
use solana_program_runtime::invoke_context::with_mock_invoke_context;
use solana_program_runtime::invoke_context::{with_mock_invoke_context, InvokeContext};
use solana_sdk::{
account::{AccountSharedData, ReadableAccount},
account_utils::StateMut,
@ -43,7 +43,6 @@ use solana_sdk::{
instruction::{AccountMeta, CompiledInstruction, Instruction, InstructionError},
loader_instruction,
message::{Message, SanitizedMessage},
process_instruction::InvokeContext,
pubkey::Pubkey,
signature::{keypair_from_seed, Keypair, Signer},
system_instruction::{self, MAX_PERMITTED_DATA_LENGTH},