Browse Source

Update crate dependencies.

parazyd 3 years ago
parent
commit
1d7866f688
46 changed files with 425 additions and 394 deletions
  1. 220 189
      Cargo.lock
  2. 14 16
      Cargo.toml
  3. 8 8
      bin/cashierd/Cargo.toml
  4. 4 4
      bin/dao/dao-cli/Cargo.toml
  5. 3 3
      bin/dao/daod/Cargo.toml
  6. 5 6
      bin/darkfid/Cargo.toml
  7. 2 2
      bin/darkotc/Cargo.toml
  8. 3 3
      bin/darkwiki/darkwiki-cli/Cargo.toml
  9. 6 6
      bin/darkwiki/darkwikid/Cargo.toml
  10. 4 4
      bin/dnetview/Cargo.toml
  11. 2 3
      bin/drk/Cargo.toml
  12. 5 6
      bin/faucetd/Cargo.toml
  13. 2 2
      bin/fud/fu/Cargo.toml
  14. 4 4
      bin/fud/fud/Cargo.toml
  15. 5 5
      bin/ircd/Cargo.toml
  16. 5 5
      bin/ircd2/Cargo.toml
  17. 3 3
      bin/lilith/Cargo.toml
  18. 4 4
      bin/tau/tau-cli/Cargo.toml
  19. 4 4
      bin/tau/taud/Cargo.toml
  20. 3 3
      bin/vanityaddr/Cargo.toml
  21. 4 12
      bin/vanityaddr/src/main.rs
  22. 1 1
      bin/zkas/Cargo.toml
  23. 4 4
      example/dao/Cargo.toml
  24. 4 4
      example/dao2/Cargo.toml
  25. 3 3
      example/dchat/Cargo.toml
  26. 4 4
      example/p2pdebug/Cargo.toml
  27. 4 4
      script/research/crypsinous_playground/Cargo.toml
  28. 6 6
      script/research/dhtd/Cargo.toml
  29. 1 1
      script/research/merkletree_null_benchmark/Cargo.toml
  30. 2 2
      script/research/nodes-tool/Cargo.toml
  31. 5 5
      script/research/raft-diag/Cargo.toml
  32. 1 1
      script/research/rpc_client_notifications/Cargo.toml
  33. 1 1
      script/research/state_usage_analyser/Cargo.toml
  34. 1 1
      script/research/x3dh/Cargo.toml
  35. 3 3
      src/consensus/state.rs
  36. 10 1
      src/error.rs
  37. 6 4
      src/rpc/websockets.rs
  38. 1 1
      src/sdk/Cargo.toml
  39. 1 1
      src/serial/Cargo.toml
  40. 1 1
      src/serial/derive-internal/Cargo.toml
  41. 1 1
      src/serial/derive/Cargo.toml
  42. 13 9
      src/util/time.rs
  43. 7 9
      tests/arithmetic_proof.rs
  44. 17 16
      tests/burn_proof.rs
  45. 16 15
      tests/mint_proof.rs
  46. 2 4
      tests/zkvm_opcodes.rs

File diff suppressed because it is too large
+ 220 - 189
Cargo.lock


+ 14 - 16
Cargo.toml

@@ -58,7 +58,7 @@ thiserror = "1.0.37"
 
 # async-runtime
 async-std = {version = "1.12.0", features = ["attributes"], optional = true}
-async-trait = {version = "0.1.58", optional = true}
+async-trait = {version = "0.1.59", optional = true}
 futures = {version = "0.3.25", optional = true}
 smol = {version = "1.2.5", optional = true}
 
@@ -69,27 +69,27 @@ ipnet = {version = "2.5.1", optional = true}
 socket2 = {version = "0.4.7", optional = true}
 
 # TLS cert utilities
-ed25519-compact = {version = "1.0.16", features = ["pem"], optional = true}
+ed25519-compact = {version = "2.0.2", features = ["pem"], optional = true}
 rcgen = {version = "0.10.0", features = ["pem"], optional = true}
 rustls-pemfile = {version = "1.0.1", optional = true}
 
 # Encoding
 bs58 = {version = "0.4.0", optional = true}
 hex = {version = "0.4.3", optional = true}
-serde_json = {version = "1.0.87", optional = true}
-serde = {version = "1.0.147", features = ["derive"], optional = true}
+serde_json = {version = "1.0.89", optional = true}
+serde = {version = "1.0.148", features = ["derive"], optional = true}
 structopt = {version= "0.3.26", optional = true}
 structopt-toml = {version= "0.5.1", optional = true}
 toml = {version = "0.5.9", optional = true}
 
 # Utilities
 # TODO: check chrono usage and impl our own
-chrono = {version = "0.4.22", optional = true}
+chrono = {version = "0.4.23", optional = true}
 darkfi-serial = {path = "src/serial", optional = true}
 darkfi-derive = {path = "src/serial/derive", optional = true}
 darkfi-derive-internal = {path = "src/serial/derive-internal", optional = true}
 fxhash = {version = "0.2.1", optional = true}
-indexmap = {version = "1.9.1", optional = true}
+indexmap = {version = "1.9.2", optional = true}
 itertools = {version = "0.10.5", optional = true}
 lazy-init = {version = "0.5.1", optional = true}
 lazy_static = {version = "1.4.0", optional = true}
@@ -99,13 +99,12 @@ url = {version = "2.3.1", features = ["serde"], optional = true}
 
 # Misc
 # TODO: Implement something simple and kill these deps
-indicatif = {version = "0.17.1", optional = true}
+indicatif = {version = "0.17.2", optional = true}
 simplelog = {version = "0.12.0", optional = true}
-termion = {version = "1.5.6", optional = true}
+termion = {version = "2.0.1", optional = true}
 
 # Websockets
 async-tungstenite = {version = "0.18.0", optional = true}
-tungstenite = {version = "0.17.3", optional = true}
 
 # socks5
 fast-socks5 = {version = "0.4.3", optional = true}
@@ -113,7 +112,7 @@ fast-socks5 = {version = "0.4.3", optional = true}
 # Crypto
 rand = {version = "0.8.5", optional = true}
 blake2b_simd = {version = "1.0.0", optional = true}
-blake3 = {version = "1.3.1", optional = true}
+blake3 = {version = "1.3.3", optional = true}
 chacha20poly1305 = {version = "0.10.1", optional = true}
 crypto_api_chachapoly = {version = "0.5.0", optional = true}
 halo2_proofs = {version = "0.2.0", optional = true}
@@ -126,9 +125,9 @@ sha2 = {version = "0.10.6", optional = true}
 
 # Smart contract runtime
 darkfi-sdk = {path = "src/sdk", optional = true}
-wasmer = {version = "3.0.0-rc.2", optional = true}
-wasmer-compiler-singlepass = {version = "3.0.0-rc.2", optional = true}
-wasmer-middlewares = {version = "3.0.0-rc.2", optional = true}
+wasmer = {version = "3.0.2", optional = true}
+wasmer-compiler-singlepass = {version = "3.0.2", optional = true}
+wasmer-middlewares = {version = "3.0.2", optional = true}
 
 # Wallet management
 libsqlite3-sys = {version = "0.24.2", features = ["bundled-sqlcipher"],  optional = true }
@@ -143,11 +142,11 @@ dashu = { version = "0.2.0", git = "https://github.com/ertosns/dashu", optional=
 rcell = { version = "1.1.3", optional=true }
 
 [dev-dependencies]
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 halo2_proofs = {version = "0.2.0", features = ["dev-graph", "gadget-traces", "sanity-checks"]}
 halo2_gadgets = {version = "0.2.0", features = ["dev-graph", "test-dependencies"]}
 plotters = "0.3.4"
-env_logger = "0.9.3"
+env_logger = "0.10.0"
 easy-parallel = "3.2.0"
 
 
@@ -330,7 +329,6 @@ wasm-runtime = [
 
 websockets = [
     "async-tungstenite",
-    "tungstenite",
 ]
 
 zkas = [

+ 8 - 8
bin/cashierd/Cargo.toml

@@ -17,16 +17,16 @@ features = ["wallet", "node", "rpc"]
 smol = "1.2.5"
 futures = "0.3.25"
 async-std = "1.12.0"
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 async-channel = "1.7.1"
-async-executor = "1.4.1"
+async-executor = "1.5.0"
 easy-parallel = "3.2.0"
 
 # Crypto
 rand = "0.8.5"
 
 # Misc
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 log = "0.4.17"
 num_cpus = "1.14.0"
 simplelog = "0.12.0"
@@ -35,8 +35,8 @@ url = "2.3.1"
 fxhash = "0.2.1"
 
 # Encoding and parsing
-serde = {version = "1.0.147", features = ["derive"]}
-serde_json = "1.0.87"
+serde = {version = "1.0.148", features = ["derive"]}
+serde_json = "1.0.89"
 
 # Bitcoin bridge dependencies
 bdk = {version = "0.24.0", optional = true}
@@ -54,11 +54,11 @@ num-bigint = {version = "0.4.3", features = ["rand", "serde"], optional = true}
 # Solana bridge dependencies
 native-tls = {version = "0.2.11", optional = true}
 async-native-tls = {version = "0.4.0", optional = true}
-solana-client = {version = "1.14.7", optional = true}
-solana-sdk = {version = "1.14.7", optional = true}
+solana-client = {version = "1.14.9", optional = true}
+solana-sdk = {version = "1.14.9", optional = true}
 spl-associated-token-account = {version = "1.1.1", features = ["no-entrypoint"], optional = true}
 spl-token = {version = "3.5.0", features = ["no-entrypoint"], optional = true}
-tungstenite = {version = "0.17.3", optional = true}
+tungstenite = {version = "0.18.0", optional = true}
 
 [features]
 btc = [

+ 4 - 4
bin/dao/dao-cli/Cargo.toml

@@ -17,12 +17,12 @@ features = ["rpc"]
 smol = "1.2.5"
 futures = "0.3.25"
 async-std = {version = "1.12.0", features = ["attributes"]}
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 async-channel = "1.7.1"
-async-executor = "1.4.1"
+async-executor = "1.5.0"
 
 # Misc
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 log = "0.4.17"
 num_cpus = "1.14.0"
 simplelog = "0.12.0"
@@ -30,4 +30,4 @@ url = "2.3.1"
 prettytable-rs = "0.9.0"
 
 # Encoding and parsing
-serde_json = "1.0.87"
+serde_json = "1.0.89"

+ 3 - 3
bin/dao/daod/Cargo.toml

@@ -17,9 +17,9 @@ darkfi-serial = {path = "../../../src/serial"}
 smol = "1.2.5"
 futures = "0.3.25"
 async-std = {version = "1.12.0", features = ["attributes"]}
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 async-channel = "1.7.1"
-async-executor = "1.4.1"
+async-executor = "1.5.0"
 easy-parallel = "3.2.0"
 
 # Misc
@@ -37,7 +37,7 @@ pasta_curves = "0.4.1"
 incrementalmerkletree = "0.3.0"
 
 # Encoding and parsing
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 bs58 = "0.4.0"
 fxhash = "0.2.1"
 

+ 5 - 6
bin/darkfid/Cargo.toml

@@ -10,10 +10,10 @@ edition = "2021"
 
 [dependencies]
 async-std = "1.12.0"
-async-trait = "0.1.58"
-blake3 = "1.3.1"
+async-trait = "0.1.59"
+blake3 = "1.3.3"
 bs58 = "0.4.0"
-chrono = "0.4.22"
+chrono = "0.4.23"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 darkfi = {path = "../../", features = ["blockchain", "wallet", "rpc", "net"]}
 darkfi-sdk = {path = "../../src/sdk"}
@@ -25,15 +25,14 @@ lazy-init = "0.5.1"
 log = "0.4.17"
 pasta_curves = "0.4.1"
 rand = "0.8.5"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 simplelog = "0.12.0"
 sled = "0.34.7"
 smol = "1.2.5"
-libsqlite3-sys = {version = "0.24.2", features = ["bundled-sqlcipher"]}
 sqlx = {version = "0.6.2", features = ["runtime-async-std-native-tls", "sqlite"]}
 url = "2.3.1"
 
 # Argument parsing
-serde = {version = "1.0.147", features = ["derive"]}
+serde = {version = "1.0.148", features = ["derive"]}
 structopt = "0.3.26"
 structopt-toml = "0.5.1"

+ 2 - 2
bin/darkotc/Cargo.toml

@@ -11,12 +11,12 @@ edition = "2021"
 [dependencies]
 async-std = {version = "1.12.0", features = ["attributes"]}
 bs58 = "0.4.0"
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 darkfi = {path = "../../", features = ["crypto", "rpc", "util", "tx"]}
 darkfi-sdk = {path = "../../src/sdk"}
 darkfi-serial = {path = "../../src/serial"}
 halo2_proofs = "0.2.0"
 halo2_gadgets = "0.2.0"
 rand = "0.8.5"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 url = "2.3.1"

+ 3 - 3
bin/darkwiki/darkwiki-cli/Cargo.toml

@@ -14,7 +14,7 @@ darkfi = {path = "../../../", features = ["rpc"]}
 # Async
 smol = "1.2.5"
 async-std = {version = "1.12.0", features = ["attributes"]}
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 async-channel = "1.7.1"
 futures = "0.3.25"
 
@@ -25,6 +25,6 @@ rand = "0.8.5"
 url = "2.3.1"
 
 # Encoding and parsing
-serde = {version = "1.0.147", features = ["derive"]}
-serde_json = "1.0.87"
+serde = {version = "1.0.148", features = ["derive"]}
+serde_json = "1.0.89"
 structopt = "0.3.26"

+ 6 - 6
bin/darkwiki/darkwikid/Cargo.toml

@@ -10,20 +10,20 @@ edition = "2021"
 
 [dependencies]
 async-std = "1.12.0"
-async-trait = "0.1.58"
-blake3 = "1.3.1"
+async-trait = "0.1.59"
+blake3 = "1.3.3"
 bs58 = "0.4.0"
 darkfi = {path = "../../../", features = ["raft", "rpc", "util"]}
 darkfi-serial = {path = "../../../src/serial"}
-dryoc = "0.3.14"
+dryoc = "0.4.2"
 easy-parallel = "3.2.0"
 futures = "0.3.25"
 fxhash = "0.2.1"
 lazy_static = "1.4.0"
 log = "0.4.17"
-serde = "1.0.147"
-serde_derive = "1.0.147"
-serde_json = "1.0.87"
+serde = "1.0.148"
+serde_derive = "1.0.148"
+serde_json = "1.0.89"
 signal-hook-async-std = "0.2.2"
 signal-hook = "0.3.14"
 simplelog = "0.12.0"

+ 4 - 4
bin/dnetview/Cargo.toml

@@ -14,7 +14,7 @@ features = ["rpc"]
 
 [dependencies]
 # Tui
-termion = "1.5.6"
+termion = "2.0.1"
 tui = {version = "0.19.0", features = ["termion"]}
 
 # Async
@@ -24,7 +24,7 @@ easy-parallel = "3.2.0"
 async-channel = "1.7.1"
 
 # Misc
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 rand = "0.8.5"
 simplelog = "0.12.0"
 log = "0.4.17"
@@ -34,6 +34,6 @@ fxhash = "0.2.1"
 thiserror = "1.0.37"
 
 # Encoding and parsing
-serde_json = "1.0.87"
-serde = {version = "1.0.147", features = ["derive"]}
+serde_json = "1.0.89"
+serde = {version = "1.0.148", features = ["derive"]}
 hex = "0.4.3"

+ 2 - 3
bin/drk/Cargo.toml

@@ -12,15 +12,14 @@ edition = "2021"
 anyhow = "1.0.66"
 async-std = {version = "1.12.0", features = ["attributes"]}
 bs58 = "0.4.0"
-clap = {version = "4.0.25", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 darkfi = {path = "../../", features = ["blockchain", "rpc", "util", "wallet"]}
 darkfi-sdk = {path = "../../src/sdk"}
 darkfi-serial = {path = "../../src/serial", features = ["derive", "crypto"]}
 darkfi-money-contract = {path = "../../src/contract/money", features = ["no-entrypoint", "client"]}
 prettytable-rs = "0.9.0"
 rand = "0.8.5"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 simplelog = "0.12.0"
-libsqlite3-sys = {version = "0.24.2", features = ["bundled-sqlcipher"]}
 sqlx = {version = "0.6.2", features = ["runtime-async-std-native-tls", "sqlite"]}
 url = "2.3.1"

+ 5 - 6
bin/faucetd/Cargo.toml

@@ -10,10 +10,10 @@ edition = "2021"
 
 [dependencies]
 async-std = "1.12.0"
-async-trait = "0.1.58"
-blake3 = "1.3.1"
+async-trait = "0.1.59"
+blake3 = "1.3.3"
 bs58 = "0.4.0"
-chrono = "0.4.22"
+chrono = "0.4.23"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 darkfi = {path = "../../", features = ["blockchain", "wallet", "rpc", "net", "zkas", "crypto"]}
 darkfi-serial = {path = "../../src/serial"}
@@ -24,15 +24,14 @@ hex = "0.4.3"
 lazy-init = "0.5.1"
 log = "0.4.17"
 rand = "0.8.5"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 simplelog = "0.12.0"
 sled = "0.34.7"
 smol = "1.2.5"
-libsqlite3-sys = {version = "0.24.2", features = ["bundled-sqlcipher"]}
 sqlx = {version = "0.6.2", features = ["runtime-async-std-native-tls", "sqlite"]}
 url = "2.3.1"
 
 # Argument parsing
-serde = {version = "1.0.147", features = ["derive"]}
+serde = {version = "1.0.148", features = ["derive"]}
 structopt = "0.3.26"
 structopt-toml = "0.5.1"

+ 2 - 2
bin/fud/fu/Cargo.toml

@@ -15,8 +15,8 @@ darkfi = {path = "../../../", features = ["util", "rpc"]}
 async-std = {version = "1.12.0", features = ["attributes"]}
 
 # Misc
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 log = "0.4.17"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 simplelog = "0.12.0"
 url = "2.3.1"

+ 4 - 4
bin/fud/fud/Cargo.toml

@@ -14,19 +14,19 @@ darkfi-serial = {path = "../../../src/serial"}
 
 # Async
 async-std = "1.12.0"
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 easy-parallel = "3.2.0"
 smol = "1.2.5"
 
 # Misc
-blake3 = "1.3.1"
+blake3 = "1.3.3"
 log = "0.4.17"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 simplelog = "0.12.0"
 url = "2.3.1"
 
 # Argument parsing
-serde = {version = "1.0.147", features = ["derive"]}
+serde = {version = "1.0.148", features = ["derive"]}
 structopt = "0.3.26"
 structopt-toml = "0.5.1"

+ 5 - 5
bin/ircd/Cargo.toml

@@ -18,7 +18,7 @@ futures = "0.3.25"
 futures-rustls = "0.22.2"
 rustls-pemfile = "1.0.1"
 async-std = "1.12.0"
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 easy-parallel = "3.2.0"
 async-recursion = "1.0.0"
 
@@ -27,18 +27,18 @@ crypto_box = "0.8.2"
 rand = "0.8.5"
 
 # Misc
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 log = "0.4.17"
 simplelog = "0.12.0"
 fxhash = "0.2.1"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 url = "2.3.1"
-chrono = "0.4.22"
+chrono = "0.4.23"
 ripemd = "0.1.3"
 
 # Encoding and parsing
-serde_json = "1.0.87"
-serde = {version = "1.0.147", features = ["derive"]}
+serde_json = "1.0.89"
+serde = {version = "1.0.148", features = ["derive"]}
 structopt = "0.3.26"
 structopt-toml = "0.5.1"
 bs58 = "0.4.0"

+ 5 - 5
bin/ircd2/Cargo.toml

@@ -18,7 +18,7 @@ futures = "0.3.25"
 futures-rustls = "0.22.2"
 rustls-pemfile = "1.0.1"
 async-std = "1.12.0"
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 easy-parallel = "3.2.0"
 
 # Crypto
@@ -26,18 +26,18 @@ crypto_box = "0.8.2"
 rand = "0.8.5"
 
 # Misc
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 log = "0.4.17"
 simplelog = "0.12.0"
 fxhash = "0.2.1"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 url = "2.3.1"
-chrono = "0.4.22"
+chrono = "0.4.23"
 ripemd = "0.1.3"
 
 # Encoding and parsing
-serde_json = "1.0.87"
-serde = {version = "1.0.147", features = ["derive"]}
+serde_json = "1.0.89"
+serde = {version = "1.0.148", features = ["derive"]}
 structopt = "0.3.26"
 structopt-toml = "0.5.1"
 bs58 = "0.4.0"

+ 3 - 3
bin/lilith/Cargo.toml

@@ -13,7 +13,7 @@ darkfi = {path = "../../", features = ["net", "rpc"]}
 
 # Async
 async-std = "1.12.0"
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 easy-parallel = "3.2.0"
 smol = "1.2.5"
@@ -21,12 +21,12 @@ smol = "1.2.5"
 # Misc
 fxhash = "0.2.1"
 log = "0.4.17"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 simplelog = "0.12.0"
 url = "2.3.1"
 
 # Argument parsing
-serde = {version = "1.0.147", features = ["derive"]}
+serde = {version = "1.0.148", features = ["derive"]}
 structopt = "0.3.26"
 structopt-toml = "0.5.1"
 toml = "0.5.9"

+ 4 - 4
bin/tau/tau-cli/Cargo.toml

@@ -10,15 +10,15 @@ repository = "https://github.com/darkrenaissance/darkfi"
 
 [dependencies]
 async-std = {version = "1.12.0", features = ["attributes"]}
-chrono = "0.4.22"
-clap = {version = "3.2.20", features = ["derive"]}
+chrono = "0.4.23"
+clap = {version = "4.0.28", features = ["derive"]}
 colored = "2.0.0"
 darkfi = { path = "../../../", features = ["rpc"]}
 fxhash = "0.2.1"
 log = "0.4.17"
 prettytable-rs = "0.9.0"
-serde = {version = "1.0.147", features = ["derive"]}
-serde_json = "1.0.87"
+serde = {version = "1.0.148", features = ["derive"]}
+serde_json = "1.0.89"
 simplelog = "0.12.0"
 term_grid = { git = "https://github.com/Dastan-glitch/rust-term-grid.git" }
 textwrap = "0.15.2"

+ 4 - 4
bin/tau/taud/Cargo.toml

@@ -15,7 +15,7 @@ darkfi-serial = { path = "../../../src/serial" }
 # Async
 smol = "1.2.5"
 async-std = {version = "1.12.0", features = ["attributes"]}
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 easy-parallel = "3.2.0"
 futures = "0.3.25"
 
@@ -23,15 +23,15 @@ futures = "0.3.25"
 log = "0.4.17"
 simplelog = "0.12.0"
 rand = "0.8.5"
-chrono = "0.4.22"
+chrono = "0.4.23"
 thiserror = "1.0.37"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 url = "2.3.1"
 fxhash = "0.2.1"
 
 # Encoding and parsing
-serde = {version = "1.0.147", features = ["derive"]}
-serde_json = "1.0.87"
+serde = {version = "1.0.148", features = ["derive"]}
+serde_json = "1.0.89"
 structopt = "0.3.26"
 structopt-toml = "0.5.1"
 crypto_box = {version = "0.8.2", features = ["std"]}

+ 3 - 3
bin/vanityaddr/Cargo.toml

@@ -10,11 +10,11 @@ edition = "2021"
 
 [dependencies]
 bs58 = "0.4.0"
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 ctrlc = "3.2.3"
 darkfi = {path = "../../", features = ["crypto"]}
 darkfi-sdk = {path = "../../src/sdk"}
-indicatif = "0.17.1"
+indicatif = "0.17.2"
 num_cpus = "1.14.0"
 rand = "0.8.5"
-rayon = "1.5.3"
+rayon = "1.6.0"

+ 4 - 12
bin/vanityaddr/src/main.rs

@@ -19,7 +19,7 @@
 use std::{process::exit, sync::mpsc::channel};
 
 use clap::Parser;
-use darkfi_sdk::crypto::{Address, Keypair, SecretKey};
+use darkfi_sdk::crypto::{Keypair, SecretKey};
 use indicatif::{ProgressBar, ProgressStyle};
 use rand::rngs::OsRng;
 use rayon::prelude::*;
@@ -30,7 +30,7 @@ use darkfi::cli_desc;
 #[clap(name = "vanityaddr", about = cli_desc!(), version)]
 #[clap(arg_required_else_help(true))]
 struct Args {
-    /// Prefixes to search (must start with 1)
+    /// Prefixes to search
     prefix: Vec<String>,
 
     /// Should the search be case-sensitive
@@ -38,7 +38,7 @@ struct Args {
     case_sensitive: bool,
 
     /// Number of threads to use (defaults to number of available CPUs)
-    #[clap(short, parse(try_from_str))]
+    #[clap(short)]
     threads: Option<usize>,
 }
 
@@ -50,9 +50,8 @@ struct DrkAddr {
 impl DrkAddr {
     pub fn new() -> Self {
         let kp = Keypair::random(&mut OsRng);
-        let addr = Address::from(kp.public);
 
-        Self { secret: kp.secret, address: format!("{}", addr) }
+        Self { secret: kp.secret, address: format!("{}", kp.public) }
     }
 
     pub fn starts_with(&self, prefix: &str, case_sensitive: bool) -> bool {
@@ -81,13 +80,6 @@ fn main() {
         exit(1);
     }
 
-    for (idx, prefix) in args.prefix.iter().enumerate() {
-        if !prefix.starts_with('1') {
-            eprintln!("Error: Address prefix at index {} must start with \"1\".", idx);
-            exit(1);
-        }
-    }
-
     // Check if prefixes are valid base58
     for (idx, prefix) in args.prefix.iter().enumerate() {
         match bs58::decode(prefix).into_vec() {

+ 1 - 1
bin/zkas/Cargo.toml

@@ -9,5 +9,5 @@ license = "AGPL-3.0-only"
 edition = "2021"
 
 [dependencies]
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 darkfi = {path = "../../", features = ["zkas"]}

+ 4 - 4
example/dao/Cargo.toml

@@ -14,9 +14,9 @@ darkfi-sdk = {path = "../../src/sdk"}
 smol = "1.2.5"
 futures = "0.3.25"
 async-std = {version = "1.12.0", features = ["attributes"]}
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 async-channel = "1.7.1"
-async-executor = "1.4.1"
+async-executor = "1.5.0"
 easy-parallel = "3.2.0"
 
 # Misc
@@ -35,11 +35,11 @@ chacha20poly1305 = "0.10.1"
 group = "0.12.1"
 
 # Encoding and parsing
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 bs58 = "0.4.0"
 fxhash = "0.2.1"
 
 # Utilities
 lazy_static = "1.4.0"
 url = "2.3.1"
-env_logger = "0.9.3"
+env_logger = "0.10.0"

+ 4 - 4
example/dao2/Cargo.toml

@@ -23,9 +23,9 @@ sled = "0.34.7"
 smol = "1.2.5"
 futures = "0.3.25"
 async-std = {version = "1.12.0", features = ["attributes"]}
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 async-channel = "1.7.1"
-async-executor = "1.4.1"
+async-executor = "1.5.0"
 easy-parallel = "3.2.0"
 
 # Misc
@@ -44,11 +44,11 @@ chacha20poly1305 = "0.10.1"
 group = "0.12.1"
 
 # Encoding and parsing
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 bs58 = "0.4.0"
 fxhash = "0.2.1"
 
 # Utilities
 lazy_static = "1.4.0"
 url = "2.3.1"
-env_logger = "0.9.3"
+env_logger = "0.10.0"

+ 3 - 3
example/dchat/Cargo.toml

@@ -16,7 +16,7 @@ darkfi-serial = {path = "../../src/serial"}
 
 # ANCHOR: dependencies
 async-std = "1.12.0"
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 easy-parallel = "3.2.0"
 smol = "1.2.5"
 num_cpus = "1.14.0"
@@ -25,7 +25,7 @@ log = "0.4.17"
 simplelog = "0.12.0"
 url = "2.3.1"
 
-serde_json = "1.0.87"
-serde = {version = "1.0.147", features = ["derive"]}
+serde_json = "1.0.89"
+serde = {version = "1.0.148", features = ["derive"]}
 toml = "0.5.9"
 # ANCHOR_END: dependencies

+ 4 - 4
example/p2pdebug/Cargo.toml

@@ -15,20 +15,20 @@ darkfi = {path = "../../", features = ["net", "rpc"]}
 smol = "1.2.5"
 futures = "0.3.25"
 async-std = "1.12.0"
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 async-channel = "1.7.1"
-async-executor = "1.4.1"
+async-executor = "1.5.0"
 easy-parallel = "3.2.0"
 
 # Crypto
 rand = "0.8.5"
 
 # Misc
-clap = {version = "3.2.20", features = ["derive"]}
+clap = {version = "4.0.28", features = ["derive"]}
 log = "0.4.17"
 simplelog = "0.12.0"
 fxhash = "0.2.1"
 url = "2.3.1"
 
 # Encoding and parsing
-serde_json = "1.0.87"
+serde_json = "1.0.89"

+ 4 - 4
script/research/crypsinous_playground/Cargo.toml

@@ -18,19 +18,19 @@ pasta_curves = "0.4.1"
 
 # Async
 async-std = "1.12.0"
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 easy-parallel = "3.2.0"
 smol = "1.2.5"
 
 # Argument parsing
-serde = "1.0.147"
-serde_derive = "1.0.147"
+serde = "1.0.148"
+serde_derive = "1.0.148"
 structopt = "0.3.26"
 structopt-toml = "0.5.1"
 
 # Misc
-blake3 = "1.3.1"
+blake3 = "1.3.3"
 log = "0.4.17"
 simplelog = "0.12.0"
 rand = "0.8.5"

+ 6 - 6
script/research/dhtd/Cargo.toml

@@ -11,21 +11,21 @@ features = ["dht"]
 
 [dependencies]
 async-channel = "1.7.1"
-async-executor = "1.4.1"
+async-executor = "1.5.0"
 async-std = "1.12.0"
-async-trait = "0.1.58"
-blake3 = "1.3.1"
+async-trait = "0.1.59"
+blake3 = "1.3.3"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 easy-parallel = "3.2.0"
 futures-lite = "1.12.0"
 log = "0.4.17"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 simplelog = "0.12.0"
 url = "2.3.1"
 
 # Argument parsing
-serde = "1.0.147"
-serde_derive = "1.0.147"
+serde = "1.0.148"
+serde_derive = "1.0.148"
 structopt = "0.3.26"
 structopt-toml = "0.5.1"
 

+ 1 - 1
script/research/merkletree_null_benchmark/Cargo.toml

@@ -16,4 +16,4 @@ rand = "0.8.5"
 pasta_curves = "0.4.1"
 incrementalmerkletree = "0.3.0"
 
-serde_json = "1.0.87"
+serde_json = "1.0.89"

+ 2 - 2
script/research/nodes-tool/Cargo.toml

@@ -9,9 +9,9 @@ edition = "2021"
 
 [dependencies]
 async-std = "1.12.0"
-blake3 = "1.3.1"
+blake3 = "1.3.3"
 darkfi = {path = "../../../", features = ["blockchain", "wallet", "rpc"]}
 darkfi-sdk = {path = "../../../src/sdk"}
 darkfi-serial = {path = "../../../src/serial"}
-serde = "1.0.147"
+serde = "1.0.148"
 sled = "0.34.7"

+ 5 - 5
script/research/raft-diag/Cargo.toml

@@ -12,9 +12,9 @@ darkfi = {path = "../../../", features = ["raft"]}
 # Async
 smol = "1.2.5"
 async-std = {version = "1.12.0", features = ["attributes"]}
-async-trait = "0.1.58"
+async-trait = "0.1.59"
 async-channel = "1.7.1"
-async-executor = "1.4.1"
+async-executor = "1.5.0"
 easy-parallel = "3.2.0"
 futures = "0.3.25"
 
@@ -22,15 +22,15 @@ futures = "0.3.25"
 log = "0.4.17"
 simplelog = "0.12.0"
 rand = "0.8.5"
-chrono = "0.4.22"
+chrono = "0.4.23"
 thiserror = "1.0.37"
 ctrlc = { version = "3.2.3", features = ["termination"] }
 url = "2.3.1"
 fxhash = "0.2.1"
 
 # Encoding and parsing
-serde = {version = "1.0.147", features = ["derive"]}
-serde_json = "1.0.87"
+serde = {version = "1.0.148", features = ["derive"]}
+serde_json = "1.0.89"
 structopt = "0.3.26"
 hex = "0.4.3"
 bs58 = "0.4.0"

+ 1 - 1
script/research/rpc_client_notifications/Cargo.toml

@@ -11,5 +11,5 @@ edition = "2021"
 async-std = "1.12.0"
 darkfi = {path = "../../../", features = ["rpc"]}
 futures = "0.3.25"
-serde_json = "1.0.87"
+serde_json = "1.0.89"
 url = {version = "2.3.1", features = ["serde"]}

+ 1 - 1
script/research/state_usage_analyser/Cargo.toml

@@ -16,5 +16,5 @@ lazy-init = "0.5.1"
 log = "0.4.17"
 pasta_curves = "0.4.1"
 rand = "0.8.5"
-serde = {version = "1.0.147", features = ["derive"]}
+serde = {version = "1.0.148", features = ["derive"]}
 sled = "0.34.7"

+ 1 - 1
script/research/x3dh/Cargo.toml

@@ -9,7 +9,7 @@ edition = "2021"
 
 [dependencies]
 sha2 = "0.10.6"
-digest = "0.10.5"
+digest = "0.10.6"
 rand = "0.8.5"
 aes-gcm-siv = "0.11.1"
 curve25519-dalek = "4.0.0-pre.2"

+ 3 - 3
src/consensus/state.rs

@@ -380,12 +380,12 @@ impl ValidatorState {
     /// Slots duration is configured using the SLOT_TIME constant.
     pub fn next_n_slot_start(&self, n: u64) -> Duration {
         assert!(n > 0);
-        let start_time = NaiveDateTime::from_timestamp(self.consensus.genesis_ts.0, 0);
+        let start_time = NaiveDateTime::from_timestamp_opt(self.consensus.genesis_ts.0, 0).unwrap();
         let current_slot = self.current_slot() + n;
         let next_slot_start =
             (current_slot * constants::SLOT_TIME) + (start_time.timestamp() as u64);
-        let next_slot_start = NaiveDateTime::from_timestamp(next_slot_start as i64, 0);
-        let current_time = NaiveDateTime::from_timestamp(Utc::now().timestamp(), 0);
+        let next_slot_start = NaiveDateTime::from_timestamp_opt(next_slot_start as i64, 0).unwrap();
+        let current_time = NaiveDateTime::from_timestamp_opt(Utc::now().timestamp(), 0).unwrap();
         let diff = next_slot_start - current_time;
 
         Duration::new(diff.num_seconds().try_into().unwrap(), 0)

+ 10 - 1
src/error.rs

@@ -147,7 +147,7 @@ pub enum Error {
     #[error("No URL found")]
     NoUrlFound,
 
-    #[cfg(feature = "tungstenite")]
+    #[cfg(feature = "async-tungstenite")]
     #[error("tungstenite error: {0}")]
     TungsteniteError(String),
 
@@ -572,12 +572,21 @@ impl From<halo2_proofs::plonk::Error> for Error {
     }
 }
 
+/*
 #[cfg(feature = "tungstenite")]
 impl From<tungstenite::Error> for Error {
     fn from(err: tungstenite::Error) -> Self {
         Self::TungsteniteError(err.to_string())
     }
 }
+*/
+
+#[cfg(feature = "async-tungstenite")]
+impl From<async_tungstenite::tungstenite::Error> for Error {
+    fn from(err: async_tungstenite::tungstenite::Error) -> Self {
+        Self::TungsteniteError(err.to_string())
+    }
+}
 
 #[cfg(feature = "futures-rustls")]
 impl From<futures_rustls::rustls::client::InvalidDnsNameError> for Error {

+ 6 - 4
src/rpc/websockets.rs

@@ -22,11 +22,13 @@ use std::{
     task::{Context, Poll},
 };
 
-use async_tungstenite::WebSocketStream;
+use async_tungstenite::{
+    tungstenite::{handshake::client::Response, Message},
+    WebSocketStream,
+};
 use futures::sink::Sink;
 use futures_rustls::{client::TlsStream, rustls::ServerName, TlsConnector};
 use smol::{prelude::*, Async};
-use tungstenite::{handshake::client::Response, Message};
 use url::Url;
 
 use crate::{Error, Result as DrkResult};
@@ -38,7 +40,7 @@ pub enum WsStream {
 }
 
 impl Sink<Message> for WsStream {
-    type Error = tungstenite::Error;
+    type Error = async_tungstenite::tungstenite::Error;
 
     fn poll_ready(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
         match &mut *self {
@@ -70,7 +72,7 @@ impl Sink<Message> for WsStream {
 }
 
 impl Stream for WsStream {
-    type Item = tungstenite::Result<Message>;
+    type Item = async_tungstenite::tungstenite::Result<Message>;
 
     fn poll_next(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Option<Self::Item>> {
         match &mut *self {

+ 1 - 1
src/sdk/Cargo.toml

@@ -27,7 +27,7 @@ bs58 = "0.4.0"
 
 # Cryptography
 blake2b_simd = "1.0.0"
-blake3 = "1.3.1"
+blake3 = "1.3.3"
 halo2_gadgets = "0.2.0"
 incrementalmerkletree = "0.3.0"
 pasta_curves = "0.4.1"

+ 1 - 1
src/serial/Cargo.toml

@@ -13,7 +13,7 @@ darkfi-derive = {path = "./derive", optional = true}
 futures-lite = {version = "1.12.0", optional = true}
 
 # Supported types for encoding
-blake3 = {version = "1.3.1", optional = true}
+blake3 = {version = "1.3.3", optional = true}
 fxhash = {version = "0.2.1", optional = true}
 incrementalmerkletree = {version = "0.3.0", optional = true}
 pasta_curves = {version = "0.4.1", optional = true}

+ 1 - 1
src/serial/derive-internal/Cargo.toml

@@ -11,4 +11,4 @@ edition = "2021"
 [dependencies]
 proc-macro2 = "1.0.47"
 quote = "1.0.21"
-syn = {version = "1.0.103", features = ["full", "fold"]}
+syn = {version = "1.0.104", features = ["full", "fold"]}

+ 1 - 1
src/serial/derive/Cargo.toml

@@ -14,6 +14,6 @@ proc-macro = true
 [dependencies]
 proc-macro-crate = "1.2.1"
 proc-macro2 = "1.0.47"
-syn = {version = "1.0.103", features = ["full", "fold"]}
+syn = {version = "1.0.104", features = ["full", "fold"]}
 
 darkfi-derive-internal = {path = "../derive-internal"}

+ 13 - 9
src/util/time.rs

@@ -47,8 +47,8 @@ impl Timestamp {
 
     /// Calculates elapsed time of a `Timestamp`.
     pub fn elapsed(&self) -> u64 {
-        let start_time = NaiveDateTime::from_timestamp(self.0, 0);
-        let end_time = NaiveDateTime::from_timestamp(Utc::now().timestamp(), 0);
+        let start_time = NaiveDateTime::from_timestamp_opt(self.0, 0).unwrap();
+        let end_time = NaiveDateTime::from_timestamp_opt(Utc::now().timestamp(), 0).unwrap();
         let diff = end_time - start_time;
         diff.num_seconds() as u64
     }
@@ -105,15 +105,19 @@ pub fn timestamp_to_date(timestamp: i64, format: DateFormat) -> String {
     }
 
     match format {
-        DateFormat::Date => {
-            NaiveDateTime::from_timestamp(timestamp, 0).date().format("%-d %b").to_string()
-        }
-        DateFormat::DateTime => {
-            NaiveDateTime::from_timestamp(timestamp, 0).format("%H:%M:%S %A %-d %B").to_string()
-        }
+        DateFormat::Date => NaiveDateTime::from_timestamp_opt(timestamp, 0)
+            .unwrap()
+            .date()
+            .format("%-d %b")
+            .to_string(),
+        DateFormat::DateTime => NaiveDateTime::from_timestamp_opt(timestamp, 0)
+            .unwrap()
+            .format("%H:%M:%S %A %-d %B")
+            .to_string(),
         DateFormat::Nanos => {
             const A_BILLION: i64 = 1_000_000_000;
-            NaiveDateTime::from_timestamp(timestamp / A_BILLION, (timestamp % A_BILLION) as u32)
+            NaiveDateTime::from_timestamp_opt(timestamp / A_BILLION, (timestamp % A_BILLION) as u32)
+                .unwrap()
                 .format("%H:%M:%S.%f")
                 .to_string()
         }

+ 7 - 9
tests/arithmetic_proof.rs

@@ -16,23 +16,21 @@
  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
+use halo2_proofs::circuit::Value;
+use pasta_curves::pallas;
+use rand::rngs::OsRng;
+use simplelog::{ColorChoice, Config, LevelFilter, TermLogger, TerminalMode};
+
 use darkfi::{
-    crypto::{
-        proof::{ProvingKey, VerifyingKey},
-        Proof,
-    },
     zk::{
+        proof::{ProvingKey, VerifyingKey},
         vm::{Witness, ZkCircuit},
         vm_stack::empty_witnesses,
+        Proof,
     },
     zkas::decoder::ZkBinary,
     Result,
 };
-use halo2_proofs::circuit::Value;
-use pasta_curves::pallas;
-use rand::rngs::OsRng;
-
-use simplelog::{ColorChoice, Config, LevelFilter, TermLogger, TerminalMode};
 
 #[test]
 fn arithmetic_proof() -> Result<()> {

+ 17 - 16
tests/burn_proof.rs

@@ -16,31 +16,32 @@
  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
-use darkfi::{
+use darkfi_sdk::{
     crypto::{
-        proof::{ProvingKey, VerifyingKey},
-        Proof,
+        pedersen::{pedersen_commitment_base, pedersen_commitment_u64},
+        poseidon_hash, MerkleNode, Nullifier, PublicKey, SecretKey,
     },
+    incrementalmerkletree::{bridgetree::BridgeTree, Tree},
+    pasta::{
+        arithmetic::CurveAffine,
+        group::{ff::Field, Curve},
+        pallas,
+    },
+};
+use halo2_gadgets::poseidon::primitives as poseidon;
+use halo2_proofs::circuit::Value;
+use rand::rngs::OsRng;
+
+use darkfi::{
     zk::{
+        proof::{ProvingKey, VerifyingKey},
         vm::{Witness, ZkCircuit},
         vm_stack::empty_witnesses,
+        Proof,
     },
     zkas::decoder::ZkBinary,
     Result,
 };
-use darkfi_sdk::crypto::{
-    pedersen::{pedersen_commitment_base, pedersen_commitment_u64},
-    poseidon_hash, MerkleNode, Nullifier, PublicKey, SecretKey,
-};
-use halo2_gadgets::poseidon::primitives as poseidon;
-use halo2_proofs::circuit::Value;
-use incrementalmerkletree::{bridgetree::BridgeTree, Tree};
-use pasta_curves::{
-    arithmetic::CurveAffine,
-    group::{ff::Field, Curve},
-    pallas,
-};
-use rand::rngs::OsRng;
 
 #[test]
 fn burn_proof() -> Result<()> {

+ 16 - 15
tests/mint_proof.rs

@@ -16,30 +16,31 @@
  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
-use darkfi::{
+use darkfi_sdk::{
     crypto::{
-        proof::{ProvingKey, VerifyingKey},
-        Proof,
+        pedersen::{pedersen_commitment_base, pedersen_commitment_u64},
+        PublicKey, SecretKey,
     },
+    pasta::{
+        arithmetic::CurveAffine,
+        group::{ff::Field, Curve},
+        pallas,
+    },
+};
+use halo2_gadgets::poseidon::primitives as poseidon;
+use halo2_proofs::circuit::Value;
+use rand::rngs::OsRng;
+
+use darkfi::{
     zk::{
+        proof::{ProvingKey, VerifyingKey},
         vm::{Witness, ZkCircuit},
         vm_stack::empty_witnesses,
+        Proof,
     },
     zkas::decoder::ZkBinary,
     Result,
 };
-use darkfi_sdk::crypto::{
-    pedersen::{pedersen_commitment_base, pedersen_commitment_u64},
-    PublicKey, SecretKey,
-};
-use halo2_gadgets::poseidon::primitives as poseidon;
-use halo2_proofs::circuit::Value;
-use pasta_curves::{
-    arithmetic::CurveAffine,
-    group::{ff::Field, Curve},
-    pallas,
-};
-use rand::rngs::OsRng;
 
 #[test]
 fn mint_proof() -> Result<()> {

+ 2 - 4
tests/zkvm_opcodes.rs

@@ -31,13 +31,11 @@ use rand::rngs::OsRng;
 use simplelog::{ColorChoice, Config, LevelFilter, TermLogger, TerminalMode};
 
 use darkfi::{
-    crypto::{
-        proof::{ProvingKey, VerifyingKey},
-        Proof,
-    },
     zk::{
+        proof::{ProvingKey, VerifyingKey},
         vm::ZkCircuit,
         vm_stack::{empty_witnesses, Witness},
+        Proof,
     },
     zkas::ZkBinary,
     Result,

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