Skip to content

Commit cce24d3

Browse files
authored
Merge branch 'main' into elfedy-compiler-output
2 parents 3bfee72 + a1ce2b4 commit cce24d3

File tree

20 files changed

+69
-39
lines changed

20 files changed

+69
-39
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,17 @@ jobs:
2121
fail-fast: false
2222
matrix:
2323
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
24-
rust: ["stable", "1.70"]
24+
rust: ["stable", "1.83"]
2525
flags: ["", "--all-features"]
2626
exclude:
2727
# Skip because some features have higher MSRV.
28-
- rust: "1.70" # MSRV
28+
- rust: "1.83" # MSRV
2929
flags: "--all-features"
3030
steps:
3131
- uses: actions/checkout@v4
32-
- uses: dtolnay/rust-toolchain@stable
32+
- uses: dtolnay/rust-toolchain@master
33+
with:
34+
toolchain: ${{ matrix.rust }}
3335
- name: Install test binaries
3436
shell: bash
3537
run: ./.github/scripts/install_test_binaries.sh
@@ -38,11 +40,7 @@ jobs:
3840
- uses: Swatinem/rust-cache@v2
3941
with:
4042
cache-on-failure: true
41-
- name: build
42-
if: matrix.rust == '1.70' # MSRV
43-
run: cargo build --workspace ${{ matrix.flags }}
4443
- name: test
45-
if: matrix.rust != '1.70' # MSRV
4644
shell: bash
4745
run: cargo nextest run ${{ matrix.flags }} --retries 2
4846

CONTRIBUTING.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ cases should be limited, as much as possible, to using only Foundry Compilers AP
7474
See [How to create a Minimal, Complete, and Verifiable example][mcve].
7575

7676
[mcve]: https://stackoverflow.com/help/mcve
77+
7778
[template]: .github/PULL_REQUEST_TEMPLATE.md
7879

7980
### Triaging a Bug Report
@@ -120,6 +121,11 @@ commit signing. This option allows us to make small changes to your PR to bring
120121
it in line with these standards. It helps us get your PR in faster, and with
121122
less work from you.
122123

124+
### Contributions Related to Spelling and Grammar
125+
126+
At this time, we will not be accepting contributions that only fix spelling or grammatical errors in documentation, code
127+
or elsewhere.
128+
123129
### Cargo Commands
124130

125131
This section lists some commonly needed commands.
@@ -304,5 +310,7 @@ the commit log, or by using an `Author: ` meta-data tag in the commit.
304310
_Adapted from the [Tokio contributing guide]_.
305311

306312
[hiding-a-comment]: https://help.github.com/articles/managing-disruptive-comments/#hiding-a-comment
313+
307314
[documentation test]: https://doc.rust-lang.org/rustdoc/documentation-tests.html
315+
308316
[Tokio contributing guide]: https://github.com/tokio-rs/tokio/blob/master/CONTRIBUTING.md

Cargo.toml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ resolver = "2"
55
[workspace.package]
66
authors = ["Foundry Maintainers"]
77
version = "0.12.3"
8-
rust-version = "1.70"
8+
rust-version = "1.83"
99
readme = "README.md"
1010
license = "MIT OR Apache-2.0"
1111
repository = "https://github.com/foundry-rs/compilers"
@@ -43,7 +43,6 @@ cfg-if = "1.0"
4343
dunce = "1.0"
4444
md-5 = "0.10"
4545
memmap2 = "0.9"
46-
once_cell = "1.19"
4746
path-slash = "0.2"
4847
rayon = "1.8"
4948
regex = "1.10"
@@ -54,7 +53,7 @@ similar-asserts = "1"
5453
solar-parse = { version = "=0.1.0", default-features = false }
5554
svm = { package = "svm-rs", version = "0.5", default-features = false }
5655
tempfile = "3.9"
57-
thiserror = "1"
56+
thiserror = "2"
5857
tracing = "0.1"
5958
walkdir = "2.5"
6059
yansi = "1.0"

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ When updating this, also update:
2626

2727
Foundry Compilers will keep a rolling MSRV (minimum supported rust version) policy of **at
2828
least** 6 months. When increasing the MSRV, the new Rust version must have been
29-
released at least six months ago. The current MSRV is 1.70.0.
29+
released at least six months ago. The current MSRV is 1.83.0.
3030

3131
Note that the MSRV is not increased automatically, and only as part of a minor
3232
release.

clippy.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
msrv = "1.70"
1+
msrv = "1.83"

crates/artifacts/solc/src/error.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -150,9 +150,11 @@ impl fmt::Display for Error {
150150
// unless it also contains a source location, in which case the entire error message is an
151151
// old style error message, like:
152152
// path/to/file:line:column: ErrorType: message
153-
if lines.clone().next().map_or(false, |l| {
154-
l.contains(short_msg) && l.bytes().filter(|b| *b == b':').count() < 3
155-
}) {
153+
if lines
154+
.clone()
155+
.next()
156+
.is_some_and(|l| l.contains(short_msg) && l.bytes().filter(|b| *b == b':').count() < 3)
157+
{
156158
let _ = lines.next();
157159
}
158160

crates/artifacts/solc/src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,9 +110,9 @@ impl SolcInput {
110110
let mut yul_sources = Sources::new();
111111

112112
for (file, source) in sources {
113-
if file.extension().map_or(false, |e| e == "yul") {
113+
if file.extension().is_some_and(|e| e == "yul") {
114114
yul_sources.insert(file, source);
115-
} else if file.extension().map_or(false, |e| e == "sol") {
115+
} else if file.extension().is_some_and(|e| e == "sol") {
116116
solidity_sources.insert(file, source);
117117
}
118118
}

crates/artifacts/solc/src/output_selection.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,9 +149,9 @@ impl OutputSelection {
149149
/// TODO: correctly process wildcard keys to reduce false negatives
150150
pub fn is_subset_of(&self, other: &Self) -> bool {
151151
self.0.iter().all(|(file, selection)| {
152-
other.0.get(file).map_or(false, |other_selection| {
152+
other.0.get(file).is_some_and(|other_selection| {
153153
selection.iter().all(|(contract, outputs)| {
154-
other_selection.get(contract).map_or(false, |other_outputs| {
154+
other_selection.get(contract).is_some_and(|other_outputs| {
155155
outputs.iter().all(|output| other_outputs.contains(output))
156156
})
157157
})

crates/artifacts/vyper/src/input.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ impl VyperInput {
2222
let mut interfaces = Sources::new();
2323

2424
for (path, content) in sources {
25-
if path.extension().map_or(false, |ext| ext == VYPER_INTERFACE_EXTENSION) {
25+
if path.extension().is_some_and(|ext| ext == VYPER_INTERFACE_EXTENSION) {
2626
// Interface .vyi files should be removed from the output selection.
2727
settings.output_selection.0.remove(path.to_string_lossy().as_ref());
2828
interfaces.insert(path, content);

crates/compilers/Cargo.toml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ thiserror.workspace = true
2929
path-slash.workspace = true
3030
yansi.workspace = true
3131
solar-parse.workspace = true
32-
once_cell = { workspace = true, optional = true }
3332
futures-util = { workspace = true, optional = true }
3433
tokio = { workspace = true, optional = true }
3534

@@ -85,7 +84,6 @@ svm-solc = [
8584
"dep:svm-builds",
8685
"dep:sha2",
8786
"foundry-compilers-core/svm-solc",
88-
"dep:once_cell",
8987
]
9088
# Utilities for creating and testing project workspaces.
9189
project-util = [

0 commit comments

Comments
 (0)