Explorar el Código

create node module and move darkfid to bin dir

ghassmo hace 4 años
padre
commit
aa6fbc1085

+ 11 - 166
Cargo.lock

@@ -484,18 +484,6 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3"
 
-[[package]]
-name = "bstr"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223"
-dependencies = [
- "lazy_static",
- "memchr",
- "regex-automata",
- "serde",
-]
-
 [[package]]
 name = "bumpalo"
 version = "3.8.0"
@@ -901,28 +889,6 @@ dependencies = [
  "crypto_api",
 ]
 
-[[package]]
-name = "csv"
-version = "1.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22813a6dc45b335f9bade10bf7271dc477e81113e89eb251a0bc2a8a81c536e1"
-dependencies = [
- "bstr",
- "csv-core",
- "itoa 0.4.8",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "csv-core"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90"
-dependencies = [
- "memchr",
-]
-
 [[package]]
 name = "ctor"
 version = "0.1.21"
@@ -952,8 +918,7 @@ dependencies = [
  "clap",
  "crossbeam-channel 0.5.1",
  "crypto_api_chachapoly",
- "dirs 4.0.0",
- "easy-parallel",
+ "dirs",
  "failure",
  "futures",
  "group",
@@ -969,16 +934,13 @@ dependencies = [
  "num-bigint",
  "num_cpus",
  "pasta_curves",
- "prettytable-rs",
  "rand 0.8.4",
- "ripemd160",
  "rocksdb",
  "serde",
  "serde_json",
  "sha2",
  "signal-hook",
  "signal-hook-async-std",
- "simplelog",
  "smol",
  "sqlx",
  "subtle",
@@ -1080,17 +1042,6 @@ dependencies = [
  "generic-array",
 ]
 
-[[package]]
-name = "dirs"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901"
-dependencies = [
- "libc",
- "redox_users 0.3.5",
- "winapi",
-]
-
 [[package]]
 name = "dirs"
 version = "4.0.0"
@@ -1117,7 +1068,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "03d86534ed367a67548dc68113a0f5db55432fdfbb6e6f9d77704397d95d5780"
 dependencies = [
  "libc",
- "redox_users 0.4.0",
+ "redox_users",
  "winapi",
 ]
 
@@ -1128,7 +1079,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
 dependencies = [
  "libc",
- "redox_users 0.4.0",
+ "redox_users",
  "winapi",
 ]
 
@@ -1150,24 +1101,12 @@ dependencies = [
  "wio",
 ]
 
-[[package]]
-name = "easy-parallel"
-version = "3.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6907e25393cdcc1f4f3f513d9aac1e840eb1cc341a0fccb01171f7d14d10b946"
-
 [[package]]
 name = "either"
 version = "1.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
 
-[[package]]
-name = "encode_unicode"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
-
 [[package]]
 name = "enum-primitive-derive"
 version = "0.2.2"
@@ -1627,7 +1566,7 @@ checksum = "31f4c6746584866f0feabcc69893c5b51beef3831656a968ed7ae254cdc4fd03"
 dependencies = [
  "bytes",
  "fnv",
- "itoa 1.0.1",
+ "itoa",
 ]
 
 [[package]]
@@ -1706,12 +1645,6 @@ dependencies = [
  "either",
 ]
 
-[[package]]
-name = "itoa"
-version = "0.4.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
-
 [[package]]
 name = "itoa"
 version = "1.0.1"
@@ -2098,7 +2031,7 @@ dependencies = [
  "cfg-if 1.0.0",
  "instant",
  "libc",
- "redox_syscall 0.2.10",
+ "redox_syscall",
  "smallvec",
  "winapi",
 ]
@@ -2273,20 +2206,6 @@ version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
 
-[[package]]
-name = "prettytable-rs"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fd04b170004fa2daccf418a7f8253aaf033c27760b5f225889024cf66d7ac2e"
-dependencies = [
- "atty",
- "csv",
- "encode_unicode",
- "lazy_static",
- "term",
- "unicode-width",
-]
-
 [[package]]
 name = "proc-macro-error"
 version = "1.0.4"
@@ -2505,12 +2424,6 @@ dependencies = [
  "zeroize",
 ]
 
-[[package]]
-name = "redox_syscall"
-version = "0.1.57"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
-
 [[package]]
 name = "redox_syscall"
 version = "0.2.10"
@@ -2526,18 +2439,7 @@ version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8440d8acb4fd3d277125b4bd01a6f38aee8d814b3b5fc09b3f2b825d37d3fe8f"
 dependencies = [
- "redox_syscall 0.2.10",
-]
-
-[[package]]
-name = "redox_users"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d"
-dependencies = [
- "getrandom 0.1.16",
- "redox_syscall 0.1.57",
- "rust-argon2",
+ "redox_syscall",
 ]
 
 [[package]]
@@ -2547,7 +2449,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64"
 dependencies = [
  "getrandom 0.2.3",
- "redox_syscall 0.2.10",
+ "redox_syscall",
 ]
 
 [[package]]
@@ -2561,12 +2463,6 @@ dependencies = [
  "regex-syntax",
 ]
 
-[[package]]
-name = "regex-automata"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
-
 [[package]]
 name = "regex-syntax"
 version = "0.6.25"
@@ -2582,17 +2478,6 @@ dependencies = [
  "winapi",
 ]
 
-[[package]]
-name = "ripemd160"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eca4ecc81b7f313189bf73ce724400a07da2a6dac19588b03c8bd76a2dcc251"
-dependencies = [
- "block-buffer",
- "digest",
- "opaque-debug",
-]
-
 [[package]]
 name = "rocksdb"
 version = "0.17.0"
@@ -2602,18 +2487,6 @@ dependencies = [
  "librocksdb-sys",
 ]
 
-[[package]]
-name = "rust-argon2"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb"
-dependencies = [
- "base64",
- "blake2b_simd 0.5.11",
- "constant_time_eq",
- "crossbeam-utils 0.8.5",
-]
-
 [[package]]
 name = "rustc-demangle"
 version = "0.1.21"
@@ -2745,7 +2618,7 @@ version = "1.0.74"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ee2bb9cd061c5865d345bb02ca49fcef1391741b672b54a0bf7b679badec3142"
 dependencies = [
- "itoa 1.0.1",
+ "itoa",
  "ryu",
  "serde",
 ]
@@ -2834,17 +2707,6 @@ dependencies = [
  "libc",
 ]
 
-[[package]]
-name = "simplelog"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecabc0118918611790b8615670ab79296272cbe09496b6884b02b1e929c20886"
-dependencies = [
- "chrono",
- "log",
- "termcolor",
-]
-
 [[package]]
 name = "slab"
 version = "0.4.5"
@@ -2940,7 +2802,7 @@ dependencies = [
  "hashlink",
  "hex",
  "indexmap",
- "itoa 1.0.1",
+ "itoa",
  "libc",
  "libsqlite3-sys",
  "log",
@@ -3070,22 +2932,11 @@ dependencies = [
  "cfg-if 1.0.0",
  "libc",
  "rand 0.8.4",
- "redox_syscall 0.2.10",
+ "redox_syscall",
  "remove_dir_all",
  "winapi",
 ]
 
-[[package]]
-name = "term"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edd106a334b7657c10b7c540a0106114feadeb4dc314513e97df481d5d966f42"
-dependencies = [
- "byteorder",
- "dirs 1.0.5",
- "winapi",
-]
-
 [[package]]
 name = "termcolor"
 version = "1.1.2"
@@ -3103,7 +2954,7 @@ checksum = "077185e2eac69c3f8379a4298e1e07cd36beb962290d4a51199acf0fdc10607e"
 dependencies = [
  "libc",
  "numtoa",
- "redox_syscall 0.2.10",
+ "redox_syscall",
  "redox_termios",
 ]
 
@@ -3235,12 +3086,6 @@ version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b"
 
-[[package]]
-name = "unicode-width"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
-
 [[package]]
 name = "unicode-xid"
 version = "0.2.2"

+ 0 - 4
Cargo.toml

@@ -35,7 +35,6 @@ group = "0.11.0"
 crypto_api_chachapoly = "0.5.0"
 arrayvec = "0.7.2"
 sha2 = "0.9.8"
-ripemd160 = "0.9.1"
 
 # Encoding and parsing
 bincode = "1.3.3"
@@ -51,7 +50,6 @@ serde = {version = "1.0.130", features = ["derive"]}
 async-std = "1.10.0"
 async-trait = "0.1.51"
 async-channel = "1.6.1"
-easy-parallel = "3.1.0"
 native-tls = "0.2.8"
 async-native-tls = "0.4.0"
 async-executor = "1.4.1"
@@ -66,12 +64,10 @@ failure = "0.1.8"
 lazy_static = "1.4.0"
 log = "0.4.14"
 num_cpus = "1.13.0"
-simplelog = "0.11.1"
 signal-hook = "0.3.10"
 signal-hook-async-std = "0.2.1"
 subtle = "2.4.1"
 thiserror = "1.0.30"
-prettytable-rs = "0.8.0"
 
 # Used for Websockets client implementation.
 async-tungstenite = "0.16.0"

+ 5 - 3
bin/cashier/src/main.rs

@@ -14,20 +14,22 @@ use darkfi::{
     blockchain::{rocks::columns, Rocks, RocksColumn},
     circuit::{MintContract, SpendContract},
     cli::{CashierdConfig, CliCashierd, Config},
-    client::Client,
     crypto::{
         keypair::{PublicKey, SecretKey},
         proof::VerifyingKey,
     },
+    node::{
+        client::Client,
+        state::State,
+        wallet::{cashierdb::CashierDb, walletdb::WalletDb},
+    },
     rpc::{
         jsonrpc::{error as jsonerr, response as jsonresp, ErrorCode::*, JsonRequest, JsonResult},
         rpcserver::{listen_and_serve, RequestHandler, RpcServerConfig},
     },
     serial::serialize,
-    state::State,
     types::DrkTokenId,
     util::{expand_path, generate_id2, join_config_path, parse::truncate, Address, NetworkName},
-    wallet::{cashierdb::CashierDb, walletdb::WalletDb},
     Error, Result,
 };
 

+ 2 - 2
bin/cashier/src/service/bridge.rs

@@ -7,8 +7,8 @@ use futures::stream::{FuturesUnordered, StreamExt};
 use log::{debug, error};
 
 use darkfi::{
-    crypto::keypair::PublicKey, types::*, util::NetworkName, wallet::cashierdb::TokenKey, Error,
-    Result,
+    crypto::keypair::PublicKey, node::wallet::cashierdb::TokenKey, types::*, util::NetworkName,
+    Error, Result,
 };
 
 pub struct BridgeRequests {

+ 3 - 0
bin/darkfid/.gitignore

@@ -0,0 +1,3 @@
+
+/target
+Cargo.lock

+ 36 - 0
bin/darkfid/Cargo.toml

@@ -0,0 +1,36 @@
+[package]
+name = "darkfid"
+version = "0.1.0"
+edition = "2021"
+
+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
+[dependencies]
+darkfi = {path= "../../"}
+
+# Encoding and parsing
+serde_json = "1.0.72"
+serde = {version = "1.0.130", features = ["derive"]}
+url = "2.2.2"
+
+
+# Async
+async-std = "1.10.0"
+async-trait = "0.1.51"
+async-channel = "1.6.1"
+easy-parallel = "3.1.0"
+async-executor = "1.4.1"
+futures = "0.3.17"
+smol = "1.2.5"
+
+
+# Utilities
+clap = { version = "3.0.0", features = ["derive"] }
+log = "0.4.14"
+simplelog = "0.11.1"
+thiserror = "1.0.30"
+rand = "0.8.4"
+num_cpus = "1.13.0"
+lazy_static = "1.4.0"
+anyhow = "1.0.49"
+num-bigint = {version = "0.4.3", features = ["rand", "serde"]}

+ 8 - 6
src/bin/darkfid.rs → bin/darkfid/src/main.rs

@@ -15,11 +15,15 @@ use darkfi::{
     blockchain::{rocks::columns, Rocks, RocksColumn},
     circuit::{MintContract, SpendContract},
     cli::{CliDarkfid, Config, DarkfidConfig},
-    client::Client,
     crypto::{
         keypair::{Keypair, PublicKey, SecretKey},
         proof::VerifyingKey,
     },
+    node::{
+        client::Client,
+        state::{ProgramState, State},
+        wallet::walletdb::WalletDb,
+    },
     rpc::{
         jsonrpc::{
             error as jsonerr, request as jsonreq, response as jsonresp, send_raw_request,
@@ -27,13 +31,11 @@ use darkfi::{
         },
         rpcserver::{listen_and_serve, RequestHandler, RpcServerConfig},
     },
-    state::{ProgramState, State},
     types::DrkTokenId,
     util::{
         assign_id, decode_base10, encode_base10, expand_path, join_config_path, Address,
         DrkTokenList, NetworkName, TokenList,
     },
-    wallet::walletdb::WalletDb,
     Error, Result,
 };
 
@@ -102,11 +104,11 @@ impl Darkfid {
         cashiers: Vec<Cashier>,
     ) -> Result<Self> {
         let sol_tokenlist =
-            TokenList::new(include_bytes!("../../contrib/token/solana_token_list.json"))?;
+            TokenList::new(include_bytes!("../../../contrib/token/solana_token_list.json"))?;
         let eth_tokenlist =
-            TokenList::new(include_bytes!("../../contrib/token/erc20_token_list.json"))?;
+            TokenList::new(include_bytes!("../../../contrib/token/erc20_token_list.json"))?;
         let btc_tokenlist =
-            TokenList::new(include_bytes!("../../contrib/token/bitcoin_token_list.json"))?;
+            TokenList::new(include_bytes!("../../../contrib/token/bitcoin_token_list.json"))?;
         let drk_tokenlist = DrkTokenList::new(&sol_tokenlist, &eth_tokenlist, &btc_tokenlist)?;
 
         Ok(Self {

+ 1 - 1
bin/gateway/src/main.rs

@@ -9,7 +9,7 @@ use simplelog::{ColorChoice, LevelFilter, TermLogger, TerminalMode};
 use darkfi::{
     blockchain::{rocks::columns, Rocks, RocksColumn},
     cli::{CliGatewayd, Config, GatewaydConfig},
-    service::gateway::GatewayService,
+    node::service::gateway::GatewayService,
     util::{expand_path, join_config_path},
     Result,
 };

+ 1 - 1
src/bin/tx.rs

@@ -11,7 +11,7 @@ use darkfi::{
         nullifier::Nullifier,
         proof::{ProvingKey, VerifyingKey},
     },
-    state::{state_transition, ProgramState, StateUpdate},
+    node::state::{state_transition, ProgramState, StateUpdate},
     tx,
     util::{generate_id2, NetworkName},
     Result,

+ 1 - 1
src/blockchain/rocks.rs

@@ -4,7 +4,7 @@ use async_std::sync::Arc;
 use rocksdb::{ColumnFamily, ColumnFamilyDescriptor, Options, DB};
 
 use crate::{
-    serial::{deserialize, serialize, Decodable, Encodable},
+    util::serial::{deserialize, serialize, Decodable, Encodable},
     Error, Result,
 };
 

+ 1 - 1
src/blockchain/slab.rs

@@ -1,5 +1,5 @@
 use crate::{
-    serial::{Decodable, Encodable},
+    util::serial::{Decodable, Encodable},
     Result,
 };
 

+ 1 - 1
src/blockchain/slabstore.rs

@@ -7,7 +7,7 @@ use super::{
     slab::Slab,
 };
 use crate::{
-    serial::{deserialize, serialize},
+    util::serial::{deserialize, serialize},
     Result,
 };
 

+ 9 - 9
src/lib.rs

@@ -1,25 +1,25 @@
-pub mod async_serial;
 pub mod blockchain;
 pub mod circuit;
 pub mod cli;
-pub mod client;
 pub mod crypto;
 pub mod endian;
-pub mod error;
 pub mod net;
 pub mod rpc;
-pub mod serial;
-pub mod service;
-pub mod state;
 pub mod system;
 pub mod tx;
 pub mod types;
-pub mod util;
 pub mod vm;
 pub mod vm_serial;
-pub mod wallet;
+
+pub mod node;
 
 #[cfg(feature = "tui")]
 pub mod tui;
 
-pub use crate::error::{Error, Result};
+pub mod util;
+
+pub use util::{
+    error,
+    error::{Error, Result},
+    serial,
+};

+ 10 - 7
src/client.rs → src/node/client.rs

@@ -16,16 +16,19 @@ use crate::{
         OwnCoin,
     },
     serial::{Decodable, Encodable},
-    service::GatewayClient,
-    state::{state_transition, State, StateUpdate},
     tx,
     types::DrkTokenId,
     util::Address,
+    Result,
+};
+
+use super::{
+    service::GatewayClient,
+    state::{state_transition, State, StateUpdate},
     wallet::{
         cashierdb::CashierDbPtr,
         walletdb::{Balances, WalletPtr},
     },
-    Result,
 };
 
 #[derive(Debug, Clone, thiserror::Error)]
@@ -60,14 +63,14 @@ pub enum ClientFailed {
 
 pub type ClientResult<T> = std::result::Result<T, ClientFailed>;
 
-impl From<super::error::Error> for ClientFailed {
-    fn from(err: super::error::Error) -> ClientFailed {
+impl From<crate::error::Error> for ClientFailed {
+    fn from(err: crate::error::Error) -> ClientFailed {
         ClientFailed::ClientError(err.to_string())
     }
 }
 
-impl From<crate::state::VerifyFailed> for ClientFailed {
-    fn from(err: crate::state::VerifyFailed) -> ClientFailed {
+impl From<super::state::VerifyFailed> for ClientFailed {
+    fn from(err: super::state::VerifyFailed) -> ClientFailed {
         ClientFailed::VerifyError(err.to_string())
     }
 }

+ 4 - 0
src/node/mod.rs

@@ -0,0 +1,4 @@
+pub mod client;
+pub mod service;
+pub mod state;
+pub mod wallet;

+ 0 - 0
src/service/gateway.rs → src/node/service/gateway.rs


+ 0 - 0
src/service/mod.rs → src/node/service/mod.rs


+ 0 - 0
src/service/reqrep.rs → src/node/service/reqrep.rs


+ 2 - 1
src/state.rs → src/node/state.rs

@@ -14,10 +14,11 @@ use crate::{
     },
     error,
     tx::Transaction,
-    wallet::walletdb::WalletPtr,
     Result,
 };
 
+use super::wallet::walletdb::WalletPtr;
+
 pub trait ProgramState {
     fn is_valid_cashier_public_key(&self, public: &PublicKey) -> bool;
     fn is_valid_merkle(&self, merkle: &MerkleNode) -> bool;

+ 5 - 4
src/wallet/cashierdb.rs → src/node/wallet/cashierdb.rs

@@ -9,12 +9,13 @@ use sqlx::{
 };
 
 use super::wallet_api::WalletApi;
+
 use crate::{
-    client::ClientFailed,
     crypto::{
         keypair::{Keypair, PublicKey, SecretKey},
         merkle_node::MerkleNode,
     },
+    node::client::ClientFailed,
     types::DrkTokenId,
     util::NetworkName,
     Error, Result,
@@ -79,9 +80,9 @@ impl CashierDb {
     }
 
     pub async fn init_db(&self) -> Result<()> {
-        let main_kps = include_str!("../../sql/cashier_main_keypairs.sql");
-        let deposit_kps = include_str!("../../sql/cashier_deposit_keypairs.sql");
-        let withdraw_kps = include_str!("../../sql/cashier_withdraw_keypairs.sql");
+        let main_kps = include_str!("../../../sql/cashier_main_keypairs.sql");
+        let deposit_kps = include_str!("../../../sql/cashier_deposit_keypairs.sql");
+        let withdraw_kps = include_str!("../../../sql/cashier_withdraw_keypairs.sql");
 
         let mut conn = self.conn.acquire().await?;
 

+ 0 - 0
src/wallet/mod.rs → src/node/wallet/mod.rs


+ 0 - 0
src/wallet/wallet_api.rs → src/node/wallet/wallet_api.rs


+ 6 - 5
src/wallet/walletdb.rs → src/node/wallet/walletdb.rs

@@ -10,7 +10,6 @@ use sqlx::{
 };
 
 use crate::{
-    client::ClientFailed,
     crypto::{
         coin::Coin,
         keypair::{Keypair, PublicKey, SecretKey},
@@ -19,12 +18,14 @@ use crate::{
         nullifier::Nullifier,
         OwnCoin, OwnCoins,
     },
+    node::client::ClientFailed,
     serial::serialize,
     types::DrkTokenId,
-    wallet::wallet_api::WalletApi,
     Error, Result,
 };
 
+use super::wallet_api::WalletApi;
+
 pub type WalletPtr = Arc<WalletDb>;
 
 #[derive(Clone, Debug)]
@@ -76,9 +77,9 @@ impl WalletDb {
 
     pub async fn init_db(&self) -> Result<()> {
         info!("Initializing wallet database");
-        let tree = include_str!("../../sql/tree.sql");
-        let keys = include_str!("../../sql/keys.sql");
-        let coins = include_str!("../../sql/coins.sql");
+        let tree = include_str!("../../../sql/tree.sql");
+        let keys = include_str!("../../../sql/keys.sql");
+        let coins = include_str!("../../../sql/coins.sql");
 
         let mut conn = self.conn.acquire().await?;
 

+ 1 - 1
src/tx/mod.rs

@@ -20,8 +20,8 @@ use crate::{
     },
     error::Result,
     impl_vec,
+    node::state,
     serial::{Decodable, Encodable, VarInt},
-    state,
     types::{DrkTokenId, DrkValueBlind, DrkValueCommit},
 };
 

+ 0 - 0
src/async_serial.rs → src/util/async_serial.rs


+ 1 - 1
src/error.rs → src/util/error.rs

@@ -1,4 +1,4 @@
-use crate::{client, state};
+use crate::node::{client, state};
 
 pub type Result<T> = std::result::Result<T, Error>;
 

+ 5 - 0
src/util/mod.rs

@@ -1,9 +1,12 @@
 pub mod address;
+pub mod async_serial;
 pub mod async_util;
+pub mod error;
 pub mod loader;
 pub mod net_name;
 pub mod parse;
 pub mod path;
+pub mod serial;
 pub mod token_list;
 
 pub use async_util::sleep;
@@ -14,3 +17,5 @@ pub use path::{expand_path, join_config_path, load_keypair_to_str};
 pub use token_list::{DrkTokenList, TokenList};
 
 pub use address::Address;
+
+pub use error::{Error, Result};

+ 0 - 0
src/serial.rs → src/util/serial.rs