Updated some dependencies, got rid of Bitcoin stuff which wasn't in use
This commit is contained in:
1676
Cargo.lock
generated
1676
Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,3 @@
|
|||||||
[workspace]
|
[workspace]
|
||||||
|
|
||||||
members = ["crdt-node", "crdt-relayer", "crates/oracle-demo"]
|
members = ["crdt-node", "crdt-relayer", "crates/oracle-demo"]
|
||||||
resolver = "2"
|
resolver = "2"
|
||||||
|
|||||||
@@ -6,12 +6,12 @@ edition = "2021"
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
serde = { version = "1.0", features = ["derive"] }
|
serde = { version = "1.0", features = ["derive"] }
|
||||||
serde_json = "1.0"
|
serde_json = "1.0"
|
||||||
tokio = { version = "1.35", features = ["full"] }
|
tokio = { version = "1.45.1", features = ["full"] }
|
||||||
async-trait = "0.1"
|
async-trait = "0.1"
|
||||||
anyhow = "1.0"
|
anyhow = "1.0"
|
||||||
rand = "0.8"
|
rand = "0.9.1"
|
||||||
chrono = "0.4"
|
chrono = "0.4"
|
||||||
colored = "2.0"
|
colored = "3.0.0"
|
||||||
|
|
||||||
[[bin]]
|
[[bin]]
|
||||||
name = "oracle-demo"
|
name = "oracle-demo"
|
||||||
|
|||||||
@@ -139,12 +139,12 @@ impl OracleNode {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn submit_price(&self) {
|
fn submit_price(&self) {
|
||||||
let mut rng = rand::thread_rng();
|
let mut rng = rand::rng();
|
||||||
|
|
||||||
let price = if self.is_byzantine {
|
let price = if self.is_byzantine {
|
||||||
self.base_price * 1.2 // Try to manipulate 20% higher
|
self.base_price * 1.2 // Try to manipulate 20% higher
|
||||||
} else {
|
} else {
|
||||||
self.base_price * (1.0 + rng.gen_range(-0.01..0.01))
|
self.base_price * (1.0 + rng.random_range(-0.01..0.01))
|
||||||
};
|
};
|
||||||
|
|
||||||
let attestation = PriceAttestation {
|
let attestation = PriceAttestation {
|
||||||
|
|||||||
@@ -6,34 +6,24 @@ edition = "2021"
|
|||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
anyhow = "1.0.86"
|
anyhow = "1.0.98"
|
||||||
async-trait = "0.1.52"
|
async-trait = "0.1.88"
|
||||||
bdk = { version = "0.29.0", default-feature = false, features = ["all-keys"] }
|
|
||||||
bdk_esplora = "0.15.0"
|
|
||||||
bdk_sqlite = "0.2.0"
|
|
||||||
bdk_wallet = { version = "1.0.0-alpha.13", features = ["all-keys"] }
|
|
||||||
bft-json-crdt = { path = "../crates/bft-json-crdt" }
|
bft-json-crdt = { path = "../crates/bft-json-crdt" }
|
||||||
bft-crdt-derive = { path = "../crates/bft-json-crdt/bft-crdt-derive" }
|
bft-crdt-derive = { path = "../crates/bft-json-crdt/bft-crdt-derive" }
|
||||||
bitcoin = { version = "0.32.2", features = ["rand"] }
|
clap = { version = "4.5.40", features = ["derive"] }
|
||||||
clap = { version = "4.5.4", features = ["derive"] }
|
dirs = "6.0.0"
|
||||||
dirs = "5.0.1"
|
|
||||||
electrum-client = "0.20"
|
|
||||||
ezsockets = { version = "*", features = ["client"] }
|
ezsockets = { version = "*", features = ["client"] }
|
||||||
fastcrypto = "0.1.8"
|
fastcrypto = "0.1.9"
|
||||||
indexmap = { version = "2.2.6", features = ["serde"] }
|
indexmap = { version = "2.9.0", features = ["serde"] }
|
||||||
reqwest = { version = "*", features = ["blocking"] }
|
|
||||||
# serde_cbor = "0.11.2" # move to this once we need to pack things in CBOR
|
|
||||||
serde = { version = "1.0", features = ["derive"] }
|
serde = { version = "1.0", features = ["derive"] }
|
||||||
serde_json = "1.0.117"
|
serde_json = "1.0.140"
|
||||||
sha256 = "1.5.0"
|
sha256 = "1.6.0"
|
||||||
tokio = { version = "1.37.0", features = ["full"] }
|
tokio = { version = "1.45.1", features = ["full"] }
|
||||||
toml = "0.8.14"
|
toml = "0.8.23"
|
||||||
tracing = "0.1.32"
|
tracing = "0.1.41"
|
||||||
# tracing-subscriber = "0.3.9"
|
|
||||||
|
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
uuid = { version = "1.8.0", features = ["v4"] }
|
uuid = { version = "1.17.0", features = ["v4"] }
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["bft", "logging-list", "logging-json"]
|
default = ["bft", "logging-list", "logging-json"]
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ pub(crate) struct Args {
|
|||||||
#[derive(Subcommand)]
|
#[derive(Subcommand)]
|
||||||
pub(crate) enum Commands {
|
pub(crate) enum Commands {
|
||||||
/// Placeholder for future BTC commands
|
/// Placeholder for future BTC commands
|
||||||
Btc {},
|
// Btc {},
|
||||||
|
|
||||||
/// runs the Side Node
|
/// runs the Side Node
|
||||||
Run { name: String },
|
Run { name: String },
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ use std::path::PathBuf;
|
|||||||
|
|
||||||
use config::SideNodeConfig;
|
use config::SideNodeConfig;
|
||||||
|
|
||||||
use crate::{bft_crdt, bitcoin, utils};
|
use crate::{bft_crdt, utils}; //bitcoin
|
||||||
|
|
||||||
pub(crate) mod config;
|
pub(crate) mod config;
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ pub(crate) fn init(home: PathBuf, config: SideNodeConfig) -> Result<(), std::io:
|
|||||||
bft_crdt::keys::write(&bft_crdt_key_path)?;
|
bft_crdt::keys::write(&bft_crdt_key_path)?;
|
||||||
|
|
||||||
println!("Writing bitcoin key to: {:?}", bitcoin_key_path);
|
println!("Writing bitcoin key to: {:?}", bitcoin_key_path);
|
||||||
bitcoin::keys::write(&bitcoin_key_path)?;
|
// bitcoin::keys::write(&bitcoin_key_path)?;
|
||||||
|
|
||||||
println!("Writing config to: {:?}", config_path);
|
println!("Writing config to: {:?}", config_path);
|
||||||
config::write_toml(&config, &config_path).expect("unable to write config file");
|
config::write_toml(&config, &config_path).expect("unable to write config file");
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ use node::SideNode;
|
|||||||
use tokio::{sync::mpsc, task};
|
use tokio::{sync::mpsc, task};
|
||||||
|
|
||||||
pub mod bft_crdt;
|
pub mod bft_crdt;
|
||||||
pub mod bitcoin;
|
// pub mod bitcoin;
|
||||||
pub(crate) mod cli;
|
pub(crate) mod cli;
|
||||||
pub(crate) mod init;
|
pub(crate) mod init;
|
||||||
pub mod node;
|
pub mod node;
|
||||||
@@ -28,9 +28,9 @@ pub async fn run() {
|
|||||||
let mut node = setup(name).await;
|
let mut node = setup(name).await;
|
||||||
node.start().await;
|
node.start().await;
|
||||||
}
|
}
|
||||||
Some(Commands::Btc {}) => {
|
// Some(Commands::Btc {}) => {
|
||||||
let _ = bitcoin::driver::run().await;
|
// let _ = bitcoin::driver::run().await;
|
||||||
}
|
// }
|
||||||
None => println!("No command provided. Exiting. See --help for more information."),
|
None => println!("No command provided. Exiting. See --help for more information."),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -40,8 +40,8 @@ async fn setup(name: &String) -> SideNode {
|
|||||||
// First, load up the keys and create a bft-bft-crdt
|
// First, load up the keys and create a bft-bft-crdt
|
||||||
let side_dir = utils::home(name);
|
let side_dir = utils::home(name);
|
||||||
let bft_crdt_keys = bft_crdt::keys::load_from_file(&side_dir);
|
let bft_crdt_keys = bft_crdt::keys::load_from_file(&side_dir);
|
||||||
let keys = bitcoin::keys::load_from_file(&side_dir).unwrap();
|
// let keys = bitcoin::keys::load_from_file(&side_dir).unwrap();
|
||||||
let bitcoin_wallet = bitcoin::clients::electrum::create_wallet(keys).unwrap();
|
// let bitcoin_wallet = bitcoin::clients::electrum::create_wallet(keys).unwrap();
|
||||||
let crdt = BaseCrdt::<TransactionList>::new(&bft_crdt_keys);
|
let crdt = BaseCrdt::<TransactionList>::new(&bft_crdt_keys);
|
||||||
|
|
||||||
// Channels for internal communication, and a tokio task for stdin input
|
// Channels for internal communication, and a tokio task for stdin input
|
||||||
@@ -56,7 +56,7 @@ async fn setup(name: &String) -> SideNode {
|
|||||||
let node = SideNode::new(
|
let node = SideNode::new(
|
||||||
crdt,
|
crdt,
|
||||||
bft_crdt_keys,
|
bft_crdt_keys,
|
||||||
bitcoin_wallet,
|
// bitcoin_wallet,
|
||||||
incoming_receiver,
|
incoming_receiver,
|
||||||
stdin_receiver,
|
stdin_receiver,
|
||||||
handle,
|
handle,
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
use bdk::database::MemoryDatabase;
|
// use bdk::database::MemoryDatabase;
|
||||||
use bft_json_crdt::json_crdt::{BaseCrdt, SignedOp};
|
use bft_json_crdt::json_crdt::{BaseCrdt, SignedOp};
|
||||||
use fastcrypto::ed25519::Ed25519KeyPair;
|
use fastcrypto::ed25519::Ed25519KeyPair;
|
||||||
use tokio::sync::mpsc;
|
use tokio::sync::mpsc;
|
||||||
@@ -8,7 +8,7 @@ use crate::{bft_crdt::websocket::Client, bft_crdt::TransactionList, utils};
|
|||||||
pub struct SideNode {
|
pub struct SideNode {
|
||||||
crdt: BaseCrdt<TransactionList>,
|
crdt: BaseCrdt<TransactionList>,
|
||||||
bft_crdt_keys: fastcrypto::ed25519::Ed25519KeyPair,
|
bft_crdt_keys: fastcrypto::ed25519::Ed25519KeyPair,
|
||||||
_bitcoin_wallet: bdk::Wallet<MemoryDatabase>, // currently not read anywhere
|
// _bitcoin_wallet: bdk::Wallet<MemoryDatabase>, // currently not read anywhere
|
||||||
incoming_receiver: mpsc::Receiver<SignedOp>,
|
incoming_receiver: mpsc::Receiver<SignedOp>,
|
||||||
stdin_receiver: std::sync::mpsc::Receiver<String>,
|
stdin_receiver: std::sync::mpsc::Receiver<String>,
|
||||||
handle: ezsockets::Client<Client>,
|
handle: ezsockets::Client<Client>,
|
||||||
@@ -18,7 +18,7 @@ impl SideNode {
|
|||||||
pub fn new(
|
pub fn new(
|
||||||
crdt: BaseCrdt<TransactionList>,
|
crdt: BaseCrdt<TransactionList>,
|
||||||
bft_crdt_keys: Ed25519KeyPair,
|
bft_crdt_keys: Ed25519KeyPair,
|
||||||
bitcoin_wallet: bdk::Wallet<MemoryDatabase>,
|
// bitcoin_wallet: bdk::Wallet<MemoryDatabase>,
|
||||||
incoming_receiver: mpsc::Receiver<SignedOp>,
|
incoming_receiver: mpsc::Receiver<SignedOp>,
|
||||||
stdin_receiver: std::sync::mpsc::Receiver<String>,
|
stdin_receiver: std::sync::mpsc::Receiver<String>,
|
||||||
handle: ezsockets::Client<Client>,
|
handle: ezsockets::Client<Client>,
|
||||||
@@ -26,7 +26,7 @@ impl SideNode {
|
|||||||
let node = Self {
|
let node = Self {
|
||||||
crdt,
|
crdt,
|
||||||
bft_crdt_keys,
|
bft_crdt_keys,
|
||||||
_bitcoin_wallet: bitcoin_wallet,
|
// _bitcoin_wallet: bitcoin_wallet,
|
||||||
incoming_receiver,
|
incoming_receiver,
|
||||||
stdin_receiver,
|
stdin_receiver,
|
||||||
handle,
|
handle,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
use bft_json_crdt::json_crdt::BaseCrdt;
|
use bft_json_crdt::json_crdt::BaseCrdt;
|
||||||
use bft_json_crdt::keypair::make_keypair;
|
use bft_json_crdt::keypair::make_keypair;
|
||||||
use bft_json_crdt::op::ROOT_ID;
|
use bft_json_crdt::op::ROOT_ID;
|
||||||
use side_node::bft_crdt::TransactionList;
|
use crdt_node::bft_crdt::TransactionList;
|
||||||
|
|
||||||
// case 1 - send valid updates
|
// case 1 - send valid updates
|
||||||
#[test]
|
#[test]
|
||||||
@@ -11,9 +11,9 @@ fn test_valid_updates() {
|
|||||||
let keypair1 = make_keypair();
|
let keypair1 = make_keypair();
|
||||||
let mut crdt1 = BaseCrdt::<TransactionList>::new(&keypair1);
|
let mut crdt1 = BaseCrdt::<TransactionList>::new(&keypair1);
|
||||||
|
|
||||||
let val_a = side_node::utils::fake_generic_transaction_json(String::from("a"));
|
let val_a = crdt_node::utils::fake_generic_transaction_json(String::from("a"));
|
||||||
let val_b = side_node::utils::fake_generic_transaction_json(String::from("b"));
|
let val_b = crdt_node::utils::fake_generic_transaction_json(String::from("b"));
|
||||||
let val_c = side_node::utils::fake_generic_transaction_json(String::from("c"));
|
let val_c = crdt_node::utils::fake_generic_transaction_json(String::from("c"));
|
||||||
|
|
||||||
let _a = crdt1
|
let _a = crdt1
|
||||||
.doc
|
.doc
|
||||||
|
|||||||
@@ -2,9 +2,7 @@ use bft_json_crdt::{
|
|||||||
json_crdt::{BaseCrdt, SignedOp},
|
json_crdt::{BaseCrdt, SignedOp},
|
||||||
keypair::make_keypair,
|
keypair::make_keypair,
|
||||||
};
|
};
|
||||||
use side_node::{
|
use crdt_node::{bft_crdt::websocket::Client, bft_crdt::TransactionList, node::SideNode, utils};
|
||||||
bft_crdt::websocket::Client, bft_crdt::TransactionList, bitcoin, node::SideNode, utils,
|
|
||||||
};
|
|
||||||
use tokio::sync::mpsc;
|
use tokio::sync::mpsc;
|
||||||
|
|
||||||
#[tokio::test]
|
#[tokio::test]
|
||||||
@@ -37,9 +35,9 @@ async fn test_distribute_via_websockets() {
|
|||||||
async fn setup(_: &str) -> SideNode {
|
async fn setup(_: &str) -> SideNode {
|
||||||
// First, load up the keys and create a bft-bft-crdt
|
// First, load up the keys and create a bft-bft-crdt
|
||||||
let bft_crdt_keys = make_keypair();
|
let bft_crdt_keys = make_keypair();
|
||||||
let mnemonic_words = bitcoin::keys::make_mnemonic();
|
// let mnemonic_words = bitcoin::keys::make_mnemonic();
|
||||||
let keys = bitcoin::keys::get(mnemonic_words).unwrap();
|
// let keys = bitcoin::keys::get(mnemonic_words).unwrap();
|
||||||
let bitcoin_wallet = bitcoin::clients::electrum::create_wallet(keys).unwrap();
|
// let bitcoin_wallet = bitcoin::clients::electrum::create_wallet(keys).unwrap();
|
||||||
let crdt = BaseCrdt::<TransactionList>::new(&bft_crdt_keys);
|
let crdt = BaseCrdt::<TransactionList>::new(&bft_crdt_keys);
|
||||||
|
|
||||||
// Channels for internal communication, and a tokio task for stdin input
|
// Channels for internal communication, and a tokio task for stdin input
|
||||||
@@ -51,7 +49,7 @@ async fn setup(_: &str) -> SideNode {
|
|||||||
let node = SideNode::new(
|
let node = SideNode::new(
|
||||||
crdt,
|
crdt,
|
||||||
bft_crdt_keys,
|
bft_crdt_keys,
|
||||||
bitcoin_wallet,
|
// bitcoin_wallet,
|
||||||
incoming_receiver,
|
incoming_receiver,
|
||||||
stdin_receiver,
|
stdin_receiver,
|
||||||
handle,
|
handle,
|
||||||
|
|||||||
@@ -6,9 +6,9 @@ edition = "2021"
|
|||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
async-trait = "0.1.52"
|
async-trait = "0.1.88"
|
||||||
ezsockets = { version = "*", features = ["tungstenite"] }
|
ezsockets = { version = "*", features = ["tungstenite"] }
|
||||||
sha256 = "1.5.0"
|
sha256 = "1.6.0"
|
||||||
tokio = { version = "1.17.0", features = ["full"] }
|
tokio = { version = "1.45.1", features = ["full"] }
|
||||||
tracing = "0.1.32"
|
tracing = "0.1.41"
|
||||||
tracing-subscriber = "0.3.9"
|
tracing-subscriber = "0.3.19"
|
||||||
|
|||||||
Reference in New Issue
Block a user