Skip to content

Commit 85a7a4a

Browse files
authored
fix: update normalization (#256)
#254 followup
1 parent 564a996 commit 85a7a4a

File tree

1 file changed

+6
-2
lines changed
  • crates/artifacts/solc/src

1 file changed

+6
-2
lines changed

crates/artifacts/solc/src/lib.rs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ use foundry_compilers_core::{
3939
error::SolcError,
4040
utils::{
4141
strip_prefix_owned, BERLIN_SOLC, BYZANTIUM_SOLC, CANCUN_SOLC, CONSTANTINOPLE_SOLC,
42-
ISTANBUL_SOLC, LONDON_SOLC, PARIS_SOLC, PETERSBURG_SOLC, PRAGUE_SOLC, SHANGHAI_SOLC,
42+
ISTANBUL_SOLC, LONDON_SOLC, OSAKA_SOLC, PARIS_SOLC, PETERSBURG_SOLC, PRAGUE_SOLC,
43+
SHANGHAI_SOLC,
4344
},
4445
};
4546
pub use serde_helpers::{deserialize_bytes, deserialize_opt_bytes};
@@ -856,8 +857,10 @@ impl EvmVersion {
856857
if *version >= BYZANTIUM_SOLC {
857858
// If the Solc version is the latest, it supports all EVM versions.
858859
// For all other cases, cap at the at-the-time highest possible fork.
859-
let normalized = if *version >= PRAGUE_SOLC {
860+
let normalized = if *version >= OSAKA_SOLC {
860861
self
862+
} else if *version >= PRAGUE_SOLC {
863+
Self::Prague
861864
} else if self >= Self::Cancun && *version >= CANCUN_SOLC {
862865
Self::Cancun
863866
} else if self >= Self::Shanghai && *version >= SHANGHAI_SOLC {
@@ -2021,6 +2024,7 @@ mod tests {
20212024
("0.8.26", EvmVersion::Cancun, Some(EvmVersion::Cancun)),
20222025
("0.8.26", EvmVersion::Prague, Some(EvmVersion::Cancun)),
20232026
("0.8.27", EvmVersion::Prague, Some(EvmVersion::Prague)),
2027+
("0.8.29", EvmVersion::Osaka, Some(EvmVersion::Osaka)),
20242028
] {
20252029
let version = Version::from_str(solc_version).unwrap();
20262030
assert_eq!(

0 commit comments

Comments
 (0)