From 8e258573c087c2f1ef25eb8babda991445671391 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Mon, 10 Mar 2025 19:11:31 +0400 Subject: [PATCH 01/12] feat: bump revm --- Cargo.toml | 2 +- src/backend.rs | 11 ++----- src/cache.rs | 81 +++++++++++--------------------------------------- src/error.rs | 2 ++ 4 files changed, 24 insertions(+), 72 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 86bb0e8..c74fff1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -35,7 +35,7 @@ futures = "0.3" parking_lot = "0.12" -revm = { version = "19.0.0", default-features = false, features = [ +revm = { git = "https://github.com/bluealloy/revm", rev = "8da555e", features = [ "std", "serde", ] } diff --git a/src/backend.rs b/src/backend.rs index 8001730..40d76b9 100644 --- a/src/backend.rs +++ b/src/backend.rs @@ -18,11 +18,12 @@ use futures::{ Future, FutureExt, }; use revm::{ - db::DatabaseRef, + database::DatabaseRef, primitives::{ map::{hash_map::Entry, AddressHashMap, HashMap}, - AccountInfo, Bytecode, KECCAK_EMPTY, + KECCAK_EMPTY, }, + state::{AccountInfo, Bytecode}, }; use std::{ collections::VecDeque, @@ -927,7 +928,6 @@ mod tests { let provider = get_http_provider(endpoint); let meta = BlockchainDbMeta { - cfg_env: Default::default(), block_env: Default::default(), hosts: BTreeSet::from([endpoint.to_string()]), }; @@ -979,7 +979,6 @@ mod tests { let provider = get_http_provider(endpoint); let meta = BlockchainDbMeta { - cfg_env: Default::default(), block_env: Default::default(), hosts: BTreeSet::from([endpoint.to_string()]), }; @@ -1049,7 +1048,6 @@ mod tests { let provider = get_http_provider(endpoint); let meta = BlockchainDbMeta { - cfg_env: Default::default(), block_env: Default::default(), hosts: BTreeSet::from([endpoint.to_string()]), }; @@ -1112,7 +1110,6 @@ mod tests { let provider = get_http_provider(endpoint); let meta = BlockchainDbMeta { - cfg_env: Default::default(), block_env: Default::default(), hosts: BTreeSet::from([endpoint.to_string()]), }; @@ -1166,7 +1163,6 @@ mod tests { let provider = get_http_provider(endpoint); let meta = BlockchainDbMeta { - cfg_env: Default::default(), block_env: Default::default(), hosts: BTreeSet::from([endpoint.to_string()]), }; @@ -1326,7 +1322,6 @@ mod tests { let provider = get_http_provider(&endpoint); let meta = BlockchainDbMeta { - cfg_env: Default::default(), block_env: Default::default(), hosts: BTreeSet::from([endpoint.to_string()]), }; diff --git a/src/cache.rs b/src/cache.rs index 748a561..ce387ca 100644 --- a/src/cache.rs +++ b/src/cache.rs @@ -4,10 +4,13 @@ use alloy_primitives::{Address, B256, U256}; use alloy_provider::network::TransactionResponse; use parking_lot::RwLock; use revm::{ + context::BlockEnv, + context_interface::block::BlobExcessGasAndPrice, primitives::{ map::{AddressHashMap, HashMap}, - Account, AccountInfo, AccountStatus, BlobExcessGasAndPrice, BlockEnv, CfgEnv, KECCAK_EMPTY, + KECCAK_EMPTY, }, + state::{Account, AccountInfo, AccountStatus}, DatabaseCommit, }; use serde::{ser::SerializeMap, Deserialize, Deserializer, Serialize, Serializer}; @@ -122,7 +125,7 @@ impl BlockchainDb { /// relevant identifying markers in the context of [BlockchainDb] #[derive(Clone, Debug, Eq, Serialize, Default)] pub struct BlockchainDbMeta { - pub cfg_env: CfgEnv, + /// block env pub block_env: BlockEnv, /// all the hosts used to connect to pub hosts: BTreeSet, @@ -130,21 +133,13 @@ pub struct BlockchainDbMeta { impl BlockchainDbMeta { /// Creates a new instance - pub fn new(env: revm::primitives::Env, url: String) -> Self { + pub fn new(block_env: BlockEnv, url: String) -> Self { let host = Url::parse(&url) .ok() .and_then(|url| url.host().map(|host| host.to_string())) .unwrap_or(url); - Self { cfg_env: env.cfg.clone(), block_env: env.block, hosts: BTreeSet::from([host]) } - } - - /// Sets the chain_id in the [CfgEnv] of this instance. - /// - /// Remaining fields of [CfgEnv] are left unchanged. - pub const fn with_chain_id(mut self, chain_id: u64) -> Self { - self.cfg_env.chain_id = chain_id; - self + Self { block_env, hosts: BTreeSet::from([host]) } } /// Sets the [BlockEnv] of this instance using the provided [alloy_rpc_types::Block] @@ -153,12 +148,12 @@ impl BlockchainDbMeta { block: &alloy_rpc_types::Block, ) -> Self { self.block_env = BlockEnv { - number: U256::from(block.header.number()), - coinbase: block.header.beneficiary(), - timestamp: U256::from(block.header.timestamp()), + number: block.header.number(), + beneficiary: block.header.beneficiary(), + timestamp: block.header.timestamp(), difficulty: U256::from(block.header.difficulty()), - basefee: block.header.base_fee_per_gas().map(U256::from).unwrap_or_default(), - gas_limit: U256::from(block.header.gas_limit()), + basefee: block.header.base_fee_per_gas().unwrap_or_default(), + gas_limit: block.header.gas_limit(), prevrandao: block.header.mix_hash(), blob_excess_gas_and_price: Some(BlobExcessGasAndPrice::new( block.header.excess_blob_gas().unwrap_or_default(), @@ -179,13 +174,8 @@ impl BlockchainDbMeta { self } - /// Sets [CfgEnv] of this instance - pub fn set_cfg_env(mut self, cfg_env: revm::primitives::CfgEnv) { - self.cfg_env = cfg_env; - } - /// Sets the [BlockEnv] of this instance - pub fn set_block_env(mut self, block_env: revm::primitives::BlockEnv) { + pub fn set_block_env(mut self, block_env: revm::context::BlockEnv) { self.block_env = block_env; } } @@ -194,7 +184,7 @@ impl BlockchainDbMeta { // case for http vs ws endpoints impl PartialEq for BlockchainDbMeta { fn eq(&self, other: &Self) -> bool { - self.cfg_env == other.cfg_env && self.block_env == other.block_env + self.block_env == other.block_env } } @@ -203,46 +193,13 @@ impl<'de> Deserialize<'de> for BlockchainDbMeta { where D: Deserializer<'de>, { - /// A backwards compatible representation of [revm::primitives::CfgEnv] - /// - /// This prevents deserialization errors of cache files caused by breaking changes to the - /// default [revm::primitives::CfgEnv], for example enabling an optional feature. - /// By hand rolling deserialize impl we can prevent cache file issues - struct CfgEnvBackwardsCompat { - inner: revm::primitives::CfgEnv, - } - - impl<'de> Deserialize<'de> for CfgEnvBackwardsCompat { - fn deserialize(deserializer: D) -> Result - where - D: Deserializer<'de>, - { - let mut value = serde_json::Value::deserialize(deserializer)?; - - // we check for breaking changes here - if let Some(obj) = value.as_object_mut() { - let default_value = - serde_json::to_value(revm::primitives::CfgEnv::default()).unwrap(); - for (key, value) in default_value.as_object().unwrap() { - if !obj.contains_key(key) { - obj.insert(key.to_string(), value.clone()); - } - } - } - - let cfg_env: revm::primitives::CfgEnv = - serde_json::from_value(value).map_err(serde::de::Error::custom)?; - Ok(Self { inner: cfg_env }) - } - } - /// A backwards compatible representation of [revm::primitives::BlockEnv] /// /// This prevents deserialization errors of cache files caused by breaking changes to the /// default [revm::primitives::BlockEnv], for example enabling an optional feature. /// By hand rolling deserialize impl we can prevent cache file issues struct BlockEnvBackwardsCompat { - inner: revm::primitives::BlockEnv, + inner: revm::context::BlockEnv, } impl<'de> Deserialize<'de> for BlockEnvBackwardsCompat { @@ -255,7 +212,7 @@ impl<'de> Deserialize<'de> for BlockchainDbMeta { // we check for any missing fields here if let Some(obj) = value.as_object_mut() { let default_value = - serde_json::to_value(revm::primitives::BlockEnv::default()).unwrap(); + serde_json::to_value(revm::context::BlockEnv::default()).unwrap(); for (key, value) in default_value.as_object().unwrap() { if !obj.contains_key(key) { obj.insert(key.to_string(), value.clone()); @@ -263,7 +220,7 @@ impl<'de> Deserialize<'de> for BlockchainDbMeta { } } - let cfg_env: revm::primitives::BlockEnv = + let cfg_env: revm::context::BlockEnv = serde_json::from_value(value).map_err(serde::de::Error::custom)?; Ok(Self { inner: cfg_env }) } @@ -272,7 +229,6 @@ impl<'de> Deserialize<'de> for BlockchainDbMeta { // custom deserialize impl to not break existing cache files #[derive(Deserialize)] struct Meta { - cfg_env: CfgEnvBackwardsCompat, block_env: BlockEnvBackwardsCompat, /// all the hosts used to connect to #[serde(alias = "host")] @@ -286,9 +242,8 @@ impl<'de> Deserialize<'de> for BlockchainDbMeta { Single(String), } - let Meta { cfg_env, block_env, hosts } = Meta::deserialize(deserializer)?; + let Meta { block_env, hosts } = Meta::deserialize(deserializer)?; Ok(Self { - cfg_env: cfg_env.inner, block_env: block_env.inner, hosts: match hosts { Hosts::Multi(hosts) => hosts, diff --git a/src/error.rs b/src/error.rs index 691c16a..449dca2 100644 --- a/src/error.rs +++ b/src/error.rs @@ -71,3 +71,5 @@ impl From for DatabaseError { match value {} } } + +impl revm::database::DBErrorMarker for DatabaseError {} From 84ec0d3b6936c6baed0c4424d8e9a4714aabd3a0 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Mon, 10 Mar 2025 23:28:04 +0400 Subject: [PATCH 02/12] bump revm --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index c74fff1..ec19506 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -35,7 +35,7 @@ futures = "0.3" parking_lot = "0.12" -revm = { git = "https://github.com/bluealloy/revm", rev = "8da555e", features = [ +revm = { git = "https://github.com/bluealloy/revm", rev = "2015973", features = [ "std", "serde", ] } From e60b89c09942eada380b9577a60d5655fbc40ff6 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Tue, 11 Mar 2025 01:50:49 +0400 Subject: [PATCH 03/12] 9e39df5 --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index ec19506..1392a99 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -35,7 +35,7 @@ futures = "0.3" parking_lot = "0.12" -revm = { git = "https://github.com/bluealloy/revm", rev = "2015973", features = [ +revm = { git = "https://github.com/bluealloy/revm", rev = "9e39df5", features = [ "std", "serde", ] } From 1b88ddc0bcce8812f2e18720c68ce60106ff537d Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Fri, 14 Mar 2025 18:18:51 +0400 Subject: [PATCH 04/12] 20.0.0-alpha.5 --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 1392a99..31b7d51 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -35,7 +35,7 @@ futures = "0.3" parking_lot = "0.12" -revm = { git = "https://github.com/bluealloy/revm", rev = "9e39df5", features = [ +revm = { version = "20.0.0-alpha.5", features = [ "std", "serde", ] } From cd548da1dbfa21a98a158dcf43d044e333e6e538 Mon Sep 17 00:00:00 2001 From: zerosnacks Date: Wed, 19 Mar 2025 11:05:08 +0100 Subject: [PATCH 05/12] bump revm version --- Cargo.toml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 31b7d51..2eaa7ab 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -35,10 +35,7 @@ futures = "0.3" parking_lot = "0.12" -revm = { version = "20.0.0-alpha.5", features = [ - "std", - "serde", -] } +revm = { version = "20.0.0-alpha.6", features = ["std", "serde"] } serde = "1.0" serde_json = "1.0" From 3d6290656896cdc469103bb761bb144ac76f055e Mon Sep 17 00:00:00 2001 From: zerosnacks Date: Thu, 20 Mar 2025 12:12:45 +0100 Subject: [PATCH 06/12] fix tests, BlockEnv now uses u64 fields --- Cargo.toml | 2 +- src/cache.rs | 16 +++++++------- test-data/storage.json | 50 +++++++++++++++++++++++++++++++++++++++++- 3 files changed, 58 insertions(+), 10 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 2eaa7ab..03868ee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,7 +25,7 @@ all-features = true rustdoc-args = ["--cfg", "docsrs"] [dependencies] -alloy-primitives = { version = "0.8.22", features = ["map"] } +alloy-primitives = { version = "0.8.23", features = ["map"] } alloy-provider = { version = "0.12", default-features = false } alloy-rpc-types = { version = "0.12", features = ["eth"] } alloy-consensus = { version = "0.12", default-features = false } diff --git a/src/cache.rs b/src/cache.rs index ce387ca..508b8a0 100644 --- a/src/cache.rs +++ b/src/cache.rs @@ -512,12 +512,12 @@ mod tests { "disable_base_fee": false }, "block_env": { - "number": "0xed3ddf", + "number": 15547871, "coinbase": "0x0000000000000000000000000000000000000000", - "timestamp": "0x6324bc3f", + "timestamp": 1663351871, "difficulty": "0x0", - "basefee": "0x2e5fda223", - "gas_limit": "0x1c9c380", + "basefee": 12448539171, + "gas_limit": 30000000, "prevrandao": "0x0000000000000000000000000000000000000000000000000000000000000000" }, "hosts": [ @@ -591,11 +591,11 @@ mod tests { "optimism": false }, "block_env": { - "number": "0x11c99bc", + "number": 18651580, "coinbase": "0x4838b106fce9647bdf1e7877bf73ce8b0bad5f97", - "timestamp": "0x65627003", - "gas_limit": "0x1c9c380", - "basefee": "0x64288ff1f", + "timestamp": 1700950019, + "gas_limit": 30000000, + "basefee": 26886078239, "difficulty": "0xc6b1a299886016dea3865689f8393b9bf4d8f4fe8c0ad25f0058b3569297c057", "prevrandao": "0xc6b1a299886016dea3865689f8393b9bf4d8f4fe8c0ad25f0058b3569297c057", "blob_excess_gas_and_price": { diff --git a/test-data/storage.json b/test-data/storage.json index 6a602f7..f8fd645 100644 --- a/test-data/storage.json +++ b/test-data/storage.json @@ -1 +1,49 @@ -{"meta":{"cfg_env":{"chain_id":1,"spec_id":"LATEST","perf_all_precompiles_have_balance":false,"memory_limit":4294967295,"perf_analyse_created_bytecodes":"Analyse","limit_contract_code_size":24576,"disable_coinbase_tip":false},"block_env":{"number":"0xdc42b8","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x1","difficulty":"0x0","basefee":"0x0","gas_limit":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},"hosts":["mainnet.infura.io"]},"accounts":{"0x63091244180ae240c87d1f528f5f269134cb07b3":{"balance":"0x0","code_hash":"0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","code":null,"nonce":0}},"storage":{"0x63091244180ae240c87d1f528f5f269134cb07b3":{"0x0":"0x0","0x1":"0x0","0x2":"0x0","0x3":"0x0","0x4":"0x0","0x5":"0x0","0x6":"0x0","0x7":"0x0","0x8":"0x0","0x9":"0x0"}},"block_hashes":{}} \ No newline at end of file +{ + "meta":{ + "cfg_env":{ + "chain_id":1, + "spec_id":"LATEST", + "perf_all_precompiles_have_balance":false, + "memory_limit":4294967295, + "perf_analyse_created_bytecodes":"Analyse", + "limit_contract_code_size":24576, + "disable_coinbase_tip":false + }, + "block_env":{ + "number":14435000, + "coinbase":"0x0000000000000000000000000000000000000000", + "timestamp":0, + "difficulty":"0", + "basefee":0, + "gas_limit":18446744073709551615 + }, + "hosts":[ + "mainnet.infura.io" + ] + }, + "accounts":{ + "0x63091244180ae240c87d1f528f5f269134cb07b3":{ + "balance":"0x0", + "code_hash":"0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "code":null, + "nonce":0 + } + }, + "storage":{ + "0x63091244180ae240c87d1f528f5f269134cb07b3":{ + "0x0":"0x0", + "0x1":"0x0", + "0x2":"0x0", + "0x3":"0x0", + "0x4":"0x0", + "0x5":"0x0", + "0x6":"0x0", + "0x7":"0x0", + "0x8":"0x0", + "0x9":"0x0" + } + }, + "block_hashes":{ + + } +} \ No newline at end of file From c168d119f593e0447891def5efe814ada4a92575 Mon Sep 17 00:00:00 2001 From: zerosnacks Date: Thu, 20 Mar 2025 12:25:53 +0100 Subject: [PATCH 07/12] fix CI --- deny.toml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/deny.toml b/deny.toml index b5ae159..35335da 100644 --- a/deny.toml +++ b/deny.toml @@ -1,7 +1,10 @@ [advisories] version = 2 yanked = "warn" -ignore = [] +ignore = [ + # https://github.com/dtolnay/paste + "RUSTSEC-2024-0436", +] [bans] multiple-versions = "warn" @@ -37,6 +40,8 @@ exceptions = [ # https://tldrlegal.com/license/creative-commons-cc0-1.0-universal { allow = ["CC0-1.0"], name = "tiny-keccak" }, { allow = ["CC0-1.0"], name = "aurora-engine-modexp" }, + { allow = ["CC0-1.0"], name = "secp256k1" }, + { allow = ["CC0-1.0"], name = "secp256k1-sys" }, ] [[licenses.clarify]] From 183aa4f8ab91826ff166fecb8c006a5b492edec7 Mon Sep 17 00:00:00 2001 From: zerosnacks Date: Tue, 25 Mar 2025 11:19:31 +0100 Subject: [PATCH 08/12] bump deps --- Cargo.toml | 4 ++-- src/cache.rs | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 03868ee..a94d421 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,7 +25,7 @@ all-features = true rustdoc-args = ["--cfg", "docsrs"] [dependencies] -alloy-primitives = { version = "0.8.23", features = ["map"] } +alloy-primitives = { version = "0.8.24", features = ["map"] } alloy-provider = { version = "0.12", default-features = false } alloy-rpc-types = { version = "0.12", features = ["eth"] } alloy-consensus = { version = "0.12", default-features = false } @@ -35,7 +35,7 @@ futures = "0.3" parking_lot = "0.12" -revm = { version = "20.0.0-alpha.6", features = ["std", "serde"] } +revm = { version = "20.0.0", features = ["std", "serde"] } serde = "1.0" serde_json = "1.0" diff --git a/src/cache.rs b/src/cache.rs index 508b8a0..6a2d07e 100644 --- a/src/cache.rs +++ b/src/cache.rs @@ -125,9 +125,9 @@ impl BlockchainDb { /// relevant identifying markers in the context of [BlockchainDb] #[derive(Clone, Debug, Eq, Serialize, Default)] pub struct BlockchainDbMeta { - /// block env + /// The block environment pub block_env: BlockEnv, - /// all the hosts used to connect to + /// All the hosts used to connect to pub hosts: BTreeSet, } From 5264e514d1326d55bee06698cf745c83b9c07b1e Mon Sep 17 00:00:00 2001 From: zerosnacks Date: Tue, 8 Apr 2025 10:24:25 +0200 Subject: [PATCH 09/12] bump deps --- Cargo.toml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index a94d421..f5d704d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,16 +26,16 @@ rustdoc-args = ["--cfg", "docsrs"] [dependencies] alloy-primitives = { version = "0.8.24", features = ["map"] } -alloy-provider = { version = "0.12", default-features = false } -alloy-rpc-types = { version = "0.12", features = ["eth"] } -alloy-consensus = { version = "0.12", default-features = false } +alloy-provider = { version = "0.13", default-features = false } +alloy-rpc-types = { version = "0.13", features = ["eth"] } +alloy-consensus = { version = "0.13", default-features = false } eyre = "0.6" futures = "0.3" parking_lot = "0.12" -revm = { version = "20.0.0", features = ["std", "serde"] } +revm = { version = "21.0.0", features = ["std", "serde"] } serde = "1.0" serde_json = "1.0" @@ -47,7 +47,7 @@ tracing = "0.1" url = "2" [dev-dependencies] -alloy-rpc-client = "0.12" +alloy-rpc-client = "0.13" tiny_http = "0.12" # [patch.crates-io] From bbc76fbb3660e20fcbde6b858874ea25c205112a Mon Sep 17 00:00:00 2001 From: zerosnacks Date: Tue, 8 Apr 2025 12:42:58 +0200 Subject: [PATCH 10/12] warns missing const for fn that is not correct --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index f5d704d..2640760 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,7 +16,7 @@ rust.rust_2018_idioms = { level = "deny", priority = -1 } rustdoc.all = "warn" [lints.clippy] -missing_const_for_fn = "warn" +missing_const_for_fn = "allow" # TODO: https://github.com/rust-lang/rust-clippy/issues/14020 use_self = "warn" option_if_let_else = "warn" From 6d5903a691f7e96149014441f117e3d10e09c1a5 Mon Sep 17 00:00:00 2001 From: zerosnacks Date: Tue, 8 Apr 2025 13:14:26 +0200 Subject: [PATCH 11/12] bump MSRV to 1.82 due to c-kzg compilation failure --- Cargo.toml | 2 +- clippy.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 2640760..2d84f88 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,7 +4,7 @@ description = "Fork database used by Foundry" version = "0.12.0" edition = "2021" # Remember to update clippy.toml as well -rust-version = "1.81" +rust-version = "1.82" authors = ["Foundry Contributors"] license = "MIT OR Apache-2.0" homepage = "https://github.com/foundry-rs/foundry-fork-db" diff --git a/clippy.toml b/clippy.toml index 8c0bc00..4579197 100644 --- a/clippy.toml +++ b/clippy.toml @@ -1 +1 @@ -msrv = "1.81" +msrv = "1.82" From 6144088516775c80cffeb05ef8f8832d8864fb91 Mon Sep 17 00:00:00 2001 From: zerosnacks Date: Tue, 8 Apr 2025 13:21:34 +0200 Subject: [PATCH 12/12] bump msrv in ci to 1.82 due to c-kzg --- .github/workflows/ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 20ff1a9..5d7444c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,11 +20,11 @@ jobs: strategy: fail-fast: false matrix: - rust: ["stable", "nightly", "1.81"] # MSRV + rust: ["stable", "nightly", "1.82"] # MSRV flags: ["--no-default-features", "", "--all-features"] exclude: # Some features have higher MSRV. - - rust: "1.81" # MSRV + - rust: "1.82" # MSRV flags: "--all-features" steps: - uses: actions/checkout@v3 @@ -43,13 +43,13 @@ jobs: cache-on-failure: true # Only run tests on latest stable and above - name: Install cargo-nextest - if: ${{ matrix.rust != '1.81' }} # MSRV + if: ${{ matrix.rust != '1.82' }} # MSRV uses: taiki-e/install-action@nextest - name: build - if: ${{ matrix.rust == '1.81' }} # MSRV + if: ${{ matrix.rust == '1.82' }} # MSRV run: cargo build --workspace ${{ matrix.flags }} - name: test - if: ${{ matrix.rust != '1.81' }} # MSRV + if: ${{ matrix.rust != '1.82' }} # MSRV run: cargo nextest run --workspace ${{ matrix.flags }} doctest: