Compare commits

...

17 Commits

Author SHA1 Message Date
Lijun Wang
49228573f4 Use connection cache in send transaction (#23712)
Use connection cache in send transaction (#23712)
2022-03-21 23:24:21 -07:00
Trent Nelson
eb3df4c20e core: partial versioned transaction support for voting service 2022-03-21 22:59:05 -06:00
Justin Starry
016d3c450a Update TpuConnection interface to be compatible with versioned txs (#23760)
* Update TpuConnection interface to be compatible with versioned txs

* Add convenience method for sending txs

* use parallel iterator to serialize transactions
2022-03-22 09:45:22 +08:00
HaoranYi
45a7c6edfb Fix typos and a small refactor (#23805)
* fix typo

* remove packet_has_more_unprocessed_transactions function
2022-03-21 18:35:31 -05:00
Will Hickey
c4ecfa5716 Bump version to v1.11 (#23807)
* Revert crossbeam_epoch to stable. 0.9.8 only works with nightly
* Remove unneeded unit expression
2022-03-21 17:40:50 -05:00
Jeff Washington (jwash)
24f6855f86 AcctIdx: only remove a fixed number of items per write lock (#23795) 2022-03-21 16:55:04 -05:00
samkim-crypto
10eeafd3d6 zk-token-sdk: handle edge cases for transfer with fee (#23804)
* zk-token-sdk: handle edge cases for transfer with fee

* zk-token-sdk: clippy

* zk-token-sdk: clippy

* zk-token-sdk: cargo fmt
2022-03-21 16:10:33 -04:00
Brooks Prumo
cb06126388 Set accounts_data_len on feature activation (#23730) 2022-03-21 12:28:26 -05:00
Tyera Eulberg
9c60991cd3 Add ability to query bigtable via solana-test-validator, with hidden params 2022-03-21 11:26:49 -06:00
Trent Nelson
9b32b72990 bigtable: allow custom instance names 2022-03-21 11:26:49 -06:00
Trent Nelson
f513195468 bigtable: add a config ctor for LedgerStorage 2022-03-21 11:26:49 -06:00
Tyera Eulberg
63ee00e647 Refactor validator bigtable config 2022-03-21 11:26:49 -06:00
Michael Vines
99f1a43262 Add v1.10 backport label, remove v1.8 backport label 2022-03-21 09:50:55 -07:00
DimAn
739e43ba58 Add ability to get the latest incremental snapshot via RPC (#23788) 2022-03-21 11:48:49 -05:00
Lijun Wang
ae76fe2bd7 Made connection cache configurable. (#23783)
Added command-line argument tpu-use-quic argument.
Changed connection cache to return different connections based on the config.
2022-03-21 09:31:37 -07:00
Pankaj Garg
5d03b188c8 Use QUIC client in voting service (#23713)
* Use QUIC client in voting service

* guard quic-client usage with a flag

* add measure to time the quic client

* move time measure outside if block

* remove quic vs UDP flag from voting service
2022-03-21 09:10:16 -07:00
Jeff Washington (jwash)
965ab9186d AcctIdx: fix infinite loop (#23806) 2022-03-21 10:58:36 -05:00
164 changed files with 2858 additions and 2770 deletions

View File

@@ -97,14 +97,6 @@ pull_request_rules:
label: label:
add: add:
- automerge - automerge
- name: v1.8 backport
conditions:
- label=v1.8
actions:
backport:
ignore_conflicts: true
branches:
- v1.8
- name: v1.9 backport - name: v1.9 backport
conditions: conditions:
- label=v1.9 - label=v1.9
@@ -113,6 +105,14 @@ pull_request_rules:
ignore_conflicts: true ignore_conflicts: true
branches: branches:
- v1.9 - v1.9
- name: v1.10 backport
conditions:
- label=v1.10
actions:
backport:
ignore_conflicts: true
branches:
- v1.10
commands_restrictions: commands_restrictions:
# The author of copied PRs is the Mergify user. # The author of copied PRs is the Mergify user.

1536
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-account-decoder" name = "solana-account-decoder"
version = "1.10.4" version = "1.11.0"
description = "Solana account decoder" description = "Solana account decoder"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -19,9 +19,9 @@ lazy_static = "1.4.0"
serde = "1.0.136" serde = "1.0.136"
serde_derive = "1.0.103" serde_derive = "1.0.103"
serde_json = "1.0.79" serde_json = "1.0.79"
solana-config-program = { path = "../programs/config", version = "=1.10.4" } solana-config-program = { path = "../programs/config", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
spl-token = { version = "=3.2.0", features = ["no-entrypoint"] } spl-token = { version = "=3.2.0", features = ["no-entrypoint"] }
thiserror = "1.0" thiserror = "1.0"
zstd = "0.11.1" zstd = "0.11.1"

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-accounts-bench" name = "solana-accounts-bench"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -12,11 +12,11 @@ publish = false
clap = "2.33.1" clap = "2.33.1"
log = "0.4.14" log = "0.4.14"
rayon = "1.5.1" rayon = "1.5.1"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-accounts-cluster-bench" name = "solana-accounts-cluster-bench"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -13,25 +13,25 @@ clap = "2.33.1"
log = "0.4.14" log = "0.4.14"
rand = "0.7.0" rand = "0.7.0"
rayon = "1.5.1" rayon = "1.5.1"
solana-account-decoder = { path = "../account-decoder", version = "=1.10.4" } solana-account-decoder = { path = "../account-decoder", version = "=1.11.0" }
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-faucet = { path = "../faucet", version = "=1.10.4" } solana-faucet = { path = "../faucet", version = "=1.11.0" }
solana-gossip = { path = "../gossip", version = "=1.10.4" } solana-gossip = { path = "../gossip", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-net-utils = { path = "../net-utils", version = "=1.10.4" } solana-net-utils = { path = "../net-utils", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
spl-token = { version = "=3.2.0", features = ["no-entrypoint"] } spl-token = { version = "=3.2.0", features = ["no-entrypoint"] }
[dev-dependencies] [dev-dependencies]
solana-core = { path = "../core", version = "=1.10.4" } solana-core = { path = "../core", version = "=1.11.0" }
solana-local-cluster = { path = "../local-cluster", version = "=1.10.4" } solana-local-cluster = { path = "../local-cluster", version = "=1.11.0" }
solana-test-validator = { path = "../test-validator", version = "=1.10.4" } solana-test-validator = { path = "../test-validator", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-banking-bench" name = "solana-banking-bench"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -14,17 +14,17 @@ crossbeam-channel = "0.5"
log = "0.4.14" log = "0.4.14"
rand = "0.7.0" rand = "0.7.0"
rayon = "1.5.1" rayon = "1.5.1"
solana-core = { path = "../core", version = "=1.10.4" } solana-core = { path = "../core", version = "=1.11.0" }
solana-gossip = { path = "../gossip", version = "=1.10.4" } solana-gossip = { path = "../gossip", version = "=1.11.0" }
solana-ledger = { path = "../ledger", version = "=1.10.4" } solana-ledger = { path = "../ledger", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-poh = { path = "../poh", version = "=1.10.4" } solana-poh = { path = "../poh", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-banks-client" name = "solana-banks-client"
version = "1.10.4" version = "1.11.0"
description = "Solana banks client" description = "Solana banks client"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -12,17 +12,17 @@ edition = "2021"
[dependencies] [dependencies]
borsh = "0.9.3" borsh = "0.9.3"
futures = "0.3" futures = "0.3"
solana-banks-interface = { path = "../banks-interface", version = "=1.10.4" } solana-banks-interface = { path = "../banks-interface", version = "=1.11.0" }
solana-program = { path = "../sdk/program", version = "=1.10.4" } solana-program = { path = "../sdk/program", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
tarpc = { version = "0.27.2", features = ["full"] } tarpc = { version = "0.27.2", features = ["full"] }
thiserror = "1.0" thiserror = "1.0"
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }
tokio-serde = { version = "0.8", features = ["bincode"] } tokio-serde = { version = "0.8", features = ["bincode"] }
[dev-dependencies] [dev-dependencies]
solana-banks-server = { path = "../banks-server", version = "=1.10.4" } solana-banks-server = { path = "../banks-server", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-banks-interface" name = "solana-banks-interface"
version = "1.10.4" version = "1.11.0"
description = "Solana banks RPC interface" description = "Solana banks RPC interface"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -11,7 +11,7 @@ edition = "2021"
[dependencies] [dependencies]
serde = { version = "1.0.136", features = ["derive"] } serde = { version = "1.0.136", features = ["derive"] }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
tarpc = { version = "0.27.2", features = ["full"] } tarpc = { version = "0.27.2", features = ["full"] }
[lib] [lib]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-banks-server" name = "solana-banks-server"
version = "1.10.4" version = "1.11.0"
description = "Solana banks server" description = "Solana banks server"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -13,10 +13,10 @@ edition = "2021"
bincode = "1.3.3" bincode = "1.3.3"
crossbeam-channel = "0.5" crossbeam-channel = "0.5"
futures = "0.3" futures = "0.3"
solana-banks-interface = { path = "../banks-interface", version = "=1.10.4" } solana-banks-interface = { path = "../banks-interface", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-send-transaction-service = { path = "../send-transaction-service", version = "=1.10.4" } solana-send-transaction-service = { path = "../send-transaction-service", version = "=1.11.0" }
tarpc = { version = "0.27.2", features = ["full"] } tarpc = { version = "0.27.2", features = ["full"] }
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }
tokio-serde = { version = "0.8", features = ["bincode"] } tokio-serde = { version = "0.8", features = ["bincode"] }

View File

@@ -24,7 +24,7 @@ use {
transaction::{self, SanitizedTransaction, Transaction}, transaction::{self, SanitizedTransaction, Transaction},
}, },
solana_send_transaction_service::{ solana_send_transaction_service::{
send_transaction_service::{SendTransactionService, TransactionInfo}, send_transaction_service::{SendTransactionService, TransactionInfo, DEFAULT_TPU_USE_QUIC},
tpu_info::NullTpuInfo, tpu_info::NullTpuInfo,
}, },
std::{ std::{
@@ -399,6 +399,7 @@ pub async fn start_tcp_server(
receiver, receiver,
5_000, 5_000,
0, 0,
DEFAULT_TPU_USE_QUIC,
); );
let server = BanksServer::new( let server = BanksServer::new(

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-bench-streamer" name = "solana-bench-streamer"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -11,9 +11,9 @@ publish = false
[dependencies] [dependencies]
clap = "2.33.1" clap = "2.33.1"
crossbeam-channel = "0.5" crossbeam-channel = "0.5"
solana-net-utils = { path = "../net-utils", version = "=1.10.4" } solana-net-utils = { path = "../net-utils", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-bench-tps" name = "solana-bench-tps"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -15,23 +15,23 @@ log = "0.4.14"
rayon = "1.5.1" rayon = "1.5.1"
serde_json = "1.0.79" serde_json = "1.0.79"
serde_yaml = "0.8.23" serde_yaml = "0.8.23"
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-core = { path = "../core", version = "=1.10.4" } solana-core = { path = "../core", version = "=1.11.0" }
solana-faucet = { path = "../faucet", version = "=1.10.4" } solana-faucet = { path = "../faucet", version = "=1.11.0" }
solana-genesis = { path = "../genesis", version = "=1.10.4" } solana-genesis = { path = "../genesis", version = "=1.11.0" }
solana-gossip = { path = "../gossip", version = "=1.10.4" } solana-gossip = { path = "../gossip", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-net-utils = { path = "../net-utils", version = "=1.10.4" } solana-net-utils = { path = "../net-utils", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
[dev-dependencies] [dev-dependencies]
serial_test = "0.6.0" serial_test = "0.6.0"
solana-local-cluster = { path = "../local-cluster", version = "=1.10.4" } solana-local-cluster = { path = "../local-cluster", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bloom" name = "solana-bloom"
version = "1.10.4" version = "1.11.0"
description = "Solana bloom filter" description = "Solana bloom filter"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -17,9 +17,9 @@ rand = "0.7.0"
rayon = "1.5.1" rayon = "1.5.1"
serde = { version = "1.0.136", features = ["rc"] } serde = { version = "1.0.136", features = ["rc"] }
serde_derive = "1.0.103" serde_derive = "1.0.103"
solana-frozen-abi = { path = "../frozen-abi", version = "=1.10.4" } solana-frozen-abi = { path = "../frozen-abi", version = "=1.11.0" }
solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.10.4" } solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bucket-map" name = "solana-bucket-map"
version = "1.10.4" version = "1.11.0"
description = "solana-bucket-map" description = "solana-bucket-map"
homepage = "https://solana.com/" homepage = "https://solana.com/"
documentation = "https://docs.rs/solana-bucket-map" documentation = "https://docs.rs/solana-bucket-map"
@@ -15,14 +15,14 @@ log = { version = "0.4.11" }
memmap2 = "0.5.3" memmap2 = "0.5.3"
modular-bitfield = "0.11.2" modular-bitfield = "0.11.2"
rand = "0.7.0" rand = "0.7.0"
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
tempfile = "3.3.0" tempfile = "3.3.0"
[dev-dependencies] [dev-dependencies]
fs_extra = "1.2.0" fs_extra = "1.2.0"
rayon = "1.5.0" rayon = "1.5.0"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-clap-utils" name = "solana-clap-utils"
version = "1.10.4" version = "1.11.0"
description = "Solana utilities for the clap" description = "Solana utilities for the clap"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -13,9 +13,9 @@ edition = "2021"
chrono = "0.4" chrono = "0.4"
clap = "2.33.0" clap = "2.33.0"
rpassword = "6.0" rpassword = "6.0"
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-remote-wallet = { path = "../remote-wallet", version = "=1.10.4", default-features = false } solana-remote-wallet = { path = "../remote-wallet", version = "=1.11.0", default-features = false }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
thiserror = "1.0.30" thiserror = "1.0.30"
tiny-bip39 = "0.8.2" tiny-bip39 = "0.8.2"
uriparse = "0.6.3" uriparse = "0.6.3"

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-cli-config" name = "solana-cli-config"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-cli-output" name = "solana-cli-output"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -19,12 +19,12 @@ humantime = "2.0.1"
indicatif = "0.16.2" indicatif = "0.16.2"
serde = "1.0.136" serde = "1.0.136"
serde_json = "1.0.79" serde_json = "1.0.79"
solana-account-decoder = { path = "../account-decoder", version = "=1.10.4" } solana-account-decoder = { path = "../account-decoder", version = "=1.11.0" }
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
spl-memo = { version = "=3.0.1", features = ["no-entrypoint"] } spl-memo = { version = "=3.0.1", features = ["no-entrypoint"] }
[dev-dependencies] [dev-dependencies]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-cli" name = "solana-cli"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -27,29 +27,29 @@ semver = "1.0.6"
serde = "1.0.136" serde = "1.0.136"
serde_derive = "1.0.103" serde_derive = "1.0.103"
serde_json = "1.0.79" serde_json = "1.0.79"
solana-account-decoder = { path = "../account-decoder", version = "=1.10.4" } solana-account-decoder = { path = "../account-decoder", version = "=1.11.0" }
solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "=1.10.4" } solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "=1.11.0" }
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-cli-config = { path = "../cli-config", version = "=1.10.4" } solana-cli-config = { path = "../cli-config", version = "=1.11.0" }
solana-cli-output = { path = "../cli-output", version = "=1.10.4" } solana-cli-output = { path = "../cli-output", version = "=1.11.0" }
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-config-program = { path = "../programs/config", version = "=1.10.4" } solana-config-program = { path = "../programs/config", version = "=1.11.0" }
solana-faucet = { path = "../faucet", version = "=1.10.4" } solana-faucet = { path = "../faucet", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-program-runtime = { path = "../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../program-runtime", version = "=1.11.0" }
solana-remote-wallet = { path = "../remote-wallet", version = "=1.10.4" } solana-remote-wallet = { path = "../remote-wallet", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
solana_rbpf = "=0.2.24" solana_rbpf = "=0.2.24"
spl-memo = { version = "=3.0.1", features = ["no-entrypoint"] } spl-memo = { version = "=3.0.1", features = ["no-entrypoint"] }
thiserror = "1.0.30" thiserror = "1.0.30"
tiny-bip39 = "0.8.2" tiny-bip39 = "0.8.2"
[dev-dependencies] [dev-dependencies]
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-test-validator = { path = "../test-validator", version = "=1.10.4" } solana-test-validator = { path = "../test-validator", version = "=1.11.0" }
tempfile = "3.3.0" tempfile = "3.3.0"
[[bin]] [[bin]]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-client-test" name = "solana-client-test"
version = "1.10.4" version = "1.11.0"
description = "Solana RPC Test" description = "Solana RPC Test"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -14,25 +14,25 @@ publish = false
futures-util = "0.3.21" futures-util = "0.3.21"
serde_json = "1.0.79" serde_json = "1.0.79"
serial_test = "0.6.0" serial_test = "0.6.0"
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-ledger = { path = "../ledger", version = "=1.10.4" } solana-ledger = { path = "../ledger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-merkle-tree = { path = "../merkle-tree", version = "=1.10.4" } solana-merkle-tree = { path = "../merkle-tree", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.10.4" } solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.11.0" }
solana-rpc = { path = "../rpc", version = "=1.10.4" } solana-rpc = { path = "../rpc", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-test-validator = { path = "../test-validator", version = "=1.10.4" } solana-test-validator = { path = "../test-validator", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
systemstat = "0.1.10" systemstat = "0.1.10"
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }
[dev-dependencies] [dev-dependencies]
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-client" name = "solana-client"
version = "1.10.4" version = "1.11.0"
description = "Solana Client" description = "Solana Client"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -35,15 +35,15 @@ semver = "1.0.6"
serde = "1.0.136" serde = "1.0.136"
serde_derive = "1.0.103" serde_derive = "1.0.103"
serde_json = "1.0.79" serde_json = "1.0.79"
solana-account-decoder = { path = "../account-decoder", version = "=1.10.4" } solana-account-decoder = { path = "../account-decoder", version = "=1.11.0" }
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-faucet = { path = "../faucet", version = "=1.10.4" } solana-faucet = { path = "../faucet", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-net-utils = { path = "../net-utils", version = "=1.10.4" } solana-net-utils = { path = "../net-utils", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
thiserror = "1.0" thiserror = "1.0"
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }
tokio-stream = "0.1.8" tokio-stream = "0.1.8"
@@ -54,7 +54,7 @@ url = "2.2.2"
[dev-dependencies] [dev-dependencies]
assert_matches = "1.5.0" assert_matches = "1.5.0"
jsonrpc-http-server = "18.0.0" jsonrpc-http-server = "18.0.0"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,5 +1,7 @@
use { use {
crate::{tpu_connection::TpuConnection, udp_client::UdpTpuConnection}, crate::{
quic_client::QuicTpuConnection, tpu_connection::TpuConnection, udp_client::UdpTpuConnection,
},
lazy_static::lazy_static, lazy_static::lazy_static,
std::{ std::{
collections::{hash_map::Entry, BTreeMap, HashMap}, collections::{hash_map::Entry, BTreeMap, HashMap},
@@ -23,6 +25,7 @@ struct ConnMap {
// that seems non-"Rust-y" and low bang/buck. This is still pretty terrible though... // that seems non-"Rust-y" and low bang/buck. This is still pretty terrible though...
last_used_times: BTreeMap<u64, SocketAddr>, last_used_times: BTreeMap<u64, SocketAddr>,
ticks: u64, ticks: u64,
use_quic: bool,
} }
impl ConnMap { impl ConnMap {
@@ -31,21 +34,31 @@ impl ConnMap {
map: HashMap::new(), map: HashMap::new(),
last_used_times: BTreeMap::new(), last_used_times: BTreeMap::new(),
ticks: 0, ticks: 0,
use_quic: false,
} }
} }
pub fn set_use_quic(&mut self, use_quic: bool) {
self.use_quic = use_quic;
}
} }
lazy_static! { lazy_static! {
static ref CONNECTION_MAP: Mutex<ConnMap> = Mutex::new(ConnMap::new()); static ref CONNECTION_MAP: Mutex<ConnMap> = Mutex::new(ConnMap::new());
} }
pub fn set_use_quic(use_quic: bool) {
let mut map = (*CONNECTION_MAP).lock().unwrap();
map.set_use_quic(use_quic);
}
#[allow(dead_code)] #[allow(dead_code)]
// TODO: see https://github.com/solana-labs/solana/issues/23661 // TODO: see https://github.com/solana-labs/solana/issues/23661
// remove lazy_static and optimize and refactor this // remove lazy_static and optimize and refactor this
pub fn get_connection(addr: &SocketAddr) -> Arc<dyn TpuConnection + 'static + Sync + Send> { pub fn get_connection(addr: &SocketAddr) -> Arc<dyn TpuConnection + 'static + Sync + Send> {
let mut map = (*CONNECTION_MAP).lock().unwrap(); let mut map = (*CONNECTION_MAP).lock().unwrap();
let ticks = map.ticks; let ticks = map.ticks;
let use_quic = map.use_quic;
let (conn, target_ticks) = match map.map.entry(*addr) { let (conn, target_ticks) = match map.map.entry(*addr) {
Entry::Occupied(mut entry) => { Entry::Occupied(mut entry) => {
let mut pair = entry.get_mut(); let mut pair = entry.get_mut();
@@ -57,12 +70,15 @@ pub fn get_connection(addr: &SocketAddr) -> Arc<dyn TpuConnection + 'static + Sy
let send_socket = UdpSocket::bind("0.0.0.0:0").unwrap(); let send_socket = UdpSocket::bind("0.0.0.0:0").unwrap();
// TODO: see https://github.com/solana-labs/solana/issues/23659 // TODO: see https://github.com/solana-labs/solana/issues/23659
// make it configurable (e.g. via the command line) whether to use UDP or Quic // make it configurable (e.g. via the command line) whether to use UDP or Quic
let conn = Arc::new(UdpTpuConnection::new(send_socket, *addr));
let conn: Arc<dyn TpuConnection + 'static + Sync + Send> = if use_quic {
Arc::new(QuicTpuConnection::new(send_socket, *addr))
} else {
Arc::new(UdpTpuConnection::new(send_socket, *addr))
};
entry.insert((conn.clone(), ticks)); entry.insert((conn.clone(), ticks));
( (conn, ticks)
conn as Arc<dyn TpuConnection + 'static + Sync + Send>,
ticks,
)
} }
}; };

View File

@@ -7,10 +7,8 @@ use {
futures::future::join_all, futures::future::join_all,
itertools::Itertools, itertools::Itertools,
quinn::{ClientConfig, Endpoint, EndpointConfig, NewConnection, WriteError}, quinn::{ClientConfig, Endpoint, EndpointConfig, NewConnection, WriteError},
rayon::iter::{IntoParallelIterator, ParallelIterator},
solana_sdk::{ solana_sdk::{
quic::{QUIC_MAX_CONCURRENT_STREAMS, QUIC_PORT_OFFSET}, quic::{QUIC_MAX_CONCURRENT_STREAMS, QUIC_PORT_OFFSET},
transaction::Transaction,
transport::Result as TransportResult, transport::Result as TransportResult,
}, },
std::{ std::{
@@ -65,21 +63,19 @@ impl TpuConnection for QuicTpuConnection {
&self.client.addr &self.client.addr
} }
fn send_wire_transaction(&self, data: &[u8]) -> TransportResult<()> { fn send_wire_transaction(&self, wire_transaction: &[u8]) -> TransportResult<()> {
let _guard = self.client.runtime.enter(); let _guard = self.client.runtime.enter();
let send_buffer = self.client.send_buffer(data); let send_buffer = self.client.send_buffer(wire_transaction);
self.client.runtime.block_on(send_buffer)?; self.client.runtime.block_on(send_buffer)?;
Ok(()) Ok(())
} }
fn send_batch(&self, transactions: &[Transaction]) -> TransportResult<()> { fn send_wire_transaction_batch(
let buffers = transactions &self,
.into_par_iter() wire_transaction_batch: &[Vec<u8>],
.map(|tx| bincode::serialize(&tx).expect("serialize Transaction in send_batch")) ) -> TransportResult<()> {
.collect::<Vec<_>>();
let _guard = self.client.runtime.enter(); let _guard = self.client.runtime.enter();
let send_batch = self.client.send_batch(&buffers); let send_batch = self.client.send_batch(wire_transaction_batch);
self.client.runtime.block_on(send_batch)?; self.client.runtime.block_on(send_batch)?;
Ok(()) Ok(())
} }

View File

@@ -24,7 +24,7 @@ use {
signers::Signers, signers::Signers,
system_instruction, system_instruction,
timing::duration_as_ms, timing::duration_as_ms,
transaction::{self, Transaction}, transaction::{self, Transaction, VersionedTransaction},
transport::Result as TransportResult, transport::Result as TransportResult,
}, },
std::{ std::{
@@ -215,10 +215,13 @@ impl<C: 'static + TpuConnection> ThinClient<C> {
let mut num_confirmed = 0; let mut num_confirmed = 0;
let mut wait_time = MAX_PROCESSING_AGE; let mut wait_time = MAX_PROCESSING_AGE;
// resend the same transaction until the transaction has no chance of succeeding // resend the same transaction until the transaction has no chance of succeeding
let wire_transaction =
bincode::serialize(&transaction).expect("transaction serialization failed");
while now.elapsed().as_secs() < wait_time as u64 { while now.elapsed().as_secs() < wait_time as u64 {
if num_confirmed == 0 { if num_confirmed == 0 {
// Send the transaction if there has been no confirmation (e.g. the first time) // Send the transaction if there has been no confirmation (e.g. the first time)
self.tpu_connection().send_transaction(transaction)?; self.tpu_connection()
.send_wire_transaction(&wire_transaction)?;
} }
if let Ok(confirmed_blocks) = self.poll_for_signature_confirmation( if let Ok(confirmed_blocks) = self.poll_for_signature_confirmation(
@@ -601,12 +604,17 @@ impl<C: 'static + TpuConnection> SyncClient for ThinClient<C> {
impl<C: 'static + TpuConnection> AsyncClient for ThinClient<C> { impl<C: 'static + TpuConnection> AsyncClient for ThinClient<C> {
fn async_send_transaction(&self, transaction: Transaction) -> TransportResult<Signature> { fn async_send_transaction(&self, transaction: Transaction) -> TransportResult<Signature> {
self.tpu_connection().send_transaction(&transaction)?; let transaction = VersionedTransaction::from(transaction);
self.tpu_connection()
.serialize_and_send_transaction(&transaction)?;
Ok(transaction.signatures[0]) Ok(transaction.signatures[0])
} }
fn async_send_batch(&self, transactions: Vec<Transaction>) -> TransportResult<()> { fn async_send_batch(&self, transactions: Vec<Transaction>) -> TransportResult<()> {
self.tpu_connection().send_batch(&transactions) let batch: Vec<VersionedTransaction> = transactions.into_iter().map(Into::into).collect();
self.tpu_connection()
.par_serialize_and_send_transaction_batch(&batch)?;
Ok(())
} }
fn async_send_message<T: Signers>( fn async_send_message<T: Signers>(

View File

@@ -1,5 +1,6 @@
use { use {
solana_sdk::{transaction::Transaction, transport::Result as TransportResult}, rayon::iter::{IntoParallelRefIterator, ParallelIterator},
solana_sdk::{transaction::VersionedTransaction, transport::Result as TransportResult},
std::net::{SocketAddr, UdpSocket}, std::net::{SocketAddr, UdpSocket},
}; };
@@ -10,12 +11,35 @@ pub trait TpuConnection {
fn tpu_addr(&self) -> &SocketAddr; fn tpu_addr(&self) -> &SocketAddr;
fn send_transaction(&self, tx: &Transaction) -> TransportResult<()> { fn serialize_and_send_transaction(
let data = bincode::serialize(tx).expect("serialize Transaction in send_transaction"); &self,
self.send_wire_transaction(&data) transaction: &VersionedTransaction,
) -> TransportResult<()> {
let wire_transaction =
bincode::serialize(transaction).expect("serialize Transaction in send_batch");
self.send_wire_transaction(&wire_transaction)
} }
fn send_wire_transaction(&self, data: &[u8]) -> TransportResult<()>; fn send_wire_transaction(&self, wire_transaction: &[u8]) -> TransportResult<()>;
fn send_batch(&self, transactions: &[Transaction]) -> TransportResult<()>; fn par_serialize_and_send_transaction_batch(
&self,
transaction_batch: &[VersionedTransaction],
) -> TransportResult<()> {
let wire_transaction_batch: Vec<_> = transaction_batch
.par_iter()
.map(|tx| bincode::serialize(&tx).expect("serialize Transaction in send_batch"))
.collect();
self.send_wire_transaction_batch(&wire_transaction_batch)
}
fn send_wire_transaction_batch(
&self,
wire_transaction_batch: &[Vec<u8>],
) -> TransportResult<()> {
for wire_transaction in wire_transaction_batch {
self.send_wire_transaction(wire_transaction)?;
}
Ok(())
}
} }

View File

@@ -3,7 +3,7 @@
use { use {
crate::tpu_connection::TpuConnection, crate::tpu_connection::TpuConnection,
solana_sdk::{transaction::Transaction, transport::Result as TransportResult}, solana_sdk::transport::Result as TransportResult,
std::net::{SocketAddr, UdpSocket}, std::net::{SocketAddr, UdpSocket},
}; };
@@ -24,19 +24,8 @@ impl TpuConnection for UdpTpuConnection {
&self.addr &self.addr
} }
fn send_wire_transaction(&self, data: &[u8]) -> TransportResult<()> { fn send_wire_transaction(&self, wire_transaction: &[u8]) -> TransportResult<()> {
self.socket.send_to(data, self.addr)?; self.socket.send_to(wire_transaction, self.addr)?;
Ok(())
}
fn send_batch(&self, transactions: &[Transaction]) -> TransportResult<()> {
transactions
.iter()
.map(|tx| bincode::serialize(&tx).expect("serialize Transaction in send_batch"))
.try_for_each(|buff| -> TransportResult<()> {
self.socket.send_to(&buff, self.addr)?;
Ok(())
})?;
Ok(()) Ok(())
} }
} }

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "solana-core" name = "solana-core"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
documentation = "https://docs.rs/solana-core" documentation = "https://docs.rs/solana-core"
readme = "../README.md" readme = "../README.md"
@@ -33,30 +33,30 @@ rayon = "1.5.1"
retain_mut = "0.1.7" retain_mut = "0.1.7"
serde = "1.0.136" serde = "1.0.136"
serde_derive = "1.0.103" serde_derive = "1.0.103"
solana-address-lookup-table-program = { path = "../programs/address-lookup-table", version = "=1.10.4" } solana-address-lookup-table-program = { path = "../programs/address-lookup-table", version = "=1.11.0" }
solana-bloom = { path = "../bloom", version = "=1.10.4" } solana-bloom = { path = "../bloom", version = "=1.11.0" }
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-entry = { path = "../entry", version = "=1.10.4" } solana-entry = { path = "../entry", version = "=1.11.0" }
solana-frozen-abi = { path = "../frozen-abi", version = "=1.10.4" } solana-frozen-abi = { path = "../frozen-abi", version = "=1.11.0" }
solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.10.4" } solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.11.0" }
solana-geyser-plugin-manager = { path = "../geyser-plugin-manager", version = "=1.10.4" } solana-geyser-plugin-manager = { path = "../geyser-plugin-manager", version = "=1.11.0" }
solana-gossip = { path = "../gossip", version = "=1.10.4" } solana-gossip = { path = "../gossip", version = "=1.11.0" }
solana-ledger = { path = "../ledger", version = "=1.10.4" } solana-ledger = { path = "../ledger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-net-utils = { path = "../net-utils", version = "=1.10.4" } solana-net-utils = { path = "../net-utils", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-poh = { path = "../poh", version = "=1.10.4" } solana-poh = { path = "../poh", version = "=1.11.0" }
solana-program-runtime = { path = "../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../program-runtime", version = "=1.11.0" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.10.4" } solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.11.0" }
solana-replica-lib = { path = "../replica-lib", version = "=1.10.4" } solana-replica-lib = { path = "../replica-lib", version = "=1.11.0" }
solana-rpc = { path = "../rpc", version = "=1.10.4" } solana-rpc = { path = "../rpc", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-send-transaction-service = { path = "../send-transaction-service", version = "=1.10.4" } solana-send-transaction-service = { path = "../send-transaction-service", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
sys-info = "0.9.1" sys-info = "0.9.1"
tempfile = "3.3.0" tempfile = "3.3.0"
thiserror = "1.0" thiserror = "1.0"
@@ -69,10 +69,10 @@ raptorq = "1.6.5"
reqwest = { version = "0.11.10", default-features = false, features = ["blocking", "rustls-tls", "json"] } reqwest = { version = "0.11.10", default-features = false, features = ["blocking", "rustls-tls", "json"] }
serde_json = "1.0.79" serde_json = "1.0.79"
serial_test = "0.6.0" serial_test = "0.6.0"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-program-runtime = { path = "../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../program-runtime", version = "=1.11.0" }
solana-stake-program = { path = "../programs/stake", version = "=1.10.4" } solana-stake-program = { path = "../programs/stake", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
static_assertions = "1.1.0" static_assertions = "1.1.0"
systemstat = "0.1.10" systemstat = "0.1.10"

View File

@@ -1,5 +1,5 @@
//! The `banking_stage` processes Transaction messages. It is intended to be used //! The `banking_stage` processes Transaction messages. It is intended to be used
//! to contruct a software pipeline. The stage uses all available CPU cores and //! to construct a software pipeline. The stage uses all available CPU cores and
//! can do its processing in parallel with signature verification on the GPU. //! can do its processing in parallel with signature verification on the GPU.
use { use {
crate::{ crate::{
@@ -194,7 +194,7 @@ impl BankingStageStats {
} }
fn report(&mut self, report_interval_ms: u64) { fn report(&mut self, report_interval_ms: u64) {
// skip repoting metrics if stats is empty // skip reporting metrics if stats is empty
if self.is_empty() { if self.is_empty() {
return; return;
} }
@@ -700,14 +700,11 @@ impl BankingStage {
// `original_unprocessed_indexes` must have remaining packets to process // `original_unprocessed_indexes` must have remaining packets to process
// if not yet processed. // if not yet processed.
assert!(Self::packet_has_more_unprocessed_transactions( assert!(!original_unprocessed_indexes.is_empty());
&original_unprocessed_indexes
));
true true
} }
} }
}); });
proc_start.stop(); proc_start.stop();
debug!( debug!(
@@ -2015,7 +2012,7 @@ impl BankingStage {
banking_stage_stats: &mut BankingStageStats, banking_stage_stats: &mut BankingStageStats,
slot_metrics_tracker: &mut LeaderSlotMetricsTracker, slot_metrics_tracker: &mut LeaderSlotMetricsTracker,
) { ) {
if Self::packet_has_more_unprocessed_transactions(&packet_indexes) { if !packet_indexes.is_empty() {
if unprocessed_packet_batches.len() >= batch_limit { if unprocessed_packet_batches.len() >= batch_limit {
*dropped_packet_batches_count += 1; *dropped_packet_batches_count += 1;
if let Some(dropped_batch) = unprocessed_packet_batches.pop_front() { if let Some(dropped_batch) = unprocessed_packet_batches.pop_front() {
@@ -2041,10 +2038,6 @@ impl BankingStage {
} }
} }
fn packet_has_more_unprocessed_transactions(packet_indexes: &[usize]) -> bool {
!packet_indexes.is_empty()
}
pub fn join(self) -> thread::Result<()> { pub fn join(self) -> thread::Result<()> {
for bank_thread_hdl in self.bank_thread_hdls { for bank_thread_hdl in self.bank_thread_hdls {
bank_thread_hdl.join()?; bank_thread_hdl.join()?;

View File

@@ -2001,7 +2001,7 @@ impl ReplayStage {
); );
voting_sender voting_sender
.send(VoteOp::RefreshVote { .send(VoteOp::RefreshVote {
tx: vote_tx, tx: vote_tx.into(),
last_voted_slot, last_voted_slot,
}) })
.unwrap_or_else(|err| warn!("Error: {:?}", err)); .unwrap_or_else(|err| warn!("Error: {:?}", err));
@@ -2044,7 +2044,7 @@ impl ReplayStage {
let tower_slots = tower.tower_slots(); let tower_slots = tower.tower_slots();
voting_sender voting_sender
.send(VoteOp::PushVote { .send(VoteOp::PushVote {
tx: vote_tx, tx: vote_tx.into(),
tower_slots, tower_slots,
saved_tower: SavedTowerVersions::from(saved_tower), saved_tower: SavedTowerVersions::from(saved_tower),
}) })

View File

@@ -1,11 +1,12 @@
use { use {
crate::tower_storage::{SavedTowerVersions, TowerStorage}, crate::tower_storage::{SavedTowerVersions, TowerStorage},
crossbeam_channel::Receiver, crossbeam_channel::Receiver,
solana_client::connection_cache::get_connection,
solana_gossip::cluster_info::ClusterInfo, solana_gossip::cluster_info::ClusterInfo,
solana_measure::measure::Measure, solana_measure::measure::Measure,
solana_poh::poh_recorder::PohRecorder, solana_poh::poh_recorder::PohRecorder,
solana_runtime::bank_forks::BankForks, solana_runtime::bank_forks::BankForks,
solana_sdk::{clock::Slot, transaction::Transaction}, solana_sdk::{clock::Slot, transaction::VersionedTransaction},
std::{ std::{
sync::{Arc, Mutex, RwLock}, sync::{Arc, Mutex, RwLock},
thread::{self, Builder, JoinHandle}, thread::{self, Builder, JoinHandle},
@@ -14,18 +15,18 @@ use {
pub enum VoteOp { pub enum VoteOp {
PushVote { PushVote {
tx: Transaction, tx: VersionedTransaction,
tower_slots: Vec<Slot>, tower_slots: Vec<Slot>,
saved_tower: SavedTowerVersions, saved_tower: SavedTowerVersions,
}, },
RefreshVote { RefreshVote {
tx: Transaction, tx: VersionedTransaction,
last_voted_slot: Slot, last_voted_slot: Slot,
}, },
} }
impl VoteOp { impl VoteOp {
fn tx(&self) -> &Transaction { fn tx(&self) -> &VersionedTransaction {
match self { match self {
VoteOp::PushVote { tx, .. } => tx, VoteOp::PushVote { tx, .. } => tx,
VoteOp::RefreshVote { tx, .. } => tx, VoteOp::RefreshVote { tx, .. } => tx,
@@ -86,18 +87,29 @@ impl VotingService {
} else { } else {
crate::banking_stage::next_leader_tpu(cluster_info, poh_recorder) crate::banking_stage::next_leader_tpu(cluster_info, poh_recorder)
}; };
let _ = cluster_info.send_transaction(vote_op.tx(), target_address);
let mut measure = Measure::start("vote_tx_send-ms");
let target_address = target_address.unwrap_or_else(|| cluster_info.my_contact_info().tpu);
let _ = get_connection(&target_address).serialize_and_send_transaction(vote_op.tx());
measure.stop();
inc_new_counter_info!("vote_tx_send-ms", measure.as_ms() as usize);
match vote_op { match vote_op {
VoteOp::PushVote { VoteOp::PushVote {
tx, tower_slots, .. tx, tower_slots, ..
} => { } => {
// we can safely unwrap here because the vote tx is constructed
// from a legacy transaction in replay stage
let tx = tx.into_legacy_transaction().unwrap();
cluster_info.push_vote(&tower_slots, tx); cluster_info.push_vote(&tower_slots, tx);
} }
VoteOp::RefreshVote { VoteOp::RefreshVote {
tx, tx,
last_voted_slot, last_voted_slot,
} => { } => {
// we can safely unwrap here because the vote tx is constructed
// from a legacy transaction in replay stage
let tx = tx.into_legacy_transaction().unwrap();
cluster_info.refresh_vote(tx, last_voted_slot); cluster_info.refresh_vote(tx, last_voted_slot);
} }
} }

View File

@@ -3059,7 +3059,7 @@ curl http://localhost:8899 -X POST -H "Content-Type: application/json" -d '
Result: Result:
```json ```json
{ "jsonrpc": "2.0", "result": { "solana-core": "1.10.4" }, "id": 1 } { "jsonrpc": "2.0", "result": { "solana-core": "1.11.0" }, "id": 1 }
``` ```
### getVoteAccounts ### getVoteAccounts

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-dos" name = "solana-dos"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -15,18 +15,18 @@ clap = {version = "3.1.5", features = ["derive", "cargo"]}
log = "0.4.14" log = "0.4.14"
rand = "0.7.0" rand = "0.7.0"
serde = "1.0.136" serde = "1.0.136"
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-core = { path = "../core", version = "=1.10.4" } solana-core = { path = "../core", version = "=1.11.0" }
solana-gossip = { path = "../gossip", version = "=1.10.4" } solana-gossip = { path = "../gossip", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-net-utils = { path = "../net-utils", version = "=1.10.4" } solana-net-utils = { path = "../net-utils", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]
[dev-dependencies] [dev-dependencies]
solana-local-cluster = { path = "../local-cluster", version = "=1.10.4" } solana-local-cluster = { path = "../local-cluster", version = "=1.11.0" }

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-download-utils" name = "solana-download-utils"
version = "1.10.4" version = "1.11.0"
description = "Solana Download Utils" description = "Solana Download Utils"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -14,8 +14,8 @@ console = "0.15.0"
indicatif = "0.16.2" indicatif = "0.16.2"
log = "0.4.14" log = "0.4.14"
reqwest = { version = "0.11.10", default-features = false, features = ["blocking", "rustls-tls", "json"] } reqwest = { version = "0.11.10", default-features = false, features = ["blocking", "rustls-tls", "json"] }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-entry" name = "solana-entry"
version = "1.10.4" version = "1.11.0"
description = "Solana Entry" description = "Solana Entry"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -18,16 +18,16 @@ log = "0.4.11"
rand = "0.7.0" rand = "0.7.0"
rayon = "1.5.1" rayon = "1.5.1"
serde = "1.0.136" serde = "1.0.136"
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-merkle-tree = { path = "../merkle-tree", version = "=1.10.4" } solana-merkle-tree = { path = "../merkle-tree", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.10.4" } solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
[dev-dependencies] [dev-dependencies]
matches = "0.1.9" matches = "0.1.9"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-faucet" name = "solana-faucet"
version = "1.10.4" version = "1.11.0"
description = "Solana Faucet" description = "Solana Faucet"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -17,12 +17,12 @@ crossbeam-channel = "0.5"
log = "0.4.14" log = "0.4.14"
serde = "1.0.136" serde = "1.0.136"
serde_derive = "1.0.103" serde_derive = "1.0.103"
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-cli-config = { path = "../cli-config", version = "=1.10.4" } solana-cli-config = { path = "../cli-config", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
spl-memo = { version = "=3.0.1", features = ["no-entrypoint"] } spl-memo = { version = "=3.0.1", features = ["no-entrypoint"] }
thiserror = "1.0" thiserror = "1.0"
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-frozen-abi" name = "solana-frozen-abi"
version = "1.10.4" version = "1.11.0"
description = "Solana Frozen ABI" description = "Solana Frozen ABI"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -18,7 +18,7 @@ serde = "1.0.136"
serde_derive = "1.0.103" serde_derive = "1.0.103"
serde_bytes = "0.11" serde_bytes = "0.11"
sha2 = "0.10.2" sha2 = "0.10.2"
solana-frozen-abi-macro = { path = "macro", version = "=1.10.4" } solana-frozen-abi-macro = { path = "macro", version = "=1.11.0" }
thiserror = "1.0" thiserror = "1.0"
[target.'cfg(not(target_arch = "bpf"))'.dependencies] [target.'cfg(not(target_arch = "bpf"))'.dependencies]
@@ -27,7 +27,7 @@ im = { version = "15.0.0", features = ["rayon", "serde"] }
memmap2 = "0.5.3" memmap2 = "0.5.3"
[target.'cfg(not(target_arch = "bpf"))'.dev-dependencies] [target.'cfg(not(target_arch = "bpf"))'.dev-dependencies]
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[build-dependencies] [build-dependencies]
rustc_version = "0.4" rustc_version = "0.4"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-frozen-abi-macro" name = "solana-frozen-abi-macro"
version = "1.10.4" version = "1.11.0"
description = "Solana Frozen ABI Macro" description = "Solana Frozen ABI Macro"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-genesis-utils" name = "solana-genesis-utils"
version = "1.10.4" version = "1.11.0"
description = "Solana Genesis Utils" description = "Solana Genesis Utils"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,9 +10,9 @@ documentation = "https://docs.rs/solana-download-utils"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-download-utils = { path = "../download-utils", version = "=1.10.4" } solana-download-utils = { path = "../download-utils", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-genesis" name = "solana-genesis"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -15,16 +15,16 @@ clap = "2.33.1"
serde = "1.0.136" serde = "1.0.136"
serde_json = "1.0.79" serde_json = "1.0.79"
serde_yaml = "0.8.23" serde_yaml = "0.8.23"
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-cli-config = { path = "../cli-config", version = "=1.10.4" } solana-cli-config = { path = "../cli-config", version = "=1.11.0" }
solana-entry = { path = "../entry", version = "=1.10.4" } solana-entry = { path = "../entry", version = "=1.11.0" }
solana-ledger = { path = "../ledger", version = "=1.10.4" } solana-ledger = { path = "../ledger", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-stake-program = { path = "../programs/stake", version = "=1.10.4" } solana-stake-program = { path = "../programs/stake", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
tempfile = "3.3.0" tempfile = "3.3.0"
[[bin]] [[bin]]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-geyser-plugin-interface" name = "solana-geyser-plugin-interface"
description = "The Solana Geyser plugin interface." description = "The Solana Geyser plugin interface."
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -11,8 +11,8 @@ documentation = "https://docs.rs/solana-geyser-plugin-interface"
[dependencies] [dependencies]
log = "0.4.11" log = "0.4.11"
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
thiserror = "1.0.30" thiserror = "1.0.30"
[package.metadata.docs.rs] [package.metadata.docs.rs]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-geyser-plugin-manager" name = "solana-geyser-plugin-manager"
description = "The Solana Geyser plugin manager." description = "The Solana Geyser plugin manager."
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -16,13 +16,13 @@ json5 = "0.4.1"
libloading = "0.7.3" libloading = "0.7.3"
log = "0.4.11" log = "0.4.11"
serde_json = "1.0.79" serde_json = "1.0.79"
solana-geyser-plugin-interface = { path = "../geyser-plugin-interface", version = "=1.10.4" } solana-geyser-plugin-interface = { path = "../geyser-plugin-interface", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-rpc = { path = "../rpc", version = "=1.10.4" } solana-rpc = { path = "../rpc", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
thiserror = "1.0.30" thiserror = "1.0.30"
[package.metadata.docs.rs] [package.metadata.docs.rs]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-gossip" name = "solana-gossip"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -27,24 +27,24 @@ rayon = "1.5.1"
serde = "1.0.136" serde = "1.0.136"
serde_bytes = "0.11" serde_bytes = "0.11"
serde_derive = "1.0.103" serde_derive = "1.0.103"
solana-bloom = { path = "../bloom", version = "=1.10.4" } solana-bloom = { path = "../bloom", version = "=1.11.0" }
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-entry = { path = "../entry", version = "=1.10.4" } solana-entry = { path = "../entry", version = "=1.11.0" }
solana-frozen-abi = { path = "../frozen-abi", version = "=1.10.4" } solana-frozen-abi = { path = "../frozen-abi", version = "=1.11.0" }
solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.10.4" } solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.11.0" }
solana-ledger = { path = "../ledger", version = "=1.10.4" } solana-ledger = { path = "../ledger", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-net-utils = { path = "../net-utils", version = "=1.10.4" } solana-net-utils = { path = "../net-utils", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.10.4" } solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
thiserror = "1.0" thiserror = "1.0"
[dev-dependencies] [dev-dependencies]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-install" name = "solana-install"
description = "The solana cluster software installer" description = "The solana cluster software installer"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -26,12 +26,12 @@ reqwest = { version = "0.11.10", default-features = false, features = ["blocking
semver = "1.0.6" semver = "1.0.6"
serde = { version = "1.0.136", features = ["derive"] } serde = { version = "1.0.136", features = ["derive"] }
serde_yaml = "0.8.23" serde_yaml = "0.8.23"
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-config-program = { path = "../programs/config", version = "=1.10.4" } solana-config-program = { path = "../programs/config", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
tar = "0.4.38" tar = "0.4.38"
tempfile = "3.3.0" tempfile = "3.3.0"
url = "2.2.2" url = "2.2.2"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-keygen" name = "solana-keygen"
version = "1.10.4" version = "1.11.0"
description = "Solana key generation utility" description = "Solana key generation utility"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -14,11 +14,11 @@ bs58 = "0.4.0"
clap = "2.33" clap = "2.33"
dirs-next = "2.0.0" dirs-next = "2.0.0"
num_cpus = "1.13.1" num_cpus = "1.13.1"
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-cli-config = { path = "../cli-config", version = "=1.10.4" } solana-cli-config = { path = "../cli-config", version = "=1.11.0" }
solana-remote-wallet = { path = "../remote-wallet", version = "=1.10.4" } solana-remote-wallet = { path = "../remote-wallet", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
tiny-bip39 = "0.8.2" tiny-bip39 = "0.8.2"
[[bin]] [[bin]]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-ledger-tool" name = "solana-ledger-tool"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -21,20 +21,20 @@ log = { version = "0.4.14" }
regex = "1" regex = "1"
serde = { version = "1.0", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0.79" serde_json = "1.0.79"
solana-clap-utils = { path = "../clap-utils", version = "=1.10.4" } solana-clap-utils = { path = "../clap-utils", version = "=1.11.0" }
solana-cli-output = { path = "../cli-output", version = "=1.10.4" } solana-cli-output = { path = "../cli-output", version = "=1.11.0" }
solana-core = { path = "../core", version = "=1.10.4" } solana-core = { path = "../core", version = "=1.11.0" }
solana-entry = { path = "../entry", version = "=1.10.4" } solana-entry = { path = "../entry", version = "=1.11.0" }
solana-ledger = { path = "../ledger", version = "=1.10.4" } solana-ledger = { path = "../ledger", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-stake-program = { path = "../programs/stake", version = "=1.10.4" } solana-stake-program = { path = "../programs/stake", version = "=1.11.0" }
solana-storage-bigtable = { path = "../storage-bigtable", version = "=1.10.4" } solana-storage-bigtable = { path = "../storage-bigtable", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }
[target.'cfg(not(target_env = "msvc"))'.dependencies] [target.'cfg(not(target_env = "msvc"))'.dependencies]

View File

@@ -34,8 +34,9 @@ async fn upload(
starting_slot: Slot, starting_slot: Slot,
ending_slot: Option<Slot>, ending_slot: Option<Slot>,
force_reupload: bool, force_reupload: bool,
config: solana_storage_bigtable::LedgerStorageConfig,
) -> Result<(), Box<dyn std::error::Error>> { ) -> Result<(), Box<dyn std::error::Error>> {
let bigtable = solana_storage_bigtable::LedgerStorage::new(false, None, None) let bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(config)
.await .await
.map_err(|err| format!("Failed to connect to storage: {:?}", err))?; .map_err(|err| format!("Failed to connect to storage: {:?}", err))?;
@@ -50,17 +51,22 @@ async fn upload(
.await .await
} }
async fn delete_slots(slots: Vec<Slot>, dry_run: bool) -> Result<(), Box<dyn std::error::Error>> { async fn delete_slots(
let read_only = dry_run; slots: Vec<Slot>,
let bigtable = solana_storage_bigtable::LedgerStorage::new(read_only, None, None) config: solana_storage_bigtable::LedgerStorageConfig,
) -> Result<(), Box<dyn std::error::Error>> {
let dry_run = config.read_only;
let bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(config)
.await .await
.map_err(|err| format!("Failed to connect to storage: {:?}", err))?; .map_err(|err| format!("Failed to connect to storage: {:?}", err))?;
solana_ledger::bigtable_delete::delete_confirmed_blocks(bigtable, slots, dry_run).await solana_ledger::bigtable_delete::delete_confirmed_blocks(bigtable, slots, dry_run).await
} }
async fn first_available_block() -> Result<(), Box<dyn std::error::Error>> { async fn first_available_block(
let bigtable = solana_storage_bigtable::LedgerStorage::new(true, None, None).await?; config: solana_storage_bigtable::LedgerStorageConfig,
) -> Result<(), Box<dyn std::error::Error>> {
let bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(config).await?;
match bigtable.get_first_available_block().await? { match bigtable.get_first_available_block().await? {
Some(block) => println!("{}", block), Some(block) => println!("{}", block),
None => println!("No blocks available"), None => println!("No blocks available"),
@@ -69,8 +75,12 @@ async fn first_available_block() -> Result<(), Box<dyn std::error::Error>> {
Ok(()) Ok(())
} }
async fn block(slot: Slot, output_format: OutputFormat) -> Result<(), Box<dyn std::error::Error>> { async fn block(
let bigtable = solana_storage_bigtable::LedgerStorage::new(false, None, None) slot: Slot,
output_format: OutputFormat,
config: solana_storage_bigtable::LedgerStorageConfig,
) -> Result<(), Box<dyn std::error::Error>> {
let bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(config)
.await .await
.map_err(|err| format!("Failed to connect to storage: {:?}", err))?; .map_err(|err| format!("Failed to connect to storage: {:?}", err))?;
@@ -101,8 +111,12 @@ async fn block(slot: Slot, output_format: OutputFormat) -> Result<(), Box<dyn st
Ok(()) Ok(())
} }
async fn blocks(starting_slot: Slot, limit: usize) -> Result<(), Box<dyn std::error::Error>> { async fn blocks(
let bigtable = solana_storage_bigtable::LedgerStorage::new(false, None, None) starting_slot: Slot,
limit: usize,
config: solana_storage_bigtable::LedgerStorageConfig,
) -> Result<(), Box<dyn std::error::Error>> {
let bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(config)
.await .await
.map_err(|err| format!("Failed to connect to storage: {:?}", err))?; .map_err(|err| format!("Failed to connect to storage: {:?}", err))?;
@@ -116,11 +130,10 @@ async fn blocks(starting_slot: Slot, limit: usize) -> Result<(), Box<dyn std::er
async fn compare_blocks( async fn compare_blocks(
starting_slot: Slot, starting_slot: Slot,
limit: usize, limit: usize,
credential_path: String, config: solana_storage_bigtable::LedgerStorageConfig,
ref_config: solana_storage_bigtable::LedgerStorageConfig,
) -> Result<(), Box<dyn std::error::Error>> { ) -> Result<(), Box<dyn std::error::Error>> {
assert!(!credential_path.is_empty()); let owned_bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(config)
let owned_bigtable = solana_storage_bigtable::LedgerStorage::new(false, None, None)
.await .await
.map_err(|err| format!("failed to connect to owned bigtable: {:?}", err))?; .map_err(|err| format!("failed to connect to owned bigtable: {:?}", err))?;
let owned_bigtable_slots = owned_bigtable let owned_bigtable_slots = owned_bigtable
@@ -130,10 +143,9 @@ async fn compare_blocks(
"owned bigtable {} blocks found ", "owned bigtable {} blocks found ",
owned_bigtable_slots.len() owned_bigtable_slots.len()
); );
let reference_bigtable = let reference_bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(ref_config)
solana_storage_bigtable::LedgerStorage::new(false, None, Some(credential_path)) .await
.await .map_err(|err| format!("failed to connect to reference bigtable: {:?}", err))?;
.map_err(|err| format!("failed to connect to reference bigtable: {:?}", err))?;
let reference_bigtable_slots = reference_bigtable let reference_bigtable_slots = reference_bigtable
.get_confirmed_blocks(starting_slot, limit) .get_confirmed_blocks(starting_slot, limit)
@@ -160,8 +172,9 @@ async fn confirm(
signature: &Signature, signature: &Signature,
verbose: bool, verbose: bool,
output_format: OutputFormat, output_format: OutputFormat,
config: solana_storage_bigtable::LedgerStorageConfig,
) -> Result<(), Box<dyn std::error::Error>> { ) -> Result<(), Box<dyn std::error::Error>> {
let bigtable = solana_storage_bigtable::LedgerStorage::new(false, None, None) let bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(config)
.await .await
.map_err(|err| format!("Failed to connect to storage: {:?}", err))?; .map_err(|err| format!("Failed to connect to storage: {:?}", err))?;
@@ -211,8 +224,9 @@ pub async fn transaction_history(
verbose: bool, verbose: bool,
show_transactions: bool, show_transactions: bool,
query_chunk_size: usize, query_chunk_size: usize,
config: solana_storage_bigtable::LedgerStorageConfig,
) -> Result<(), Box<dyn std::error::Error>> { ) -> Result<(), Box<dyn std::error::Error>> {
let bigtable = solana_storage_bigtable::LedgerStorage::new(true, None, None).await?; let bigtable = solana_storage_bigtable::LedgerStorage::new_with_config(config).await?;
let mut loaded_block: Option<(Slot, ConfirmedBlock)> = None; let mut loaded_block: Option<(Slot, ConfirmedBlock)> = None;
while limit > 0 { while limit > 0 {
@@ -308,6 +322,15 @@ impl BigTableSubCommand for App<'_, '_> {
.about("Ledger data on a BigTable instance") .about("Ledger data on a BigTable instance")
.setting(AppSettings::InferSubcommands) .setting(AppSettings::InferSubcommands)
.setting(AppSettings::SubcommandRequiredElseHelp) .setting(AppSettings::SubcommandRequiredElseHelp)
.arg(
Arg::with_name("rpc_bigtable_instance_name")
.global(true)
.long("rpc-bigtable-instance-name")
.takes_value(true)
.value_name("INSTANCE_NAME")
.default_value(solana_storage_bigtable::DEFAULT_INSTANCE_NAME)
.help("Name of the target Bigtable instance")
)
.subcommand( .subcommand(
SubCommand::with_name("upload") SubCommand::with_name("upload")
.about("Upload the ledger to BigTable") .about("Upload the ledger to BigTable")
@@ -417,7 +440,8 @@ impl BigTableSubCommand for App<'_, '_> {
.required(true) .required(true)
.default_value("1000") .default_value("1000")
.help("Maximum number of slots to check"), .help("Maximum number of slots to check"),
).arg( )
.arg(
Arg::with_name("reference_credential") Arg::with_name("reference_credential")
.long("reference-credential") .long("reference-credential")
.short("c") .short("c")
@@ -425,6 +449,14 @@ impl BigTableSubCommand for App<'_, '_> {
.takes_value(true) .takes_value(true)
.required(true) .required(true)
.help("File path for a credential to a reference bigtable"), .help("File path for a credential to a reference bigtable"),
)
.arg(
Arg::with_name("reference_instance_name")
.long("reference-instance-name")
.takes_value(true)
.value_name("INSTANCE_NAME")
.default_value(solana_storage_bigtable::DEFAULT_INSTANCE_NAME)
.help("Name of the reference Bigtable instance to compare to")
), ),
) )
.subcommand( .subcommand(
@@ -521,7 +553,28 @@ pub fn bigtable_process_command(ledger_path: &Path, matches: &ArgMatches<'_>) {
let verbose = matches.is_present("verbose"); let verbose = matches.is_present("verbose");
let output_format = OutputFormat::from_matches(matches, "output_format", verbose); let output_format = OutputFormat::from_matches(matches, "output_format", verbose);
let future = match matches.subcommand() { // this is kinda stupid, but there seems to be a bug in clap when a subcommand
// arg is marked both `global(true)` and `default_value("default_value")`.
// despite the "global", when the arg is specified on the subcommand, its value
// is not propagated down to the (sub)subcommand args, resulting in the default
// value when queried there. similarly, if the arg is specified on the
// (sub)subcommand, the value is not propagated back up to the subcommand args,
// again resulting in the default value. the arg having declared a
// `default_value()` obviates `is_present(...)` tests since they will always
// return true. so we consede and compare against the expected default. :/
let (subcommand, sub_matches) = matches.subcommand();
let on_command = matches
.value_of("rpc_bigtable_instance_name")
.map(|v| v != solana_storage_bigtable::DEFAULT_INSTANCE_NAME)
.unwrap_or(false);
let instance_name = if on_command {
value_t_or_exit!(matches, "rpc_bigtable_instance_name", String)
} else {
let sub_matches = sub_matches.as_ref().unwrap();
value_t_or_exit!(sub_matches, "rpc_bigtable_instance_name", String)
};
let future = match (subcommand, sub_matches) {
("upload", Some(arg_matches)) => { ("upload", Some(arg_matches)) => {
let starting_slot = value_t!(arg_matches, "starting_slot", Slot).unwrap_or(0); let starting_slot = value_t!(arg_matches, "starting_slot", Slot).unwrap_or(0);
let ending_slot = value_t!(arg_matches, "ending_slot", Slot).ok(); let ending_slot = value_t!(arg_matches, "ending_slot", Slot).ok();
@@ -531,41 +584,79 @@ pub fn bigtable_process_command(ledger_path: &Path, matches: &ArgMatches<'_>) {
AccessType::TryPrimaryThenSecondary, AccessType::TryPrimaryThenSecondary,
None, None,
); );
let config = solana_storage_bigtable::LedgerStorageConfig {
read_only: false,
instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
runtime.block_on(upload( runtime.block_on(upload(
blockstore, blockstore,
starting_slot, starting_slot,
ending_slot, ending_slot,
force_reupload, force_reupload,
config,
)) ))
} }
("delete-slots", Some(arg_matches)) => { ("delete-slots", Some(arg_matches)) => {
let slots = values_t_or_exit!(arg_matches, "slots", Slot); let slots = values_t_or_exit!(arg_matches, "slots", Slot);
let dry_run = !arg_matches.is_present("force"); let config = solana_storage_bigtable::LedgerStorageConfig {
runtime.block_on(delete_slots(slots, dry_run)) read_only: !arg_matches.is_present("force"),
instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
runtime.block_on(delete_slots(slots, config))
}
("first-available-block", Some(_arg_matches)) => {
let config = solana_storage_bigtable::LedgerStorageConfig {
read_only: true,
instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
runtime.block_on(first_available_block(config))
} }
("first-available-block", Some(_arg_matches)) => runtime.block_on(first_available_block()),
("block", Some(arg_matches)) => { ("block", Some(arg_matches)) => {
let slot = value_t_or_exit!(arg_matches, "slot", Slot); let slot = value_t_or_exit!(arg_matches, "slot", Slot);
runtime.block_on(block(slot, output_format)) let config = solana_storage_bigtable::LedgerStorageConfig {
read_only: false,
instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
runtime.block_on(block(slot, output_format, config))
} }
("blocks", Some(arg_matches)) => { ("blocks", Some(arg_matches)) => {
let starting_slot = value_t_or_exit!(arg_matches, "starting_slot", Slot); let starting_slot = value_t_or_exit!(arg_matches, "starting_slot", Slot);
let limit = value_t_or_exit!(arg_matches, "limit", usize); let limit = value_t_or_exit!(arg_matches, "limit", usize);
let config = solana_storage_bigtable::LedgerStorageConfig {
read_only: false,
instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
runtime.block_on(blocks(starting_slot, limit)) runtime.block_on(blocks(starting_slot, limit, config))
} }
("compare-blocks", Some(arg_matches)) => { ("compare-blocks", Some(arg_matches)) => {
let starting_slot = value_t_or_exit!(arg_matches, "starting_slot", Slot); let starting_slot = value_t_or_exit!(arg_matches, "starting_slot", Slot);
let limit = value_t_or_exit!(arg_matches, "limit", usize); let limit = value_t_or_exit!(arg_matches, "limit", usize);
let reference_credential_filepath = let config = solana_storage_bigtable::LedgerStorageConfig {
value_t_or_exit!(arg_matches, "reference_credential", String); read_only: false,
instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
let credential_path = Some(value_t_or_exit!(
arg_matches,
"reference_credential",
String
));
let ref_instance_name =
value_t_or_exit!(arg_matches, "reference_instance_name", String);
let ref_config = solana_storage_bigtable::LedgerStorageConfig {
read_only: false,
credential_path,
instance_name: ref_instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
runtime.block_on(compare_blocks( runtime.block_on(compare_blocks(starting_slot, limit, config, ref_config))
starting_slot,
limit,
reference_credential_filepath,
))
} }
("confirm", Some(arg_matches)) => { ("confirm", Some(arg_matches)) => {
let signature = arg_matches let signature = arg_matches
@@ -573,8 +664,13 @@ pub fn bigtable_process_command(ledger_path: &Path, matches: &ArgMatches<'_>) {
.unwrap() .unwrap()
.parse() .parse()
.expect("Invalid signature"); .expect("Invalid signature");
let config = solana_storage_bigtable::LedgerStorageConfig {
read_only: false,
instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
runtime.block_on(confirm(&signature, verbose, output_format)) runtime.block_on(confirm(&signature, verbose, output_format, config))
} }
("transaction-history", Some(arg_matches)) => { ("transaction-history", Some(arg_matches)) => {
let address = pubkey_of(arg_matches, "address").unwrap(); let address = pubkey_of(arg_matches, "address").unwrap();
@@ -587,6 +683,11 @@ pub fn bigtable_process_command(ledger_path: &Path, matches: &ArgMatches<'_>) {
.value_of("until") .value_of("until")
.map(|signature| signature.parse().expect("Invalid signature")); .map(|signature| signature.parse().expect("Invalid signature"));
let show_transactions = arg_matches.is_present("show_transactions"); let show_transactions = arg_matches.is_present("show_transactions");
let config = solana_storage_bigtable::LedgerStorageConfig {
read_only: true,
instance_name,
..solana_storage_bigtable::LedgerStorageConfig::default()
};
runtime.block_on(transaction_history( runtime.block_on(transaction_history(
&address, &address,
@@ -596,6 +697,7 @@ pub fn bigtable_process_command(ledger_path: &Path, matches: &ArgMatches<'_>) {
verbose, verbose,
show_transactions, show_transactions,
query_chunk_size, query_chunk_size,
config,
)) ))
} }
_ => unreachable!(), _ => unreachable!(),

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-ledger" name = "solana-ledger"
version = "1.10.4" version = "1.11.0"
description = "Solana ledger" description = "Solana ledger"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -32,21 +32,21 @@ reed-solomon-erasure = { version = "5.0.1", features = ["simd-accel"] }
serde = "1.0.136" serde = "1.0.136"
serde_bytes = "0.11.5" serde_bytes = "0.11.5"
sha2 = "0.10.2" sha2 = "0.10.2"
solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "=1.10.4" } solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "=1.11.0" }
solana-entry = { path = "../entry", version = "=1.10.4" } solana-entry = { path = "../entry", version = "=1.11.0" }
solana-frozen-abi = { path = "../frozen-abi", version = "=1.10.4" } solana-frozen-abi = { path = "../frozen-abi", version = "=1.11.0" }
solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.10.4" } solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-program-runtime = { path = "../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../program-runtime", version = "=1.11.0" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.10.4" } solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-storage-bigtable = { path = "../storage-bigtable", version = "=1.10.4" } solana-storage-bigtable = { path = "../storage-bigtable", version = "=1.11.0" }
solana-storage-proto = { path = "../storage-proto", version = "=1.10.4" } solana-storage-proto = { path = "../storage-proto", version = "=1.11.0" }
solana-transaction-status = { path = "../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../transaction-status", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
tempfile = "3.3.0" tempfile = "3.3.0"
thiserror = "1.0" thiserror = "1.0"
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }
@@ -63,8 +63,8 @@ features = ["lz4"]
[dev-dependencies] [dev-dependencies]
assert_matches = "1.5.0" assert_matches = "1.5.0"
matches = "0.1.9" matches = "0.1.9"
solana-account-decoder = { path = "../account-decoder", version = "=1.10.4" } solana-account-decoder = { path = "../account-decoder", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[build-dependencies] [build-dependencies]
rustc_version = "0.4" rustc_version = "0.4"

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-local-cluster" name = "solana-local-cluster"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -16,25 +16,25 @@ itertools = "0.10.3"
log = "0.4.14" log = "0.4.14"
rand = "0.7.0" rand = "0.7.0"
rayon = "1.5.1" rayon = "1.5.1"
solana-client = { path = "../client", version = "=1.10.4" } solana-client = { path = "../client", version = "=1.11.0" }
solana-config-program = { path = "../programs/config", version = "=1.10.4" } solana-config-program = { path = "../programs/config", version = "=1.11.0" }
solana-core = { path = "../core", version = "=1.10.4" } solana-core = { path = "../core", version = "=1.11.0" }
solana-entry = { path = "../entry", version = "=1.10.4" } solana-entry = { path = "../entry", version = "=1.11.0" }
solana-gossip = { path = "../gossip", version = "=1.10.4" } solana-gossip = { path = "../gossip", version = "=1.11.0" }
solana-ledger = { path = "../ledger", version = "=1.10.4" } solana-ledger = { path = "../ledger", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-stake-program = { path = "../programs/stake", version = "=1.10.4" } solana-stake-program = { path = "../programs/stake", version = "=1.11.0" }
solana-streamer = { path = "../streamer", version = "=1.10.4" } solana-streamer = { path = "../streamer", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
tempfile = "3.3.0" tempfile = "3.3.0"
[dev-dependencies] [dev-dependencies]
assert_matches = "1.5.0" assert_matches = "1.5.0"
gag = "1.0.0" gag = "1.0.0"
serial_test = "0.6.0" serial_test = "0.6.0"
solana-download-utils = { path = "../download-utils", version = "=1.10.4" } solana-download-utils = { path = "../download-utils", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2021" edition = "2021"
name = "solana-log-analyzer" name = "solana-log-analyzer"
description = "The solana cluster network analysis tool" description = "The solana cluster network analysis tool"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -14,8 +14,8 @@ byte-unit = "4.0.14"
clap = "2.33.1" clap = "2.33.1"
serde = "1.0.136" serde = "1.0.136"
serde_json = "1.0.79" serde_json = "1.0.79"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
[[bin]] [[bin]]
name = "solana-log-analyzer" name = "solana-log-analyzer"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-logger" name = "solana-logger"
version = "1.10.4" version = "1.11.0"
description = "Solana Logger" description = "Solana Logger"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "solana-measure" name = "solana-measure"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
documentation = "https://docs.rs/solana-measure" documentation = "https://docs.rs/solana-measure"
readme = "../README.md" readme = "../README.md"
@@ -12,7 +12,7 @@ edition = "2021"
[dependencies] [dependencies]
log = "0.4.14" log = "0.4.14"
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-merkle-root-bench" name = "solana-merkle-root-bench"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -11,11 +11,11 @@ publish = false
[dependencies] [dependencies]
clap = "2.33.1" clap = "2.33.1"
log = "0.4.14" log = "0.4.14"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-merkle-tree" name = "solana-merkle-tree"
version = "1.10.4" version = "1.11.0"
description = "Solana Merkle Tree" description = "Solana Merkle Tree"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -11,7 +11,7 @@ edition = "2021"
[dependencies] [dependencies]
fast-math = "0.1" fast-math = "0.1"
solana-program = { path = "../sdk/program", version = "=1.10.4" } solana-program = { path = "../sdk/program", version = "=1.11.0" }
# This can go once the BPF toolchain target Rust 1.42.0+ # This can go once the BPF toolchain target Rust 1.42.0+
[target.bpfel-unknown-unknown.dependencies] [target.bpfel-unknown-unknown.dependencies]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-metrics" name = "solana-metrics"
version = "1.10.4" version = "1.11.0"
description = "Solana Metrics" description = "Solana Metrics"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -15,7 +15,7 @@ gethostname = "0.2.3"
lazy_static = "1.4.0" lazy_static = "1.4.0"
log = "0.4.14" log = "0.4.14"
reqwest = { version = "0.11.10", default-features = false, features = ["blocking", "rustls-tls", "json"] } reqwest = { version = "0.11.10", default-features = false, features = ["blocking", "rustls-tls", "json"] }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
[dev-dependencies] [dev-dependencies]
env_logger = "0.9.0" env_logger = "0.9.0"

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-net-shaper" name = "solana-net-shaper"
description = "The solana cluster network shaping tool" description = "The solana cluster network shaping tool"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -14,7 +14,7 @@ clap = "2.33.1"
rand = "0.7.0" rand = "0.7.0"
serde = "1.0.136" serde = "1.0.136"
serde_json = "1.0.79" serde_json = "1.0.79"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[[bin]] [[bin]]
name = "solana-net-shaper" name = "solana-net-shaper"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-net-utils" name = "solana-net-utils"
version = "1.10.4" version = "1.11.0"
description = "Solana Network Utilities" description = "Solana Network Utilities"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -19,9 +19,9 @@ rand = "0.7.0"
serde = "1.0.136" serde = "1.0.136"
serde_derive = "1.0.103" serde_derive = "1.0.103"
socket2 = "0.4.4" socket2 = "0.4.4"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }
url = "2.2.2" url = "2.2.2"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-notifier" name = "solana-notifier"
version = "1.10.4" version = "1.11.0"
description = "Solana Notifier" description = "Solana Notifier"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-perf" name = "solana-perf"
version = "1.10.4" version = "1.11.0"
description = "Solana Performance APIs" description = "Solana Performance APIs"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -22,10 +22,10 @@ log = "0.4.14"
rand = "0.7.0" rand = "0.7.0"
rayon = "1.5.1" rayon = "1.5.1"
serde = "1.0.136" serde = "1.0.136"
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.10.4" } solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
[target."cfg(target_os = \"linux\")".dependencies] [target."cfg(target_os = \"linux\")".dependencies]
caps = "0.5.3" caps = "0.5.3"
@@ -37,7 +37,7 @@ name = "solana_perf"
[dev-dependencies] [dev-dependencies]
matches = "0.1.9" matches = "0.1.9"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[[bench]] [[bench]]
name = "sigverify" name = "sigverify"

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
edition = "2021" edition = "2021"
name = "solana-poh-bench" name = "solana-poh-bench"
version = "1.10.4" version = "1.11.0"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
homepage = "https://solana.com/" homepage = "https://solana.com/"
@@ -14,12 +14,12 @@ clap = "2.33.1"
log = "0.4.14" log = "0.4.14"
rand = "0.7.0" rand = "0.7.0"
rayon = "1.5.1" rayon = "1.5.1"
solana-entry = { path = "../entry", version = "=1.10.4" } solana-entry = { path = "../entry", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-version = { path = "../version", version = "=1.10.4" } solana-version = { path = "../version", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-poh" name = "solana-poh"
version = "1.10.4" version = "1.11.0"
description = "Solana PoH" description = "Solana PoH"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -13,21 +13,21 @@ edition = "2021"
core_affinity = "0.5.10" core_affinity = "0.5.10"
crossbeam-channel = "0.5" crossbeam-channel = "0.5"
log = "0.4.14" log = "0.4.14"
solana-entry = { path = "../entry", version = "=1.10.4" } solana-entry = { path = "../entry", version = "=1.11.0" }
solana-ledger = { path = "../ledger", version = "=1.10.4" } solana-ledger = { path = "../ledger", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-metrics = { path = "../metrics", version = "=1.10.4" } solana-metrics = { path = "../metrics", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-sys-tuner = { path = "../sys-tuner", version = "=1.10.4" } solana-sys-tuner = { path = "../sys-tuner", version = "=1.11.0" }
thiserror = "1.0" thiserror = "1.0"
[dev-dependencies] [dev-dependencies]
bincode = "1.3.3" bincode = "1.3.3"
matches = "0.1.9" matches = "0.1.9"
rand = "0.7.0" rand = "0.7.0"
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-perf = { path = "../perf", version = "=1.10.4" } solana-perf = { path = "../perf", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-program-runtime" name = "solana-program-runtime"
version = "1.10.4" version = "1.11.0"
description = "Solana program runtime" description = "Solana program runtime"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -19,15 +19,15 @@ log = "0.4.14"
num-derive = { version = "0.3" } num-derive = { version = "0.3" }
num-traits = { version = "0.2" } num-traits = { version = "0.2" }
serde = { version = "1.0.129", features = ["derive", "rc"] } serde = { version = "1.0.129", features = ["derive", "rc"] }
solana-frozen-abi = { path = "../frozen-abi", version = "=1.10.4" } solana-frozen-abi = { path = "../frozen-abi", version = "=1.11.0" }
solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.10.4" } solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.11.0" }
solana-measure = { path = "../measure", version = "=1.10.4" } solana-measure = { path = "../measure", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
thiserror = "1.0" thiserror = "1.0"
enum-iterator = "0.7.0" enum-iterator = "0.7.0"
[dev-dependencies] [dev-dependencies]
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]

View File

@@ -5,7 +5,7 @@ edition = "2021"
license = "Apache-2.0" license = "Apache-2.0"
name = "solana-program-test" name = "solana-program-test"
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
version = "1.10.4" version = "1.11.0"
[dependencies] [dependencies]
async-trait = "0.1.52" async-trait = "0.1.52"
@@ -14,13 +14,13 @@ bincode = "1.3.3"
chrono-humanize = "0.2.1" chrono-humanize = "0.2.1"
log = "0.4.14" log = "0.4.14"
serde = "1.0.136" serde = "1.0.136"
solana-banks-client = { path = "../banks-client", version = "=1.10.4" } solana-banks-client = { path = "../banks-client", version = "=1.11.0" }
solana-banks-server = { path = "../banks-server", version = "=1.10.4" } solana-banks-server = { path = "../banks-server", version = "=1.11.0" }
solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "=1.10.4" } solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "=1.11.0" }
solana-logger = { path = "../logger", version = "=1.10.4" } solana-logger = { path = "../logger", version = "=1.11.0" }
solana-program-runtime = { path = "../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../program-runtime", version = "=1.11.0" }
solana-runtime = { path = "../runtime", version = "=1.10.4" } solana-runtime = { path = "../runtime", version = "=1.11.0" }
solana-sdk = { path = "../sdk", version = "=1.10.4" } solana-sdk = { path = "../sdk", version = "=1.11.0" }
solana-vote-program = { path = "../programs/vote", version = "=1.10.4" } solana-vote-program = { path = "../programs/vote", version = "=1.11.0" }
thiserror = "1.0" thiserror = "1.0"
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }

View File

@@ -3,7 +3,7 @@
[package] [package]
name = "solana-address-lookup-table-program-tests" name = "solana-address-lookup-table-program-tests"
version = "1.10.4" version = "1.11.0"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0" license = "Apache-2.0"
@@ -14,9 +14,9 @@ publish = false
[dev-dependencies] [dev-dependencies]
assert_matches = "1.5.0" assert_matches = "1.5.0"
bincode = "1.3.3" bincode = "1.3.3"
solana-address-lookup-table-program = { path = "../address-lookup-table", version = "=1.10.4" } solana-address-lookup-table-program = { path = "../address-lookup-table", version = "=1.11.0" }
solana-program-test = { path = "../../program-test", version = "=1.10.4" } solana-program-test = { path = "../../program-test", version = "=1.11.0" }
solana-sdk = { path = "../../sdk", version = "=1.10.4" } solana-sdk = { path = "../../sdk", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-address-lookup-table-program" name = "solana-address-lookup-table-program"
version = "1.10.4" version = "1.11.0"
description = "Solana address lookup table program" description = "Solana address lookup table program"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -16,14 +16,14 @@ log = "0.4.14"
num-derive = "0.3" num-derive = "0.3"
num-traits = "0.2" num-traits = "0.2"
serde = { version = "1.0.136", features = ["derive"] } serde = { version = "1.0.136", features = ["derive"] }
solana-frozen-abi = { path = "../../frozen-abi", version = "=1.10.4" } solana-frozen-abi = { path = "../../frozen-abi", version = "=1.11.0" }
solana-frozen-abi-macro = { path = "../../frozen-abi/macro", version = "=1.10.4" } solana-frozen-abi-macro = { path = "../../frozen-abi/macro", version = "=1.11.0" }
solana-program = { path = "../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../sdk/program", version = "=1.11.0" }
thiserror = "1.0" thiserror = "1.0"
[target.'cfg(not(target_arch = "bpf"))'.dependencies] [target.'cfg(not(target_arch = "bpf"))'.dependencies]
solana-program-runtime = { path = "../../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../../program-runtime", version = "=1.11.0" }
solana-sdk = { path = "../../sdk", version = "=1.10.4" } solana-sdk = { path = "../../sdk", version = "=1.11.0" }
[build-dependencies] [build-dependencies]
rustc_version = "0.4" rustc_version = "0.4"

1414
programs/bpf/Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "solana-bpf-programs" name = "solana-bpf-programs"
description = "Blockchain, Rebuilt for Scale" description = "Blockchain, Rebuilt for Scale"
version = "1.10.4" version = "1.11.0"
documentation = "https://docs.rs/solana" documentation = "https://docs.rs/solana"
homepage = "https://solana.com/" homepage = "https://solana.com/"
readme = "README.md" readme = "README.md"
@@ -26,19 +26,19 @@ itertools = "0.10.1"
log = "0.4.11" log = "0.4.11"
miow = "0.3.6" miow = "0.3.6"
net2 = "0.2.37" net2 = "0.2.37"
solana-bpf-rust-invoke = { path = "rust/invoke", version = "=1.10.4"} solana-bpf-rust-invoke = { path = "rust/invoke", version = "=1.11.0"}
solana-bpf-loader-program = { path = "../bpf_loader", version = "=1.10.4"} solana-bpf-loader-program = { path = "../bpf_loader", version = "=1.11.0"}
solana-bpf-rust-realloc = { path = "rust/realloc", version = "=1.10.4"} solana-bpf-rust-realloc = { path = "rust/realloc", version = "=1.11.0"}
solana-bpf-rust-realloc-invoke = { path = "rust/realloc_invoke", version = "=1.10.4"} solana-bpf-rust-realloc-invoke = { path = "rust/realloc_invoke", version = "=1.11.0"}
solana-cli-output = { path = "../../cli-output", version = "=1.10.4" } solana-cli-output = { path = "../../cli-output", version = "=1.11.0" }
solana-logger = { path = "../../logger", version = "=1.10.4" } solana-logger = { path = "../../logger", version = "=1.11.0" }
solana-measure = { path = "../../measure", version = "=1.10.4" } solana-measure = { path = "../../measure", version = "=1.11.0" }
solana_rbpf = "=0.2.24" solana_rbpf = "=0.2.24"
solana-runtime = { path = "../../runtime", version = "=1.10.4" } solana-runtime = { path = "../../runtime", version = "=1.11.0" }
solana-program-runtime = { path = "../../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../../program-runtime", version = "=1.11.0" }
solana-sdk = { path = "../../sdk", version = "=1.10.4" } solana-sdk = { path = "../../sdk", version = "=1.11.0" }
solana-transaction-status = { path = "../../transaction-status", version = "=1.10.4" } solana-transaction-status = { path = "../../transaction-status", version = "=1.11.0" }
solana-account-decoder = { path = "../../account-decoder", version = "=1.10.4" } solana-account-decoder = { path = "../../account-decoder", version = "=1.11.0" }
[[bench]] [[bench]]
name = "bpf_loader" name = "bpf_loader"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-128bit" name = "solana-bpf-rust-128bit"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,8 +10,8 @@ documentation = "https://docs.rs/solana-bpf-rust-128bit"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
solana-bpf-rust-128bit-dep = { path = "../128bit_dep", version = "=1.10.4" } solana-bpf-rust-128bit-dep = { path = "../128bit_dep", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-128bit-dep" name = "solana-bpf-rust-128bit-dep"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-128bit-dep"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-alloc" name = "solana-bpf-rust-alloc"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-alloc"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-call-depth" name = "solana-bpf-rust-call-depth"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-call-depth"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-caller-access" name = "solana-bpf-rust-caller-access"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-caller-access"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-custom-heap" name = "solana-bpf-rust-custom-heap"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-custom-heap"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[features] [features]
default = ["custom-heap"] default = ["custom-heap"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-dep-crate" name = "solana-bpf-rust-dep-crate"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -11,9 +11,9 @@ edition = "2021"
[dependencies] [dependencies]
byteorder = { version = "1", default-features = false } byteorder = { version = "1", default-features = false }
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
# list of crates which must be buildable for bpf programs # list of crates which must be buildable for bpf programs
solana-address-lookup-table-program = { path = "../../../../programs/address-lookup-table", version = "=1.10.4" } solana-address-lookup-table-program = { path = "../../../../programs/address-lookup-table", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-deprecated-loader" name = "solana-bpf-rust-deprecated-loader"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-deprecated-loader"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-dup-accounts" name = "solana-bpf-rust-dup-accounts"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-dup-accounts"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-error-handling" name = "solana-bpf-rust-error-handling"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -12,7 +12,7 @@ edition = "2021"
[dependencies] [dependencies]
num-derive = "0.3" num-derive = "0.3"
num-traits = "0.2" num-traits = "0.2"
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
thiserror = "1.0" thiserror = "1.0"
[lib] [lib]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-external-spend" name = "solana-bpf-rust-external-spend"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-external-spend"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-finalize" name = "solana-bpf-rust-finalize"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-finalize"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-instruction-introspection" name = "solana-bpf-rust-instruction-introspection"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-instruction-introspection"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-invoke" name = "solana-bpf-rust-invoke"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -15,7 +15,7 @@ program = []
[dependencies] [dependencies]
solana-bpf-rust-invoked = { path = "../invoked", default-features = false } solana-bpf-rust-invoked = { path = "../invoked", default-features = false }
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib", "cdylib"] crate-type = ["lib", "cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-invoke-and-error" name = "solana-bpf-rust-invoke-and-error"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-invoke-and-error"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-invoke-and-ok" name = "solana-bpf-rust-invoke-and-ok"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-invoke-and-ok"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-invoke-and-return" name = "solana-bpf-rust-invoke-and-return"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-invoke-and-return"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-invoked" name = "solana-bpf-rust-invoked"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -14,7 +14,7 @@ default = ["program"]
program = [] program = []
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib", "cdylib"] crate-type = ["lib", "cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-iter" name = "solana-bpf-rust-iter"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-iter"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-log-data" name = "solana-bpf-rust-log-data"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-log-data"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[features] [features]
default = ["program"] default = ["program"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-many-args" name = "solana-bpf-rust-many-args"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,8 +10,8 @@ documentation = "https://docs.rs/solana-bpf-rust-many-args"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
solana-bpf-rust-many-args-dep = { path = "../many_args_dep", version = "=1.10.4" } solana-bpf-rust-many-args-dep = { path = "../many_args_dep", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-many-args-dep" name = "solana-bpf-rust-many-args-dep"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-many-args-dep"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-mem" name = "solana-bpf-rust-mem"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -13,12 +13,12 @@ edition = "2021"
no-entrypoint = [] no-entrypoint = []
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[dev-dependencies] [dev-dependencies]
solana-program-runtime = { path = "../../../../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../../../../program-runtime", version = "=1.11.0" }
solana-program-test = { path = "../../../../program-test", version = "=1.10.4" } solana-program-test = { path = "../../../../program-test", version = "=1.11.0" }
solana-sdk = { path = "../../../../sdk", version = "=1.10.4" } solana-sdk = { path = "../../../../sdk", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib", "lib"] crate-type = ["cdylib", "lib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-membuiltins" name = "solana-bpf-rust-membuiltins"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,8 +10,8 @@ documentation = "https://docs.rs/solana-bpf-rust-mem"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-bpf-rust-mem = { path = "../mem", version = "=1.10.4", features = [ "no-entrypoint" ] } solana-bpf-rust-mem = { path = "../mem", version = "=1.11.0", features = [ "no-entrypoint" ] }
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-noop" name = "solana-bpf-rust-noop"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-noop"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-panic" name = "solana-bpf-rust-panic"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-panic"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[features] [features]
default = ["custom-panic"] default = ["custom-panic"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-param-passing" name = "solana-bpf-rust-param-passing"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,8 +10,8 @@ documentation = "https://docs.rs/solana-bpf-rust-param-passing"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
solana-bpf-rust-param-passing-dep = { path = "../param_passing_dep", version = "=1.10.4" } solana-bpf-rust-param-passing-dep = { path = "../param_passing_dep", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-param-passing-dep" name = "solana-bpf-rust-param-passing-dep"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF program written in Rust" description = "Solana BPF program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-param-passing-dep"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[package.metadata.docs.rs] [package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"] targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-rand" name = "solana-bpf-rust-rand"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -12,7 +12,7 @@ edition = "2021"
[dependencies] [dependencies]
getrandom = { version = "0.1.14", features = ["dummy"] } getrandom = { version = "0.1.14", features = ["dummy"] }
rand = "0.7" rand = "0.7"
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-realloc" name = "solana-bpf-rust-realloc"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -14,7 +14,7 @@ default = ["program"]
program = [] program = []
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["lib", "cdylib"] crate-type = ["lib", "cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-realloc-invoke" name = "solana-bpf-rust-realloc-invoke"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -14,8 +14,8 @@ default = ["program"]
program = [] program = []
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
solana-bpf-rust-realloc = { path = "../realloc", version = "=1.10.4", default-features = false } solana-bpf-rust-realloc = { path = "../realloc", version = "=1.11.0", default-features = false }
[lib] [lib]
crate-type = ["lib", "cdylib"] crate-type = ["lib", "cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-ro-account_modify" name = "solana-bpf-rust-ro-account_modify"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-ro-modify"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-ro-modify" name = "solana-bpf-rust-ro-modify"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-ro-modify"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-sanity" name = "solana-bpf-rust-sanity"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -13,12 +13,12 @@ edition = "2021"
test-bpf = [] test-bpf = []
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[dev-dependencies] [dev-dependencies]
solana-program-runtime = { path = "../../../../program-runtime", version = "=1.10.4" } solana-program-runtime = { path = "../../../../program-runtime", version = "=1.11.0" }
solana-program-test = { path = "../../../../program-test", version = "=1.10.4" } solana-program-test = { path = "../../../../program-test", version = "=1.11.0" }
solana-sdk = { path = "../../../../sdk", version = "=1.10.4" } solana-sdk = { path = "../../../../sdk", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib", "lib"] crate-type = ["cdylib", "lib"]

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "solana-bpf-rust-secp256k1-recover" name = "solana-bpf-rust-secp256k1-recover"
version = "1.10.4" version = "1.11.0"
description = "Solana BPF test program written in Rust" description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.foundation>"] authors = ["Solana Maintainers <maintainers@solana.foundation>"]
repository = "https://github.com/solana-labs/solana" repository = "https://github.com/solana-labs/solana"
@@ -10,7 +10,7 @@ documentation = "https://docs.rs/solana-bpf-rust-secp256k1-recover"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
solana-program = { path = "../../../../sdk/program", version = "=1.10.4" } solana-program = { path = "../../../../sdk/program", version = "=1.11.0" }
[lib] [lib]
crate-type = ["cdylib"] crate-type = ["cdylib"]

Some files were not shown because too many files have changed in this diff Show More