Cargo.toml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. [package]
  2. name = "darkfi"
  3. version = "0.2.0"
  4. homepage = "https://dark.fi"
  5. description = "Anonymous. Uncensored. Sovereign."
  6. authors = ["darkfi <dev@dark.fi>"]
  7. repository = "https://github.com/darkrenaissance/darkfi"
  8. license = "AGPL-3.0-only"
  9. edition = "2021"
  10. [lib]
  11. name = "darkfi"
  12. [dependencies.halo2_gadgets]
  13. git = "https://github.com/parazyd/halo2_gadgets.git"
  14. rev = "b45c527276bb2309f3b256eb5f45ccdcc5bd8c0f"
  15. features = ["dev-graph", "test-dependencies"]
  16. [dependencies]
  17. # Crypto
  18. halo2 = {version = "=0.1.0-beta.1", features = ["dev-graph", "gadget-traces", "sanity-checks"]}
  19. incrementalmerkletree = "0.2.0"
  20. pasta_curves = "0.2.1"
  21. rand = "0.8.4"
  22. num-bigint = {version = "0.4.3", features = ["rand", "serde"]}
  23. blake2b_simd = "1.0.0"
  24. group = "0.11.0"
  25. crypto_api_chachapoly = "0.5.0"
  26. arrayvec = "0.7.2"
  27. sha2 = "0.9.8"
  28. # Encoding and parsing
  29. bincode = "1.3.3"
  30. bs58 = "0.4.0"
  31. bytes = "1.1.0"
  32. hex = "0.4.3"
  33. toml = "0.5.8"
  34. url = "2.2.2"
  35. serde_json = "1.0.72"
  36. serde = {version = "1.0.130", features = ["derive"]}
  37. # Async
  38. async-std = "1.10.0"
  39. async-trait = "0.1.51"
  40. async-channel = "1.6.1"
  41. native-tls = "0.2.8"
  42. async-native-tls = "0.4.0"
  43. async-executor = "1.4.1"
  44. futures = "0.3.17"
  45. smol = "1.2.5"
  46. # Utilities
  47. anyhow = "1.0.49"
  48. clap = { version = "3.0.0", features = ["derive"] }
  49. dirs = "4.0.0"
  50. failure = "0.1.8"
  51. lazy_static = "1.4.0"
  52. log = "0.4.14"
  53. num_cpus = "1.13.0"
  54. signal-hook = "0.3.10"
  55. subtle = "2.4.1"
  56. thiserror = "1.0.30"
  57. # Used for Websockets client implementation.
  58. async-tungstenite = "0.16.0"
  59. tungstenite = "0.16.0"
  60. #tui dependencies
  61. crossbeam-channel = { version = "0.5.1", optional = true}
  62. libc = { version = "0.2.112", optional = true}
  63. termion = { version = "1.5.6", optional = true}
  64. # node dependencies
  65. ## Used for wallet management.
  66. sqlx = {version = "0.5.10", features = ["runtime-async-std-native-tls", "sqlite"], optional = true}
  67. libsqlite3-sys = {version = "0.23.1", features = ["bundled-sqlcipher"], optional = true }
  68. ## Used for gatewayd network transport.
  69. zeromq = {version = "0.3.1", default-features = false, features = ["async-std-runtime", "all-transport"], optional = true }
  70. signal-hook-async-std = {version = "0.2.1", optional = true}
  71. # blockchain dependencies
  72. [dependencies.rocksdb]
  73. # TODO: Revert to upstream after bd966750ec861d687913d59a9939a1408ac53131 is merged.
  74. git = "https://github.com/parazyd/rust-rocksdb"
  75. rev = "bd966750ec861d687913d59a9939a1408ac53131"
  76. default-features = false
  77. features = ["zstd"]
  78. optional = true
  79. [features]
  80. blockchain = ["rocksdb"]
  81. node = ["sqlx", "libsqlite3-sys", "zeromq", "signal-hook-async-std"]
  82. tui = ["termion", "libc", "crossbeam-channel"]
  83. [[bin]]
  84. name = "tui_ex"
  85. required-features = ["tui"]
  86. [[bin]]
  87. name = "tx"
  88. required-features = ["node"]
  89. [[example]]
  90. name = "net"
  91. path = "example/net.rs"