Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
1f430c2
chore(deps): bump strum from 0.27.2 to 0.28.0
dependabot[bot] Apr 22, 2026
9b6eb11
Merge branch 'foundry-rs:master' into edr-reth
Dargon789 Apr 24, 2026
c6d3d19
Merge remote-tracking branch 'upstream/master' into hardhat-project
googleworkspace-bot Apr 24, 2026
fb01017
Update crates/script/src/simulate.rs
Dargon789 Apr 25, 2026
df6d596
Merge remote-tracking branch 'upstream/master' into hardhat-project
googleworkspace-bot Apr 25, 2026
30189ca
Merge branch 'master' into hardhat-project
Dargon789 Apr 25, 2026
1209b13
Merge branch 'foundry-rs:master' into foundry/master-test-UX
Dargon789 Apr 25, 2026
5dbd7b2
Update crates/anvil/server/src/handler.rs
Dargon789 Apr 25, 2026
5e16eb3
fix(forge): adjust gas assertion CounterWithFallback (foundry-rs#1446…
Dargon789 Apr 27, 2026
844dd52
Merge branch 'foundry-rs:master' into foundry/master-test-UX
Dargon789 Apr 27, 2026
7156deb
Merge branch 'foundry-rs:master' into hardhat-project
Dargon789 Apr 27, 2026
d2eaa96
Merge branch 'foundry-rs:master' into foundry/master-test-UX
Dargon789 Apr 29, 2026
1cfe27b
Merge branch 'foundry-rs:master' into hardhat-project
Dargon789 Apr 29, 2026
c3b12ed
Merge remote-tracking branch 'upstream/master' into foundry/master-te…
googleworkspace-bot May 2, 2026
a223d20
Merge branch 'foundry/master-test-UX'
googleworkspace-bot May 2, 2026
b5fa58d
Merge branch 'dependabot/cargo/strum-0.28.0'
googleworkspace-bot May 2, 2026
6c44631
chore(deps): bump strum from 0.27.2 to 0.28.0 (#509)
dependabot[bot] May 2, 2026
b8e3a0c
gas-snapshot
googleworkspace-bot May 2, 2026
840ec70
Merge branch 'main'
googleworkspace-bot May 2, 2026
432d718
chore(deps): bump similar-asserts from 1.7.0 to 2.0.0 (#508)
dependabot[bot] May 2, 2026
3a7e24c
Merge remote-tracking branch 'upstream/master'
googleworkspace-bot May 4, 2026
ef4f254
Merge remote-tracking branch 'upstream/master'
googleworkspace-bot May 4, 2026
1d5702d
Merge remote-tracking branch 'upstream/master'
googleworkspace-bot May 4, 2026
5a4d289
ci: sign release archives, docker images, and publish SBOMs (#520)
Dargon789 May 6, 2026
092dcf6
Merge branch 'foundry-rs:master' into foundry-rs/master
Dargon789 May 6, 2026
53c39b4
ci: sign release archives, docker images, and publish SBOMs (#519)
Dargon789 May 6, 2026
bcfef65
Merge branch 'foundry-rs:master' into hardhat-project
Dargon789 May 6, 2026
9753a85
Merge branch 'master' of https://github.com/Dargon789/foundry
googleworkspace-bot May 6, 2026
905659c
Merge branch 'edr-reth' of https://github.com/Dargon789/foundry into …
googleworkspace-bot May 6, 2026
e36d86d
Merge remote-tracking branch 'upstream/master' into edr-reth
googleworkspace-bot May 6, 2026
e3038f9
Merge branch 'hardhat-project' into edr-reth
Dargon789 May 6, 2026
b2931c3
Update .github/ISSUE_TEMPLATE/bug_report.md
Dargon789 May 7, 2026
8d9e6f3
Merge branch 'master' into hardhat-project
Dargon789 May 7, 2026
ea1d9f9
Merge branch 'hardhat-project' into edr-reth
Dargon789 May 7, 2026
ff9b162
Merge branch 'foundry-rs:master' into foundry-rs/master
Dargon789 May 7, 2026
fc617f4
Tempo signer lookup and access key signing (#523)
Dargon789 May 7, 2026
9abaa0d
Merge branch 'hardhat-project' of https://github.com/Dargon789/foundr…
googleworkspace-bot May 7, 2026
1175872
ci: sign release archives, docker images, and publish SBOMs
googleworkspace-bot May 7, 2026
c6ce877
Merge branch 'master' into hardhat-project
googleworkspace-bot May 7, 2026
a2be318
Merge branch 'master' of https://github.com/Dargon789/foundry
googleworkspace-bot May 7, 2026
7128f62
Merge branch 'hardhat-project'
googleworkspace-bot May 7, 2026
de9cf90
Update .github/scripts/compare-nightly.sh
Dargon789 May 7, 2026
2b8840d
Update crates/forge/src/cmd/test/mod.rs
Dargon789 May 7, 2026
7d6a0cb
Merge branch 'main'
googleworkspace-bot May 7, 2026
8dff762
Merge branch 'foundry-rs/master'
googleworkspace-bot May 7, 2026
ad2fcae
Merge branch 'edr-reth'
googleworkspace-bot May 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions .circleci/cargo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
version: 2.1
#
jobs:
build-and-test:
docker:
- image: cimg/rust:1.89.0
steps:
- checkout
- restore_cache:
keys:
- v1-cargo-{{ checksum "Cargo.lock" }}
- v1-cargo-
- run:
name: "Check formatting"
command: cargo fmt -- --check
- run:
name: "Run tests"
command: cargo test
- save_cache:
key: v1-cargo-{{ checksum "Cargo.lock" }}
paths:
- "~/.cargo/bin"
- "~/.cargo/registry/index"
- "~/.cargo/registry/cache"
- "~/.cargo/git/db"
- "target"
- run:
name: "Check formatting"
command: cargo fmt -- --check
- run:
name: "Run tests"
command: cargo test
26 changes: 26 additions & 0 deletions .circleci/ci-web3-gamefi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Use the latest 2.1 version of CircleCI pipeline process engine.
# See: https://circleci.com/docs/configuration-reference

version: 2.1
executors:
my-custom-executor:
docker:
- image: cimg/base:stable
auth:
# ensure you have first added these secrets
# visit app.circleci.com/settings/project/github/Dargon789/foundry/environment-variables
username: $DOCKER_HUB_USER
password: $DOCKER_HUB_PASSWORD
jobs:
web3-defi-game-project-:

executor: my-custom-executor
steps:
- checkout
- run: |
# echo Hello, World!

workflows:
my-custom-workflow:
jobs:
- web3-defi-game-project-
31 changes: 31 additions & 0 deletions .circleci/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
version: 2.1
jobs:
build-and-test:
docker:
- image: cimg/rust:1.89.0
steps:
- checkout
- restore_cache:
keys:
- v1-cargo-{{ checksum "Cargo.lock" }}
- v1-cargo-
- run:
name: "Check formatting"
command: cargo fmt -- --check
- run:
name: "Run tests"
command: cargo test
- save_cache:
key: v1-cargo-{{ checksum "Cargo.lock" }}
paths:
- "~/.cargo/bin"
- "~/.cargo/registry/index"
- "~/.cargo/registry/cache"
- "~/.cargo/git/db"
- "target"
- run:
name: "Check formatting"
command: cargo fmt -- --check
- run:
name: "Run tests"
command: cargo test
37 changes: 37 additions & 0 deletions .circleci/ci_cargo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
version: 2.1

jobs:
build-and-test:
docker:
- image: cimg/rust:1.88.0
steps:
- checkout
- restore_cache:
keys:
- v1-cargo-{{ checksum "Cargo.lock" }}
- v1-cargo-
- run:
name: "Check formatting"
command: cargo fmt -- --check
- run:
name: "Run tests"
command: cargo test
- save_cache:
key: v1-cargo-{{ checksum "Cargo.lock" }}
paths:
- "~/.cargo/bin"
- "~/.cargo/registry/index"
- "~/.cargo/registry/cache"
- "~/.cargo/git/db"
- "target"
- run:
name: "Check formatting"
command: cargo fmt -- --check
- run:
name: "Run tests"
command: cargo test

workflows:
ci:
jobs:
- build-and-test
31 changes: 31 additions & 0 deletions .circleci/ci_v1.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
version: 2.1

jobs:
build-and-test:
docker:
- image: cimg/rust:1.89.0
steps:
- checkout
- restore_cache:
keys:
- v1-cargo-{{ checksum "Cargo.lock" }}
- v1-cargo-
- run:
name: "Check formatting"
command: cargo fmt -- --check
- run:
name: "Run tests"
command: cargo test
- save_cache:
key: v1-cargo-{{ checksum "Cargo.lock" }}
paths:
- "~/.cargo/bin"
- "~/.cargo/registry/index"
- "~/.cargo/registry/cache"
- "~/.cargo/git/db"
- "target"

workflows:
ci:
jobs:
- build-and-test
70 changes: 70 additions & 0 deletions .circleci/dev_stage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Use the latest 2.1 version of CircleCI pipeline process engine.
# See: https://circleci.com/docs/configuration-reference

version: 2.1
executors:
my-custom-executor:
docker:
- image: cimg/base:stable
jobs:
web3-defi-game-project-:

executor: my-custom-executor
steps:
- checkout
- run: |
# echo Hello, World!

workflows:
my-custom-workflow:
jobs:
- web3-defi-game-project-

jobs:
my-job:
steps:
- run: echo "Hello, world!"
- run:
command: echo "This step will automatically rerun up to 3 times if it fails with a 10 second delay between attempts"
max_auto_reruns: 3
auto_rerun_delay: 10s

workflows:
dev_stage_pre-prod:
jobs:
- test_dev:
filters: # using regex filters requires the entire branch to match
branches:
only: # only branches matching the below regex filters will run
- dev
- /user-.*/
- test_stage:
filters:
branches:
only: stage
- test_pre-prod:
filters:
branches:
only: /pre-prod(?:-.+)?$/


build-test-deploy:
jobs:
- build:
filters: # required since `test` has tag filters AND requires `build`
tags:
only: /^config-test.*/
- test:
requires:
- build
filters: # required since `deploy` has tag filters AND requires `test`
tags:
only: /^config-test.*/
- deploy:
requires:
- test
filters:
tags:
only: /^config-test.*/
branches:
ignore: /.*/
26 changes: 26 additions & 0 deletions .circleci/web3_defi_gamefi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Use the latest 2.1 version of CircleCI pipeline process engine.
# See: https://circleci.com/docs/configuration-reference

version: 2.1
executors:
my-custom-executor:
docker:
- image: cimg/base:stable
auth:
# ensure you have first added these secrets
# visit app.circleci.com/settings/project/github/Dargon789/foundry/environment-variables
username: $DOCKER_HUB_USER
password: $DOCKER_HUB_PASSWORD
jobs:
web3-defi-game-project-:

executor: my-custom-executor
steps:
- checkout
- run: |
# echo Hello, World!

workflows:
my-custom-workflow:
jobs:
- web3-defi-game-project-
2 changes: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. Chrome, Safari]
- Version [e.g. 22]
- Browser [e.g. Chrome, safari]
- Version [e.g. 22]

Expand Down
Empty file modified .github/scripts/commit-benchmark-results.sh
100755 → 100644
Empty file.
2 changes: 1 addition & 1 deletion .github/scripts/compare-nightly.sh
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ for key in all_keys:
if p is None:
print(f"| `{key}` | N/A | {t:.5f}s | — | 🆕 New |")
continue
delta = (t - p) / p * 100
delta = (t - p) / p * 100 if p > 0 else 0
if delta >= fail:
status = "🔴 Regression"
has_regression = True
Expand Down
Empty file modified .github/scripts/read-benchmark-results.sh
100755 → 100644
Empty file.
30 changes: 30 additions & 0 deletions .github/workflows/npm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,36 @@ jobs:
github-token: ${{ secrets.GITHUB_TOKEN }}
run-id: ${{ github.event.workflow_run.id || inputs.run_id }}

- name: Validate Downloaded Artifacts
env:
ARTIFACT_DIR: ${{ steps.paths.outputs.artifact_dir }}
run: |
set -euo pipefail

echo "Validating artifacts in: $ARTIFACT_DIR"

if [[ ! -d "$ARTIFACT_DIR" ]]; then
echo "ERROR: Artifact directory does not exist: $ARTIFACT_DIR" >&2
exit 1
fi

if ! find "$ARTIFACT_DIR" -mindepth 1 -print -quit | grep -q .; then
echo "ERROR: Artifact directory is empty: $ARTIFACT_DIR" >&2
exit 1
fi

# Reject files with suspicious paths (absolute paths or parent directory traversals)
# Use null-delimited paths to safely handle filenames with newlines or whitespace
while IFS= read -r -d '' path; do
rel="${path#"$ARTIFACT_DIR"/}"
if [[ "$rel" == /* ]] || [[ "$rel" == *".."* ]]; then
echo "ERROR: Suspicious artifact path detected: $rel" >&2
exit 1
fi
done < <(find "$ARTIFACT_DIR" -type f -print0)

echo "Artifact validation completed successfully."

- name: Setup Bun
uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2.2.0
with:
Expand Down
2 changes: 1 addition & 1 deletion counter/.gas-snapshot
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
CounterTest:testFuzz_SetNumber(uint256) (runs: 256, μ: 30177, ~: 32354)
CounterTest:testFuzz_SetNumber(uint256) (runs: 256, μ: 30410, ~: 32354)
CounterTest:test_Increment() (gas: 31851)
4 changes: 3 additions & 1 deletion crates/anvil/server/src/handler.rs
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,9 @@ pub async fn handle_request<Handler: RpcHandler>(
Request::Single(call) => handle_call(call, handler).await.map(Response::Single),
Request::Batch(calls) => {
if calls.is_empty() {
return Some(Response::error(RpcError::invalid_request()));
return Some(Response::Batch(vec![anvil_rpc::response::RpcResponse::from(
RpcError::invalid_request(),
)]));
}
future::join_all(calls.into_iter().map(move |call| handle_call(call, handler.clone())))
.map(responses_as_batch)
Expand Down
6 changes: 6 additions & 0 deletions crates/doc/src/parser/comment.rs
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,12 @@ impl Comments {
}
}

impl From<Vec<Comment>> for Comments {
fn from(value: Vec<Comment>) -> Self {
Self(value)
}
}

/// The collection of references to natspec [Comment] items.
#[derive(Debug, Default, PartialEq, Eq, Deref)]
pub struct CommentsRef<'a>(Vec<&'a Comment>);
Expand Down
1 change: 1 addition & 0 deletions crates/forge/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ alloy-primitives = { workspace = true, features = ["serde"] }
alloy-provider = { workspace = true, features = ["reqwest", "ws", "ipc"] }
alloy-signer.workspace = true
alloy-transport.workspace = true
alloy-hardforks.workspace = true

tempo-alloy.workspace = true

Expand Down
2 changes: 1 addition & 1 deletion crates/forge/src/cmd/test/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1166,7 +1166,7 @@ fn merge_outcomes(base: &mut TestOutcome, other: TestOutcome) {
let base_suite = e.get_mut();
base_suite.test_results.extend(other_suite.test_results);
base_suite.warnings.extend(other_suite.warnings);
base_suite.duration = base_suite.duration.max(other_suite.duration);
base_suite.duration += other_suite.duration;
}
}
}
Expand Down
3 changes: 1 addition & 2 deletions crates/script/src/simulate.rs
Original file line number Diff line number Diff line change
Expand Up @@ -363,10 +363,9 @@ impl<FEN: FoundryEvmNetwork> FilledTransactionsState<FEN> {

// Get the native token symbol for the chain using NamedChain
let token_symbol = NamedChain::try_from(provider_info.chain)
.unwrap_or_default()
let token_symbol = alloy_chains::Chain::from_id(provider_info.chain)
.native_currency_symbol()
.unwrap_or("ETH");

// We don't store it in the transactions, since we want the most updated value.
// Right before broadcasting.
let per_gas = if let Some(gas_price) = self.args.with_gas_price {
Expand Down
Loading
Loading