diff --git a/Cargo.lock b/Cargo.lock index f603e6ed027000..04b853d79b3023 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7847,6 +7847,7 @@ dependencies = [ "solana-slot-hashes", "solana-slot-history", "solana-stable-layout", + "solana-system-interface", "solana-sysvar", "solana-sysvar-id", "solana-transaction-error", @@ -8962,6 +8963,22 @@ dependencies = [ "solana-sdk", ] +[[package]] +name = "solana-system-interface" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94d7c18cb1a91c6be5f5a8ac9276a1d7c737e39a21beba9ea710ab4b9c63bc90" +dependencies = [ + "js-sys", + "num-traits", + "serde", + "serde_derive", + "solana-decode-error", + "solana-instruction", + "solana-pubkey", + "wasm-bindgen", +] + [[package]] name = "solana-system-program" version = "2.2.0" diff --git a/Cargo.toml b/Cargo.toml index 007800cdf10980..d89a697b39e89a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -558,6 +558,7 @@ solana-svm = { path = "svm", version = "=2.2.0" } solana-svm-conformance = { path = "svm-conformance", version = "=2.2.0" } solana-svm-rent-collector = { path = "svm-rent-collector", version = "=2.2.0" } solana-svm-transaction = { path = "svm-transaction", version = "=2.2.0" } +solana-system-interface = "=1.0.0" solana-system-program = { path = "programs/system", version = "=2.2.0" } solana-sysvar = { path = "sdk/sysvar", version = "=2.2.0" } solana-sysvar-id = { path = "sdk/sysvar-id", version = "=2.2.0" } diff --git a/sdk/program/Cargo.toml b/sdk/program/Cargo.toml index f9d349b45bf4f1..dc5ffb8d4304c1 100644 --- a/sdk/program/Cargo.toml +++ b/sdk/program/Cargo.toml @@ -77,6 +77,7 @@ solana-short-vec = { workspace = true } solana-slot-hashes = { workspace = true, features = ["serde", "sysvar"] } solana-slot-history = { workspace = true, features = ["serde", "sysvar"] } solana-stable-layout = { workspace = true } +solana-system-interface = { workspace = true, features = ["bincode"] } solana-sysvar = { workspace = true, features = ["bincode", "bytemuck"] } solana-sysvar-id = { workspace = true } thiserror = { workspace = true }