/ Cargo.toml
Cargo.toml
1 [package] 2 name = "alphaos" 3 version = "0.1.0" 4 authors = [ "ADnet Contributors <dev@adnet.io>" ] 5 description = "ALPHA chain node software - decentralized operating system for ZK applications" 6 homepage = "https://adnet.io" 7 repository = "https://github.com/BlockBlox-MD/alphaos" 8 keywords = [ 9 "adnet", 10 "alpha", 11 "cryptography", 12 "blockchain", 13 "zero-knowledge" 14 ] 15 categories = [ "cryptography", "cryptography::cryptocurrencies", "os" ] 16 license = "Apache-2.0" 17 edition = "2024" 18 rust-version = "1.88.0" # Attention - Change the MSRV in rust-toolchain and in .circleci/config.yml as well 19 20 [workspace] 21 members = [ 22 "account", 23 "cli", 24 "display", 25 "node", 26 "node/bft", 27 "node/bft/events", 28 "node/bft/ledger-service", 29 "node/bft/storage-service", 30 "node/cdn", 31 "node/consensus", 32 "node/metrics", 33 "node/network", 34 "node/rest", 35 "node/router", 36 "node/router/messages", 37 "node/sync", 38 "node/sync/communication-service", 39 "node/sync/locators", 40 "node/tcp", 41 "utilities", 42 ] 43 44 [workspace.dependencies.alpha-std] 45 package = "adnet-core-std" 46 git = "https://code.ac-dc.network/AC-DC-Network/adnet-core.git" 47 rev = "4532178" 48 default-features = false 49 50 [workspace.dependencies.alphavm] 51 git = "https://code.ac-dc.network/AC-DC-Network/alphavm.git" 52 rev = "b979140" 53 default-features = false 54 55 [workspace.dependencies.anyhow] 56 version = "1.0" 57 58 [workspace.dependencies.async-trait] 59 version = "0.1" 60 61 [workspace.dependencies.axum] 62 version = "0.8" 63 64 [workspace.dependencies.axum-extra] 65 version = "0.10" 66 67 [workspace.dependencies.base64] 68 version = "0.22" 69 70 [workspace.dependencies.bincode] 71 version = "1" 72 73 [workspace.dependencies.built] 74 version = "0.8" 75 features = ["git2"] 76 77 [workspace.dependencies.bytes] 78 version = "1" 79 80 [workspace.dependencies.clap] 81 version = "4.5" 82 default-features = false 83 features = [ "std" ] 84 85 [workspace.dependencies.colored] 86 version = "3" 87 88 [workspace.dependencies.crossterm] 89 version = "0.29" 90 91 [workspace.dependencies.futures] 92 version = "0.3" 93 94 [workspace.dependencies.futures-util] 95 version = "0.3" 96 97 [workspace.dependencies.locktick] 98 version = "0.4" 99 100 [workspace.dependencies.lru] 101 version = "0.16" 102 103 [workspace.dependencies.num_cpus] 104 version = "1" 105 106 [workspace.dependencies.once_cell] 107 version = "1" 108 109 [workspace.dependencies.proptest] 110 version = "=1.6.0" # Remove this once we upgrade to rand 0.9 111 112 [workspace.dependencies.rayon] 113 version = "1" 114 115 [workspace.dependencies.thiserror] 116 version = "2" 117 118 [workspace.dependencies.time] 119 version = "0.3" 120 121 [workspace.dependencies.tokio] 122 version = "1.48" 123 124 [workspace.dependencies.tokio-util] 125 version = "0.7" 126 127 [workspace.dependencies.http] 128 version = "1" 129 130 [workspace.dependencies.itertools] 131 version = "0.14" 132 133 [workspace.dependencies.indexmap] 134 version = "2" 135 default-features = false 136 137 [workspace.dependencies.serde] 138 version = "1" 139 default-features = false 140 141 [workspace.dependencies.serde_json] 142 version = "1" 143 144 [workspace.dependencies.parking_lot] 145 version = "0.12" 146 147 [workspace.dependencies.rand] 148 version = "0.8" 149 default-features = false 150 151 [workspace.dependencies.rand_chacha] 152 version = "0.3" 153 default-features = false 154 155 [workspace.dependencies.rand_distr] 156 version = "0.4" 157 158 [workspace.dependencies.tracing] 159 version = "0.1" 160 default-features = false 161 162 [workspace.dependencies.tracing-test] 163 version = "0.2" 164 165 [workspace.dependencies.tracing-subscriber] 166 # TODO remove this once colored logs work again in a newer version 167 # See: https://github.com/tokio-rs/tracing/issues/3378 168 version = "=0.3.19" 169 170 [workspace.dependencies.test-strategy] 171 version = "0.4" 172 173 [workspace.dependencies.test-log] 174 version = "0.2" 175 176 [workspace.dependencies.alphaos-account] 177 path = "account" 178 version = "=0.1.0" 179 180 [workspace.dependencies.alphaos-cli] 181 path = "cli" 182 version = "=0.1.0" 183 184 [workspace.dependencies.alphaos-display] 185 path = "display" 186 version = "=0.1.0" 187 188 [workspace.dependencies.alphaos-node] 189 path = "node" 190 version = "=0.1.0" 191 192 [workspace.dependencies.alphaos-node-bft] 193 path = "node/bft" 194 version = "=0.1.0" 195 196 [workspace.dependencies.alphaos-node-bft-events] 197 path = "node/bft/events" 198 version = "=0.1.0" 199 200 [workspace.dependencies.alphaos-node-bft-storage-service] 201 path = "node/bft/storage-service" 202 version = "=0.1.0" 203 204 [workspace.dependencies.alphaos-node-bft-ledger-service] 205 path = "node/bft/ledger-service" 206 version = "=0.1.0" 207 default-features = false 208 209 [workspace.dependencies.alphaos-node-consensus] 210 path = "node/consensus" 211 version = "=0.1.0" 212 213 [workspace.dependencies.alphaos-node-cdn] 214 path = "node/cdn" 215 version = "=0.1.0" 216 217 [workspace.dependencies.alphaos-node-metrics] 218 path = "node/metrics" 219 version = "=0.1.0" 220 221 [workspace.dependencies.alphaos-node-network] 222 path = "node/network" 223 version = "=0.1.0" 224 225 [workspace.dependencies.alphaos-node-router] 226 path = "node/router" 227 version = "=0.1.0" 228 229 [workspace.dependencies.alphaos-node-router-messages] 230 path = "node/router/messages" 231 version = "=0.1.0" 232 233 [workspace.dependencies.alphaos-node-rest] 234 path = "node/rest" 235 version = "=0.1.0" 236 237 [workspace.dependencies.alphaos-node-sync] 238 path = "node/sync" 239 version = "=0.1.0" 240 241 [workspace.dependencies.alphaos-node-sync-communication-service] 242 path = "node/sync/communication-service" 243 version = "=0.1.0" 244 245 [workspace.dependencies.alphaos-node-sync-locators] 246 path = "node/sync/locators" 247 version = "=0.1.0" 248 249 [workspace.dependencies.alphaos-node-tcp] 250 path = "node/tcp" 251 version = "=0.1.0" 252 253 [workspace.dependencies.alphaos-utilities] 254 path = "utilities" 255 version = "=0.1.0" 256 257 [[bin]] 258 name = "alphaos" 259 path = "snarkos/main.rs" 260 261 [features] 262 default = [ "alphaos-cli/metrics", "alphaos-node-metrics", "alphaos-node/metrics", "alphaos-node-cdn/metrics" ] 263 history = [ "alphaos-node/history" ] 264 telemetry = [ "alphaos-node/telemetry" ] 265 cuda = [ 266 "alphaos-account/cuda", 267 "alphaos-cli/cuda", 268 "alphaos-node/cuda", 269 "alphaos-node-bft/cuda", 270 "alphaos-node-cdn/cuda", 271 "alphaos-node-consensus/cuda", 272 "alphaos-node-rest/cuda", 273 "alphaos-node-router/cuda", 274 "alphaos-node-sync/cuda" 275 ] 276 locktick = [ 277 "dep:locktick", 278 "alphaos-node/locktick", 279 "alphaos-node-bft/locktick", 280 "alphaos-node-consensus/locktick", 281 "alphaos-node-metrics/locktick", 282 "alphaos-node-rest/locktick", 283 "alphaos-node-router/locktick", 284 "alphaos-node-sync/locktick", 285 "alphaos-node-tcp/locktick", 286 "alphavm/locktick" 287 ] 288 serial = [ 289 "alphaos-cli/serial", 290 "alphaos-node/serial", 291 "alphaos-node-bft/serial", 292 "alphaos-node-consensus/serial", 293 "alphaos-node-metrics/serial", 294 "alphaos-node-rest/serial", 295 "alphaos-node-router/serial", 296 "alphaos-node-sync/serial", 297 "alphavm/serial" 298 ] 299 test_targets = [ "alphaos-cli/test_targets" ] 300 test_consensus_heights = [ "alphaos-cli/test_consensus_heights" ] 301 test_network = [ "alphaos-cli/test_network" ] 302 tokio_console = [ "alphaos-cli/tokio_console" ] 303 304 [dependencies.clap] 305 workspace = true 306 features = [ "derive" ] 307 308 [dependencies.locktick] 309 version = "0.4" 310 optional = true 311 312 [dependencies.alphaos-account] 313 workspace = true 314 315 [dependencies.alphaos-cli] 316 workspace = true 317 318 [dependencies.alphaos-node] 319 workspace = true 320 321 [dependencies.alphaos-node-bft] 322 workspace = true 323 324 [dependencies.alphaos-node-cdn] 325 workspace = true 326 327 [dependencies.alphaos-node-consensus] 328 workspace = true 329 330 [dependencies.alphaos-node-metrics] 331 workspace = true 332 optional = true 333 334 [dependencies.alphaos-node-router] 335 workspace = true 336 337 [dependencies.alphaos-node-rest] 338 workspace = true 339 340 [dependencies.alphaos-node-sync] 341 workspace = true 342 343 [dependencies.alphaos-node-tcp] 344 workspace = true 345 346 [dependencies.alphavm] 347 workspace = true 348 349 [target.'cfg(all(target_os = "linux", target_arch = "x86_64"))'.dependencies] 350 tikv-jemallocator = "0.6" 351 352 [dependencies.tracing] 353 workspace = true 354 355 [dev-dependencies.rusty-hook] 356 version = "0.11.2" 357 358 [build-dependencies.built] 359 version = "0.8" 360 features = [ "git2" ] 361 362 [build-dependencies.toml] 363 version = "0.9" 364 365 [build-dependencies.walkdir] 366 version = "2" 367 368 [profile.release] 369 opt-level = 3 370 lto = "thin" 371 incremental = true 372 # uncomment the 2 lines below when building with the locktick feature 373 # debug = "line-tables-only" 374 # strip = "none" 375 376 [profile.bench] 377 opt-level = 3 378 debug = false 379 rpath = false 380 lto = "thin" 381 incremental = true 382 debug-assertions = false 383 384 [profile.dev] 385 opt-level = 2 386 lto = "off" 387 incremental = true 388 389 [profile.test] 390 opt-level = 2 391 lto = "thin" 392 incremental = true 393 debug = true 394 debug-assertions = true 395 396 [package.metadata.cargo-machete] 397 ignored = [ 398 "alphaos-account", # Needed for cuda feature 399 "alphaos-node", # Needed for metrics feature 400 "alphaos-node-bft", # Needed for cuda and locktick features 401 "alphaos-node-cdn", # Needed for cuda and locktick features 402 "alphaos-node-consensus", # Needed for cuda and locktick features 403 "alphaos-node-tcp", # Needed for locktick feature 404 "alphaos-node-rest", # Needed for cuda and locktick features 405 "alphaos-node-sync", # Needed for cuda and locktick features 406 "alphaos-node-router", # Needed for cuda and locktick features 407 "alphaos-node-metrics", # Needed for locktick feature 408 ]