Compare commits

..

10 Commits

Author SHA1 Message Date
Tyera Eulberg
58e6a5c281 Add docs to declare_id macro (#10673)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-17 19:19:06 -06:00
mergify[bot]
7eb61074ab Simd poh (#10604) (#10658)
* Simd poh

* Fix poh verify bench

Co-authored-by: sakridge <sakridge@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-18 00:34:56 +00:00
mergify[bot]
9b2edbaa9b Plumb --warp-slot through net scripts (bp #10639) (#10643)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

Co-authored-by: Trent Nelson <trent@solana.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-17 21:36:04 +00:00
Justin Starry
e8659b45c7 Wait until bank is frozen before sending RPC notifications (#10654)
(cherry picked from commit 39984cdcc3)
2020-06-17 13:05:29 -07:00
mergify[bot]
a9553cb401 Entry verify cleanup and gossip counters (#10632) (#10650)
* Add prune message counter

* Switch to us verification time to match other counters

* Add separate transaction/poh verify timing

Co-authored-by: sakridge <sakridge@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-17 19:48:05 +00:00
mergify[bot]
800c409698 Factor out testnet automation SW version resolution (#10660)
(cherry picked from commit a15f60a291)

Co-authored-by: Trent Nelson <trent@solana.com>
2020-06-17 17:31:11 +00:00
mergify[bot]
b6f484ddee ClusterInfo cleanup (#10504) (#10657)
automerge

Co-authored-by: sakridge <sakridge@gmail.com>
2020-06-17 15:28:41 +00:00
publish-docs.sh
3c39fee5a8 Add address to non-circulating supply
(cherry picked from commit 5673343f49)
2020-06-16 21:45:51 -07:00
mergify[bot]
560f34d1f6 Fix links in TdS registration docs page (#10641) (#10645)
Co-authored-by: publish-docs.sh <maintainers@solana.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit 36ca43e15b)

Co-authored-by: Dan Albert <dan@solana.com>
2020-06-17 02:43:58 +00:00
Stephen Akridge
dbda50941a Bump version to 1.2.4 2020-06-16 17:03:09 -07:00
107 changed files with 1649 additions and 1190 deletions

219
Cargo.lock generated
View File

@@ -21,9 +21,9 @@ dependencies = [
[[package]]
name = "adler32"
version = "1.0.4"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5d2e7343e7fc9de883d1b0341e0b13970f764c14101234857d2ddafa1cb1cac2"
checksum = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d"
[[package]]
name = "aho-corasick"
@@ -120,13 +120,14 @@ checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
[[package]]
name = "backtrace"
version = "0.3.48"
version = "0.3.49"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0df2f85c8a2abbe3b7d7e748052fdd9b76a0458fdeb16ad4223f5eca78c7c130"
checksum = "05100821de9e028f12ae3d189176b41ee198341eb8f369956407fea2f5cc666c"
dependencies = [
"addr2line",
"cfg-if",
"libc",
"miniz_oxide",
"object",
"rustc-demangle",
"serde",
@@ -165,9 +166,9 @@ checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
[[package]]
name = "base64"
version = "0.12.1"
version = "0.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53d1ccbaf7d9ec9537465a97bf19edc1a4e158ecb49fc16178202238c569cc42"
checksum = "e223af0dc48c96d4f8342ec01a4974f139df863896b316681efd36742f22cc67"
[[package]]
name = "bech32"
@@ -300,7 +301,7 @@ dependencies = [
[[package]]
name = "btc_spv_bin"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"hex 0.4.2",
@@ -910,9 +911,9 @@ dependencies = [
[[package]]
name = "dtoa"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4358a9e11b9a09cf52383b451b49a169e8d797b68aa02301ff586d70d9661ea3"
checksum = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b"
[[package]]
name = "ed25519-dalek"
@@ -1668,9 +1669,9 @@ dependencies = [
[[package]]
name = "itoa"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8b7a7c0c47db5545ed3fef7468ee7bb5b74691498139e4b3f6a20685dc6dd8e"
checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
[[package]]
name = "jemalloc-ctl"
@@ -2288,9 +2289,9 @@ checksum = "17b02fc0ff9a9e4b35b3342880f48e896ebf69f2967921fe8646bf5b7125956a"
[[package]]
name = "object"
version = "0.19.0"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9cbca9424c482ee628fa549d9c812e2cd22f1180b9222c9200fdfa6eb31aecb2"
checksum = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5"
[[package]]
name = "once_cell"
@@ -2472,9 +2473,9 @@ dependencies = [
[[package]]
name = "paste"
version = "0.1.16"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d508492eeb1e5c38ee696371bf7b9fc33c83d46a7d451606b96458fbbbdc2dec"
checksum = "026c63fe245362be0322bfec5a9656d458d13f9cfb1785d1b38458b9968e8080"
dependencies = [
"paste-impl",
"proc-macro-hack",
@@ -2482,14 +2483,11 @@ dependencies = [
[[package]]
name = "paste-impl"
version = "0.1.16"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "84f328a6a63192b333fce5fbb4be79db6758a4d518dfac6d54412f1492f72d32"
checksum = "7b9281a268ec213237dcd2aa3c3d0f46681b04ced37c1616fd36567a9e6954b0"
dependencies = [
"proc-macro-hack",
"proc-macro2 1.0.18",
"quote 1.0.7",
"syn 1.0.31",
]
[[package]]
@@ -3036,10 +3034,11 @@ dependencies = [
[[package]]
name = "rayon"
version = "1.3.0"
version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098"
checksum = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080"
dependencies = [
"autocfg 1.0.0",
"crossbeam-deque",
"either",
"rayon-core",
@@ -3047,9 +3046,9 @@ dependencies = [
[[package]]
name = "rayon-core"
version = "1.7.0"
version = "1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9"
checksum = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280"
dependencies = [
"crossbeam-deque",
"crossbeam-queue",
@@ -3158,7 +3157,7 @@ version = "0.10.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b82c9238b305f26f53443e3a4bc8528d64b8d0bee408ec949eb7bf5635ec680"
dependencies = [
"base64 0.12.1",
"base64 0.12.2",
"bytes 0.5.4",
"encoding_rs",
"futures-core",
@@ -3388,9 +3387,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
name = "serde"
version = "1.0.111"
version = "1.0.112"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c9124df5b40cbd380080b2cc6ab894c040a3070d995f5c9dc77e18c34a8ae37d"
checksum = "736aac72d1eafe8e5962d1d1c3d99b0df526015ba40915cb3c49d042e92ec243"
dependencies = [
"serde_derive",
]
@@ -3416,9 +3415,9 @@ dependencies = [
[[package]]
name = "serde_derive"
version = "1.0.111"
version = "1.0.112"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f2c3ac8e6ca1e9c80b8be1023940162bf81ae3cffbb1809474152f2ce1eb250"
checksum = "bf0343ce212ac0d3d6afd9391ac8e9c9efe06b533c8d33f660f6390cc4093f57"
dependencies = [
"proc-macro2 1.0.18",
"quote 1.0.7",
@@ -3661,7 +3660,7 @@ dependencies = [
[[package]]
name = "solana-accounts-bench"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"crossbeam-channel",
@@ -3676,7 +3675,7 @@ dependencies = [
[[package]]
name = "solana-banking-bench"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"crossbeam-channel",
@@ -3697,7 +3696,7 @@ dependencies = [
[[package]]
name = "solana-bench-exchange"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"itertools 0.9.0",
@@ -3725,7 +3724,7 @@ dependencies = [
[[package]]
name = "solana-bench-streamer"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"solana-clap-utils",
@@ -3737,7 +3736,7 @@ dependencies = [
[[package]]
name = "solana-bench-tps"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"clap",
@@ -3766,7 +3765,7 @@ dependencies = [
[[package]]
name = "solana-bpf-loader-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"byteorder",
@@ -3784,7 +3783,7 @@ dependencies = [
[[package]]
name = "solana-btc-spv-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"hex 0.4.2",
@@ -3798,7 +3797,7 @@ dependencies = [
[[package]]
name = "solana-budget-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"chrono",
@@ -3814,7 +3813,7 @@ dependencies = [
[[package]]
name = "solana-clap-utils"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"chrono",
"clap",
@@ -3828,7 +3827,7 @@ dependencies = [
[[package]]
name = "solana-cli"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"Inflector",
"bincode",
@@ -3872,7 +3871,7 @@ dependencies = [
[[package]]
name = "solana-cli-config"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"dirs 2.0.2",
"lazy_static",
@@ -3884,7 +3883,7 @@ dependencies = [
[[package]]
name = "solana-client"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_matches",
"bincode",
@@ -3910,7 +3909,7 @@ dependencies = [
[[package]]
name = "solana-config-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"chrono",
@@ -3923,7 +3922,7 @@ dependencies = [
[[package]]
name = "solana-core"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"bs58 0.3.1",
@@ -3992,7 +3991,7 @@ dependencies = [
[[package]]
name = "solana-crate-features"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"backtrace",
"bytes 0.4.12",
@@ -4015,7 +4014,7 @@ dependencies = [
[[package]]
name = "solana-dos"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"clap",
@@ -4034,7 +4033,7 @@ dependencies = [
[[package]]
name = "solana-download-utils"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bzip2",
"console 0.10.3",
@@ -4048,7 +4047,7 @@ dependencies = [
[[package]]
name = "solana-exchange-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"log 0.4.8",
@@ -4065,7 +4064,7 @@ dependencies = [
[[package]]
name = "solana-failure-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-runtime",
"solana-sdk",
@@ -4073,7 +4072,7 @@ dependencies = [
[[package]]
name = "solana-faucet"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"byteorder",
@@ -4093,9 +4092,9 @@ dependencies = [
[[package]]
name = "solana-genesis"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"base64 0.12.1",
"base64 0.12.2",
"chrono",
"clap",
"serde",
@@ -4114,7 +4113,7 @@ dependencies = [
[[package]]
name = "solana-genesis-programs"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"log 0.4.8",
"solana-bpf-loader-program",
@@ -4127,7 +4126,7 @@ dependencies = [
[[package]]
name = "solana-gossip"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"solana-clap-utils",
@@ -4141,7 +4140,7 @@ dependencies = [
[[package]]
name = "solana-install"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"atty",
"bincode",
@@ -4174,7 +4173,7 @@ dependencies = [
[[package]]
name = "solana-keygen"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bs58 0.3.1",
"clap",
@@ -4190,7 +4189,7 @@ dependencies = [
[[package]]
name = "solana-ledger"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_matches",
"bincode",
@@ -4199,6 +4198,8 @@ dependencies = [
"chrono",
"crossbeam-channel",
"dir-diff",
"dlopen",
"dlopen_derive",
"ed25519-dalek",
"flate2",
"fs_extra",
@@ -4239,7 +4240,7 @@ dependencies = [
[[package]]
name = "solana-ledger-tool"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_cmd",
"bs58 0.3.1",
@@ -4264,7 +4265,7 @@ dependencies = [
[[package]]
name = "solana-librapay"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"log 0.4.8",
@@ -4277,7 +4278,7 @@ dependencies = [
[[package]]
name = "solana-local-cluster"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_matches",
"itertools 0.9.0",
@@ -4305,7 +4306,7 @@ dependencies = [
[[package]]
name = "solana-log-analyzer"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"byte-unit",
"clap",
@@ -4318,7 +4319,7 @@ dependencies = [
[[package]]
name = "solana-logger"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"env_logger",
"lazy_static",
@@ -4327,7 +4328,7 @@ dependencies = [
[[package]]
name = "solana-measure"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"jemalloc-ctl",
"jemallocator",
@@ -4338,7 +4339,7 @@ dependencies = [
[[package]]
name = "solana-merkle-tree"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"fast-math",
"hex 0.4.2",
@@ -4347,7 +4348,7 @@ dependencies = [
[[package]]
name = "solana-metrics"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"env_logger",
"gethostname",
@@ -4362,7 +4363,7 @@ dependencies = [
[[package]]
name = "solana-move-loader-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"indexmap",
@@ -4391,7 +4392,7 @@ dependencies = [
[[package]]
name = "solana-net-shaper"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"rand 0.7.3",
@@ -4403,7 +4404,7 @@ dependencies = [
[[package]]
name = "solana-net-utils"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"bytes 0.4.12",
@@ -4423,7 +4424,7 @@ dependencies = [
[[package]]
name = "solana-noop-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"log 0.4.8",
"solana-logger",
@@ -4432,7 +4433,7 @@ dependencies = [
[[package]]
name = "solana-notifier"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"log 0.4.8",
"reqwest",
@@ -4441,7 +4442,7 @@ dependencies = [
[[package]]
name = "solana-ownable"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"num-derive 0.3.0",
@@ -4453,7 +4454,7 @@ dependencies = [
[[package]]
name = "solana-perf"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"curve25519-dalek 2.1.0",
@@ -4474,7 +4475,7 @@ dependencies = [
[[package]]
name = "solana-ramp-tps"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bzip2",
"clap",
@@ -4496,7 +4497,7 @@ dependencies = [
[[package]]
name = "solana-rayon-threadlimit"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"lazy_static",
"num_cpus",
@@ -4504,7 +4505,7 @@ dependencies = [
[[package]]
name = "solana-remote-wallet"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"base32",
"console 0.10.3",
@@ -4522,7 +4523,7 @@ dependencies = [
[[package]]
name = "solana-runtime"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_matches",
"bincode",
@@ -4558,7 +4559,7 @@ dependencies = [
[[package]]
name = "solana-scripts"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"csv",
"serde",
@@ -4566,7 +4567,7 @@ dependencies = [
[[package]]
name = "solana-sdk"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_matches",
"bincode",
@@ -4600,7 +4601,7 @@ dependencies = [
[[package]]
name = "solana-sdk-macro"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bs58 0.3.1",
"proc-macro2 1.0.18",
@@ -4610,7 +4611,7 @@ dependencies = [
[[package]]
name = "solana-stake-accounts"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"solana-clap-utils",
@@ -4624,7 +4625,7 @@ dependencies = [
[[package]]
name = "solana-stake-monitor"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"console 0.10.3",
@@ -4649,7 +4650,7 @@ dependencies = [
[[package]]
name = "solana-stake-o-matic"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"log 0.4.8",
@@ -4667,7 +4668,7 @@ dependencies = [
[[package]]
name = "solana-stake-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"log 0.4.8",
@@ -4685,7 +4686,7 @@ dependencies = [
[[package]]
name = "solana-streamer"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"libc",
"log 0.4.8",
@@ -4700,7 +4701,7 @@ dependencies = [
[[package]]
name = "solana-sys-tuner"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"libc",
@@ -4716,7 +4717,7 @@ dependencies = [
[[package]]
name = "solana-tokens"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"chrono",
"clap",
@@ -4742,7 +4743,7 @@ dependencies = [
[[package]]
name = "solana-transaction-status"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"bs58 0.3.1",
@@ -4753,7 +4754,7 @@ dependencies = [
[[package]]
name = "solana-upload-perf"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"serde_json",
"solana-metrics",
@@ -4761,7 +4762,7 @@ dependencies = [
[[package]]
name = "solana-validator"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"chrono",
"clap",
@@ -4790,7 +4791,7 @@ dependencies = [
[[package]]
name = "solana-version"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"serde",
"serde_derive",
@@ -4799,7 +4800,7 @@ dependencies = [
[[package]]
name = "solana-vest-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"chrono",
@@ -4815,7 +4816,7 @@ dependencies = [
[[package]]
name = "solana-vote-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"log 0.4.8",
@@ -4830,7 +4831,7 @@ dependencies = [
[[package]]
name = "solana-vote-signer"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"jsonrpc-core",
@@ -4846,7 +4847,7 @@ dependencies = [
[[package]]
name = "solana-watchtower"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"clap",
"humantime 2.0.1",
@@ -5294,9 +5295,9 @@ checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
[[package]]
name = "structopt"
version = "0.3.14"
version = "0.3.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "863246aaf5ddd0d6928dfeb1a9ca65f505599e4e1b399935ef7e75107516b4ef"
checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c"
dependencies = [
"clap",
"lazy_static",
@@ -5305,9 +5306,9 @@ dependencies = [
[[package]]
name = "structopt-derive"
version = "0.4.7"
version = "0.4.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d239ca4b13aee7a2142e6795cbd69e457665ff8037aed33b3effdc430d2f927a"
checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118"
dependencies = [
"heck",
"proc-macro-error",
@@ -5415,9 +5416,9 @@ checksum = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60"
[[package]]
name = "tar"
version = "0.4.28"
version = "0.4.29"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c058ad0bd6ccb84faa24cc44d4fc99bee8a5d7ba9ff33aa4d993122d1aeeac2"
checksum = "c8a4c1d0bee3230179544336c15eefb563cf0302955d962e456542323e8c2e8a"
dependencies = [
"filetime",
"libc",
@@ -5509,18 +5510,18 @@ dependencies = [
[[package]]
name = "thiserror"
version = "1.0.19"
version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b13f926965ad00595dd129fa12823b04bbf866e9085ab0a5f2b05b850fbfc344"
checksum = "7dfdd070ccd8ccb78f4ad66bf1982dc37f620ef696c6b5028fe2ed83dd3d0d08"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
version = "1.0.19"
version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "893582086c2f98cde18f906265a65b5030a074b1046c674ae898be6519a7f479"
checksum = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793"
dependencies = [
"proc-macro2 1.0.18",
"quote 1.0.7",
@@ -5608,6 +5609,12 @@ dependencies = [
"crunchy",
]
[[package]]
name = "tinyvec"
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
[[package]]
name = "tokio"
version = "0.1.22"
@@ -5965,11 +5972,11 @@ dependencies = [
[[package]]
name = "unicode-normalization"
version = "0.1.12"
version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5479532badd04e128284890390c1e876ef7a993d0570b3597ae43dfa1d59afa4"
checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
dependencies = [
"smallvec 1.4.0",
"tinyvec",
]
[[package]]

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-accounts-bench"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -10,10 +10,10 @@ homepage = "https://solana.com/"
[dependencies]
log = "0.4.6"
rayon = "1.3.0"
solana-logger = { path = "../logger", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-measure = { path = "../measure", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-measure = { path = "../measure", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
rand = "0.7.0"
clap = "2.33.1"
crossbeam-channel = "0.4"

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-banking-bench"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -13,16 +13,16 @@ crossbeam-channel = "0.4"
log = "0.4.6"
rand = "0.7.0"
rayon = "1.3.0"
solana-core = { path = "../core", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-streamer = { path = "../streamer", version = "1.2.3" }
solana-perf = { path = "../perf", version = "1.2.3" }
solana-ledger = { path = "../ledger", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-measure = { path = "../measure", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.4" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-streamer = { path = "../streamer", version = "1.2.4" }
solana-perf = { path = "../perf", version = "1.2.4" }
solana-ledger = { path = "../ledger", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-measure = { path = "../measure", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-bench-exchange"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -18,21 +18,21 @@ rand = "0.7.0"
rayon = "1.3.0"
serde_json = "1.0.53"
serde_yaml = "0.8.12"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.3" }
solana-genesis = { path = "../genesis", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-faucet = { path = "../faucet", version = "1.2.3" }
solana-exchange-program = { path = "../programs/exchange", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-core = { path = "../core", version = "1.2.4" }
solana-genesis = { path = "../genesis", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-faucet = { path = "../faucet", version = "1.2.4" }
solana-exchange-program = { path = "../programs/exchange", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
[dev-dependencies]
solana-local-cluster = { path = "../local-cluster", version = "1.2.3" }
solana-local-cluster = { path = "../local-cluster", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -2,18 +2,18 @@
authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-bench-streamer"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
[dependencies]
clap = "2.33.1"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-streamer = { path = "../streamer", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-streamer = { path = "../streamer", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-bench-tps"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -14,25 +14,25 @@ log = "0.4.8"
rayon = "1.3.0"
serde_json = "1.0.53"
serde_yaml = "0.8.12"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.3" }
solana-genesis = { path = "../genesis", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-faucet = { path = "../faucet", version = "1.2.3" }
solana-librapay = { path = "../programs/librapay", version = "1.2.3", optional = true }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-measure = { path = "../measure", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-move-loader-program = { path = "../programs/move_loader", version = "1.2.3", optional = true }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-core = { path = "../core", version = "1.2.4" }
solana-genesis = { path = "../genesis", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-faucet = { path = "../faucet", version = "1.2.4" }
solana-librapay = { path = "../programs/librapay", version = "1.2.4", optional = true }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-measure = { path = "../measure", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-move-loader-program = { path = "../programs/move_loader", version = "1.2.4", optional = true }
solana-version = { path = "../version", version = "1.2.4" }
[dev-dependencies]
serial_test = "0.4.0"
serial_test_derive = "0.4.0"
solana-local-cluster = { path = "../local-cluster", version = "1.2.3" }
solana-local-cluster = { path = "../local-cluster", version = "1.2.4" }
[features]
move = ["solana-librapay", "solana-move-loader-program"]

View File

@@ -27,5 +27,5 @@ Alternatively, you can source it from within a script:
local PATCH=0
local SPECIAL=""
semverParseInto "1.2.3" MAJOR MINOR PATCH SPECIAL
semverParseInto "1.2.4" MAJOR MINOR PATCH SPECIAL
semverParseInto "3.2.1" MAJOR MINOR PATCH SPECIAL

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-clap-utils"
version = "1.2.3"
version = "1.2.4"
description = "Solana utilities for the clap"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -11,8 +11,8 @@ edition = "2018"
[dependencies]
clap = "2.33.0"
rpassword = "4.0"
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
thiserror = "1.0.11"
tiny-bip39 = "0.7.0"
url = "2.1.0"

View File

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

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-cli"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -27,28 +27,28 @@ reqwest = { version = "0.10.4", default-features = false, features = ["blocking"
serde = "1.0.110"
serde_derive = "1.0.103"
serde_json = "1.0.53"
solana-budget-program = { path = "../programs/budget", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-cli-config = { path = "../cli-config", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-config-program = { path = "../programs/config", version = "1.2.3" }
solana-faucet = { path = "../faucet", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-vote-program = { path = "../programs/vote", version = "1.2.3" }
solana-vote-signer = { path = "../vote-signer", version = "1.2.3" }
solana-budget-program = { path = "../programs/budget", version = "1.2.4" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-cli-config = { path = "../cli-config", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-config-program = { path = "../programs/config", version = "1.2.4" }
solana-faucet = { path = "../faucet", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
solana-vote-program = { path = "../programs/vote", version = "1.2.4" }
solana-vote-signer = { path = "../vote-signer", version = "1.2.4" }
thiserror = "1.0.19"
url = "2.1.1"
[dev-dependencies]
solana-core = { path = "../core", version = "1.2.3" }
solana-budget-program = { path = "../programs/budget", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.4" }
solana-budget-program = { path = "../programs/budget", version = "1.2.4" }
tempfile = "3.1.0"
[[bin]]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-client"
version = "1.2.3"
version = "1.2.4"
description = "Solana Client"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -19,10 +19,10 @@ reqwest = { version = "0.10.4", default-features = false, features = ["blocking"
serde = "1.0.110"
serde_derive = "1.0.103"
serde_json = "1.0.53"
solana-transaction-status = { path = "../transaction-status", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-vote-program = { path = "../programs/vote", version = "1.2.3" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-vote-program = { path = "../programs/vote", version = "1.2.4" }
thiserror = "1.0"
tungstenite = "0.10.1"
url = "2.1.1"
@@ -31,7 +31,7 @@ url = "2.1.1"
assert_matches = "1.3.0"
jsonrpc-core = "14.1.0"
jsonrpc-http-server = "14.1.0"
solana-logger = { path = "../logger", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,7 +1,7 @@
[package]
name = "solana-core"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
documentation = "https://docs.rs/solana"
homepage = "https://solana.com/"
readme = "../README.md"
@@ -42,35 +42,35 @@ regex = "1.3.7"
serde = "1.0.110"
serde_derive = "1.0.103"
serde_json = "1.0.53"
solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "1.2.3" }
solana-budget-program = { path = "../programs/budget", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.3" }
solana-faucet = { path = "../faucet", version = "1.2.3" }
solana-genesis-programs = { path = "../genesis-programs", version = "1.2.3" }
solana-ledger = { path = "../ledger", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-merkle-tree = { path = "../merkle-tree", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-measure = { path = "../measure", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-perf = { path = "../perf", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-streamer = { path = "../streamer", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-vote-program = { path = "../programs/vote", version = "1.2.3" }
solana-vote-signer = { path = "../vote-signer", version = "1.2.3" }
solana-sys-tuner = { path = "../sys-tuner", version = "1.2.3" }
solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "1.2.4" }
solana-budget-program = { path = "../programs/budget", version = "1.2.4" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.4" }
solana-faucet = { path = "../faucet", version = "1.2.4" }
solana-genesis-programs = { path = "../genesis-programs", version = "1.2.4" }
solana-ledger = { path = "../ledger", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-merkle-tree = { path = "../merkle-tree", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-measure = { path = "../measure", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-perf = { path = "../perf", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-streamer = { path = "../streamer", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
solana-vote-program = { path = "../programs/vote", version = "1.2.4" }
solana-vote-signer = { path = "../vote-signer", version = "1.2.4" }
solana-sys-tuner = { path = "../sys-tuner", version = "1.2.4" }
tempfile = "3.1.0"
thiserror = "1.0"
tokio = "0.1"
tokio-codec = "0.1"
tokio-fs = "0.1"
tokio-io = "0.1"
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.3" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.4" }
trees = "0.2.1"
[dev-dependencies]

View File

@@ -12,9 +12,10 @@ const NUM_ENTRIES: usize = 800;
#[bench]
fn bench_poh_verify_ticks(bencher: &mut Bencher) {
solana_logger::setup();
let zero = Hash::default();
let mut cur_hash = hash(&zero.as_ref());
let start = *&cur_hash;
let start_hash = hash(&zero.as_ref());
let mut cur_hash = start_hash;
let mut ticks: Vec<Entry> = Vec::with_capacity(NUM_ENTRIES);
for _ in 0..NUM_ENTRIES {
@@ -22,15 +23,15 @@ fn bench_poh_verify_ticks(bencher: &mut Bencher) {
}
bencher.iter(|| {
ticks.verify(&start);
assert!(ticks.verify(&start_hash));
})
}
#[bench]
fn bench_poh_verify_transaction_entries(bencher: &mut Bencher) {
let zero = Hash::default();
let mut cur_hash = hash(&zero.as_ref());
let start = *&cur_hash;
let start_hash = hash(&zero.as_ref());
let mut cur_hash = start_hash;
let keypair1 = Keypair::new();
let pubkey1 = keypair1.pubkey();
@@ -42,6 +43,6 @@ fn bench_poh_verify_transaction_entries(bencher: &mut Bencher) {
}
bencher.iter(|| {
ticks.verify(&start);
assert!(ticks.verify(&start_hash));
})
}

View File

@@ -226,6 +226,8 @@ struct GossipStats {
process_prune: Counter,
process_push_message: Counter,
prune_received_cache: Counter,
prune_message_count: Counter,
prune_message_len: Counter,
purge: Counter,
epoch_slots_lookup: Counter,
epoch_slots_push: Counter,
@@ -1423,13 +1425,13 @@ impl ClusterInfo {
/// At random pick a node and try to get updated changes from them
fn run_gossip(
obj: &Self,
&self,
recycler: &PacketsRecycler,
stakes: &HashMap<Pubkey, u64>,
sender: &PacketSender,
generate_pull_requests: bool,
) -> Result<()> {
let reqs = obj.generate_new_gossip_requests(&stakes, generate_pull_requests);
let reqs = self.generate_new_gossip_requests(&stakes, generate_pull_requests);
if !reqs.is_empty() {
let packets = to_packets_with_destination(recycler.clone(), &reqs);
sender.send(packets)?;
@@ -1437,14 +1439,14 @@ impl ClusterInfo {
Ok(())
}
fn handle_adopt_shred_version(obj: &Arc<Self>, adopt_shred_version: &mut bool) {
fn handle_adopt_shred_version(self: &Arc<Self>, adopt_shred_version: &mut bool) {
// Adopt the entrypoint's `shred_version` if ours is unset
if *adopt_shred_version {
// If gossip was given an entrypoint, lookup its id
let entrypoint_id = obj.entrypoint.read().unwrap().as_ref().map(|e| e.id);
let entrypoint_id = self.entrypoint.read().unwrap().as_ref().map(|e| e.id);
if let Some(entrypoint_id) = entrypoint_id {
// If a pull from the entrypoint was successful, it should exist in the crds table
let entrypoint = obj.lookup_contact_info(&entrypoint_id, |ci| ci.clone());
let entrypoint = self.lookup_contact_info(&entrypoint_id, |ci| ci.clone());
if let Some(entrypoint) = entrypoint {
if entrypoint.shred_version == 0 {
info!("Unable to adopt entrypoint's shred version");
@@ -1453,13 +1455,13 @@ impl ClusterInfo {
"Setting shred version to {:?} from entrypoint {:?}",
entrypoint.shred_version, entrypoint.id
);
obj.my_contact_info.write().unwrap().shred_version =
self.my_contact_info.write().unwrap().shred_version =
entrypoint.shred_version;
obj.gossip
self.gossip
.write()
.unwrap()
.set_shred_version(entrypoint.shred_version);
obj.insert_self();
self.insert_self();
*adopt_shred_version = false;
}
}
@@ -1468,7 +1470,7 @@ impl ClusterInfo {
}
fn handle_purge(
obj: &Arc<Self>,
self: &Arc<Self>,
bank_forks: &Option<Arc<RwLock<BankForks>>>,
stakes: &HashMap<Pubkey, u64>,
) {
@@ -1483,12 +1485,12 @@ impl ClusterInfo {
CRDS_GOSSIP_PULL_CRDS_TIMEOUT_MS
}
};
let timeouts = obj.gossip.read().unwrap().make_timeouts(stakes, timeout);
let num_purged = obj
.time_gossip_write_lock("purge", &obj.stats.purge)
let timeouts = self.gossip.read().unwrap().make_timeouts(stakes, timeout);
let num_purged = self
.time_gossip_write_lock("purge", &self.stats.purge)
.purge(timestamp(), &timeouts);
inc_new_counter_info!("cluster_info-purge-count", num_purged);
let table_size = obj.gossip.read().unwrap().crds.table.len();
let table_size = self.gossip.read().unwrap().crds.table.len();
datapoint_debug!(
"cluster_info-purge",
("table_size", table_size as i64, i64),
@@ -1498,7 +1500,7 @@ impl ClusterInfo {
/// randomly pick a node and ask them for updates asynchronously
pub fn gossip(
obj: Arc<Self>,
self: Arc<Self>,
bank_forks: Option<Arc<RwLock<BankForks>>>,
sender: PacketSender,
exit: &Arc<AtomicBool>,
@@ -1509,18 +1511,18 @@ impl ClusterInfo {
.spawn(move || {
let mut last_push = timestamp();
let mut last_contact_info_trace = timestamp();
let mut adopt_shred_version = obj.my_shred_version() == 0;
let mut adopt_shred_version = self.my_shred_version() == 0;
let recycler = PacketsRecycler::default();
let message = CrdsData::Version(Version::new(obj.id()));
obj.push_message(CrdsValue::new_signed(message, &obj.keypair));
let message = CrdsData::Version(Version::new(self.id()));
self.push_message(CrdsValue::new_signed(message, &self.keypair));
let mut generate_pull_requests = true;
loop {
let start = timestamp();
thread_mem_usage::datapoint("solana-gossip");
if start - last_contact_info_trace > 10000 {
// Log contact info every 10 seconds
info!("\n{}", obj.contact_info_trace());
info!("\n{}", self.contact_info_trace());
last_contact_info_trace = start;
}
@@ -1531,20 +1533,19 @@ impl ClusterInfo {
None => HashMap::new(),
};
let _ =
Self::run_gossip(&obj, &recycler, &stakes, &sender, generate_pull_requests);
let _ = self.run_gossip(&recycler, &stakes, &sender, generate_pull_requests);
if exit.load(Ordering::Relaxed) {
return;
}
Self::handle_purge(&obj, &bank_forks, &stakes);
self.handle_purge(&bank_forks, &stakes);
Self::handle_adopt_shred_version(&obj, &mut adopt_shred_version);
self.handle_adopt_shred_version(&mut adopt_shred_version);
//TODO: possibly tune this parameter
//we saw a deadlock passing an obj.read().unwrap().timeout into sleep
//we saw a deadlock passing an self.read().unwrap().timeout into sleep
if start - last_push > CRDS_GOSSIP_PULL_CRDS_TIMEOUT_MS / 2 {
obj.push_self(&stakes);
self.push_self(&stakes);
last_push = timestamp();
}
let elapsed = timestamp() - start;
@@ -1560,17 +1561,21 @@ impl ClusterInfo {
#[allow(clippy::cognitive_complexity)]
fn handle_packets(
me: &Self,
&self,
recycler: &PacketsRecycler,
stakes: &HashMap<Pubkey, u64>,
packets: Packets,
response_sender: &PacketSender,
epoch_ms: u64,
epoch_time_ms: u64,
) {
// iter over the packets, collect pulls separately and process everything else
let allocated = thread_mem_usage::Allocatedp::default();
let mut gossip_pull_data: Vec<PullData> = vec![];
let timeouts = me.gossip.read().unwrap().make_timeouts(&stakes, epoch_ms);
let timeouts = self
.gossip
.read()
.unwrap()
.make_timeouts(&stakes, epoch_time_ms);
let mut pull_responses = HashMap::new();
packets.packets.iter().for_each(|packet| {
let from_addr = packet.meta.addr();
@@ -1586,12 +1591,12 @@ impl ClusterInfo {
1
);
} else if let Some(contact_info) = caller.contact_info() {
if contact_info.id == me.id() {
if contact_info.id == self.id() {
warn!("PullRequest ignored, I'm talking to myself");
inc_new_counter_debug!("cluster_info-window-request-loopback", 1);
} else if contact_info.shred_version == 0
|| contact_info.shred_version == me.my_shred_version()
|| me.my_shred_version() == 0
|| contact_info.shred_version == self.my_shred_version()
|| self.my_shred_version() == 0
{
gossip_pull_data.push(PullData {
from_addr,
@@ -1599,7 +1604,7 @@ impl ClusterInfo {
filter,
});
} else {
me.stats.skip_pull_shred_version.add_relaxed(1);
self.stats.skip_pull_shred_version.add_relaxed(1);
}
}
datapoint_debug!(
@@ -1638,7 +1643,7 @@ impl ClusterInfo {
}
ret
});
let rsp = Self::handle_push_message(me, recycler, &from, data, stakes);
let rsp = self.handle_push_message(recycler, &from, data, stakes);
if let Some(rsp) = rsp {
let _ignore_disconnect = response_sender.send(rsp);
}
@@ -1650,13 +1655,12 @@ impl ClusterInfo {
Protocol::PruneMessage(from, data) => {
let start = allocated.get();
if data.verify() {
inc_new_counter_debug!("cluster_info-prune_message", 1);
inc_new_counter_debug!(
"cluster_info-prune_message-size",
data.prunes.len()
);
match me
.time_gossip_write_lock("process_prune", &me.stats.process_prune)
self.stats.prune_message_count.add_relaxed(1);
self.stats
.prune_message_len
.add_relaxed(data.prunes.len() as u64);
match self
.time_gossip_write_lock("process_prune", &self.stats.process_prune)
.process_prune_msg(
&from,
&data.destination,
@@ -1684,11 +1688,11 @@ impl ClusterInfo {
});
for (from, data) in pull_responses {
Self::handle_pull_response(me, &from, data, &timeouts);
self.handle_pull_response(&from, data, &timeouts);
}
// process the collected pulls together
let rsp = Self::handle_pull_requests(me, recycler, gossip_pull_data, stakes);
let rsp = self.handle_pull_requests(recycler, gossip_pull_data, stakes);
if let Some(rsp) = rsp {
let _ignore_disconnect = response_sender.send(rsp);
}
@@ -1717,7 +1721,7 @@ impl ClusterInfo {
// Pull requests take an incoming bloom filter of contained entries from a node
// and tries to send back to them the values it detects are missing.
fn handle_pull_requests(
me: &Self,
&self,
recycler: &PacketsRecycler,
requests: Vec<PullData>,
stakes: &HashMap<Pubkey, u64>,
@@ -1726,19 +1730,22 @@ impl ClusterInfo {
let mut caller_and_filters = vec![];
let mut addrs = vec![];
let mut time = Measure::start("handle_pull_requests");
me.update_data_budget(stakes);
self.update_data_budget(stakes);
for pull_data in requests {
caller_and_filters.push((pull_data.caller, pull_data.filter));
addrs.push(pull_data.from_addr);
}
let now = timestamp();
let self_id = me.id();
let self_id = self.id();
let pull_responses = me
.time_gossip_read_lock("generate_pull_responses", &me.stats.generate_pull_responses)
let pull_responses = self
.time_gossip_read_lock(
"generate_pull_responses",
&self.stats.generate_pull_responses,
)
.generate_pull_responses(&caller_and_filters);
me.time_gossip_write_lock("process_pull_reqs", &me.stats.process_pull_requests)
self.time_gossip_write_lock("process_pull_reqs", &self.stats.process_pull_requests)
.process_pull_requests(caller_and_filters, now);
// Filter bad to addresses
@@ -1804,7 +1811,7 @@ impl ClusterInfo {
let protocol = Protocol::PullResponse(self_id, vec![response]);
let new_packet = Packet::from_data(&from_addr, protocol);
{
let mut w_outbound_budget = me.outbound_budget.write().unwrap();
let mut w_outbound_budget = self.outbound_budget.write().unwrap();
if w_outbound_budget.bytes > new_packet.meta.size {
sent.insert(index);
w_outbound_budget.bytes -= new_packet.meta.size;
@@ -1837,31 +1844,31 @@ impl ClusterInfo {
// Returns (failed, timeout, success)
fn handle_pull_response(
me: &Self,
&self,
from: &Pubkey,
mut crds_values: Vec<CrdsValue>,
timeouts: &HashMap<Pubkey, u64>,
) -> (usize, usize, usize) {
let len = crds_values.len();
trace!("PullResponse me: {} from: {} len={}", me.id, from, len);
trace!("PullResponse me: {} from: {} len={}", self.id, from, len);
if let Some(shred_version) = me.lookup_contact_info(from, |ci| ci.shred_version) {
if let Some(shred_version) = self.lookup_contact_info(from, |ci| ci.shred_version) {
Self::filter_by_shred_version(
from,
&mut crds_values,
shred_version,
me.my_shred_version(),
self.my_shred_version(),
);
}
let filtered_len = crds_values.len();
let mut pull_stats = ProcessPullStats::default();
let (filtered_pulls, filtered_pulls_expired_timeout) = me
.time_gossip_read_lock("filter_pull_resp", &me.stats.filter_pull_response)
let (filtered_pulls, filtered_pulls_expired_timeout) = self
.time_gossip_read_lock("filter_pull_resp", &self.stats.filter_pull_response)
.filter_pull_responses(timeouts, crds_values, timestamp(), &mut pull_stats);
if !filtered_pulls.is_empty() || !filtered_pulls_expired_timeout.is_empty() {
me.time_gossip_write_lock("process_pull_resp", &me.stats.process_pull_response)
self.time_gossip_write_lock("process_pull_resp", &self.stats.process_pull_response)
.process_pull_responses(
from,
filtered_pulls,
@@ -1871,23 +1878,23 @@ impl ClusterInfo {
);
}
me.stats
self.stats
.skip_pull_response_shred_version
.add_relaxed((len - filtered_len) as u64);
me.stats.process_pull_response_count.add_relaxed(1);
me.stats
self.stats.process_pull_response_count.add_relaxed(1);
self.stats
.process_pull_response_len
.add_relaxed(filtered_len as u64);
me.stats
self.stats
.process_pull_response_timeout
.add_relaxed(pull_stats.timeout_count as u64);
me.stats
self.stats
.process_pull_response_fail_insert
.add_relaxed(pull_stats.failed_insert as u64);
me.stats
self.stats
.process_pull_response_fail_timeout
.add_relaxed(pull_stats.failed_timeout as u64);
me.stats
self.stats
.process_pull_response_success
.add_relaxed(pull_stats.success as u64);
@@ -1915,46 +1922,46 @@ impl ClusterInfo {
}
fn handle_push_message(
me: &Self,
&self,
recycler: &PacketsRecycler,
from: &Pubkey,
mut crds_values: Vec<CrdsValue>,
stakes: &HashMap<Pubkey, u64>,
) -> Option<Packets> {
let self_id = me.id();
me.stats.push_message_count.add_relaxed(1);
let self_id = self.id();
self.stats.push_message_count.add_relaxed(1);
let len = crds_values.len();
if let Some(shred_version) = me.lookup_contact_info(from, |ci| ci.shred_version) {
if let Some(shred_version) = self.lookup_contact_info(from, |ci| ci.shred_version) {
Self::filter_by_shred_version(
from,
&mut crds_values,
shred_version,
me.my_shred_version(),
self.my_shred_version(),
);
}
let filtered_len = crds_values.len();
me.stats
self.stats
.push_message_value_count
.add_relaxed(filtered_len as u64);
me.stats
self.stats
.skip_push_message_shred_version
.add_relaxed((len - filtered_len) as u64);
let updated: Vec<_> = me
.time_gossip_write_lock("process_push", &me.stats.process_push_message)
let updated: Vec<_> = self
.time_gossip_write_lock("process_push", &self.stats.process_push_message)
.process_push_message(from, crds_values, timestamp());
let updated_labels: Vec<_> = updated.into_iter().map(|u| u.value.label()).collect();
let prunes_map: HashMap<Pubkey, HashSet<Pubkey>> = me
.time_gossip_write_lock("prune_received_cache", &me.stats.prune_received_cache)
let prunes_map: HashMap<Pubkey, HashSet<Pubkey>> = self
.time_gossip_write_lock("prune_received_cache", &self.stats.prune_received_cache)
.prune_received_cache(updated_labels, stakes);
let rsp: Vec<_> = prunes_map
.into_iter()
.filter_map(|(from, prune_set)| {
inc_new_counter_debug!("cluster_info-push_message-prunes", prune_set.len());
me.lookup_contact_info(&from, |ci| ci.clone())
self.lookup_contact_info(&from, |ci| ci.clone())
.and_then(|ci| {
let mut prune_msg = PruneData {
pubkey: self_id,
@@ -1963,7 +1970,7 @@ impl ClusterInfo {
destination: from,
wallclock: timestamp(),
};
prune_msg.sign(&me.keypair);
prune_msg.sign(&self.keypair);
let rsp = Protocol::PruneMessage(self_id, prune_msg);
Some((ci.gossip, rsp))
})
@@ -1973,11 +1980,11 @@ impl ClusterInfo {
return None;
}
let mut packets = to_packets_with_destination(recycler.clone(), &rsp);
me.stats
self.stats
.push_response_count
.add_relaxed(packets.packets.len() as u64);
if !packets.is_empty() {
let pushes: Vec<_> = me.new_push_requests();
let pushes: Vec<_> = self.new_push_requests();
inc_new_counter_debug!("cluster_info-push_message-pushes", pushes.len());
pushes.into_iter().for_each(|(remote_gossip_addr, req)| {
if !remote_gossip_addr.ip().is_unspecified() && remote_gossip_addr.port() != 0 {
@@ -1993,9 +2000,48 @@ impl ClusterInfo {
}
}
fn get_stakes_and_epoch_time(
bank_forks: Option<&Arc<RwLock<BankForks>>>,
) -> (HashMap<Pubkey, u64>, u64) {
let epoch_time_ms;
let stakes: HashMap<_, _> = match bank_forks {
Some(ref bank_forks) => {
let bank = bank_forks.read().unwrap().working_bank();
let epoch = bank.epoch();
let epoch_schedule = bank.epoch_schedule();
epoch_time_ms = epoch_schedule.get_slots_in_epoch(epoch) * DEFAULT_MS_PER_SLOT;
staking_utils::staked_nodes(&bank)
}
None => {
inc_new_counter_info!("cluster_info-purge-no_working_bank", 1);
epoch_time_ms = CRDS_GOSSIP_PULL_CRDS_TIMEOUT_MS;
HashMap::new()
}
};
(stakes, epoch_time_ms)
}
fn process_packets(
&self,
requests: Vec<Packets>,
thread_pool: &ThreadPool,
recycler: &PacketsRecycler,
response_sender: &PacketSender,
stakes: HashMap<Pubkey, u64>,
epoch_time_ms: u64,
) {
let sender = response_sender.clone();
thread_pool.install(|| {
requests.into_par_iter().for_each_with(sender, |s, reqs| {
self.handle_packets(&recycler, &stakes, reqs, s, epoch_time_ms)
});
});
}
/// Process messages from the network
fn run_listen(
obj: &Self,
&self,
recycler: &PacketsRecycler,
bank_forks: Option<&Arc<RwLock<BankForks>>>,
requests_receiver: &PacketReceiver,
@@ -2003,7 +2049,6 @@ impl ClusterInfo {
thread_pool: &ThreadPool,
last_print: &mut Instant,
) -> Result<()> {
//TODO cache connections
let timeout = Duration::new(1, 0);
let mut requests = vec![requests_receiver.recv_timeout(timeout)?];
let mut num_requests = requests.last().unwrap().packets.len();
@@ -2014,35 +2059,26 @@ impl ClusterInfo {
num_requests += more_reqs.packets.len();
requests.push(more_reqs)
}
if num_requests >= MAX_GOSSIP_TRAFFIC {
warn!(
"Too much gossip traffic, ignoring some messages (requests={}, max requests={})",
num_requests, MAX_GOSSIP_TRAFFIC
);
}
let epoch_ms;
let stakes: HashMap<_, _> = match bank_forks {
Some(ref bank_forks) => {
let bank = bank_forks.read().unwrap().working_bank();
let epoch = bank.epoch();
let epoch_schedule = bank.epoch_schedule();
epoch_ms = epoch_schedule.get_slots_in_epoch(epoch) * DEFAULT_MS_PER_SLOT;
staking_utils::staked_nodes(&bank)
}
None => {
inc_new_counter_info!("cluster_info-purge-no_working_bank", 1);
epoch_ms = CRDS_GOSSIP_PULL_CRDS_TIMEOUT_MS;
HashMap::new()
}
};
let sender = response_sender.clone();
thread_pool.install(|| {
requests.into_par_iter().for_each_with(sender, |s, reqs| {
Self::handle_packets(obj, &recycler, &stakes, reqs, s, epoch_ms)
});
});
Self::print_reset_stats(obj, last_print);
let (stakes, epoch_time_ms) = Self::get_stakes_and_epoch_time(bank_forks);
self.process_packets(
requests,
thread_pool,
recycler,
response_sender,
stakes,
epoch_time_ms,
);
self.print_reset_stats(last_print);
Ok(())
}
@@ -2207,6 +2243,16 @@ impl ClusterInfo {
self.stats.new_pull_requests_count.clear(),
i64
),
(
"prune_message_count",
self.stats.prune_message_count.clear(),
i64
),
(
"prune_message_len",
self.stats.prune_message_len.clear(),
i64
),
);
*last_print = Instant::now();
@@ -2214,7 +2260,7 @@ impl ClusterInfo {
}
pub fn listen(
me: Arc<Self>,
self: Arc<Self>,
bank_forks: Option<Arc<RwLock<BankForks>>>,
requests_receiver: PacketReceiver,
response_sender: PacketSender,
@@ -2232,8 +2278,7 @@ impl ClusterInfo {
.unwrap();
let mut last_print = Instant::now();
loop {
let e = Self::run_listen(
&me,
let e = self.run_listen(
&recycler,
bank_forks.as_ref(),
&requests_receiver,
@@ -2245,10 +2290,10 @@ impl ClusterInfo {
return;
}
if e.is_err() {
let r_gossip = me.gossip.read().unwrap();
let r_gossip = self.gossip.read().unwrap();
debug!(
"{}: run_listen timeout, table size: {}",
me.id(),
self.id(),
r_gossip.crds.table.len()
);
}

View File

@@ -76,6 +76,7 @@ solana_sdk::pubkeys!(
"FR84wZQy3Y3j2gWz6pgETUiUoJtreMEuWfbg6573UCj9",
"5q54XjQ7vDx4y6KphPeE97LUNiYGtP55spjvXAWPGBuf",
"3o6xgkJ9sTmDeQWyfj3sxwon18fXJB9PV5LDc8sfgR4a",
"GumSE5HsMV5HCwBTv2D2D81yy9x17aDkvobkqAfTRgmo",
]
);

View File

@@ -42,7 +42,16 @@ impl ReplaySlotStats {
self.fetch_fail_elapsed as i64,
i64
),
("entry_verification_time", self.verify_elapsed as i64, i64),
(
"entry_poh_verification_time",
self.poh_verify_elapsed as i64,
i64
),
(
"entry_transaction_verification_time",
self.transaction_verify_elapsed as i64,
i64
),
("replay_time", self.replay_elapsed as i64, i64),
(
"replay_total_elapsed",

View File

@@ -277,6 +277,7 @@ impl ReplayStage {
transaction_status_sender.clone(),
&verify_recyclers,
&mut heaviest_subtree_fork_choice,
&subscriptions,
);
Self::report_memory(&allocated, "replay_active_banks", start);
@@ -1103,6 +1104,7 @@ impl ReplayStage {
transaction_status_sender: Option<TransactionStatusSender>,
verify_recyclers: &VerifyRecyclers,
heaviest_subtree_fork_choice: &mut HeaviestSubtreeForkChoice,
subscriptions: &Arc<RpcSubscriptions>,
) -> bool {
let mut did_complete_bank = false;
let mut tx_count = 0;
@@ -1172,6 +1174,7 @@ impl ReplayStage {
bank.freeze();
heaviest_subtree_fork_choice
.add_new_leaf_slot(bank.slot(), Some(bank.parent_slot()));
subscriptions.notify_frozen(bank.slot());
} else {
trace!(
"bank {} not completed tick_height: {}, max_tick_height: {}",

View File

@@ -64,6 +64,7 @@ enum NotificationEntry {
Slot(SlotInfo),
Vote(Vote),
Root(Slot),
Frozen(Slot),
Bank(CacheSlotInfo),
Gossip(Slot),
}
@@ -72,6 +73,7 @@ impl std::fmt::Debug for NotificationEntry {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
NotificationEntry::Root(root) => write!(f, "Root({})", root),
NotificationEntry::Frozen(slot) => write!(f, "Frozen({})", slot),
NotificationEntry::Vote(vote) => write!(f, "Vote({:?})", vote),
NotificationEntry::Slot(slot_info) => write!(f, "Slot({:?})", slot_info),
NotificationEntry::Bank(cache_slot_info) => write!(
@@ -227,6 +229,8 @@ fn filter_account_result(
last_notified_slot: Slot,
) -> (Box<dyn Iterator<Item = RpcAccount>>, Slot) {
if let Some((account, fork)) = result {
// If fork < last_notified_slot this means that we last notified for a fork
// and should notify that the account state has been reverted.
if fork != last_notified_slot {
return (Box::new(iter::once(RpcAccount::encode(account))), fork);
}
@@ -647,6 +651,10 @@ impl RpcSubscriptions {
self.enqueue_notification(NotificationEntry::Vote(vote.clone()));
}
pub fn notify_frozen(&self, frozen_slot: Slot) {
self.enqueue_notification(NotificationEntry::Frozen(frozen_slot));
}
pub fn add_root_subscription(&self, sub_id: SubscriptionId, subscriber: Subscriber<Slot>) {
let sink = subscriber.assign_id(sub_id.clone()).unwrap();
let mut subscriptions = self.subscriptions.root_subscriptions.write().unwrap();
@@ -690,6 +698,7 @@ impl RpcSubscriptions {
bank_forks: Arc<RwLock<BankForks>>,
last_checked_slots: Arc<RwLock<HashMap<CommitmentLevel, Slot>>>,
) {
let mut pending_gossip_notifications = HashSet::new();
loop {
if exit.load(Ordering::Relaxed) {
break;
@@ -720,6 +729,12 @@ impl RpcSubscriptions {
for (_, sink) in subscriptions.iter() {
notifier.notify(root, sink);
}
// Prune old pending notifications
pending_gossip_notifications = pending_gossip_notifications
.into_iter()
.filter(|&s| s > root)
.collect();
}
NotificationEntry::Bank(cache_slot_info) => {
RpcSubscriptions::notify_accounts_programs_signatures(
@@ -731,23 +746,36 @@ impl RpcSubscriptions {
&notifier,
)
}
NotificationEntry::Frozen(slot) => {
if pending_gossip_notifications.remove(&slot) {
Self::process_gossip_notification(
slot,
&notifier,
&subscriptions,
&bank_forks,
&last_checked_slots,
);
}
}
NotificationEntry::Gossip(slot) => {
let _ = last_checked_slots
.write()
let bank_frozen = bank_forks
.read()
.unwrap()
.insert(CommitmentLevel::SingleGossip, slot);
let cache_slot_info = CacheSlotInfo {
highest_confirmed_slot: slot,
..CacheSlotInfo::default()
};
RpcSubscriptions::notify_accounts_programs_signatures(
&subscriptions.gossip_account_subscriptions,
&subscriptions.gossip_program_subscriptions,
&subscriptions.gossip_signature_subscriptions,
&bank_forks,
&cache_slot_info,
&notifier,
)
.get(slot)
.filter(|b| b.is_frozen())
.is_some();
if !bank_frozen {
pending_gossip_notifications.insert(slot);
} else {
Self::process_gossip_notification(
slot,
&notifier,
&subscriptions,
&bank_forks,
&last_checked_slots,
);
}
}
},
Err(RecvTimeoutError::Timeout) => {
@@ -761,6 +789,42 @@ impl RpcSubscriptions {
}
}
fn process_gossip_notification(
slot: Slot,
notifier: &RpcNotifier,
subscriptions: &Subscriptions,
bank_forks: &Arc<RwLock<BankForks>>,
last_checked_slots: &Arc<RwLock<HashMap<CommitmentLevel, Slot>>>,
) {
let mut last_checked_slots_lock = last_checked_slots.write().unwrap();
let last_checked_slot = last_checked_slots_lock
.get(&CommitmentLevel::SingleGossip)
.cloned()
.unwrap_or_default();
if slot > last_checked_slot {
last_checked_slots_lock.insert(CommitmentLevel::SingleGossip, slot);
} else {
// Avoid sending stale or duplicate notifications
return;
}
drop(last_checked_slots_lock);
let cache_slot_info = CacheSlotInfo {
highest_confirmed_slot: slot,
..CacheSlotInfo::default()
};
RpcSubscriptions::notify_accounts_programs_signatures(
&subscriptions.gossip_account_subscriptions,
&subscriptions.gossip_program_subscriptions,
&subscriptions.gossip_signature_subscriptions,
&bank_forks,
&cache_slot_info,
&notifier,
);
}
fn notify_accounts_programs_signatures(
account_subscriptions: &Arc<RpcAccountSubscriptions>,
program_subscriptions: &Arc<RpcProgramSubscriptions>,
@@ -1380,6 +1444,8 @@ pub(crate) mod tests {
let bank0 = bank_forks.read().unwrap().get(0).unwrap().clone();
let bank1 = Bank::new_from_parent(&bank0, &Pubkey::default(), 1);
bank_forks.write().unwrap().insert(bank1);
let bank2 = Bank::new_from_parent(&bank0, &Pubkey::default(), 2);
bank_forks.write().unwrap().insert(bank2);
let alice = Keypair::new();
let (subscriber0, _id_receiver, transport_receiver0) =
@@ -1405,17 +1471,10 @@ pub(crate) mod tests {
sub_id0.clone(),
subscriber0,
);
let sub_id1 = SubscriptionId::Number(1 as u64);
subscriptions.add_account_subscription(
alice.pubkey(),
Some(CommitmentConfig::recent()),
sub_id1.clone(),
subscriber1,
);
assert!(subscriptions
.subscriptions
.account_subscriptions
.gossip_account_subscriptions
.read()
.unwrap()
.contains_key(&alice.pubkey()));
@@ -1428,37 +1487,27 @@ pub(crate) mod tests {
16,
&solana_budget_program::id(),
);
// Add the transaction to the 1st bank and then freeze the bank
let bank1 = bank_forks.write().unwrap().get(1).cloned().unwrap();
bank1.process_transaction(&tx).unwrap();
bank1.freeze();
// Add the same transaction to the unfrozen 2nd bank
bank_forks
.write()
.unwrap()
.get(1)
.get(2)
.unwrap()
.process_transaction(&tx)
.unwrap();
let mut cache_slot_info = CacheSlotInfo::default();
cache_slot_info.current_slot = 1;
subscriptions.notify_subscribers(cache_slot_info);
let (response, _) = robust_poll_or_panic(transport_receiver1);
let expected = json!({
"jsonrpc": "2.0",
"method": "accountNotification",
"params": {
"result": {
"context": { "slot": 1 },
"value": {
"data": "1111111111111111",
"executable": false,
"lamports": 1,
"owner": "Budget1111111111111111111111111111111111111",
"rentEpoch": 1,
},
},
"subscription": 1,
}
});
assert_eq!(serde_json::to_string(&expected).unwrap(), response);
// First, notify the unfrozen bank first to queue pending notification
subscriptions.notify_gossip_subscribers(2);
// Now, notify the frozen bank and ensure its notifications are processed
subscriptions.notify_gossip_subscribers(1);
let (response, _) = robust_poll_or_panic(transport_receiver0);
let expected = json!({
"jsonrpc": "2.0",
@@ -1478,18 +1527,41 @@ pub(crate) mod tests {
}
});
assert_eq!(serde_json::to_string(&expected).unwrap(), response);
subscriptions.remove_account_subscription(&sub_id0);
assert!(subscriptions
.subscriptions
.account_subscriptions
.read()
.unwrap()
.contains_key(&alice.pubkey()));
let sub_id1 = SubscriptionId::Number(1 as u64);
subscriptions.add_account_subscription(
alice.pubkey(),
Some(CommitmentConfig::single_gossip()),
sub_id1.clone(),
subscriber1,
);
subscriptions.notify_frozen(2);
let (response, _) = robust_poll_or_panic(transport_receiver1);
let expected = json!({
"jsonrpc": "2.0",
"method": "accountNotification",
"params": {
"result": {
"context": { "slot": 2 },
"value": {
"data": "1111111111111111",
"executable": false,
"lamports": 1,
"owner": "Budget1111111111111111111111111111111111111",
"rentEpoch": 1,
},
},
"subscription": 1,
}
});
assert_eq!(serde_json::to_string(&expected).unwrap(), response);
subscriptions.remove_account_subscription(&sub_id1);
assert!(!subscriptions
.subscriptions
.account_subscriptions
.gossip_account_subscriptions
.read()
.unwrap()
.contains_key(&alice.pubkey()));

View File

@@ -172,7 +172,11 @@ impl Validator {
info!("entrypoint: {:?}", entrypoint_info_option);
info!("Initializing sigverify, this could take a while...");
if solana_perf::perf_libs::api().is_some() {
info!("Initializing sigverify, this could take a while...");
} else {
info!("Initializing sigverify...");
}
sigverify::init();
info!("Done.");

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-crate-features"
version = "1.2.3"
version = "1.2.4"
description = "Solana Crate Features"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"

View File

@@ -983,7 +983,7 @@ The result field will be a JSON object with the following fields:
// Request
curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1, "method":"getVersion"}' http://localhost:8899
// Result
{"jsonrpc":"2.0","result":{"solana-core": "1.2.3"},"id":1}
{"jsonrpc":"2.0","result":{"solana-core": "1.2.4"},"id":1}
```
### getVoteAccounts

View File

@@ -1,11 +1,24 @@
# How To Register
1. **Registration Form** Submit the form [here](https://forms.gle/gGS2z4jTXq6hAZ2X9). Once the form is submitted, our team will review the information and insert the information into a publicly viewable spreadsheet for tracking.
2. **KYC/AML**
Complete KYC/AML [here](https://tsm.coinlist.co/solana-tour-de-sol/new). \(**Ignore all the references to investment** on the portal; we just used their default template. Apologies for the confusion!\)
#### 1) Registration Form
[Submit the registration form here](https://forms.gle/gQYLozj5u7yKU3HG6)
We have prepared a guide to the KYC/AML process [here](https://docs.google.com/presentation/d/1gz8e34piUzzwzCMKwVrKKbZiPXV64Uq2-Izt4-VcMR4/edit?usp=sharing). Note that KYC/AML is mandatory **before** participating in any stage, and compensation is conditional upon you passing KYC/AML.
#### 2) KYC/AML (via Coinlist)
[Register for KYC/AML + Participation Agreement here](https://tsm.coinlist.co/solana-staking)
3. **Participation Agreement** Instructions for completing the participation agreement W-9 will be emailed out to the email you provided, to be filled out and returned to us.
4. **Tax Documents: W-8 BEN or W9** Once your Coinlist KYC application is approved, our team will send either a W-8 BEN for international participants or a W9 via DocuSign. Fill out the form with the same information you used with CoinList.
5. **Status** The status of your participation agreement will be tracked along with the other registration information. Well also try to notify you upon completion or rejection of any submitted participation agreements.
*If youve completed KYC/AML previously for either SLP or TdS with the same
entity/individual then you will not need to go through this again.
We do not accept U.S. entities or individuals.*
#### 3) Join Our Discord
**Required** for all Tour de SOL validators, as this is our primary
communication channel: https://discord.gg/N3mqAfa
### Next Steps
- Check out our documentation to start getting familiar with how to
[Run a Validator](../../running-validator/README.md)
- After you've finished the registration and KYC, you will receive an email
with instructions to finish your on-boarding process.
- See you on Discord!

View File

@@ -2,7 +2,7 @@
authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-dos"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -13,14 +13,14 @@ clap = "2.33.1"
log = "0.4.8"
rand = "0.7.0"
rayon = "1.3.0"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.3" }
solana-ledger = { path = "../ledger", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-core = { path = "../core", version = "1.2.4" }
solana-ledger = { path = "../ledger", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-download-utils"
version = "1.2.3"
version = "1.2.4"
description = "Solana Download Utils"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -14,8 +14,8 @@ console = "0.10.1"
indicatif = "0.14.0"
log = "0.4.8"
reqwest = { version = "0.10.4", default-features = false, features = ["blocking", "rustls-tls", "json"] }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-ledger = { path = "../ledger", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-ledger = { path = "../ledger", version = "1.2.4" }
tar = "0.4.28"
[lib]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-faucet"
version = "1.2.3"
version = "1.2.4"
description = "Solana Faucet"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -16,11 +16,11 @@ clap = "2.33"
log = "0.4.8"
serde = "1.0.110"
serde_derive = "1.0.103"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
tokio = "0.1"
tokio-codec = "0.1"

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash
PERF_LIBS_VERSION=v0.18.1
PERF_LIBS_VERSION=v0.19.0
VERSION=$PERF_LIBS_VERSION-1
set -e

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-genesis-programs"
version = "1.2.3"
version = "1.2.4"
description = "Solana genesis programs"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -10,12 +10,12 @@ edition = "2018"
[dependencies]
log = { version = "0.4.8" }
solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "1.2.3" }
solana-budget-program = { path = "../programs/budget", version = "1.2.3" }
solana-exchange-program = { path = "../programs/exchange", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-vest-program = { path = "../programs/vest", version = "1.2.3" }
solana-bpf-loader-program = { path = "../programs/bpf_loader", version = "1.2.4" }
solana-budget-program = { path = "../programs/budget", version = "1.2.4" }
solana-exchange-program = { path = "../programs/exchange", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-vest-program = { path = "../programs/vest", version = "1.2.4" }
[lib]
crate-type = ["lib"]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-genesis"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -15,14 +15,14 @@ chrono = "0.4"
serde = "1.0.110"
serde_json = "1.0.53"
serde_yaml = "0.8.12"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-genesis-programs = { path = "../genesis-programs", version = "1.2.3" }
solana-ledger = { path = "../ledger", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-vote-program = { path = "../programs/vote", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-genesis-programs = { path = "../genesis-programs", version = "1.2.4" }
solana-ledger = { path = "../ledger", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-vote-program = { path = "../programs/vote", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
tempfile = "3.1.0"
[[bin]]

View File

@@ -3,20 +3,20 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-gossip"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
[dependencies]
clap = "2.33.1"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-core = { path = "../core", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-install"
description = "The solana cluster software installer"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -24,12 +24,12 @@ reqwest = { version = "0.10.4", default-features = false, features = ["blocking"
serde = "1.0.110"
serde_derive = "1.0.103"
serde_yaml = "0.8.12"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-config-program = { path = "../programs/config", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-config-program = { path = "../programs/config", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
semver = "0.9.0"
tar = "0.4.28"
tempdir = "0.3.7"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-keygen"
version = "1.2.3"
version = "1.2.4"
description = "Solana key generation utility"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -13,11 +13,11 @@ bs58 = "0.3.1"
clap = "2.33"
dirs = "2.0.2"
num_cpus = "1.13.0"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-cli-config = { path = "../cli-config", version = "1.2.3" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-cli-config = { path = "../cli-config", version = "1.2.4" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
tiny-bip39 = "0.7.0"
[[bin]]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-ledger-tool"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -16,16 +16,16 @@ histogram = "*"
log = { version = "0.4.8" }
serde_json = "1.0.53"
serde_yaml = "0.8.12"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-cli = { path = "../cli", version = "1.2.3" }
solana-ledger = { path = "../ledger", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-vote-program = { path = "../programs/vote", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-cli = { path = "../cli", version = "1.2.4" }
solana-ledger = { path = "../ledger", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
solana-vote-program = { path = "../programs/vote", version = "1.2.4" }
tempfile = "3.1.0"
[dev-dependencies]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-ledger"
version = "1.2.3"
version = "1.2.4"
description = "Solana ledger"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -15,6 +15,8 @@ bzip2 = "0.3.3"
chrono = { version = "0.4.11", features = ["serde"] }
crossbeam-channel = "0.4"
dir-diff = "0.3.2"
dlopen_derive = "0.1.4"
dlopen = "0.1.8"
sha2 = "0.8.2"
flate2 = "1.0.14"
zstd = "0.5.1"
@@ -30,19 +32,19 @@ reed-solomon-erasure = { version = "4.0.2", features = ["simd-accel"] }
regex = "1.3.7"
serde = "1.0.110"
serde_bytes = "0.11.4"
solana-transaction-status = { path = "../transaction-status", version = "1.2.3" }
solana-genesis-programs = { path = "../genesis-programs", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-measure = { path = "../measure", version = "1.2.3" }
solana-merkle-tree = { path = "../merkle-tree", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-perf = { path = "../perf", version = "1.2.3" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.4" }
solana-genesis-programs = { path = "../genesis-programs", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-measure = { path = "../measure", version = "1.2.4" }
solana-merkle-tree = { path = "../merkle-tree", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-perf = { path = "../perf", version = "1.2.4" }
ed25519-dalek = "1.0.0-pre.3"
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-vote-program = { path = "../programs/vote", version = "1.2.3" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-vote-program = { path = "../programs/vote", version = "1.2.4" }
symlink = "0.1.0"
tar = "0.4.28"
thiserror = "1.0"
@@ -59,7 +61,7 @@ features = ["lz4"]
[dev-dependencies]
assert_matches = "1.3.0"
matches = "0.1.6"
solana-budget-program = { path = "../programs/budget", version = "1.2.3" }
solana-budget-program = { path = "../programs/budget", version = "1.2.4" }
[lib]
crate-type = ["lib"]

View File

@@ -484,7 +484,8 @@ fn confirm_full_slot(
pub struct ConfirmationTiming {
pub started: Instant,
pub replay_elapsed: u64,
pub verify_elapsed: u64,
pub poh_verify_elapsed: u64,
pub transaction_verify_elapsed: u64,
pub fetch_elapsed: u64,
pub fetch_fail_elapsed: u64,
}
@@ -494,7 +495,8 @@ impl Default for ConfirmationTiming {
Self {
started: Instant::now(),
replay_elapsed: 0,
verify_elapsed: 0,
poh_verify_elapsed: 0,
transaction_verify_elapsed: 0,
fetch_elapsed: 0,
fetch_fail_elapsed: 0,
}
@@ -599,11 +601,13 @@ pub fn confirm_slot(
timing.replay_elapsed += replay_elapsed.as_us();
if let Some(mut verifier) = verifier {
if !verifier.finish_verify(&entries) {
let verified = verifier.finish_verify(&entries);
timing.poh_verify_elapsed += verifier.poh_duration_us();
timing.transaction_verify_elapsed += verifier.transaction_duration_us();
if !verified {
warn!("Ledger proof of history failed at slot: {}", bank.slot());
return Err(BlockError::InvalidEntryHash.into());
}
timing.verify_elapsed += verifier.duration_ms();
}
process_result?;

View File

@@ -3,7 +3,10 @@
//! transactions within it. Entries cannot be reordered, and its field `num_hashes`
//! represents an approximate amount of time since the last Entry was created.
use crate::poh::Poh;
use dlopen::symbor::{Container, SymBorApi, Symbol};
use dlopen_derive::SymBorApi;
use log::*;
use rand::{thread_rng, Rng};
use rayon::prelude::*;
use rayon::ThreadPool;
use serde::{Deserialize, Serialize};
@@ -18,7 +21,9 @@ use solana_sdk::hash::Hash;
use solana_sdk::timing;
use solana_sdk::transaction::Transaction;
use std::cell::RefCell;
use std::ffi::OsStr;
use std::sync::mpsc::{Receiver, Sender};
use std::sync::Once;
use std::sync::{Arc, Mutex};
use std::thread::JoinHandle;
use std::time::Instant;
@@ -33,6 +38,56 @@ thread_local!(static PAR_THREAD_POOL: RefCell<ThreadPool> = RefCell::new(rayon::
pub type EntrySender = Sender<Vec<Entry>>;
pub type EntryReceiver = Receiver<Vec<Entry>>;
static mut API: Option<Container<Api>> = None;
pub fn init_poh() {
init(OsStr::new("libpoh-simd.so"));
}
fn init(name: &OsStr) {
static INIT_HOOK: Once = Once::new();
info!("Loading {:?}", name);
unsafe {
INIT_HOOK.call_once(|| {
let path;
let lib_name = if let Some(perf_libs_path) = solana_perf::perf_libs::locate_perf_libs()
{
solana_perf::perf_libs::append_to_ld_library_path(
perf_libs_path.to_str().unwrap_or("").to_string(),
);
path = perf_libs_path.join(name);
path.as_os_str()
} else {
name
};
API = Container::load(lib_name).ok();
})
}
}
pub fn api() -> Option<&'static Container<Api<'static>>> {
{
static INIT_HOOK: Once = Once::new();
INIT_HOOK.call_once(|| {
if std::env::var("TEST_PERF_LIBS").is_ok() {
init_poh()
}
})
}
unsafe { API.as_ref() }
}
#[derive(SymBorApi)]
pub struct Api<'a> {
pub poh_verify_many_simd_avx512skx:
Symbol<'a, unsafe extern "C" fn(hashes: *mut u8, num_hashes: *const u64)>,
pub poh_verify_many_simd_avx2:
Symbol<'a, unsafe extern "C" fn(hashes: *mut u8, num_hashes: *const u64)>,
}
/// Each Entry contains three pieces of data. The `num_hashes` field is the number
/// of hashes performed since the previous entry. The `hash` field is the result
/// of hashing `hash` from the previous entry `num_hashes` times. The `transactions`
@@ -151,12 +206,22 @@ pub fn next_hash(start_hash: &Hash, num_hashes: u64, transactions: &[Transaction
}
}
pub struct VerificationData {
pub struct GpuVerificationData {
thread_h: Option<JoinHandle<u64>>,
verification_status: EntryVerificationStatus,
hashes: Option<Arc<Mutex<PinnedVec<Hash>>>>,
tx_hashes: Vec<Option<Hash>>,
duration_ms: u64,
}
pub enum DeviceVerificationData {
CPU(),
GPU(GpuVerificationData),
}
pub struct EntryVerificationState {
verification_status: EntryVerificationStatus,
poh_duration_us: u64,
transaction_duration_us: u64,
device_verification_data: DeviceVerificationData,
}
#[derive(Default, Clone)]
@@ -172,33 +237,30 @@ pub enum EntryVerificationStatus {
Pending,
}
pub enum EntryVerificationState {
CPU(VerificationData),
GPU(VerificationData),
}
impl EntryVerificationState {
pub fn status(&self) -> EntryVerificationStatus {
match self {
EntryVerificationState::CPU(state) => state.verification_status,
EntryVerificationState::GPU(state) => state.verification_status,
}
self.verification_status
}
pub fn duration_ms(&self) -> u64 {
match self {
EntryVerificationState::CPU(state) => state.duration_ms,
EntryVerificationState::GPU(state) => state.duration_ms,
}
pub fn poh_duration_us(&self) -> u64 {
self.poh_duration_us
}
pub fn set_transaction_duration_us(&mut self, new: u64) {
self.transaction_duration_us = new;
}
pub fn transaction_duration_us(&self) -> u64 {
self.transaction_duration_us
}
pub fn finish_verify(&mut self, entries: &[Entry]) -> bool {
match self {
EntryVerificationState::GPU(verification_state) => {
let gpu_time_ms = verification_state.thread_h.take().unwrap().join().unwrap();
match &mut self.device_verification_data {
DeviceVerificationData::GPU(verification_state) => {
let gpu_time_us = verification_state.thread_h.take().unwrap().join().unwrap();
let mut verify_check_time = Measure::start("verify_check");
let hashes = verification_state.hashes.take().expect("hashes.as_ref");
let hashes = verification_state.hashes.take().unwrap();
let hashes = Arc::try_unwrap(hashes)
.expect("unwrap Arc")
.into_inner()
@@ -225,30 +287,42 @@ impl EntryVerificationState {
});
verify_check_time.stop();
verification_state.duration_ms += gpu_time_ms + verify_check_time.as_ms();
inc_new_counter_info!(
"entry_verify-duration",
verification_state.duration_ms as usize
);
self.poh_duration_us += gpu_time_us + verify_check_time.as_us();
verification_state.verification_status = if res {
self.verification_status = if res {
EntryVerificationStatus::Success
} else {
EntryVerificationStatus::Failure
};
res
}
EntryVerificationState::CPU(verification_state) => {
verification_state.verification_status == EntryVerificationStatus::Success
DeviceVerificationData::CPU() => {
self.verification_status == EntryVerificationStatus::Success
}
}
}
}
fn compare_hashes(computed_hash: Hash, ref_entry: &Entry) -> bool {
if ref_entry.num_hashes == 0 {
computed_hash == ref_entry.hash
} else {
let mut poh = Poh::new(computed_hash, None);
if ref_entry.transactions.is_empty() {
poh.tick().unwrap().hash == ref_entry.hash
} else {
let tx_hash = hash_transactions(&ref_entry.transactions);
poh.record(tx_hash).unwrap().hash == ref_entry.hash
}
}
}
// an EntrySlice is a slice of Entries
pub trait EntrySlice {
/// Verifies the hashes and counts of a slice of transactions are all consistent.
fn verify_cpu(&self, start_hash: &Hash) -> EntryVerificationState;
fn verify_cpu_generic(&self, start_hash: &Hash) -> EntryVerificationState;
fn verify_cpu_x86_simd(&self, start_hash: &Hash, simd_len: usize) -> EntryVerificationState;
fn start_verify(&self, start_hash: &Hash, recyclers: VerifyRecyclers)
-> EntryVerificationState;
fn verify(&self, start_hash: &Hash) -> bool;
@@ -266,7 +340,8 @@ impl EntrySlice for [Entry] {
self.start_verify(start_hash, VerifyRecyclers::default())
.finish_verify(self)
}
fn verify_cpu(&self, start_hash: &Hash) -> EntryVerificationState {
fn verify_cpu_generic(&self, start_hash: &Hash) -> EntryVerificationState {
let now = Instant::now();
let genesis = [Entry {
num_hashes: 0,
@@ -290,19 +365,124 @@ impl EntrySlice for [Entry] {
})
})
});
let duration_ms = timing::duration_as_ms(&now.elapsed());
inc_new_counter_warn!("entry_verify-duration", duration_ms as usize);
EntryVerificationState::CPU(VerificationData {
thread_h: None,
let poh_duration_us = timing::duration_as_us(&now.elapsed());
EntryVerificationState {
verification_status: if res {
EntryVerificationStatus::Success
} else {
EntryVerificationStatus::Failure
},
hashes: None,
tx_hashes: vec![],
duration_ms,
})
poh_duration_us,
transaction_duration_us: 0,
device_verification_data: DeviceVerificationData::CPU(),
}
}
fn verify_cpu_x86_simd(&self, start_hash: &Hash, simd_len: usize) -> EntryVerificationState {
use solana_sdk::hash::HASH_BYTES;
let now = Instant::now();
let genesis = [Entry {
num_hashes: 0,
hash: *start_hash,
transactions: vec![],
}];
let aligned_len = ((self.len() + simd_len - 1) / simd_len) * simd_len;
let mut hashes_bytes = vec![0u8; HASH_BYTES * aligned_len];
genesis
.iter()
.chain(self)
.enumerate()
.for_each(|(i, entry)| {
if i < self.len() {
let start = i * HASH_BYTES;
let end = start + HASH_BYTES;
hashes_bytes[start..end].copy_from_slice(&entry.hash.to_bytes());
}
});
let mut hashes_chunked: Vec<_> = hashes_bytes.chunks_mut(simd_len * HASH_BYTES).collect();
let mut num_hashes: Vec<u64> = self
.iter()
.map(|entry| entry.num_hashes.saturating_sub(1))
.collect();
num_hashes.resize(aligned_len, 0);
let num_hashes: Vec<_> = num_hashes.chunks(simd_len).collect();
let res = PAR_THREAD_POOL.with(|thread_pool| {
thread_pool.borrow().install(|| {
hashes_chunked
.par_iter_mut()
.zip(num_hashes)
.enumerate()
.all(|(i, (chunk, num_hashes))| {
match simd_len {
8 => unsafe {
(api().unwrap().poh_verify_many_simd_avx2)(
chunk.as_mut_ptr(),
num_hashes.as_ptr(),
);
},
16 => unsafe {
(api().unwrap().poh_verify_many_simd_avx512skx)(
chunk.as_mut_ptr(),
num_hashes.as_ptr(),
);
},
_ => {
panic!("unsupported simd len: {}", simd_len);
}
}
let entry_start = i * simd_len;
// The last chunk may produce indexes larger than what we have in the reference entries
// because it is aligned to simd_len.
let entry_end = std::cmp::min(entry_start + simd_len, self.len());
self[entry_start..entry_end]
.iter()
.enumerate()
.all(|(j, ref_entry)| {
let start = j * HASH_BYTES;
let end = start + HASH_BYTES;
let hash = Hash::new(&chunk[start..end]);
compare_hashes(hash, ref_entry)
})
})
})
});
let poh_duration_us = timing::duration_as_us(&now.elapsed());
EntryVerificationState {
verification_status: if res {
EntryVerificationStatus::Success
} else {
EntryVerificationStatus::Failure
},
poh_duration_us,
transaction_duration_us: 0,
device_verification_data: DeviceVerificationData::CPU(),
}
}
fn verify_cpu(&self, start_hash: &Hash) -> EntryVerificationState {
#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
let (has_avx2, has_avx512) = (
is_x86_feature_detected!("avx2"),
is_x86_feature_detected!("avx512f"),
);
#[cfg(not(any(target_arch = "x86", target_arch = "x86_64")))]
let (has_avx2, has_avx512) = (false, false);
if api().is_some() {
if has_avx512 && self.len() >= 128 {
self.verify_cpu_x86_simd(start_hash, 16)
} else if has_avx2 && self.len() >= 48 {
self.verify_cpu_x86_simd(start_hash, 8)
} else {
self.verify_cpu_generic(start_hash)
}
} else {
self.verify_cpu_generic(start_hash)
}
}
fn verify_transaction_signatures(&self) -> bool {
@@ -324,22 +504,25 @@ impl EntrySlice for [Entry] {
) -> EntryVerificationState {
let start = Instant::now();
let res = self.verify_transaction_signatures();
let transaction_duration_us = timing::duration_as_us(&start.elapsed());
if !res {
return EntryVerificationState::CPU(VerificationData {
thread_h: None,
return EntryVerificationState {
verification_status: EntryVerificationStatus::Failure,
duration_ms: timing::duration_as_ms(&start.elapsed()),
hashes: None,
tx_hashes: vec![],
});
transaction_duration_us,
poh_duration_us: 0,
device_verification_data: DeviceVerificationData::CPU(),
};
}
let start = Instant::now();
let api = perf_libs::api();
if api.is_none() {
return self.verify_cpu(start_hash);
let mut res: EntryVerificationState = self.verify_cpu(start_hash);
res.set_transaction_duration_us(transaction_duration_us);
return res;
}
let api = api.unwrap();
inc_new_counter_warn!("entry_verify-num_entries", self.len() as usize);
inc_new_counter_info!("entry_verify-num_entries", self.len() as usize);
let genesis = [Entry {
num_hashes: 0,
@@ -386,11 +569,11 @@ impl EntrySlice for [Entry] {
if res != 0 {
panic!("GPU PoH verify many failed");
}
inc_new_counter_warn!(
inc_new_counter_info!(
"entry_verify-gpu_thread",
timing::duration_as_ms(&gpu_wait.elapsed()) as usize
timing::duration_as_us(&gpu_wait.elapsed()) as usize
);
timing::duration_as_ms(&gpu_wait.elapsed())
timing::duration_as_us(&gpu_wait.elapsed())
});
let tx_hashes = PAR_THREAD_POOL.with(|thread_pool| {
@@ -407,13 +590,17 @@ impl EntrySlice for [Entry] {
})
});
EntryVerificationState::GPU(VerificationData {
let device_verification_data = DeviceVerificationData::GPU(GpuVerificationData {
thread_h: Some(gpu_verify_thread),
verification_status: EntryVerificationStatus::Pending,
tx_hashes,
duration_ms: timing::duration_as_ms(&start.elapsed()),
hashes: Some(hashes),
})
});
EntryVerificationState {
verification_status: EntryVerificationStatus::Pending,
poh_duration_us: timing::duration_as_us(&start.elapsed()),
transaction_duration_us,
device_verification_data,
}
}
fn verify_tick_hash_count(&self, tick_hash_count: &mut u64, hashes_per_tick: u64) -> bool {
@@ -461,6 +648,17 @@ pub fn create_ticks(num_ticks: u64, hashes_per_tick: u64, mut hash: Hash) -> Vec
ticks
}
pub fn create_random_ticks(num_ticks: u64, max_hashes_per_tick: u64, mut hash: Hash) -> Vec<Entry> {
let mut ticks = Vec::with_capacity(num_ticks as usize);
for _ in 0..num_ticks {
let hashes_per_tick = thread_rng().gen_range(1, max_hashes_per_tick);
let new_tick = next_entry_mut(&mut hash, hashes_per_tick, vec![]);
ticks.push(new_tick);
}
ticks
}
/// Creates the next Tick or Transaction Entry `num_hashes` after `start_hash`.
pub fn next_entry(prev_hash: &Hash, num_hashes: u64, transactions: Vec<Transaction>) -> Entry {
assert!(num_hashes > 0 || transactions.is_empty());
@@ -610,7 +808,7 @@ mod tests {
}
#[test]
fn test_verify_slice() {
fn test_verify_slice1() {
solana_logger::setup();
let zero = Hash::default();
let one = hash(&zero.as_ref());
@@ -628,7 +826,7 @@ mod tests {
}
#[test]
fn test_verify_slice_with_hashes() {
fn test_verify_slice_with_hashes1() {
solana_logger::setup();
let zero = Hash::default();
let one = hash(&zero.as_ref());
@@ -731,4 +929,30 @@ mod tests {
assert!(!too_many_tx_entries.verify_tick_hash_count(&mut tick_hash_count, hashes_per_tick));
assert_eq!(tick_hash_count, hashes_per_tick);
}
#[test]
fn test_poh_verify_fuzz() {
solana_logger::setup();
for _ in 0..100 {
let mut time = Measure::start("ticks");
let num_ticks = thread_rng().gen_range(1, 100);
info!("create {} ticks:", num_ticks);
let mut entries = create_random_ticks(num_ticks, 100, Hash::default());
time.stop();
let mut modified = false;
if thread_rng().gen_ratio(1, 2) {
modified = true;
let modify_idx = thread_rng().gen_range(0, num_ticks) as usize;
entries[modify_idx].hash = hash(&[1, 2, 3]);
}
info!("done.. {}", time);
let mut time = Measure::start("poh");
let res = entries.verify(&Hash::default());
assert_eq!(res, !modified);
time.stop();
info!("{} {}", time, res);
}
}
}

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-local-cluster"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -12,22 +12,22 @@ homepage = "https://solana.com/"
itertools = "0.9.0"
log = "0.4.8"
rand = "0.7.0"
solana-config-program = { path = "../programs/config", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-download-utils = { path = "../download-utils", version = "1.2.3" }
solana-faucet = { path = "../faucet", version = "1.2.3" }
solana-exchange-program = { path = "../programs/exchange", version = "1.2.3" }
solana-genesis-programs = { path = "../genesis-programs", version = "1.2.3" }
solana-ledger = { path = "../ledger", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-vest-program = { path = "../programs/vest", version = "1.2.3" }
solana-vote-program = { path = "../programs/vote", version = "1.2.3" }
solana-config-program = { path = "../programs/config", version = "1.2.4" }
solana-core = { path = "../core", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-download-utils = { path = "../download-utils", version = "1.2.4" }
solana-faucet = { path = "../faucet", version = "1.2.4" }
solana-exchange-program = { path = "../programs/exchange", version = "1.2.4" }
solana-genesis-programs = { path = "../genesis-programs", version = "1.2.4" }
solana-ledger = { path = "../ledger", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-vest-program = { path = "../programs/vest", version = "1.2.4" }
solana-vote-program = { path = "../programs/vote", version = "1.2.4" }
tempfile = "3.1.0"
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.3" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.4" }
[dev-dependencies]
assert_matches = "1.3.0"

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-log-analyzer"
description = "The solana cluster network analysis tool"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -14,9 +14,9 @@ byte-unit = "3.1.1"
clap = "2.33.1"
serde = "1.0.110"
serde_json = "1.0.53"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
[[bin]]
name = "solana-log-analyzer"

View File

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

View File

@@ -1,7 +1,7 @@
[package]
name = "solana-measure"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
documentation = "https://docs.rs/solana"
homepage = "https://solana.com/"
readme = "../README.md"
@@ -12,8 +12,8 @@ edition = "2018"
[dependencies]
log = "0.4.8"
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
[target."cfg(unix)".dependencies]
jemallocator = "0.3.2"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-merkle-tree"
version = "1.2.3"
version = "1.2.4"
description = "Solana Merkle Tree"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -9,7 +9,7 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
fast-math = "0.1"
[dev-dependencies]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-metrics"
version = "1.2.3"
version = "1.2.4"
description = "Solana Metrics"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -14,7 +14,7 @@ gethostname = "0.2.1"
lazy_static = "1.4.0"
log = "0.4.8"
reqwest = { version = "0.10.4", default-features = false, features = ["blocking", "rustls-tls", "json"] }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
[dev-dependencies]
rand = "0.7.0"

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-net-shaper"
description = "The solana cluster network shaping tool"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -13,8 +13,8 @@ publish = false
clap = "2.33.1"
serde = "1.0.110"
serde_json = "1.0.53"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
rand = "0.7.0"
[[bin]]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-net-utils"
version = "1.2.3"
version = "1.2.4"
description = "Solana Network Utilities"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -18,9 +18,9 @@ rand = "0.7.0"
serde = "1.0.110"
serde_derive = "1.0.103"
socket2 = "0.3.12"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
tokio = "0.1"
tokio-codec = "0.1"

View File

@@ -98,6 +98,7 @@ Operate a configured testnet
--operating-mode development|softlaunch
- Specify whether or not to launch the cluster in "development" mode with all features enabled at epoch 0,
or "softlaunch" mode with some features disabled at epoch 0 (default: development)
--warp-slot WARP_SLOT - Boot from a snapshot that has warped ahead to WARP_SLOT rather than a slot 0 genesis.
sanity/start-specific options:
-F - Discard validator nodes that didn't bootup successfully
-o noInstallCheck - Skip solana-install sanity
@@ -275,6 +276,7 @@ startBootstrapLeader() {
\"$maybeNoSnapshot $maybeSkipLedgerVerify $maybeLimitLedgerSize $maybeWaitForSupermajority\" \
\"$gpuMode\" \
\"$GEOLOCATION_API_KEY\" \
\"$maybeWarpSlot\" \
"
) >> "$logFile" 2>&1 || {
@@ -344,6 +346,7 @@ startNode() {
\"$maybeNoSnapshot $maybeSkipLedgerVerify $maybeLimitLedgerSize $maybeWaitForSupermajority\" \
\"$gpuMode\" \
\"$GEOLOCATION_API_KEY\" \
\"$maybeWarpSlot\" \
"
) >> "$logFile" 2>&1 &
declare pid=$!
@@ -735,6 +738,7 @@ netemConfigFile=""
netemCommand="add"
clientDelayStart=0
netLogDir=
maybeWarpSlot=
command=$1
[[ -n $command ]] || usage
@@ -838,6 +842,9 @@ while [[ -n $1 ]]; do
elif [[ $1 == --wait-for-supermajority ]]; then
maybeWaitForSupermajority="$1 $2"
shift 2
elif [[ $1 == --warp-slot ]]; then
maybeWarpSlot="$1 $2"
shift 2
else
usage "Unknown long option: $1"
fi

View File

@@ -26,6 +26,7 @@ genesisOptions="${17}"
extraNodeArgs="${18}"
gpuMode="${19:-auto}"
GEOLOCATION_API_KEY="${20}"
maybeWarpSlot="${21}"
set +x
missing() {
@@ -229,6 +230,11 @@ EOF
fi
multinode-demo/setup.sh "${args[@]}"
if [[ -n "$maybeWarpSlot" ]]; then
# shellcheck disable=SC2086 # Do not want to quote $maybeWarSlot
solana-ledger-tool -l config/bootstrap-validator create-snapshot 0 config/bootstrap-validator $maybeWarpSlot
fi
solana-ledger-tool -l config/bootstrap-validator shred-version --max-genesis-archive-unpacked-size 1073741824 | tee config/shred-version
fi
args=(

View File

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

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-perf"
version = "1.2.3"
version = "1.2.4"
description = "Solana Performance APIs"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -17,11 +17,11 @@ serde = "1.0.110"
dlopen_derive = "0.1.4"
lazy_static = "1.4.0"
log = "0.4.8"
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.3" }
solana-budget-program = { path = "../programs/budget", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.4" }
solana-budget-program = { path = "../programs/budget", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
curve25519-dalek = { version = "2" }
[lib]

View File

@@ -95,7 +95,7 @@ fn init(name: &OsStr) {
}
}
fn locate_perf_libs() -> Option<PathBuf> {
pub fn locate_perf_libs() -> Option<PathBuf> {
let exe = env::current_exe().expect("Unable to get executable path");
let perf_libs = exe.parent().unwrap().join("perf-libs");
if perf_libs.is_dir() {
@@ -140,19 +140,21 @@ fn find_cuda_home(perf_libs_path: &Path) -> Option<PathBuf> {
None
}
pub fn append_to_ld_library_path(path: String) {
let ld_library_path =
path + ":" + &env::var("LD_LIBRARY_PATH").unwrap_or_else(|_| "".to_string());
info!("setting ld_library_path to: {:?}", ld_library_path);
env::set_var("LD_LIBRARY_PATH", ld_library_path);
}
pub fn init_cuda() {
if let Some(perf_libs_path) = locate_perf_libs() {
if let Some(cuda_home) = find_cuda_home(&perf_libs_path) {
let cuda_lib64_dir = cuda_home.join("lib64");
if cuda_lib64_dir.is_dir() {
let ld_library_path = cuda_lib64_dir.to_str().unwrap_or("").to_string()
+ ":"
+ &env::var("LD_LIBRARY_PATH").unwrap_or_else(|_| "".to_string());
info!("LD_LIBRARY_PATH set to {:?}", ld_library_path);
// Prefix LD_LIBRARY_PATH with $CUDA_HOME/lib64 directory
// to ensure the correct CUDA version is used
env::set_var("LD_LIBRARY_PATH", ld_library_path)
append_to_ld_library_path(cuda_lib64_dir.to_str().unwrap_or("").to_string())
} else {
warn!("CUDA lib64 directory does not exist: {:?}", cuda_lib64_dir);
}

374
programs/bpf/Cargo.lock generated
View File

@@ -8,6 +8,11 @@ dependencies = [
"gimli 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "adler32"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "aho-corasick"
version = "0.7.10"
@@ -43,15 +48,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "backtrace"
version = "0.3.48"
version = "0.3.49"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"addr2line 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.71 (registry+https://github.com/rust-lang/crates.io-index)",
"object 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
"miniz_oxide 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
"object 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -61,7 +67,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "base64"
version = "0.12.1"
version = "0.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -70,7 +76,7 @@ version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -113,7 +119,7 @@ version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"feature-probe 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -167,7 +173,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"num-integer 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -271,7 +277,7 @@ dependencies = [
[[package]]
name = "dtoa"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -282,7 +288,7 @@ dependencies = [
"clear_on_drop 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
"curve25519-dalek 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -324,7 +330,7 @@ name = "failure"
version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"backtrace 0.3.48 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.3.49 (registry+https://github.com/rust-lang/crates.io-index)",
"failure_derive 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -450,7 +456,7 @@ name = "generic-array"
version = "0.14.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
"version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -544,7 +550,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
"fnv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -582,7 +588,7 @@ dependencies = [
"http 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"http-body 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"pin-project 0.4.22 (registry+https://github.com/rust-lang/crates.io-index)",
"socket2 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -614,7 +620,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -643,7 +649,7 @@ dependencies = [
[[package]]
name = "itoa"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -653,7 +659,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.71 (registry+https://github.com/rust-lang/crates.io-index)",
"paste 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"paste 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -783,6 +789,14 @@ dependencies = [
"unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "miniz_oxide"
version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"adler32 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "mio"
version = "0.6.22"
@@ -880,7 +894,7 @@ dependencies = [
[[package]]
name = "object"
version = "0.19.0"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -919,22 +933,19 @@ dependencies = [
[[package]]
name = "paste"
version = "0.1.16"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"paste-impl 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"paste-impl 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro-hack 0.5.16 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "paste-impl"
version = "0.1.16"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro-hack 0.5.16 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1075,17 +1086,18 @@ dependencies = [
[[package]]
name = "rayon"
version = "1.3.0"
version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon-core 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon-core 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "rayon-core"
version = "1.7.0"
version = "1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1129,7 +1141,7 @@ name = "reqwest"
version = "0.10.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"base64 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
"base64 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)",
"bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
"encoding_rs 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
"futures-core 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1146,7 +1158,7 @@ dependencies = [
"percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"pin-project-lite 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"rustls 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio 0.2.21 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1258,10 +1270,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "serde"
version = "1.0.111"
version = "1.0.112"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1269,12 +1281,12 @@ name = "serde_bytes"
version = "0.11.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "serde_derive"
version = "1.0.111"
version = "1.0.112"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1287,9 +1299,9 @@ name = "serde_json"
version = "1.0.55"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"ryu 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1297,9 +1309,9 @@ name = "serde_urlencoded"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"dtoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"dtoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1327,11 +1339,6 @@ dependencies = [
"maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "smallvec"
version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "socket2"
version = "0.3.12"
@@ -1345,7 +1352,7 @@ dependencies = [
[[package]]
name = "solana-bpf-loader-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1353,189 +1360,189 @@ dependencies = [
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"num-derive 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-logger 1.2.3",
"solana-runtime 1.2.3",
"solana-sdk 1.2.3",
"solana-logger 1.2.4",
"solana-runtime 1.2.4",
"solana-sdk 1.2.4",
"solana_rbpf 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-bpf-programs"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"elf 0.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-bpf-loader-program 1.2.3",
"solana-logger 1.2.3",
"solana-runtime 1.2.3",
"solana-sdk 1.2.3",
"solana-bpf-loader-program 1.2.4",
"solana-logger 1.2.4",
"solana-runtime 1.2.4",
"solana-sdk 1.2.4",
"solana_rbpf 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
"walkdir 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-bpf-rust-128bit"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-bpf-rust-128bit-dep 1.2.3",
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-bpf-rust-128bit-dep 1.2.4",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-128bit-dep"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-alloc"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-dep-crate"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-dup-accounts"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-error-handling"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"num-derive 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-bpf-rust-external-spend"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-invoke"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-bpf-rust-invoked 1.2.3",
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-bpf-rust-invoked 1.2.4",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-invoked"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-iter"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-many-args"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-bpf-rust-many-args-dep 1.2.3",
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-bpf-rust-many-args-dep 1.2.4",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-many-args-dep"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-noop"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-panic"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-param-passing"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-bpf-rust-param-passing-dep 1.2.3",
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-bpf-rust-param-passing-dep 1.2.4",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-param-passing-dep"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-bpf-rust-sysval"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"solana-sdk 1.2.3",
"solana-sdk-bpf-test 1.2.3",
"solana-sdk 1.2.4",
"solana-sdk-bpf-test 1.2.4",
]
[[package]]
name = "solana-config-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"chrono 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.3",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.4",
]
[[package]]
name = "solana-crate-features"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"backtrace 0.3.48 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.3.49 (registry+https://github.com/rust-lang/crates.io-index)",
"bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
"curve25519-dalek 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1547,7 +1554,7 @@ dependencies = [
"rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)",
"reqwest 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1556,7 +1563,7 @@ dependencies = [
[[package]]
name = "solana-logger"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1565,30 +1572,30 @@ dependencies = [
[[package]]
name = "solana-measure"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"jemalloc-ctl 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"jemallocator 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-metrics 1.2.3",
"solana-sdk 1.2.3",
"solana-metrics 1.2.4",
"solana-sdk 1.2.4",
]
[[package]]
name = "solana-metrics"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
"gethostname 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"reqwest 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.3",
"solana-sdk 1.2.4",
]
[[package]]
name = "solana-rayon-threadlimit"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1596,7 +1603,7 @@ dependencies = [
[[package]]
name = "solana-runtime"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"bv 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1613,24 +1620,24 @@ dependencies = [
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.3",
"solana-logger 1.2.3",
"solana-measure 1.2.3",
"solana-metrics 1.2.3",
"solana-rayon-threadlimit 1.2.3",
"solana-sdk 1.2.3",
"solana-stake-program 1.2.3",
"solana-vote-program 1.2.3",
"rayon 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.4",
"solana-logger 1.2.4",
"solana-measure 1.2.4",
"solana-metrics 1.2.4",
"solana-rayon-threadlimit 1.2.4",
"solana-sdk 1.2.4",
"solana-stake-program 1.2.4",
"solana-vote-program 1.2.4",
"tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-sdk"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_matches 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1650,24 +1657,24 @@ dependencies = [
"pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_bytes 0.11.5 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-crate-features 1.2.3",
"solana-logger 1.2.3",
"solana-sdk-macro 1.2.3",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-crate-features 1.2.4",
"solana-logger 1.2.4",
"solana-sdk-macro 1.2.4",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-sdk-bpf-test"
version = "1.2.3"
version = "1.2.4"
[[package]]
name = "solana-sdk-macro"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bs58 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1677,34 +1684,34 @@ dependencies = [
[[package]]
name = "solana-stake-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"num-derive 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.3",
"solana-metrics 1.2.3",
"solana-sdk 1.2.3",
"solana-vote-program 1.2.3",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.4",
"solana-metrics 1.2.4",
"solana-sdk 1.2.4",
"solana-vote-program 1.2.4",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-vote-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"num-derive 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-metrics 1.2.3",
"solana-sdk 1.2.3",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-metrics 1.2.4",
"solana-sdk 1.2.4",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1720,7 +1727,7 @@ dependencies = [
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"scroll 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1793,15 +1800,15 @@ dependencies = [
[[package]]
name = "thiserror"
version = "1.0.19"
version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"thiserror-impl 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror-impl 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "thiserror-impl"
version = "1.0.19"
version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1826,6 +1833,11 @@ dependencies = [
"winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "tinyvec"
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "tokio"
version = "0.1.22"
@@ -2069,10 +2081,10 @@ dependencies = [
[[package]]
name = "unicode-normalization"
version = "0.1.12"
version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"smallvec 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"tinyvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -2135,7 +2147,7 @@ version = "0.2.63"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)",
"wasm-bindgen-macro 0.2.63 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -2278,14 +2290,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[metadata]
"checksum addr2line 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a49806b9dadc843c61e7c97e72490ad7f7220ae249012fbda9ad0609457c0543"
"checksum adler32 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d"
"checksum aho-corasick 0.7.10 (registry+https://github.com/rust-lang/crates.io-index)" = "8716408b8bc624ed7f65d223ddb9ac2d044c0547b6fa4b0d554f3a9540496ada"
"checksum ascii 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3ae7d751998c189c1d4468cf0a39bb2eae052a9c58d50ebb3b9591ee3813ad50"
"checksum assert_matches 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7deb0a829ca7bcfaf5da70b073a8d128619259a7be8216a355e23f00763059e5"
"checksum atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
"checksum autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
"checksum backtrace 0.3.48 (registry+https://github.com/rust-lang/crates.io-index)" = "0df2f85c8a2abbe3b7d7e748052fdd9b76a0458fdeb16ad4223f5eca78c7c130"
"checksum backtrace 0.3.49 (registry+https://github.com/rust-lang/crates.io-index)" = "05100821de9e028f12ae3d189176b41ee198341eb8f369956407fea2f5cc666c"
"checksum base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
"checksum base64 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "53d1ccbaf7d9ec9537465a97bf19edc1a4e158ecb49fc16178202238c569cc42"
"checksum base64 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e223af0dc48c96d4f8342ec01a4974f139df863896b316681efd36742f22cc67"
"checksum bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5753e2a71534719bf3f4e57006c3a4f0d2c672a4b676eec84161f763eca87dbf"
"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
"checksum block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
@@ -2311,7 +2324,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5"
"checksum curve25519-dalek 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5d85653f070353a16313d0046f173f70d1aadd5b42600a14de626f0dfb3473a5"
"checksum digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
"checksum dtoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "4358a9e11b9a09cf52383b451b49a169e8d797b68aa02301ff586d70d9661ea3"
"checksum dtoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b"
"checksum ed25519-dalek 1.0.0-pre.3 (registry+https://github.com/rust-lang/crates.io-index)" = "978710b352437433c97b2bff193f2fb1dfd58a093f863dd95e225a19baa599a2"
"checksum either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
"checksum elf 0.0.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4841de15dbe0e49b9b62a417589299e3be0d557e0900d36acb87e6dae47197f5"
@@ -2354,7 +2367,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum indexmap 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c398b2b113b55809ceb9ee3e753fcbac793f1956663f3c36549c1346015c2afe"
"checksum iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
"checksum itertools 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
"checksum itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "b8b7a7c0c47db5545ed3fef7468ee7bb5b74691498139e4b3f6a20685dc6dd8e"
"checksum itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
"checksum jemalloc-ctl 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c502a5ff9dd2924f1ed32ba96e3b65735d837b4bfd978d3161b1702e66aca4b7"
"checksum jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0d3b9f3f5c9b31aa0f5ed3260385ac205db665baa41d49bb8338008ae94ede45"
"checksum jemallocator 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "43ae63fcfc45e99ab3d1b29a46782ad679e98436c3169d15a167a1108a724b69"
@@ -2373,6 +2386,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum memoffset 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b4fc2c02a7e374099d4ee95a193111f72d2110197fe200272371758f6c3643d8"
"checksum mime 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)" = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
"checksum mime_guess 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212"
"checksum miniz_oxide 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
"checksum mio 0.6.22 (registry+https://github.com/rust-lang/crates.io-index)" = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430"
"checksum mio-uds 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0"
"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
@@ -2382,13 +2396,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum num-integer 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b"
"checksum num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
"checksum num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
"checksum object 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9cbca9424c482ee628fa549d9c812e2cd22f1180b9222c9200fdfa6eb31aecb2"
"checksum object 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5"
"checksum once_cell 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d"
"checksum opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
"checksum parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
"checksum parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
"checksum paste 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "d508492eeb1e5c38ee696371bf7b9fc33c83d46a7d451606b96458fbbbdc2dec"
"checksum paste-impl 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "84f328a6a63192b333fce5fbb4be79db6758a4d518dfac6d54412f1492f72d32"
"checksum paste 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "026c63fe245362be0322bfec5a9656d458d13f9cfb1785d1b38458b9968e8080"
"checksum paste-impl 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9281a268ec213237dcd2aa3c3d0f46681b04ced37c1616fd36567a9e6954b0"
"checksum pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9"
"checksum percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
"checksum pin-project 0.4.22 (registry+https://github.com/rust-lang/crates.io-index)" = "12e3a6cdbfe94a5e4572812a0201f8c0ed98c1c452c7b8563ce2276988ef9c17"
@@ -2408,8 +2422,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
"checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
"checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
"checksum rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098"
"checksum rayon-core 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9"
"checksum rayon 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080"
"checksum rayon-core 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280"
"checksum redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)" = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
"checksum regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
"checksum regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)" = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
@@ -2427,15 +2441,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum sct 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3042af939fca8c3453b7af0f1c66e533a15a86169e39de2657310ade8f98d3c"
"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
"checksum serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)" = "c9124df5b40cbd380080b2cc6ab894c040a3070d995f5c9dc77e18c34a8ae37d"
"checksum serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)" = "736aac72d1eafe8e5962d1d1c3d99b0df526015ba40915cb3c49d042e92ec243"
"checksum serde_bytes 0.11.5 (registry+https://github.com/rust-lang/crates.io-index)" = "16ae07dd2f88a366f15bd0632ba725227018c69a1c8550a927324f8eb8368bb9"
"checksum serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)" = "3f2c3ac8e6ca1e9c80b8be1023940162bf81ae3cffbb1809474152f2ce1eb250"
"checksum serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)" = "bf0343ce212ac0d3d6afd9391ac8e9c9efe06b533c8d33f660f6390cc4093f57"
"checksum serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)" = "ec2c5d7e739bc07a3e73381a39d61fdb5f671c60c1df26a130690665803d8226"
"checksum serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97"
"checksum sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69"
"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
"checksum smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6"
"checksum smallvec 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c7cb5678e1615754284ec264d9bb5b4c27d2018577fd90ac0ceb578591ed5ee4"
"checksum socket2 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)" = "03088793f677dce356f3ccc2edb1b314ad191ab702a5de3faf49304f7e104918"
"checksum solana_rbpf 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "3a556eca8a56761a16d712ed3e62a420da220f43749237befac3e4bf820f939c"
"checksum spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
@@ -2446,10 +2459,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum synstructure 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701"
"checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
"checksum termcolor 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
"checksum thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)" = "b13f926965ad00595dd129fa12823b04bbf866e9085ab0a5f2b05b850fbfc344"
"checksum thiserror-impl 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)" = "893582086c2f98cde18f906265a65b5030a074b1046c674ae898be6519a7f479"
"checksum thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)" = "7dfdd070ccd8ccb78f4ad66bf1982dc37f620ef696c6b5028fe2ed83dd3d0d08"
"checksum thiserror-impl 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)" = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793"
"checksum thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
"checksum time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
"checksum tinyvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
"checksum tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6"
"checksum tokio 0.2.21 (registry+https://github.com/rust-lang/crates.io-index)" = "d099fa27b9702bed751524694adbe393e18b36b204da91eb1cbbbbb4a5ee2d58"
"checksum tokio-codec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "25b2998660ba0e70d18684de5d06b70b70a3a747469af9dea7618cc59e75976b"
@@ -2471,7 +2485,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33"
"checksum unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
"checksum unicode-normalization 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5479532badd04e128284890390c1e876ef7a993d0570b3597ae43dfa1d59afa4"
"checksum unicode-normalization 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
"checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
"checksum untrusted 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"

View File

@@ -1,7 +1,7 @@
[package]
name = "solana-bpf-programs"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
documentation = "https://docs.rs/solana"
homepage = "https://solana.com/"
readme = "README.md"
@@ -22,10 +22,10 @@ walkdir = "2"
bincode = "1.1.4"
byteorder = "1.3.2"
elf = "0.0.10"
solana-bpf-loader-program = { path = "../bpf_loader", version = "1.2.3" }
solana-logger = { path = "../../logger", version = "1.2.3" }
solana-runtime = { path = "../../runtime", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-bpf-loader-program = { path = "../bpf_loader", version = "1.2.4" }
solana-logger = { path = "../../logger", version = "1.2.4" }
solana-runtime = { path = "../../runtime", version = "1.2.4" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
solana_rbpf = "=0.1.28"
[[bench]]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-128bit"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,11 +12,11 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-bpf-rust-128bit-dep = { path = "../128bit_dep", version = "1.2.3" }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
solana-bpf-rust-128bit-dep = { path = "../128bit_dep", version = "1.2.4" }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-128bit-dep"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-alloc"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-dep-crate"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -13,10 +13,10 @@ edition = "2018"
[dependencies]
byteorder = { version = "1", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-dup-accounts"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-error-handling"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -14,11 +14,11 @@ edition = "2018"
[dependencies]
num-derive = "0.2"
num-traits = "0.2"
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
thiserror = "1.0"
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-external-spend"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-invoke"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -13,8 +13,8 @@ edition = "2018"
[dependencies]
solana-bpf-rust-invoked = { path = "../invoked"}
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-invoked"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,8 +12,8 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-iter"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-many-args"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,11 +12,11 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-bpf-rust-many-args-dep = { path = "../many_args_dep", version = "1.2.3" }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
solana-bpf-rust-many-args-dep = { path = "../many_args_dep", version = "1.2.4" }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-many-args-dep"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-noop"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-panic"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-param-passing"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,11 +12,11 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-bpf-rust-param-passing-dep = { path = "../param_passing_dep", version = "1.2.3" }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
solana-bpf-rust-param-passing-dep = { path = "../param_passing_dep", version = "1.2.4" }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-param-passing-dep"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -3,7 +3,7 @@
[package]
name = "solana-bpf-rust-sysval"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF test program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -12,10 +12,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../../../sdk/", version = "1.2.3", default-features = false }
solana-sdk = { path = "../../../../sdk/", version = "1.2.4", default-features = false }
[dev_dependencies]
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.3" }
solana-sdk-bpf-test = { path = "../../../../sdk/bpf/rust/test", version = "1.2.4" }
[features]
program = ["solana-sdk/program"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-bpf-loader-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF loader"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -15,9 +15,9 @@ jemalloc-sys = { version = "0.3.2", features = ["disable_initial_exec_tls"] }
log = "0.4.8"
num-derive = { version = "0.3" }
num-traits = { version = "0.2" }
solana-logger = { path = "../../logger", version = "1.2.3" }
solana-runtime = { path = "../../runtime", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-logger = { path = "../../logger", version = "1.2.4" }
solana-runtime = { path = "../../runtime", version = "1.2.4" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
solana_rbpf = "=0.1.28"
thiserror = "1.0"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-btc-spv-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Bitcoin spv parsing program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -15,7 +15,7 @@ num-derive = "0.3"
num-traits = "0.2"
serde = "1.0.110"
serde_derive = "1.0.103"
solana-sdk = { path = "../../sdk", version = "1.2.3"}
solana-sdk = { path = "../../sdk", version = "1.2.4"}
hex = "0.4.2"
[lib]

View File

@@ -1,6 +1,6 @@
[package]
name = "btc_spv_bin"
version = "1.2.3"
version = "1.2.4"
description = "Solana Bitcoin spv parsing program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-budget-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Budget program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -16,11 +16,11 @@ num-derive = "0.3"
num-traits = "0.2"
serde = "1.0.110"
serde_derive = "1.0.103"
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
thiserror = "1.0"
[dev-dependencies]
solana-runtime = { path = "../../runtime", version = "1.2.3" }
solana-runtime = { path = "../../runtime", version = "1.2.4" }
[lib]
crate-type = ["lib", "cdylib"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-config-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Config program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -14,10 +14,10 @@ chrono = { version = "0.4.11", features = ["serde"] }
log = "0.4.8"
serde = "1.0.110"
serde_derive = "1.0.103"
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
[dev-dependencies]
solana-logger = { path = "../../logger", version = "1.2.3" }
solana-logger = { path = "../../logger", version = "1.2.4" }
[lib]
crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-exchange-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Exchange program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -15,13 +15,13 @@ num-derive = { version = "0.3" }
num-traits = { version = "0.2" }
serde = "1.0.110"
serde_derive = "1.0.103"
solana-logger = { path = "../../logger", version = "1.2.3" }
solana-metrics = { path = "../../metrics", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-logger = { path = "../../logger", version = "1.2.4" }
solana-metrics = { path = "../../metrics", version = "1.2.4" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
thiserror = "1.0"
[dev-dependencies]
solana-runtime = { path = "../../runtime", version = "1.2.3" }
solana-runtime = { path = "../../runtime", version = "1.2.4" }
[lib]
crate-type = ["lib", "cdylib"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-failure-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana failure program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -9,10 +9,10 @@ homepage = "https://solana.com/"
edition = "2018"
[dependencies]
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
[dev-dependencies]
solana-runtime = { path = "../../runtime", version = "1.2.3" }
solana-runtime = { path = "../../runtime", version = "1.2.4" }
[lib]
crate-type = ["lib", "cdylib"]

View File

@@ -8,6 +8,11 @@ dependencies = [
"gimli 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "adler32"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "aho-corasick"
version = "0.7.10"
@@ -74,15 +79,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "backtrace"
version = "0.3.48"
version = "0.3.49"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"addr2line 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.71 (registry+https://github.com/rust-lang/crates.io-index)",
"object 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
"miniz_oxide 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
"object 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -92,7 +98,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "base64"
version = "0.12.1"
version = "0.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -106,7 +112,7 @@ version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -188,7 +194,7 @@ version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"feature-probe 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -251,7 +257,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"num-integer 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -476,13 +482,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"strsim 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "dtoa"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -493,7 +499,7 @@ dependencies = [
"clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"curve25519-dalek 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -559,7 +565,7 @@ name = "failure"
version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"backtrace 0.3.48 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.3.49 (registry+https://github.com/rust-lang/crates.io-index)",
"failure_derive 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -709,7 +715,7 @@ name = "generic-array"
version = "0.14.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
"version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -840,7 +846,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
"fnv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -850,7 +856,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
"fnv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -899,7 +905,7 @@ dependencies = [
"http-body 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"net2 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -928,7 +934,7 @@ dependencies = [
"http 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"http-body 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"pin-project 0.4.22 (registry+https://github.com/rust-lang/crates.io-index)",
"socket2 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -960,7 +966,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -970,7 +976,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1007,7 +1013,7 @@ dependencies = [
[[package]]
name = "itoa"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -1017,7 +1023,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.71 (registry+https://github.com/rust-lang/crates.io-index)",
"paste 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"paste 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1085,8 +1091,8 @@ dependencies = [
"petgraph 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)",
"regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
"regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)",
"term 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1197,6 +1203,14 @@ dependencies = [
"unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "miniz_oxide"
version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"adler32 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "mio"
version = "0.6.22"
@@ -1324,7 +1338,7 @@ dependencies = [
[[package]]
name = "object"
version = "0.19.0"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -1371,7 +1385,7 @@ dependencies = [
"data-encoding 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"parity-multihash 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"unsigned-varint 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1436,22 +1450,19 @@ dependencies = [
[[package]]
name = "paste"
version = "0.1.16"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"paste-impl 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"paste-impl 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro-hack 0.5.16 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "paste-impl"
version = "0.1.16"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro-hack 0.5.16 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1887,17 +1898,18 @@ dependencies = [
[[package]]
name = "rayon"
version = "1.3.0"
version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon-core 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon-core 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "rayon-core"
version = "1.7.0"
version = "1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1978,7 +1990,7 @@ name = "reqwest"
version = "0.10.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"base64 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
"base64 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)",
"bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
"encoding_rs 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
"futures-core 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1995,7 +2007,7 @@ dependencies = [
"percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"pin-project-lite 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"rustls 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio 0.2.21 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2103,10 +2115,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "serde"
version = "1.0.111"
version = "1.0.112"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -2114,12 +2126,12 @@ name = "serde_bytes"
version = "0.11.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "serde_derive"
version = "1.0.111"
version = "1.0.112"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2132,9 +2144,9 @@ name = "serde_json"
version = "1.0.55"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"ryu 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -2142,9 +2154,9 @@ name = "serde_urlencoded"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"dtoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"dtoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -2263,11 +2275,6 @@ dependencies = [
"maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "smallvec"
version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "socket2"
version = "0.3.12"
@@ -2281,21 +2288,21 @@ dependencies = [
[[package]]
name = "solana-config-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"chrono 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.3",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.4",
]
[[package]]
name = "solana-crate-features"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"backtrace 0.3.48 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.3.49 (registry+https://github.com/rust-lang/crates.io-index)",
"bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.49 (registry+https://github.com/rust-lang/crates.io-index)",
"curve25519-dalek 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2307,7 +2314,7 @@ dependencies = [
"rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)",
"reqwest 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2316,20 +2323,20 @@ dependencies = [
[[package]]
name = "solana-librapay"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-logger 1.2.3",
"solana-move-loader-program 1.2.3",
"solana-runtime 1.2.3",
"solana-sdk 1.2.3",
"solana-logger 1.2.4",
"solana-move-loader-program 1.2.4",
"solana-runtime 1.2.4",
"solana-sdk 1.2.4",
"solana_libra_types 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-logger"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2338,42 +2345,42 @@ dependencies = [
[[package]]
name = "solana-measure"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"jemalloc-ctl 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"jemallocator 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-metrics 1.2.3",
"solana-sdk 1.2.3",
"solana-metrics 1.2.4",
"solana-sdk 1.2.4",
]
[[package]]
name = "solana-metrics"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
"gethostname 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"reqwest 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-sdk 1.2.3",
"solana-sdk 1.2.4",
]
[[package]]
name = "solana-move-loader-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"indexmap 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"num-derive 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_bytes 0.11.5 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-logger 1.2.3",
"solana-sdk 1.2.3",
"solana-logger 1.2.4",
"solana-sdk 1.2.4",
"solana_libra_bytecode_verifier 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_canonical_serialization 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_compiler 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2385,12 +2392,12 @@ dependencies = [
"solana_libra_vm_cache_map 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_vm_runtime 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_vm_runtime_types 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-rayon-threadlimit"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2398,7 +2405,7 @@ dependencies = [
[[package]]
name = "solana-runtime"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"bv 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2415,24 +2422,24 @@ dependencies = [
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.3",
"solana-logger 1.2.3",
"solana-measure 1.2.3",
"solana-metrics 1.2.3",
"solana-rayon-threadlimit 1.2.3",
"solana-sdk 1.2.3",
"solana-stake-program 1.2.3",
"solana-vote-program 1.2.3",
"rayon 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.4",
"solana-logger 1.2.4",
"solana-measure 1.2.4",
"solana-metrics 1.2.4",
"solana-rayon-threadlimit 1.2.4",
"solana-sdk 1.2.4",
"solana-stake-program 1.2.4",
"solana-vote-program 1.2.4",
"tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-sdk"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_matches 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2452,20 +2459,20 @@ dependencies = [
"pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_bytes 0.11.5 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-crate-features 1.2.3",
"solana-logger 1.2.3",
"solana-sdk-macro 1.2.3",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-crate-features 1.2.4",
"solana-logger 1.2.4",
"solana-sdk-macro 1.2.4",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-sdk-macro"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bs58 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2475,34 +2482,34 @@ dependencies = [
[[package]]
name = "solana-stake-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"num-derive 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.3",
"solana-metrics 1.2.3",
"solana-sdk 1.2.3",
"solana-vote-program 1.2.3",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-config-program 1.2.4",
"solana-metrics 1.2.4",
"solana-sdk 1.2.4",
"solana-vote-program 1.2.4",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "solana-vote-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"num-derive 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-metrics 1.2.3",
"solana-sdk 1.2.3",
"thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana-metrics 1.2.4",
"solana-sdk 1.2.4",
"thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -2539,7 +2546,7 @@ dependencies = [
"solana_libra_stdlib 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_types 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_vm 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"structopt 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
"structopt 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -2553,7 +2560,7 @@ dependencies = [
"parity-multiaddr 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
"prost 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_crypto 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_failure_ext 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_logger 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2580,7 +2587,7 @@ dependencies = [
"proptest 0.9.6 (registry+https://github.com/rust-lang/crates.io-index)",
"proptest-derive 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"sha3 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_canonical_serialization 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2651,13 +2658,13 @@ name = "solana_libra_logger"
version = "0.0.1-sol5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"backtrace 0.3.48 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.3.49 (registry+https://github.com/rust-lang/crates.io-index)",
"chrono 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
"itertools 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)",
"slog 2.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
"slog-async 2.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2687,7 +2694,7 @@ version = "0.0.1-sol5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proptest 0.9.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -2748,7 +2755,7 @@ dependencies = [
"prost-build 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
"radix_trie 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_canonical_serialization 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_crypto 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_failure_ext 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2768,7 +2775,7 @@ dependencies = [
"mirai-annotations 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
"proptest 0.9.6 (registry+https://github.com/rust-lang/crates.io-index)",
"proptest-derive 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_canonical_serialization 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_crypto 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_failure_ext 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2795,7 +2802,7 @@ dependencies = [
"mirai-annotations 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
"prometheus 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"proptest 0.9.6 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rayon 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"rental 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_bytecode_verifier 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
"solana_libra_canonical_serialization 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2853,7 +2860,7 @@ dependencies = [
"new_debug_unreachable 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
"phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
"precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache_codegen 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -2887,17 +2894,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "structopt"
version = "0.3.14"
version = "0.3.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"clap 2.33.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"structopt-derive 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
"structopt-derive 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "structopt-derive"
version = "0.4.7"
version = "0.4.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3013,15 +3020,15 @@ dependencies = [
[[package]]
name = "thiserror"
version = "1.0.19"
version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"thiserror-impl 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
"thiserror-impl 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "thiserror-impl"
version = "1.0.19"
version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3062,7 +3069,7 @@ dependencies = [
"rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
"rand04_compat 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -3083,6 +3090,11 @@ dependencies = [
"crunchy 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "tinyvec"
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "tokio"
version = "0.1.22"
@@ -3308,7 +3320,7 @@ name = "toml"
version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -3349,10 +3361,10 @@ dependencies = [
[[package]]
name = "unicode-normalization"
version = "0.1.12"
version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"smallvec 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"tinyvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -3453,7 +3465,7 @@ version = "0.2.63"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)",
"wasm-bindgen-macro 0.2.63 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -3629,6 +3641,7 @@ dependencies = [
[metadata]
"checksum addr2line 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a49806b9dadc843c61e7c97e72490ad7f7220ae249012fbda9ad0609457c0543"
"checksum adler32 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d"
"checksum aho-corasick 0.7.10 (registry+https://github.com/rust-lang/crates.io-index)" = "8716408b8bc624ed7f65d223ddb9ac2d044c0547b6fa4b0d554f3a9540496ada"
"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
"checksum arc-swap 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "4d25d88fd6b8041580a654f9d0c581a047baee2b3efee13275f2fc392fc75034"
@@ -3639,9 +3652,9 @@ dependencies = [
"checksum atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
"checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
"checksum autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
"checksum backtrace 0.3.48 (registry+https://github.com/rust-lang/crates.io-index)" = "0df2f85c8a2abbe3b7d7e748052fdd9b76a0458fdeb16ad4223f5eca78c7c130"
"checksum backtrace 0.3.49 (registry+https://github.com/rust-lang/crates.io-index)" = "05100821de9e028f12ae3d189176b41ee198341eb8f369956407fea2f5cc666c"
"checksum base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
"checksum base64 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "53d1ccbaf7d9ec9537465a97bf19edc1a4e158ecb49fc16178202238c569cc42"
"checksum base64 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e223af0dc48c96d4f8342ec01a4974f139df863896b316681efd36742f22cc67"
"checksum bech32 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "58946044516aa9dc922182e0d6e9d124a31aafe6b421614654eb27cf90cec09c"
"checksum bincode 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5753e2a71534719bf3f4e57006c3a4f0d2c672a4b676eec84161f763eca87dbf"
"checksum bit-set 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6e11e16035ea35e4e5997b393eacbf6f63983188f7a2ad25bfb13465f5ad59de"
@@ -3688,7 +3701,7 @@ dependencies = [
"checksum dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
"checksum dirs-sys 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8e93d7f5705de3e49895a2b5e0b8855a1c27f080192ae9c32a6432d50741a57a"
"checksum docopt 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969"
"checksum dtoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "4358a9e11b9a09cf52383b451b49a169e8d797b68aa02301ff586d70d9661ea3"
"checksum dtoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b"
"checksum ed25519-dalek 1.0.0-pre.3 (registry+https://github.com/rust-lang/crates.io-index)" = "978710b352437433c97b2bff193f2fb1dfd58a093f863dd95e225a19baa599a2"
"checksum either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
"checksum ena 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8944dc8fa28ce4a38f778bd46bf7d923fe73eed5a439398507246c8e017e6f36"
@@ -3747,7 +3760,7 @@ dependencies = [
"checksum iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
"checksum itertools 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484"
"checksum itertools 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
"checksum itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "b8b7a7c0c47db5545ed3fef7468ee7bb5b74691498139e4b3f6a20685dc6dd8e"
"checksum itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
"checksum jemalloc-ctl 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c502a5ff9dd2924f1ed32ba96e3b65735d837b4bfd978d3161b1702e66aca4b7"
"checksum jemalloc-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0d3b9f3f5c9b31aa0f5ed3260385ac205db665baa41d49bb8338008ae94ede45"
"checksum jemallocator 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "43ae63fcfc45e99ab3d1b29a46782ad679e98436c3169d15a167a1108a724b69"
@@ -3771,6 +3784,7 @@ dependencies = [
"checksum memsec 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0cb9280f8c37546661083aa45eb0318d8469253d31e87649faed25522428398e"
"checksum mime 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)" = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
"checksum mime_guess 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212"
"checksum miniz_oxide 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
"checksum mio 0.6.22 (registry+https://github.com/rust-lang/crates.io-index)" = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430"
"checksum mio-uds 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0"
"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
@@ -3785,7 +3799,7 @@ dependencies = [
"checksum num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
"checksum num_enum 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ca565a7df06f3d4b485494f25ba05da1435950f4dc263440eda7a6fa9b8e36e4"
"checksum num_enum_derive 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ffa5a33ddddfee04c0283a7653987d634e880347e96b5b2ed64de07efb59db9d"
"checksum object 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9cbca9424c482ee628fa549d9c812e2cd22f1180b9222c9200fdfa6eb31aecb2"
"checksum object 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5"
"checksum once_cell 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d"
"checksum opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
"checksum ordermap 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "a86ed3f5f244b372d6b1a00b72ef7f8876d0bc6a78a4c9985c53614041512063"
@@ -3797,8 +3811,8 @@ dependencies = [
"checksum parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
"checksum parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa"
"checksum parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
"checksum paste 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "d508492eeb1e5c38ee696371bf7b9fc33c83d46a7d451606b96458fbbbdc2dec"
"checksum paste-impl 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "84f328a6a63192b333fce5fbb4be79db6758a4d518dfac6d54412f1492f72d32"
"checksum paste 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "026c63fe245362be0322bfec5a9656d458d13f9cfb1785d1b38458b9968e8080"
"checksum paste-impl 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9281a268ec213237dcd2aa3c3d0f46681b04ced37c1616fd36567a9e6954b0"
"checksum pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9"
"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
"checksum percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
@@ -3847,8 +3861,8 @@ dependencies = [
"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
"checksum rand_pcg 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
"checksum rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098"
"checksum rayon-core 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9"
"checksum rayon 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080"
"checksum rayon-core 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280"
"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
"checksum redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)" = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
"checksum redox_users 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431"
@@ -3869,9 +3883,9 @@ dependencies = [
"checksum sct 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3042af939fca8c3453b7af0f1c66e533a15a86169e39de2657310ade8f98d3c"
"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
"checksum serde 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)" = "c9124df5b40cbd380080b2cc6ab894c040a3070d995f5c9dc77e18c34a8ae37d"
"checksum serde 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)" = "736aac72d1eafe8e5962d1d1c3d99b0df526015ba40915cb3c49d042e92ec243"
"checksum serde_bytes 0.11.5 (registry+https://github.com/rust-lang/crates.io-index)" = "16ae07dd2f88a366f15bd0632ba725227018c69a1c8550a927324f8eb8368bb9"
"checksum serde_derive 1.0.111 (registry+https://github.com/rust-lang/crates.io-index)" = "3f2c3ac8e6ca1e9c80b8be1023940162bf81ae3cffbb1809474152f2ce1eb250"
"checksum serde_derive 1.0.112 (registry+https://github.com/rust-lang/crates.io-index)" = "bf0343ce212ac0d3d6afd9391ac8e9c9efe06b533c8d33f660f6390cc4093f57"
"checksum serde_json 1.0.55 (registry+https://github.com/rust-lang/crates.io-index)" = "ec2c5d7e739bc07a3e73381a39d61fdb5f671c60c1df26a130690665803d8226"
"checksum serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97"
"checksum sha-1 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df"
@@ -3886,7 +3900,6 @@ dependencies = [
"checksum slog-stdlog 4.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "be4d87903baf655da2d82bc3ac3f7ef43868c58bf712b3a661fda72009304c23"
"checksum slog-term 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bab1d807cf71129b05ce36914e1dbb6fbfbdecaf686301cb457f4fa967f9f5b6"
"checksum smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6"
"checksum smallvec 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c7cb5678e1615754284ec264d9bb5b4c27d2018577fd90ac0ceb578591ed5ee4"
"checksum socket2 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)" = "03088793f677dce356f3ccc2edb1b314ad191ab702a5de3faf49304f7e104918"
"checksum solana_libra_bytecode_verifier 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)" = "dd72dfd0637c9f15ec52ef5739d92594ba38ad0e644720e882b28f85afef1132"
"checksum solana_libra_canonical_serialization 0.0.1-sol5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fe30d99c623682886f986147887f7b5b14f6ac290da5801163beb22f42ad1f"
@@ -3918,8 +3931,8 @@ dependencies = [
"checksum string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b1884d1bc09741d466d9b14e6d37ac89d6909cbcac41dd9ae982d4d063bbedfc"
"checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
"checksum strsim 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
"checksum structopt 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "863246aaf5ddd0d6928dfeb1a9ca65f505599e4e1b399935ef7e75107516b4ef"
"checksum structopt-derive 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "d239ca4b13aee7a2142e6795cbd69e457665ff8037aed33b3effdc430d2f927a"
"checksum structopt 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c"
"checksum structopt-derive 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118"
"checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee"
"checksum subtle 2.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "502d53007c02d7605a05df1c1a73ee436952781653da5d0bf57ad608f66932c1"
"checksum syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)" = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
@@ -3932,13 +3945,14 @@ dependencies = [
"checksum term 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c0863a3345e70f61d613eab32ee046ccd1bcc5f9105fe402c61fcd0c13eeb8b5"
"checksum termcolor 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
"checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
"checksum thiserror 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)" = "b13f926965ad00595dd129fa12823b04bbf866e9085ab0a5f2b05b850fbfc344"
"checksum thiserror-impl 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)" = "893582086c2f98cde18f906265a65b5030a074b1046c674ae898be6519a7f479"
"checksum thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)" = "7dfdd070ccd8ccb78f4ad66bf1982dc37f620ef696c6b5028fe2ed83dd3d0d08"
"checksum thiserror-impl 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)" = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793"
"checksum thread-id 3.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c7fbf4c9d56b320106cd64fd024dadfa0be7cb4706725fc44a7d7ce952d820c1"
"checksum thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
"checksum threshold_crypto 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "95be1032c63011f20b01c5edb64930e2b51512782b43b458b1e3449613d70f87"
"checksum time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
"checksum tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d8a021c69bb74a44ccedb824a046447e2c84a01df9e5c20779750acb38e11b2"
"checksum tinyvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
"checksum tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6"
"checksum tokio 0.2.21 (registry+https://github.com/rust-lang/crates.io-index)" = "d099fa27b9702bed751524694adbe393e18b36b204da91eb1cbbbbb4a5ee2d58"
"checksum tokio-buf 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8fb220f46c53859a4b7ec083e41dec9778ff0b1851c0942b211edb89e0ccdc46"
@@ -3963,7 +3977,7 @@ dependencies = [
"checksum typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33"
"checksum unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
"checksum unicode-normalization 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5479532badd04e128284890390c1e876ef7a993d0570b3597ae43dfa1d59afa4"
"checksum unicode-normalization 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
"checksum unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
"checksum unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-librapay"
version = "1.2.3"
version = "1.2.4"
description = "Solana Libra Payment"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -11,10 +11,10 @@ edition = "2018"
[dependencies]
bincode = "1.2.0"
log = "0.4.8"
solana-logger = { path = "../../logger", version = "1.2.3" }
solana-move-loader-program = { path = "../move_loader", version = "1.2.3" }
solana-runtime = { path = "../../runtime", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-logger = { path = "../../logger", version = "1.2.4" }
solana-move-loader-program = { path = "../move_loader", version = "1.2.4" }
solana-runtime = { path = "../../runtime", version = "1.2.4" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
types = { version = "0.0.1-sol5", package = "solana_libra_types" }
[lib]

View File

@@ -9,6 +9,12 @@ dependencies = [
"gimli",
]
[[package]]
name = "adler32"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d"
[[package]]
name = "aho-corasick"
version = "0.7.10"
@@ -85,13 +91,14 @@ checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
[[package]]
name = "backtrace"
version = "0.3.48"
version = "0.3.49"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0df2f85c8a2abbe3b7d7e748052fdd9b76a0458fdeb16ad4223f5eca78c7c130"
checksum = "05100821de9e028f12ae3d189176b41ee198341eb8f369956407fea2f5cc666c"
dependencies = [
"addr2line",
"cfg-if",
"libc",
"miniz_oxide",
"object",
"rustc-demangle",
"serde",
@@ -105,9 +112,9 @@ checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
[[package]]
name = "base64"
version = "0.12.1"
version = "0.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53d1ccbaf7d9ec9537465a97bf19edc1a4e158ecb49fc16178202238c569cc42"
checksum = "e223af0dc48c96d4f8342ec01a4974f139df863896b316681efd36742f22cc67"
[[package]]
name = "bech32"
@@ -541,9 +548,9 @@ dependencies = [
[[package]]
name = "dtoa"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4358a9e11b9a09cf52383b451b49a169e8d797b68aa02301ff586d70d9661ea3"
checksum = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b"
[[package]]
name = "ed25519-dalek"
@@ -1109,9 +1116,9 @@ dependencies = [
[[package]]
name = "itoa"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8b7a7c0c47db5545ed3fef7468ee7bb5b74691498139e4b3f6a20685dc6dd8e"
checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
[[package]]
name = "jobserver"
@@ -1282,6 +1289,15 @@ dependencies = [
"unicase",
]
[[package]]
name = "miniz_oxide"
version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
dependencies = [
"adler32",
]
[[package]]
name = "mio"
version = "0.6.22"
@@ -1423,9 +1439,9 @@ dependencies = [
[[package]]
name = "object"
version = "0.19.0"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9cbca9424c482ee628fa549d9c812e2cd22f1180b9222c9200fdfa6eb31aecb2"
checksum = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5"
[[package]]
name = "once_cell"
@@ -1526,7 +1542,7 @@ checksum = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa"
dependencies = [
"libc",
"rand 0.4.6",
"smallvec 0.6.13",
"smallvec",
"winapi 0.3.8",
]
@@ -1541,7 +1557,7 @@ dependencies = [
"libc",
"redox_syscall",
"rustc_version",
"smallvec 0.6.13",
"smallvec",
"winapi 0.3.8",
]
@@ -2026,10 +2042,11 @@ dependencies = [
[[package]]
name = "rayon"
version = "1.3.0"
version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098"
checksum = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080"
dependencies = [
"autocfg 1.0.0",
"crossbeam-deque",
"either",
"rayon-core",
@@ -2037,9 +2054,9 @@ dependencies = [
[[package]]
name = "rayon-core"
version = "1.7.0"
version = "1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9"
checksum = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280"
dependencies = [
"crossbeam-deque",
"crossbeam-queue",
@@ -2128,7 +2145,7 @@ version = "0.10.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b82c9238b305f26f53443e3a4bc8528d64b8d0bee408ec949eb7bf5635ec680"
dependencies = [
"base64 0.12.1",
"base64 0.12.2",
"bytes 0.5.4",
"encoding_rs",
"futures-core",
@@ -2264,9 +2281,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
name = "serde"
version = "1.0.111"
version = "1.0.112"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c9124df5b40cbd380080b2cc6ab894c040a3070d995f5c9dc77e18c34a8ae37d"
checksum = "736aac72d1eafe8e5962d1d1c3d99b0df526015ba40915cb3c49d042e92ec243"
dependencies = [
"serde_derive",
]
@@ -2282,9 +2299,9 @@ dependencies = [
[[package]]
name = "serde_derive"
version = "1.0.111"
version = "1.0.112"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f2c3ac8e6ca1e9c80b8be1023940162bf81ae3cffbb1809474152f2ce1eb250"
checksum = "bf0343ce212ac0d3d6afd9391ac8e9c9efe06b533c8d33f660f6390cc4093f57"
dependencies = [
"proc-macro2 1.0.18",
"quote 1.0.7",
@@ -2441,12 +2458,6 @@ dependencies = [
"maybe-uninit",
]
[[package]]
name = "smallvec"
version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7cb5678e1615754284ec264d9bb5b4c27d2018577fd90ac0ceb578591ed5ee4"
[[package]]
name = "socket2"
version = "0.3.12"
@@ -2461,7 +2472,7 @@ dependencies = [
[[package]]
name = "solana-crate-features"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"backtrace",
"bytes 0.4.12",
@@ -2484,7 +2495,7 @@ dependencies = [
[[package]]
name = "solana-logger"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"env_logger",
"lazy_static",
@@ -2493,7 +2504,7 @@ dependencies = [
[[package]]
name = "solana-move-loader-program"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bincode",
"indexmap",
@@ -2522,7 +2533,7 @@ dependencies = [
[[package]]
name = "solana-sdk"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"assert_matches",
"bincode",
@@ -2555,7 +2566,7 @@ dependencies = [
[[package]]
name = "solana-sdk-macro"
version = "1.2.3"
version = "1.2.4"
dependencies = [
"bs58 0.3.1",
"proc-macro2 1.0.18",
@@ -2975,9 +2986,9 @@ checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
[[package]]
name = "structopt"
version = "0.3.14"
version = "0.3.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "863246aaf5ddd0d6928dfeb1a9ca65f505599e4e1b399935ef7e75107516b4ef"
checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c"
dependencies = [
"clap",
"lazy_static",
@@ -2986,9 +2997,9 @@ dependencies = [
[[package]]
name = "structopt-derive"
version = "0.4.7"
version = "0.4.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d239ca4b13aee7a2142e6795cbd69e457665ff8037aed33b3effdc430d2f927a"
checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118"
dependencies = [
"heck",
"proc-macro-error",
@@ -3115,18 +3126,18 @@ dependencies = [
[[package]]
name = "thiserror"
version = "1.0.19"
version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b13f926965ad00595dd129fa12823b04bbf866e9085ab0a5f2b05b850fbfc344"
checksum = "7dfdd070ccd8ccb78f4ad66bf1982dc37f620ef696c6b5028fe2ed83dd3d0d08"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
version = "1.0.19"
version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "893582086c2f98cde18f906265a65b5030a074b1046c674ae898be6519a7f479"
checksum = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793"
dependencies = [
"proc-macro2 1.0.18",
"quote 1.0.7",
@@ -3192,6 +3203,12 @@ dependencies = [
"crunchy",
]
[[package]]
name = "tinyvec"
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
[[package]]
name = "tokio"
version = "0.1.22"
@@ -3482,11 +3499,11 @@ dependencies = [
[[package]]
name = "unicode-normalization"
version = "0.1.12"
version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5479532badd04e128284890390c1e876ef7a993d0570b3597ae43dfa1d59afa4"
checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
dependencies = [
"smallvec 1.4.0",
"tinyvec",
]
[[package]]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-move-loader-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Move loader"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -16,8 +16,8 @@ serde = "1.0.104"
serde_bytes = "0.11"
serde_derive = "1.0.103"
serde_json = "1.0.46"
solana-logger = { path = "../../logger", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-logger = { path = "../../logger", version = "1.2.4" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
bytecode_verifier = { version = "0.0.1-sol5", package = "solana_libra_bytecode_verifier" }
canonical_serialization = { version = "0.0.1-sol5", package = "solana_libra_canonical_serialization" }

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-noop-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Noop program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -10,8 +10,8 @@ edition = "2018"
[dependencies]
log = "0.4.8"
solana-logger = { path = "../../logger", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-logger = { path = "../../logger", version = "1.2.4" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
[lib]
crate-type = ["lib", "cdylib"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-ownable"
version = "1.2.3"
version = "1.2.4"
description = "ownable program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -10,13 +10,13 @@ edition = "2018"
[dependencies]
bincode = "1.2.1"
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
num-derive = "0.3"
num-traits = "0.2"
thiserror = "1.0"
[dev-dependencies]
solana-runtime = { path = "../../runtime", version = "1.2.3" }
solana-runtime = { path = "../../runtime", version = "1.2.4" }
[lib]
crate-type = ["lib", "cdylib"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-stake-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Stake program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -15,14 +15,14 @@ num-derive = "0.3"
num-traits = "0.2"
serde = "1.0.110"
serde_derive = "1.0.103"
solana-metrics = { path = "../../metrics", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-vote-program = { path = "../vote", version = "1.2.3" }
solana-config-program = { path = "../config", version = "1.2.3" }
solana-metrics = { path = "../../metrics", version = "1.2.4" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
solana-vote-program = { path = "../vote", version = "1.2.4" }
solana-config-program = { path = "../config", version = "1.2.4" }
thiserror = "1.0"
[dev-dependencies]
solana-logger = { path = "../../logger", version = "1.2.3" }
solana-logger = { path = "../../logger", version = "1.2.4" }
[lib]
crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-vest-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Vest program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -15,12 +15,12 @@ num-derive = "0.2"
num-traits = "0.2"
serde = "1.0.110"
serde_derive = "1.0.103"
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-config-program = { path = "../config", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
solana-config-program = { path = "../config", version = "1.2.4" }
thiserror = "1.0"
[dev-dependencies]
solana-runtime = { path = "../../runtime", version = "1.2.3" }
solana-runtime = { path = "../../runtime", version = "1.2.4" }
[lib]
crate-type = ["lib"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-vote-program"
version = "1.2.3"
version = "1.2.4"
description = "Solana Vote program"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -15,8 +15,8 @@ num-derive = "0.3"
num-traits = "0.2"
serde = "1.0.110"
serde_derive = "1.0.103"
solana-metrics = { path = "../../metrics", version = "1.2.3" }
solana-sdk = { path = "../../sdk", version = "1.2.3" }
solana-metrics = { path = "../../metrics", version = "1.2.4" }
solana-sdk = { path = "../../sdk", version = "1.2.4" }
thiserror = "1.0"
[lib]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-ramp-tps"
description = "Solana Tour de SOL - TPS ramp up"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/tour-de-sol"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -16,12 +16,12 @@ reqwest = { version = "0.10.4", default-features = false }
serde = "1.0.110"
serde_json = "1.0.53"
serde_yaml = "0.8.12"
solana-core = { path = "../core", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-net-utils = { path = "../net-utils", version = "1.2.3" }
solana-notifier = { path = "../notifier", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-net-utils = { path = "../net-utils", version = "1.2.4" }
solana-notifier = { path = "../notifier", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
tar = "0.4.28"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-rayon-threadlimit"
version = "1.2.3"
version = "1.2.4"
description = "solana-rayon-threadlimit"
homepage = "https://solana.com/"
readme = "../README.md"

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-remote-wallet"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -18,7 +18,7 @@ num-derive = { version = "0.3" }
num-traits = { version = "0.2" }
parking_lot = "0.10"
semver = "0.9"
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
thiserror = "1.0"
url = "2.1.1"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-runtime"
version = "1.2.3"
version = "1.2.4"
description = "Solana runtime"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -27,14 +27,14 @@ rand = "0.7.0"
rayon = "1.3.0"
serde = { version = "1.0.110", features = ["rc"] }
serde_derive = "1.0.103"
solana-config-program = { path = "../programs/config", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-measure = { path = "../measure", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-vote-program = { path = "../programs/vote", version = "1.2.3" }
solana-config-program = { path = "../programs/config", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-measure = { path = "../measure", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-vote-program = { path = "../programs/vote", version = "1.2.4" }
tempfile = "3.1.0"
thiserror = "1.0"
@@ -44,7 +44,7 @@ name = "solana_runtime"
[dev-dependencies]
assert_matches = "1.3.0"
solana-noop-program = { path = "../programs/noop", version = "1.2.3" }
solana-noop-program = { path = "../programs/noop", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-scripts"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-sdk"
version = "1.2.3"
version = "1.2.4"
description = "Solana SDK"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -51,9 +51,9 @@ serde_json = { version = "1.0.53", optional = true }
sha2 = "0.8.2"
thiserror = "1.0"
ed25519-dalek = { version = "=1.0.0-pre.3", optional = true }
solana-crate-features = { path = "../crate-features", version = "1.2.3", optional = true }
solana-logger = { path = "../logger", version = "1.2.3", optional = true }
solana-sdk-macro = { path = "macro", version = "1.2.3" }
solana-crate-features = { path = "../crate-features", version = "1.2.4", optional = true }
solana-logger = { path = "../logger", version = "1.2.4", optional = true }
solana-sdk-macro = { path = "macro", version = "1.2.4" }
[dev-dependencies]
tiny-bip39 = "0.7.0"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-sdk-bpf-test"
version = "1.2.3"
version = "1.2.4"
description = "Solana BPF SDK test utilities"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-sdk-macro"
version = "1.2.3"
version = "1.2.4"
description = "Solana SDK Macro"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"

View File

@@ -41,12 +41,15 @@ impl ToTokens for Id {
fn to_tokens(&self, tokens: &mut proc_macro2::TokenStream) {
let id = &self.0;
tokens.extend(quote! {
/// The static program ID
pub static ID: ::solana_sdk::pubkey::Pubkey = #id;
/// Confirms that a given pubkey is equivalent to the program ID
pub fn check_id(id: &::solana_sdk::pubkey::Pubkey) -> bool {
id == &ID
}
/// Returns the program ID
pub fn id() -> ::solana_sdk::pubkey::Pubkey {
ID
}

View File

@@ -3,22 +3,22 @@ name = "solana-stake-accounts"
description = "Blockchain, Rebuilt for Scale"
authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
[dependencies]
clap = "2.33.1"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-cli-config = { path = "../cli-config", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-cli-config = { path = "../cli-config", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
[dev-dependencies]
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-stake-monitor"
description = "Blockchain, Rebuilt for Scale"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -14,21 +14,21 @@ console = "0.10.1"
log = "0.4.8"
serde = "1.0.110"
serde_yaml = "0.8.12"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-cli-config = { path = "../cli-config", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-cli-config = { path = "../cli-config", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
[dev-dependencies]
serial_test = "0.4.0"
serial_test_derive = "0.4.0"
solana-local-cluster = { path = "../local-cluster", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.3" }
solana-local-cluster = { path = "../local-cluster", version = "1.2.4" }
solana-core = { path = "../core", version = "1.2.4" }
tempfile = "3.1.0"
[[bin]]

View File

@@ -6,21 +6,21 @@ homepage = "https://solana.com/"
license = "Apache-2.0"
name = "solana-stake-o-matic"
repository = "https://github.com/solana-labs/stake-o-matic"
version = "1.2.3"
version = "1.2.4"
[dependencies]
clap = "2.33.0"
log = "0.4.8"
serde_yaml = "0.8.12"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-cli-config = { path = "../cli-config", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-notifier = { path = "../notifier", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-cli-config = { path = "../cli-config", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-notifier = { path = "../notifier", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.4" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@@ -1,6 +1,6 @@
[package]
name = "solana-streamer"
version = "1.2.3"
version = "1.2.4"
description = "Solana Streamer"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
@@ -10,14 +10,14 @@ edition = "2018"
[dependencies]
log = "0.4.8"
solana-metrics = { path = "../metrics", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-metrics = { path = "../metrics", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
thiserror = "1.0"
solana-measure = { path = "../measure", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-measure = { path = "../measure", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
libc = "0.2.70"
nix = "0.17.0"
solana-perf = { path = "../perf", version = "1.2.3" }
solana-perf = { path = "../perf", version = "1.2.4" }
[dev-dependencies]

View File

@@ -3,7 +3,7 @@ authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
name = "solana-sys-tuner"
description = "The solana cluster system tuner daemon"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -13,9 +13,9 @@ publish = true
clap = "2.33.1"
log = "0.4.8"
libc = "0.2.70"
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-logger = { path = "../logger", version = "1.2.3" }
solana-version = { path = "../version", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-logger = { path = "../logger", version = "1.2.4" }
solana-version = { path = "../version", version = "1.2.4" }
[target."cfg(unix)".dependencies]
unix_socket2 = "0.5.4"

View File

@@ -249,3 +249,16 @@ EOF
--data "$payLoad" \
"$SLACK_WEBHOOK_URL"
}
function get_net_launch_software_version_launch_args() {
declare channel="${1?}"
declare artifact_basename="${2?}"
declare return_varname="${3:?}"
if [[ -n $channel ]]; then
eval "$return_varname=-t\ \$channel"
else
execution_step "Downloading tar from build artifacts (${artifact_basename})"
buildkite-agent artifact download "${artifact_basename}*.tar.bz2" .
eval "$return_varname=-T\ \${artifact_basename}*.tar.bz2"
fi
}

View File

@@ -120,20 +120,21 @@ function launch_testnet() {
fi
execution_step "Starting bootstrap node and ${NUMBER_OF_VALIDATOR_NODES} validator nodes"
if [[ -n $CHANNEL ]]; then
# shellcheck disable=SC2068
# shellcheck disable=SC2086
"${REPO_ROOT}"/net/net.sh start -t "$CHANNEL" \
-c idle=$NUMBER_OF_CLIENT_NODES $maybeStartAllowBootFailures \
--gpu-mode $startGpuMode
else
# shellcheck disable=SC2068
# shellcheck disable=SC2086
"${REPO_ROOT}"/net/net.sh start -T solana-release*.tar.bz2 \
-c idle=$NUMBER_OF_CLIENT_NODES $maybeStartAllowBootFailures \
--gpu-mode $startGpuMode
declare -g version_args
get_net_launch_software_version_launch_args "$CHANNEL" "solana-release" version_args
declare maybeWarpSlot
if [[ -n "$WARP_SLOT" ]]; then
maybeWarpSlot="--warp-slot $WARP_SLOT"
fi
# shellcheck disable=SC2068
# shellcheck disable=SC2086
"${REPO_ROOT}"/net/net.sh start $version_args \
-c idle=$NUMBER_OF_CLIENT_NODES $maybeStartAllowBootFailures \
--gpu-mode $startGpuMode $maybeWarpSlot
execution_step "Waiting for bootstrap validator's stake to fall below ${BOOTSTRAP_VALIDATOR_MAX_STAKE_THRESHOLD}%"
wait_for_bootstrap_validator_stake_drop "$BOOTSTRAP_VALIDATOR_MAX_STAKE_THRESHOLD"
@@ -285,11 +286,6 @@ if [[ -n $missingParameters ]]; then
exit 1
fi
if [[ -z $CHANNEL ]]; then
execution_step "Downloading tar from build artifacts"
buildkite-agent artifact download "solana-release*.tar.bz2" .
fi
maybeClientOptions=${CLIENT_OPTIONS:+"-c"}
maybeCustomMachineType=${VALIDATOR_NODE_MACHINE_TYPE:+"--custom-machine-type"}

View File

@@ -3,7 +3,7 @@ name = "solana-tokens"
description = "Blockchain, Rebuilt for Scale"
authors = ["Solana Maintainers <maintainers@solana.com>"]
edition = "2018"
version = "1.2.3"
version = "1.2.4"
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
@@ -18,16 +18,16 @@ indexmap = "1.3.2"
indicatif = "0.14.0"
pickledb = "0.4.1"
serde = { version = "1.0", features = ["derive"] }
solana-clap-utils = { path = "../clap-utils", version = "1.2.3" }
solana-cli-config = { path = "../cli-config", version = "1.2.3" }
solana-client = { path = "../client", version = "1.2.3" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.3" }
solana-runtime = { path = "../runtime", version = "1.2.3" }
solana-sdk = { path = "../sdk", version = "1.2.3" }
solana-stake-program = { path = "../programs/stake", version = "1.2.3" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.3" }
solana-clap-utils = { path = "../clap-utils", version = "1.2.4" }
solana-cli-config = { path = "../cli-config", version = "1.2.4" }
solana-client = { path = "../client", version = "1.2.4" }
solana-remote-wallet = { path = "../remote-wallet", version = "1.2.4" }
solana-runtime = { path = "../runtime", version = "1.2.4" }
solana-sdk = { path = "../sdk", version = "1.2.4" }
solana-stake-program = { path = "../programs/stake", version = "1.2.4" }
solana-transaction-status = { path = "../transaction-status", version = "1.2.4" }
tempfile = "3.1.0"
thiserror = "1.0"
[dev-dependencies]
solana-core = { path = "../core", version = "1.2.3" }
solana-core = { path = "../core", version = "1.2.4" }

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