Cargo.toml 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657
  1. [profile.release-with-debug]
  2. inherits = "release"
  3. debug = true
  4. split-debuginfo = "packed"
  5. lto = false # Preserve the 'thin local LTO' for this build.
  6. [profile.release]
  7. split-debuginfo = "unpacked"
  8. lto = "thin"
  9. [workspace]
  10. members = [
  11. "account-decoder",
  12. "account-decoder-client-types",
  13. "accounts-bench",
  14. "accounts-cluster-bench",
  15. "accounts-db",
  16. "accounts-db/accounts-hash-cache-tool",
  17. "accounts-db/store-histogram",
  18. "accounts-db/store-tool",
  19. "banking-bench",
  20. "banking-stage-ingress-types",
  21. "banks-client",
  22. "banks-interface",
  23. "banks-server",
  24. "bench-streamer",
  25. "bench-tps",
  26. "bench-vote",
  27. "bloom",
  28. "bucket_map",
  29. "builtins",
  30. "builtins-default-costs",
  31. "cargo-registry",
  32. "clap-utils",
  33. "clap-v3-utils",
  34. "cli",
  35. "cli-config",
  36. "cli-output",
  37. "client",
  38. "client-test",
  39. "compute-budget",
  40. "compute-budget-instruction",
  41. "connection-cache",
  42. "core",
  43. "cost-model",
  44. "curves/curve25519",
  45. "dos",
  46. "download-utils",
  47. "entry",
  48. "faucet",
  49. "fee",
  50. "genesis",
  51. "genesis-utils",
  52. "geyser-plugin-interface",
  53. "geyser-plugin-manager",
  54. "gossip",
  55. "inline-spl",
  56. "install",
  57. "keygen",
  58. "lattice-hash",
  59. "ledger",
  60. "ledger-tool",
  61. "local-cluster",
  62. "log-analyzer",
  63. "log-collector",
  64. "measure",
  65. "memory-management",
  66. "merkle-root-bench",
  67. "merkle-tree",
  68. "metrics",
  69. "net-shaper",
  70. "net-utils",
  71. "notifier",
  72. "perf",
  73. "platform-tools-sdk/cargo-build-sbf",
  74. "platform-tools-sdk/cargo-test-sbf",
  75. "platform-tools-sdk/gen-headers",
  76. "poh",
  77. "poh-bench",
  78. "poseidon",
  79. "program-runtime",
  80. "program-test",
  81. "programs/address-lookup-table",
  82. "programs/address-lookup-table-tests",
  83. "programs/bpf-loader-tests",
  84. "programs/bpf_loader",
  85. "programs/bpf_loader/gen-syscall-list",
  86. "programs/compute-budget",
  87. "programs/compute-budget-bench",
  88. "programs/config",
  89. "programs/ed25519-tests",
  90. "programs/loader-v4",
  91. "programs/stake",
  92. "programs/stake-tests",
  93. "programs/system",
  94. "programs/vote",
  95. "programs/zk-elgamal-proof",
  96. "programs/zk-token-proof",
  97. "programs/zk-token-proof-tests",
  98. "pubsub-client",
  99. "quic-client",
  100. "rayon-threadlimit",
  101. "rbpf-cli",
  102. "remote-wallet",
  103. "rpc",
  104. "rpc-client",
  105. "rpc-client-api",
  106. "rpc-client-nonce-utils",
  107. "rpc-test",
  108. "runtime",
  109. "runtime-transaction",
  110. "send-transaction-service",
  111. "stake-accounts",
  112. "storage-bigtable",
  113. "storage-bigtable/build-proto",
  114. "storage-proto",
  115. "streamer",
  116. "svm",
  117. "svm-conformance",
  118. "svm-rent-collector",
  119. "svm-transaction",
  120. "test-validator",
  121. "thin-client",
  122. "thread-manager",
  123. "timings",
  124. "tls-utils",
  125. "tokens",
  126. "tps-client",
  127. "tpu-client",
  128. "tpu-client-next",
  129. "transaction-dos",
  130. "transaction-metrics-tracker",
  131. "transaction-status",
  132. "transaction-status-client-types",
  133. "transaction-view",
  134. "turbine",
  135. "type-overrides",
  136. "udp-client",
  137. "unified-scheduler-logic",
  138. "unified-scheduler-pool",
  139. "upload-perf",
  140. "validator",
  141. "version",
  142. "vortexor",
  143. "vote",
  144. "watchtower",
  145. "wen-restart",
  146. "zk-keygen",
  147. "zk-sdk",
  148. "zk-token-sdk",
  149. ]
  150. exclude = ["programs/sbf", "svm/examples", "svm/tests/example-programs"]
  151. resolver = "2"
  152. [workspace.package]
  153. version = "2.3.0"
  154. authors = ["Anza Maintainers <maintainers@anza.xyz>"]
  155. repository = "https://github.com/anza-xyz/agave"
  156. homepage = "https://anza.xyz/"
  157. license = "Apache-2.0"
  158. edition = "2021"
  159. [workspace.lints.rust.unexpected_cfgs]
  160. level = "warn"
  161. check-cfg = [
  162. 'cfg(target_os, values("solana"))',
  163. 'cfg(feature, values("frozen-abi", "no-entrypoint"))',
  164. ]
  165. [workspace.dependencies]
  166. Inflector = "0.11.4"
  167. axum = "0.7.9"
  168. agave-banking-stage-ingress-types = { path = "banking-stage-ingress-types", version = "=2.3.0" }
  169. agave-transaction-view = { path = "transaction-view", version = "=2.3.0" }
  170. aquamarine = "0.6.0"
  171. aes-gcm-siv = "0.11.1"
  172. ahash = "0.8.11"
  173. anyhow = "1.0.96"
  174. arbitrary = "1.4.1"
  175. ark-bn254 = "0.4.0"
  176. ark-ec = "0.4.0"
  177. ark-ff = "0.4.0"
  178. ark-serialize = "0.4.0"
  179. array-bytes = "=1.4.1"
  180. arrayref = "0.3.9"
  181. arrayvec = "0.7.6"
  182. assert_cmd = "2.0"
  183. assert_matches = "1.5.0"
  184. async-channel = "1.9.0"
  185. async-lock = "3.4.0"
  186. async-trait = "0.1.87"
  187. atty = "0.2.11"
  188. backoff = "0.4.0"
  189. base64 = "0.22.1"
  190. bincode = "1.3.3"
  191. bitflags = { version = "2.9.0" }
  192. blake3 = "1.6.1"
  193. borsh = { version = "1.5.5", features = ["derive", "unstable__schema"] }
  194. borsh0-10 = { package = "borsh", version = "0.10.3" }
  195. bs58 = { version = "0.5.1", default-features = false }
  196. bv = "0.11.1"
  197. byte-unit = "4.0.19"
  198. bytemuck = "1.22.0"
  199. bytemuck_derive = "1.8.1"
  200. bytes = "1.10"
  201. bzip2 = "0.4.4"
  202. caps = "0.5.5"
  203. cargo_metadata = "0.15.4"
  204. cfg_eval = "0.1.2"
  205. cfg-if = "1.0.0"
  206. chrono = { version = "0.4.40", default-features = false }
  207. chrono-humanize = "0.2.3"
  208. clap = "2.33.1"
  209. console = "0.15.11"
  210. console_error_panic_hook = "0.1.7"
  211. console_log = "0.2.2"
  212. const_format = "0.2.34"
  213. core_affinity = "0.5.10"
  214. criterion = "0.5.1"
  215. criterion-stats = "0.3.0"
  216. crossbeam-channel = "0.5.14"
  217. csv = "1.3.1"
  218. ctrlc = "3.4.5"
  219. curve25519-dalek = { version = "4.1.3", features = ["digest", "rand_core"] }
  220. dashmap = "5.5.3"
  221. derivation-path = { version = "0.2.0", default-features = false }
  222. derive-where = "1.2.7"
  223. derive_more = { version = "1.0.0", features = ["full"] }
  224. dialoguer = "0.10.4"
  225. digest = "0.10.7"
  226. dir-diff = "0.3.3"
  227. dirs-next = "2.0.0"
  228. dlopen2 = "0.5.0"
  229. dyn-clone = "1.0.19"
  230. eager = "0.1.0"
  231. ed25519-dalek = "=1.0.1"
  232. ed25519-dalek-bip32 = "0.2.0"
  233. enum-iterator = "1.5.0"
  234. env_logger = "0.9.3"
  235. etcd-client = "0.11.1"
  236. fast-math = "0.1"
  237. fd-lock = "3.0.13"
  238. flate2 = "1.0.31"
  239. five8_const = "0.1.3"
  240. fnv = "1.0.7"
  241. fs_extra = "1.3.0"
  242. futures = "0.3.31"
  243. futures-util = "0.3.29"
  244. gag = "1.0.0"
  245. gethostname = "0.2.3"
  246. getrandom = "0.3.1"
  247. goauth = "0.13.1"
  248. governor = "0.6.3"
  249. hex = "0.4.3"
  250. hidapi = { version = "2.6.3", default-features = false }
  251. histogram = "0.6.9"
  252. hmac = "0.12.1"
  253. http = "0.2.12"
  254. humantime = "2.0.1"
  255. hyper = "0.14.32"
  256. hyper-proxy = "0.9.1"
  257. im = "15.1.0"
  258. indexmap = "2.8.0"
  259. indicatif = "0.17.11"
  260. itertools = "0.12.1"
  261. jemallocator = { package = "tikv-jemallocator", version = "0.6.0", features = [
  262. "unprefixed_malloc_on_supported_platforms",
  263. ] }
  264. js-sys = "0.3.77"
  265. json5 = "0.4.1"
  266. jsonrpc-core = "18.0.0"
  267. jsonrpc-core-client = "18.0.0"
  268. jsonrpc-derive = "18.0.0"
  269. jsonrpc-http-server = "18.0.0"
  270. jsonrpc-ipc-server = "18.0.0"
  271. jsonrpc-pubsub = "18.0.0"
  272. lazy-lru = "0.1.3"
  273. lazy_static = "1.5.0"
  274. libc = "0.2.171"
  275. libloading = "0.7.4"
  276. libsecp256k1 = { version = "0.6.0", default-features = false, features = [
  277. "std",
  278. "static-context",
  279. ] }
  280. light-poseidon = "0.2.0"
  281. log = "0.4.26"
  282. lru = "0.7.7"
  283. lz4 = "1.28.1"
  284. memmap2 = "0.9.5"
  285. memoffset = "0.9"
  286. merlin = { version = "3", default-features = false }
  287. min-max-heap = "1.3.0"
  288. mockall = "0.11.4"
  289. modular-bitfield = "0.11.2"
  290. nix = "0.29.0"
  291. num-bigint = "0.4.6"
  292. num-derive = "0.4"
  293. num-traits = "0.2"
  294. num_cpus = "1.16.0"
  295. num_enum = "0.7.3"
  296. openssl = "0.10"
  297. parking_lot = "0.12"
  298. pbkdf2 = { version = "0.11.0", default-features = false }
  299. pem = "1.1.1"
  300. percentage = "0.1.0"
  301. pickledb = { version = "0.5.1", default-features = false }
  302. predicates = "2.1"
  303. pretty-hex = "0.3.0"
  304. prio-graph = "0.3.0"
  305. proc-macro2 = "1.0.94"
  306. proptest = "1.6"
  307. prost = "0.11.9"
  308. prost-build = "0.11.9"
  309. prost-types = "0.11.9"
  310. protobuf-src = "1.1.0"
  311. qstring = "0.7.2"
  312. qualifier_attr = { version = "0.2.2", default-features = false }
  313. quinn = "0.11.6"
  314. quinn-proto = "0.11.9"
  315. quote = "1.0"
  316. rand = "0.8.5"
  317. rand0-7 = { package = "rand", version = "0.7" }
  318. rand_chacha = "0.3.1"
  319. rand_chacha0-2 = { package = "rand_chacha", version = "0.2.2" }
  320. rayon = "1.10.0"
  321. reed-solomon-erasure = "6.0.0"
  322. regex = "1.11.1"
  323. reqwest = { version = "0.12.12", default-features = false }
  324. reqwest-middleware = "0.4.1"
  325. rolling-file = "0.2.0"
  326. rpassword = "7.3"
  327. rustls = { version = "0.23.23", features = ["std"], default-features = false }
  328. scopeguard = "1.2.0"
  329. semver = "1.0.26"
  330. seqlock = "0.2.0"
  331. serde = "1.0.219" # must match the serde_derive version, see https://github.com/serde-rs/serde/issues/2584#issuecomment-1685252251
  332. serde-big-array = "0.5.1"
  333. serde_bytes = "0.11.16"
  334. serde_derive = "1.0.219" # must match the serde version, see https://github.com/serde-rs/serde/issues/2584#issuecomment-1685252251
  335. serde_json = "1.0.140"
  336. serde_with = { version = "3.12.0", default-features = false }
  337. serde_yaml = "0.9.34"
  338. serial_test = "2.0.0"
  339. sha2 = "0.10.8"
  340. sha3 = "0.10.8"
  341. shuttle = "0.7.1"
  342. signal-hook = "0.3.17"
  343. siphasher = "0.3.11"
  344. slab = "0.4.9"
  345. smallvec = "1.14.0"
  346. smpl_jwt = "0.7.1"
  347. socket2 = "0.5.8"
  348. soketto = "0.7"
  349. solana-account = "=2.2.1"
  350. solana-account-decoder = { path = "account-decoder", version = "=2.3.0" }
  351. solana-account-decoder-client-types = { path = "account-decoder-client-types", version = "=2.3.0" }
  352. solana-account-info = "=2.2.1"
  353. solana-accounts-db = { path = "accounts-db", version = "=2.3.0" }
  354. solana-address-lookup-table-interface = "=2.2.2"
  355. solana-address-lookup-table-program = { path = "programs/address-lookup-table", version = "=2.3.0" }
  356. solana-atomic-u64 = "=2.2.1"
  357. solana-banks-client = { path = "banks-client", version = "=2.3.0" }
  358. solana-banks-interface = { path = "banks-interface", version = "=2.3.0" }
  359. solana-banks-server = { path = "banks-server", version = "=2.3.0" }
  360. solana-bench-tps = { path = "bench-tps", version = "=2.3.0" }
  361. solana-big-mod-exp = "=2.2.1"
  362. solana-bincode = "=2.2.1"
  363. solana-blake3-hasher = "=2.2.1"
  364. solana-bloom = { path = "bloom", version = "=2.3.0" }
  365. solana-bn254 = "=2.2.1"
  366. solana-borsh = "=2.2.1"
  367. solana-bpf-loader-program = { path = "programs/bpf_loader", version = "=2.3.0" }
  368. solana-bucket-map = { path = "bucket_map", version = "=2.3.0" }
  369. solana-builtins = { path = "builtins", version = "=2.3.0" }
  370. solana-builtins-default-costs = { path = "builtins-default-costs", version = "=2.3.0" }
  371. agave-cargo-registry = { path = "cargo-registry", version = "=2.3.0" }
  372. agave-thread-manager = { path = "thread-manager", version = "=2.3.0" }
  373. solana-clap-utils = { path = "clap-utils", version = "=2.3.0" }
  374. solana-clap-v3-utils = { path = "clap-v3-utils", version = "=2.3.0" }
  375. solana-cli = { path = "cli", version = "=2.3.0" }
  376. solana-cli-config = { path = "cli-config", version = "=2.3.0" }
  377. solana-cli-output = { path = "cli-output", version = "=2.3.0" }
  378. solana-client = { path = "client", version = "=2.3.0" }
  379. solana-client-traits = "=2.2.1"
  380. solana-clock = "=2.2.1"
  381. solana-cluster-type = "=2.2.1"
  382. solana-commitment-config = "=2.2.1"
  383. solana-compute-budget = { path = "compute-budget", version = "=2.3.0" }
  384. solana-compute-budget-instruction = { path = "compute-budget-instruction", version = "=2.3.0" }
  385. solana-compute-budget-interface = "=2.2.1"
  386. solana-compute-budget-program = { path = "programs/compute-budget", version = "=2.3.0" }
  387. solana-config-program = { path = "programs/config", version = "=2.3.0" }
  388. solana-connection-cache = { path = "connection-cache", version = "=2.3.0", default-features = false }
  389. solana-core = { path = "core", version = "=2.3.0" }
  390. solana-cost-model = { path = "cost-model", version = "=2.3.0" }
  391. solana-cpi = "=2.2.1"
  392. solana-curve25519 = { path = "curves/curve25519", version = "=2.3.0" }
  393. solana-decode-error = "=2.2.1"
  394. solana-define-syscall = "=2.2.1"
  395. solana-derivation-path = "=2.2.1"
  396. solana-download-utils = { path = "download-utils", version = "=2.3.0" }
  397. solana-ed25519-program = "=2.2.1"
  398. solana-entry = { path = "entry", version = "=2.3.0" }
  399. solana-program-entrypoint = "=2.2.1"
  400. solana-epoch-info = "=2.2.1"
  401. solana-epoch-rewards = "=2.2.1"
  402. solana-epoch-rewards-hasher = "=2.2.1"
  403. solana-epoch-schedule = "=2.2.1"
  404. solana-example-mocks = "=2.2.1"
  405. solana-faucet = { path = "faucet", version = "=2.3.0" }
  406. solana-feature-gate-client = "0.0.2"
  407. solana-feature-gate-interface = "=2.2.1"
  408. solana-feature-set = "=2.2.4"
  409. solana-fee-calculator = "=2.2.1"
  410. solana-fee = { path = "fee", version = "=2.3.0" }
  411. solana-fee-structure = "=2.2.1"
  412. solana-frozen-abi = "=2.2.1"
  413. solana-frozen-abi-macro = "=2.2.1"
  414. solana-tps-client = { path = "tps-client", version = "=2.3.0" }
  415. solana-file-download = "=2.2.1"
  416. solana-genesis = { path = "genesis", version = "=2.3.0" }
  417. solana-genesis-config = "=2.2.1"
  418. solana-genesis-utils = { path = "genesis-utils", version = "=2.3.0" }
  419. agave-geyser-plugin-interface = { path = "geyser-plugin-interface", version = "=2.3.0" }
  420. solana-geyser-plugin-manager = { path = "geyser-plugin-manager", version = "=2.3.0" }
  421. solana-gossip = { path = "gossip", version = "=2.3.0" }
  422. solana-hard-forks = "=2.2.1"
  423. solana-hash = "=2.2.1"
  424. solana-inflation = "=2.2.1"
  425. solana-inline-spl = { path = "inline-spl", version = "=2.3.0" }
  426. solana-instruction = "=2.2.1"
  427. solana-instructions-sysvar = "=2.2.1"
  428. solana-keccak-hasher = "=2.2.1"
  429. solana-keypair = "=2.2.1"
  430. solana-last-restart-slot = "=2.2.1"
  431. solana-lattice-hash = { path = "lattice-hash", version = "=2.3.0" }
  432. solana-ledger = { path = "ledger", version = "=2.3.0" }
  433. solana-loader-v2-interface = "=2.2.1"
  434. solana-loader-v3-interface = "=3.0.0"
  435. solana-loader-v4-interface = "=2.2.1"
  436. solana-loader-v4-program = { path = "programs/loader-v4", version = "=2.3.0" }
  437. solana-local-cluster = { path = "local-cluster", version = "=2.3.0" }
  438. solana-log-collector = { path = "log-collector", version = "=2.3.0" }
  439. solana-logger = "=2.3.1"
  440. solana-measure = { path = "measure", version = "=2.3.0" }
  441. solana-merkle-tree = { path = "merkle-tree", version = "=2.3.0" }
  442. solana-message = "=2.2.1"
  443. solana-metrics = { path = "metrics", version = "=2.3.0" }
  444. solana-msg = "=2.2.1"
  445. solana-native-token = "=2.2.1"
  446. solana-net-utils = { path = "net-utils", version = "=2.3.0" }
  447. solana-nohash-hasher = "0.2.1"
  448. solana-nonce = "=2.2.1"
  449. solana-nonce-account = "=2.2.1"
  450. solana-notifier = { path = "notifier", version = "=2.3.0" }
  451. solana-offchain-message = "=2.2.1"
  452. solana-package-metadata = "=2.2.1"
  453. solana-package-metadata-macro = "=2.2.1"
  454. solana-packet = "=2.2.1"
  455. solana-perf = { path = "perf", version = "=2.3.0" }
  456. solana-poh = { path = "poh", version = "=2.3.0" }
  457. solana-poh-config = "=2.2.1"
  458. solana-poseidon = { path = "poseidon", version = "=2.3.0" }
  459. solana-precompile-error = "=2.2.1"
  460. solana-precompiles = "=2.2.1"
  461. solana-presigner = "=2.2.1"
  462. solana-program = { version = "=2.2.1", default-features = false }
  463. solana-program-error = "=2.2.1"
  464. solana-program-memory = "=2.2.1"
  465. solana-program-option = "=2.2.1"
  466. solana-program-pack = "=2.2.1"
  467. solana-program-runtime = { path = "program-runtime", version = "=2.3.0" }
  468. solana-program-test = { path = "program-test", version = "=2.3.0" }
  469. solana-pubkey = { version = "=2.2.1", default-features = false }
  470. solana-pubsub-client = { path = "pubsub-client", version = "=2.3.0" }
  471. solana-quic-client = { path = "quic-client", version = "=2.3.0" }
  472. solana-quic-definitions = "=2.2.1"
  473. solana-rayon-threadlimit = { path = "rayon-threadlimit", version = "=2.3.0" }
  474. solana-remote-wallet = { path = "remote-wallet", version = "=2.3.0", default-features = false }
  475. solana-rent = "=2.2.1"
  476. solana-rent-collector = "=2.2.1"
  477. solana-rent-debits = "=2.2.1"
  478. solana-reserved-account-keys = "=2.2.1"
  479. solana-reward-info = "=2.2.1"
  480. solana-sanitize = "=2.2.1"
  481. solana-secp256r1-program = "=2.2.1"
  482. solana-seed-derivable = "=2.2.1"
  483. solana-seed-phrase = "=2.2.1"
  484. solana-serde = "=2.2.1"
  485. solana-serde-varint = "=2.2.1"
  486. solana-serialize-utils = "=2.2.1"
  487. solana-sha256-hasher = "=2.2.1"
  488. solana-signature = { version = "=2.2.1", default-features = false }
  489. solana-signer = "=2.2.1"
  490. solana-slot-hashes = "=2.2.1"
  491. solana-slot-history = "=2.2.1"
  492. solana-time-utils = "=2.2.1"
  493. solana-timings = { path = "timings", version = "=2.3.0" }
  494. solana-tls-utils = { path = "tls-utils", version = "=2.3.0" }
  495. solana-unified-scheduler-logic = { path = "unified-scheduler-logic", version = "=2.3.0" }
  496. solana-unified-scheduler-pool = { path = "unified-scheduler-pool", version = "=2.3.0" }
  497. solana-rpc = { path = "rpc", version = "=2.3.0" }
  498. solana-rpc-client = { path = "rpc-client", version = "=2.3.0", default-features = false }
  499. solana-rpc-client-api = { path = "rpc-client-api", version = "=2.3.0" }
  500. solana-rpc-client-nonce-utils = { path = "rpc-client-nonce-utils", version = "=2.3.0" }
  501. solana-runtime = { path = "runtime", version = "=2.3.0" }
  502. solana-runtime-transaction = { path = "runtime-transaction", version = "=2.3.0" }
  503. solana-sbpf = "=0.10.0"
  504. solana-sdk = "=2.2.1"
  505. solana-sdk-ids = "=2.2.1"
  506. solana-sdk-macro = "=2.2.1"
  507. solana-secp256k1-program = "=2.2.1"
  508. solana-secp256k1-recover = "=2.2.1"
  509. solana-send-transaction-service = { path = "send-transaction-service", version = "=2.3.0" }
  510. solana-short-vec = "=2.2.1"
  511. solana-shred-version = "=2.2.1"
  512. solana-stable-layout = "=2.2.1"
  513. solana-stake-interface = { version = "1.2.1" }
  514. solana-stake-program = { path = "programs/stake", version = "=2.3.0" }
  515. solana-storage-bigtable = { path = "storage-bigtable", version = "=2.3.0" }
  516. solana-storage-proto = { path = "storage-proto", version = "=2.3.0" }
  517. solana-streamer = { path = "streamer", version = "=2.3.0" }
  518. solana-svm = { path = "svm", version = "=2.3.0" }
  519. solana-svm-conformance = { path = "svm-conformance", version = "=2.3.0" }
  520. solana-svm-rent-collector = { path = "svm-rent-collector", version = "=2.3.0" }
  521. solana-svm-transaction = { path = "svm-transaction", version = "=2.3.0" }
  522. solana-system-interface = "1.0"
  523. solana-system-program = { path = "programs/system", version = "=2.3.0" }
  524. solana-system-transaction = "=2.2.1"
  525. solana-sysvar = "=2.2.1"
  526. solana-sysvar-id = "=2.2.1"
  527. solana-test-validator = { path = "test-validator", version = "=2.3.0" }
  528. solana-thin-client = { path = "thin-client", version = "=2.3.0" }
  529. solana-transaction = "=2.2.1"
  530. solana-transaction-error = "=2.2.1"
  531. solana-tpu-client = { path = "tpu-client", version = "=2.3.0", default-features = false }
  532. solana-tpu-client-next = { path = "tpu-client-next", version = "=2.3.0" }
  533. solana-transaction-context = { path = "transaction-context", version = "=2.3.0", features = [ "bincode", "debug-signature" ] }
  534. solana-transaction-status = { path = "transaction-status", version = "=2.3.0" }
  535. solana-transaction-status-client-types = { path = "transaction-status-client-types", version = "=2.3.0" }
  536. solana-transaction-metrics-tracker = { path = "transaction-metrics-tracker", version = "=2.3.0" }
  537. solana-turbine = { path = "turbine", version = "=2.3.0" }
  538. solana-type-overrides = { path = "type-overrides", version = "=2.3.0" }
  539. solana-udp-client = { path = "udp-client", version = "=2.3.0" }
  540. solana-validator-exit = "=2.2.1"
  541. solana-version = { path = "version", version = "=2.3.0" }
  542. solana-vote = { path = "vote", version = "=2.3.0" }
  543. solana-vote-interface = "=2.2.2"
  544. solana-vote-program = { path = "programs/vote", version = "=2.3.0", default-features = false }
  545. solana-wen-restart = { path = "wen-restart", version = "=2.3.0" }
  546. solana-zk-elgamal-proof-program = { path = "programs/zk-elgamal-proof", version = "=2.3.0" }
  547. solana-zk-keygen = { path = "zk-keygen", version = "=2.3.0" }
  548. solana-zk-sdk = { path = "zk-sdk", version = "=2.3.0" }
  549. solana-zk-token-proof-program = { path = "programs/zk-token-proof", version = "=2.3.0" }
  550. solana-zk-token-sdk = { path = "zk-token-sdk", version = "=2.3.0" }
  551. spl-associated-token-account = "=6.0.0"
  552. spl-instruction-padding = "0.3"
  553. spl-memo = "=6.0.0"
  554. spl-pod = "=0.5.0"
  555. spl-token = "=7.0.0"
  556. spl-token-2022 = "=7.0.0"
  557. spl-token-confidential-transfer-proof-extraction = "0.2.1"
  558. spl-token-group-interface = "=0.5.0"
  559. spl-token-metadata-interface = "=0.6.0"
  560. static_assertions = "1.1.0"
  561. stream-cancel = "0.8.2"
  562. strum = "0.24"
  563. strum_macros = "0.24"
  564. subtle = "2.6.1"
  565. symlink = "0.1.0"
  566. syn = "2.0"
  567. sys-info = "0.9.1"
  568. sysctl = "0.4.6"
  569. systemstat = "0.2.4"
  570. tar = "0.4.44"
  571. tarpc = "0.29.0"
  572. tempfile = "3.18.0"
  573. test-case = "3.3.1"
  574. thiserror = "2.0.12"
  575. thread-priority = "1.2.0"
  576. tiny-bip39 = "0.8.2"
  577. # Update solana-tokio patch below when updating this version
  578. tokio = "1.44.0"
  579. tokio-serde = "0.8"
  580. tokio-stream = "0.1.17"
  581. tokio-tungstenite = "0.20.1"
  582. tokio-util = "0.7.13"
  583. toml = "0.8.12"
  584. tonic = "0.9.2"
  585. tonic-build = "0.9.2"
  586. tower = "0.5.2"
  587. trait-set = "0.3.0"
  588. trees = "0.4.2"
  589. tungstenite = "0.20.1"
  590. unwrap_none = "0.1.2"
  591. uriparse = "0.6.4"
  592. url = "2.5.4"
  593. vec_extract_if_polyfill = "0.1.0"
  594. wasm-bindgen = "0.2"
  595. winapi = "0.3.8"
  596. winreg = "0.50"
  597. x509-parser = "0.14.0"
  598. # See "zeroize versioning issues" below if you are updating this version.
  599. zeroize = { version = "1.7", default-features = false }
  600. zstd = "0.13.3"
  601. # curve25519-dalek uses the simd backend by default in v4 if possible,
  602. # which has very slow performance on some platforms with opt-level 0,
  603. # which is the default for dev and test builds.
  604. # This slowdown causes certain interactions in the solana-test-validator,
  605. # such as verifying ZK proofs in transactions, to take much more than 400ms,
  606. # creating problems in the testing environment.
  607. # To enable better performance in solana-test-validator during tests and dev builds,
  608. # we override the opt-level to 3 for the crate.
  609. [profile.dev.package.curve25519-dalek]
  610. opt-level = 3
  611. [patch.crates-io]
  612. # for details, see https://github.com/anza-xyz/crossbeam/commit/fd279d707025f0e60951e429bf778b4813d1b6bf
  613. crossbeam-epoch = { git = "https://github.com/anza-xyz/crossbeam", rev = "fd279d707025f0e60951e429bf778b4813d1b6bf" }
  614. # We include the following crates as our dependencies above from crates.io:
  615. #
  616. # * spl-associated-token-account
  617. # * spl-instruction-padding
  618. # * spl-memo
  619. # * spl-pod
  620. # * spl-token
  621. # * spl-token-2022
  622. # * spl-token-metadata-interface
  623. #
  624. # They, in turn, depend on a number of crates that we also include directly
  625. # using `path` specifications. For example, `spl-token` depends on
  626. # `solana-program`. And we explicitly specify `solana-program` above as a local
  627. # path dependency:
  628. #
  629. # solana-program = { path = "../../sdk/program", version = "=1.16.0" }
  630. #
  631. # Unfortunately, Cargo will try to resolve the `spl-token` `solana-program`
  632. # dependency only using what is available on crates.io. Crates.io normally
  633. # contains a previous version of these crates, and we end up with two versions
  634. # of `solana-program` and `solana-zk-token-sdk` and all of their dependencies in
  635. # our build tree.
  636. #
  637. # If you are developing downstream using non-crates-io solana-program (local or
  638. # forked repo, or from github rev, eg), duplicate the following patch statements
  639. # in your Cargo.toml. If you still hit duplicate-type errors with the patch
  640. # statements in place, run `cargo update -p solana-program` and/or `cargo update
  641. # -p solana-zk-token-sdk` to remove extraneous versions from your Cargo.lock
  642. # file.
  643. #
  644. # There is a similar override in `programs/sbf/Cargo.toml`. Please keep both
  645. # comments and the overrides in sync.
  646. solana-curve25519 = { path = "curves/curve25519" }
  647. solana-zk-sdk = { path = "zk-sdk" }