Cargo.toml 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. [package]
  2. name = "solana-core"
  3. documentation = "https://docs.rs/solana-core"
  4. version = { workspace = true }
  5. authors = { workspace = true }
  6. description = { workspace = true }
  7. repository = { workspace = true }
  8. homepage = { workspace = true }
  9. license = { workspace = true }
  10. edition = { workspace = true }
  11. [package.metadata.docs.rs]
  12. targets = ["x86_64-unknown-linux-gnu"]
  13. [features]
  14. agave-unstable-api = []
  15. dev-context-only-utils = [
  16. "solana-perf/dev-context-only-utils",
  17. "solana-runtime/dev-context-only-utils",
  18. "solana-streamer/dev-context-only-utils",
  19. ]
  20. frozen-abi = [
  21. "dep:solana-frozen-abi",
  22. "dep:solana-frozen-abi-macro",
  23. "solana-accounts-db/frozen-abi",
  24. "solana-bloom/frozen-abi",
  25. "solana-compute-budget/frozen-abi",
  26. "solana-cost-model/frozen-abi",
  27. "solana-frozen-abi/frozen-abi",
  28. "solana-gossip/frozen-abi",
  29. "solana-ledger/frozen-abi",
  30. "solana-packet/frozen-abi",
  31. "solana-perf/frozen-abi",
  32. "solana-program-runtime/frozen-abi",
  33. "solana-runtime/frozen-abi",
  34. "solana-short-vec/frozen-abi",
  35. "solana-signature/frozen-abi",
  36. "solana-svm/frozen-abi",
  37. "solana-vote/frozen-abi",
  38. "solana-vote-program/frozen-abi",
  39. ]
  40. [dependencies]
  41. agave-banking-stage-ingress-types = { workspace = true }
  42. agave-feature-set = { workspace = true }
  43. agave-scheduler-bindings = { workspace = true }
  44. agave-scheduling-utils = { workspace = true }
  45. agave-snapshots = { workspace = true }
  46. agave-transaction-view = { workspace = true }
  47. agave-verified-packet-receiver = { workspace = true }
  48. agave-votor = { workspace = true, features = ["agave-unstable-api"] }
  49. ahash = { workspace = true }
  50. anyhow = { workspace = true }
  51. arc-swap = { workspace = true }
  52. arrayvec = { workspace = true }
  53. assert_matches = { workspace = true }
  54. async-trait = { workspace = true }
  55. base64 = { workspace = true }
  56. bincode = { workspace = true }
  57. bs58 = { workspace = true }
  58. bytemuck = { workspace = true }
  59. bytes = { workspace = true }
  60. chrono = { workspace = true, features = ["default", "serde"] }
  61. crossbeam-channel = { workspace = true }
  62. dashmap = { workspace = true, features = ["rayon", "raw-api"] }
  63. derive_more = { workspace = true }
  64. futures = { workspace = true }
  65. histogram = { workspace = true }
  66. itertools = { workspace = true }
  67. libc = { workspace = true }
  68. log = { workspace = true }
  69. lru = { workspace = true }
  70. min-max-heap = { workspace = true }
  71. num_cpus = { workspace = true }
  72. num_enum = { workspace = true }
  73. prio-graph = { workspace = true }
  74. qualifier_attr = { workspace = true }
  75. quinn = { workspace = true }
  76. rand = { workspace = true }
  77. rand_chacha = { workspace = true }
  78. rayon = { workspace = true }
  79. rolling-file = { workspace = true }
  80. rustls = { workspace = true }
  81. serde = { workspace = true }
  82. serde_bytes = { workspace = true }
  83. slab = { workspace = true }
  84. solana-account = { workspace = true }
  85. solana-accounts-db = { workspace = true }
  86. solana-address-lookup-table-interface = { workspace = true }
  87. solana-bincode = { workspace = true }
  88. solana-bloom = { workspace = true }
  89. solana-builtins-default-costs = { workspace = true }
  90. solana-client = { workspace = true }
  91. solana-clock = { workspace = true }
  92. solana-cluster-type = { workspace = true }
  93. solana-compute-budget = { workspace = true }
  94. solana-compute-budget-instruction = { workspace = true }
  95. solana-compute-budget-interface = { workspace = true }
  96. solana-connection-cache = { workspace = true }
  97. solana-cost-model = { workspace = true }
  98. solana-entry = { workspace = true }
  99. solana-epoch-schedule = { workspace = true }
  100. solana-fee = { workspace = true }
  101. solana-fee-calculator = { workspace = true }
  102. solana-fee-structure = { workspace = true }
  103. solana-frozen-abi = { workspace = true, optional = true, features = [
  104. "frozen-abi",
  105. ] }
  106. solana-frozen-abi-macro = { workspace = true, optional = true, features = [
  107. "frozen-abi",
  108. ] }
  109. solana-genesis-config = { workspace = true }
  110. solana-genesis-utils = { workspace = true }
  111. solana-geyser-plugin-manager = { workspace = true }
  112. solana-gossip = { workspace = true, features = ["agave-unstable-api"] }
  113. solana-hard-forks = { workspace = true }
  114. solana-hash = { workspace = true }
  115. solana-instruction = { workspace = true }
  116. solana-keypair = { workspace = true }
  117. solana-ledger = { workspace = true, features = ["agave-unstable-api"] }
  118. solana-loader-v3-interface = { workspace = true }
  119. solana-measure = { workspace = true }
  120. solana-message = { workspace = true }
  121. solana-metrics = { workspace = true }
  122. solana-native-token = { workspace = true }
  123. solana-net-utils = { workspace = true, features = ["agave-unstable-api"] }
  124. solana-nonce = { workspace = true }
  125. solana-nonce-account = { workspace = true }
  126. solana-packet = { workspace = true }
  127. solana-perf = { workspace = true }
  128. solana-poh = { workspace = true }
  129. solana-poh-config = { workspace = true }
  130. solana-pubkey = { workspace = true }
  131. solana-quic-client = { workspace = true }
  132. solana-quic-definitions = { workspace = true }
  133. solana-rayon-threadlimit = { workspace = true }
  134. solana-rent = { workspace = true }
  135. solana-rpc = { workspace = true }
  136. solana-rpc-client-api = { workspace = true }
  137. solana-runtime = { workspace = true }
  138. solana-runtime-transaction = { workspace = true }
  139. solana-sanitize = { workspace = true }
  140. solana-sdk-ids = { workspace = true }
  141. solana-send-transaction-service = { workspace = true }
  142. solana-sha256-hasher = { workspace = true }
  143. solana-short-vec = { workspace = true }
  144. solana-shred-version = { workspace = true }
  145. solana-signature = { workspace = true }
  146. solana-signer = { workspace = true }
  147. solana-slot-hashes = { workspace = true }
  148. solana-slot-history = { workspace = true }
  149. solana-streamer = { workspace = true }
  150. solana-svm = { workspace = true }
  151. solana-svm-timings = { workspace = true }
  152. solana-svm-transaction = { workspace = true }
  153. solana-system-interface = { workspace = true }
  154. solana-system-transaction = { workspace = true }
  155. solana-sysvar = { workspace = true }
  156. solana-time-utils = { workspace = true }
  157. solana-tls-utils = { workspace = true }
  158. solana-tpu-client = { workspace = true }
  159. solana-tpu-client-next = { workspace = true }
  160. solana-transaction = { workspace = true }
  161. solana-transaction-error = { workspace = true }
  162. solana-transaction-status = { workspace = true }
  163. solana-turbine = { workspace = true, features = ["agave-unstable-api"] }
  164. solana-unified-scheduler-logic = { workspace = true }
  165. solana-unified-scheduler-pool = { workspace = true }
  166. solana-validator-exit = { workspace = true }
  167. solana-version = { workspace = true }
  168. solana-vote = { workspace = true }
  169. solana-vote-program = { workspace = true }
  170. solana-wen-restart = { workspace = true }
  171. static_assertions = { workspace = true }
  172. strum = { workspace = true, features = ["derive"] }
  173. strum_macros = { workspace = true }
  174. sys-info = { workspace = true }
  175. tempfile = { workspace = true }
  176. thiserror = { workspace = true }
  177. tokio = { workspace = true, features = ["full"] }
  178. tokio-util = { workspace = true }
  179. trees = { workspace = true }
  180. [target.'cfg(not(any(target_env = "msvc", target_os = "freebsd")))'.dependencies]
  181. jemallocator = { workspace = true }
  182. [target."cfg(unix)".dependencies]
  183. rts-alloc = { workspace = true }
  184. shaq = { workspace = true }
  185. sysctl = { workspace = true }
  186. [dev-dependencies]
  187. agave-logger = { workspace = true }
  188. agave-reserved-account-keys = { workspace = true }
  189. agave-scheduler-bindings = { workspace = true, features = ["dev-context-only-utils"] }
  190. bencher = { workspace = true }
  191. criterion = { workspace = true }
  192. fs_extra = { workspace = true }
  193. serde_json = { workspace = true }
  194. serial_test = { workspace = true }
  195. solana-account = { workspace = true, features = ["dev-context-only-utils"] }
  196. solana-bpf-loader-program = { workspace = true }
  197. solana-client = { workspace = true, features = ["dev-context-only-utils"] }
  198. solana-compute-budget-interface = { workspace = true }
  199. solana-compute-budget-program = { workspace = true }
  200. # See order-crates-for-publishing.py for using this unusual `path = "."`
  201. solana-core = { path = ".", features = ["agave-unstable-api", "dev-context-only-utils"] }
  202. solana-cost-model = { workspace = true, features = ["dev-context-only-utils"] }
  203. solana-keypair = { workspace = true }
  204. solana-ledger = { workspace = true, features = ["dev-context-only-utils"] }
  205. solana-net-utils = { workspace = true, features = ["dev-context-only-utils"] }
  206. solana-poh = { workspace = true, features = ["dev-context-only-utils"] }
  207. solana-program-binaries = { workspace = true }
  208. solana-program-runtime = { workspace = true, features = ["metrics"] }
  209. solana-rpc = { workspace = true, features = ["dev-context-only-utils"] }
  210. solana-system-program = { workspace = true }
  211. solana-unified-scheduler-pool = { workspace = true, features = [
  212. "dev-context-only-utils",
  213. ] }
  214. solana-vote = { workspace = true, features = ["dev-context-only-utils"] }
  215. spl-memo-interface = { workspace = true }
  216. static_assertions = { workspace = true }
  217. test-case = { workspace = true }
  218. [[bench]]
  219. name = "banking_stage"
  220. [[bench]]
  221. name = "gen_keys"
  222. [[bench]]
  223. name = "sigverify_stage"
  224. harness = false
  225. [[bench]]
  226. name = "shredder"
  227. harness = false
  228. [[bench]]
  229. name = "receive_and_buffer"
  230. harness = false
  231. [[bench]]
  232. name = "scheduler"
  233. harness = false
  234. [lints]
  235. workspace = true