diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3e05f11d8..2a4e68cf8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,11 +22,11 @@ jobs: fail-fast: false matrix: os: ["ubuntu-latest", "macos-latest", "windows-latest"] - rust: ["stable", "1.87"] + rust: ["stable", "1.88"] flags: ["", "--all-features"] exclude: # Skip because some features have higher MSRV. - - rust: "1.87" # MSRV + - rust: "1.88" # MSRV flags: "--all-features" steps: - uses: actions/checkout@v4 diff --git a/Cargo.toml b/Cargo.toml index 9b595ad1d..3862c6c22 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,7 +5,7 @@ resolver = "2" [workspace.package] authors = ["Foundry Maintainers"] version = "0.17.4" -rust-version = "1.87" +rust-version = "1.88" readme = "README.md" license = "MIT OR Apache-2.0" repository = "https://github.com/foundry-rs/compilers" @@ -54,8 +54,8 @@ semver = { version = "1.0", features = ["serde"] } serde = { version = "1", features = ["derive", "rc"] } serde_json = "1.0" similar-asserts = "1" -solar-parse = { version = "=0.1.4", default-features = false } -solar-sema = { version = "=0.1.4", default-features = false } +solar-parse = { version = "=0.1.5", default-features = false } +solar-sema = { version = "=0.1.5", default-features = false } svm = { package = "svm-rs", version = "0.5", default-features = false } tempfile = "3.9" thiserror = "2" @@ -68,3 +68,9 @@ futures-util = "0.3" tokio = { version = "1.35", features = ["rt-multi-thread"] } snapbox = "0.6.9" + +# [patch.crates-io] +# solar-parse = { git = "https://github.com/paradigmxyz/solar", branch = "main" } +# solar-sema = { git = "https://github.com/paradigmxyz/solar", branch = "main" } +# solar-ast = { git = "https://github.com/paradigmxyz/solar", branch = "main" } +# solar-interface = { git = "https://github.com/paradigmxyz/solar", branch = "main" } diff --git a/README.md b/README.md index 2b636be64..80b3851d2 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ When updating this, also update: - .github/workflows/ci.yml --> -The current MSRV (minimum supported rust version) is 1.87. +The current MSRV (minimum supported rust version) is 1.88. Note that the MSRV is not increased automatically, and only as part of a minor release. diff --git a/clippy.toml b/clippy.toml index d946daec3..f3322b5fd 100644 --- a/clippy.toml +++ b/clippy.toml @@ -1 +1 @@ -msrv = "1.87" +msrv = "1.88" diff --git a/crates/compilers/src/cache/iface.rs b/crates/compilers/src/cache/iface.rs index 8f006ef41..ff29be147 100644 --- a/crates/compilers/src/cache/iface.rs +++ b/crates/compilers/src/cache/iface.rs @@ -38,7 +38,7 @@ pub(crate) fn interface_representation_ast( let is_exposed = match function.kind { // Function with external or public visibility ast::FunctionKind::Function => { - function.header.visibility >= Some(ast::Visibility::Public) + function.header.visibility.map(|v| *v) >= Some(ast::Visibility::Public) } ast::FunctionKind::Constructor | ast::FunctionKind::Fallback diff --git a/crates/compilers/src/resolver/parse.rs b/crates/compilers/src/resolver/parse.rs index 0627bb01c..06c21f95e 100644 --- a/crates/compilers/src/resolver/parse.rs +++ b/crates/compilers/src/resolver/parse.rs @@ -272,7 +272,7 @@ fn library_is_inlined(contract: &ast::ItemContract<'_>) -> bool { }) .all(|f| { !matches!( - f.header.visibility, + f.header.visibility.map(|v| *v), Some(ast::Visibility::Public | ast::Visibility::External) ) })