From df9f96d0e6a57206c3d46343a44808827d69a8a4 Mon Sep 17 00:00:00 2001 From: hal3e Date: Tue, 3 Sep 2024 22:12:20 +0200 Subject: [PATCH 01/18] fuel-client: default to `Unknown` transaction type --- crates/client/src/client.rs | 2 +- crates/client/src/client/types.rs | 56 +++++++++++++++++++++++++++++-- tests/tests/tx/predicates.rs | 6 ++-- tests/tests/tx/tx_pointer.rs | 26 +++++++++----- tests/tests/tx/utxo_validation.rs | 6 ++-- 5 files changed, 80 insertions(+), 16 deletions(-) diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index 512bac9e5ce..8806a824fd0 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -1106,7 +1106,7 @@ impl FuelClient { pub async fn transparent_transaction( &self, id: &TxId, - ) -> io::Result> { + ) -> io::Result> { let query = schema::tx::TransactionQuery::build(TxIdArgs { id: (*id).into() }); let transaction = self.query(query).await?.transaction; diff --git a/crates/client/src/client/types.rs b/crates/client/src/client/types.rs index 3e8d51daba4..d9bae8a0018 100644 --- a/crates/client/src/client/types.rs +++ b/crates/client/src/client/types.rs @@ -49,8 +49,14 @@ use crate::client::schema::{ }; use fuel_core_types::{ fuel_tx::{ + Blob as BlobTx, + Create, + Mint, Receipt, + Script, Transaction, + Upgrade, + Upload, }, fuel_types::{ canonical::Deserialize, @@ -90,10 +96,53 @@ pub mod primitives { #[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)] pub struct TransactionResponse { - pub transaction: Transaction, + pub transaction: TransactionType, pub status: TransactionStatus, } +#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)] +#[allow(clippy::large_enum_variant)] +pub enum TransactionType { + Script(Script), + Create(Create), + Mint(Mint), + Upgrade(Upgrade), + Upload(Upload), + Blob(BlobTx), + Unknown, +} + +impl From for TransactionType { + fn from(value: Transaction) -> Self { + match value { + Transaction::Script(tx) => Self::Script(tx), + Transaction::Create(tx) => Self::Create(tx), + Transaction::Mint(tx) => Self::Mint(tx), + Transaction::Upgrade(tx) => Self::Upgrade(tx), + Transaction::Upload(tx) => Self::Upload(tx), + Transaction::Blob(tx) => Self::Blob(tx), + } + } +} + +impl TryFrom for Transaction { + type Error = ConversionError; + + fn try_from(value: TransactionType) -> Result { + match value { + TransactionType::Script(tx) => Ok(Self::Script(tx)), + TransactionType::Create(tx) => Ok(Self::Create(tx)), + TransactionType::Mint(tx) => Ok(Self::Mint(tx)), + TransactionType::Upgrade(tx) => Ok(Self::Upgrade(tx)), + TransactionType::Upload(tx) => Ok(Self::Upload(tx)), + TransactionType::Blob(tx) => Ok(Self::Blob(tx)), + TransactionType::Unknown => { + Err(ConversionError::UnknownVariant("Transaction")) + } + } + } +} + #[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)] pub enum TransactionStatus { Submitted { @@ -177,8 +226,9 @@ impl TryFrom for TransactionResponse { fn try_from(value: OpaqueTransactionWithStatus) -> Result { let bytes = value.raw_payload.0 .0; - let tx: Transaction = Transaction::from_bytes(bytes.as_slice()) - .map_err(ConversionError::TransactionFromBytesError)?; + let tx: TransactionType = Transaction::from_bytes(bytes.as_slice()) + .map(Into::into) + .unwrap_or(TransactionType::Unknown); let status = value .status .ok_or_else(|| ConversionError::MissingField("status".to_string()))? diff --git a/tests/tests/tx/predicates.rs b/tests/tests/tx/predicates.rs index 998b33f064c..25174fa8ec5 100644 --- a/tests/tests/tx/predicates.rs +++ b/tests/tests/tx/predicates.rs @@ -85,13 +85,15 @@ async fn transaction_with_valid_predicate_is_executed() { .unwrap(); // check transaction change amount to see if predicate was spent - let transaction = context + let transaction: Transaction = context .client .transaction(&predicate_tx.id(&ChainId::default())) .await .unwrap() .unwrap() - .transaction; + .transaction + .try_into() + .unwrap(); assert!( matches!(transaction.as_script().unwrap().outputs()[0], Output::Change { amount: change_amount, .. } if change_amount == amount) diff --git a/tests/tests/tx/tx_pointer.rs b/tests/tests/tx/tx_pointer.rs index 177715fc2dc..6d82b2ea6f7 100644 --- a/tests/tests/tx/tx_pointer.rs +++ b/tests/tests/tx/tx_pointer.rs @@ -17,6 +17,7 @@ use fuel_core_types::{ Input, Output, Script, + Transaction, TransactionBuilder, TxPointer, UniqueIdentifier, @@ -80,12 +81,14 @@ async fn tx_pointer_set_from_genesis_for_coin_and_contract_inputs() { client.submit_and_await_commit(&tx).await.unwrap(); // verify that the tx returned from the api has tx pointers set matching the genesis config - let ret_tx = client + let ret_tx: Transaction = client .transaction(&tx.id(&Default::default())) .await .unwrap() .unwrap() - .transaction; + .transaction + .try_into() + .unwrap(); let ret_script = ret_tx.as_script().unwrap(); let coin_input = &ret_script.inputs()[0]; @@ -136,12 +139,14 @@ async fn tx_pointer_set_from_previous_block() { let tx1 = tx1.into(); client.submit_and_await_commit(&tx1).await.unwrap(); let next_block_height_after_genesis = new_genesis_block_height + 1; - let ret_tx1 = client + let ret_tx1: Transaction = client .transaction(&tx1.id(&Default::default())) .await .unwrap() .unwrap() - .transaction; + .transaction + .try_into() + .unwrap(); let ret_tx1 = ret_tx1.as_script().unwrap(); // setup a second transaction that uses UTXOs from tx1 @@ -155,12 +160,14 @@ async fn tx_pointer_set_from_previous_block() { let tx2 = tx2.into(); client.submit_and_await_commit(&tx2).await.unwrap(); - let ret_tx2 = client + let ret_tx2: Transaction = client .transaction(&tx2.id(&Default::default())) .await .unwrap() .unwrap() - .transaction; + .transaction + .try_into() + .unwrap(); let ret_tx2 = ret_tx2.as_script().unwrap(); @@ -204,12 +211,15 @@ async fn tx_pointer_unset_when_utxo_validation_disabled() { let tx = script.into(); client.submit_and_await_commit(&tx).await.unwrap(); - let ret_tx = client + let ret_tx: Transaction = client .transaction(&tx.id(&Default::default())) .await .unwrap() .unwrap() - .transaction; + .transaction + .try_into() + .unwrap(); + let ret_tx = ret_tx.as_script().unwrap(); // verify coin input tx_pointer is null assert_eq!( diff --git a/tests/tests/tx/utxo_validation.rs b/tests/tests/tx/utxo_validation.rs index 286f5c096a4..67333b0e4e4 100644 --- a/tests/tests/tx/utxo_validation.rs +++ b/tests/tests/tx/utxo_validation.rs @@ -74,12 +74,14 @@ async fn submit_utxo_verified_tx_with_min_gas_price() { let tx = tx.into(); client.submit_and_await_commit(&tx).await.unwrap(); // verify that the tx returned from the api matches the submitted tx - let ret_tx = client + let ret_tx: Transaction = client .transaction(&tx.id(&ChainId::default())) .await .unwrap() .unwrap() - .transaction; + .transaction + .try_into() + .unwrap(); let transaction_result = client .transaction_status(&ret_tx.id(&ChainId::default())) From 43ee0538d9b5b1195b7298a6929da851396f76d6 Mon Sep 17 00:00:00 2001 From: hal3e Date: Mon, 16 Sep 2024 16:05:24 +0200 Subject: [PATCH 02/18] Work in progress --- Cargo.lock | 395 +++++++++++++----- Cargo.toml | 2 +- crates/client/src/client.rs | 100 +---- crates/client/src/client/schema/block.rs | 4 +- crates/client/src/client/schema/chain.rs | 25 ++ crates/client/src/client/schema/tx.rs | 2 +- .../src/client/schema/tx/transparent_tx.rs | 4 +- 7 files changed, 328 insertions(+), 204 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e3f3c8b3869..b910cfe6fcc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -91,6 +91,12 @@ dependencies = [ "memchr", ] +[[package]] +name = "aliasable" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd" + [[package]] name = "allocator-api2" version = "0.2.18" @@ -169,9 +175,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.88" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e1496f8fb1fbf272686b8d37f523dab3e4a7443300055e74cdaa449f3114356" +checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" [[package]] name = "arbitrary" @@ -191,12 +197,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" -[[package]] -name = "ascii" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" - [[package]] name = "ascii-canvas" version = "3.0.0" @@ -377,7 +377,7 @@ checksum = "f1141703c11c6ad4fa9b3b0e1e476dea01dbd18a44db00f949b804afaab2f344" dependencies = [ "Inflector", "async-graphql-parser", - "darling 0.20.10", + "darling", "proc-macro-crate", "proc-macro2", "quote", @@ -917,7 +917,7 @@ dependencies = [ "http-body 0.4.6", "http-body 1.0.1", "httparse", - "hyper", + "hyper 0.14.30", "hyper-rustls", "once_cell", "pin-project-lite", @@ -1006,7 +1006,7 @@ dependencies = [ "futures-util", "http 0.2.12", "http-body 0.4.6", - "hyper", + "hyper 0.14.30", "itoa", "matchit", "memchr", @@ -1016,7 +1016,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 0.1.2", "tokio", "tower", "tower-http", @@ -1108,6 +1108,12 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" +[[package]] +name = "beef" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" + [[package]] name = "bindgen" version = "0.65.1" @@ -1330,9 +1336,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.1.18" +version = "1.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b62ac837cdb5cb22e10a256099b4fc502b1dfe560cb282963a974d7abd80e476" +checksum = "2d74707dde2ba56f86ae90effb3b43ddd369504387e718014de010cec7959800" dependencies = [ "jobserver", "libc", @@ -1589,19 +1595,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" -[[package]] -name = "combine" -version = "3.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da3da6baa321ec19e1cc41d31bf599f00c783d0517095cdaf0332e3fe8d20680" -dependencies = [ - "ascii", - "byteorder", - "either", - "memchr", - "unreachable", -] - [[package]] name = "concurrent-queue" version = "2.5.0" @@ -2106,12 +2099,13 @@ dependencies = [ [[package]] name = "cynic" -version = "2.2.8" +version = "3.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1afa0591b1021e427e548a1f0f147fe6168f6c7c7f7006bace77f28856051b8" +checksum = "394a4797bda697d5e028f3bc3fcb8c8c374a2b72cf8d22e0efc0e127c95fd11f" dependencies = [ "cynic-proc-macros", - "reqwest", + "ref-cast", + "reqwest 0.12.7", "serde", "serde_json", "static_assertions", @@ -2120,38 +2114,43 @@ dependencies = [ [[package]] name = "cynic-codegen" -version = "2.2.8" +version = "3.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a1bb05cc554f46079d0fa72abe995a2d32d0737d410a41da75b31e3f7ef768" +checksum = "408ad3d9c8d729e4d89e1aaed76eab918f76169f1bb3aa017c9fc1b39dac3066" dependencies = [ "counter", - "darling 0.13.4", - "graphql-parser", + "cynic-parser", + "darling", "once_cell", + "ouroboros", "proc-macro2", "quote", "strsim 0.10.0", - "syn 1.0.109", + "syn 2.0.77", + "thiserror", ] [[package]] -name = "cynic-proc-macros" -version = "2.2.8" +name = "cynic-parser" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa595c4ed7a5374e0e58c5c34f9d93bd6b7d45062790963bd4b4c3c0bf520c4d" +checksum = "718f6cd8c54ae5249fd42b0c86639df0100b8a86eea2e5f1b915cde2e1481453" dependencies = [ - "cynic-codegen", - "syn 1.0.109", + "indexmap 2.5.0", + "lalrpop-util", + "logos", ] [[package]] -name = "darling" -version = "0.13.4" +name = "cynic-proc-macros" +version = "3.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" +checksum = "7f72af69ebf914a975468c4f7e3f81ddc5482e140dd98032d90e7602c535681d" dependencies = [ - "darling_core 0.13.4", - "darling_macro 0.13.4", + "cynic-codegen", + "darling", + "quote", + "syn 2.0.77", ] [[package]] @@ -2160,22 +2159,8 @@ version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" dependencies = [ - "darling_core 0.20.10", - "darling_macro 0.20.10", -] - -[[package]] -name = "darling_core" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.10.0", - "syn 1.0.109", + "darling_core", + "darling_macro", ] [[package]] @@ -2192,24 +2177,13 @@ dependencies = [ "syn 2.0.77", ] -[[package]] -name = "darling_macro" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" -dependencies = [ - "darling_core 0.13.4", - "quote", - "syn 1.0.109", -] - [[package]] name = "darling_macro" version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ - "darling_core 0.20.10", + "darling_core", "quote", "syn 2.0.77", ] @@ -2752,7 +2726,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", "syn 2.0.77", @@ -2814,7 +2788,7 @@ checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" dependencies = [ "chrono", "ethers-core", - "reqwest", + "reqwest 0.11.27", "semver", "serde", "serde_json", @@ -2839,7 +2813,7 @@ dependencies = [ "futures-locks", "futures-util", "instant", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", "thiserror", @@ -2872,7 +2846,7 @@ dependencies = [ "jsonwebtoken", "once_cell", "pin-project", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", "thiserror", @@ -2935,7 +2909,7 @@ dependencies = [ "tokio", "tracing", "walkdir", - "yansi", + "yansi 0.5.1", ] [[package]] @@ -2989,7 +2963,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c80c6714d1a380314fcb11a22eeff022e1e1c9642f0bb54e15dc9cb29f37b29" dependencies = [ "futures", - "hyper", + "hyper 0.14.30", "hyper-rustls", "hyper-timeout", "log", @@ -3170,7 +3144,7 @@ dependencies = [ "fuel-core-upgradable-executor", "futures", "hex", - "hyper", + "hyper 0.14.30", "indicatif", "itertools 0.12.1", "mockall", @@ -3311,7 +3285,7 @@ dependencies = [ "hyper-rustls", "insta", "itertools 0.12.1", - "reqwest", + "reqwest 0.11.27", "schemafy_lib", "serde", "serde_json", @@ -3407,7 +3381,7 @@ dependencies = [ "fuel-gas-price-algorithm", "futures", "num_enum", - "reqwest", + "reqwest 0.11.27", "serde", "strum 0.25.0", "strum_macros 0.25.3", @@ -3668,7 +3642,7 @@ dependencies = [ "fuel-core-upgradable-executor", "futures", "hex", - "hyper", + "hyper 0.14.30", "insta", "itertools 0.12.1", "k256", @@ -3676,7 +3650,7 @@ dependencies = [ "primitive-types", "proptest", "rand", - "reqwest", + "reqwest 0.11.27", "rstest", "serde_json", "spki", @@ -4166,16 +4140,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "graphql-parser" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ebc8013b4426d5b81a4364c419a95ed0b404af2b82e2457de52d9348f0e474" -dependencies = [ - "combine", - "thiserror", -] - [[package]] name = "group" version = "0.13.0" @@ -4541,6 +4505,25 @@ dependencies = [ "want", ] +[[package]] +name = "hyper" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "httparse", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + [[package]] name = "hyper-rustls" version = "0.24.2" @@ -4549,7 +4532,7 @@ checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" dependencies = [ "futures-util", "http 0.2.12", - "hyper", + "hyper 0.14.30", "log", "rustls 0.21.12", "rustls-native-certs", @@ -4564,12 +4547,32 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" dependencies = [ - "hyper", + "hyper 0.14.30", "pin-project-lite", "tokio", "tokio-io-timeout", ] +[[package]] +name = "hyper-util" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da62f120a8a37763efb0cf8fdf264b884c7b8b9ac8660b900c8661030c00e6ba" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "hyper 1.4.1", + "pin-project-lite", + "socket2 0.5.7", + "tokio", + "tower", + "tower-service", + "tracing", +] + [[package]] name = "iana-time-zone" version = "0.1.60" @@ -4676,7 +4679,7 @@ dependencies = [ "bytes", "futures", "http 0.2.12", - "hyper", + "hyper 0.14.30", "log", "rand", "tokio", @@ -5708,6 +5711,39 @@ dependencies = [ "value-bag", ] +[[package]] +name = "logos" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff1ceb190eb9bdeecdd8f1ad6a71d6d632a50905948771718741b5461fb01e13" +dependencies = [ + "logos-derive", +] + +[[package]] +name = "logos-codegen" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90be66cb7bd40cb5cc2e9cfaf2d1133b04a3d93b72344267715010a466e0915a" +dependencies = [ + "beef", + "fnv", + "lazy_static", + "proc-macro2", + "quote", + "regex-syntax 0.8.4", + "syn 2.0.77", +] + +[[package]] +name = "logos-derive" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45154231e8e96586b39494029e58f12f8ffcb5ecf80333a603a13aa205ea8cbd" +dependencies = [ + "logos-codegen", +] + [[package]] name = "lru" version = "0.12.4" @@ -6338,6 +6374,31 @@ version = "6.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1" +[[package]] +name = "ouroboros" +version = "0.18.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "944fa20996a25aded6b4795c6d63f10014a7a83f8be9828a11860b08c5fc4a67" +dependencies = [ + "aliasable", + "ouroboros_macro", + "static_assertions", +] + +[[package]] +name = "ouroboros_macro" +version = "0.18.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39b0deead1528fd0e5947a8546a9642a9777c25f6e1e26f34c97b204bbb465bd" +dependencies = [ + "heck 0.4.1", + "itertools 0.12.1", + "proc-macro2", + "proc-macro2-diagnostics", + "quote", + "syn 2.0.77", +] + [[package]] name = "outref" version = "0.5.1" @@ -6838,12 +6899,12 @@ dependencies = [ [[package]] name = "pretty_assertions" -version = "1.4.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66" +checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" dependencies = [ "diff", - "yansi", + "yansi 1.0.1", ] [[package]] @@ -6921,6 +6982,19 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "proc-macro2-diagnostics" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", + "version_check", + "yansi 1.0.1", +] + [[package]] name = "prometheus-client" version = "0.22.3" @@ -7024,7 +7098,7 @@ dependencies = [ "log", "names", "prost", - "reqwest", + "reqwest 0.11.27", "thiserror", "url", "winapi", @@ -7277,6 +7351,26 @@ dependencies = [ "thiserror", ] +[[package]] +name = "ref-cast" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf0a6f84d5f1d581da8b41b47ec8600871962f2a528115b542b362d4b744931" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] + [[package]] name = "regalloc2" version = "0.9.3" @@ -7356,7 +7450,7 @@ dependencies = [ "h2", "http 0.2.12", "http-body 0.4.6", - "hyper", + "hyper 0.14.30", "hyper-rustls", "ipnet", "js-sys", @@ -7370,7 +7464,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 0.1.2", "system-configuration", "tokio", "tokio-rustls", @@ -7383,6 +7477,41 @@ dependencies = [ "winreg", ] +[[package]] +name = "reqwest" +version = "0.12.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8f4955649ef5c38cc7f9e8aa41761d48fb9677197daea9984dc54f56aad5e63" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures-core", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "once_cell", + "percent-encoding", + "pin-project-lite", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "tokio", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "windows-registry", +] + [[package]] name = "resolv-conf" version = "0.7.0" @@ -7973,7 +8102,7 @@ version = "3.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8fee4991ef4f274617a51ad4af30519438dacb2f56ac773b08a1922ff743350" dependencies = [ - "darling 0.20.10", + "darling", "proc-macro2", "quote", "syn 2.0.77", @@ -8402,7 +8531,7 @@ dependencies = [ "fs2", "hex", "once_cell", - "reqwest", + "reqwest 0.11.27", "semver", "serde", "serde_json", @@ -8463,6 +8592,15 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +[[package]] +name = "sync_wrapper" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +dependencies = [ + "futures-core", +] + [[package]] name = "synstructure" version = "0.13.1" @@ -8619,7 +8757,7 @@ dependencies = [ "futures", "itertools 0.12.1", "rand", - "reqwest", + "reqwest 0.11.27", "tempfile", "tokio", ] @@ -9176,15 +9314,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "unreachable" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" -dependencies = [ - "void", -] - [[package]] name = "unsafe-libyaml" version = "0.2.11" @@ -9729,6 +9858,36 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-registry" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +dependencies = [ + "windows-result", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result", + "windows-targets 0.52.6", +] + [[package]] name = "windows-sys" version = "0.48.0" @@ -10037,6 +10196,12 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" +[[package]] +name = "yansi" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" + [[package]] name = "yasna" version = "0.5.2" diff --git a/Cargo.toml b/Cargo.toml index 22acb83d586..07d174c7e07 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -90,7 +90,7 @@ fuel-vm-private = { version = "0.56.0", package = "fuel-vm", default-features = # Common dependencies anyhow = "1.0" async-trait = "0.1" -cynic = { version = "2.2.1", features = ["http-reqwest"] } +cynic = { version = "3.0.0", features = ["http-reqwest"] } clap = "4.4" derivative = { version = "2" } derive_more = { version = "0.99" } diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index 8806a824fd0..6aa684aea87 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -1,28 +1,18 @@ use crate::client::{ schema::{ block::BlockByHeightArgs, - coins::{ - ExcludeInput, - SpendQueryElementInput, - }, + coins::{ExcludeInput, SpendQueryElementInput}, contract::ContractBalanceQueryArgs, gas_price::EstimateGasPrice, message::MessageStatusArgs, relayed_tx::RelayedTransactionStatusArgs, tx::DryRunArg, - Tai64Timestamp, - TransactionId, + Tai64Timestamp, TransactionId, }, types::{ gas_price::LatestGasPrice, message::MessageStatus, - primitives::{ - Address, - AssetId, - BlockId, - ContractId, - UtxoId, - }, + primitives::{Address, AssetId, BlockId, ContractId, UtxoId}, upgrades::StateTransitionBytecode, RelayedTransactionStatus, }, @@ -31,100 +21,44 @@ use anyhow::Context; #[cfg(feature = "subscriptions")] use cynic::StreamingOperation; use cynic::{ - http::ReqwestExt, - GraphQlResponse, - Id, - MutationBuilder, - Operation, - QueryBuilder, + http::ReqwestExt, GraphQlResponse, Id, MutationBuilder, Operation, QueryBuilder, }; use fuel_core_types::{ - fuel_asm::{ - Instruction, - Word, - }, - fuel_tx::{ - BlobId, - Bytes32, - ConsensusParameters, - Receipt, - Transaction, - TxId, - }, - fuel_types::{ - self, - canonical::Serialize, - BlockHeight, - Nonce, - }, + fuel_asm::{Instruction, Word}, + fuel_tx::{BlobId, Bytes32, ConsensusParameters, Receipt, Transaction, TxId}, + fuel_types::{self, canonical::Serialize, BlockHeight, Nonce}, services::executor::TransactionExecutionStatus, }; #[cfg(feature = "subscriptions")] -use futures::{ - Stream, - StreamExt, -}; +use futures::{Stream, StreamExt}; use itertools::Itertools; -use pagination::{ - PageDirection, - PaginatedResult, - PaginationRequest, -}; +use pagination::{PageDirection, PaginatedResult, PaginationRequest}; use schema::{ balance::BalanceArgs, blob::BlobByIdArgs, block::BlockByIdArgs, coins::CoinByIdArgs, contract::ContractByIdArgs, - tx::{ - TxArg, - TxIdArgs, - }, - Bytes, - ContinueTx, - ContinueTxArgs, - ConversionError, - HexString, - IdArg, - MemoryArgs, - RegisterArgs, - RunResult, - SetBreakpoint, - SetBreakpointArgs, - SetSingleStepping, - SetSingleSteppingArgs, - StartTx, - StartTxArgs, - U32, - U64, + tx::{TxArg, TxIdArgs}, + Bytes, ContinueTx, ContinueTxArgs, ConversionError, HexString, IdArg, MemoryArgs, + RegisterArgs, RunResult, SetBreakpoint, SetBreakpointArgs, SetSingleStepping, + SetSingleSteppingArgs, StartTx, StartTxArgs, U32, U64, }; #[cfg(feature = "subscriptions")] use std::future; use std::{ convert::TryInto, - io::{ - self, - ErrorKind, - }, + io::{self, ErrorKind}, net, - str::{ - self, - FromStr, - }, + str::{self, FromStr}, }; use tai64::Tai64; use tracing as _; -use types::{ - TransactionResponse, - TransactionStatus, -}; +use types::{TransactionResponse, TransactionStatus}; use self::schema::{ block::ProduceBlockArgs, - message::{ - MessageProofArgs, - NonceArgs, - }, + message::{MessageProofArgs, NonceArgs}, }; pub mod pagination; diff --git a/crates/client/src/client/schema/block.rs b/crates/client/src/client/schema/block.rs index e159d44bc9a..d6772dd0b03 100644 --- a/crates/client/src/client/schema/block.rs +++ b/crates/client/src/client/schema/block.rs @@ -2,7 +2,7 @@ use super::Bytes32; use crate::client::schema::{ schema, BlockId, - ConnectionArgs, + ConnectionArgsFields, PageInfo, Signature, Tai64Timestamp, @@ -226,7 +226,7 @@ mod tests { #[test] fn blocks_connection_query_gql_output() { use cynic::QueryBuilder; - let operation = BlocksQuery::build(ConnectionArgs { + let operation = BlocksQuery::build(crate::client::schema::ConnectionArgs { after: None, before: None, first: None, diff --git a/crates/client/src/client/schema/chain.rs b/crates/client/src/client/schema/chain.rs index 7cafc355543..1b18ceaff63 100644 --- a/crates/client/src/client/schema/chain.rs +++ b/crates/client/src/client/schema/chain.rs @@ -29,6 +29,8 @@ pub struct ConsensusParameters { #[cynic(schema_path = "./assets/schema.sdl")] pub enum ConsensusParametersVersion { V1, + #[cynic(fallback)] + Unknown, } #[derive(cynic::QueryFragment, Clone, Debug)] @@ -47,6 +49,8 @@ pub struct TxParameters { #[cynic(schema_path = "./assets/schema.sdl")] pub enum TxParametersVersion { V1, + #[cynic(fallback)] + Unknown, } impl TryFrom for fuel_core_types::fuel_tx::TxParameters { @@ -65,6 +69,7 @@ impl TryFrom for fuel_core_types::fuel_tx::TxParameters { } .into(), ), + _ => Err(ConversionError::UnknownVariant("TxParametersVersion")), } } } @@ -83,6 +88,8 @@ pub struct PredicateParameters { #[cynic(schema_path = "./assets/schema.sdl")] pub enum PredicateParametersVersion { V1, + #[cynic(fallback)] + Unknown, } impl TryFrom for fuel_core_types::fuel_tx::PredicateParameters { @@ -99,6 +106,9 @@ impl TryFrom for fuel_core_types::fuel_tx::PredicateParamet } .into(), ), + _ => Err(ConversionError::UnknownVariant( + "PredicateParametersVersion", + )), } } } @@ -115,6 +125,8 @@ pub struct ScriptParameters { #[cynic(schema_path = "./assets/schema.sdl")] pub enum ScriptParametersVersion { V1, + #[cynic(fallback)] + Unknown, } impl TryFrom for fuel_core_types::fuel_tx::ScriptParameters { @@ -129,6 +141,7 @@ impl TryFrom for fuel_core_types::fuel_tx::ScriptParameters { } .into(), ), + _ => Err(ConversionError::UnknownVariant("ScriptParametersVersion")), } } } @@ -145,6 +158,8 @@ pub struct ContractParameters { #[cynic(schema_path = "./assets/schema.sdl")] pub enum ContractParametersVersion { V1, + #[cynic(fallback)] + Unknown, } impl TryFrom for fuel_core_types::fuel_tx::ContractParameters { @@ -159,6 +174,7 @@ impl TryFrom for fuel_core_types::fuel_tx::ContractParameter } .into(), ), + _ => Err(ConversionError::UnknownVariant("ContractParametersVersion")), } } } @@ -175,6 +191,8 @@ pub struct FeeParameters { #[cynic(schema_path = "./assets/schema.sdl")] pub enum FeeParametersVersion { V1, + #[cynic(fallback)] + Unknown, } impl TryFrom for fuel_core_types::fuel_tx::FeeParameters { @@ -189,6 +207,7 @@ impl TryFrom for fuel_core_types::fuel_tx::FeeParameters { } .into(), ), + _ => Err(ConversionError::UnknownVariant("FeeParametersVersion")), } } } @@ -320,6 +339,8 @@ pub struct GasCosts { #[cynic(schema_path = "./assets/schema.sdl")] pub enum GasCostsVersion { V1, + #[cynic(fallback)] + Unknown, } impl TryFrom for fuel_core_types::fuel_tx::GasCosts { @@ -446,6 +467,7 @@ impl TryFrom for fuel_core_types::fuel_tx::GasCosts { } .into(), )), + _ => Err(ConversionError::UnknownVariant("GasCostsVersion")), } } } @@ -493,6 +515,9 @@ impl TryFrom for fuel_core_types::fuel_tx::ConsensusParamet } .into(), ), + _ => Err(ConversionError::UnknownVariant( + "ConsensusParametersVersion", + )), } } } diff --git a/crates/client/src/client/schema/tx.rs b/crates/client/src/client/schema/tx.rs index f97eb4aff41..56a2798c0b4 100644 --- a/crates/client/src/client/schema/tx.rs +++ b/crates/client/src/client/schema/tx.rs @@ -3,7 +3,7 @@ use crate::client::{ schema, tx::transparent_receipt::Receipt, Address, - ConnectionArgs, + ConnectionArgsFields, ConversionError, HexString, PageInfo, diff --git a/crates/client/src/client/schema/tx/transparent_tx.rs b/crates/client/src/client/schema/tx/transparent_tx.rs index 4bce1dd17c8..8d5f3e7e990 100644 --- a/crates/client/src/client/schema/tx/transparent_tx.rs +++ b/crates/client/src/client/schema/tx/transparent_tx.rs @@ -2,13 +2,13 @@ use crate::client::schema::{ schema, tx::{ TransactionStatus, - TxIdArgs, + TxIdArgsFields, }, Address, AssetId, BlobId, Bytes32, - ConnectionArgs, + ConnectionArgsFields, ContractId, ConversionError, HexString, From 2e6344a0a6981a6ab4721edf9a73ff4742517620 Mon Sep 17 00:00:00 2001 From: hal3e Date: Tue, 17 Sep 2024 15:23:47 +0200 Subject: [PATCH 03/18] add `Unknown` variant to CParams and children --- Cargo.lock | 115 ++++++++++---- Cargo.toml | 4 +- .../state_transition_bytecode.wasm | Bin crates/client/src/client.rs | 145 ++++++++++++++---- crates/client/src/client/schema/gas_price.rs | 4 +- ...ance__tests__balance_query_gql_output.snap | 4 +- ..._balances_connection_query_gql_output.snap | 4 +- ...sts__block_by_height_query_gql_output.snap | 2 +- ...__tests__block_by_id_query_gql_output.snap | 2 +- ...ests__block_mutation_query_gql_output.snap | 4 +- ...s__blocks_connection_query_gql_output.snap | 2 +- ..._chain__tests__chain_gql_query_output.snap | 2 +- ...s__tests__coin_by_id_query_gql_output.snap | 2 +- ...ts__coins_connection_query_gql_output.snap | 2 +- ...ests__contract_by_id_query_gql_output.snap | 4 +- ...__estimate_gas_price_query_gql_output.snap | 4 +- ...ts__latest_gas_price_query_gql_output.snap | 4 +- ...tests__owned_message_query_gql_output.snap | 4 +- ...fo__tests__node_info_query_gql_output.snap | 4 +- ...o__tests__peers_info_query_gql_output.snap | 4 +- ...ema__tx__tests__dry_run_tx_gql_output.snap | 2 +- ...hema__tx__tests__submit_tx_gql_output.snap | 4 +- tests/tests/blocks.rs | 1 + tests/tests/tx.rs | 86 ++++++++--- 24 files changed, 288 insertions(+), 121 deletions(-) mode change 100755 => 100644 bin/fuel-core/chainspec/local-testnet/state_transition_bytecode.wasm diff --git a/Cargo.lock b/Cargo.lock index b910cfe6fcc..87bba9fd447 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -918,7 +918,7 @@ dependencies = [ "http-body 1.0.1", "httparse", "hyper 0.14.30", - "hyper-rustls", + "hyper-rustls 0.24.2", "once_cell", "pin-project-lite", "pin-utils", @@ -1690,9 +1690,9 @@ checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" [[package]] name = "cookie" -version = "0.17.0" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24" +checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" dependencies = [ "percent-encoding", "time", @@ -1701,12 +1701,12 @@ dependencies = [ [[package]] name = "cookie_store" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6" +checksum = "4934e6b7e8419148b6ef56950d277af8561060b56afd59e2aadf98b59fce6baa" dependencies = [ "cookie", - "idna 0.3.0", + "idna 0.5.0", "log", "publicsuffix", "serde", @@ -2964,7 +2964,7 @@ checksum = "4c80c6714d1a380314fcb11a22eeff022e1e1c9642f0bb54e15dc9cb29f37b29" dependencies = [ "futures", "hyper 0.14.30", - "hyper-rustls", + "hyper-rustls 0.24.2", "hyper-timeout", "log", "pin-project", @@ -3282,10 +3282,10 @@ dependencies = [ "fuel-core-types", "futures", "hex", - "hyper-rustls", + "hyper-rustls 0.24.2", "insta", "itertools 0.12.1", - "reqwest 0.11.27", + "reqwest 0.12.7", "schemafy_lib", "serde", "serde_json", @@ -3381,7 +3381,7 @@ dependencies = [ "fuel-gas-price-algorithm", "futures", "num_enum", - "reqwest 0.11.27", + "reqwest 0.12.7", "serde", "strum 0.25.0", "strum_macros 0.25.3", @@ -3650,7 +3650,7 @@ dependencies = [ "primitive-types", "proptest", "rand", - "reqwest 0.11.27", + "reqwest 0.12.7", "rstest", "serde_json", "spki", @@ -4537,8 +4537,26 @@ dependencies = [ "rustls 0.21.12", "rustls-native-certs", "tokio", - "tokio-rustls", - "webpki-roots", + "tokio-rustls 0.24.1", + "webpki-roots 0.25.4", +] + +[[package]] +name = "hyper-rustls" +version = "0.27.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" +dependencies = [ + "futures-util", + "http 1.1.0", + "hyper 1.4.1", + "hyper-util", + "rustls 0.23.13", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.26.0", + "tower-service", + "webpki-roots 0.26.5", ] [[package]] @@ -4575,9 +4593,9 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -5549,7 +5567,7 @@ dependencies = [ "thiserror", "tracing", "url", - "webpki-roots", + "webpki-roots 0.25.4", ] [[package]] @@ -6306,9 +6324,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ea5043e58958ee56f3e15a90aee535795cd7dfd319846288d93c5b57d85cbe" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "oorandom" @@ -7442,8 +7460,6 @@ checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ "base64 0.21.7", "bytes", - "cookie", - "cookie_store", "encoding_rs", "futures-core", "futures-util", @@ -7451,7 +7467,7 @@ dependencies = [ "http 0.2.12", "http-body 0.4.6", "hyper 0.14.30", - "hyper-rustls", + "hyper-rustls 0.24.2", "ipnet", "js-sys", "log", @@ -7460,20 +7476,20 @@ dependencies = [ "percent-encoding", "pin-project-lite", "rustls 0.21.12", - "rustls-pemfile", + "rustls-pemfile 1.0.4", "serde", "serde_json", "serde_urlencoded", "sync_wrapper 0.1.2", "system-configuration", "tokio", - "tokio-rustls", + "tokio-rustls 0.24.1", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots", + "webpki-roots 0.25.4", "winreg", ] @@ -7485,12 +7501,15 @@ checksum = "f8f4955649ef5c38cc7f9e8aa41761d48fb9677197daea9984dc54f56aad5e63" dependencies = [ "base64 0.22.1", "bytes", + "cookie", + "cookie_store", "futures-core", "futures-util", "http 1.1.0", "http-body 1.0.1", "http-body-util", "hyper 1.4.1", + "hyper-rustls 0.27.3", "hyper-util", "ipnet", "js-sys", @@ -7499,16 +7518,22 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", + "quinn", + "rustls 0.23.13", + "rustls-pemfile 2.1.3", + "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", "sync_wrapper 1.0.1", "tokio", + "tokio-rustls 0.26.0", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", + "webpki-roots 0.26.5", "windows-registry", ] @@ -7752,7 +7777,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ "openssl-probe", - "rustls-pemfile", + "rustls-pemfile 1.0.4", "schannel", "security-framework", ] @@ -7766,6 +7791,16 @@ dependencies = [ "base64 0.21.7", ] +[[package]] +name = "rustls-pemfile" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "196fe16b00e106300d3e45ecfcb764fa292a535d7326a29a5875c579c7417425" +dependencies = [ + "base64 0.22.1", + "rustls-pki-types", +] + [[package]] name = "rustls-pki-types" version = "1.8.0" @@ -8757,7 +8792,7 @@ dependencies = [ "futures", "itertools 0.12.1", "rand", - "reqwest 0.11.27", + "reqwest 0.12.7", "tempfile", "tokio", ] @@ -8974,6 +9009,17 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +dependencies = [ + "rustls 0.23.13", + "rustls-pki-types", + "tokio", +] + [[package]] name = "tokio-stream" version = "0.1.16" @@ -8996,9 +9042,9 @@ dependencies = [ "log", "rustls 0.21.12", "tokio", - "tokio-rustls", + "tokio-rustls 0.24.1", "tungstenite", - "webpki-roots", + "webpki-roots 0.25.4", ] [[package]] @@ -9046,9 +9092,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.20" +version = "0.22.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" +checksum = "3b072cee73c449a636ffd6f32bd8de3a9f7119139aff882f44943ce2986dc5cf" dependencies = [ "indexmap 2.5.0", "serde", @@ -9793,6 +9839,15 @@ version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" +[[package]] +name = "webpki-roots" +version = "0.26.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bd24728e5af82c6c4ec1b66ac4844bdf8156257fccda846ec58b42cd0cdbe6a" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "widestring" version = "1.1.0" diff --git a/Cargo.toml b/Cargo.toml index 07d174c7e07..0151728cf8a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -90,7 +90,7 @@ fuel-vm-private = { version = "0.56.0", package = "fuel-vm", default-features = # Common dependencies anyhow = "1.0" async-trait = "0.1" -cynic = { version = "3.0.0", features = ["http-reqwest"] } +cynic = { version = "3.1.0", features = ["http-reqwest"] } clap = "4.4" derivative = { version = "2" } derive_more = { version = "0.99" } @@ -117,7 +117,7 @@ serde_with = { version = "3.4", default-features = false } strum = { version = "0.25" } strum_macros = "0.25" # enable cookie store to support L7 sticky sessions -reqwest = { version = "0.11.16", default-features = false, features = [ +reqwest = { version = "0.12.0", default-features = false, features = [ "rustls-tls", "cookies", ] } diff --git a/bin/fuel-core/chainspec/local-testnet/state_transition_bytecode.wasm b/bin/fuel-core/chainspec/local-testnet/state_transition_bytecode.wasm old mode 100755 new mode 100644 diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index 6aa684aea87..f2aaec81146 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -1,18 +1,28 @@ use crate::client::{ schema::{ block::BlockByHeightArgs, - coins::{ExcludeInput, SpendQueryElementInput}, + coins::{ + ExcludeInput, + SpendQueryElementInput, + }, contract::ContractBalanceQueryArgs, gas_price::EstimateGasPrice, message::MessageStatusArgs, relayed_tx::RelayedTransactionStatusArgs, tx::DryRunArg, - Tai64Timestamp, TransactionId, + Tai64Timestamp, + TransactionId, }, types::{ gas_price::LatestGasPrice, message::MessageStatus, - primitives::{Address, AssetId, BlockId, ContractId, UtxoId}, + primitives::{ + Address, + AssetId, + BlockId, + ContractId, + UtxoId, + }, upgrades::StateTransitionBytecode, RelayedTransactionStatus, }, @@ -21,44 +31,108 @@ use anyhow::Context; #[cfg(feature = "subscriptions")] use cynic::StreamingOperation; use cynic::{ - http::ReqwestExt, GraphQlResponse, Id, MutationBuilder, Operation, QueryBuilder, + http::ReqwestExt, + GraphQlResponse, + Id, + MutationBuilder, + Operation, + QueryBuilder, }; use fuel_core_types::{ - fuel_asm::{Instruction, Word}, - fuel_tx::{BlobId, Bytes32, ConsensusParameters, Receipt, Transaction, TxId}, - fuel_types::{self, canonical::Serialize, BlockHeight, Nonce}, + fuel_asm::{ + Instruction, + Word, + }, + fuel_tx::{ + BlobId, + Bytes32, + ConsensusParameters, + Receipt, + Transaction, + TxId, + }, + fuel_types::{ + self, + canonical::Serialize, + BlockHeight, + Nonce, + }, services::executor::TransactionExecutionStatus, }; #[cfg(feature = "subscriptions")] -use futures::{Stream, StreamExt}; +use futures::{ + Stream, + StreamExt, +}; use itertools::Itertools; -use pagination::{PageDirection, PaginatedResult, PaginationRequest}; +use pagination::{ + PageDirection, + PaginatedResult, + PaginationRequest, +}; use schema::{ balance::BalanceArgs, blob::BlobByIdArgs, block::BlockByIdArgs, - coins::CoinByIdArgs, - contract::ContractByIdArgs, - tx::{TxArg, TxIdArgs}, - Bytes, ContinueTx, ContinueTxArgs, ConversionError, HexString, IdArg, MemoryArgs, - RegisterArgs, RunResult, SetBreakpoint, SetBreakpointArgs, SetSingleStepping, - SetSingleSteppingArgs, StartTx, StartTxArgs, U32, U64, + coins::{ + CoinByIdArgs, + CoinsConnectionArgs, + }, + contract::{ + ContractBalancesConnectionArgs, + ContractByIdArgs, + }, + gas_price::BlockHorizonArgs, + tx::{ + TransactionsByOwnerConnectionArgs, + TxArg, + TxIdArgs, + }, + Bytes, + ContinueTx, + ContinueTxArgs, + ConversionError, + HexString, + IdArg, + MemoryArgs, + RegisterArgs, + RunResult, + SetBreakpoint, + SetBreakpointArgs, + SetSingleStepping, + SetSingleSteppingArgs, + StartTx, + StartTxArgs, + U32, + U64, }; #[cfg(feature = "subscriptions")] use std::future; use std::{ convert::TryInto, - io::{self, ErrorKind}, + io::{ + self, + ErrorKind, + }, net, - str::{self, FromStr}, + str::{ + self, + FromStr, + }, }; use tai64::Tai64; use tracing as _; -use types::{TransactionResponse, TransactionStatus}; +use types::{ + TransactionResponse, + TransactionStatus, +}; use self::schema::{ block::ProduceBlockArgs, - message::{MessageProofArgs, NonceArgs}, + message::{ + MessageProofArgs, + NonceArgs, + }, }; pub mod pagination; @@ -300,7 +374,9 @@ impl FuelClient { &self, block_horizon: u32, ) -> io::Result { - let query = schema::gas_price::QueryEstimateGasPrice::build(block_horizon.into()); + let query = schema::gas_price::QueryEstimateGasPrice::build(BlockHorizonArgs { + block_horizon: Some(block_horizon.into()), + }); self.query(query).await.map(|r| r.estimate_gas_price) } @@ -684,7 +760,8 @@ impl FuelClient { &self, request: PaginationRequest, ) -> io::Result> { - let query = schema::tx::TransactionsQuery::build(request.into()); + let query = + schema::tx::TransactionsQuery::build(schema::ConnectionArgs::from(request)); let transactions = self.query(query).await?.transactions.try_into()?; Ok(transactions) } @@ -696,7 +773,9 @@ impl FuelClient { request: PaginationRequest, ) -> io::Result> { let owner: schema::Address = (*owner).into(); - let query = schema::tx::TransactionsByOwnerQuery::build((owner, request).into()); + let query = schema::tx::TransactionsByOwnerQuery::build( + TransactionsByOwnerConnectionArgs::from((owner, request)), + ); let transactions = self.query(query).await?.transactions_by_owner.try_into()?; Ok(transactions) @@ -808,7 +887,8 @@ impl FuelClient { &self, request: PaginationRequest, ) -> io::Result> { - let query = schema::block::BlocksQuery::build(request.into()); + let query = + schema::block::BlocksQuery::build(schema::ConnectionArgs::from(request)); let blocks = self.query(query).await?.blocks.try_into()?; @@ -835,7 +915,9 @@ impl FuelClient { Some(asset_id) => (*asset_id).into(), None => schema::AssetId::default(), }; - let query = schema::coins::CoinsQuery::build((owner, asset_id, request).into()); + let query = schema::coins::CoinsQuery::build(CoinsConnectionArgs::from(( + owner, asset_id, request, + ))); let coins = self.query(query).await?.coins.into(); Ok(coins) @@ -871,7 +953,7 @@ impl FuelClient { ) .map(Into::into); let query = schema::coins::CoinsToSpendQuery::build( - (owner, spend_query, excluded_ids).into(), + schema::coins::CoinsToSpendArgs::from((owner, spend_query, excluded_ids)), ); let coins_per_asset = self @@ -935,7 +1017,9 @@ impl FuelClient { request: PaginationRequest, ) -> io::Result> { let owner: schema::Address = (*owner).into(); - let query = schema::balance::BalancesQuery::build((owner, request).into()); + let query = schema::balance::BalancesQuery::build( + schema::balance::BalancesConnectionArgs::from((owner, request)), + ); let balances = self.query(query).await?.balances.into(); Ok(balances) @@ -947,8 +1031,9 @@ impl FuelClient { request: PaginationRequest, ) -> io::Result> { let contract_id: schema::ContractId = (*contract).into(); - let query = - schema::contract::ContractBalancesQuery::build((contract_id, request).into()); + let query = schema::contract::ContractBalancesQuery::build( + ContractBalancesConnectionArgs::from((contract_id, request)), + ); let balances = self.query(query).await?.contract_balances.into(); @@ -970,7 +1055,9 @@ impl FuelClient { request: PaginationRequest, ) -> io::Result> { let owner: Option = owner.map(|owner| (*owner).into()); - let query = schema::message::OwnedMessageQuery::build((owner, request).into()); + let query = schema::message::OwnedMessageQuery::build( + schema::message::OwnedMessagesConnectionArgs::from((owner, request)), + ); let messages = self.query(query).await?.messages.into(); diff --git a/crates/client/src/client/schema/gas_price.rs b/crates/client/src/client/schema/gas_price.rs index 703df3f2801..c9883ad3476 100644 --- a/crates/client/src/client/schema/gas_price.rs +++ b/crates/client/src/client/schema/gas_price.rs @@ -62,7 +62,9 @@ mod tests { fn estimate_gas_price_query_gql_output() { use cynic::QueryBuilder; let arbitrary_horizon = 10; - let operation = QueryEstimateGasPrice::build(arbitrary_horizon.into()); + let operation = QueryEstimateGasPrice::build(BlockHorizonArgs { + block_horizon: Some(arbitrary_horizon.into()), + }); insta::assert_snapshot!(operation.query) } } diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__balance__tests__balance_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__balance__tests__balance_query_gql_output.snap index 14d5a632868..6c2a7609657 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__balance__tests__balance_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__balance__tests__balance_query_gql_output.snap @@ -2,12 +2,10 @@ source: crates/client/src/client/schema/balance.rs expression: operation.query --- -query($owner: Address!, $assetId: AssetId!) { +query BalanceQuery($owner: Address!, $assetId: AssetId!) { balance(owner: $owner, assetId: $assetId) { owner amount assetId } } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__balance__tests__balances_connection_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__balance__tests__balances_connection_query_gql_output.snap index b5043c6a2ea..20a5833cd99 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__balance__tests__balances_connection_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__balance__tests__balances_connection_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/balance.rs expression: operation.query --- -query($filter: BalanceFilterInput!, $after: String, $before: String, $first: Int, $last: Int) { +query BalancesQuery($filter: BalanceFilterInput!, $after: String, $before: String, $first: Int, $last: Int) { balances(filter: $filter, after: $after, before: $before, first: $first, last: $last) { edges { cursor @@ -20,5 +20,3 @@ query($filter: BalanceFilterInput!, $after: String, $before: String, $first: Int } } } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_by_height_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_by_height_query_gql_output.snap index 7f8855343cd..646548b3cbb 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_by_height_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_by_height_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/block.rs expression: operation.query --- -query($height: U32) { +query BlockByHeightQuery($height: U32) { block(height: $height) { version id diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_by_id_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_by_id_query_gql_output.snap index 0f2c57130a8..112301cfeb6 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_by_id_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_by_id_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/block.rs expression: operation.query --- -query($id: BlockId) { +query BlockByIdQuery($id: BlockId) { block(id: $id) { version id diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_mutation_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_mutation_query_gql_output.snap index 5fbb114c456..c9427af1c28 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_mutation_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__block_mutation_query_gql_output.snap @@ -2,8 +2,6 @@ source: crates/client/src/client/schema/block.rs expression: operation.query --- -mutation($startTimestamp: Tai64Timestamp, $blocksToProduce: U32!) { +mutation BlockMutation($startTimestamp: Tai64Timestamp, $blocksToProduce: U32!) { produceBlocks(blocksToProduce: $blocksToProduce, startTimestamp: $startTimestamp) } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__blocks_connection_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__blocks_connection_query_gql_output.snap index 3a0dd3d07f9..0ecbdab1de0 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__blocks_connection_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__block__tests__blocks_connection_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/block.rs expression: operation.query --- -query($after: String, $before: String, $first: Int, $last: Int) { +query BlocksQuery($after: String, $before: String, $first: Int, $last: Int) { blocks(after: $after, before: $before, first: $first, last: $last) { edges { cursor diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__chain__tests__chain_gql_query_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__chain__tests__chain_gql_query_output.snap index 50746c31bd6..d465c7a1a0d 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__chain__tests__chain_gql_query_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__chain__tests__chain_gql_query_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/chain.rs expression: operation.query --- -query { +query ChainQuery { chain { daHeight name diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__coins__tests__coin_by_id_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__coins__tests__coin_by_id_query_gql_output.snap index ab8c41dfc93..f0465c30969 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__coins__tests__coin_by_id_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__coins__tests__coin_by_id_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/coins.rs expression: operation.query --- -query($utxoId: UtxoId!) { +query CoinByIdQuery($utxoId: UtxoId!) { coin(utxoId: $utxoId) { amount blockCreated diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__coins__tests__coins_connection_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__coins__tests__coins_connection_query_gql_output.snap index a1ed7145a55..dcd3e5d5c50 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__coins__tests__coins_connection_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__coins__tests__coins_connection_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/coins.rs expression: operation.query --- -query($filter: CoinFilterInput!, $after: String, $before: String, $first: Int, $last: Int) { +query CoinsQuery($filter: CoinFilterInput!, $after: String, $before: String, $first: Int, $last: Int) { coins(filter: $filter, after: $after, before: $before, first: $first, last: $last) { edges { cursor diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__contract__tests__contract_by_id_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__contract__tests__contract_by_id_query_gql_output.snap index 3bbf3734c92..edc049bbfe9 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__contract__tests__contract_by_id_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__contract__tests__contract_by_id_query_gql_output.snap @@ -2,12 +2,10 @@ source: crates/client/src/client/schema/contract.rs expression: operation.query --- -query($id: ContractId!) { +query ContractByIdQuery($id: ContractId!) { contract(id: $id) { id bytecode salt } } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__gas_price__tests__estimate_gas_price_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__gas_price__tests__estimate_gas_price_query_gql_output.snap index 854f7608efc..fe2aca12514 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__gas_price__tests__estimate_gas_price_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__gas_price__tests__estimate_gas_price_query_gql_output.snap @@ -2,10 +2,8 @@ source: crates/client/src/client/schema/gas_price.rs expression: operation.query --- -query($blockHorizon: U32) { +query QueryEstimateGasPrice($blockHorizon: U32) { estimateGasPrice(blockHorizon: $blockHorizon) { gasPrice } } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__gas_price__tests__latest_gas_price_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__gas_price__tests__latest_gas_price_query_gql_output.snap index c39679de79c..fc4b33b8dc6 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__gas_price__tests__latest_gas_price_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__gas_price__tests__latest_gas_price_query_gql_output.snap @@ -2,11 +2,9 @@ source: crates/client/src/client/schema/gas_price.rs expression: operation.query --- -query { +query QueryLatestGasPrice { latestGasPrice { gasPrice blockHeight } } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__message__tests__owned_message_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__message__tests__owned_message_query_gql_output.snap index 74daa16a958..af69edb1e9a 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__message__tests__owned_message_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__message__tests__owned_message_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/message.rs expression: operation.query --- -query($owner: Address, $after: String, $before: String, $first: Int, $last: Int) { +query OwnedMessageQuery($owner: Address, $after: String, $before: String, $first: Int, $last: Int) { messages(owner: $owner, after: $after, before: $before, first: $first, last: $last) { edges { cursor @@ -23,5 +23,3 @@ query($owner: Address, $after: String, $before: String, $first: Int, $last: Int) } } } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__node_info__tests__node_info_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__node_info__tests__node_info_query_gql_output.snap index 1d538f92ad0..e89674bf28c 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__node_info__tests__node_info_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__node_info__tests__node_info_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/node_info.rs expression: operation.query --- -query { +query QueryNodeInfo { nodeInfo { utxoValidation vmBacktrace @@ -11,5 +11,3 @@ query { nodeVersion } } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__node_info__tests__peers_info_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__node_info__tests__peers_info_query_gql_output.snap index 3322f6ca26b..0e760be14da 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__node_info__tests__peers_info_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__node_info__tests__peers_info_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/node_info.rs expression: operation.query --- -query { +query QueryPeersInfo { nodeInfo { peers { id @@ -14,5 +14,3 @@ query { } } } - - diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__dry_run_tx_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__dry_run_tx_gql_output.snap index ec2c5cb373b..46918f4d7aa 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__dry_run_tx_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__dry_run_tx_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/tx.rs expression: query.query --- -mutation($txs: [HexString!]!, $utxoValidation: Boolean, $gasPrice: U64) { +mutation DryRun($txs: [HexString!]!, $utxoValidation: Boolean, $gasPrice: U64) { dryRun(txs: $txs, utxoValidation: $utxoValidation, gasPrice: $gasPrice) { id status { diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__submit_tx_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__submit_tx_gql_output.snap index 1b47a024b27..99aa42e9f1a 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__submit_tx_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__submit_tx_gql_output.snap @@ -2,10 +2,8 @@ source: crates/client/src/client/schema/tx.rs expression: query.query --- -mutation($tx: HexString!) { +mutation Submit($tx: HexString!) { submit(tx: $tx) { id } } - - diff --git a/tests/tests/blocks.rs b/tests/tests/blocks.rs index 53a81f5b039..655e9ad2aab 100644 --- a/tests/tests/blocks.rs +++ b/tests/tests/blocks.rs @@ -350,6 +350,7 @@ mod full_block { schema::{ block::{ BlockByHeightArgs, + BlockByHeightArgsFields, Consensus, Header, }, diff --git a/tests/tests/tx.rs b/tests/tests/tx.rs index 5719aac03ca..16a2646e8ec 100644 --- a/tests/tests/tx.rs +++ b/tests/tests/tx.rs @@ -208,12 +208,14 @@ async fn submit() { client.submit_and_await_commit(&tx).await.unwrap(); // verify that the tx returned from the api matches the submitted tx - let ret_tx = client + let ret_tx: Transaction = client .transaction(&tx.id(&ChainId::default())) .await .unwrap() .unwrap() - .transaction; + .transaction + .try_into() + .unwrap(); assert_eq!(tx.id(&ChainId::default()), ret_tx.id(&ChainId::default())); } @@ -423,8 +425,12 @@ async fn get_transactions() { .unwrap(); let transactions = &response .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); assert_eq!(transactions[0], tx1); // coinbase_tx1 @@ -460,8 +466,12 @@ async fn get_transactions() { let response = client.transactions(page_request_middle_page).await.unwrap(); let transactions = &response .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); // coinbase_tx4 assert_eq!(transactions[0], tx4); @@ -475,8 +485,12 @@ async fn get_transactions() { let response = client.transactions(page_request_backwards).await.unwrap(); let transactions = &response .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); assert_eq!(transactions[0], tx3); // transactions[1] - coinbase_tx2 @@ -490,8 +504,12 @@ async fn get_transactions() { let response = client.transactions(page_request_forwards).await.unwrap(); let transactions = &response .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); assert_eq!(transactions[0], tx4); // coinbase_tx4 @@ -665,8 +683,12 @@ async fn get_transactions_from_manual_blocks() { .unwrap(); let transactions = &response .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); assert_eq!(transactions[0], txs[0].id(&ChainId::default())); assert_eq!(transactions[1], txs[1].id(&ChainId::default())); @@ -686,8 +708,12 @@ async fn get_transactions_from_manual_blocks() { .unwrap(); let transactions = &response .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); assert_eq!(transactions[0], txs[4].id(&ChainId::default())); // coinbase_tx1 @@ -708,8 +734,12 @@ async fn get_transactions_from_manual_blocks() { .unwrap(); let transactions = &response .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); assert_eq!(transactions[0], txs[6].id(&ChainId::default())); assert_eq!(transactions[1], txs[5].id(&ChainId::default())); @@ -744,8 +774,12 @@ async fn get_owned_transactions() { .await .unwrap() .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); let bob_txs = client @@ -753,8 +787,12 @@ async fn get_owned_transactions() { .await .unwrap() .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); let charlie_txs = client @@ -762,8 +800,12 @@ async fn get_owned_transactions() { .await .unwrap() .results - .iter() - .map(|tx| tx.transaction.id(&ChainId::default())) + .into_iter() + .map(|tx| { + let tx: Transaction = tx.transaction.try_into().unwrap(); + + tx.id(&ChainId::default()) + }) .collect_vec(); assert_eq!(&alice_txs, &[tx1]); From fd676bf8d0742a865ef9d2f62a3d99056f02e596 Mon Sep 17 00:00:00 2001 From: hal3e Date: Tue, 17 Sep 2024 15:46:13 +0200 Subject: [PATCH 04/18] add changelog --- CHANGELOG.md | 119 ++++++++++++++++++++++++++------------------------- 1 file changed, 61 insertions(+), 58 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index eac583d3518..7ae7172113c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased] ### Added +- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Added `Unknown` variant to `ConsensusParameters` graphql queries +- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Added `TransactionType` type in `fuel-client` that has an `Unknown` variant - [2135](https://github.com/FuelLabs/fuel-core/pull/2135): Added metrics logging for number of blocks served over the p2p req/res protocol. - [2151](https://github.com/FuelLabs/fuel-core/pull/2151): Added limitations on gas used during dry_run in API. - [2163](https://github.com/FuelLabs/fuel-core/pull/2163): Added runnable task for fetching block committer data. @@ -14,6 +16,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed #### Breaking +- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Transaction graphql endpoints use `TransactionType` instead of `fuel_tx::Transaction` - [2145](https://github.com/FuelLabs/fuel-core/pull/2145): feat: Introduce time port in PoA service. - [2155](https://github.com/FuelLabs/fuel-core/pull/2155): Added trait declaration for block committer data - [2142](https://github.com/FuelLabs/fuel-core/pull/2142): Added benchmarks for varied forms of db lookups to assist in optimizations. @@ -117,7 +120,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). And the following CLI flags are serving a new purpose - "min-gas-price" - the minimum gas price that the gas price algorithm will return - [2045](https://github.com/FuelLabs/fuel-core/pull/2045): Include withdrawal message only if transaction is executed successfully. -- [2041](https://github.com/FuelLabs/fuel-core/pull/2041): Add code for startup of the gas price algorithm updater so +- [2041](https://github.com/FuelLabs/fuel-core/pull/2041): Add code for startup of the gas price algorithm updater so the gas price db on startup is always in sync with the on chain db ## [Version 0.31.0] @@ -231,7 +234,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed -- [#1906](https://github.com/FuelLabs/fuel-core/pull/1906): Makes `cli::snapshot::Command` members public such that clients can create and execute snapshot commands programmatically. This enables snapshot execution in external programs, such as the regenesis test suite. +- [#1906](https://github.com/FuelLabs/fuel-core/pull/1906): Makes `cli::snapshot::Command` members public such that clients can create and execute snapshot commands programmatically. This enables snapshot execution in external programs, such as the regenesis test suite. - [#1891](https://github.com/FuelLabs/fuel-core/pull/1891): Regenesis now preserves `FuelBlockMerkleData` and `FuelBlockMerkleMetadata` in the off-chain table. These tables are checked when querying message proofs. - [#1886](https://github.com/FuelLabs/fuel-core/pull/1886): Use ref to `Block` in validation code - [#1876](https://github.com/FuelLabs/fuel-core/pull/1876): Updated benchmark to include the worst scenario for `CROO` opcode. Also include consensus parameters in bench output. @@ -255,12 +258,12 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1868](https://github.com/FuelLabs/fuel-core/pull/1868): Include the `event_inbox_root` in the header hash. Changed types of the `transactions_count` to `u16` and `message_receipt_count` to `u32` instead of `u64`. Updated the application hash root calculation to not pad numbers. - [#1866](https://github.com/FuelLabs/fuel-core/pull/1866): Fixed a runtime panic that occurred when restarting a node. The panic happens when the relayer database is already populated, and the relayer attempts an empty commit during start up. This invalid commit is removed in this PR. - [#1871](https://github.com/FuelLabs/fuel-core/pull/1871): Fixed `block` endpoint to return fetch the blocks from both databases after regenesis. -- [#1856](https://github.com/FuelLabs/fuel-core/pull/1856): Replaced instances of `Union` with `Enum` for GraphQL definitions of `ConsensusParametersVersion` and related types. This is needed because `Union` does not support multiple `Version`s inside discriminants or empty variants. -- [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Fixed benchmarks for the `0.25.3`. +- [#1856](https://github.com/FuelLabs/fuel-core/pull/1856): Replaced instances of `Union` with `Enum` for GraphQL definitions of `ConsensusParametersVersion` and related types. This is needed because `Union` does not support multiple `Version`s inside discriminants or empty variants. +- [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Fixed benchmarks for the `0.25.3`. - [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Improves the performance of getting the size of the contract from the `InMemoryTransaction`. - [#1851](https://github.com/FuelLabs/fuel-core/pull/1851/): Provided migration capabilities (enabled addition of new column families) to RocksDB instance. -### Added +### Added - [#1853](https://github.com/FuelLabs/fuel-core/pull/1853): Added a test case to verify the database's behavior when new columns are added to the RocksDB database. - [#1860](https://github.com/FuelLabs/fuel-core/pull/1860): Regenesis now preserves `FuelBlockIdsToHeights` off-chain table. @@ -318,14 +321,14 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - Along with the new block height, the regenesis process also increases the state transition bytecode and consensus parameters versions. It guarantees that a new network doesn't use values from the previous network and allows us not to migrate `StateTransitionBytecodeVersions` and `ConsensusParametersVersions` tables. - Added a new CLI argument, `native-executor-version,` that allows overriding of the default version of the native executor. It can be useful for side rollups that have their own history of executor upgrades. - Replaced: - + ```rust let file = std::fs::File::open(path)?; let mut snapshot: Self = serde_json::from_reader(&file)?; ``` - + with a: - + ```rust let mut json = String::new(); std::fs::File::open(&path) @@ -337,7 +340,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - Updated all tests to use `Config::local_node_*` instead of working with the `SnapshotReader` directly. It is the preparation of the tests for the futures bumps of the `Executor::VERSION`. When we increase the version, all tests continue to use `GenesisBlock.state_transition_bytecode = 0` while the version is different, which forces the usage of the WASM executor, while for tests, we still prefer to test native execution. The `Config::local_node_*` handles it and forces the executor to use the native version. - Reworked the `build.rs` file of the upgradable executor. The script now caches WASM bytecode to avoid recompilation. Also, fixed the issue with outdated WASM bytecode. The script reacts on any modifications of the `fuel-core-wasm-executor` and forces recompilation (it is why we need the cache), so WASM bytecode always is actual now. - [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Removed support of `Create` transaction from debugger since it doesn't have any script to execute. -- [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Use `fuel-vm 0.49.0` with new transactions types - `Upgrade` and `Upload`. Also added `max_bytecode_subsections` field to the `ConsensusParameters` to limit the number of bytecode subsections in the state transition bytecode. +- [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Use `fuel-vm 0.49.0` with new transactions types - `Upgrade` and `Upload`. Also added `max_bytecode_subsections` field to the `ConsensusParameters` to limit the number of bytecode subsections in the state transition bytecode. - [#1816](https://github.com/FuelLabs/fuel-core/pull/1816): Updated the upgradable executor to fetch the state transition bytecode from the database when the version doesn't match a native one. This change enables the WASM executor in the "production" build and requires a `wasm32-unknown-unknown` target. ## [Version 0.24.2] @@ -376,9 +379,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [1785](https://github.com/FuelLabs/fuel-core/pull/1785): Producer will only include DA height if it has enough gas to include the associate forced transactions. - [#1771](https://github.com/FuelLabs/fuel-core/pull/1771): Contract 'states' and 'balances' brought back into `ContractConfig`. Parquet now writes a file per table. - [1779](https://github.com/FuelLabs/fuel-core/pull/1779): Modify Relayer service to order Events from L1 by block index -- [#1783](https://github.com/FuelLabs/fuel-core/pull/1783): The PR upgrade `fuel-vm` to `0.48.0` release. Because of some breaking changes, we also adapted our codebase to follow them: +- [#1783](https://github.com/FuelLabs/fuel-core/pull/1783): The PR upgrade `fuel-vm` to `0.48.0` release. Because of some breaking changes, we also adapted our codebase to follow them: - Implementation of `Default` for configs was moved under the `test-helpers` feature. The `fuel-core` binary uses testnet configuration instead of `Default::default`(for cases when `ChainConfig` was not provided by the user). - - All parameter types are enums now and require corresponding modifications across the codebase(we need to use getters and setters). The GraphQL API remains the same for simplicity, but each parameter now has one more field - `version`, that can be used to decide how to deserialize. + - All parameter types are enums now and require corresponding modifications across the codebase(we need to use getters and setters). The GraphQL API remains the same for simplicity, but each parameter now has one more field - `version`, that can be used to decide how to deserialize. - The `UtxoId` type now is 34 bytes instead of 33. It affects hex representation and requires adding `00`. - The `block_gas_limit` was moved to `ConsensusParameters` from `ChainConfig`. It means the block producer doesn't specify the block gas limit anymore, and we don't need to propagate this information. - The `bytecodeLength` field is removed from the `Create` transaction. @@ -401,13 +404,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - The change splits the `KeyValueStore` into `KeyValueInspect` and `KeyValueMutate`, as well the `Blueprint` into `BlueprintInspect` and `BlueprintMutate`. It allows requiring less restricted constraints for any read-related operations. - One of the main ideas of the change is to allow for the actual storage only to implement `KeyValueInspect` and `Modifiable` without the `KeyValueMutate`. It simplifies work with the databases and provides a safe way of interacting with them (Modification into the database can only go through the `Modifiable::commit_changes`). This feature is used to [track the height](https://github.com/FuelLabs/fuel-core/pull/1694/files#diff-c95a3d57a39feac7c8c2f3b193a24eec39e794413adc741df36450f9a4539898) of each database during commits and even limit how commits are done, providing additional safety. This part of the change was done as a [separate commit](https://github.com/FuelLabs/fuel-core/pull/1694/commits/7b1141ac838568e3590f09dd420cb24a6946bd32). - + - The `StorageTransaction` is a `StructuredStorage` that uses `InMemoryTransaction` inside to accumulate modifications. Only `InMemoryTransaction` has a real implementation of the `KeyValueMutate`(Other types only implement it in tests). - + - The implementation of the `Modifiable` for the `Database` contains a business logic that provides additional safety but limits the usage of the database. The `Database` now tracks its height and is responsible for its updates. In the `commit_changes` function, it analyzes the changes that were done and tries to find a new height(For example, in the case of the `OnChain` database, we are looking for a new `Block` in the `FuelBlocks` table). - + - As was planned in the issue, now the executor has full control over how commits to the storage are done. - + - All mutation methods now require `&mut self` - exclusive ownership over the object to be able to write into it. It almost negates the chance of concurrent modification of the storage, but it is still possible since the `Database` implements the `Clone` trait. To be sure that we don't corrupt the state of the database, the `commit_changes` function implements additional safety checks to be sure that we commit updates per each height only once time. - Side changes: @@ -499,7 +502,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1657](https://github.com/FuelLabs/fuel-core/pull/1657): Changed `CROO` gas price type from `Word` to `DependentGasPrice`. The dependent gas price values are dummy values while awaiting updated benchmarks. - [#1671](https://github.com/FuelLabs/fuel-core/pull/1671): The GraphQL API uses block height instead of the block id where it is possible. The transaction status contains `block_height` instead of the `block_id`. - [#1675](https://github.com/FuelLabs/fuel-core/pull/1675): Simplify GQL schema by disabling contract resolvers in most cases, and just return a ContractId scalar instead. -- [#1658](https://github.com/FuelLabs/fuel-core/pull/1658): Receipts are part of the transaction status. +- [#1658](https://github.com/FuelLabs/fuel-core/pull/1658): Receipts are part of the transaction status. Removed `reason` from the `TransactionExecutionResult::Failed`. It can be calculated based on the program state and receipts. Also, it is not possible to fetch `receipts` from the `Transaction` directly anymore. Instead, you need to fetch `status` and its receipts. - [#1646](https://github.com/FuelLabs/fuel-core/pull/1646): Remove redundant receipts from queries. @@ -513,57 +516,57 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1596](https://github.com/FuelLabs/fuel-core/pull/1596): Make `Consensus` type a version-able enum - [#1593](https://github.com/FuelLabs/fuel-core/pull/1593): Make `Block` type a version-able enum - [#1576](https://github.com/FuelLabs/fuel-core/pull/1576): The change moves the implementation of the storage traits for required tables from `fuel-core` to `fuel-core-storage` crate. The change also adds a more flexible configuration of the encoding/decoding per the table and allows the implementation of specific behaviors for the table in a much easier way. It unifies the encoding between database, SMTs, and iteration, preventing mismatching bytes representation on the Rust type system level. Plus, it increases the re-usage of the code by applying the same blueprint to other tables. - + It is a breaking PR because it changes database encoding/decoding for some tables. - + ### StructuredStorage - + The change adds a new type `StructuredStorage`. It is a wrapper around the key-value storage that implements the storage traits(`StorageInspect`, `StorageMutate`, `StorageRead`, etc) for the tables with blueprint. This blueprint works in tandem with the `TableWithBlueprint` trait. The table may implement `TableWithBlueprint` specifying the blueprint, as an example: - + ```rust impl TableWithBlueprint for ContractsRawCode { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } ``` - + It is a definition of the blueprint for the `ContractsRawCode` table. It has a plain blueprint meaning it simply encodes/decodes bytes and stores/loads them into/from the storage. As a key codec and value codec, it uses a `Raw` encoding/decoding that simplifies writing bytes and loads them back into the memory without applying any serialization or deserialization algorithm. - + If the table implements `TableWithBlueprint` and the selected codec satisfies all blueprint requirements, the corresponding storage traits for that table are implemented on the `StructuredStorage` type. - + ### Codecs - + Each blueprint allows customizing the key and value codecs. It allows the use of different codecs for different tables, taking into account the complexity and weight of the data and providing a way of more optimal implementation. - + That property may be very useful to perform migration in a more easier way. Plus, it also can be a `no_std` migration potentially allowing its fraud proving. - + An example of migration: - + ```rust /// Define the table for V1 value encoding/decoding. impl TableWithBlueprint for ContractsRawCodeV1 { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } - + /// Define the table for V2 value encoding/decoding. /// It uses `Postcard` codec for the value instead of `Raw` codec. /// /// # Dev-note: The columns is the same. impl TableWithBlueprint for ContractsRawCodeV2 { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } - + fn migration(storage: &mut Database) { let mut iter = storage.iter_all::(None); while let Ok((key, value)) = iter.next() { @@ -572,19 +575,19 @@ and this project adheres to [Semantic Versioning](http://semver.org/). } } ``` - + ### Structures - + The blueprint of the table defines its behavior. As an example, a `Plain` blueprint simply encodes/decodes bytes and stores/loads them into/from the storage. The `SMT` blueprint builds a sparse merkle tree on top of the key-value pairs. - + Implementing a blueprint one time, we can apply it to any table satisfying the requirements of this blueprint. It increases the re-usage of the code and minimizes duplication. - + It can be useful if we decide to create global roots for all required tables that are used in fraud proving. - + ```rust impl TableWithBlueprint for SpentMessages { type Blueprint = Plain; - + fn column() -> Column { Column::SpentMessages } @@ -592,28 +595,28 @@ and this project adheres to [Semantic Versioning](http://semver.org/). | | \|/ - + impl TableWithBlueprint for SpentMessages { type Blueprint = Sparse; - + fn column() -> Column { Column::SpentMessages } } ``` - + ### Side changes - + #### `iter_all` The `iter_all` functionality now accepts the table instead of `K` and `V` generics. It is done to use the correct codec during deserialization. Also, the table definition provides the column. - + #### Duplicated unit tests - + The `fuel-core-storage` crate provides macros that generate unit tests. Almost all tables had the same test like `get`, `insert`, `remove`, `exist`. All duplicated tests were moved to macros. The unique one still stays at the same place where it was before. - + #### `StorageBatchMutate` - + Added a new `StorageBatchMutate` trait that we can move to `fuel-storage` crate later. It allows batch operations on the storage. It may be more performant in some cases. - [#1573](https://github.com/FuelLabs/fuel-core/pull/1573): Remove nested p2p request/response encoding. Only breaks p2p networking compatibility with older fuel-core versions, but is otherwise fully internal. @@ -627,22 +630,22 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ```shell --tx-blacklist-addresses The list of banned addresses ignored by the `TxPool` - + [env: TX_BLACKLIST_ADDRESSES=] - + --tx-blacklist-coins The list of banned coins ignored by the `TxPool` - + [env: TX_BLACKLIST_COINS=] - + --tx-blacklist-messages The list of banned messages ignored by the `TxPool` - + [env: TX_BLACKLIST_MESSAGES=] - + --tx-blacklist-contracts The list of banned contracts ignored by the `TxPool` - + [env: TX_BLACKLIST_CONTRACTS=] ``` @@ -677,13 +680,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed -- [#1517](https://github.com/FuelLabs/fuel-core/pull/1517): Changed default gossip heartbeat interval to 500ms. +- [#1517](https://github.com/FuelLabs/fuel-core/pull/1517): Changed default gossip heartbeat interval to 500ms. - [#1520](https://github.com/FuelLabs/fuel-core/pull/1520): Extract `executor` into `fuel-core-executor` crate. ### Fixed #### Breaking -- [#1536](https://github.com/FuelLabs/fuel-core/pull/1536): The change fixes the contracts tables to not touch SMT nodes of foreign contracts. Before, it was possible to invalidate the SMT from another contract. It is a breaking change and requires re-calculating the whole state from the beginning with new SMT roots. +- [#1536](https://github.com/FuelLabs/fuel-core/pull/1536): The change fixes the contracts tables to not touch SMT nodes of foreign contracts. Before, it was possible to invalidate the SMT from another contract. It is a breaking change and requires re-calculating the whole state from the beginning with new SMT roots. - [#1542](https://github.com/FuelLabs/fuel-core/pull/1542): Migrates information about peers to NodeInfo instead of ChainInfo. It also elides information about peers in the default node_info query. ## [Version 0.21.0] @@ -709,7 +712,7 @@ FuelVM received a lot of safety and stability improvements: - Removed the `ChainId` from the `PredicateId` calculation, allowing the use of predicates cross-chain. - Improvements in the performance of some storage-related opcodes. - Support the `ECAL` instruction that allows adding custom functionality to the VM. It can be used to create unique rollups or advanced indexers in the future. -- Support of [transaction policies](https://github.com/FuelLabs/fuel-vm/blob/master/CHANGELOG.md#version-0420) provides additional safety for the user. +- Support of [transaction policies](https://github.com/FuelLabs/fuel-vm/blob/master/CHANGELOG.md#version-0420) provides additional safety for the user. It also allows the implementation of a multi-dimensional price model in the future, making the transaction execution cheaper and allowing more transactions that don't affect storage. - Refactored errors, returning more detailed errors to the user, simplifying debugging. @@ -750,8 +753,8 @@ FuelVM received a lot of safety and stability improvements: - [#1339](https://github.com/FuelLabs/fuel-core/pull/1339): Adds `baseAssetId` to `FeeParameters` in the GraphQL API. - [#1331](https://github.com/FuelLabs/fuel-core/pull/1331): Add peer reputation reporting to block import code. - [#1324](https://github.com/FuelLabs/fuel-core/pull/1324): Added pyroscope profiling to fuel-core, intended to be used by a secondary docker image that has debug symbols enabled. -- [#1309](https://github.com/FuelLabs/fuel-core/pull/1309): Add documentation for running debug builds with CLion and Visual Studio Code. -- [#1308](https://github.com/FuelLabs/fuel-core/pull/1308): Add support for loading .env files when compiling with the `env` feature. This allows users to conveniently supply CLI arguments in a secure and IDE-agnostic way. +- [#1309](https://github.com/FuelLabs/fuel-core/pull/1309): Add documentation for running debug builds with CLion and Visual Studio Code. +- [#1308](https://github.com/FuelLabs/fuel-core/pull/1308): Add support for loading .env files when compiling with the `env` feature. This allows users to conveniently supply CLI arguments in a secure and IDE-agnostic way. - [#1304](https://github.com/FuelLabs/fuel-core/pull/1304): Implemented `submit_and_await_commit_with_receipts` method for `FuelClient`. - [#1286](https://github.com/FuelLabs/fuel-core/pull/1286): Include readable names for test cases where missing. - [#1274](https://github.com/FuelLabs/fuel-core/pull/1274): Added tests to benchmark block synchronization. From a07f85538dcefc27c894c2fdee14292d70b37603 Mon Sep 17 00:00:00 2001 From: hal3e Date: Tue, 17 Sep 2024 16:17:17 +0200 Subject: [PATCH 05/18] fix tests --- crates/client/src/client/schema/tx.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crates/client/src/client/schema/tx.rs b/crates/client/src/client/schema/tx.rs index 56a2798c0b4..3f14c81756b 100644 --- a/crates/client/src/client/schema/tx.rs +++ b/crates/client/src/client/schema/tx.rs @@ -479,7 +479,8 @@ pub mod tests { #[test] fn transactions_connection_query_gql_output() { use cynic::QueryBuilder; - let operation = TransactionsQuery::build(ConnectionArgs { + + let operation = TransactionsQuery::build(crate::client::schema::ConnectionArgs { after: None, before: None, first: None, From c52465178c41276e01c7407bc37c79ec21ae0b7a Mon Sep 17 00:00:00 2001 From: hal3e Date: Tue, 17 Sep 2024 16:22:56 +0200 Subject: [PATCH 06/18] insta review --- ...a__tx__tests__opaque_transaction_by_id_query_gql_output.snap | 2 +- ...nt__schema__tx__tests__transactions_by_owner_gql_output.snap | 2 +- ...ma__tx__tests__transactions_connection_query_gql_output.snap | 2 +- ...__tests__transparent_transaction_by_id_query_gql_output.snap | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__opaque_transaction_by_id_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__opaque_transaction_by_id_query_gql_output.snap index 4bd7cc1e5ed..9cdc64dce01 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__opaque_transaction_by_id_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__opaque_transaction_by_id_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/tx.rs expression: operation.query --- -query($id: TransactionId!) { +query TransactionQuery($id: TransactionId!) { transaction(id: $id) { rawPayload status { diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transactions_by_owner_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transactions_by_owner_gql_output.snap index 4e6edb0e54a..ca8574f17de 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transactions_by_owner_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transactions_by_owner_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/tx.rs expression: operation.query --- -query($owner: Address!, $after: String, $before: String, $first: Int, $last: Int) { +query TransactionsByOwnerQuery($owner: Address!, $after: String, $before: String, $first: Int, $last: Int) { transactionsByOwner(owner: $owner, after: $after, before: $before, first: $first, last: $last) { edges { cursor diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transactions_connection_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transactions_connection_query_gql_output.snap index 0b8580cbfd7..057b77f7faa 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transactions_connection_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transactions_connection_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/tx.rs expression: operation.query --- -query($after: String, $before: String, $first: Int, $last: Int) { +query TransactionsQuery($after: String, $before: String, $first: Int, $last: Int) { transactions(after: $after, before: $before, first: $first, last: $last) { edges { cursor diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transparent_transaction_by_id_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transparent_transaction_by_id_query_gql_output.snap index 3795ffbdf3a..23e82b683a3 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transparent_transaction_by_id_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__tx__tests__transparent_transaction_by_id_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/tx.rs expression: operation.query --- -query($id: TransactionId!) { +query TransactionQuery($id: TransactionId!) { transaction(id: $id) { scriptGasLimit id From 4b2430e2678d24da10f47cc3a1841f5b569dd6bf Mon Sep 17 00:00:00 2001 From: hal3e Date: Wed, 18 Sep 2024 15:45:13 +0200 Subject: [PATCH 07/18] update changelogmd --- CHANGELOG.md | 117 ++++++++++++++++++++++++++------------------------- 1 file changed, 59 insertions(+), 58 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e6c9f11140f..28001d2e41b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -130,7 +130,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). And the following CLI flags are serving a new purpose - "min-gas-price" - the minimum gas price that the gas price algorithm will return - [2045](https://github.com/FuelLabs/fuel-core/pull/2045): Include withdrawal message only if transaction is executed successfully. -- [2041](https://github.com/FuelLabs/fuel-core/pull/2041): Add code for startup of the gas price algorithm updater so +- [2041](https://github.com/FuelLabs/fuel-core/pull/2041): Add code for startup of the gas price algorithm updater so the gas price db on startup is always in sync with the on chain db ## [Version 0.31.0] @@ -244,7 +244,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed -- [#1906](https://github.com/FuelLabs/fuel-core/pull/1906): Makes `cli::snapshot::Command` members public such that clients can create and execute snapshot commands programmatically. This enables snapshot execution in external programs, such as the regenesis test suite. +- [#1906](https://github.com/FuelLabs/fuel-core/pull/1906): Makes `cli::snapshot::Command` members public such that clients can create and execute snapshot commands programmatically. This enables snapshot execution in external programs, such as the regenesis test suite. - [#1891](https://github.com/FuelLabs/fuel-core/pull/1891): Regenesis now preserves `FuelBlockMerkleData` and `FuelBlockMerkleMetadata` in the off-chain table. These tables are checked when querying message proofs. - [#1886](https://github.com/FuelLabs/fuel-core/pull/1886): Use ref to `Block` in validation code - [#1876](https://github.com/FuelLabs/fuel-core/pull/1876): Updated benchmark to include the worst scenario for `CROO` opcode. Also include consensus parameters in bench output. @@ -268,12 +268,12 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1868](https://github.com/FuelLabs/fuel-core/pull/1868): Include the `event_inbox_root` in the header hash. Changed types of the `transactions_count` to `u16` and `message_receipt_count` to `u32` instead of `u64`. Updated the application hash root calculation to not pad numbers. - [#1866](https://github.com/FuelLabs/fuel-core/pull/1866): Fixed a runtime panic that occurred when restarting a node. The panic happens when the relayer database is already populated, and the relayer attempts an empty commit during start up. This invalid commit is removed in this PR. - [#1871](https://github.com/FuelLabs/fuel-core/pull/1871): Fixed `block` endpoint to return fetch the blocks from both databases after regenesis. -- [#1856](https://github.com/FuelLabs/fuel-core/pull/1856): Replaced instances of `Union` with `Enum` for GraphQL definitions of `ConsensusParametersVersion` and related types. This is needed because `Union` does not support multiple `Version`s inside discriminants or empty variants. -- [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Fixed benchmarks for the `0.25.3`. +- [#1856](https://github.com/FuelLabs/fuel-core/pull/1856): Replaced instances of `Union` with `Enum` for GraphQL definitions of `ConsensusParametersVersion` and related types. This is needed because `Union` does not support multiple `Version`s inside discriminants or empty variants. +- [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Fixed benchmarks for the `0.25.3`. - [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Improves the performance of getting the size of the contract from the `InMemoryTransaction`. - [#1851](https://github.com/FuelLabs/fuel-core/pull/1851/): Provided migration capabilities (enabled addition of new column families) to RocksDB instance. -### Added +### Added - [#1853](https://github.com/FuelLabs/fuel-core/pull/1853): Added a test case to verify the database's behavior when new columns are added to the RocksDB database. - [#1860](https://github.com/FuelLabs/fuel-core/pull/1860): Regenesis now preserves `FuelBlockIdsToHeights` off-chain table. @@ -331,14 +331,14 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - Along with the new block height, the regenesis process also increases the state transition bytecode and consensus parameters versions. It guarantees that a new network doesn't use values from the previous network and allows us not to migrate `StateTransitionBytecodeVersions` and `ConsensusParametersVersions` tables. - Added a new CLI argument, `native-executor-version,` that allows overriding of the default version of the native executor. It can be useful for side rollups that have their own history of executor upgrades. - Replaced: - + ```rust let file = std::fs::File::open(path)?; let mut snapshot: Self = serde_json::from_reader(&file)?; ``` - + with a: - + ```rust let mut json = String::new(); std::fs::File::open(&path) @@ -350,7 +350,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - Updated all tests to use `Config::local_node_*` instead of working with the `SnapshotReader` directly. It is the preparation of the tests for the futures bumps of the `Executor::VERSION`. When we increase the version, all tests continue to use `GenesisBlock.state_transition_bytecode = 0` while the version is different, which forces the usage of the WASM executor, while for tests, we still prefer to test native execution. The `Config::local_node_*` handles it and forces the executor to use the native version. - Reworked the `build.rs` file of the upgradable executor. The script now caches WASM bytecode to avoid recompilation. Also, fixed the issue with outdated WASM bytecode. The script reacts on any modifications of the `fuel-core-wasm-executor` and forces recompilation (it is why we need the cache), so WASM bytecode always is actual now. - [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Removed support of `Create` transaction from debugger since it doesn't have any script to execute. -- [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Use `fuel-vm 0.49.0` with new transactions types - `Upgrade` and `Upload`. Also added `max_bytecode_subsections` field to the `ConsensusParameters` to limit the number of bytecode subsections in the state transition bytecode. +- [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Use `fuel-vm 0.49.0` with new transactions types - `Upgrade` and `Upload`. Also added `max_bytecode_subsections` field to the `ConsensusParameters` to limit the number of bytecode subsections in the state transition bytecode. - [#1816](https://github.com/FuelLabs/fuel-core/pull/1816): Updated the upgradable executor to fetch the state transition bytecode from the database when the version doesn't match a native one. This change enables the WASM executor in the "production" build and requires a `wasm32-unknown-unknown` target. ## [Version 0.24.2] @@ -389,9 +389,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [1785](https://github.com/FuelLabs/fuel-core/pull/1785): Producer will only include DA height if it has enough gas to include the associate forced transactions. - [#1771](https://github.com/FuelLabs/fuel-core/pull/1771): Contract 'states' and 'balances' brought back into `ContractConfig`. Parquet now writes a file per table. - [1779](https://github.com/FuelLabs/fuel-core/pull/1779): Modify Relayer service to order Events from L1 by block index -- [#1783](https://github.com/FuelLabs/fuel-core/pull/1783): The PR upgrade `fuel-vm` to `0.48.0` release. Because of some breaking changes, we also adapted our codebase to follow them: +- [#1783](https://github.com/FuelLabs/fuel-core/pull/1783): The PR upgrade `fuel-vm` to `0.48.0` release. Because of some breaking changes, we also adapted our codebase to follow them: - Implementation of `Default` for configs was moved under the `test-helpers` feature. The `fuel-core` binary uses testnet configuration instead of `Default::default`(for cases when `ChainConfig` was not provided by the user). - - All parameter types are enums now and require corresponding modifications across the codebase(we need to use getters and setters). The GraphQL API remains the same for simplicity, but each parameter now has one more field - `version`, that can be used to decide how to deserialize. + - All parameter types are enums now and require corresponding modifications across the codebase(we need to use getters and setters). The GraphQL API remains the same for simplicity, but each parameter now has one more field - `version`, that can be used to decide how to deserialize. - The `UtxoId` type now is 34 bytes instead of 33. It affects hex representation and requires adding `00`. - The `block_gas_limit` was moved to `ConsensusParameters` from `ChainConfig`. It means the block producer doesn't specify the block gas limit anymore, and we don't need to propagate this information. - The `bytecodeLength` field is removed from the `Create` transaction. @@ -414,13 +414,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - The change splits the `KeyValueStore` into `KeyValueInspect` and `KeyValueMutate`, as well the `Blueprint` into `BlueprintInspect` and `BlueprintMutate`. It allows requiring less restricted constraints for any read-related operations. - One of the main ideas of the change is to allow for the actual storage only to implement `KeyValueInspect` and `Modifiable` without the `KeyValueMutate`. It simplifies work with the databases and provides a safe way of interacting with them (Modification into the database can only go through the `Modifiable::commit_changes`). This feature is used to [track the height](https://github.com/FuelLabs/fuel-core/pull/1694/files#diff-c95a3d57a39feac7c8c2f3b193a24eec39e794413adc741df36450f9a4539898) of each database during commits and even limit how commits are done, providing additional safety. This part of the change was done as a [separate commit](https://github.com/FuelLabs/fuel-core/pull/1694/commits/7b1141ac838568e3590f09dd420cb24a6946bd32). - + - The `StorageTransaction` is a `StructuredStorage` that uses `InMemoryTransaction` inside to accumulate modifications. Only `InMemoryTransaction` has a real implementation of the `KeyValueMutate`(Other types only implement it in tests). - + - The implementation of the `Modifiable` for the `Database` contains a business logic that provides additional safety but limits the usage of the database. The `Database` now tracks its height and is responsible for its updates. In the `commit_changes` function, it analyzes the changes that were done and tries to find a new height(For example, in the case of the `OnChain` database, we are looking for a new `Block` in the `FuelBlocks` table). - + - As was planned in the issue, now the executor has full control over how commits to the storage are done. - + - All mutation methods now require `&mut self` - exclusive ownership over the object to be able to write into it. It almost negates the chance of concurrent modification of the storage, but it is still possible since the `Database` implements the `Clone` trait. To be sure that we don't corrupt the state of the database, the `commit_changes` function implements additional safety checks to be sure that we commit updates per each height only once time. - Side changes: @@ -512,7 +512,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1657](https://github.com/FuelLabs/fuel-core/pull/1657): Changed `CROO` gas price type from `Word` to `DependentGasPrice`. The dependent gas price values are dummy values while awaiting updated benchmarks. - [#1671](https://github.com/FuelLabs/fuel-core/pull/1671): The GraphQL API uses block height instead of the block id where it is possible. The transaction status contains `block_height` instead of the `block_id`. - [#1675](https://github.com/FuelLabs/fuel-core/pull/1675): Simplify GQL schema by disabling contract resolvers in most cases, and just return a ContractId scalar instead. -- [#1658](https://github.com/FuelLabs/fuel-core/pull/1658): Receipts are part of the transaction status. +- [#1658](https://github.com/FuelLabs/fuel-core/pull/1658): Receipts are part of the transaction status. Removed `reason` from the `TransactionExecutionResult::Failed`. It can be calculated based on the program state and receipts. Also, it is not possible to fetch `receipts` from the `Transaction` directly anymore. Instead, you need to fetch `status` and its receipts. - [#1646](https://github.com/FuelLabs/fuel-core/pull/1646): Remove redundant receipts from queries. @@ -526,57 +526,57 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1596](https://github.com/FuelLabs/fuel-core/pull/1596): Make `Consensus` type a version-able enum - [#1593](https://github.com/FuelLabs/fuel-core/pull/1593): Make `Block` type a version-able enum - [#1576](https://github.com/FuelLabs/fuel-core/pull/1576): The change moves the implementation of the storage traits for required tables from `fuel-core` to `fuel-core-storage` crate. The change also adds a more flexible configuration of the encoding/decoding per the table and allows the implementation of specific behaviors for the table in a much easier way. It unifies the encoding between database, SMTs, and iteration, preventing mismatching bytes representation on the Rust type system level. Plus, it increases the re-usage of the code by applying the same blueprint to other tables. - + It is a breaking PR because it changes database encoding/decoding for some tables. - + ### StructuredStorage - + The change adds a new type `StructuredStorage`. It is a wrapper around the key-value storage that implements the storage traits(`StorageInspect`, `StorageMutate`, `StorageRead`, etc) for the tables with blueprint. This blueprint works in tandem with the `TableWithBlueprint` trait. The table may implement `TableWithBlueprint` specifying the blueprint, as an example: - + ```rust impl TableWithBlueprint for ContractsRawCode { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } ``` - + It is a definition of the blueprint for the `ContractsRawCode` table. It has a plain blueprint meaning it simply encodes/decodes bytes and stores/loads them into/from the storage. As a key codec and value codec, it uses a `Raw` encoding/decoding that simplifies writing bytes and loads them back into the memory without applying any serialization or deserialization algorithm. - + If the table implements `TableWithBlueprint` and the selected codec satisfies all blueprint requirements, the corresponding storage traits for that table are implemented on the `StructuredStorage` type. - + ### Codecs - + Each blueprint allows customizing the key and value codecs. It allows the use of different codecs for different tables, taking into account the complexity and weight of the data and providing a way of more optimal implementation. - + That property may be very useful to perform migration in a more easier way. Plus, it also can be a `no_std` migration potentially allowing its fraud proving. - + An example of migration: - + ```rust /// Define the table for V1 value encoding/decoding. impl TableWithBlueprint for ContractsRawCodeV1 { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } - + /// Define the table for V2 value encoding/decoding. /// It uses `Postcard` codec for the value instead of `Raw` codec. /// /// # Dev-note: The columns is the same. impl TableWithBlueprint for ContractsRawCodeV2 { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } - + fn migration(storage: &mut Database) { let mut iter = storage.iter_all::(None); while let Ok((key, value)) = iter.next() { @@ -585,19 +585,19 @@ and this project adheres to [Semantic Versioning](http://semver.org/). } } ``` - + ### Structures - + The blueprint of the table defines its behavior. As an example, a `Plain` blueprint simply encodes/decodes bytes and stores/loads them into/from the storage. The `SMT` blueprint builds a sparse merkle tree on top of the key-value pairs. - + Implementing a blueprint one time, we can apply it to any table satisfying the requirements of this blueprint. It increases the re-usage of the code and minimizes duplication. - + It can be useful if we decide to create global roots for all required tables that are used in fraud proving. - + ```rust impl TableWithBlueprint for SpentMessages { type Blueprint = Plain; - + fn column() -> Column { Column::SpentMessages } @@ -605,28 +605,28 @@ and this project adheres to [Semantic Versioning](http://semver.org/). | | \|/ - + impl TableWithBlueprint for SpentMessages { type Blueprint = Sparse; - + fn column() -> Column { Column::SpentMessages } } ``` - + ### Side changes - + #### `iter_all` The `iter_all` functionality now accepts the table instead of `K` and `V` generics. It is done to use the correct codec during deserialization. Also, the table definition provides the column. - + #### Duplicated unit tests - + The `fuel-core-storage` crate provides macros that generate unit tests. Almost all tables had the same test like `get`, `insert`, `remove`, `exist`. All duplicated tests were moved to macros. The unique one still stays at the same place where it was before. - + #### `StorageBatchMutate` - + Added a new `StorageBatchMutate` trait that we can move to `fuel-storage` crate later. It allows batch operations on the storage. It may be more performant in some cases. - [#1573](https://github.com/FuelLabs/fuel-core/pull/1573): Remove nested p2p request/response encoding. Only breaks p2p networking compatibility with older fuel-core versions, but is otherwise fully internal. @@ -640,22 +640,22 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ```shell --tx-blacklist-addresses The list of banned addresses ignored by the `TxPool` - + [env: TX_BLACKLIST_ADDRESSES=] - + --tx-blacklist-coins The list of banned coins ignored by the `TxPool` - + [env: TX_BLACKLIST_COINS=] - + --tx-blacklist-messages The list of banned messages ignored by the `TxPool` - + [env: TX_BLACKLIST_MESSAGES=] - + --tx-blacklist-contracts The list of banned contracts ignored by the `TxPool` - + [env: TX_BLACKLIST_CONTRACTS=] ``` @@ -690,13 +690,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed -- [#1517](https://github.com/FuelLabs/fuel-core/pull/1517): Changed default gossip heartbeat interval to 500ms. +- [#1517](https://github.com/FuelLabs/fuel-core/pull/1517): Changed default gossip heartbeat interval to 500ms. - [#1520](https://github.com/FuelLabs/fuel-core/pull/1520): Extract `executor` into `fuel-core-executor` crate. ### Fixed #### Breaking -- [#1536](https://github.com/FuelLabs/fuel-core/pull/1536): The change fixes the contracts tables to not touch SMT nodes of foreign contracts. Before, it was possible to invalidate the SMT from another contract. It is a breaking change and requires re-calculating the whole state from the beginning with new SMT roots. +- [#1536](https://github.com/FuelLabs/fuel-core/pull/1536): The change fixes the contracts tables to not touch SMT nodes of foreign contracts. Before, it was possible to invalidate the SMT from another contract. It is a breaking change and requires re-calculating the whole state from the beginning with new SMT roots. - [#1542](https://github.com/FuelLabs/fuel-core/pull/1542): Migrates information about peers to NodeInfo instead of ChainInfo. It also elides information about peers in the default node_info query. ## [Version 0.21.0] @@ -722,7 +722,7 @@ FuelVM received a lot of safety and stability improvements: - Removed the `ChainId` from the `PredicateId` calculation, allowing the use of predicates cross-chain. - Improvements in the performance of some storage-related opcodes. - Support the `ECAL` instruction that allows adding custom functionality to the VM. It can be used to create unique rollups or advanced indexers in the future. -- Support of [transaction policies](https://github.com/FuelLabs/fuel-vm/blob/master/CHANGELOG.md#version-0420) provides additional safety for the user. +- Support of [transaction policies](https://github.com/FuelLabs/fuel-vm/blob/master/CHANGELOG.md#version-0420) provides additional safety for the user. It also allows the implementation of a multi-dimensional price model in the future, making the transaction execution cheaper and allowing more transactions that don't affect storage. - Refactored errors, returning more detailed errors to the user, simplifying debugging. @@ -763,8 +763,8 @@ FuelVM received a lot of safety and stability improvements: - [#1339](https://github.com/FuelLabs/fuel-core/pull/1339): Adds `baseAssetId` to `FeeParameters` in the GraphQL API. - [#1331](https://github.com/FuelLabs/fuel-core/pull/1331): Add peer reputation reporting to block import code. - [#1324](https://github.com/FuelLabs/fuel-core/pull/1324): Added pyroscope profiling to fuel-core, intended to be used by a secondary docker image that has debug symbols enabled. -- [#1309](https://github.com/FuelLabs/fuel-core/pull/1309): Add documentation for running debug builds with CLion and Visual Studio Code. -- [#1308](https://github.com/FuelLabs/fuel-core/pull/1308): Add support for loading .env files when compiling with the `env` feature. This allows users to conveniently supply CLI arguments in a secure and IDE-agnostic way. +- [#1309](https://github.com/FuelLabs/fuel-core/pull/1309): Add documentation for running debug builds with CLion and Visual Studio Code. +- [#1308](https://github.com/FuelLabs/fuel-core/pull/1308): Add support for loading .env files when compiling with the `env` feature. This allows users to conveniently supply CLI arguments in a secure and IDE-agnostic way. - [#1304](https://github.com/FuelLabs/fuel-core/pull/1304): Implemented `submit_and_await_commit_with_receipts` method for `FuelClient`. - [#1286](https://github.com/FuelLabs/fuel-core/pull/1286): Include readable names for test cases where missing. - [#1274](https://github.com/FuelLabs/fuel-core/pull/1274): Added tests to benchmark block synchronization. @@ -836,3 +836,4 @@ FuelVM received a lot of safety and stability improvements: - [#1399](https://github.com/FuelLabs/fuel-core/pull/1399): Removed `relayer-da-finalization` parameter from the relayer CLI. - [#1338](https://github.com/FuelLabs/fuel-core/pull/1338): Updated GraphQL client to use `DependentCost` for `k256`, `mcpi`, `s256`, `scwq`, `swwq` opcodes. - [#1322](https://github.com/FuelLabs/fuel-core/pull/1322): The `manual_blocks_enabled` flag is removed from the CLI. The analog is a `debug` flag. + From 4537a65417d902ba18cb0734bdc285c2ddd7585f Mon Sep 17 00:00:00 2001 From: hal3e Date: Wed, 18 Sep 2024 15:45:44 +0200 Subject: [PATCH 08/18] update changelogmd --- CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 28001d2e41b..2eaa435ac9f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -836,4 +836,3 @@ FuelVM received a lot of safety and stability improvements: - [#1399](https://github.com/FuelLabs/fuel-core/pull/1399): Removed `relayer-da-finalization` parameter from the relayer CLI. - [#1338](https://github.com/FuelLabs/fuel-core/pull/1338): Updated GraphQL client to use `DependentCost` for `k256`, `mcpi`, `s256`, `scwq`, `swwq` opcodes. - [#1322](https://github.com/FuelLabs/fuel-core/pull/1322): The `manual_blocks_enabled` flag is removed from the CLI. The analog is a `debug` flag. - From 675ce5eae43f5a0d33cf058ef0add0c163e00bd5 Mon Sep 17 00:00:00 2001 From: hal3e Date: Wed, 18 Sep 2024 15:48:35 +0200 Subject: [PATCH 09/18] fix merge remove wasm bytecode --- .../state_transition_bytecode.wasm | Bin 2188470 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 bin/fuel-core/chainspec/local-testnet/state_transition_bytecode.wasm diff --git a/bin/fuel-core/chainspec/local-testnet/state_transition_bytecode.wasm b/bin/fuel-core/chainspec/local-testnet/state_transition_bytecode.wasm deleted file mode 100644 index a30da836befeedc49353807cb47be16b244f3251..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2188470 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
bh|$mMA|Q)2}34pQ#E^G2nLWNzxNC6nIN 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

Ss}#pNCj_(M959IT5uUGMbx>=RcF$Zk0h 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 z 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 ~Ay^IVF71P5CK?in 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�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 V<-nCdFK`{ebS7jiXTGfEe*v*qls5nX From ac37dcda1091dc2ec572b12c7226b8fe977d26f2 Mon Sep 17 00:00:00 2001 From: hal3e Date: Wed, 18 Sep 2024 16:09:27 +0200 Subject: [PATCH 10/18] pr comments --- crates/client/src/client.rs | 44 +++++++++----------- crates/client/src/client/schema/block.rs | 5 ++- crates/client/src/client/schema/gas_price.rs | 5 ++- crates/client/src/client/schema/tx.rs | 5 ++- 4 files changed, 29 insertions(+), 30 deletions(-) diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index f2aaec81146..fd03d9149f6 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -374,9 +374,10 @@ impl FuelClient { &self, block_horizon: u32, ) -> io::Result { - let query = schema::gas_price::QueryEstimateGasPrice::build(BlockHorizonArgs { + let args = BlockHorizonArgs { block_horizon: Some(block_horizon.into()), - }); + }; + let query = schema::gas_price::QueryEstimateGasPrice::build(args); self.query(query).await.map(|r| r.estimate_gas_price) } @@ -760,8 +761,8 @@ impl FuelClient { &self, request: PaginationRequest, ) -> io::Result> { - let query = - schema::tx::TransactionsQuery::build(schema::ConnectionArgs::from(request)); + let args = schema::ConnectionArgs::from(request); + let query = schema::tx::TransactionsQuery::build(args); let transactions = self.query(query).await?.transactions.try_into()?; Ok(transactions) } @@ -773,9 +774,8 @@ impl FuelClient { request: PaginationRequest, ) -> io::Result> { let owner: schema::Address = (*owner).into(); - let query = schema::tx::TransactionsByOwnerQuery::build( - TransactionsByOwnerConnectionArgs::from((owner, request)), - ); + let args = TransactionsByOwnerConnectionArgs::from((owner, request)); + let query = schema::tx::TransactionsByOwnerQuery::build(args); let transactions = self.query(query).await?.transactions_by_owner.try_into()?; Ok(transactions) @@ -887,8 +887,8 @@ impl FuelClient { &self, request: PaginationRequest, ) -> io::Result> { - let query = - schema::block::BlocksQuery::build(schema::ConnectionArgs::from(request)); + let args = schema::ConnectionArgs::from(request); + let query = schema::block::BlocksQuery::build(args); let blocks = self.query(query).await?.blocks.try_into()?; @@ -915,9 +915,8 @@ impl FuelClient { Some(asset_id) => (*asset_id).into(), None => schema::AssetId::default(), }; - let query = schema::coins::CoinsQuery::build(CoinsConnectionArgs::from(( - owner, asset_id, request, - ))); + let args = CoinsConnectionArgs::from((owner, asset_id, request)); + let query = schema::coins::CoinsQuery::build(args); let coins = self.query(query).await?.coins.into(); Ok(coins) @@ -952,9 +951,9 @@ impl FuelClient { }, ) .map(Into::into); - let query = schema::coins::CoinsToSpendQuery::build( - schema::coins::CoinsToSpendArgs::from((owner, spend_query, excluded_ids)), - ); + let args = + schema::coins::CoinsToSpendArgs::from((owner, spend_query, excluded_ids)); + let query = schema::coins::CoinsToSpendQuery::build(args); let coins_per_asset = self .query(query) @@ -1017,9 +1016,8 @@ impl FuelClient { request: PaginationRequest, ) -> io::Result> { let owner: schema::Address = (*owner).into(); - let query = schema::balance::BalancesQuery::build( - schema::balance::BalancesConnectionArgs::from((owner, request)), - ); + let args = schema::balance::BalancesConnectionArgs::from((owner, request)); + let query = schema::balance::BalancesQuery::build(args); let balances = self.query(query).await?.balances.into(); Ok(balances) @@ -1031,9 +1029,8 @@ impl FuelClient { request: PaginationRequest, ) -> io::Result> { let contract_id: schema::ContractId = (*contract).into(); - let query = schema::contract::ContractBalancesQuery::build( - ContractBalancesConnectionArgs::from((contract_id, request)), - ); + let args = ContractBalancesConnectionArgs::from((contract_id, request)); + let query = schema::contract::ContractBalancesQuery::build(args); let balances = self.query(query).await?.contract_balances.into(); @@ -1055,9 +1052,8 @@ impl FuelClient { request: PaginationRequest, ) -> io::Result> { let owner: Option = owner.map(|owner| (*owner).into()); - let query = schema::message::OwnedMessageQuery::build( - schema::message::OwnedMessagesConnectionArgs::from((owner, request)), - ); + let args = schema::message::OwnedMessagesConnectionArgs::from((owner, request)); + let query = schema::message::OwnedMessageQuery::build(args); let messages = self.query(query).await?.messages.into(); diff --git a/crates/client/src/client/schema/block.rs b/crates/client/src/client/schema/block.rs index d6772dd0b03..6cc6df25f0d 100644 --- a/crates/client/src/client/schema/block.rs +++ b/crates/client/src/client/schema/block.rs @@ -226,12 +226,13 @@ mod tests { #[test] fn blocks_connection_query_gql_output() { use cynic::QueryBuilder; - let operation = BlocksQuery::build(crate::client::schema::ConnectionArgs { + let args = crate::client::schema::ConnectionArgs { after: None, before: None, first: None, last: None, - }); + }; + let operation = BlocksQuery::build(args); insta::assert_snapshot!(operation.query) } } diff --git a/crates/client/src/client/schema/gas_price.rs b/crates/client/src/client/schema/gas_price.rs index c9883ad3476..9be2a7e6020 100644 --- a/crates/client/src/client/schema/gas_price.rs +++ b/crates/client/src/client/schema/gas_price.rs @@ -62,9 +62,10 @@ mod tests { fn estimate_gas_price_query_gql_output() { use cynic::QueryBuilder; let arbitrary_horizon = 10; - let operation = QueryEstimateGasPrice::build(BlockHorizonArgs { + let args = BlockHorizonArgs { block_horizon: Some(arbitrary_horizon.into()), - }); + }; + let operation = QueryEstimateGasPrice::build(args); insta::assert_snapshot!(operation.query) } } diff --git a/crates/client/src/client/schema/tx.rs b/crates/client/src/client/schema/tx.rs index 3f14c81756b..889327a3bfb 100644 --- a/crates/client/src/client/schema/tx.rs +++ b/crates/client/src/client/schema/tx.rs @@ -480,12 +480,13 @@ pub mod tests { fn transactions_connection_query_gql_output() { use cynic::QueryBuilder; - let operation = TransactionsQuery::build(crate::client::schema::ConnectionArgs { + let args = crate::client::schema::ConnectionArgs { after: None, before: None, first: None, last: None, - }); + }; + let operation = TransactionsQuery::build(args); insta::assert_snapshot!(operation.query) } From c85e7df3becfe8157d6c9850e10cf1cf59147803 Mon Sep 17 00:00:00 2001 From: hal3e Date: Fri, 20 Sep 2024 12:26:11 +0200 Subject: [PATCH 11/18] add Block and Header `Unknown` variant --- crates/client/src/client/schema/block.rs | 4 ++++ crates/client/src/client/types/block.rs | 2 ++ 2 files changed, 6 insertions(+) diff --git a/crates/client/src/client/schema/block.rs b/crates/client/src/client/schema/block.rs index 6cc6df25f0d..b4e7d721963 100644 --- a/crates/client/src/client/schema/block.rs +++ b/crates/client/src/client/schema/block.rs @@ -77,6 +77,8 @@ pub struct BlockEdge { #[cynic(schema_path = "./assets/schema.sdl")] pub enum BlockVersion { V1, + #[cynic(fallback)] + Unknown, } /// Block with transaction ids @@ -123,6 +125,8 @@ pub struct BlockMutation { #[cynic(schema_path = "./assets/schema.sdl")] pub enum HeaderVersion { V1, + #[cynic(fallback)] + Unknown, } #[derive(cynic::QueryFragment, Clone, Debug)] diff --git a/crates/client/src/client/types/block.rs b/crates/client/src/client/types/block.rs index 3f96d34cc6e..e09e6039f32 100644 --- a/crates/client/src/client/types/block.rs +++ b/crates/client/src/client/types/block.rs @@ -95,6 +95,7 @@ impl TryFrom for Header { time: value.time.0, application_hash: value.application_hash.into(), }), + _ => Err(ConversionError::UnknownVariant("HeaderVersion")), } } } @@ -157,6 +158,7 @@ impl TryFrom for Block { block_producer, }) } + _ => Err(ConversionError::UnknownVariant("BlockVersion")), } } } From 6275d95f7f0b6fdc622e96b534e3f9651c52738c Mon Sep 17 00:00:00 2001 From: hal3e Date: Fri, 20 Sep 2024 12:28:13 +0200 Subject: [PATCH 12/18] update changelog --- CHANGELOG.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d9a48dc7746..87078cd5777 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,20 +7,22 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased] ### Added +- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Added `Unknown` variant to `ConsensusParameters` graphql queries +- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Added `Unknown` variant to `Block` graphql queries +- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Added `TransactionType` type in `fuel-client` - [2131](https://github.com/FuelLabs/fuel-core/pull/2131): Add flow in TxPool in order to ask to newly connected peers to share their transaction pool - [2182](https://github.com/FuelLabs/fuel-core/pull/2151): Limit number of transactions that can be fetched via TxSource::next ### Changed #### Breaking +- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Transaction graphql endpoints use `TransactionType` instead of `fuel_tx::Transaction` - [2206](https://github.com/FuelLabs/fuel-core/pull/2206): Use timestamp of last block when dry running transactions. - [2153](https://github.com/FuelLabs/fuel-core/pull/2153): Updated default gas costs for the local testnet configuration to match `fuel-core 0.35.0`. ## [Version 0.36.0] ### Added -- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Added `Unknown` variant to `ConsensusParameters` graphql queries -- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Added `TransactionType` type in `fuel-client` - [2135](https://github.com/FuelLabs/fuel-core/pull/2135): Added metrics logging for number of blocks served over the p2p req/res protocol. - [2151](https://github.com/FuelLabs/fuel-core/pull/2151): Added limitations on gas used during dry_run in API. - [2188](https://github.com/FuelLabs/fuel-core/pull/2188): Added the new variant `V2` for the `ConsensusParameters` which contains the new `block_transaction_size_limit` parameter. @@ -30,7 +32,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed #### Breaking -- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Transaction graphql endpoints use `TransactionType` instead of `fuel_tx::Transaction` - [2199](https://github.com/FuelLabs/fuel-core/pull/2199): Applying several breaking changes to the WASM interface from backlog: - Get the module to execute WASM byte code from the storage first, an fallback to the built-in version in the case of the `FUEL_ALWAYS_USE_WASM`. - Added `host_v1` with a new `peek_next_txs_size` method, that accepts `tx_number_limit` and `size_limit`. From d72f0659c6dd6066d2fb20a6848bde1e83a29b2d Mon Sep 17 00:00:00 2001 From: hal3e Date: Wed, 6 Nov 2024 11:37:45 +0100 Subject: [PATCH 13/18] update changelog --- CHANGELOG.md | 124 ++++++++++++++++++++++++++------------------------- 1 file changed, 63 insertions(+), 61 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e1c6f0c830a..138a3729fd7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,6 +32,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed - [2378](https://github.com/FuelLabs/fuel-core/pull/2378): Use cached hash of the topic instead of calculating it on each publishing gossip message. +#### Breaking +- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Transaction graphql endpoints use `TransactionType` instead of `fuel_tx::Transaction`. + ## [Version 0.40.0] ### Added @@ -80,11 +83,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Added - [2309](https://github.com/FuelLabs/fuel-core/pull/2309): Limit number of concurrent queries to the graphql service. - [2216](https://github.com/FuelLabs/fuel-core/pull/2216): Add more function to the state and task of TxPoolV2 to handle the future interactions with others modules (PoA, BlockProducer, BlockImporter and P2P). -- [2263](https://github.com/FuelLabs/fuel-core/pull/2263): Transaction pool is now included in all modules of the code it has requires modifications on different modules : +- [2263](https://github.com/FuelLabs/fuel-core/pull/2263): Transaction pool is now included in all modules of the code it has requires modifications on different modules : - The PoA is now notify only when there is new transaction and not using the `tx_update_sender` anymore. - The Pool transaction source for the executor is now locking the pool until the block production is finished. - Reading operations on the pool is now asynchronous and it’s the less prioritized operation on the Pool, API has been updated accordingly. - - GasPrice is no more using async to allow the transactions verifications to not use async anymore + - GasPrice is no more using async to allow the transactions verifications to not use async anymore We also added a lot of new configuration cli parameters to fine-tune TxPool configuration. This PR also changes the way we are making the heavy work processor and a sync and asynchronous version is available in services folder (usable by anyone) @@ -119,7 +122,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed #### Breaking -- [2154](https://github.com/FuelLabs/fuel-core/pull/2154): Transaction graphql endpoints use `TransactionType` instead of `fuel_tx::Transaction` - [2299](https://github.com/FuelLabs/fuel-core/pull/2299): Anyone who wants to participate in the transaction broadcasting via p2p must upgrade to support new predicates on the TxPool level. - [2299](https://github.com/FuelLabs/fuel-core/pull/2299): Upgraded `fuel-vm` to `0.58.0`. More information in the [release](https://github.com/FuelLabs/fuel-vm/releases/tag/v0.58.0). - [2276](https://github.com/FuelLabs/fuel-core/pull/2276): Changed how complexity for blocks is calculated. The default complexity now is 80_000. All queries that somehow touch the block header now are more expensive. @@ -248,7 +250,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). And the following CLI flags are serving a new purpose - "min-gas-price" - the minimum gas price that the gas price algorithm will return - [2045](https://github.com/FuelLabs/fuel-core/pull/2045): Include withdrawal message only if transaction is executed successfully. -- [2041](https://github.com/FuelLabs/fuel-core/pull/2041): Add code for startup of the gas price algorithm updater so +- [2041](https://github.com/FuelLabs/fuel-core/pull/2041): Add code for startup of the gas price algorithm updater so the gas price db on startup is always in sync with the on chain db ## [Version 0.31.0] @@ -362,7 +364,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed -- [#1906](https://github.com/FuelLabs/fuel-core/pull/1906): Makes `cli::snapshot::Command` members public such that clients can create and execute snapshot commands programmatically. This enables snapshot execution in external programs, such as the regenesis test suite. +- [#1906](https://github.com/FuelLabs/fuel-core/pull/1906): Makes `cli::snapshot::Command` members public such that clients can create and execute snapshot commands programmatically. This enables snapshot execution in external programs, such as the regenesis test suite. - [#1891](https://github.com/FuelLabs/fuel-core/pull/1891): Regenesis now preserves `FuelBlockMerkleData` and `FuelBlockMerkleMetadata` in the off-chain table. These tables are checked when querying message proofs. - [#1886](https://github.com/FuelLabs/fuel-core/pull/1886): Use ref to `Block` in validation code - [#1876](https://github.com/FuelLabs/fuel-core/pull/1876): Updated benchmark to include the worst scenario for `CROO` opcode. Also include consensus parameters in bench output. @@ -386,12 +388,12 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1868](https://github.com/FuelLabs/fuel-core/pull/1868): Include the `event_inbox_root` in the header hash. Changed types of the `transactions_count` to `u16` and `message_receipt_count` to `u32` instead of `u64`. Updated the application hash root calculation to not pad numbers. - [#1866](https://github.com/FuelLabs/fuel-core/pull/1866): Fixed a runtime panic that occurred when restarting a node. The panic happens when the relayer database is already populated, and the relayer attempts an empty commit during start up. This invalid commit is removed in this PR. - [#1871](https://github.com/FuelLabs/fuel-core/pull/1871): Fixed `block` endpoint to return fetch the blocks from both databases after regenesis. -- [#1856](https://github.com/FuelLabs/fuel-core/pull/1856): Replaced instances of `Union` with `Enum` for GraphQL definitions of `ConsensusParametersVersion` and related types. This is needed because `Union` does not support multiple `Version`s inside discriminants or empty variants. -- [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Fixed benchmarks for the `0.25.3`. +- [#1856](https://github.com/FuelLabs/fuel-core/pull/1856): Replaced instances of `Union` with `Enum` for GraphQL definitions of `ConsensusParametersVersion` and related types. This is needed because `Union` does not support multiple `Version`s inside discriminants or empty variants. +- [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Fixed benchmarks for the `0.25.3`. - [#1870](https://github.com/FuelLabs/fuel-core/pull/1870): Improves the performance of getting the size of the contract from the `InMemoryTransaction`. - [#1851](https://github.com/FuelLabs/fuel-core/pull/1851/): Provided migration capabilities (enabled addition of new column families) to RocksDB instance. -### Added +### Added - [#1853](https://github.com/FuelLabs/fuel-core/pull/1853): Added a test case to verify the database's behavior when new columns are added to the RocksDB database. - [#1860](https://github.com/FuelLabs/fuel-core/pull/1860): Regenesis now preserves `FuelBlockIdsToHeights` off-chain table. @@ -449,14 +451,14 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - Along with the new block height, the regenesis process also increases the state transition bytecode and consensus parameters versions. It guarantees that a new network doesn't use values from the previous network and allows us not to migrate `StateTransitionBytecodeVersions` and `ConsensusParametersVersions` tables. - Added a new CLI argument, `native-executor-version,` that allows overriding of the default version of the native executor. It can be useful for side rollups that have their own history of executor upgrades. - Replaced: - + ```rust let file = std::fs::File::open(path)?; let mut snapshot: Self = serde_json::from_reader(&file)?; ``` - + with a: - + ```rust let mut json = String::new(); std::fs::File::open(&path) @@ -468,7 +470,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - Updated all tests to use `Config::local_node_*` instead of working with the `SnapshotReader` directly. It is the preparation of the tests for the futures bumps of the `Executor::VERSION`. When we increase the version, all tests continue to use `GenesisBlock.state_transition_bytecode = 0` while the version is different, which forces the usage of the WASM executor, while for tests, we still prefer to test native execution. The `Config::local_node_*` handles it and forces the executor to use the native version. - Reworked the `build.rs` file of the upgradable executor. The script now caches WASM bytecode to avoid recompilation. Also, fixed the issue with outdated WASM bytecode. The script reacts on any modifications of the `fuel-core-wasm-executor` and forces recompilation (it is why we need the cache), so WASM bytecode always is actual now. - [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Removed support of `Create` transaction from debugger since it doesn't have any script to execute. -- [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Use `fuel-vm 0.49.0` with new transactions types - `Upgrade` and `Upload`. Also added `max_bytecode_subsections` field to the `ConsensusParameters` to limit the number of bytecode subsections in the state transition bytecode. +- [#1822](https://github.com/FuelLabs/fuel-core/pull/1822): Use `fuel-vm 0.49.0` with new transactions types - `Upgrade` and `Upload`. Also added `max_bytecode_subsections` field to the `ConsensusParameters` to limit the number of bytecode subsections in the state transition bytecode. - [#1816](https://github.com/FuelLabs/fuel-core/pull/1816): Updated the upgradable executor to fetch the state transition bytecode from the database when the version doesn't match a native one. This change enables the WASM executor in the "production" build and requires a `wasm32-unknown-unknown` target. ## [Version 0.24.2] @@ -507,9 +509,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [1785](https://github.com/FuelLabs/fuel-core/pull/1785): Producer will only include DA height if it has enough gas to include the associate forced transactions. - [#1771](https://github.com/FuelLabs/fuel-core/pull/1771): Contract 'states' and 'balances' brought back into `ContractConfig`. Parquet now writes a file per table. - [1779](https://github.com/FuelLabs/fuel-core/pull/1779): Modify Relayer service to order Events from L1 by block index -- [#1783](https://github.com/FuelLabs/fuel-core/pull/1783): The PR upgrade `fuel-vm` to `0.48.0` release. Because of some breaking changes, we also adapted our codebase to follow them: +- [#1783](https://github.com/FuelLabs/fuel-core/pull/1783): The PR upgrade `fuel-vm` to `0.48.0` release. Because of some breaking changes, we also adapted our codebase to follow them: - Implementation of `Default` for configs was moved under the `test-helpers` feature. The `fuel-core` binary uses testnet configuration instead of `Default::default`(for cases when `ChainConfig` was not provided by the user). - - All parameter types are enums now and require corresponding modifications across the codebase(we need to use getters and setters). The GraphQL API remains the same for simplicity, but each parameter now has one more field - `version`, that can be used to decide how to deserialize. + - All parameter types are enums now and require corresponding modifications across the codebase(we need to use getters and setters). The GraphQL API remains the same for simplicity, but each parameter now has one more field - `version`, that can be used to decide how to deserialize. - The `UtxoId` type now is 34 bytes instead of 33. It affects hex representation and requires adding `00`. - The `block_gas_limit` was moved to `ConsensusParameters` from `ChainConfig`. It means the block producer doesn't specify the block gas limit anymore, and we don't need to propagate this information. - The `bytecodeLength` field is removed from the `Create` transaction. @@ -532,13 +534,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - The change splits the `KeyValueStore` into `KeyValueInspect` and `KeyValueMutate`, as well the `Blueprint` into `BlueprintInspect` and `BlueprintMutate`. It allows requiring less restricted constraints for any read-related operations. - One of the main ideas of the change is to allow for the actual storage only to implement `KeyValueInspect` and `Modifiable` without the `KeyValueMutate`. It simplifies work with the databases and provides a safe way of interacting with them (Modification into the database can only go through the `Modifiable::commit_changes`). This feature is used to [track the height](https://github.com/FuelLabs/fuel-core/pull/1694/files#diff-c95a3d57a39feac7c8c2f3b193a24eec39e794413adc741df36450f9a4539898) of each database during commits and even limit how commits are done, providing additional safety. This part of the change was done as a [separate commit](https://github.com/FuelLabs/fuel-core/pull/1694/commits/7b1141ac838568e3590f09dd420cb24a6946bd32). - + - The `StorageTransaction` is a `StructuredStorage` that uses `InMemoryTransaction` inside to accumulate modifications. Only `InMemoryTransaction` has a real implementation of the `KeyValueMutate`(Other types only implement it in tests). - + - The implementation of the `Modifiable` for the `Database` contains a business logic that provides additional safety but limits the usage of the database. The `Database` now tracks its height and is responsible for its updates. In the `commit_changes` function, it analyzes the changes that were done and tries to find a new height(For example, in the case of the `OnChain` database, we are looking for a new `Block` in the `FuelBlocks` table). - + - As was planned in the issue, now the executor has full control over how commits to the storage are done. - + - All mutation methods now require `&mut self` - exclusive ownership over the object to be able to write into it. It almost negates the chance of concurrent modification of the storage, but it is still possible since the `Database` implements the `Clone` trait. To be sure that we don't corrupt the state of the database, the `commit_changes` function implements additional safety checks to be sure that we commit updates per each height only once time. - Side changes: @@ -630,7 +632,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1657](https://github.com/FuelLabs/fuel-core/pull/1657): Changed `CROO` gas price type from `Word` to `DependentGasPrice`. The dependent gas price values are dummy values while awaiting updated benchmarks. - [#1671](https://github.com/FuelLabs/fuel-core/pull/1671): The GraphQL API uses block height instead of the block id where it is possible. The transaction status contains `block_height` instead of the `block_id`. - [#1675](https://github.com/FuelLabs/fuel-core/pull/1675): Simplify GQL schema by disabling contract resolvers in most cases, and just return a ContractId scalar instead. -- [#1658](https://github.com/FuelLabs/fuel-core/pull/1658): Receipts are part of the transaction status. +- [#1658](https://github.com/FuelLabs/fuel-core/pull/1658): Receipts are part of the transaction status. Removed `reason` from the `TransactionExecutionResult::Failed`. It can be calculated based on the program state and receipts. Also, it is not possible to fetch `receipts` from the `Transaction` directly anymore. Instead, you need to fetch `status` and its receipts. - [#1646](https://github.com/FuelLabs/fuel-core/pull/1646): Remove redundant receipts from queries. @@ -644,57 +646,57 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - [#1596](https://github.com/FuelLabs/fuel-core/pull/1596): Make `Consensus` type a version-able enum - [#1593](https://github.com/FuelLabs/fuel-core/pull/1593): Make `Block` type a version-able enum - [#1576](https://github.com/FuelLabs/fuel-core/pull/1576): The change moves the implementation of the storage traits for required tables from `fuel-core` to `fuel-core-storage` crate. The change also adds a more flexible configuration of the encoding/decoding per the table and allows the implementation of specific behaviors for the table in a much easier way. It unifies the encoding between database, SMTs, and iteration, preventing mismatching bytes representation on the Rust type system level. Plus, it increases the re-usage of the code by applying the same blueprint to other tables. - + It is a breaking PR because it changes database encoding/decoding for some tables. - + ### StructuredStorage - + The change adds a new type `StructuredStorage`. It is a wrapper around the key-value storage that implements the storage traits(`StorageInspect`, `StorageMutate`, `StorageRead`, etc) for the tables with blueprint. This blueprint works in tandem with the `TableWithBlueprint` trait. The table may implement `TableWithBlueprint` specifying the blueprint, as an example: - + ```rust impl TableWithBlueprint for ContractsRawCode { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } ``` - + It is a definition of the blueprint for the `ContractsRawCode` table. It has a plain blueprint meaning it simply encodes/decodes bytes and stores/loads them into/from the storage. As a key codec and value codec, it uses a `Raw` encoding/decoding that simplifies writing bytes and loads them back into the memory without applying any serialization or deserialization algorithm. - + If the table implements `TableWithBlueprint` and the selected codec satisfies all blueprint requirements, the corresponding storage traits for that table are implemented on the `StructuredStorage` type. - + ### Codecs - + Each blueprint allows customizing the key and value codecs. It allows the use of different codecs for different tables, taking into account the complexity and weight of the data and providing a way of more optimal implementation. - + That property may be very useful to perform migration in a more easier way. Plus, it also can be a `no_std` migration potentially allowing its fraud proving. - + An example of migration: - + ```rust /// Define the table for V1 value encoding/decoding. impl TableWithBlueprint for ContractsRawCodeV1 { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } - + /// Define the table for V2 value encoding/decoding. /// It uses `Postcard` codec for the value instead of `Raw` codec. /// /// # Dev-note: The columns is the same. impl TableWithBlueprint for ContractsRawCodeV2 { type Blueprint = Plain; - + fn column() -> Column { Column::ContractsRawCode } } - + fn migration(storage: &mut Database) { let mut iter = storage.iter_all::(None); while let Ok((key, value)) = iter.next() { @@ -703,19 +705,19 @@ and this project adheres to [Semantic Versioning](http://semver.org/). } } ``` - + ### Structures - + The blueprint of the table defines its behavior. As an example, a `Plain` blueprint simply encodes/decodes bytes and stores/loads them into/from the storage. The `SMT` blueprint builds a sparse merkle tree on top of the key-value pairs. - + Implementing a blueprint one time, we can apply it to any table satisfying the requirements of this blueprint. It increases the re-usage of the code and minimizes duplication. - + It can be useful if we decide to create global roots for all required tables that are used in fraud proving. - + ```rust impl TableWithBlueprint for SpentMessages { type Blueprint = Plain; - + fn column() -> Column { Column::SpentMessages } @@ -723,28 +725,28 @@ and this project adheres to [Semantic Versioning](http://semver.org/). | | \|/ - + impl TableWithBlueprint for SpentMessages { type Blueprint = Sparse; - + fn column() -> Column { Column::SpentMessages } } ``` - + ### Side changes - + #### `iter_all` The `iter_all` functionality now accepts the table instead of `K` and `V` generics. It is done to use the correct codec during deserialization. Also, the table definition provides the column. - + #### Duplicated unit tests - + The `fuel-core-storage` crate provides macros that generate unit tests. Almost all tables had the same test like `get`, `insert`, `remove`, `exist`. All duplicated tests were moved to macros. The unique one still stays at the same place where it was before. - + #### `StorageBatchMutate` - + Added a new `StorageBatchMutate` trait that we can move to `fuel-storage` crate later. It allows batch operations on the storage. It may be more performant in some cases. - [#1573](https://github.com/FuelLabs/fuel-core/pull/1573): Remove nested p2p request/response encoding. Only breaks p2p networking compatibility with older fuel-core versions, but is otherwise fully internal. @@ -758,22 +760,22 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ```shell --tx-blacklist-addresses The list of banned addresses ignored by the `TxPool` - + [env: TX_BLACKLIST_ADDRESSES=] - + --tx-blacklist-coins The list of banned coins ignored by the `TxPool` - + [env: TX_BLACKLIST_COINS=] - + --tx-blacklist-messages The list of banned messages ignored by the `TxPool` - + [env: TX_BLACKLIST_MESSAGES=] - + --tx-blacklist-contracts The list of banned contracts ignored by the `TxPool` - + [env: TX_BLACKLIST_CONTRACTS=] ``` @@ -808,13 +810,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Changed -- [#1517](https://github.com/FuelLabs/fuel-core/pull/1517): Changed default gossip heartbeat interval to 500ms. +- [#1517](https://github.com/FuelLabs/fuel-core/pull/1517): Changed default gossip heartbeat interval to 500ms. - [#1520](https://github.com/FuelLabs/fuel-core/pull/1520): Extract `executor` into `fuel-core-executor` crate. ### Fixed #### Breaking -- [#1536](https://github.com/FuelLabs/fuel-core/pull/1536): The change fixes the contracts tables to not touch SMT nodes of foreign contracts. Before, it was possible to invalidate the SMT from another contract. It is a breaking change and requires re-calculating the whole state from the beginning with new SMT roots. +- [#1536](https://github.com/FuelLabs/fuel-core/pull/1536): The change fixes the contracts tables to not touch SMT nodes of foreign contracts. Before, it was possible to invalidate the SMT from another contract. It is a breaking change and requires re-calculating the whole state from the beginning with new SMT roots. - [#1542](https://github.com/FuelLabs/fuel-core/pull/1542): Migrates information about peers to NodeInfo instead of ChainInfo. It also elides information about peers in the default node_info query. ## [Version 0.21.0] @@ -840,7 +842,7 @@ FuelVM received a lot of safety and stability improvements: - Removed the `ChainId` from the `PredicateId` calculation, allowing the use of predicates cross-chain. - Improvements in the performance of some storage-related opcodes. - Support the `ECAL` instruction that allows adding custom functionality to the VM. It can be used to create unique rollups or advanced indexers in the future. -- Support of [transaction policies](https://github.com/FuelLabs/fuel-vm/blob/master/CHANGELOG.md#version-0420) provides additional safety for the user. +- Support of [transaction policies](https://github.com/FuelLabs/fuel-vm/blob/master/CHANGELOG.md#version-0420) provides additional safety for the user. It also allows the implementation of a multi-dimensional price model in the future, making the transaction execution cheaper and allowing more transactions that don't affect storage. - Refactored errors, returning more detailed errors to the user, simplifying debugging. @@ -881,8 +883,8 @@ FuelVM received a lot of safety and stability improvements: - [#1339](https://github.com/FuelLabs/fuel-core/pull/1339): Adds `baseAssetId` to `FeeParameters` in the GraphQL API. - [#1331](https://github.com/FuelLabs/fuel-core/pull/1331): Add peer reputation reporting to block import code. - [#1324](https://github.com/FuelLabs/fuel-core/pull/1324): Added pyroscope profiling to fuel-core, intended to be used by a secondary docker image that has debug symbols enabled. -- [#1309](https://github.com/FuelLabs/fuel-core/pull/1309): Add documentation for running debug builds with CLion and Visual Studio Code. -- [#1308](https://github.com/FuelLabs/fuel-core/pull/1308): Add support for loading .env files when compiling with the `env` feature. This allows users to conveniently supply CLI arguments in a secure and IDE-agnostic way. +- [#1309](https://github.com/FuelLabs/fuel-core/pull/1309): Add documentation for running debug builds with CLion and Visual Studio Code. +- [#1308](https://github.com/FuelLabs/fuel-core/pull/1308): Add support for loading .env files when compiling with the `env` feature. This allows users to conveniently supply CLI arguments in a secure and IDE-agnostic way. - [#1304](https://github.com/FuelLabs/fuel-core/pull/1304): Implemented `submit_and_await_commit_with_receipts` method for `FuelClient`. - [#1286](https://github.com/FuelLabs/fuel-core/pull/1286): Include readable names for test cases where missing. - [#1274](https://github.com/FuelLabs/fuel-core/pull/1274): Added tests to benchmark block synchronization. From a1b07af23807efd6baa1321d598c940d13a49d80 Mon Sep 17 00:00:00 2001 From: hal3e Date: Wed, 6 Nov 2024 11:41:10 +0100 Subject: [PATCH 14/18] fix spelling error --- crates/client/assets/debugAdapterProtocol.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/client/assets/debugAdapterProtocol.json b/crates/client/assets/debugAdapterProtocol.json index 44a0c2eed9c..b435aef0f85 100644 --- a/crates/client/assets/debugAdapterProtocol.json +++ b/crates/client/assets/debugAdapterProtocol.json @@ -1440,7 +1440,7 @@ { "$ref": "#/definitions/Request" }, { "type": "object", - "description": "Replaces all existing instruction breakpoints. Typically, instruction breakpoints would be set from a diassembly window. \nTo clear all instruction breakpoints, specify an empty array.\nWhen an instruction breakpoint is hit, a 'stopped' event (with reason 'instruction breakpoint') is generated.\nClients should only call this request if the capability 'supportsInstructionBreakpoints' is true.", + "description": "Replaces all existing instruction breakpoints. Typically, instruction breakpoints would be set from a disassembly window. \nTo clear all instruction breakpoints, specify an empty array.\nWhen an instruction breakpoint is hit, a 'stopped' event (with reason 'instruction breakpoint') is generated.\nClients should only call this request if the capability 'supportsInstructionBreakpoints' is true.", "properties": { "command": { "type": "string", From b1c255e7e5375ac5ec3c52717c54db79dc02fdf9 Mon Sep 17 00:00:00 2001 From: hal3e Date: Wed, 6 Nov 2024 12:01:12 +0100 Subject: [PATCH 15/18] insta review --- ..._da_compressed__tests__block_by_height_query_gql_output.snap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__da_compressed__tests__block_by_height_query_gql_output.snap b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__da_compressed__tests__block_by_height_query_gql_output.snap index 62f797d34e8..136e3636b2e 100644 --- a/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__da_compressed__tests__block_by_height_query_gql_output.snap +++ b/crates/client/src/client/schema/snapshots/fuel_core_client__client__schema__da_compressed__tests__block_by_height_query_gql_output.snap @@ -2,7 +2,7 @@ source: crates/client/src/client/schema/da_compressed.rs expression: operation.query --- -query($height: U32!) { +query DaCompressedBlockByHeightQuery($height: U32!) { daCompressedBlock(height: $height) { bytes } From f42ace83a5c96f63ede76916725acdac65bb639a Mon Sep 17 00:00:00 2001 From: hal3e Date: Thu, 14 Nov 2024 16:53:21 +0100 Subject: [PATCH 16/18] pr comments --- Cargo.lock | 953 ++++++++---------------------- crates/client/src/client/types.rs | 85 +-- 2 files changed, 261 insertions(+), 777 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 21e00f3fe1c..67a97f72c3e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -91,12 +91,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "aliasable" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd" - [[package]] name = "allocator-api2" version = "0.2.18" @@ -126,9 +120,9 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" [[package]] name = "anstream" -version = "0.6.18" +version = "0.6.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" +checksum = "23a1e53f0f5d86382dafe1cf314783b2044280f406e7e1506368220ad11b1338" dependencies = [ "anstyle", "anstyle-parse", @@ -141,9 +135,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.10" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" +checksum = "8365de52b16c035ff4fcafe0092ba9390540e3e352870ac09933bebcaa2c8c56" [[package]] name = "anstyle-parse" @@ -175,15 +169,15 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.93" +version = "1.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" +checksum = "c042108f3ed77fd83760a5fd79b53be043192bb3b9dba91d8c574c0ada7850c8" [[package]] name = "arbitrary" -version = "1.4.1" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" [[package]] name = "arrayref" @@ -197,6 +191,12 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" +[[package]] +name = "ascii" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" + [[package]] name = "ascii-canvas" version = "3.0.0" @@ -230,7 +230,7 @@ checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", "synstructure", ] @@ -242,7 +242,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -305,7 +305,7 @@ dependencies = [ "async-task", "concurrent-queue", "fastrand 2.1.1", - "futures-lite 2.4.0", + "futures-lite 2.3.0", "slab", ] @@ -332,7 +332,7 @@ dependencies = [ "async-io 2.3.4", "async-lock 3.4.0", "blocking", - "futures-lite 2.4.0", + "futures-lite 2.3.0", "once_cell", ] @@ -377,12 +377,12 @@ checksum = "a94c2d176893486bd37cd1b6defadd999f7357bf5804e92f510c08bcf16c538f" dependencies = [ "Inflector", "async-graphql-parser", - "darling", + "darling 0.20.10", "proc-macro-crate", "proc-macro2", "quote", "strum 0.26.3", - "syn 2.0.87", + "syn 2.0.85", "thiserror", ] @@ -440,10 +440,10 @@ dependencies = [ "cfg-if", "concurrent-queue", "futures-io", - "futures-lite 2.4.0", + "futures-lite 2.3.0", "parking", "polling 3.7.3", - "rustix 0.38.39", + "rustix 0.38.37", "slab", "tracing", "windows-sys 0.59.0", @@ -493,7 +493,7 @@ dependencies = [ "cfg-if", "event-listener 3.1.0", "futures-lite 1.13.0", - "rustix 0.38.39", + "rustix 0.38.37", "windows-sys 0.48.0", ] @@ -509,7 +509,7 @@ dependencies = [ "cfg-if", "futures-core", "futures-io", - "rustix 0.38.39", + "rustix 0.38.37", "signal-hook-registry", "slab", "windows-sys 0.59.0", @@ -529,7 +529,7 @@ dependencies = [ "futures-channel", "futures-core", "futures-io", - "futures-lite 2.4.0", + "futures-lite 2.3.0", "gloo-timers 0.3.0", "kv-log-macro", "log", @@ -560,7 +560,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -577,7 +577,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -662,7 +662,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -740,9 +740,9 @@ dependencies = [ [[package]] name = "aws-sdk-kms" -version = "1.49.0" +version = "1.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4c89f1d2e0df99ccd21f98598c1e587ad78bd87ae22a74aba392b5566bb038" +checksum = "2afbd208dabc6785946d4ef2444eb1f54fe0aaf0f62f2a4f9a9e9c303aeff0be" dependencies = [ "aws-credential-types", "aws-runtime", @@ -762,9 +762,9 @@ dependencies = [ [[package]] name = "aws-sdk-sso" -version = "1.48.0" +version = "1.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded855583fa1d22e88fe39fd6062b062376e50a8211989e07cf5e38d52eb3453" +checksum = "a8776850becacbd3a82a4737a9375ddb5c6832a51379f24443a98e61513f852c" dependencies = [ "aws-credential-types", "aws-runtime", @@ -784,9 +784,9 @@ dependencies = [ [[package]] name = "aws-sdk-ssooidc" -version = "1.49.0" +version = "1.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9177ea1192e6601ae16c7273385690d88a7ed386a00b74a6bc894d12103cd933" +checksum = "0007b5b8004547133319b6c4e87193eee2a0bcb3e4c18c75d09febe9dab7b383" dependencies = [ "aws-credential-types", "aws-runtime", @@ -806,9 +806,9 @@ dependencies = [ [[package]] name = "aws-sdk-sts" -version = "1.48.0" +version = "1.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "823ef553cf36713c97453e2ddff1eb8f62be7f4523544e2a5db64caf80100f0a" +checksum = "9fffaa356e7f1c725908b75136d53207fa714e348f365671df14e95a60530ad3" dependencies = [ "aws-credential-types", "aws-runtime", @@ -917,8 +917,8 @@ dependencies = [ "http-body 0.4.6", "http-body 1.0.1", "httparse", - "hyper 0.14.31", - "hyper-rustls 0.24.2", + "hyper", + "hyper-rustls", "once_cell", "pin-project-lite", "pin-utils", @@ -929,9 +929,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime-api" -version = "1.7.3" +version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92165296a47a812b267b4f41032ff8069ab7ff783696d217f0994a0d7ab585cd" +checksum = "e086682a53d3aa241192aa110fa8dfce98f2f5ac2ead0de84d41582c7e8fdb96" dependencies = [ "aws-smithy-async", "aws-smithy-types", @@ -946,9 +946,9 @@ dependencies = [ [[package]] name = "aws-smithy-types" -version = "1.2.9" +version = "1.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fbd94a32b3a7d55d3806fe27d98d3ad393050439dd05eb53ece36ec5e3d3510" +checksum = "07c9cdc179e6afbf5d391ab08c85eac817b51c87e1892a5edb5f7bbdc64314b4" dependencies = [ "base64-simd", "bytes", @@ -1006,7 +1006,7 @@ dependencies = [ "futures-util", "http 0.2.12", "http-body 0.4.6", - "hyper 0.14.31", + "hyper", "itoa", "matchit", "memchr", @@ -1016,7 +1016,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 0.1.2", + "sync_wrapper", "tokio", "tower", "tower-http 0.3.5", @@ -1108,12 +1108,6 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" -[[package]] -name = "beef" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" - [[package]] name = "bindgen" version = "0.65.1" @@ -1132,7 +1126,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -1213,7 +1207,7 @@ dependencies = [ "async-channel 2.3.1", "async-task", "futures-io", - "futures-lite 2.4.0", + "futures-lite 2.3.0", "piper", ] @@ -1336,9 +1330,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.1.36" +version = "1.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baee610e9452a8f6f0a1b6194ec09ff9e2d85dea54432acdae41aa0761c95d70" +checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" dependencies = [ "jobserver", "libc", @@ -1513,7 +1507,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -1595,6 +1589,19 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +[[package]] +name = "combine" +version = "3.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da3da6baa321ec19e1cc41d31bf599f00c783d0517095cdaf0332e3fe8d20680" +dependencies = [ + "ascii", + "byteorder", + "either", + "memchr", + "unreachable", +] + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -1690,9 +1697,9 @@ checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" [[package]] name = "cookie" -version = "0.18.1" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" +checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24" dependencies = [ "percent-encoding", "time", @@ -1701,12 +1708,12 @@ dependencies = [ [[package]] name = "cookie_store" -version = "0.21.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4934e6b7e8419148b6ef56950d277af8561060b56afd59e2aadf98b59fce6baa" +checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6" dependencies = [ "cookie", - "idna 0.5.0", + "idna 0.3.0", "log", "publicsuffix", "serde", @@ -2094,18 +2101,17 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] name = "cynic" -version = "3.8.0" +version = "2.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "394a4797bda697d5e028f3bc3fcb8c8c374a2b72cf8d22e0efc0e127c95fd11f" +checksum = "b1afa0591b1021e427e548a1f0f147fe6168f6c7c7f7006bace77f28856051b8" dependencies = [ "cynic-proc-macros", - "ref-cast", - "reqwest 0.12.9", + "reqwest", "serde", "serde_json", "static_assertions", @@ -2114,43 +2120,38 @@ dependencies = [ [[package]] name = "cynic-codegen" -version = "3.8.0" +version = "2.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "408ad3d9c8d729e4d89e1aaed76eab918f76169f1bb3aa017c9fc1b39dac3066" +checksum = "70a1bb05cc554f46079d0fa72abe995a2d32d0737d410a41da75b31e3f7ef768" dependencies = [ "counter", - "cynic-parser", - "darling", + "darling 0.13.4", + "graphql-parser", "once_cell", - "ouroboros", "proc-macro2", "quote", "strsim 0.10.0", - "syn 2.0.87", - "thiserror", + "syn 1.0.109", ] [[package]] -name = "cynic-parser" -version = "0.4.5" +name = "cynic-proc-macros" +version = "2.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718f6cd8c54ae5249fd42b0c86639df0100b8a86eea2e5f1b915cde2e1481453" +checksum = "aa595c4ed7a5374e0e58c5c34f9d93bd6b7d45062790963bd4b4c3c0bf520c4d" dependencies = [ - "indexmap 2.6.0", - "lalrpop-util", - "logos", + "cynic-codegen", + "syn 1.0.109", ] [[package]] -name = "cynic-proc-macros" -version = "3.8.0" +name = "darling" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f72af69ebf914a975468c4f7e3f81ddc5482e140dd98032d90e7602c535681d" +checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" dependencies = [ - "cynic-codegen", - "darling", - "quote", - "syn 2.0.87", + "darling_core 0.13.4", + "darling_macro 0.13.4", ] [[package]] @@ -2159,8 +2160,22 @@ version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.10", + "darling_macro 0.20.10", +] + +[[package]] +name = "darling_core" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.10.0", + "syn 1.0.109", ] [[package]] @@ -2174,7 +2189,18 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.87", + "syn 2.0.85", +] + +[[package]] +name = "darling_macro" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" +dependencies = [ + "darling_core 0.13.4", + "quote", + "syn 1.0.109", ] [[package]] @@ -2183,9 +2209,9 @@ version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ - "darling_core", + "darling_core 0.20.10", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -2278,7 +2304,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -2298,7 +2324,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -2414,7 +2440,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -2574,7 +2600,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -2594,7 +2620,7 @@ checksum = "a1ab991c1362ac86c61ab6f556cff143daa22e5a15e4e189df818b2fd19fe65b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -2746,10 +2772,10 @@ dependencies = [ "proc-macro2", "quote", "regex", - "reqwest 0.11.27", + "reqwest", "serde", "serde_json", - "syn 2.0.87", + "syn 2.0.85", "toml 0.8.19", "walkdir", ] @@ -2767,7 +2793,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -2793,7 +2819,7 @@ dependencies = [ "serde", "serde_json", "strum 0.26.3", - "syn 2.0.87", + "syn 2.0.85", "tempfile", "thiserror", "tiny-keccak", @@ -2808,7 +2834,7 @@ checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" dependencies = [ "chrono", "ethers-core", - "reqwest 0.11.27", + "reqwest", "semver", "serde", "serde_json", @@ -2833,7 +2859,7 @@ dependencies = [ "futures-locks", "futures-util", "instant", - "reqwest 0.11.27", + "reqwest", "serde", "serde_json", "thiserror", @@ -2866,7 +2892,7 @@ dependencies = [ "jsonwebtoken", "once_cell", "pin-project", - "reqwest 0.11.27", + "reqwest", "serde", "serde_json", "thiserror", @@ -2983,8 +3009,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43ddc25e1ad2cc0106d5e2d967397b4fb2068a66677ee9b0eea4600e5cfe8fb4" dependencies = [ "futures", - "hyper 0.14.31", - "hyper-rustls 0.24.2", + "hyper", + "hyper-rustls", "hyper-timeout", "log", "pin-project", @@ -3195,7 +3221,7 @@ dependencies = [ "fuel-core-upgradable-executor", "futures", "hex", - "hyper 0.14.31", + "hyper", "indicatif", "itertools 0.12.1", "mockall", @@ -3340,10 +3366,10 @@ dependencies = [ "fuel-core-types 0.40.0", "futures", "hex", - "hyper-rustls 0.24.2", + "hyper-rustls", "insta", "itertools 0.12.1", - "reqwest 0.12.9", + "reqwest", "schemafy_lib", "serde", "serde_json", @@ -3456,7 +3482,7 @@ dependencies = [ "futures", "num_enum", "parking_lot", - "reqwest 0.12.9", + "reqwest", "serde", "strum 0.25.0", "strum_macros 0.25.3", @@ -3728,7 +3754,7 @@ dependencies = [ "fuel-core-upgradable-executor", "futures", "hex", - "hyper 0.14.31", + "hyper", "insta", "itertools 0.12.1", "k256", @@ -3737,7 +3763,7 @@ dependencies = [ "primitive-types", "proptest", "rand", - "reqwest 0.12.9", + "reqwest", "rstest", "serde_json", "spki", @@ -3893,7 +3919,7 @@ checksum = "3f49fdbfc1615d88d2849650afc2b0ac2fecd69661ebadd31a073d8416747764" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", "synstructure", ] @@ -3905,7 +3931,7 @@ checksum = "ab0bc46a3552964bae5169e79b383761a54bd115ea66951a1a7a229edcefa55a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", "synstructure", ] @@ -4177,9 +4203,9 @@ dependencies = [ [[package]] name = "futures-lite" -version = "2.4.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f1fa2f9765705486b33fd2acf1577f8ec449c2ba1f318ae5447697b7c08d210" +checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5" dependencies = [ "fastrand 2.1.1", "futures-core", @@ -4206,7 +4232,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -4216,7 +4242,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8f2f12607f92c69b12ed746fabf9ca4f5c482cba46679c1a75b874ed7c26adb" dependencies = [ "futures-io", - "rustls 0.23.16", + "rustls 0.23.15", "rustls-pki-types", ] @@ -4359,6 +4385,16 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "graphql-parser" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2ebc8013b4426d5b81a4364c419a95ed0b404af2b82e2457de52d9348f0e474" +dependencies = [ + "combine", + "thiserror", +] + [[package]] name = "group" version = "0.13.0" @@ -4436,9 +4472,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" dependencies = [ "allocator-api2", "equivalent", @@ -4735,25 +4771,6 @@ dependencies = [ "want", ] -[[package]] -name = "hyper" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" -dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "httparse", - "itoa", - "pin-project-lite", - "smallvec", - "tokio", - "want", -] - [[package]] name = "hyper-rustls" version = "0.24.2" @@ -4762,31 +4779,13 @@ checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" dependencies = [ "futures-util", "http 0.2.12", - "hyper 0.14.31", + "hyper", "log", "rustls 0.21.12", "rustls-native-certs", "tokio", - "tokio-rustls 0.24.1", - "webpki-roots 0.25.4", -] - -[[package]] -name = "hyper-rustls" -version = "0.27.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" -dependencies = [ - "futures-util", - "http 1.1.0", - "hyper 1.5.0", - "hyper-util", - "rustls 0.23.16", - "rustls-pki-types", - "tokio", - "tokio-rustls 0.26.0", - "tower-service", - "webpki-roots 0.26.6", + "tokio-rustls", + "webpki-roots", ] [[package]] @@ -4795,31 +4794,12 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" dependencies = [ - "hyper 0.14.31", + "hyper", "pin-project-lite", "tokio", "tokio-io-timeout", ] -[[package]] -name = "hyper-util" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" -dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "hyper 1.5.0", - "pin-project-lite", - "socket2 0.5.7", - "tokio", - "tower-service", - "tracing", -] - [[package]] name = "iana-time-zone" version = "0.1.61" @@ -4843,124 +4823,6 @@ dependencies = [ "cc", ] -[[package]] -name = "icu_collections" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_locid" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", -] - -[[package]] -name = "icu_locid_transform" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_locid_transform_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" - -[[package]] -name = "icu_normalizer" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "utf16_iter", - "utf8_iter", - "write16", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" - -[[package]] -name = "icu_properties" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_locid_transform", - "icu_properties_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" - -[[package]] -name = "icu_provider" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_provider_macros", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_provider_macros" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - [[package]] name = "id-arena" version = "2.2.1" @@ -5003,27 +4865,6 @@ dependencies = [ "unicode-normalization", ] -[[package]] -name = "idna" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" -dependencies = [ - "idna_adapter", - "smallvec", - "utf8_iter", -] - -[[package]] -name = "idna_adapter" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" -dependencies = [ - "icu_normalizer", - "icu_properties", -] - [[package]] name = "if-addrs" version = "0.10.2" @@ -5065,7 +4906,7 @@ dependencies = [ "bytes", "futures", "http 0.2.12", - "hyper 0.14.31", + "hyper", "log", "rand", "tokio", @@ -5109,7 +4950,7 @@ dependencies = [ "autocfg", "impl-tools-lib", "proc-macro-error2", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -5121,7 +4962,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -5159,7 +5000,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", - "hashbrown 0.15.1", + "hashbrown 0.15.0", "serde", ] @@ -5187,9 +5028,9 @@ dependencies = [ [[package]] name = "insta" -version = "1.41.1" +version = "1.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e9ffc4d4892617c50a928c52b2961cb5174b6fc6ebf252b2fac9d21955c48b8" +checksum = "6593a41c7a73841868772495db7dc1e8ecab43bb5c0b6da2059246c4b506ab60" dependencies = [ "console", "lazy_static", @@ -5453,9 +5294,9 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.11" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" +checksum = "3bda4c6077b0b08da2c48b172195795498381a7c8988c9e6212a6c55c5b9bd70" [[package]] name = "libp2p" @@ -5781,7 +5622,7 @@ dependencies = [ "quinn", "rand", "ring 0.17.8", - "rustls 0.23.16", + "rustls 0.23.15", "socket2 0.5.7", "thiserror", "tokio", @@ -5842,7 +5683,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -5894,7 +5735,7 @@ dependencies = [ "libp2p-identity", "rcgen", "ring 0.17.8", - "rustls 0.23.16", + "rustls 0.23.15", "rustls-webpki 0.101.7", "thiserror", "x509-parser", @@ -5935,7 +5776,7 @@ dependencies = [ "thiserror", "tracing", "url", - "webpki-roots 0.25.4", + "webpki-roots", ] [[package]] @@ -6078,12 +5919,6 @@ version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" -[[package]] -name = "litemap" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" - [[package]] name = "lock_api" version = "0.4.12" @@ -6103,46 +5938,13 @@ dependencies = [ "value-bag", ] -[[package]] -name = "logos" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c6b6e02facda28ca5fb8dbe4b152496ba3b1bd5a4b40bb2b1b2d8ad74e0f39b" -dependencies = [ - "logos-derive", -] - -[[package]] -name = "logos-codegen" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b32eb6b5f26efacd015b000bfc562186472cd9b34bdba3f6b264e2a052676d10" -dependencies = [ - "beef", - "fnv", - "lazy_static", - "proc-macro2", - "quote", - "regex-syntax 0.8.5", - "syn 2.0.87", -] - -[[package]] -name = "logos-derive" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e5d0c5463c911ef55624739fc353238b4e310f0144be1f875dc42fec6bfd5ec" -dependencies = [ - "logos-codegen", -] - [[package]] name = "lru" version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" dependencies = [ - "hashbrown 0.15.1", + "hashbrown 0.15.0", ] [[package]] @@ -6216,7 +6018,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" dependencies = [ - "rustix 0.38.39", + "rustix 0.38.37", ] [[package]] @@ -6660,7 +6462,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -6682,7 +6484,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" dependencies = [ "crc32fast", - "hashbrown 0.15.1", + "hashbrown 0.15.0", "indexmap 2.6.0", "memchr", ] @@ -6766,31 +6568,6 @@ version = "6.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1" -[[package]] -name = "ouroboros" -version = "0.18.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "944fa20996a25aded6b4795c6d63f10014a7a83f8be9828a11860b08c5fc4a67" -dependencies = [ - "aliasable", - "ouroboros_macro", - "static_assertions", -] - -[[package]] -name = "ouroboros_macro" -version = "0.18.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39b0deead1528fd0e5947a8546a9642a9777c25f6e1e26f34c97b204bbb465bd" -dependencies = [ - "heck 0.4.1", - "itertools 0.12.1", - "proc-macro2", - "proc-macro2-diagnostics", - "quote", - "syn 2.0.87", -] - [[package]] name = "outref" version = "0.5.1" @@ -7026,7 +6803,7 @@ dependencies = [ "phf_shared 0.11.2", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -7064,7 +6841,7 @@ checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -7160,7 +6937,7 @@ dependencies = [ "concurrent-queue", "hermit-abi 0.4.0", "pin-project-lite", - "rustix 0.38.39", + "rustix 0.38.37", "tracing", "windows-sys 0.59.0", ] @@ -7306,7 +7083,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" dependencies = [ "proc-macro2", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -7395,19 +7172,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "proc-macro2-diagnostics" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", - "version_check", - "yansi 1.0.1", -] - [[package]] name = "prometheus-client" version = "0.22.3" @@ -7428,7 +7192,7 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -7511,7 +7275,7 @@ dependencies = [ "log", "names", "prost", - "reqwest 0.11.27", + "reqwest", "thiserror", "url", "winapi", @@ -7597,7 +7361,7 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash 2.0.0", - "rustls 0.23.16", + "rustls 0.23.15", "socket2 0.5.7", "thiserror", "tokio", @@ -7614,7 +7378,7 @@ dependencies = [ "rand", "ring 0.17.8", "rustc-hash 2.0.0", - "rustls 0.23.16", + "rustls 0.23.15", "slab", "thiserror", "tinyvec", @@ -7623,11 +7387,10 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.7" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d5a626c6807713b15cac82a6acaccd6043c9a5408c24baae07611fec3f243da" +checksum = "4fe68c2e9e1a1234e218683dbdf9f9dfcb094113c5ac2b938dfcb9bab4c4140b" dependencies = [ - "cfg_aliases", "libc", "once_cell", "socket2 0.5.7", @@ -7765,26 +7528,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "ref-cast" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf0a6f84d5f1d581da8b41b47ec8600871962f2a528115b542b362d4b744931" -dependencies = [ - "ref-cast-impl", -] - -[[package]] -name = "ref-cast-impl" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - [[package]] name = "regalloc2" version = "0.9.3" @@ -7856,14 +7599,16 @@ checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ "base64 0.21.7", "bytes", + "cookie", + "cookie_store", "encoding_rs", "futures-core", "futures-util", "h2", "http 0.2.12", "http-body 0.4.6", - "hyper 0.14.31", - "hyper-rustls 0.24.2", + "hyper", + "hyper-rustls", "ipnet", "js-sys", "log", @@ -7872,67 +7617,23 @@ dependencies = [ "percent-encoding", "pin-project-lite", "rustls 0.21.12", - "rustls-pemfile 1.0.4", + "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 0.1.2", + "sync_wrapper", "system-configuration", "tokio", - "tokio-rustls 0.24.1", + "tokio-rustls", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 0.25.4", + "webpki-roots", "winreg", ] -[[package]] -name = "reqwest" -version = "0.12.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" -dependencies = [ - "base64 0.22.1", - "bytes", - "cookie", - "cookie_store", - "futures-core", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "http-body-util", - "hyper 1.5.0", - "hyper-rustls 0.27.3", - "hyper-util", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "quinn", - "rustls 0.23.16", - "rustls-pemfile 2.2.0", - "rustls-pki-types", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper 1.0.1", - "tokio", - "tokio-rustls 0.26.0", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots 0.26.6", - "windows-registry", -] - [[package]] name = "resolv-conf" version = "0.7.0" @@ -8138,9 +7839,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.39" +version = "0.38.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "375116bee2be9ed569afe2154ea6a99dfdffd257f533f187498c2a8f5feaf4ee" +checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" dependencies = [ "bitflags 2.6.0", "errno", @@ -8163,9 +7864,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.16" +version = "0.23.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eee87ff5d9b36712a58574e12e9f0ea80f915a5b0ac518d322b24a465617925e" +checksum = "5fbb44d7acc4e873d613422379f69f237a1b141928c02f6bc6ccfddddc2d7993" dependencies = [ "once_cell", "ring 0.17.8", @@ -8182,7 +7883,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ "openssl-probe", - "rustls-pemfile 1.0.4", + "rustls-pemfile", "schannel", "security-framework", ] @@ -8196,15 +7897,6 @@ dependencies = [ "base64 0.21.7", ] -[[package]] -name = "rustls-pemfile" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" -dependencies = [ - "rustls-pki-types", -] - [[package]] name = "rustls-pki-types" version = "1.10.0" @@ -8306,7 +7998,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -8466,22 +8158,22 @@ checksum = "a3f0bf26fd526d2a95683cd0f87bf103b8539e2ca1ef48ce002d67aad59aa0b4" [[package]] name = "serde" -version = "1.0.214" +version = "1.0.213" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55c3193aca71c12ad7890f1785d2b73e1b9f63a0bbc353c08ef26fe03fc56b5" +checksum = "3ea7893ff5e2466df8d720bb615088341b295f849602c6956047f8f80f0e9bc1" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.214" +version = "1.0.213" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766" +checksum = "7e85ad2009c50b58e87caa8cd6dac16bdf511bbfb7af6c33df902396aa480fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -8541,10 +8233,10 @@ version = "3.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d846214a9854ef724f3da161b426242d8de7c1fc7de2f89bb1efcb154dca79d" dependencies = [ - "darling", + "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -8874,7 +8566,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -8885,7 +8577,7 @@ checksum = "a60bcaff7397072dca0017d1db428e30d5002e00b6847703e2e42005c95fbe00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -8938,7 +8630,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -8951,7 +8643,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -8970,7 +8662,7 @@ dependencies = [ "fs2", "hex", "once_cell", - "reqwest 0.11.27", + "reqwest", "semver", "serde", "serde_json", @@ -9016,9 +8708,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.87" +version = "2.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +checksum = "5023162dfcd14ef8f32034d8bcd4cc5ddc61ef7a247c024a33e24e1f24d21b56" dependencies = [ "proc-macro2", "quote", @@ -9031,15 +8723,6 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" -[[package]] -name = "sync_wrapper" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" -dependencies = [ - "futures-core", -] - [[package]] name = "synstructure" version = "0.13.1" @@ -9048,7 +8731,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -9102,7 +8785,7 @@ dependencies = [ "cfg-if", "fastrand 2.1.1", "once_cell", - "rustix 0.38.39", + "rustix 0.38.37", "windows-sys 0.59.0", ] @@ -9162,7 +8845,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -9173,7 +8856,7 @@ checksum = "5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", "test-case-core", ] @@ -9196,7 +8879,7 @@ dependencies = [ "futures", "itertools 0.12.1", "rand", - "reqwest 0.12.9", + "reqwest", "tempfile", "tokio", ] @@ -9210,7 +8893,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -9221,22 +8904,22 @@ checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9" [[package]] name = "thiserror" -version = "1.0.68" +version = "1.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02dd99dc800bbb97186339685293e1cc5d9df1f8fae2d0aecd9ff1c77efea892" +checksum = "5d11abd9594d9b38965ef50805c5e469ca9cc6f197f883f717e0269a3057b3d5" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.68" +version = "1.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7c61ec9a6f64d2793d8a45faba21efbe3ced62a886d44c36a009b2b519b4c7e" +checksum = "ae71770322cbd277e69d762a16c444af02aa0575ac0d174f0b9562d3b37f8602" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -9329,16 +9012,6 @@ dependencies = [ "crunchy", ] -[[package]] -name = "tinystr" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" -dependencies = [ - "displaydoc", - "zerovec", -] - [[package]] name = "tinytemplate" version = "1.2.1" @@ -9400,7 +9073,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -9423,17 +9096,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-rustls" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" -dependencies = [ - "rustls 0.23.16", - "rustls-pki-types", - "tokio", -] - [[package]] name = "tokio-stream" version = "0.1.16" @@ -9456,9 +9118,9 @@ dependencies = [ "log", "rustls 0.21.12", "tokio", - "tokio-rustls 0.24.1", + "tokio-rustls", "tungstenite", - "webpki-roots 0.25.4", + "webpki-roots", ] [[package]] @@ -9617,7 +9279,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -9793,6 +9455,15 @@ dependencies = [ "subtle", ] +[[package]] +name = "unreachable" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" +dependencies = [ + "void", +] + [[package]] name = "unsafe-libyaml" version = "0.2.11" @@ -9829,12 +9500,12 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "url" -version = "2.5.3" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d157f1b96d14500ffdc1f10ba712e780825526c03d9a49b4d0324b0d9113ada" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" dependencies = [ "form_urlencoded", - "idna 1.0.3", + "idna 0.5.0", "percent-encoding", ] @@ -9850,18 +9521,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" -[[package]] -name = "utf16_iter" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" - -[[package]] -name = "utf8_iter" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" - [[package]] name = "utf8parse" version = "0.2.2" @@ -9985,7 +9644,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", "wasm-bindgen-shared", ] @@ -10019,7 +9678,7 @@ checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -10088,7 +9747,7 @@ dependencies = [ "postcard", "psm", "rayon", - "rustix 0.38.39", + "rustix 0.38.37", "serde", "serde_derive", "smallvec", @@ -10126,7 +9785,7 @@ dependencies = [ "directories-next", "log", "postcard", - "rustix 0.38.39", + "rustix 0.38.37", "serde", "serde_derive", "sha2 0.10.8", @@ -10144,7 +9803,7 @@ dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", "wasmtime-component-util", "wasmtime-wit-bindgen", "wit-parser", @@ -10243,7 +9902,7 @@ checksum = "a2bde986038b819bc43a21fef0610aeb47aabfe3ea09ca3533a7b81023b84ec6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] @@ -10284,15 +9943,6 @@ version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" -[[package]] -name = "webpki-roots" -version = "0.26.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958" -dependencies = [ - "rustls-pki-types", -] - [[package]] name = "widestring" version = "1.1.0" @@ -10358,36 +10008,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-registry" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" -dependencies = [ - "windows-result", - "windows-strings", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-result" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-strings" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" -dependencies = [ - "windows-result", - "windows-targets 0.52.6", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -10573,18 +10193,6 @@ dependencies = [ "wasmparser", ] -[[package]] -name = "write16" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" - -[[package]] -name = "writeable" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" - [[package]] name = "ws_stream_wasm" version = "0.7.4" @@ -10723,30 +10331,6 @@ dependencies = [ "time", ] -[[package]] -name = "yoke" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" -dependencies = [ - "serde", - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", - "synstructure", -] - [[package]] name = "zerocopy" version = "0.7.35" @@ -10765,28 +10349,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", -] - -[[package]] -name = "zerofrom" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", - "synstructure", + "syn 2.0.85", ] [[package]] @@ -10806,29 +10369,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", -] - -[[package]] -name = "zerovec" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", + "syn 2.0.85", ] [[package]] diff --git a/crates/client/src/client/types.rs b/crates/client/src/client/types.rs index a93e6a8070c..5229d97ab86 100644 --- a/crates/client/src/client/types.rs +++ b/crates/client/src/client/types.rs @@ -14,77 +14,37 @@ pub mod node_info; pub use balance::Balance; pub use blob::Blob; -pub use block::{ - Block, - Consensus, -}; +pub use block::{Block, Consensus}; pub use chain_info::ChainInfo; -pub use coins::{ - Coin, - CoinType, - MessageCoin, -}; -pub use contract::{ - Contract, - ContractBalance, -}; -pub use gas_costs::{ - DependentCost, - GasCosts, -}; +pub use coins::{Coin, CoinType, MessageCoin}; +pub use contract::{Contract, ContractBalance}; +pub use gas_costs::{DependentCost, GasCosts}; pub use merkle_proof::MerkleProof; -pub use message::{ - Message, - MessageProof, -}; +pub use message::{Message, MessageProof}; pub use node_info::NodeInfo; use crate::client::schema::{ relayed_tx::RelayedTransactionStatus as SchemaRelayedTransactionStatus, tx::{ - OpaqueTransactionWithStatus, - StatusWithTransaction as SchemaStatusWithTx, + OpaqueTransactionWithStatus, StatusWithTransaction as SchemaStatusWithTx, TransactionStatus as SchemaTxStatus, }, ConversionError, }; use fuel_core_types::{ - fuel_tx::{ - Blob as BlobTx, - Create, - Mint, - Receipt, - Script, - Transaction, - Upgrade, - Upload, - }, - fuel_types::{ - canonical::Deserialize, - BlockHeight, - }, + fuel_tx::{Receipt, Transaction}, + fuel_types::{canonical::Deserialize, BlockHeight}, fuel_vm::ProgramState, }; use tai64::Tai64; pub mod primitives { pub use fuel_core_types::{ - fuel_crypto::{ - PublicKey, - Signature, - }, + fuel_crypto::{PublicKey, Signature}, fuel_tx::UtxoId, fuel_types::{ - Address, - AssetId, - BlobId, - Bytes32, - Bytes64, - ChainId, - ContractId, - MessageId, - Nonce, - Salt, + Address, AssetId, BlobId, Bytes32, Bytes64, ChainId, ContractId, MessageId, + Nonce, Salt, }, }; @@ -301,25 +261,13 @@ impl TryFrom for RelayedTransactionStatus { #[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)] #[allow(clippy::large_enum_variant)] pub enum TransactionType { - Script(Script), - Create(Create), - Mint(Mint), - Upgrade(Upgrade), - Upload(Upload), - Blob(BlobTx), + Known(Transaction), Unknown, } impl From for TransactionType { fn from(value: Transaction) -> Self { - match value { - Transaction::Script(tx) => Self::Script(tx), - Transaction::Create(tx) => Self::Create(tx), - Transaction::Mint(tx) => Self::Mint(tx), - Transaction::Upgrade(tx) => Self::Upgrade(tx), - Transaction::Upload(tx) => Self::Upload(tx), - Transaction::Blob(tx) => Self::Blob(tx), - } + Self::Known(value) } } @@ -328,12 +276,7 @@ impl TryFrom for Transaction { fn try_from(value: TransactionType) -> Result { match value { - TransactionType::Script(tx) => Ok(Self::Script(tx)), - TransactionType::Create(tx) => Ok(Self::Create(tx)), - TransactionType::Mint(tx) => Ok(Self::Mint(tx)), - TransactionType::Upgrade(tx) => Ok(Self::Upgrade(tx)), - TransactionType::Upload(tx) => Ok(Self::Upload(tx)), - TransactionType::Blob(tx) => Ok(Self::Blob(tx)), + TransactionType::Known(tx) => Ok(tx), TransactionType::Unknown => { Err(ConversionError::UnknownVariant("Transaction")) } From 10649aa0e6311bb8edfd66debe5b8404b221f874 Mon Sep 17 00:00:00 2001 From: hal3e Date: Thu, 14 Nov 2024 17:03:42 +0100 Subject: [PATCH 17/18] update cynic version --- Cargo.lock | 751 +++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 612 insertions(+), 139 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 67a97f72c3e..a848f158e32 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -91,6 +91,12 @@ dependencies = [ "memchr", ] +[[package]] +name = "aliasable" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd" + [[package]] name = "allocator-api2" version = "0.2.18" @@ -191,12 +197,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" -[[package]] -name = "ascii" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" - [[package]] name = "ascii-canvas" version = "3.0.0" @@ -377,7 +377,7 @@ checksum = "a94c2d176893486bd37cd1b6defadd999f7357bf5804e92f510c08bcf16c538f" dependencies = [ "Inflector", "async-graphql-parser", - "darling 0.20.10", + "darling", "proc-macro-crate", "proc-macro2", "quote", @@ -917,8 +917,8 @@ dependencies = [ "http-body 0.4.6", "http-body 1.0.1", "httparse", - "hyper", - "hyper-rustls", + "hyper 0.14.31", + "hyper-rustls 0.24.2", "once_cell", "pin-project-lite", "pin-utils", @@ -1006,7 +1006,7 @@ dependencies = [ "futures-util", "http 0.2.12", "http-body 0.4.6", - "hyper", + "hyper 0.14.31", "itoa", "matchit", "memchr", @@ -1016,7 +1016,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 0.1.2", "tokio", "tower", "tower-http 0.3.5", @@ -1108,6 +1108,12 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" +[[package]] +name = "beef" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" + [[package]] name = "bindgen" version = "0.65.1" @@ -1589,19 +1595,6 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" -[[package]] -name = "combine" -version = "3.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da3da6baa321ec19e1cc41d31bf599f00c783d0517095cdaf0332e3fe8d20680" -dependencies = [ - "ascii", - "byteorder", - "either", - "memchr", - "unreachable", -] - [[package]] name = "concurrent-queue" version = "2.5.0" @@ -1697,9 +1690,9 @@ checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" [[package]] name = "cookie" -version = "0.17.0" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24" +checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" dependencies = [ "percent-encoding", "time", @@ -1708,12 +1701,13 @@ dependencies = [ [[package]] name = "cookie_store" -version = "0.20.0" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6" +checksum = "2eac901828f88a5241ee0600950ab981148a18f2f756900ffba1b125ca6a3ef9" dependencies = [ "cookie", - "idna 0.3.0", + "document-features", + "idna 1.0.3", "log", "publicsuffix", "serde", @@ -1748,15 +1742,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "counter" -version = "0.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d458e66999348f56fd3ffcfbb7f7951542075ca8359687c703de6500c1ddccd" -dependencies = [ - "num-traits", -] - [[package]] name = "cpp_demangle" version = "0.4.4" @@ -2106,12 +2091,13 @@ dependencies = [ [[package]] name = "cynic" -version = "2.2.8" +version = "3.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1afa0591b1021e427e548a1f0f147fe6168f6c7c7f7006bace77f28856051b8" +checksum = "9a41762e03383d7bf4213b9b4e5fb15e232853400b0b738b764d1d2df9649400" dependencies = [ "cynic-proc-macros", - "reqwest", + "ref-cast", + "reqwest 0.12.9", "serde", "serde_json", "static_assertions", @@ -2120,38 +2106,42 @@ dependencies = [ [[package]] name = "cynic-codegen" -version = "2.2.8" +version = "3.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a1bb05cc554f46079d0fa72abe995a2d32d0737d410a41da75b31e3f7ef768" +checksum = "3b9e35b6ceec97e397c422585aa7d8c057158c63d2727f15d4ddc47563862798" dependencies = [ - "counter", - "darling 0.13.4", - "graphql-parser", + "cynic-parser", + "darling", "once_cell", + "ouroboros", "proc-macro2", "quote", "strsim 0.10.0", - "syn 1.0.109", + "syn 2.0.85", + "thiserror", ] [[package]] -name = "cynic-proc-macros" -version = "2.2.8" +name = "cynic-parser" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa595c4ed7a5374e0e58c5c34f9d93bd6b7d45062790963bd4b4c3c0bf520c4d" +checksum = "791001e353ca2b167bd9e3c7c10635440893a6e0fd3c75bd9da700e373c6b0d5" dependencies = [ - "cynic-codegen", - "syn 1.0.109", + "indexmap 2.6.0", + "lalrpop-util 0.22.0", + "logos", ] [[package]] -name = "darling" -version = "0.13.4" +name = "cynic-proc-macros" +version = "3.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" +checksum = "beb9f1756c97b93a7e2faf9c5d58cc21655de6a32984dd8aa7aa076c7e246601" dependencies = [ - "darling_core 0.13.4", - "darling_macro 0.13.4", + "cynic-codegen", + "darling", + "quote", + "syn 2.0.85", ] [[package]] @@ -2160,22 +2150,8 @@ version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" dependencies = [ - "darling_core 0.20.10", - "darling_macro 0.20.10", -] - -[[package]] -name = "darling_core" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.10.0", - "syn 1.0.109", + "darling_core", + "darling_macro", ] [[package]] @@ -2192,24 +2168,13 @@ dependencies = [ "syn 2.0.85", ] -[[package]] -name = "darling_macro" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" -dependencies = [ - "darling_core 0.13.4", - "quote", - "syn 1.0.109", -] - [[package]] name = "darling_macro" version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ - "darling_core 0.20.10", + "darling_core", "quote", "syn 2.0.85", ] @@ -2449,6 +2414,15 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" +[[package]] +name = "document-features" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0" +dependencies = [ + "litrs", +] + [[package]] name = "dotenvy" version = "0.15.7" @@ -2772,7 +2746,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", "syn 2.0.85", @@ -2834,7 +2808,7 @@ checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" dependencies = [ "chrono", "ethers-core", - "reqwest", + "reqwest 0.11.27", "semver", "serde", "serde_json", @@ -2859,7 +2833,7 @@ dependencies = [ "futures-locks", "futures-util", "instant", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", "thiserror", @@ -2892,7 +2866,7 @@ dependencies = [ "jsonwebtoken", "once_cell", "pin-project", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", "thiserror", @@ -3009,8 +2983,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43ddc25e1ad2cc0106d5e2d967397b4fb2068a66677ee9b0eea4600e5cfe8fb4" dependencies = [ "futures", - "hyper", - "hyper-rustls", + "hyper 0.14.31", + "hyper-rustls 0.24.2", "hyper-timeout", "log", "pin-project", @@ -3221,7 +3195,7 @@ dependencies = [ "fuel-core-upgradable-executor", "futures", "hex", - "hyper", + "hyper 0.14.31", "indicatif", "itertools 0.12.1", "mockall", @@ -3366,10 +3340,10 @@ dependencies = [ "fuel-core-types 0.40.0", "futures", "hex", - "hyper-rustls", + "hyper-rustls 0.24.2", "insta", "itertools 0.12.1", - "reqwest", + "reqwest 0.12.9", "schemafy_lib", "serde", "serde_json", @@ -3482,7 +3456,7 @@ dependencies = [ "futures", "num_enum", "parking_lot", - "reqwest", + "reqwest 0.12.9", "serde", "strum 0.25.0", "strum_macros 0.25.3", @@ -3754,7 +3728,7 @@ dependencies = [ "fuel-core-upgradable-executor", "futures", "hex", - "hyper", + "hyper 0.14.31", "insta", "itertools 0.12.1", "k256", @@ -3763,7 +3737,7 @@ dependencies = [ "primitive-types", "proptest", "rand", - "reqwest", + "reqwest 0.12.9", "rstest", "serde_json", "spki", @@ -4385,16 +4359,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "graphql-parser" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ebc8013b4426d5b81a4364c419a95ed0b404af2b82e2457de52d9348f0e474" -dependencies = [ - "combine", - "thiserror", -] - [[package]] name = "group" version = "0.13.0" @@ -4771,6 +4735,25 @@ dependencies = [ "want", ] +[[package]] +name = "hyper" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "httparse", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + [[package]] name = "hyper-rustls" version = "0.24.2" @@ -4779,13 +4762,31 @@ checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" dependencies = [ "futures-util", "http 0.2.12", - "hyper", + "hyper 0.14.31", "log", "rustls 0.21.12", "rustls-native-certs", "tokio", - "tokio-rustls", - "webpki-roots", + "tokio-rustls 0.24.1", + "webpki-roots 0.25.4", +] + +[[package]] +name = "hyper-rustls" +version = "0.27.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" +dependencies = [ + "futures-util", + "http 1.1.0", + "hyper 1.5.0", + "hyper-util", + "rustls 0.23.15", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.26.0", + "tower-service", + "webpki-roots 0.26.6", ] [[package]] @@ -4794,12 +4795,31 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" dependencies = [ - "hyper", + "hyper 0.14.31", "pin-project-lite", "tokio", "tokio-io-timeout", ] +[[package]] +name = "hyper-util" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "hyper 1.5.0", + "pin-project-lite", + "socket2 0.5.7", + "tokio", + "tower-service", + "tracing", +] + [[package]] name = "iana-time-zone" version = "0.1.61" @@ -4823,6 +4843,124 @@ dependencies = [ "cc", ] +[[package]] +name = "icu_collections" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + +[[package]] +name = "icu_normalizer" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + +[[package]] +name = "icu_properties" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + +[[package]] +name = "icu_provider" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.85", +] + [[package]] name = "id-arena" version = "2.2.1" @@ -4865,6 +5003,27 @@ dependencies = [ "unicode-normalization", ] +[[package]] +name = "idna" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" +dependencies = [ + "icu_normalizer", + "icu_properties", +] + [[package]] name = "if-addrs" version = "0.10.2" @@ -4906,7 +5065,7 @@ dependencies = [ "bytes", "futures", "http 0.2.12", - "hyper", + "hyper 0.14.31", "log", "rand", "tokio", @@ -5218,7 +5377,7 @@ dependencies = [ "bit-set", "ena", "itertools 0.11.0", - "lalrpop-util", + "lalrpop-util 0.20.2", "petgraph", "regex", "regex-syntax 0.8.5", @@ -5238,6 +5397,15 @@ dependencies = [ "regex-automata 0.4.8", ] +[[package]] +name = "lalrpop-util" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "feee752d43abd0f4807a921958ab4131f692a44d4d599733d4419c5d586176ce" +dependencies = [ + "rustversion", +] + [[package]] name = "lazy_static" version = "1.5.0" @@ -5776,7 +5944,7 @@ dependencies = [ "thiserror", "tracing", "url", - "webpki-roots", + "webpki-roots 0.25.4", ] [[package]] @@ -5919,6 +6087,18 @@ version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +[[package]] +name = "litemap" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" + +[[package]] +name = "litrs" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" + [[package]] name = "lock_api" version = "0.4.12" @@ -5938,6 +6118,39 @@ dependencies = [ "value-bag", ] +[[package]] +name = "logos" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c6b6e02facda28ca5fb8dbe4b152496ba3b1bd5a4b40bb2b1b2d8ad74e0f39b" +dependencies = [ + "logos-derive", +] + +[[package]] +name = "logos-codegen" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b32eb6b5f26efacd015b000bfc562186472cd9b34bdba3f6b264e2a052676d10" +dependencies = [ + "beef", + "fnv", + "lazy_static", + "proc-macro2", + "quote", + "regex-syntax 0.8.5", + "syn 2.0.85", +] + +[[package]] +name = "logos-derive" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e5d0c5463c911ef55624739fc353238b4e310f0144be1f875dc42fec6bfd5ec" +dependencies = [ + "logos-codegen", +] + [[package]] name = "lru" version = "0.12.5" @@ -6568,6 +6781,31 @@ version = "6.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1" +[[package]] +name = "ouroboros" +version = "0.18.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "944fa20996a25aded6b4795c6d63f10014a7a83f8be9828a11860b08c5fc4a67" +dependencies = [ + "aliasable", + "ouroboros_macro", + "static_assertions", +] + +[[package]] +name = "ouroboros_macro" +version = "0.18.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39b0deead1528fd0e5947a8546a9642a9777c25f6e1e26f34c97b204bbb465bd" +dependencies = [ + "heck 0.4.1", + "itertools 0.12.1", + "proc-macro2", + "proc-macro2-diagnostics", + "quote", + "syn 2.0.85", +] + [[package]] name = "outref" version = "0.5.1" @@ -7172,6 +7410,19 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "proc-macro2-diagnostics" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.85", + "version_check", + "yansi 1.0.1", +] + [[package]] name = "prometheus-client" version = "0.22.3" @@ -7275,7 +7526,7 @@ dependencies = [ "log", "names", "prost", - "reqwest", + "reqwest 0.11.27", "thiserror", "url", "winapi", @@ -7528,6 +7779,26 @@ dependencies = [ "thiserror", ] +[[package]] +name = "ref-cast" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf0a6f84d5f1d581da8b41b47ec8600871962f2a528115b542b362d4b744931" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.85", +] + [[package]] name = "regalloc2" version = "0.9.3" @@ -7599,16 +7870,14 @@ checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ "base64 0.21.7", "bytes", - "cookie", - "cookie_store", "encoding_rs", "futures-core", "futures-util", "h2", "http 0.2.12", "http-body 0.4.6", - "hyper", - "hyper-rustls", + "hyper 0.14.31", + "hyper-rustls 0.24.2", "ipnet", "js-sys", "log", @@ -7617,23 +7886,67 @@ dependencies = [ "percent-encoding", "pin-project-lite", "rustls 0.21.12", - "rustls-pemfile", + "rustls-pemfile 1.0.4", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 0.1.2", "system-configuration", "tokio", - "tokio-rustls", + "tokio-rustls 0.24.1", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots", + "webpki-roots 0.25.4", "winreg", ] +[[package]] +name = "reqwest" +version = "0.12.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" +dependencies = [ + "base64 0.22.1", + "bytes", + "cookie", + "cookie_store", + "futures-core", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.5.0", + "hyper-rustls 0.27.3", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "once_cell", + "percent-encoding", + "pin-project-lite", + "quinn", + "rustls 0.23.15", + "rustls-pemfile 2.2.0", + "rustls-pki-types", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "tokio", + "tokio-rustls 0.26.0", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webpki-roots 0.26.6", + "windows-registry", +] + [[package]] name = "resolv-conf" version = "0.7.0" @@ -7883,7 +8196,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ "openssl-probe", - "rustls-pemfile", + "rustls-pemfile 1.0.4", "schannel", "security-framework", ] @@ -7897,6 +8210,15 @@ dependencies = [ "base64 0.21.7", ] +[[package]] +name = "rustls-pemfile" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "rustls-pki-types" version = "1.10.0" @@ -8233,7 +8555,7 @@ version = "3.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d846214a9854ef724f3da161b426242d8de7c1fc7de2f89bb1efcb154dca79d" dependencies = [ - "darling 0.20.10", + "darling", "proc-macro2", "quote", "syn 2.0.85", @@ -8477,7 +8799,7 @@ checksum = "c425ce1c59f4b154717592f0bdf4715c3a1d55058883622d3157e1f0908a5b26" dependencies = [ "itertools 0.11.0", "lalrpop", - "lalrpop-util", + "lalrpop-util 0.20.2", "phf", "thiserror", "unicode-xid", @@ -8662,7 +8984,7 @@ dependencies = [ "fs2", "hex", "once_cell", - "reqwest", + "reqwest 0.11.27", "semver", "serde", "serde_json", @@ -8723,6 +9045,15 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +[[package]] +name = "sync_wrapper" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +dependencies = [ + "futures-core", +] + [[package]] name = "synstructure" version = "0.13.1" @@ -8879,7 +9210,7 @@ dependencies = [ "futures", "itertools 0.12.1", "rand", - "reqwest", + "reqwest 0.12.9", "tempfile", "tokio", ] @@ -9012,6 +9343,16 @@ dependencies = [ "crunchy", ] +[[package]] +name = "tinystr" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +dependencies = [ + "displaydoc", + "zerovec", +] + [[package]] name = "tinytemplate" version = "1.2.1" @@ -9096,6 +9437,17 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +dependencies = [ + "rustls 0.23.15", + "rustls-pki-types", + "tokio", +] + [[package]] name = "tokio-stream" version = "0.1.16" @@ -9118,9 +9470,9 @@ dependencies = [ "log", "rustls 0.21.12", "tokio", - "tokio-rustls", + "tokio-rustls 0.24.1", "tungstenite", - "webpki-roots", + "webpki-roots 0.25.4", ] [[package]] @@ -9455,15 +9807,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "unreachable" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" -dependencies = [ - "void", -] - [[package]] name = "unsafe-libyaml" version = "0.2.11" @@ -9521,6 +9864,18 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + [[package]] name = "utf8parse" version = "0.2.2" @@ -9943,6 +10298,15 @@ version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" +[[package]] +name = "webpki-roots" +version = "0.26.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "widestring" version = "1.1.0" @@ -10008,6 +10372,36 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-registry" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +dependencies = [ + "windows-result", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result", + "windows-targets 0.52.6", +] + [[package]] name = "windows-sys" version = "0.48.0" @@ -10193,6 +10587,18 @@ dependencies = [ "wasmparser", ] +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + +[[package]] +name = "writeable" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" + [[package]] name = "ws_stream_wasm" version = "0.7.4" @@ -10331,6 +10737,30 @@ dependencies = [ "time", ] +[[package]] +name = "yoke" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" +dependencies = [ + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.85", + "synstructure", +] + [[package]] name = "zerocopy" version = "0.7.35" @@ -10352,6 +10782,27 @@ dependencies = [ "syn 2.0.85", ] +[[package]] +name = "zerofrom" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.85", + "synstructure", +] + [[package]] name = "zeroize" version = "1.8.1" @@ -10372,6 +10823,28 @@ dependencies = [ "syn 2.0.85", ] +[[package]] +name = "zerovec" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.85", +] + [[package]] name = "zip" version = "0.6.6" From 694d3b3390ce75a41c3a11c0130647d6071a99ad Mon Sep 17 00:00:00 2001 From: hal3e Date: Thu, 14 Nov 2024 17:14:14 +0100 Subject: [PATCH 18/18] fmt --- crates/client/src/client/types.rs | 56 +++++++++++++++++++++++++------ 1 file changed, 45 insertions(+), 11 deletions(-) diff --git a/crates/client/src/client/types.rs b/crates/client/src/client/types.rs index 5229d97ab86..37c5cea8ebc 100644 --- a/crates/client/src/client/types.rs +++ b/crates/client/src/client/types.rs @@ -14,37 +14,71 @@ pub mod node_info; pub use balance::Balance; pub use blob::Blob; -pub use block::{Block, Consensus}; +pub use block::{ + Block, + Consensus, +}; pub use chain_info::ChainInfo; -pub use coins::{Coin, CoinType, MessageCoin}; -pub use contract::{Contract, ContractBalance}; -pub use gas_costs::{DependentCost, GasCosts}; +pub use coins::{ + Coin, + CoinType, + MessageCoin, +}; +pub use contract::{ + Contract, + ContractBalance, +}; +pub use gas_costs::{ + DependentCost, + GasCosts, +}; pub use merkle_proof::MerkleProof; -pub use message::{Message, MessageProof}; +pub use message::{ + Message, + MessageProof, +}; pub use node_info::NodeInfo; use crate::client::schema::{ relayed_tx::RelayedTransactionStatus as SchemaRelayedTransactionStatus, tx::{ - OpaqueTransactionWithStatus, StatusWithTransaction as SchemaStatusWithTx, + OpaqueTransactionWithStatus, + StatusWithTransaction as SchemaStatusWithTx, TransactionStatus as SchemaTxStatus, }, ConversionError, }; use fuel_core_types::{ - fuel_tx::{Receipt, Transaction}, - fuel_types::{canonical::Deserialize, BlockHeight}, + fuel_tx::{ + Receipt, + Transaction, + }, + fuel_types::{ + canonical::Deserialize, + BlockHeight, + }, fuel_vm::ProgramState, }; use tai64::Tai64; pub mod primitives { pub use fuel_core_types::{ - fuel_crypto::{PublicKey, Signature}, + fuel_crypto::{ + PublicKey, + Signature, + }, fuel_tx::UtxoId, fuel_types::{ - Address, AssetId, BlobId, Bytes32, Bytes64, ChainId, ContractId, MessageId, - Nonce, Salt, + Address, + AssetId, + BlobId, + Bytes32, + Bytes64, + ChainId, + ContractId, + MessageId, + Nonce, + Salt, }, };