Conversation
… into dargon789/gamefi
… into dargon789/gamefi
* docs(config): complete foundry.toml configuration reference (#13198)
* complete config
* docs: mark optional fields in config README
* use foundry book for full config
* docs(config): point to Foundry Book for configuration reference
* feat(invariant): add optimization mode for invariant testing (#13196)
* feat(invariant): add optimization mode for invariant testing
Adds optimization mode for invariant testing, similar to Echidna. This mode
maximizes an `int256` return value from a function prefixed with `optimize_`.
**Usage:**
- Define an invariant function returning `int256` with `optimize_` prefix
- Foundry will fuzz to find the sequence that maximizes this value
- The best value and sequence are tracked and reported
- Sequence shrinking is applied to find the minimal reproducing sequence
**Example:**
```solidity
function optimize_maxRoundingError() external view returns (int256) {
return int256(pool.totalShares()) - int256(pool.expectedShares());
}
```
**Bug fix during implementation:**
Fixed a bug in shrink logic where `vm.warp` and `vm.roll` values were not
correctly accumulated when replaying shrunk sequences. This caused the "best"
sequence to be non-reproducible because time/block values depended on removed
calls. The fix:
- Keeps reverted calls in sequence during optimization to preserve warp/roll
- Accumulates warps/rolls from removed calls into kept calls during shrinking
- Updates inspector's cheatcodes.block alongside executor.env
Closes #12190
Amp-Thread-ID: https://ampcode.com/threads/T-019bea21-149c-728c-9556-850778b70ea3
Co-authored-by: Amp <amp@ampcode.com>
* refactor: isolate optimization shrinking logic from check mode
- Keep shrink_sequence and check_sequence unchanged for regular invariant checks
- Add shrink_sequence_value and check_sequence_value for optimization mode
- Optimization mode handles warp/roll accumulation from removed calls
- replay.rs dispatches to correct shrinking function based on target_value
* refactor: cleanup shrink optimization code, extract helpers
---------
Co-authored-by: Amp <amp@ampcode.com>
* fix: only classify setUp as test setup if it has no parameters (#13204)
Contracts with `setUp(bytes memory)` (common in Gnosis Safe/Zodiac modules)
were incorrectly classified as dev/test contracts and excluded from
`forge build --sizes` output.
Now `setUp` is only classified as a test `Setup` function when it has no
parameters, matching Forge's actual test setup behavior.
Fixes #11126
* chore: fix clippy lints (#13207)
* feat(cast): add --flatten flag to cast interface (#13201)
* feat(cast): add --all-in-one flag to cast interface
Adds a new `--all-in-one` flag to `cast interface` that inlines
inherited/library struct types directly into the generated interface.
This addresses the issue where `cast interface` generates a separate
`library` block for struct types that originate from inherited interfaces,
making the generated interface less usable for some workflows.
With `--all-in-one`, all types are consolidated into a single interface:
```solidity
// Before (default):
library IBase {
struct TestStruct { address asset; }
}
interface Contract {
function test(IBase.TestStruct memory) external;
}
// After (with --all-in-one):
interface Contract {
struct TestStruct { address asset; }
function test(TestStruct memory) external;
}
```
Uses alloy-json-abi's `ToSolConfig::one_contract(true)` option
introduced in alloy-core 0.8.24.
Closes #9960
* chore: cargo fmt
* refactor: rename --all-in-one to --flatten per review
* chore: fix rustfmt
* Update flake.lock (#13212)
flake.lock: Update
Flake lock file updates:
• Updated input 'fenix':
'github:nix-community/fenix/edd5602' (2026-01-17)
→ 'github:nix-community/fenix/93523fa' (2026-01-24)
• Updated input 'fenix/rust-analyzer-src':
'github:rust-lang/rust-analyzer/adbff8b' (2026-01-15)
→ 'github:rust-lang/rust-analyzer/39018ac' (2026-01-23)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/be5afa0' (2026-01-16)
→ 'github:NixOS/nixpkgs/ab9fbbc' (2026-01-24)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* chore(deps): weekly `cargo update` (#13213)
Updating git repository `https://github.com/rust-cli/rexpect`
Updating git repository `https://github.com/paradigmxyz/solar`
Skipping git submodule `https://github.com/argotorg/solidity.git` due to update strategy in .gitmodules
Updating git repository `https://github.com/tempoxyz/tempo`
Updating git repository `https://github.com/paradigmxyz/reth`
Locking 62 packages to latest compatible versions
Updating alloy-chains v0.2.29 -> v0.2.30
Updating alloy-consensus v1.4.3 -> v1.5.2
Updating alloy-consensus-any v1.4.3 -> v1.5.2
Updating alloy-contract v1.4.3 -> v1.5.2
Updating alloy-eip5792 v1.4.3 -> v1.5.2
Updating alloy-eip7928 v0.3.0 -> v0.3.2
Updating alloy-eips v1.4.3 -> v1.5.2
Updating alloy-ens v1.4.3 -> v1.5.2
Unchanged alloy-evm v0.26.3 (available: v0.27.0)
Updating alloy-genesis v1.4.3 -> v1.5.2
Updating alloy-json-rpc v1.4.3 -> v1.5.2
Updating alloy-network v1.4.3 -> v1.5.2
Updating alloy-network-primitives v1.4.3 -> v1.5.2
Unchanged alloy-op-evm v0.26.3 (available: v0.27.0)
Updating alloy-provider v1.4.3 -> v1.5.2
Updating alloy-pubsub v1.4.3 -> v1.5.2
Updating alloy-rpc-client v1.4.3 -> v1.5.2
Updating alloy-rpc-types v1.4.3 -> v1.5.2
Updating alloy-rpc-types-anvil v1.4.3 -> v1.5.2
Updating alloy-rpc-types-any v1.4.3 -> v1.5.2
Updating alloy-rpc-types-beacon v1.4.3 -> v1.5.2
Updating alloy-rpc-types-debug v1.4.3 -> v1.5.2
Updating alloy-rpc-types-engine v1.4.3 -> v1.5.2
Updating alloy-rpc-types-eth v1.4.3 -> v1.5.2
Updating alloy-rpc-types-trace v1.4.3 -> v1.5.2
Updating alloy-rpc-types-txpool v1.4.3 -> v1.5.2
Updating alloy-serde v1.4.3 -> v1.5.2
Updating alloy-signer v1.4.3 -> v1.5.2
Updating alloy-signer-aws v1.4.3 -> v1.5.2
Updating alloy-signer-gcp v1.4.3 -> v1.5.2
Updating alloy-signer-ledger v1.4.3 -> v1.5.2
Updating alloy-signer-local v1.4.3 -> v1.5.2
Updating alloy-signer-trezor v1.4.3 -> v1.5.2
Updating alloy-signer-turnkey v1.4.3 -> v1.5.2
Updating alloy-transport v1.4.3 -> v1.5.2
Updating alloy-transport-http v1.4.3 -> v1.5.2
Updating alloy-transport-ipc v1.4.3 -> v1.5.2
Updating alloy-transport-ws v1.4.3 -> v1.5.2
Updating alloy-tx-macros v1.4.3 -> v1.5.2
Updating aws-lc-rs v1.15.3 -> v1.15.4
Updating aws-lc-sys v0.36.0 -> v0.37.0
Updating cc v1.2.53 -> v1.2.54
Updating clearscreen v4.0.2 -> v4.0.3
Unchanged generic-array v0.14.7 (available: v0.14.9)
Unchanged icu_collections v2.0.0 (available: v2.1.1)
Unchanged icu_normalizer v2.0.1 (available: v2.1.1)
Unchanged icu_normalizer_data v2.0.0 (available: v2.1.1)
Unchanged icu_properties v2.0.2 (available: v2.1.2)
Unchanged icu_properties_data v2.0.1 (available: v2.1.2)
Unchanged idna_adapter v1.1.0 (available: v1.2.1)
Updating libm v0.2.15 -> v0.2.16
Unchanged matchit v0.8.4 (available: v0.8.6)
Removing nix v0.29.0
Updating num-conv v0.1.0 -> v0.2.0
Updating opener v0.8.3 -> v0.8.4
Updating openssl-probe v0.2.0 -> v0.2.1
Updating proc-macro2 v1.0.105 -> v1.0.106
Updating process-wrap v8.2.1 -> v9.0.1
Updating quote v1.0.43 -> v1.0.44
Unchanged rand v0.8.5 (available: v0.9.2)
Unchanged reqwest v0.12.28 (available: v0.13.1)
Updating socket2 v0.6.1 -> v0.6.2
Updating time v0.3.45 -> v0.3.46
Updating time-core v0.1.7 -> v0.1.8
Updating time-macros v0.2.25 -> v0.2.26
Updating uuid v1.19.0 -> v1.20.0
Updating watchexec-signals v5.0.0 -> v5.0.1
Updating watchexec-supervisor v5.0.1 -> v5.0.2
Updating web_atoms v0.2.1 -> v0.2.3
Updating windows v0.61.3 -> v0.62.2
Updating windows-collections v0.2.0 -> v0.3.2
Removing windows-core v0.61.2
Updating windows-future v0.2.1 -> v0.3.2
Removing windows-link v0.1.3
Updating windows-numerics v0.2.0 -> v0.3.1
Removing windows-result v0.3.4
Removing windows-strings v0.4.2
Updating windows-threading v0.1.0 -> v0.2.1
Updating zmij v1.0.15 -> v1.0.16
note: to see how you depend on a package, run `cargo tree --invert <dep>@<ver>`
Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com>
* chore(anvil): clean up remaining dead code after Odyssey sunset (#13211)
* fix(coverage): correct BRDA hit values for LCOV consistency (#13151)
* fix(coverage): correct BRDA hit values for LCOV consistency
Per the LCOV tracefile format specification, BRDA hit values should be:
- "-" when the expression was never evaluated (line not executed)
- "0" when the branch exists and was evaluated but never taken
- "N" when the branch was taken N times
Previously, we were outputting "-" for all branches with 0 hits,
which caused genhtml to fail with "inconsistent" errors when a line
was hit (DA shows hits > 0) but branches on that line showed "-".
This fix tracks line hits in a first pass, then uses that information
to determine whether to output "-" (line never hit) or "0" (line hit
but branch not taken) for branches with 0 hits.
Fixes foundry-rs/foundry#11548
* fix: clippy explicit_iter_loop warning
* test(coverage): add brda_lcov_consistency test for BRDA hit values
Verifies that BRDA outputs follow LCOV spec:
- "0" when line was executed but branch not taken
- "-" when line was never executed
This catches the inconsistency that caused genhtml to fail.
---------
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
Co-authored-by: zerosnacks <zerosnacks@protonmail.com>
* feat(forge): add browser wallet support for `forge script` (#12952)
* feat(script): add support for browser wallet
* fix: browser wallet opts defaults
* chore: bump foundry-browser-wallet v0.1.0
* ci: use shared cache mounts for parallel builds (#13231)
perf(docker): use shared cache mounts for parallel builds
Change cache mount sharing mode from `locked` to `shared` for cargo
registry, git, and sccache directories.
With `sharing=locked`, parallel builds must wait for exclusive access
to each cache, causing builds to queue up even when compilation itself
is fast.
Both cargo and sccache handle concurrent access correctly, so `shared`
is safe and allows parallel builds to proceed without blocking.
Amp-Thread-ID: https://ampcode.com/threads/T-019bfc1d-3cee-70ca-9caa-01e33acdff46
Co-authored-by: Amp <amp@ampcode.com>
* fix(anvil): preserve withdrawals in SerializableBlock for state dump/load (#13227)
* fix(anvil): preserve withdrawals in SerializableBlock for state dump/load
* add: test
* fix ci
* chore(deps): bump DeterminateSystems/determinate-nix-action from 3.15.1 to 3.15.2 (#13236)
chore(deps): bump DeterminateSystems/determinate-nix-action
Bumps [DeterminateSystems/determinate-nix-action](https://github.com/determinatesystems/determinate-nix-action) from 3.15.1 to 3.15.2.
- [Release notes](https://github.com/determinatesystems/determinate-nix-action/releases)
- [Commits](https://github.com/determinatesystems/determinate-nix-action/compare/1d699fc25db3f9e079cd2f168ca007a4183389be...89ab342bd48ff7318caf8d39d6a330c7b1df8f2f)
---
updated-dependencies:
- dependency-name: DeterminateSystems/determinate-nix-action
dependency-version: 3.15.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump taiki-e/install-action from 2.66.2 to 2.67.13 (#13235)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.66.2 to 2.67.13.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/v2.66.2...710817a1645ef40daad5bcde7431ceccf6cc3528)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.67.13
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump peter-evans/create-pull-request from 8.0.0 to 8.1.0 (#13234)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 8.0.0 to 8.1.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/98357b18bf14b5342f975ff684046ec3b2a07725...c0f553fe549906ede9cf27b5156039d195d2ece0)
---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
dependency-version: 8.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump crate-ci/typos from 1.42.1 to 1.42.2 (#13233)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.42.1 to 1.42.2.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/65120634e79d8374d1aa2f27e54baa0c364fff5a...a1d64977b4aa1709d6328d518aa753f4899352d8)
---
updated-dependencies:
- dependency-name: crate-ci/typos
dependency-version: 1.42.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: grandizzy <38490174+grandizzy@users.noreply.github.com>
* fix(docker): expose VERGEN_GIT_SHA to build environment (#13237)
* docs(coverage): link to stack-too-deep guide in warnings (#13240)
Update coverage warnings to point to the new Foundry Book guide
instead of the GitHub issue, providing users with actionable
techniques to resolve the error.
Amp-Thread-ID: https://ampcode.com/threads/T-019bff7a-8502-72b7-af76-794f258e8c67
Co-authored-by: Amp <amp@ampcode.com>
* Polkadot/Kusama/PolkadotTestnet for RPC gas estimation (#12537)
* adds polkadot testnet
* adds polkadot testnet
* bump alloy chains
* fmt
* Remove kluster
* update rpc url
* update rpc url
* fmt
* adds polkadot kusama
* bump alloy chains
* perf(anvil): avoid redundant block queries in ots_getBlockTransactions (#13243)
* fix(anvil): use consistent chain_id fallback for blob params (#13241)
* Revert "Delete .circleci/ci_deploy.yml (#322)" (#358)
This reverts commit 87dd517cf50fef686c8ef39431d06b16d4744d88.
* feat(primitives): introduce `NetworkWallet<FoundryNetwork>` impl for `EthereumWallet` (#13248)
- Seamless support for eth/op/tempo txs
- This aims to replace `WalletSigner`'s impl once `FoundryNetwork` will be used everywhere
* refactor(common): make `ProviderBuilder` generic over `Network` (#13250)
* refactor(common): make `ProviderBuilder` generic over `Network`
- Updated `ProviderBuilder` helper to be generic, which will facilate `FoundryNetwork` rollout
- Adjusted the instantiation of `ProviderBuilder` in various locations to use `AnyNetwork`.
- Enhanced the `build` and `build_with_wallet` methods to accommodate the new generic structure.
* fix: relax trait bound on `N::TransactionRequest`
* fix: comment
* fix: comment
* fix(anvil): return error instead of empty vec for out-of-range log queries (#13251)
* fix(config): respect user-configured etherscan URL over chain defaults (#13239)
fix(config): Respect user-configured etherscan URL over chain defaults (#13238)
* fix(config): respect user-configured etherscan URL over chain defaults
* test(config): add tests for custom etherscan URL handling
Co-authored-by: Yuya Maruyama <69783679+YuyaMaruyama21D4E@users.noreply.github.com>
* fix(primitives): track both 4844/7594 sidecars presence in `FoundryTransactionRequest::build_typed_tx` (#13218)
* fix(primitives): track both 4844/7594 sidecars presence in `FoundryTransactionRequest::build_typed_tx`
* fix: after `TransactionBuilder4844` impl
* feat(common): introduce generic `ProviderBuilder::from_config` method (#13268)
- keep the existing helpers that erase generic to avoid breaking change
* fix(cast): remove redundant chain() call in explorer_client (#13272)
Co-authored-by: tefyosL-sol <gasgoblinn@gmail.com>
* fix(verify): respect user-configured etherscan URL over chain defaults (#13275)
Co-authored-by: tefyosL-sol <gasgoblinn@gmail.com>
* Update flake.lock (#13279)
flake.lock: Update
Flake lock file updates:
• Updated input 'fenix':
'github:nix-community/fenix/93523fa' (2026-01-24)
→ 'github:nix-community/fenix/b2344f3' (2026-01-31)
• Updated input 'fenix/rust-analyzer-src':
'github:rust-lang/rust-analyzer/39018ac' (2026-01-23)
→ 'github:rust-lang/rust-analyzer/eb05888' (2026-01-30)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/ab9fbbc' (2026-01-24)
→ 'github:NixOS/nixpkgs/6308c3b' (2026-01-30)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix(invariant): remove unused cloned calldata (#12893)
* fix(invariant): prune calldata to bound memory usage in long runs
* style: fix formatting in invariant executor
* chore: remove vyper files from testdata to fix CI
* chore: trigger ci update
* fix(invariant): remove unused FuzzCase.calldata field to prevent OOM
The calldata field in FuzzCase was stored but never read after construction.
Removing it entirely eliminates memory accumulation during long invariant runs.
Changes:
- Remove FuzzCase.calldata field (unused after construction)
- Remove prune_calldata() methods (no longer needed)
- Restore vyper test files that were incorrectly deleted
Fixes #12397
Amp-Thread-ID: https://ampcode.com/threads/T-019c17c9-d969-7370-bf0d-495e473e8e30
Co-authored-by: Amp <amp@ampcode.com>
Amp-Thread-ID: https://ampcode.com/threads/T-019c17c9-d969-7370-bf0d-495e473e8e30
Co-authored-by: Amp <amp@ampcode.com>
---------
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
* feat(debugger): display actual gas usage alongside refund counter (#13271)
* feat(debugger): display actual gas usage alongside refund counter
* fix(forge-test): fix flamegraph gas inaccuracy issues
* reverse `--decode-internal` not default with `--flamechart`
* make gas unsigned as `inferno` doesn't support anyway
* replace revm-inspectors patch
* fix clippy
* update tests
* update tests
* fmt
* fix(config): handle decimal string in U256 deserialization (#13284)
* fix: adjust numerical cells in gas report to be right aligned (#12883)
* Adjust Cells to be Right Aligned in Gas Report
* fix test and fmt
---------
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* chore(deps): weekly `cargo update` (#13280)
Updating git repository `https://github.com/rust-cli/rexpect`
Updating git repository `https://github.com/paradigmxyz/solar`
Skipping git submodule `https://github.com/argotorg/solidity.git` due to update strategy in .gitmodules
Updating git repository `https://github.com/tempoxyz/tempo`
Updating git repository `https://github.com/paradigmxyz/reth`
Locking 35 packages to latest compatible versions
Updating alloy-dyn-abi v1.5.2 -> v1.5.4
Unchanged alloy-evm v0.26.3 (available: v0.27.0)
Updating alloy-json-abi v1.5.2 -> v1.5.4
Unchanged alloy-op-evm v0.26.3 (available: v0.27.0)
Updating alloy-primitives v1.5.2 -> v1.5.4
Updating alloy-sol-macro v1.5.2 -> v1.5.4
Updating alloy-sol-macro-expander v1.5.2 -> v1.5.4
Updating alloy-sol-macro-input v1.5.2 -> v1.5.4
Updating alloy-sol-type-parser v1.5.2 -> v1.5.4
Updating alloy-sol-types v1.5.2 -> v1.5.4
Updating annotate-snippets v0.12.10 -> v0.12.11
Updating aws-smithy-async v1.2.7 -> v1.2.10
Updating aws-smithy-http-client v1.1.5 -> v1.1.8
Updating aws-smithy-observability v0.2.0 -> v0.2.3
Updating aws-smithy-query v0.60.9 -> v0.60.12
Updating aws-smithy-runtime-api v1.10.0 -> v1.11.2
Updating aws-smithy-types v1.3.6 -> v1.4.2
Updating bytemuck v1.24.0 -> v1.25.0
Updating cc v1.2.54 -> v1.2.55
Updating clap v4.5.54 -> v4.5.56
Updating clap_builder v4.5.54 -> v4.5.56
Updating clap_derive v4.5.49 -> v4.5.55
Updating cliclack v0.3.7 -> v0.3.8
Updating find-msvc-tools v0.1.8 -> v0.1.9
Unchanged generic-array v0.14.7 (available: v0.14.9)
Updating iana-time-zone v0.1.64 -> v0.1.65
Unchanged icu_collections v2.0.0 (available: v2.1.1)
Unchanged icu_normalizer v2.0.1 (available: v2.1.1)
Unchanged icu_normalizer_data v2.0.0 (available: v2.1.1)
Unchanged icu_properties v2.0.2 (available: v2.1.2)
Unchanged icu_properties_data v2.0.1 (available: v2.1.2)
Unchanged idna_adapter v1.1.0 (available: v1.2.1)
Updating keccak-asm v0.1.4 -> v0.1.5
Unchanged matchit v0.8.4 (available: v0.8.6)
Updating notify-types v2.0.0 -> v2.1.0
Updating portable-atomic v1.13.0 -> v1.13.1
Updating portable-atomic-util v0.2.4 -> v0.2.5
Unchanged rand v0.8.5 (available: v0.9.2)
Unchanged reqwest v0.12.28 (available: v0.13.1)
Updating revm-inspectors v0.34.0 -> v0.34.2
Updating sha3-asm v0.1.4 -> v0.1.5
Updating siphasher v1.0.1 -> v1.0.2
Updating slab v0.4.11 -> v0.4.12
Updating syn-solidity v1.5.2 -> v1.5.4
Removing tiny-keccak v2.0.2
Updating zerocopy v0.8.33 -> v0.8.37
Updating zerocopy-derive v0.8.33 -> v0.8.37
Updating zmij v1.0.16 -> v1.0.18
note: to see how you depend on a package, run `cargo tree --invert <dep>@<ver>`
Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
* chore: update RPC URLs from ithaca.xyz to reth.rs (#13261)
* chore: update RPC URLs from ithaca.xyz to reth.rs
Co-authored-by: Tim Beiko <tim@ethereum.org>
Amp-Thread-ID: https://ampcode.com/threads/T-019c0a51-3f0a-76eb-ba4a-bfb6a697d9ba
Co-authored-by: Amp <amp@ampcode.com>
* fix
* fmt
* Update rpc.rs
* Update rpc.rs
* test: update test
---------
Co-authored-by: Tim Beiko <tim@ethereum.org>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* ci(bench): use depot runner for benchmarks (#13288)
* feat(cli): cli markdown docs (#13291)
* feat: add foundry-cli-markdown crate
Add a new crate for generating Markdown documentation from clap CLIs.
This is a fork of clap-markdown with the following enhancements:
- Support for grouped options by help heading (PR #48)
- Show environment variable names for arguments (PR #50)
- Add version information to generated Markdown (PR #52)
* feat(cli): add hidden --markdown-help flag
Add a hidden --markdown-help flag to forge, cast, anvil, and chisel
that prints CLI reference documentation as Markdown and exits.
This uses the new foundry-cli-markdown crate to generate the output.
* chore(deps): bump docker/login-action from 3.6.0 to 3.7.0 (#13298)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/5e57cd118135c172c3672efd75eb46360885c0ef...c94ce9fb468520275223c153574b00df6fe4bcc9)
---
updated-dependencies:
- dependency-name: docker/login-action
dependency-version: 3.7.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump taiki-e/install-action from 2.67.13 to 2.67.18 (#13297)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.67.13 to 2.67.18.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/710817a1645ef40daad5bcde7431ceccf6cc3528...650c5ca14212efbbf3e580844b04bdccf68dac31)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.67.18
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump DeterminateSystems/update-flake-lock from 727cc5b0b19bc265bd5ef28fc66bccb284473b5d to 5adeaaaf36f64df54f62adb34aa5fbfdb0109d34 (#13299)
chore(deps): bump DeterminateSystems/update-flake-lock
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock) from 727cc5b0b19bc265bd5ef28fc66bccb284473b5d to 5adeaaaf36f64df54f62adb34aa5fbfdb0109d34.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases)
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/727cc5b0b19bc265bd5ef28fc66bccb284473b5d...5adeaaaf36f64df54f62adb34aa5fbfdb0109d34)
---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
dependency-version: 5adeaaaf36f64df54f62adb34aa5fbfdb0109d34
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump mikepenz/release-changelog-builder-action from 6.0.1 to 6.1.0 (#13300)
chore(deps): bump mikepenz/release-changelog-builder-action
Bumps [mikepenz/release-changelog-builder-action](https://github.com/mikepenz/release-changelog-builder-action) from 6.0.1 to 6.1.0.
- [Release notes](https://github.com/mikepenz/release-changelog-builder-action/releases)
- [Commits](https://github.com/mikepenz/release-changelog-builder-action/compare/439f79b5b5428107c7688c1d2b0e8bacc9b8792c...6faf020194b7c8853f9e55c4fd92e40b02122a04)
---
updated-dependencies:
- dependency-name: mikepenz/release-changelog-builder-action
dependency-version: 6.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore: fix typos CI (#13303)
- Add consts to typos ignore list (valid Rust std::env::consts)
- Fix LintCotext -> LintContext typos in linter docs
* chore(deps): bump crate-ci/typos from 1.42.2 to 1.43.0 (#13296)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.42.2 to 1.43.0.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/a1d64977b4aa1709d6328d518aa753f4899352d8...93cbdb2d23269548cf0db0f74d0bc6a09a3f0d5c)
---
updated-dependencies:
- dependency-name: crate-ci/typos
dependency-version: 1.43.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* sec: bump to `bytes` `^1.11.1` for `RUSTSEC-2026-0007` (#13306)
bump to 1.11.1 for patch: https://rustsec.org/advisories/RUSTSEC-2026-0007
* chore(anvil,cast): remove unnecessary `populate_blob_hashes()` (#13308)
Both `set_blob_sidecar`/`set_blob_sidecar_7594` implement a call to `populate_blob_hashes()`
* feat(forge): generate random fuzz seed if none provided (#13309)
* feat(forge): generate random fuzz seed if none provided
Generate a random seed for fuzz/invariant tests when no seed is
explicitly configured. This ensures reproducibility by always having
a seed available that can be passed via --fuzz-seed to reproduce
test runs.
* feat(forge): print fuzz seed on fuzz failure (#13310)
* feat(forge): print fuzz seed on test failure
When a fuzz or invariant test fails, print the seed used so users
can reproduce the failure with --fuzz-seed.
* test: update snapshots for fuzz seed output
Add [SEED] redaction pattern to match 'Fuzz seed: 0x...' output.
Update all test snapshots that have fuzz/invariant failures to include
the new seed line.
* fix: use [SEED] placeholder in issue_3055 test snapshot
Amp-Thread-ID: https://ampcode.com/threads/T-019c26cb-9d21-74f9-9e49-7ea59885e827
Co-authored-by: Amp <amp@ampcode.com>
---------
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
---------
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
* feat(anvil): cache block timestamp in mined receipts (#13311)
* fix: use shared `display_chain` helper in CLI error handler (#13314)
* Update handler.rs
* Update handler.rs
* Add --enable-tx-gas-limit CLI flag for EIP-7825 support (#13307)
add --enable-tx-gas-limit
* fix(anvil): use consistent chain_id fallback in fork setup (#13276)
Co-authored-by: tefyosL-sol <gasgoblinn@gmail.com>
* fix(test-utils): skip build artifacts when copying to temp workspace (#13266)
* feat(lint): add common uppercase abbreviations to mixedCase exceptions (#13305)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* fix(fmt): correct indentation for closing brace in empty contracts with comments (#13319)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* feat(anvil): add `trace_replayBlockTransactions` endpoint for block txs tracing (#13098)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* fix(eip712): write diagnostics to stderr instead of stdout (#13293)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* foundryup: tempo now distributes all binaries (#13337)
Amp-Thread-ID: https://ampcode.com/threads/T-019c2ea2-963a-744a-8b1d-57709bc295be
Co-authored-by: Amp <amp@ampcode.com>
* fix(config): handle vyper section with skip_serializing_if fields (#13318)
* fix(config): handle vyper section with skip_serializing_if fields
The vyper config section uses skip_serializing_if = Option::is_none on all
fields, causing the default serialization to produce an empty dict. This led to
all vyper keys being flagged as unknown.
Add explicit VYPER_KEYS constant and special-case the vyper section in
collect_standalone_section_warnings to use these known keys instead of
deriving them from the (empty) default serialization.
Fixes #13316
* test(config): add regression tests for vyper config warnings
Tests for #13316:
- no_false_warnings_for_vyper_config_keys: valid vyper keys in standalone section
- no_false_warnings_for_nested_vyper_config_keys: valid vyper keys in profile
- warns_on_unknown_vyper_keys: unknown vyper keys should still warn
Amp-Thread-ID: https://ampcode.com/threads/T-019c28b9-9c8c-76bf-96a5-ff5a504c0507
Co-authored-by: Amp <amp@ampcode.com>
* fix build issues
* fix(config): handle nested vyper section with skip_serializing_if fields
The VyperConfig struct uses skip_serializing_if on all Option fields,
causing the default serialization to produce an empty dict. This caused
false warnings for valid vyper keys like optimize, path, and
experimental_codegen when used in profile nested sections like
[profile.default.vyper].
Uses the existing VYPER_KEYS constant for nested vyper sections,
matching how standalone [vyper] sections are already handled.
Fixes #13316
Co-authored-by: Amp <amp@ampcode.com>
Amp-Thread-ID: https://ampcode.com/threads/T-019c297e-a282-7188-8f79-5080d3e451a9
---------
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: zerosnacks <zerosnacks@protonmail.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* fix: broken config test, currently blocking CI (#13340)
fix broken config
* skip checksum hash in create2 mining when case-insensitive (#13331)
* kip checksum hash in create2 mining
* fix the clippy
* fix: avoid setting FOUNDRY_PROFILE: ci in template workflows, profile does not exist (#13339)
avoid encoding FOUNDRY_PROFILE: ci, profile does not exist
* perf(evm): wrap Executor.backend in Arc for copy-on-write cloning (#13327)
* perf(evm): wrap Executor.backend in Arc for copy-on-write cloning
During parallel fuzzing, each worker clones the Executor. Previously this
deep-cloned the entire Backend (CacheDB, JournaledState, state snapshots),
which could be 10-50MB per clone with 16 workers = 160-800MB wasted memory.
This change wraps Backend in Arc<Backend> and uses Arc::make_mut() for
copy-on-write semantics. When workers only read state, they share the same
backend. When a worker mutates, it gets its own copy.
Expected impact:
- ~80% memory reduction for parallel fuzz runs
- Faster executor clone (pointer copy instead of deep clone)
- No behavioral change: mutations still get isolated copies
Amp-Thread-ID: https://ampcode.com/threads/T-019c2af1-f00b-723a-a3c3-25cbd6f3e92b
Co-authored-by: Amp <amp@ampcode.com>
* test: update config test expectations for new mixed_case_exceptions
Fix test expectations after 1bd687f0d added new values (ID, URL, API,
JSON, XML, HTML, HTTP, HTTPS) to lint.mixed_case_exceptions defaults.
Amp-Thread-ID: https://ampcode.com/threads/T-019c2af1-f00b-723a-a3c3-25cbd6f3e92b
Co-authored-by: Amp <amp@ampcode.com>
* Update config.rs
* Update config.rs
* fix: restore "URI" in config test JSON expectations
Amp-Thread-ID: https://ampcode.com/threads/T-019c2f68-f9df-76bc-ba4c-94fbe1789c9c
Co-authored-by: Amp <amp@ampcode.com>
---------
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
Co-authored-by: zerosnacks <zerosnacks@protonmail.com>
* chore(ci): update time crate (#13348)
* test(cast): ignore flaky_run_celo_with_precompiles (Celo RPC no longer supports debug_traceTransaction) (#13347)
* fix(test-utils): create destination directory in copy_dir_filtered (#13350)
* chore(wallets): Remove `NetworkWallet<FoundryNetwork>` impl for `WalletSigner` (#13343)
- superseeded by `EthereumWallet`'s one, which is integrated in `TransactionBuilder` flow
* fix(anvil): return error when querying future block number in with_database_at (#13267)
* return error when querying future block number
* fix test
---------
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* chore: remove stale `tiny-keccak` references (#13358)
* chore: remove stale tiny-keccak profile override
* chore: remove stale tiny-keccak deny exception
* chore(script): typo (#13353)
* perf(cheatcodes): loop invariant code motion by hand (#13357)
* chore(anvil): remove unnecessary clone operations (#13330)
* perf(linking): replace double hash mpa lookup contains_key + [] with single get (#13361)
* fix(verify): correct Sourcify API URL construction for custom chains (#13360)
Update verify.rs
* chore(common): remove dead `with_spinner_reporter` function (#13366)
* resolve absolute and relative paths on Windows (#13364)
* fix: unittest failed (#13371)
* perf(anvil): reuse storage root from prove_storage instead of recompu… (#13363)
perf(anvil): reuse storage root from prove_storage instead of recomputing
* chore(deps): weekly `cargo update` (#13384)
Updating git repository `https://github.com/rust-cli/rexpect`
Updating git repository `https://github.com/paradigmxyz/solar`
Skipping git submodule `https://github.com/argotorg/solidity.git` due to update strategy in .gitmodules
Updating git repository `https://github.com/tempoxyz/tempo`
Updating git repository `https://github.com/paradigmxyz/reth`
Locking 94 packages to latest compatible versions
Updating alloy-consensus v1.5.2 -> v1.6.1
Updating alloy-consensus-any v1.5.2 -> v1.6.1
Updating alloy-contract v1.5.2 -> v1.6.1
Updating alloy-eip5792 v1.5.2 -> v1.6.1
Updating alloy-eips v1.5.2 -> v1.6.1
Updating alloy-ens v1.5.2 -> v1.6.1
Updating alloy-evm v0.26.3 -> v0.26.4 (available: v0.27.2)
Updating alloy-genesis v1.5.2 -> v1.6.1
Updating alloy-json-rpc v1.5.2 -> v1.6.1
Updating alloy-network v1.5.2 -> v1.6.1
Updating alloy-network-primitives v1.5.2 -> v1.6.1
Updating alloy-op-evm v0.26.3 -> v0.26.4 (available: v0.27.2)
Updating alloy-provider v1.5.2 -> v1.6.1
Updating alloy-pubsub v1.5.2 -> v1.6.1
Updating alloy-rlp v0.3.12 -> v0.3.13
Updating alloy-rlp-derive v0.3.12 -> v0.3.13
Updating alloy-rpc-client v1.5.2 -> v1.6.1
Updating alloy-rpc-types v1.5.2 -> v1.6.1
Updating alloy-rpc-types-anvil v1.5.2 -> v1.6.1
Updating alloy-rpc-types-any v1.5.2 -> v1.6.1
Updating alloy-rpc-types-beacon v1.5.2 -> v1.6.1
Updating alloy-rpc-types-debug v1.5.2 -> v1.6.1
Updating alloy-rpc-types-engine v1.5.2 -> v1.6.1
Updating alloy-rpc-types-eth v1.5.2 -> v1.6.1
Updating alloy-rpc-types-trace v1.5.2 -> v1.6.1
Updating alloy-rpc-types-txpool v1.5.2 -> v1.6.1
Updating alloy-serde v1.5.2 -> v1.6.1
Updating alloy-signer v1.5.2 -> v1.6.1
Updating alloy-signer-aws v1.5.2 -> v1.6.1
Updating alloy-signer-gcp v1.5.2 -> v1.6.1
Updating alloy-signer-ledger v1.5.2 -> v1.6.1
Updating alloy-signer-local v1.5.2 -> v1.6.1
Updating alloy-signer-trezor v1.5.2 -> v1.6.1
Updating alloy-signer-turnkey v1.5.2 -> v1.6.1
Updating alloy-transport v1.5.2 -> v1.6.1
Updating alloy-transport-http v1.5.2 -> v1.6.1
Updating alloy-transport-ipc v1.5.2 -> v1.6.1
Updating alloy-transport-ws v1.5.2 -> v1.6.1
Updating alloy-trie v0.9.3 -> v0.9.4
Updating alloy-tx-macros v1.5.2 -> v1.6.1
Updating anyhow v1.0.100 -> v1.0.101
Updating async-compression v0.4.37 -> v0.4.39
Updating aws-config v1.8.12 -> v1.8.13
Updating aws-runtime v1.5.18 -> v1.6.0
Updating aws-sdk-kms v1.98.0 -> v1.99.0
Updating aws-sdk-sso v1.92.0 -> v1.93.0
Updating aws-sdk-ssooidc v1.94.0 -> v1.95.0
Updating aws-sdk-sts v1.96.0 -> v1.97.0
Updating aws-sigv4 v1.3.7 -> v1.3.8
Updating aws-smithy-async v1.2.10 -> v1.2.11
Updating aws-smithy-http v0.62.6 -> v0.63.3
Updating aws-smithy-http-client v1.1.8 -> v1.1.9
Updating aws-smithy-json v0.61.9 -> v0.62.3
Updating aws-smithy-observability v0.2.3 -> v0.2.4
Updating aws-smithy-query v0.60.12 -> v0.60.13
Updating aws-smithy-runtime v1.9.8 -> v1.10.0
Updating aws-smithy-runtime-api v1.11.2 -> v1.11.3
Updating aws-smithy-types v1.4.2 -> v1.4.3
Updating clap v4.5.56 -> v4.5.57
Updating clap_builder v4.5.56 -> v4.5.57
Updating flate2 v1.1.8 -> v1.1.9
Unchanged generic-array v0.14.7 (available: v0.14.9)
Updating hyper-util v0.1.19 -> v0.1.20
Unchanged icu_collections v2.0.0 (available: v2.1.1)
Unchanged icu_normalizer v2.0.1 (available: v2.1.1)
Unchanged icu_normalizer_data v2.0.0 (available: v2.1.1)
Unchanged icu_properties v2.0.2 (available: v2.1.2)
Unchanged icu_properties_data v2.0.1 (available: v2.1.2)
Unchanged idna_adapter v1.1.0 (available: v1.2.1)
Updating interprocess v2.2.3 -> v2.3.1
Updating jiff v0.2.18 -> v0.2.19
Updating jiff-static v0.2.18 -> v0.2.19
Unchanged matchit v0.8.4 (available: v0.8.6)
Updating memchr v2.7.6 -> v2.8.0
Updating nybbles v0.4.7 -> v0.4.8
Updating pest v2.8.5 -> v2.8.6
Updating pest_derive v2.8.5 -> v2.8.6
Updating pest_generator v2.8.5 -> v2.8.6
Updating pest_meta v2.8.5 -> v2.8.6
Updating proptest v1.9.0 -> v1.10.0
Unchanged rand v0.8.5 (available: v0.9.2)
Updating rapidhash v4.2.1 -> v4.2.2
Updating regex v1.12.2 -> v1.12.3
Updating regex-automata v0.4.13 -> v0.4.14
Updating regex-lite v0.1.8 -> v0.1.9
Updating regex-syntax v0.8.8 -> v0.8.9
Unchanged reqwest v0.12.28 (available: v0.13.2)
Updating schemars v1.2.0 -> v1.2.1
Updating schemars_derive v1.2.0 -> v1.2.1
Updating sval v2.16.0 -> v2.17.0
Updating sval_buffer v2.16.0 -> v2.17.0
Updating sval_dynamic v2.16.0 -> v2.17.0
Updating sval_fmt v2.16.0 -> v2.17.0
Updating sval_json v2.16.0 -> v2.17.0
Updating sval_nested v2.16.0 -> v2.17.0
Updating sval_ref v2.16.0 -> v2.17.0
Updating sval_serde v2.16.0 -> v2.17.0
Updating system-configuration v0.6.1 -> v0.7.0
Updating webbrowser v1.0.6 -> v1.1.0
Updating webpki-roots v1.0.5 -> v1.0.6
Updating zerocopy v0.8.37 -> v0.8.39
Updating zerocopy-derive v0.8.37 -> v0.8.39
Updating zlib-rs v0.5.5 -> v0.6.0
Updating zmij v1.0.18 -> v1.0.19
note: to see how you depend on a package, run `cargo tree --invert <dep>@<ver>`
Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com>
* Update flake.lock (#13383)
flake.lock: Update
Flake lock file updates:
• Updated input 'fenix':
'github:nix-community/fenix/b2344f3' (2026-01-31)
→ 'github:nix-community/fenix/e1b28f6' (2026-02-07)
• Updated input 'fenix/rust-analyzer-src':
'github:rust-lang/rust-analyzer/eb05888' (2026-01-30)
→ 'github:rust-lang/rust-analyzer/d2a00da' (2026-02-05)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/6308c3b' (2026-01-30)
→ 'github:NixOS/nixpkgs/ae67888' (2026-02-06)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* perf(verify): reuse transaction from earlier RPC call instead of fetching twice (#13391)
* perf(verify): reuse transaction from earlier RPC call instead of fetching twice
* fix ci
* fix(cast): --json support for erc20 cmds (#12727)
* refactor(anvil): using is_ok since it's more robust (#13377)
* fix: may div by zero (#13369)
* refactor(primitives): turn `FoundryTransactionRequest` into an enum (#13278)
- Combines Eth's, Op's, and Tempo's transaction requests to inherit Op/Tempo tx building
* perf: avoid checksum (#13374)
* docs: slim readme (#13393)
* fix: correct trace message in dynamic linking preprocessor (#13394)
* perf(invariant): avoid cloning state changeset in fuzz runs (#13398)
Co-authored-by: grandizzy <38490174+grandizzy@users.noreply.github.com>
* chore(deps): bump depot/build-push-action from 1.16.2 to 1.17.0 (#13405)
Bumps [depot/build-push-action](https://github.com/depot/build-push-action) from 1.16.2 to 1.17.0.
- [Release notes](https://github.com/depot/build-push-action/releases)
- [Commits](https://github.com/depot/build-push-action/compare/9785b135c3c76c33db102e45be96a25ab55cd507...5f3b3c2e5a00f0093de47f657aeaefcedff27d18)
---
updated-dependencies:
- dependency-name: depot/build-push-action
dependency-version: 1.17.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump taiki-e/install-action from 2.67.18 to 2.67.27 (#13406)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.67.18 to 2.67.27.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/650c5ca14212efbbf3e580844b04bdccf68dac31...1e67dedb5e3c590e1c9d9272ace46ef689da250d)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.67.27
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump crate-ci/typos from 1.43.0 to 1.43.4 (#13407)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.43.0 to 1.43.4.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/93cbdb2d23269548cf0db0f74d0bc6a09a3f0d5c...78bc6fb2c0d734235d57a2d6b9de923cc325ebdd)
---
updated-dependencies:
- dependency-name: crate-ci/typos
dependency-version: 1.43.4
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* ci: use dedicated template for isolate flaky test failures (#13409)
* chore(deps): bump depot/setup-action from 1.6.0 to 1.7.1 (#13408)
* fix(primitives): `FoundryTransactionRequest` conversion w/ tempo variant (#13401)
- Fix `TempoTransactionRequest` variant, as inner req was always set to default.
- Added unit tests to assess `FoundryTransactionRequest` proper variant routing
* return error instead of empty array when filter not found (#13415)
* chore(config): remove unused enum accessor methods (#13414)
* fix(cast): clean up temp dir in `cast storage` when etherscan cache is unavailable (#13418)
* perf(primitives): avoid cloning receipts (#13396)
* fix: constructor params and args check (#13375)
* fix: correct path format in get_paths doc comment (#13388)
* ci: replace merge_group with push on master (#13419)
* ci(release): pin action-gh-release to v2.4.2 (#13420)
v2.5.0 introduced a draft→finalize flow that races in matrix jobs,
causing 'Too many retries' failures in the Create release step.
See: https://github.com/softprops/action-gh-release/issues/704
Amp-Thread-ID: https://ampcode.com/threads/T-019c4c6d-c55a-752a-8b27-25413f485bed
Co-authored-by: Amp <amp@ampcode.com>
* fix(anvil): handle disk cache write failures in state eviction (#13332)
* feat(forge,chisel): realtime `console.log` (#13321)
* fix(cast): remove duplicate receipt handling in Tempo transactions (#13378)
* perf(traces): deduplicate addresses before external fetching (#13320)
* fix: prevent panic on etherscan client creation failure in test command (#13395)
* perf(config): skip redundant remapping detection in _with_root (#13389)
* fix(common): remove trailing space in `state_root` match pattern (#13426)
* chore(config): `curl` mode as config key (#13260)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* fix(config): normalize deny_warnings from env vars (#13434)
* fix: correct dead condition in command error formatting (#13427)
* add missing JSON output support for `erc20 decimals` (#13438)
* fix(anvil): variable shadowing bug in ReadyTransactions::remove_with_markers (#13436)
Update transactions.rs
* Update flake.lock (#13448)
* chore(deps): weekly `cargo update` (#13449)
* feat(evm): `ForkDatabase`/`MultiFork` generic over `Network` (#13459)
* feat(evm): `ForkDatabase`/`MultiFork` generic over `Network`
bump `foundry-fork-db`
* fix: typo
* fix(cheatcodes): fix vm.expectRevert for direct precompile calls (#13460)
Precompile calls don't create an interpreter frame, so
`initialize_interp` never fires and `max_depth` never gets bumped
beyond the cheatcode call depth. This causes the depth check in
`handle_expect_revert` to fail with "call didn't revert at a lower
depth than cheatcode call depth".
Track `max_depth` in the `call` hook as well, accounting for the
callee depth (`curr_depth + 1`).
Amp-Thread-ID: https://ampcode.com/threads/T-019c63a2-2c36-7334-ab55-2931a174b59c
Co-authored-by: Amp <amp@ampcode.com>
* fix(lint): remove unreachable macro arm in declare_forge_lint (#13452)
* chore(flake): use nightly rustfmt (#13441)
* chore(flake): use nightly rustfmt
* chore(flake): update flake
* feat: add `executeTransaction` cheatcode (#13437)
feat: add executeTransaction cheatcode
Port the executeTransaction cheatcode from
tempoxyz/tempo-foundry. Executes RLP-encoded
signed transactions in an isolated EVM context
with full semantics (like --isolate mode).
OP deposit and Tempo AA transactions return
errors for now (marked with TODOs).
* fix(forge): don't reset snapshot diff result on missing file (#13442)
* fix(traces): check HTTP status before JSON parsing in Sourcify fetcher (#13446)
* Update external.rs
* chore: fmt
* test: rm useless tests
---------
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
* feat(cheatcodes): add Ed25519 crypto cheatcodes (#13450)
* feat(cheatcodes): add Ed25519 crypto cheatcodes
Add four new cheatcodes for Ed25519 cryptography:
- createEd25519Key(bytes32 salt) - deterministic key generation
- publicKeyEd25519(bytes32 privateKey) - derive public key
- signEd25519(namespace, message, privateKey) - sign with domain separation
- verifyEd25519(signature, namespace, message, publicKey) - verify signatures
Uses ed25519-consensus crate. Includes comprehensive unit tests for
determinism, namespace separation, edge cases, and invalid inputs.
Co-authored-by: Amp <amp@ampcode.com>
Amp-Thread-ID: https://ampcode.com/threads/T-019c5f04-a6ed-7015-9b4d-4464a35bc26c
* chore: solidity test
* test: fix assertions
---------
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
* feat(lint): add missing visit methods to EarlyLintVisitor (#13454)
Update early.rs
* notify subscribers for txs promoted after block mining (#13464)
* notify subscribers for txs promoted after block mining
* refactor: extract notify_ready helper to deduplicate notification logic
Amp-Thread-ID: https://ampcode.com/threads/T-019c6840-d225-723a-bf92-46e4e29c7ad1
Co-authored-by: Amp <amp@ampcode.com>
---------
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
* chore(deps): bump taiki-e/install-action from 2.67.27 to 2.68.0 (#13465)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.67.27 to 2.68.0.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/1e67dedb5e3c590e1c9d9272ace46ef689da250d...f8d25fb8a2df08dcd3cead89780d572767b8655f)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.68.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump taiki-e/cache-cargo-install-action from 3.0.1 to 3.0.2 (#13466)
Bumps [taiki-e/cache-cargo-install-action](https://github.com/taiki-e/cache-cargo-install-action) from 3.0.1 to 3.0.2.
- [Release notes](https://github.com/taiki-e/cache-cargo-install-action/releases)
- [Changelog](https://github.com/taiki-e/cache-cargo-install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/cache-cargo-install-action/compare/34ce5120836e5f9f1508d8713d7fdea0e8facd6f...2bfc3cedaf2ee5e7fa5d0ae034ccd5fb50cf8e1f)
---
updated-dependencies:
- dependency-name: taiki-e/cache-cargo-install-action
dependency-version: 3.0.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump crate-ci/typos from 1.43.4 to 1.43.5 (#13467)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.43.4 to 1.43.5.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/78bc6fb2c0d734235d57a2d6b9de923cc325ebdd...57b11c6b7e54c402ccd9cda953f1072ec4f78e33)
---
updated-dependencies:
- dependency-name: crate-ci/typos
dependency-version: 1.43.5
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump DeterminateSystems/update-flake-lock from 5adeaaaf36f64df54f62adb34aa5fbfdb0109d34 to a135ea602656a8348c5c34887131dd9f7a28bd8c (#13468)
chore(deps): bump DeterminateSystems/update-flake-lock
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock) from 5adeaaaf36f64df54f62adb34aa5fbfdb0109d34 to a135ea602656a8348c5c34887131dd9f7a28bd8c.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases)
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/5adeaaaf36f64df54f62adb34aa5fbfdb0109d34...a135ea602656a8348c5c34887131dd9f7a28bd8c)
---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
dependency-version: a135ea602656a8348c5c34887131dd9f7a28bd8c
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump softprops/action-gh-release from 2.4.2 to 2.5.0 (#13469)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.4.2 to 2.5.0.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/5be0e66d93ac7ed76da52eca8bb058f665c3a5fe...a06a81a03ee405af7f2048a818ed3f03bbf83c7b)
---
updated-dependencies:
- dependency-name: softprops/action-gh-release
dependency-version: 2.5.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* test: mark clone CLI tests as flaky (#13472)
These tests hit real Etherscan/Sourcify APIs and fail intermittently due to rate limiting and network issues. They will now run in the nightly flaky test workflow with retries instead of blocking every PR.
Amp-Thread-ID: https://ampcode.com/threads/T-019c6840-d225-723a-bf92-46e4e29c7ad1
Co-authored-by: Amp <amp@ampcode.com>
* fix: bind TempDir guard in clone test to prevent premature cleanup (#13471)
Amp-Thread-ID: https://ampcode.com/threads/T-019c6840-d225-723a-bf92-46e4e29c7ad1
Co-authored-by: Amp <amp@ampcode.com>
* prevent balance overflow in anvil_addBalance (#13457)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* chore(tests): bump forge-std version (#13482)
* move `sccache --show-stats` into build RUN to show actual stats (#13483)
* fix(anvil): correct blob_gas_used_ratio calculation in fee history (#13491)
Update fees.rs
* fix(cheatcodes): make vm.executeTransaction work in isolation mode (#13475)
* fix(test): exclude ExecuteTransactionTest from isolation mode
vm.executeTransaction already performs its own isolated execution (fresh
EVM, cloned state, state merging). When isolation mode is enabled, the
inspector's transact_inner intercepts CALLs at depth==1 inside the
cheatcode's inner EVM, causing double-isolation that results in
'transaction reverted: 0x'.
Amp-Thread-ID: https://ampcode.com/threads/T-019c6ad3-d3f0-70d3-8d78-38ccd8444e9e
Co-authored-by: Amp <amp@ampcode.com>
* fix(cheatcodes): make vm.executeTransaction work in isolation mode
Two bugs prevented vm.executeTransaction from working with --isolate:
1. Double isolation: executeTransaction creates its own inner EVM at
depth=1, but the isolation inspector also intercepts CALLs at depth=1,
causing a nested transact_inner. Fix: add set_in_inner_context() to
CheatcodesExecutor trait and set it before/after the inner EVM run,
matching how transact_inner already handles this.
2. Corrupted cfg env: executeTransaction modified env.cfg (disabled nonce
checks, set initcode size limit) but never restored it. Subsequent
isolated calls then failed nonce validation (NonceTooHigh). Fix:
restore env.cfg from the cached copy alongside env.tx and basefee.
Amp-Thread-ID: https://ampcode.com/threads/T-019c6ad3-d3f0-70d3-8d78-38ccd8444e9e
Co-authored-by: Amp <amp@ampcode.com>
---------
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* test-utils: remove unused `IS_TTY` helper (#13492)
Update util.rs
* chore: update LATEST_SOLC to 0.8.34 (#13489)
Amp-Thread-ID: https://ampcode.com/threads/T-019c7441-de53-7338-86cb-6d84f755016a
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* feat(anvil): add --max-transactions CLI flag (#13495)
* remove unimplemented anvil_enableTraces endpoint (#13499)
* feat(fmt): pretty printing for generic block/transaction responses (#13497)
feat(fmt): pretty printing for generic block/transaction reponses
* Refactor `locked_read_to_string` to reuse `locked_read (#13494)
Update fs.rs
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* refactor(script-sequence): extract duplicated filter logic (#13500)
* chore(broadcast): cleanup avg gas price calculation (#13509)
* chore(deps): weekly `cargo update` (#13513)
Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* feat(common): generic `TransactionReceiptWithRevertReason` + pprinting (#13503)
* refactor: Use `fs::write_pretty_json_file` in `MultiChainSequence::save` (#13510)
* Update flake.lock (#13511)
flake.lock: Update
Flake lock file updates:
• Updated input 'fenix':
'github:nix-community/fenix/d0555da' (2026-02-14)
→ 'github:nix-community/fenix/6d86ae5' (2026-02-21)
• Updated input 'fenix/rust-analyzer-src':
'github:rust-lang/rust-analyzer/bbc84d3' (2026-02-13)
→ 'github:rust-lang/rust-analyzer/46a214b' (2026-02-20)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/2343bbb' (2026-02-11)
→ 'github:NixOS/nixpkgs/d1c15b7' (2026-02-16)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix(sol-macro-gen): correct identifier check in write_mod_name (#13508)
* chore(deps): bump DeterminateSystems/update-flake-lock from a135ea602656a8348c5c34887131dd9f7a28bd8c to 5909792a83875ddb5dd4b18734534a98a74a709c (#13524)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump taiki-e/install-action from 2.68.0 to 2.68.8 (#13523)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump DeterminateSystems/determinate-nix-action from 3.15.2 to 3.16.1 (#13522)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix(anvil): prevent panic in `utc_from_secs` for out-of-range timestamps (#13520)
* ci(release): revert action-gh-release to v2.4.2 (#13527)
* ci: ignore softprops/action-gh-release in dependabot (#13528)
* chore(deps): bump DeterminateSystems/determinate-nix-action from 3.16.1 to 3.16.3 (#13529)
chore(deps): bump DeterminateSystems/determinate-nix-action
Bumps [DeterminateSystems/determinate-nix-action](https://github.com/determinatesystems/determinate-nix-action) from 3.16.1 to 3.16.3.
- [Release notes](https://github.com/determinatesystems/determinate-nix-action/releases)
- [Commits](https://github.com/determinatesystems/determinate-nix-action/compare/681d8e8bfdb5d7af56f113ba2425b1fb00ec9edc...73327eb48f028efaaf5013656ba216ca3cdeca7b)
---
updated-dependencies:
- dependency-name: DeterminateSystems/determinate-nix-action
dependency-version: 3.16.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* feat(primitives): add `FoundryTransactionBuilder` trait (#13512)
Co-authored-by: figtracer <1gusredo@gmail.com>
* fix(wallets): use turnkey_unsupported() instead of hardcoded error (#13535)
* chore(deps): bump taiki-e/install-action from 2.68.8 to 2.68.9 (#13534)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.68.8 to 2.68.9.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/cfdb446e391c69574ebc316dfb7d7849ec12b940...7f491e26f71f4ec2e6902c7c95c73043f209ab79)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.68.9
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix(anvil): preserve original error in update_url (#13531)
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
* fix: swap incorrect doc comments for archive RPC URL functions in rpc. (#13480)
* Allow verifier-url for unknown Etherscan chains (#13079)
Co-authored-by: Mayank Sharma <82099885+codersharma2001@users.noreply.github.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* fix: remove unused `no_storage_caching()` method from `NodeConfig` (#13487)
* fix: remove code duplication in `get_runtime_codes` (#13502)
* forge: avoid repeated selector decoding in find command (#13516)
* fix(cli): Git::is_repo_root always returns false (#13505)
* fix(verify): remove unused functions from `VerificationContext` (#13481)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* add missing doc section keys to config validation (#13447)
* fix(anvil): use EIP-2718 encoding for OP enveloped_tx (#13537)
* fix: correct flag name in error message from --compiler-version to --… (#13539)
* chore(ci): unblock ci, fix clippy lint (#13543)
* add lint-fix
* fix: resolve nightly clippy warnings
- collapsible_match: collapse plain if into match guards, allow for if-let
- iter_kv_map: use .values()/.keys() instead of .iter().flat_map(|(_, v)| v)
- useless_conversion: remove unnecessary .into_iter()
Amp-Thread-ID: https://ampcode.com/threads/T-019c9930-51be-760a-b2c7-9a029f851fee
Co-authored-by: Amp <amp@ampcode.com>
* fix: add missing match arm for Occupied entry in remappings
Amp-Thread-ID: https://ampcode.com/threads/T-019c99a5-39f3-72be-ad16-e7d041662ea9
Co-authored-by: Amp <amp@ampcode.com>
* fix: revert incorrect .values() call on Vec in runner
Amp-Thread-ID: https://ampcode.com/threads/T-019c99a5-39f3-72be-ad16-e7d041662ea9
Co-authored-by: Amp <amp@ampcode.com>
* fix: resolve irrefutable let pattern warning in MultiForkHandler
Amp-Thread-ID: https://ampcode.com/threads/T-019c99a5-39f3-72be-ad16-e7d041662ea9
Co-authored-by: Amp <amp@ampcode.com>
---------
Co-authored-by: Derek Cofausper <256792747+decofe@users.noreply.github.com>
Co-authored-by: Amp <amp@ampcode.com>
* refactor(wallets): browser wallet generic `Network` (#13550)
* fix(anvil): use individual tx gas instead of cumulative in fee history (#13552)
* fix(anvil): clear tx pool on anvil_reset (#13544)
* add EIP-3860 initcode size check in txpool validation (#13473)
* fix: clarify Anvil storage caching builder naming (#13546)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
* refactor(evm): remove dead BackendError::Other variant (#13553)
* fix(script): actually skip Vyper contract verification (#13484)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* feat(doc): Adding new 'Constants' section for constants and immutables (#13116)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
* fix(evm): avoid wrong CowBackend initialization in load_allocs and clone_account (#13554)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* chore: use `fs::write_pretty_json_file` in `ScriptSequence::save` (#13562)
* fix(forge): apply --access-list in forge create (#13557)
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* Update flake.lock (#13564)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: onbjerg <onbjerg@users.noreply.github.com>
* chore(deps): weekly `cargo update` (#13565)
Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com>
* fix(cast): correct max_int boundary check for uint255 (#13568)
* fix(fmt): correct total_difficulty attribute name (#13578)
* chore(evm): use `AnyRpcTransaction` in `configure_tx_env`/`commit_transaction` (#13572)
* feat(evm): add `AsEnvMut::set_env` (#13573)
* fix(fmt): don't inline while/for/if blocks with multiple statements (#13566)
* refactor(cheatcodes,evm): use ContextTr read accessors for env fields (#13582)
Co-authored-by: Amp <amp@ampcode.com>
* chore(evm): simplify `CowBackend` init logic by using `Option<SpecId>` (#13584)
* feat(anvil): add EIP-2935 blockhash histo…
* fix: update EtherlinkTestnet -> EtherlinkShadownet for alloy-chains v0.2.31 (foundry-rs#13763) Co-authored-by: Matthias Seitz <19890894+mattsse@users.noreply.github.com> * chore(evm): make `FoundryCfg` generic over `Spec` (foundry-rs#13757) * chore(deps): weekly `cargo update` (foundry-rs#13760) Updating git repository `https://github.com/alloy-rs/alloy` Updating git repository `https://github.com/alloy-rs/evm.git` Updating git repository `https://github.com/foundry-rs/optimism` Updating git submodule `https://github.com/flashbots/op-rbuilder` Updating git submodule `https://github.com/foundry-rs/forge-std` Updating git submodule `https://github.com/runtimeverification/kontrol-cheatcodes` Updating git submodule `https://github.com/ethereum-optimism/lib-keccak` Updating git submodule `https://github.com/dapphub/ds-test` Updating git submodule `https://github.com/vectorized/solady` Updating git submodule `https://github.com/OpenZeppelin/openzeppelin-contracts` Updating git submodule `https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable` Updating git submodule `https://github.com/OpenZeppelin/openzeppelin-contracts` Updating git submodule `https://github.com/a16z/erc4626-tests.git` Updating git submodule `https://github.com/safe-global/safe-contracts` Updating git submodule `https://github.com/vectorized/solady` Updating git submodule `https://github.com/transmissions11/solmate` Updating git submodule `https://github.com/ethereum-optimism/superchain-registry` Updating git submodule `https://github.com/flashbots/rollup-boost` Updating git repository `https://github.com/foundry-rs/foundry-fork-db` Updating git repository `https://github.com/paradigmxyz/revm-inspectors.git` Updating git repository `https://github.com/rust-cli/rexpect` Updating git repository `https://github.com/paradigmxyz/solar` Skipping git submodule `https://github.com/argotorg/solidity.git` due to update strategy in .gitmodules Updating git repository `https://github.com/tempoxyz/tempo` Updating git submodule `https://github.com/foundry-rs/forge-std` Updating git submodule `https://github.com/vectorized/solady` Updating git submodule `https://github.com/tempoxyz/tempo-std` Updating git repository `https://github.com/stevencartavia/reth` Locking 31 packages to latest compatible versions Updating alloy-chains v0.2.30 -> v0.2.31 Updating alloy-trie v0.9.4 -> v0.9.5 Adding anstream v1.0.0 Unchanged anstream v0.6.21 (available: v1.0.0) Updating anstyle v1.0.13 -> v1.0.14 Updating anstyle-lossy v1.1.4 -> v1.1.5 Adding anstyle-parse v1.0.0 Updating bon v3.9.0 -> v3.9.1 Updating bon-macros v3.9.0 -> v3.9.1 Updating c-kzg v2.1.6 -> v2.1.7 Updating cc v1.2.56 -> v1.2.57 Updating clap v4.5.60 -> v4.6.0 Updating clap_builder v4.5.60 -> v4.6.0 Updating clap_complete v4.5.66 -> v4.6.0 Updating clap_complete_nushell v4.5.10 -> v4.6.0 Updating clap_derive v4.5.55 -> v4.6.0 Updating clap_lex v1.0.0 -> v1.1.0 Updating colorchoice v1.0.4 -> v1.0.5 Updating console v0.16.2 -> v0.16.3 Removing darling v0.21.3 Removing darling_core v0.21.3 Removing darling_macro v0.21.3 Updating derive-where v1.6.0 -> v1.6.1 Updating evmole v0.8.2 -> v0.8.4 Unchanged generic-array v0.14.7 (available: v0.14.9) Unchanged icu_collections v2.0.0 (available: v2.1.1) Unchanged icu_normalizer v2.0.1 (available: v2.1.1) Unchanged icu_normalizer_data v2.0.0 (available: v2.1.1) Unchanged icu_properties v2.0.2 (available: v2.1.2) Unchanged icu_properties_data v2.0.1 (available: v2.1.2) Unchanged idna_adapter v1.1.0 (available: v1.2.1) Updating kasuari v0.4.11 -> v0.4.12 Unchanged matchit v0.8.4 (available: v0.8.6) Updating once_cell v1.21.3 -> v1.21.4 Unchanged op-revm v15.0.0 (available: v17.0.0) Updating portable-atomic-util v0.2.5 -> v0.2.6 Unchanged quick-junit v0.5.2 (available: v0.6.0) Unchanged rand v0.8.5 (available: v0.10.0) Unchanged rand v0.9.2 (available: v0.10.0) Unchanged revm v34.0.0 (available: v36.0.0) Updating schannel v0.1.28 -> v0.1.29 Updating serde_with v3.17.0 -> v3.18.0 Updating serde_with_macros v3.17.0 -> v3.18.0 Unchanged snapbox v0.6.24 (available: v1.1.0) Unchanged soldeer-commands v0.10.0 (available: v0.10.1) Unchanged soldeer-core v0.10.0 (available: v0.10.1) Unchanged strum v0.27.2 (available: v0.28.0) Updating tempfile v3.26.0 -> v3.27.0 Updating tinyvec v1.10.0 -> v1.11.0 Unchanged toml v0.9.12+spec-1.1.0 (available: v1.0.6+spec-1.1.0) Unchanged toml_edit v0.24.1+spec-1.1.0 (available: v0.25.4+spec-1.1.0) Updating tracing-subscriber v0.3.22 -> v0.3.23 Updating zerocopy v0.8.41 -> v0.8.42 Updating zerocopy-derive v0.8.41 -> v0.8.42 note: to see how you depend on a package, run `cargo tree --invert <dep>@<ver>` Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com> Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de> * feat(cheatcodes): bubble-up `Network` generic to `Wallets` (foundry-rs#13768) * feat(script): generic `TxStatus` receipt type (foundry-rs#13770) feat(script): generic `TxStatus` * chore(script): idiomatic `BroadcastReader::into_tx_receipts` (foundry-rs#13771) * refactor(evm): simplify `Backend::initialize` and `CowBackend::backend_mut` (foundry-rs#13755) `initialize` now takes `(SpecId, Address, TxKind)` instead of `&Env`, since those are the only fields it reads. This removes the need for `backend_mut` to clone `EvmEnv` — it only needs `&TxEnv` now, because the `SpecId` already comes from `self.spec_id`. Moves towards aligning with alloy-evm's BlockExecutor ownership model where `EvmEnv` is block-scoped and `TxEnv` is tx-scoped. * feat(cheatcodes): make `Cheatcodes` context-generic (foundry-rs#13767) * feat(cheatcodes): make `Cheatcodes` context-generic * fix: merge conflict --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * feat(cast): add `--network` flag to `cast tx` for network-specific raw encoding (foundry-rs#13745) * feat(cast): add --network flag to `cast tx` for multi-network raw encoding Replace the `FoundryNetwork`-based `transaction_raw` workaround with proper network selection via a new `--network` / `-n` CLI flag. This moves raw tx encoding back into `Cast::transaction` dispatching to the correct provider (Ethereum, Optimism, or Tempo) based on the flag. - Add `NetworkVariant` enum (Ethereum/Optimism/Tempo) in foundry-cli opts - use it w/ `--network` through CastSubcommand::Tx and provider construction - Add test for Tempo raw tx encoding (`tx_raw_tempo`) * fix: network num args * feat(cast): `block --raw` network selection (foundry-rs#13754) * rebase PR 13745 * feat(cast): `block` for multi-network raw encoding Co-authored-by: figtracer <1gusredo@gmail.com> * fix: doctest --------- Co-authored-by: figtracer <1gusredo@gmail.com> Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * refactor(anvil): make mined_receipts generic (foundry-rs#13761) * chore(evm): split `Executor::env` into `evm_env` and `tx_env` fields (foundry-rs#13773) Split the getters/setters accordingly, and update all call sites. * refactor(cheatcodes): `CheatcodesExecutor` generic (foundry-rs#13774) refactor(cheatcodes): make `CheatcodesExecutor<CTX>` use generic env types from `ContextTr` Replace concrete `EvmEnv`/`TxEnv` in `with_fresh_nested_evm` with `EvmEnv<<CTX::Cfg as Cfg>::Spec, CTX::Block>` and `CTX::Tx` to support non-Eth networks. Add `FoundryContextTr` trait as fully generic counterpart to the concrete `FoundryContextExt`. Remove unused `clone_to_cfg_env`/`apply_cfg_env` from `FoundryCfg`. * fix(anvil): flaky `test_trace_filter()` (foundry-rs#13764) fix * chore(cast): granular bounds on `Cast` (foundry-rs#13776) * refactor(evm): `FoundryContextExt` generic types (foundry-rs#13778) * fix(cheatcodes): create file in writeJson/writeToml 3-arg overload (foundry-rs#13777) Closes foundry-rs#13775 Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * refactor(anvil): make EthApi generic over `N: Network` (foundry-rs#13751) * refactor(anvil): make EthApi generic over N: Network * rm todo comments --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * refactor(evm): move `CheatsCtxExt` trait to `foundry-evm-core` (foundry-rs#13781) Previously `CheatsCtxExt` was defined in `foundry-cheatcodes`. Move it to `foundry-evm-core`, and rename it to `EthCheatCtx` to make clear it pins the context to Ethereum-specific env types (`BlockEnv`/`TxEnv`/`CfgEnv`) as a temporary alias during the transition to fully generic EVM and cheatcodes. * refactor(evm): make `NestedEvm` trait generic with associated types (foundry-rs#13782) Add `Tx`, `Block`, and `Spec` associated types to `NestedEvm` so each network can specify its own environment types. The trait remains object-safe when used as `dyn NestedEvm<Tx = TxEnv, Block = BlockEnv, Spec = SpecId>`. Update `NestedEvmClosure` to pin the associated types to Eth types, and set the concrete types in the `FoundryEvm` implementation. * refactor(anvil): propagate `EthApi<N>` to all holders (foundry-rs#13783) refactor(anvil): propagate EthApi<N> to all holders * refactor(evm): rename `NestedEvmClosure` and move to `foundry-evm-core` (foundry-rs#13785) refactor(evm): rename `NestedEvmClosure` to `EthNestedEvmClosure` and move to `foundry-evm-core` * refactor(evm): remove `Env` abstraction from `Executor` impl (foundry-rs#13790) * refactor(anvil): remove redundant param (foundry-rs#13792) * refactor(cheatcodes): tighten verbose bounds to `EthCheatCtx` (foundry-rs#13791) * refactor(evm): remove `eth_*_mut()` from `FoundryContextExt` (foundry-rs#13789) * feat(script): generic `TransactionWithMetadata` + generic pprinting `TransactionMaybeSigned` (foundry-rs#13795) * refactor(evm): `DatabaseExt` generic over env types (foundry-rs#13797) refactor(evm): make DatabaseExt generic over environment types Add generic parameters with defaults to DatabaseExt: `DatabaseExt<Spec = SpecId, Block = BlockEnv, Tx = TxEnv>` This makes the trait generic over EVM environment types while remaining fully backwards-compatible — all existing code uses the defaults. Non-Ethereum networks (e.g. Tempo) can now implement DatabaseExt with their own environment types. 9 method signatures updated: snapshot_state, revert_state, create_select_fork, create_select_fork_at_transaction, select_fork, roll_fork, roll_fork_to_transaction, transact, transact_from_tx. * test(cast): mark flaky revert_reason_from and wildcard RPC-dependent tail (foundry-rs#13796) * fix(anvil): reject invalid versioned_hashes in beacon blobs endpoint (foundry-rs#13787) * fix(cheatcodes): prevent panic in expectRevert with empty bytes (foundry-rs#13769) * fix(cheatcodes): prevent panic in expectRevert with empty bytes When vm.expectRevert(bytes('')) catches a revert with non-empty data, decode_error in alloy-dyn-abi panics on the empty expected_reason (slice index out of range). Guard the decode_error call with a length check. Closes foundry-rs#13766 Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * test: add regression test for expectRevert empty bytes panic Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * test: fix snapshot for expectRevert empty bytes regression test Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * refactor(evm): add `DB` associated type to `FoundryJournalExt` (foundry-rs#13799) * refactor(evm): make DatabaseExt generic over environment types Add generic parameters with defaults to DatabaseExt: `DatabaseExt<Spec = SpecId, Block = BlockEnv, Tx = TxEnv>` This makes the trait generic over EVM environment types while remaining fully backwards-compatible — all existing code uses the defaults. Non-Ethereum networks (e.g. Tempo) can now implement DatabaseExt with their own environment types. 9 method signatures updated: snapshot_state, revert_state, create_select_fork, create_select_fork_at_transaction, select_fork, roll_fork, roll_fork_to_transaction, transact, transact_from_tx. * refactor(evm): replace dyn DatabaseExt in FoundryJournalExt with associated type Replace `&mut dyn DatabaseExt` return type in `FoundryJournalExt` with an associated type `type DB: DatabaseExt`. This removes 3 uses of `dyn DatabaseExt` while remaining backwards-compatible — `&mut DB` auto-coerces to `&mut dyn DatabaseExt` at call sites that still need it. `FoundryJournalExt` is never used as a trait object itself, so adding the associated type has no object-safety impact. --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * feat(anvil): add `AnvilBlockExecutor` and `FoundryReceiptBuilder` (foundry-rs#13788) feat(anvil): add AnvilBlockExecutor and FoundryReceiptBuilder * fix(anvil): swap param order in get_next_block_blob_excess_gas to match callers (foundry-rs#13740) * feat(script): `Network`-generic `ScriptSequence<N>` (foundry-rs#13803) * fix(config): add symmetric serialization for FuzzDictionaryConfig usize fields (foundry-rs#13723) * chore(evm): remove `Env::new_with_spec_id()` method (foundry-rs#13806) * fix(install): clean up nested submodules when using --no-git (foundry-rs#13779) * fix(install): clean up nested submodules when using --no-git Fixes foundry-rs#13688 Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Amp-Thread-ID: https://ampcode.com/threads/T-019cf6ab-6839-70a9-98a9-289974db717b * test: mark regression test as flaky_ instead of ignored Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * style: fix fmt Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Amp-Thread-ID: https://ampcode.com/threads/T-019cf6ab-6839-70a9-98a9-289974db717b --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * refactor(evm): use associated types in `with_cloned_context` (foundry-rs#13802) refactor(evm): use associated types in `with_cloned_context` closure signature * refactor(evm): propagate env types through `FoundryJournalExt` (foundry-rs#13808) * refactor(evm): simplify `FoundryCfg` to marker trait (foundry-rs#13810) * feat(anvil): add `AnvilBlockExecutorFactory` (foundry-rs#13811) * feat(script): `Network`-generic `ScriptSequenceKind<N>` (foundry-rs#13809) * feature(evm): owned `Tx`/`Evm` getters and `Evm` setter for `FoundryContextExt` (foundry-rs#13812) * chore(evm): remove `Env::{clone_evm_and_tx,apply_evm_and_tx}` methods (foundry-rs#13813) * chore(evm): rename `InspectorExt` to `EthInspectorExt` (foundry-rs#13815) * refactor(evm): add `Fork::backend()` accessor (foundry-rs#13817) * refactor(evm): remove `Env` from `commit_transaction` and `replay_until` (foundry-rs#13816) * feat(script): generic `BundledState` impl (foundry-rs#13825) * chore: bump alloy chains (foundry-rs#13827) * chore(evm): remove `Env` abstraction (foundry-rs#13826) * chore(evm): remove `Env` abstraction completely * fix: nit Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix(macros): use correct index for tuple struct fields in ConsoleFmt (foundry-rs#13829) * chore(evm): fix stale `Env` references in doc comments (foundry-rs#13828) The combined `Env` wrapper struct was removed in foundry-rs#13826. Update remaining doc comments that still reference it to use the current `EvmEnv`/`TxEnv` names instead. * refactor(anvil): wire `AnvilBlockExecutorFactory` into `Backend::mine_block` (foundry-rs#13814) refactor(anvil): wire AnvilBlockExecutorFactory into Backend::mine_block * feat(script): generic `ScriptTransactionBuilder` (foundry-rs#13830) Remove hardcoded `Ethereum` default from `TransactionWithMetadata`, making `ScriptTransactionBuilder`, `simulate_and_fill`, and broadcast reader calls `Network`-generic. Cheatcode broadcast helpers now explicitly use Ethereum. * fix(`foundryup`): bump foundryup version (foundry-rs#13832) bump foundryup version * fix(foundryup): tempo-foundry now ships all binaries (foundry-rs#13834) nit * chore(deps): bump taiki-e/install-action from 2.68.17 to 2.68.35 (foundry-rs#13821) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump oven-sh/setup-bun from 2.1.2 to 2.2.0 (foundry-rs#13819) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump Swatinem/rust-cache from 2.8.2 to 2.9.1 (foundry-rs#13818) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump crate-ci/typos from 1.43.5 to 1.44.0 (foundry-rs#13820) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * refactor(evm): backend env helpers generic (foundry-rs#13836) Update `update_env_block` and `update_current_env_with_fork_env` to use generic `FoundryBlock`/`FoundryTransaction` bounds and `BlockHeader` trait methods via setters, replacing direct field access on `AnyRpcBlock`. * refactor(anvil): rm `TransactionExecutor`, mv revm callers to `AnvilBlockExecutorFactory` (foundry-rs#13835) refactor(anvil): rm , mv remai callers AnvilBlockExecutorFactory * refactor(script): extract `BrowserSigner` from `MultiWallet` (foundry-rs#13839) * refactor(anvil): mv `Backend` methods to generic impl, thread N through NodeConfig/spawn (foundry-rs#13840) * refactor(anvil): extract `block_env_from_header` utility (foundry-rs#13838) * chore(evm): clean-up `FoundryEvm` impl (foundry-rs#13844) * feat(cheatcodes): add `currentFilePath` cheatcode (foundry-rs#13735) * feat(cheatcodes): add `currentFilePath` cheatcode Add `vm.currentFilePath()` that returns the source file path of the currently running test or script contract, relative to the project root. This enables contracts to locate sibling files (calldata JSONs, markdown descriptions, configs) without hardcoding paths. A common pattern in proposal/script repos is overriding a `dirPath()` function with a hardcoded string — this cheatcode eliminates that boilerplate. Implementation leverages `CheatsConfig::running_artifact` which already tracks the entry-point `ArtifactId`. The `source` field is stripped of the project root prefix to return a consistent relative path. * fix: rustfmt Amp-Thread-ID: https://ampcode.com/threads/T-019cfb9f-8fce-717d-b9de-fedd8ee7d555 Co-authored-by: Amp <amp@ampcode.com> * fix: remove view from test functions, fix forge-fmt Amp-Thread-ID: https://ampcode.com/threads/T-019cfba7-4986-77c6-9630-574261e9d580 Co-authored-by: Amp <amp@ampcode.com> --------- Co-authored-by: Alex Netto <alex@blockful.io> Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Co-authored-by: zerosnacks <zerosnacks@protonmail.com> Co-authored-by: Amp <amp@ampcode.com> * refactor(evm): simplify nested Evm handling (foundry-rs#13846) refactor(evm): simplify nested EVM handling - Replace `to_env()` (returning cfg+block+tx tuple) with `to_evm_env()` returning only `EvmEnv` (cfg+block), since tx is not needed by callers - Remove unused `with_cloned_context` generic type parameter `R` - Drop `set_tx` call in `with_cloned_context` since nested tx modifications should not propagate back to the outer context - Remove `Evm` useless `db_mut`, `precompiles`, `precompiles_mut`, `inspector`, `inspector_mut` provideds methods reimplementations * refactor(cheatcodes): extract fork env helper to reduce duplication (foundry-rs#13848) Extract `fork_env_op` helper that handles the common pattern shared by all fork-switching cheatcodes: clone EVM/tx env → run db operation → write env back. Deduplicates 7 call sites (rollFork × 4, selectFork, createSelectFork × 2). * refactor(cheatcodes): `BroadcastableTransaction` network-agnostic (foundry-rs#13849) refactor(cheatcodes): make BroadcastableTransaction network-agnostic Remove the `Network` type parameter from `BroadcastableTransaction` by storing raw EVM data (from, to, value, input, nonce, gas) as primitive fields instead of wrapping `TransactionMaybeSigned<N>`. This prevents the `Network` generic from leaking through `Cheatcodes`, `RawCallResult`, and `ScriptResult`. The conversion to network-specific types (`TransactionMaybeSigned<Ethereum>`) now happens in the script layer (`simulate.rs`) at the point where transactions are handed off to `ScriptTransactionBuilder`. * feat(evm): generic `NestedEvmClosure` (foundry-rs#13850) refactor(evm): generalize NestedEvmClosure with generic type params Replace `EthNestedEvmClosure` (pinned to Eth types) with generic `NestedEvmClosure<Tx, Block, Spec>` to support non-Eth networks. * feat(evm): `FoundryContextExt` generic impl (foundry-rs#13857) * feat(evm): wire Inspector and DatabaseExt Context generics (foundry-rs#13856) * refactor(anvil): make `PendingTransaction` generic over tx type (foundry-rs#13854) * chore(cheatcodes): remove `Cheatcodes` context generic (foundry-rs#13861) * refactor(evm): delegate to alloy's `EthEvmFactory` in `new_evm_with_inspector` (foundry-rs#13860) * chore: add `id` attributes to issue templates (foundry-rs#13864) * chore: add `id` attributes to issue templates Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com> Amp-Thread-ID: https://ampcode.com/threads/T-019d0b22-cf39-75b7-b3d7-9280780eecd5 * chore: add `id` attributes to required issue template fields only Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com> Amp-Thread-ID: https://ampcode.com/threads/T-019d0b22-cf39-75b7-b3d7-9280780eecd5 --------- Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com> * refactor(evm): merge `FoundryJournalExt` into `FoundryContextExt` (foundry-rs#13863) * refactor(evm): merge `FoundryJournalExt` into `FoundryContextExt` * fix: failed merge * fix(traces): fix verbosity trace mode and unify verbosity handling (foundry-rs#13859) * fix(traces): use max instead of min for verbosity trace mode Add regression tests for TraceMode::with_verbosity to ensure verbosity 5 raises the trace mode to at least Steps rather than lowering it. Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Co-Authored-By: James Niken <155266991+dizer-ti@users.noreply.github.com> * fix(traces): unify verbosity handling in TraceMode with_verbosity now raises to RecordStateDiff at verbosity 5, matching the documented behavior of -vvvvv (storage changes + backtraces). This removes the separate with_state_changes(verbosity() > 4) call in trace_mode() which used the global shell verbosity instead of the local evm_opts.verbosity — these two values can diverge when --gas-report or --flamegraph bumps evm_opts.verbosity to 3. Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix(forge): only show backtraces at verbosity 5 Backtraces require opcode-level step recording which is expensive. Gate backtrace display at verbosity >= 5 (-vvvvv) instead of >= 3, matching the documented behavior and the step recording threshold. Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * test(traces): comprehensive unit tests for TraceMode verbosity levels Tests every verbosity level (0-5) × every TraceMode variant: - verbosity 0-2: noop across all modes - verbosity 3-4: raises to Call, never downgrades - verbosity 5: raises to RecordStateDiff, never downgrades - into_config correctness at each level (record_steps, record_state_diff) - monotonicity invariant: with_verbosity never lowers any mode Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * test(traces): add integration test for backtrace verbosity levels Runs the same failing test at verbosity 1, 3, 4, and 5 with snapshot assertions to verify backtraces only appear at -vvvvv. Removes the monotonicity unit test in favor of concrete integration coverage. Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix(traces): keep backtraces at verbosity >= 3, add source locations at 5 Backtraces are useful even without source locations — they show contract/function names at -vvv/-vvvv. Source file locations are only added at -vvvvv when step recording is enabled. Updates integration test to assert all three behaviors: - -vvv: backtrace with function names only - -vvvv: same, plus setup traces - -vvvvv: backtrace with source file:line:col locations Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * chore: fix rustfmt Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix(test): handle compiler warnings in snapshot Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix(test): add [staticcall] to snapshot for pure function Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * perf(traces): RecordStateDiff should not enable debug-level recording RecordStateDiff now behaves as Steps + state diff, not Debug + state diff. This avoids recording full stack snapshots (memcpy per opcode), memory snapshots, and unfiltered opcode recording at -vvvvv. Before: 50k opcodes → 50k step records with full stack copies (~16MB) After: 50k opcodes → ~500 step records (JUMP/JUMPDEST only), no copies Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * test(traces): assert Debug mode config is unchanged Locks in that Debug mode still enables full memory/stack snapshots, returndata, immediate bytes, and unfiltered opcode recording — ensuring the RecordStateDiff optimization doesn't affect the debugger or cheatcode recording paths. Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix(traces): state diff needs unfiltered opcodes for SLOAD/SSTORE record_state_diff captures storage changes in the step() callback, which only fires for recorded opcodes. With a JUMP/JUMPDEST filter, SSTORE steps are skipped and state diffs are lost. RecordStateDiff now disables the opcode filter (like before) but still skips memory/stack snapshots — saving the expensive per-opcode memcpy. Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix(test): update JSON fixture for RecordStateDiff config Stack and memory snapshots are no longer recorded at -vvvvv since RecordStateDiff now uses Steps-level config. These fields are null in the JSON output instead of populated. Full debugger-level data is still available via --debug. Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Co-authored-by: James Niken <155266991+dizer-ti@users.noreply.github.com> * refactor(anvil): make Block generic over tx type (foundry-rs#13865) * refactor(evm): `FoundryContextExt<Journal: JournalExt>` bound, use generic `Spec` in `EthCheatCtx` (foundry-rs#13866) * refactor(evm): use `TxEnv` directly in `DatabaseExt` instead of `TransactionRequest` (foundry-rs#13867) * chore(deps): weekly `cargo update` (foundry-rs#13878) Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com> * Update flake.lock (foundry-rs#13877) Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * fix(deps): bump to Foundry browser wallet version 0.2.0 (foundry-rs#13890) bump to https://github.com/foundry-rs/foundry-browser-wallet/releases/tag/v0.2.0 * revert: "BroadcastableTransaction network-agnostic" (foundry-rs#13849) (foundry-rs#13891) * perf(anvil): remove redundant clone in create_access_list (foundry-rs#13887) * perf(evm): make `NestedEvm::to_evm_env` consuming to avoid useless clone (foundry-rs#13893) Change `to_evm_env(&self)` to `to_evm_env(self)` so the implementation can use `Evm::finish()` to destructure the EVM without an extra clone of `cfg_env` and `block_env`. Update `with_fresh_nested_evm` to return `EvmEnv` after consuming the EVM post-closure, so callers no longer need to capture the env inside a `NestedEvmClosure` (which only has `&mut dyn NestedEvm` and cannot call a consuming method). Fix the `sub_inner` / `sub_evm_env` ordering in `with_nested_evm` impls so the journal is cloned before `to_evm_env` consumes the EVM. * chore(common): consistency fix on `TransactionMaybeSigned::to()` (foundry-rs#13895) * feat(cheatcodes): Network/Evm generic `Cheatcodes` (foundry-rs#13894) * feat(cheatcodes): Network/Evm generic `Cheatcodes` * fix: tx create detection * fix(ci): adapt to `TransactionMaybeSigned::to()` return type change (foundry-rs#13896) * chore(cheatcodes): remove unused `cheats` param from `CheatcodesExecutor::console_log` (foundry-rs#13897) * refactor(evm): remove `tx_env` param from EVM constructor helper (foundry-rs#13903) Remove the `tx_env` parameter from `new_eth_evm_with_inspector`, `with_cloned_context`, and `with_fresh_nested_evm`. Instead of setting the transaction environment at EVM construction time (where it may become stale or be set redundantly), callers now pass the tx env directly to `evm.transact()` at execution time. This avoids some clones. * chore: remove dead code `paths_config` and `log_status` from inspector stack (foundry-rs#13905) chore: remove dead code in InspectorStackInner Remove two unused methods: - `InspectorStack::paths_config()`: zero callers across the codebase - `InspectorStackInner::log_status()`: zero callers across the codebase Also removes the now-unused `foundry_compilers::ProjectPathsConfig` import. * chore: remove no-op `spec_id` reassignment in `Executor::clone_with_backend` (foundry-rs#13906) chore: remove no-op spec_id reassignment in clone_with_backend After cloning `self.evm_env`, `evm_env.cfg_env.spec` already equals `self.spec_id()` (which simply returns `self.evm_env.cfg_env.spec`). The reassignment is a no-op. * feat(evm): `Backend` generic network (foundry-rs#13579) * feat(evm): `Backend` generic over `Network` * fix(evm): use `AnyNetwork` for fork env init to support non-standard chains When forking non-standard EVM chains (e.g. Moonbeam, Arbitrum), their block headers may lack standard Ethereum fields like `mixHash`. Using the generic `N`-typed provider (defaulting to `Ethereum`) caused deserialization failures for these chains. * feat(evm): add `TryAnyIntoTxEnv` trait for `AnyTxEnvelope` to `TxEnv` conversion Introduces TryAnyIntoTxEnv trait in foundry-evm-core to replace the TxEnv: FromRecoveredTx<N::TxEnvelope> bound on Backend<N>. This allows Backend to default to AnyNetwork: - TxEnvelope (Ethereum): delegates to FromRecoveredTx directly - AnyTxEnvelope: extracts inner TxEnvelope via as_envelope(), then delegates to FromRecoveredTx; returns error for unknown tx types Co-authored-by: Amp <amp@ampcode.com> * chore: fix `cargo deny` failure --------- Co-authored-by: Amp <amp@ampcode.com> * refactor(evm): `NestedEvm` based on revm's `Evm` instead of alloy-evm (foundry-rs#13908) * Add feature: `forge inspect <x> linearization` to see a Solidity contract's linearized inheritance (foundry-rs#13704) * feat: Tempo wallet access key support for cast (foundry-rs#13909) * refactor(script-sequence): rename misleading `opcode` field to `call_kind` (foundry-rs#13907) * fix(fmt): swap valid_before/valid_after in TempoTransaction pretty print (foundry-rs#13910) * fix(fmt): prefer header total_difficulty for totalDifficulty (foundry-rs#13919) * feat(evm): `FoundryContextExt` impls for OP (foundry-rs#13925) * refactor(evm): simplify `NestedEvm` trait by removing `Block` and `Spec` (foundry-rs#13933) * refactor(evm): make `FoundryInspectorExt` generic over `CTX` and rename traits (foundry-rs#13922) * refactor(evm): make `FoundryInspectorExt` generic over `CTX` and rename traits Restructure the inspector extension traits for clarity and genericity: - Rename FoundryInspectorExt -> InspectorExt: the context-free base trait providing Foundry-specific inspector methods (console logging, network config) without any Inspector<CTX> supertrait. - Rename EthInspectorExt -> FoundryInspectorExt<CTX>: the combined trait that unifies Inspector<CTX> + InspectorExt. Generic over any CTX that implements FoundryContextExt, rather than being hardcoded to specific BLOCK/TX/SPEC type parameters with for<'a> HRTB baked in. - Introduce EthEvmCtx<'db> type alias for the concrete Eth context (Context<BlockEnv, TxEnv, CfgEnv, &'db mut dyn DatabaseExt>), keeping usage sites concise. This makes the trait hierarchy composable for multi-network support while keeping the Eth-specific default path ergonomic via the type alias during refactor. Co-authored-by: Amp <amp@ampcode.com> * fix: use `EthEvmContext<DB>` instead of EthEvmCtx as default --------- Co-authored-by: Amp <amp@ampcode.com> * fix(evm): restore `code_size_limit` config in `CfgEnv` (foundry-rs#13912) `cfg_env()` unconditionally set `limit_contract_code_size = Some(usize::MAX)`, ignoring the user's `code_size_limit` setting from foundry.toml. Use the configured value when present, falling back to `usize::MAX` (disabled). * perf(evm): remove unnecessary clones in do_call_end/do_create_end (foundry-rs#13913) perf(evm): remove unnecessary clones in `do_call_end`/`do_create_end` Both methods returned `CallOutcome`/`CreateOutcome` but all callers discarded the return value — the outcome is already mutated in-place via `&mut`. This removes the final `outcome.clone()` and changes the early-return in the `#[ret]` macro from `then_some(outcome.clone())` to `then(|| ())`, eliminating up to 2 clones per call/create end. * fix(wallets): browser wallet CLI help heading formatting (foundry-rs#13876) fix: browser wallet CLI help heading formatting - Set proper help_heading on BrowserWalletOpts to use 'Wallet options - browser wallet' consistently - Add next_help_heading to Erc20TxOpts to prevent transaction options from leaking into the browser wallet section Co-authored-by: Amp <amp@ampcode.com> Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * feat(forge-script): Tempo access key support for forge script (foundry-rs#13917) * refactor(anvil): encapsulate per-tx inspector lifecycle in `finish_transaction` (foundry-rs#13932) * refactor(anvil): encapsulate per-tx inspector lifecycle in `finish_transaction` Extract the repeated ~20-line drain-and-reset block from 3 locations in the block mining loop into `AnvilInspector::finish_transaction()`. The method prints traces/logs, drains the tracer into `Vec<CallTraceNode>`, and reinstalls fresh tracer + log collector for the next transaction. Introduces `InspectorTxConfig` to carry the print/tracing settings, replacing direct field access into the inspector internals. * style: fix rustfmt * refactor(evm): generalize `TryAnyToTxEnv` trait over TxEnv + simplification (foundry-rs#13924) * refactor(evm): generalize `TryAnyToTxEnv` trait over TxEnv + simplification The old trait converted `TxEnvelope` (the consensus-layer type) into `TxEnv`, requiring callers to separately pass the sender address. This was a leaky abstraction: the sender is already carried by the RPC transaction wrapper (TransactionResponse::from()), so callers had to extract it themselves before calling `try_into_tx_env`. The new trait `TryAnyToTxEnv` is generic over the output TxEnv type and takes the full RPC transaction as receiver, which means: - Implementations for `alloy_rpc_types::Transaction` and `AnyRpcTransaction` can call ToTxEnv / FromRecoveredTx internally without leaking address handling to callers. - A new impl for `op_alloy_rpc_types::Transaction` produces `OpTransaction<TxEnv>`, enabling OP-stack fork replay without a separate code path. - `Backend<N>` now constrains `N::TransactionResponse: TryAnyToTxEnv<TxEnv>` instead of `N::TxEnvelope: TryAnyIntoTxEnv`, which is both more accurate and unlocks multi-network support. * fix: docs --------- Co-authored-by: zerosnacks <zerosnacks@protonmail.com> Co-authored-by: Amp <amp@ampcode.com> * refactor(evm): simplify `replay_until` to use single `ForkDB` clone (foundry-rs#13931) * refactor: simplify replay_until to use single ForkDB clone Replace the per-transaction Backend + EVM creation in replay_until with a single cloned ForkDB and one persistent EthEvm instance. Before: for each tx in the block, commit_transaction would clone Fork + JournaledState, spawn a new Backend (including MultiFork), create a new FoundryEvm, transact, then apply_state_changeset. In a block with N preceding transactions, this meant N full clones. After: clone the fork's CacheDB once (SharedBackend is Arc-backed, so only the local cache layer is duplicated), create one EthEvm via EthEvmFactory, call transact_commit for each tx, then replace the fork's DB and refresh journaled states once at the end. Also: - Remove unused tx_env parameter from replay_until - Extract Fork::refresh_journaled_states helper to deduplicate the paired update_state calls in both replay_until and apply_state_changeset - Remove unused NoOpInspector import Amp-Thread-ID: https://ampcode.com/threads/T-019d2512-8074-72ac-92d8-e8f887911219 Co-authored-by: Amp <amp@ampcode.com> * style: fix rustfmt * refactor: simplify tx collection loop and remove stale comments --------- Co-authored-by: Amp <amp@ampcode.com> Co-authored-by: zerosnacks <zerosnacks@protonmail.com> * fix(evm): use try_any_to_tx_env in replay_until (foundry-rs#13938) The merge of foundry-rs#13931 introduced a call to the old `try_into_tx_env` method which was renamed to `try_any_to_tx_env` in foundry-rs#13924. This fixes the docs CI build. Amp-Thread-ID: https://ampcode.com/threads/T-019d2952-9ec2-76f9-8f90-b7b3735d4ce3 Co-authored-by: Amp <amp@ampcode.com> * chore(deps): bump taiki-e/install-action from 2.68.35 to 2.69.8 (foundry-rs#13915) Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.68.35 to 2.69.8. - [Release notes](https://github.com/taiki-e/install-action/releases) - [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md) - [Commits](taiki-e/install-action@94a7388...7bc99ee) --- updated-dependencies: - dependency-name: taiki-e/install-action dependency-version: 2.69.8 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump DeterminateSystems/determinate-nix-action from 3.17.0 to 3.17.1 (foundry-rs#13914) chore(deps): bump DeterminateSystems/determinate-nix-action Bumps [DeterminateSystems/determinate-nix-action](https://github.com/determinatesystems/determinate-nix-action) from 3.17.0 to 3.17.1. - [Release notes](https://github.com/determinatesystems/determinate-nix-action/releases) - [Commits](DeterminateSystems/determinate-nix-action@131015b...a18f73c) --- updated-dependencies: - dependency-name: DeterminateSystems/determinate-nix-action dependency-version: 3.17.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * refactor(evm): simplify `FoundryContextExt` spec handling (foundry-rs#13935) - Introduced `FoundryContextExt::Spec` type for convenience - Removed complex bounds on `ContextTr::Cfg` using instead the new `Spec` type - Simplified accordingly the rest of the code Co-authored-by: zerosnacks <zerosnacks@protonmail.com> Co-authored-by: Amp <amp@ampcode.com> * refactor(anvil): remove some intermediate `Env` wrappers, pass `EvmEnv` directly (foundry-rs#13941) refactor(anvil): remove some intermediate Env wrapper, pass EvmEnv directly Replace usage of the `Env` struct wrapper with direct `EvmEnv` references in `new_eth_evm_with_inspector`, `validate_pool_transaction_for`, and `validate_for`. The optimism flag is now passed explicitly as `is_optimism: bool` instead of being extracted from `env.networks`. This eliminates unnecessary `Env::new(...)` construction in several hot paths (block mining, pending block simulation, tx replay) and simplifies the function signatures. * refactor(anvil): remove Env from storage, call env, and executor APIs (foundry-rs#13942) Continue the cleanup of the Env wrapper by passing EvmEnv directly in remaining call sites: - BlockchainStorage::new / Blockchain::new: drop the redundant spec_id parameter, derive it from evm_env.spec_id() instead - build_call_env: return (EvmEnv, OpTransaction<TxEnv>) instead of Env, consumers destructure and use directly - new_eth_evm_with_inspector_ref: accept &EvmEnv instead of &Env, derive is_optimism from self.is_optimism() - build_tx_env_for_pending: take is_optimism: bool instead of NetworkConfigs + &EvmEnv - inspect_tx / replay_block_transactions_with_inspector: extract only evm_env from next_env(), avoid cloning the whole Env - api.rs: use spec_id() / chain_id() helpers instead of digging into env.evm_env.cfg_env fields directly - Various minor cleanups: inline single-use env write guards, use self.chain_id() / self.spec_id() helpers consistently --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Derek Cofausper <256792747+decofe@users.noreply.github.com> Co-authored-by: Matthias Seitz <19890894+mattsse@users.noreply.github.com> Co-authored-by: Mablr <59505383+mablr@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de> Co-authored-by: figtracer <1gusredo@gmail.com> Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Co-authored-by: stevencartavia <112043913+stevencartavia@users.noreply.github.com> Co-authored-by: Suuuuuuperrrrr fred <FredrikaPhililip@proton.me> Co-authored-by: Nikki <gutonosa@protonmail.com> Co-authored-by: James Niken <155266991+dizer-ti@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Alexandro T. Netto <56097505+alextnetto@users.noreply.github.com> Co-authored-by: Alex Netto <alex@blockful.io> Co-authored-by: zerosnacks <zerosnacks@protonmail.com> Co-authored-by: Amp <amp@ampcode.com> Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Edgar Richards <eddgarrichards@gmail.com> Co-authored-by: Red Swan <jared.swan@openzeppelin.com> Co-authored-by: onbjerg <onbjerg@users.noreply.github.com> Co-authored-by: anim001k <140460766+anim001k@users.noreply.github.com>
… sensitive information' Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
…ed in path expression' Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
…ed in path expression' Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update CircleCI config with comments and formatting
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update config.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update and rename ci-say-hello.yml to ci-web3-defi-gamefi.yml (#154)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/ci-web3-defi-gamefi.yml (#155)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/ci_deploy.yml (#158)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/cargo.yml (#159)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* chore(deps): bump taiki-e/install-action from 2.62.31 to 2.62.33 (#162)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.62.31 to 2.62.33.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/0005e0116e92d8489d8d96fbff83f061c79ba95a...e43a5023a747770bfcb71ae048541a681714b951)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.62.33
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump actions/checkout from 4 to 5 (#163)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Merge branch 'foundry-rs:master' (#164)
* Create ci_cargo.yml (#72)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create config.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Rename ci_cargo.yml to cargo.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* fix(fmt): handle trailing coments between base contracts (#12127)
* fix(fmt): account for ternary operators when estimating size
* fix(fmt): handle comments between inherited base contracts
* test: layout + base inheritance
* feat(forge): add bypass prevrandao (#12125)
* feat(forge): add bypass prevrandao
* Update crates/evm/networks/src/lib.rs
Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com>
* changes after review: remove duped code
---------
Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com>
* fix(fmt): filter libs when recursing (#12119)
* fix(fmt): account for ternary operators when estimating size
* fix(fmt): filter libs when recursing
* style: clippy
* test: wipe contracts before formatting
* test: explicitly test ignore
* fix(fmt): break try stmts in a fn header-like fashion (#12131)
* chore(deps): bump softprops/action-gh-release from 2.3.4 to 2.4.1
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.3.4 to 2.4.1.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/62c96d0c4e8a889135c1f3a25910db8dbe0e85f7...6da8fa9354ddfdc4aeace5fc48d7f679b5214090)
---
updated-dependencies:
- dependency-name: softprops/action-gh-release
dependency-version: 2.4.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* chore(deps): bump taiki-e/install-action from 2.62.28 to 2.62.33 (#161)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.62.28 to 2.62.33.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/e7ef886cf8f69c25ecef6bbc2858a42e273496ec...e43a5023a747770bfcb71ae048541a681714b951)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.62.33
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---------
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com>
Co-authored-by: grandizzy <38490174+grandizzy@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix(anvil): always disable nonce check (foundry-rs#12144) (#165)
* test: refactor testdata/ tests to be run in `forge test` (#12049)
* test: run forge test on testdata/
* chore: refactor to use common Test contract
* chore: disable testGasMeteringExternal, via-ir
* test: rm unused repros
* fix: paths
* upd
* fmt
* fix more tests
* test: turn testNonExistingContractRevert into expectRevert
* fix some more paths
* legacy assertions
* compile paris with paris
* fix: set configs for fs tests
* fix remaining paths in cheats
* restrict fs permissions
* fix: set runtime evm_version too
* fix vyper
* fix: a couple of repros
* fix: we have storage layouts
* fix: 3223, 3674: set sender
* reorder
* feat: move repros expected failures to snapshots
* feat: migrate remaining repros tests
* feat: rm migrated files
* skip testRevertIfGetUnlinked
* move expected core/ failures
* upd
* move logs/
* move all forgetest tests from it/ to cli/
* fix fork test
* move trace/
* tmp: move fuzz/invariant out of fuzz/
* move fuzz/
* forge fmt
* wips
* fix: both vyper and paris; set src/
* canon
* lib log
* logs
* Revert "fix: set runtime evm_version too"
This reverts commit 7ca544b10047f608d57c74fb3500a5fbe7e2650e.
Contract-level inline config will set evm version for libraries too,
which means we fail on deploying libraries that are compiled with
newer evm version.
* fix: set evm version where needed, per test function
* test: reduce gas wastage
* chore: clippy
* invariant mod.rs
* test: fix linking tests with new utils
* redact_with
* Revert "wips"
This reverts commit ee2c17a3023ca7ce8e7effccf0ea0a0f28f6e510.
* migrate invariant/target{,Abi}
* migrate InvariantAfterInvariant.t.sol
* migrate InvariantAssume.t.sol
* migrate InvariantCalldataDictionary.t.sol, more test utils
* migrate InvariantCustomError.t.sol
* migrate InvariantExcludedSenders.t.sol
* migrate InvariantFixtures.t.sol
* migrate InvariantHandlerFailure.t.sol
* interlude: forgot to use a new file
* migrate InvariantInnerContract.t.sol
* migrate InvariantPreserveState.t.sol
* migrate InvariantReentrancy.t.sol
* migrate InvariantRollFork.t.sol
* migrate InvariantScrapeValues.t.sol
* migrate InvariantSequenceNoReverts.t.sol
* migrate InvariantShrinkBigSequence.t.sol
* migrate InvariantShrinkFailOnRevert.t.sol
* migrate InvariantShrinkWithAssert.t.sol
* migrate InvariantTest1.t.sol
* fix InvariantInnerContract.t.sol
* update new Rlp test
* com
* better com
* nuke tests/it
* test: fix testdata paths in script tester
* test: fix relative paths in test_cmd
* test: redact more in issue_2851
* fix: copy testdata correctly
* trace addrs
* manual retry logic with --retry
* fix nondeterministic output
* debug: fs lock error context
* test: fix project root for windows
* test: skip project root test if unset
* normalize both
* typo
* Revert "typo"
This reverts commit 402bea105c6f38b82664b50ca854f95e456df795.
* Revert "debug: fs lock error context"
This reverts commit e5caeddd1e4cb457d7b24d7d7fdfdb370e2feabf.
* fix
* fix: locked_write_line for windows
* chore: clippy
* fmt
* chore: speed up fuzzed_selected_targets
* other way
* fix nondeterministic output 2
* fix: disable persistence
* test: revert old via-ir
* ci: tweak cache key
* do not run trace test when isolate
---------
Co-authored-by: grandizzy <grandizzy.the.egg@gmail.com>
* fix(anvil): always disable nonce check (#12144)
* deps: bump deps (#12149)
* deps: bump deps
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* minimum Cargo.lock
---------
Co-authored-by: rplusq <rplusq@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
---------
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
Co-authored-by: grandizzy <grandizzy.the.egg@gmail.com>
Co-authored-by: grandizzy <38490174+grandizzy@users.noreply.github.com>
Co-authored-by: Rafael Quintero <32346241+rplusq@users.noreply.github.com>
Co-authored-by: rplusq <rplusq@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
* Update test.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update test.yml (#167)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update test.yml (#168)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/ci.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update cargo.yml (#171)
CI/CD Configuration Update: The CircleCI configuration file, cargo.yml, has been updated to use a newer version of the Rust Docker image.
Rust Toolchain Version Bump: The cimg/rust Docker image version has been incremented from 1.88.0 to 1.89.0, ensuring the CI pipeline utilizes a more recent Rust toolchain.
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/ci_v1.yml (#173)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update cargo.yml (#174)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* chore(deps): bump taiki-e/install-action from 2.62.28 to 2.62.33 (#175)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.62.28 to 2.62.33.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/v2.62.28...e43a5023a747770bfcb71ae048541a681714b951)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.62.33
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Delete .circleci/cargo.yml (#179)
I Configuration Removal: The .circleci/cargo.yml file, which defined CircleCI jobs for building and testing Rust projects, has been completely removed from the repository.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/ci_v1.yml (#182)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update config.yml (#183)
Configuration File Cleanup: Removed an unnecessary blank line in the .circleci/config.yml file, improving its formatting and readability.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update config.yml (#187)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/config.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci directory
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update ci_v1.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update Rust Docker image version to 1.89.0
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 76: Artifact poisoning
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* chore(deps): bump alloy-dyn-abi in the cargo group across 1 directory
Bumps the cargo group with 1 update in the / directory: [alloy-dyn-abi](https://github.com/alloy-rs/core).
Updates `alloy-dyn-abi` from 0.8.25 to 0.8.26
- [Release notes](https://github.com/alloy-rs/core/releases)
- [Changelog](https://github.com/alloy-rs/core/blob/v0.8.26/CHANGELOG.md)
- [Commits](https://github.com/alloy-rs/core/compare/v0.8.25...v0.8.26)
---
updated-dependencies:
- dependency-name: alloy-dyn-abi
dependency-version: 0.8.26
dependency-type: direct:production
dependency-group: cargo
...
Signed-off-by: dependabot[bot] <support@github.com>
* Create ci-web3-gamefi.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 74: Artifact poisoning
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 83: Uncontrolled data used in path expression
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 93: Uncontrolled data used in path expression
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 76: Artifact poisoning
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 94: Uncontrolled data used in path expression
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 80: Server-side request forgery
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 80: Server-side request forgery
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Create codeql.yml (#208)
* Update ci.yml (#209)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
https://github.com/apps/gemini-code-assist
Code Review
This pull request updates the Rust version in the CI from 1.88.0 to 1.89.0. While this is a good maintenance step, I've identified a potential improvement for your CI configuration. The project's Cargo.toml specifies a Minimum Supported Rust Version (MSRV) of 1.86, but the CI doesn't test against it. I've added a comment suggesting the addition of an MSRV check to prevent compatibility issues.
* Update cargo.yml (#210)
https://github.com/apps/gemini-code-assist
-------------------
Code Review
This pull request downgrades the Rust version in the CI pipeline from 1.88.0 to 1.87.0. This is inconsistent with the project's declared Minimum Supported Rust Version (MSRV) of 1.89 in Cargo.toml. My review highlights this discrepancy and suggests aligning the CI's Rust version with the MSRV to ensure the project's compatibility guarantees are properly tested.
---------------
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Foundry rs maste 1f4b36a (#214)
* Create jekyll.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create docker-image.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 58: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update .github/workflows/docker-image.yml
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update docker-image.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Revert "chore: fix isolate tests (#10344)"
This reverts commit 70ded2b35f95ee9b4ee94f5e44961914d30a87f7.
* Delete .github/workflows/jekyll.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 19: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Update and rename docker-image.yml to docker.yml (#218)
Streamline the Docker CI workflow by renaming the file and enhancing it with scheduled runs, Buildx multi-platform builds, metadata tagging, conditional pushes, and automated image signing with Cosign.
CI:
Rename and replace the legacy docker-image.yml workflow with docker.yml
Add scheduled cron runs and triggers on pushes to master, semver tags, and PRs
Configure Docker Buildx for multi-platform builds with cache
Extract Docker metadata and conditionally push images to GHCR on non-PR events
Install Cosign and sign published Docker images using ephemeral identity tokens
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update ci.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Create docker-image.yml (#224)
CI:
Introduce docker-image.yml GitHub Actions workflow to checkout code and build Docker image on ubuntu-latest
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update config.yml (#225)
CI:
Insert comment lines to delineate and structure sections in .circleci/config.yml for enhanced clarity
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update sequence.rs (#226)
Enhancements:
Add standalone # lines in sequence.rs to serve as hidden placeholders for rustdoc examples
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update dependencies.yml (#227)
* Update dependencies.yml
Refactor the weekly dependencies workflow to inline cargo update steps, auto-generate commit messages and PR bodies with update logs, and use the create-pull-request action to open update PRs on a dedicated branch.
Enhancements:
Define environment variables for GitHub token, branch name, PR title, and PR body including cargo update logs
Inline checkout, Rust toolchain setup, and cargo update command with log cleanup instead of relying on an external workflow
Craft commit messages and PR bodies dynamically by capturing and formatting cargo update output
Use peter-evans/create-pull-request to push Cargo.lock updates to a 'cargo-update' branch
CI:
Move permissions and GitHub token configuration into the job context
Explicitly set the runner to ubuntu-latest and remove the top-level empty permissions block
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update .github/workflows/dependencies.yml
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Update npm.yml (#228)
CI:
Add comment to the Publish Binary step indicating it runs automatically after a successful release workflow or can be triggered manually with a run_id
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update snyk-container.yml (#229)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update nextest.yml (#230)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update const.ts (#231)
Code Formatting: Removed an extraneous blank line in npm/src/const.ts to improve code cleanliness and consistency.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Revert "Create web3_defi_gamefi.yml (#61)" (#233)
This reverts commit 8575916b7675f246b54daf70cfddccb3f5b97fb0.
* Create deploy.yml (#240)
* Create deploy.yml
CI:
Add GitHub Actions workflow to build the Rust project, run tests, and build a Docker image on pushes to main/master
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 106: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* Update dependencies.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update dependencies.yml (#247)
Improve readability of the GitHub Actions dependencies workflow by adjusting whitespace and adding blank lines
CI:
Add blank line before the workflow name declaration
Insert blank line after the scheduled cron job entry
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update dependencies.yml (#248)
CI:
Remove extraneous blank line in .github/workflows/dependencies.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update test.yml (#249)
CI:
Remove dev branch from test workflow triggers
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update Cargo.lock (#253)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update Cargo.lock (#254)
Chores:
Regenerate Cargo.lock to update dependencies
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Create config.yml (#255)
* Create config.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update .circleci/config.yml
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Update config.yml (#256)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* fix: upgrade tsdown from 0.15.12 to 0.16.1
Snyk has created this PR to upgrade tsdown from 0.15.12 to 0.16.1.
See this package in npm:
tsdown
See this project in Snyk:
https://app.snyk.io/org/dargon789/project/8da85645-409e-46fa-bd46-9b58e7905fb8?utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr
* Create google.yml (#266)
CI:
Introduce a Google Cloud deployment workflow that builds a Docker image, pushes it to Artifact Registry, and deploys it to a GKE cluster on pushes to the main branches.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update flake.lock (#269)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update flake.nix (#270)
Adjust Nix flake development shell configuration for better cross-platform support and simplify dependencies.
Enhancements:
Remove the dprint dependency from the Nix development shell.
Add conditional AppKit framework linkage on Darwin systems in the Nix shell configuration.
Drop custom hardeningDisable settings from the Nix development shell definition.
https://github.com/apps/gemini-code-assist
Code Review
This pull request updates the Nix flake configuration to improve cross-platform support and simplify dependencies. The changes include removing dprint and hardeningDisable settings, and conditionally adding the AppKit framework for Darwin systems. While most changes are beneficial, removing dprint from the development shell dependencies while its configuration file remains could cause issues for contributors. I've added a comment regarding this potential inconsistency.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update Cargo.toml (#271)
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update nextest.toml (#272)
Adjust test runner configuration for nextest to better handle long-running and specific tests.
Enhancements:
Introduce a dedicated test group that limits chisel-serial tests to a single thread.
Increase the default slow-test timeout period to reduce premature terminations for longer-running tests.
Expand the slow-timeout override filter to include both ext_integration and can_test_forge_std tests.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update dprint.json (#273)
(https://github.com/apps/gemini-code-assist)
Code Review
This pull request updates the dprint.json configuration file. The changes correctly enable formatting for dprint.json itself by modifying the excludes list, update the JSON and Markdown dprint plugins to their latest versions, and add a final newline to the file for POSIX compliance. These are all good maintenance improvements. The changes have been reviewed and appear to be correct and beneficial. No issues were found.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update .github/workflows/apisec-scan.yml
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update counter/README.md
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update .github/ISSUE_TEMPLATE/bug_report.md
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Dependabot/cargo/cargo 38744a1864 (#282)
* chore(deps): bump alloy-dyn-abi in the cargo group across 1 directory
Bumps the cargo group with 1 update in the / directory: [alloy-dyn-abi](https://github.com/alloy-rs/core).
Updates `alloy-dyn-abi` from 0.8.25 to 0.8.26
- [Release notes](https://github.com/alloy-rs/core/releases)
- [Changelog](https://github.com/alloy-rs/core/blob/v0.8.26/CHANGELOG.md)
- [Commits](https://github.com/alloy-rs/core/compare/v0.8.25...v0.8.26)
---
updated-dependencies:
- dependency-name: alloy-dyn-abi
dependency-version: 0.8.26
dependency-type: direct:production
dependency-group: cargo
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update and rename ci.yml to cargo.yml (#268)
Update CircleCI configuration to use a different Rust toolchain image and rename the workflow file.
Build:
Rename the CircleCI configuration file from ci.yml to cargo.yml.
Change the CircleCI Docker image to use Rust 1.78.0 instead of 1.88.0.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Fix cloning of compiler settings for Vyper input
Replace context.clone().compiler_settings.vyper with
context.compiler_settings.vyper.clone() to avoid unnecessary
cloning of the entire VerificationContext. This reduces memory
allocations when creating VyperInput instances.
Applied to both etherscan and sourcify verification providers.
* Update config.yml (#283)
Summary by Sourcery
Update CircleCI pipeline to use a custom Docker executor and job tailored to the project instead of the example hello-world workflow.
Enhancements:
Introduce a reusable custom executor that pulls from the stable cimg/base Docker image with Docker Hub authentication.
CI:
Replace the sample say-hello job and workflow with a project-specific job and workflow wired to the new custom executor in .circleci/config.yml.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* fix: use network-specific BaseFeeParams for Optimism in Anvil
* Dargon789 patch 1 (#285)
* Update test.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update test.yml (#167)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/ci_v1.yml (#173)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update cargo.yml (#174)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .circleci/config.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 74: Artifact poisoning
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 83: Uncontrolled data used in path expression
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 93: Uncontrolled data used in path expression
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 76: Artifact poisoning
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 94: Uncontrolled data used in path expression
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 80: Server-side request forgery
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update cargo.yml (#210)
https://github.com/apps/gemini-code-assist
-------------------
Code Review
This pull request downgrades the Rust version in the CI pipeline from 1.88.0 to 1.87.0. This is inconsistent with the project's declared Minimum Supported Rust Version (MSRV) of 1.89 in Cargo.toml. My review highlights this discrepancy and suggests aligning the CI's Rust version with the MSRV to ensure the project's compatibility guarantees are properly tested.
---------------
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Fix cloning of compiler settings for Vyper input
Replace context.clone().compiler_settings.vyper with
context.compiler_settings.vyper.clone() to avoid unnecessary
cloning of the entire VerificationContext. This reduces memory
allocations when creating VyperInput instances.
Applied to both etherscan and sourcify verification providers.
---------
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Gengar <creeptogengar@gmail.com>
* merge gh-master (#287)
* Create config.yml (#236)
Create .circleci/config.yml defining a version 2.1 pipeline with a docker-based "say-hello" job, checkout and echo steps, and a workflow to orchestrate it
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* fix(evm): use timestamp-based blob base fee calculation (#12959)
* fix(evm): use timestamp-based blob base fee calculation
* chore: use patch
* Now BPO1 is default
* bump to hardforks to 0.4.7
---------
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* fix(config): reject bare versions in compilation restrictions (#12955)
fmt
Co-authored-by: tefyosL-sol <gasgoblinn@gmail.com>
* Revert "fix(config): err on unknown profile (#12946)" (#12964)
This reverts commit 6ff4b52e2e572e93d0cd81591b1bd0e6ad9ed507.
* Update crates/config/src/compilation.rs
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: cakevm <cakevm@proton.me>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Theodore Solis <gasgobling@gmail.com>
Co-authored-by: tefyosL-sol <gasgoblinn@gmail.com>
Co-authored-by: grandizzy <38490174+grandizzy@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* Foundry/ethereum ux (#284)
* Potential fix for code scanning alert no. 19: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 61: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 74: Artifact poisoning
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create config.yml (#105)
* Create cargo.yml (#106)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .github/workflows/docker-image.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Revert "Create cargo.yml (#106)"
This reverts commit 251a2b4fce0c50e3426ffb2022d9abef5b948fa9.
* Create cargo.yml (#213)
https://github.com/apps/gemini-code-assist
Code Review
This pull request introduces a CircleCI workflow to automate formatting checks and tests. My review has identified two main issues in the configuration: redundant steps that would unnecessarily increase job execution time, and a mismatch between the Rust version in the CI environment and the one specified in the project's Cargo.toml. I've provided suggestions to fix these issues for a more efficient and consistent CI process.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* Gamefi defi (#288)
* chore: ignore RUSTSEC-2025-0137 (#12941)
Co-authored-by: Claude <noreply@anthropic.com>
* chore(deps): weekly `cargo update` (#12940)
* chore(deps): weekly `cargo update`
Updating git repository `https://github.com/rust-cli/rexpect`
Updating git repository `https://github.com/paradigmxyz/solar.git`
Skipping git submodule `https://github.com/argotorg/solidity.git` due to update strategy in .gitmodules
Updating git repository `https://github.com/tempoxyz/tempo`
Updating git repository `https://github.com/paradigmxyz/reth`
Locking 71 packages to latest compatible versions
Updating alloy-chains v0.2.23 -> v0.2.24
Updating alloy-consensus v1.1.3 -> v1.2.1
Updating alloy-consensus-any v1.1.3 -> v1.2.1
Updating alloy-contract v1.1.3 -> v1.2.1
Updating alloy-dyn-abi v1.5.1 -> v1.5.2
Updating alloy-eip5792 v1.1.3 -> v1.2.1
Updating alloy-eips v1.1.3 -> v1.2.1
Updating alloy-ens v1.1.3 -> v1.2.1
Updating alloy-genesis v1.1.3 -> v1.2.1
Updating alloy-json-abi v1.5.1 -> v1.5.2
Updating alloy-json-rpc v1.1.3 -> v1.2.1
Updating alloy-network v1.1.3 -> v1.2.1
Updating alloy-network-primitives v1.1.3 -> v1.2.1
Updating alloy-primitives v1.5.1 -> v1.5.2
Updating alloy-provider v1.1.3 -> v1.2.1
Updating alloy-pubsub v1.1.3 -> v1.2.1
Updating alloy-rpc-client v1.1.3 -> v1.2.1
Updating alloy-rpc-types v1.1.3 -> v1.2.1
Updating alloy-rpc-types-anvil v1.1.3 -> v1.2.1
Updating alloy-rpc-types-any v1.1.3 -> v1.2.1
Updating alloy-rpc-types-beacon v1.1.3 -> v1.2.1
Updating alloy-rpc-types-debug v1.1.3 -> v1.2.1
Updating alloy-rpc-types-engine v1.1.3 -> v1.2.1
Updating alloy-rpc-types-eth v1.1.3 -> v1.2.1
Updating alloy-rpc-types-trace v1.1.3 -> v1.2.1
Updating alloy-rpc-types-txpool v1.1.3 -> v1.2.1
Updating alloy-serde v1.1.3 -> v1.2.1
Updating alloy-signer v1.1.3 -> v1.2.1
Updating alloy-signer-aws v1.1.3 -> v1.2.1
Updating alloy-signer-gcp v1.1.3 -> v1.2.1
Updating alloy-signer-ledger v1.1.3 -> v1.2.1
Updating alloy-signer-local v1.1.3 -> v1.2.1
Updating alloy-signer-trezor v1.1.3 -> v1.2.1
Updating alloy-signer-turnkey v1.1.3 -> v1.2.1
Updating alloy-sol-macro v1.5.1 -> v1.5.2
Updating alloy-sol-macro-expander v1.5.1 -> v1.5.2
Updating alloy-sol-macro-input v1.5.1 -> v1.5.2
Updating alloy-sol-type-parser v1.5.1 -> v1.5.2
Updating alloy-sol-types v1.5.1 -> v1.5.2
Updating alloy-transport v1.1.3 -> v1.2.1
Updating alloy-transport-http v1.1.3 -> v1.2.1
Updating alloy-transport-ipc v1.1.3 -> v1.2.1
Updating alloy-transport-ws v1.1.3 -> v1.2.1
Updating alloy-trie v0.9.1 -> v0.9.2
Updating alloy-tx-macros v1.1.3 -> v1.2.1
Unchanged annotate-snippets v0.12.5 (available: v0.12.10)
Unchanged anstyle-svg v0.1.11 (available: v0.1.12)
Downgrading aws-smithy-runtime v1.9.6 -> v1.9.5
Updating axum-core v0.5.5 -> v0.5.6
Updating cc v1.2.50 -> v1.2.51
Updating derive_more v2.1.0 -> v2.1.1
Updating derive_more-impl v2.1.0 -> v2.1.1
Updating dtoa v1.0.10 -> v1.0.11
Updating find-msvc-tools v0.1.5 -> v0.1.6
Unchanged generic-array v0.14.7 (available: v0.14.9)
Unchanged icu_collections v2.0.0 (available: v2.1.1)
Unchanged icu_normalizer v2.0.1 (available: v2.1.1)
Unchanged icu_normalizer_data v2.0.0 (available: v2.1.1)
Unchanged icu_properties v2.0.2 (available: v2.1.2)
Unchanged icu_properties_data v2.0.1 (available: v2.1.2)
Unchanged idna_adapter v1.1.0 (available: v1.2.1)
Updating itoa v1.0.15 -> v1.0.17
Updating jiff v0.2.16 -> v0.2.17
Updating jiff-static v0.2.16 -> v0.2.17
Updating libredox v0.1.11 -> v0.1.12
Updating libz-rs-sys v0.5.4 -> v0.5.5
Unchanged matchit v0.8.4 (available: v0.8.6)
Unchanged mdbook v0.4.52 (available: v0.5.2)
Updating portable-atomic v1.12.0 -> v1.13.0
Updating proc-macro2 v1.0.103 -> v1.0.104
Unchanged protobuf v3.3.0 (available: v3.7.2)
Unchanged protobuf-support v3.3.0 (available: v3.7.2)
Unchanged rand v0.8.5 (available: v0.9.2)
Unchanged ratatui v0.29.0 (available: v0.30.0)
Updating reqwest v0.12.26 -> v0.12.28
Updating ruint v1.17.0 -> v1.17.1
Updating rustix v1.1.2 -> v1.1.3
Updating ryu v1.0.21 -> v1.0.22
Updating schemars v1.1.0 -> v1.2.0
Updating schemars_derive v1.1.0 -> v1.2.0
Updating serde_json v1.0.145 -> v1.0.148
Updating signal-hook-registry v1.4.7 -> v1.4.8
Updating syn-solidity v1.5.1 -> v1.5.2
Updating tempfile v3.23.0 -> v3.24.0
Unchanged trezor-client v0.1.4 (available: v0.1.5)
Unchanged unicode-width v0.2.0 (available: v0.2.2)
Unchanged vergen v8.3.2 (available: v9.0.6)
Updating zlib-rs v0.5.4 -> v0.5.5
Adding zmij v1.0.0
note: to see how you depend on a package, run `cargo tree --invert <dep>@<ver>`
* touchups
* touchups
---------
Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* Update flake.lock (#12939)
flake.lock: Update
Flake lock file updates:
• Updated input 'fenix':
'github:nix-community/fenix/16642c5' (2025-12-20)
→ 'github:nix-community/fenix/3479aaf' (2025-12-27)
• Updated input 'fenix/rust-analyzer-src':
'github:rust-lang/rust-analyzer/ea1d299' (2025-12-18)
→ 'github:rust-lang/rust-analyzer/8c5a68e' (2025-12-26)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/7d853e5' (2025-12-19)
→ 'github:NixOS/nixpkgs/3edc4a3' (2025-12-27)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
* fix(chisel): uninitalized variables (#12937)
* chore(deps): bump Swatinem/rust-cache from 2.8.1 to 2.8.2 (#12919)
Bumps [Swatinem/rust-cache](https://github.com/swatinem/rust-cache) from 2.8.1 to 2.8.2.
- [Release notes](https://github.com/swatinem/rust-cache/releases)
- [Changelog](https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md)
- [Commits](https://github.com/swatinem/rust-cache/compare/f13886b937689c021905a6b90929199931d60db1...779680da715d629ac1d338a641029a2f4372abb5)
---
updated-dependencies:
- dependency-name: Swatinem/rust-cache
dependency-version: 2.8.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* chore(deps): bump peter-evans/create-pull-request from 7.0.11 to 8.0.0 (#12918)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7.0.11 to 8.0.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/22a9089034f40e5a961c8808d113e2c98fb63676...98357b18bf14b5342f975ff684046ec3b2a07725)
---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
dependency-version: 8.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: grandizzy <38490174+grandizzy@users.noreply.github.com>
* chore: sepolia rpc url (#12945)
chore: sepolia rpc url private
* chore(deps): bump crate-ci/typos from 1.40.0 to 1.40.1 (#12949)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.40.0 to 1.40.1.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/2d0ce569feab1f8752f1dde43cc2f2aa53236e06...1a319b54cc9e3b333fed6a5c88ba1a90324da514)
---
updated-dependencies:
- dependency-name: crate-ci/typos
dependency-version: 1.40.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump DeterminateSystems/determinate-nix-action from 3.15.0 to 3.15.1 (#12950)
chore(deps): bump DeterminateSystems/determinate-nix-action
Bumps [DeterminateSystems/determinate-nix-action](https://github.com/determinatesystems/determinate-nix-action) from 3.15.0 to 3.15.1.
- [Release notes](https://github.com/determinatesystems/determinate-nix-action/releases)
- [Commits](https://github.com/determinatesystems/determinate-nix-action/compare/95732e95d70db3ba1e0adc26a63c5e0375aba78c...1d699fc25db3f9e079cd2f168ca007a4183389be)
---
updated-dependencies:
- dependency-name: DeterminateSystems/determinate-nix-action
dependency-version: 3.15.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump taiki-e/install-action from 2.65.1 to 2.65.7 (#12951)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.65.1 to 2.65.7.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/b9c5db3aef04caffaf95a1d03931de10fb2a140f...4c6723ec9c638cccae824b8957c5085b695c8085)
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.65.7
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix(config): err on unknown profile (#12946)
* test: remove duplicate Issue2851 test (#12953)
* chore(cheats): make sign(Wallet) pure (#12912)
* chore(cheats): make sign(Wallet) pure
* ignore
---------
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: grandizzy <38490174+grandizzy@users.noreply.github.com>
* fix(evm): use timestamp-based blob base fee calculation (#12959)
* fix(evm): use timestamp-based blob base fee calculation
* chore: use patch
* Now BPO1 is default
* bump to hardforks to 0.4.7
---------
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* fix(config): reject bare versions in compilation restrictions (#12955)
fmt
Co-authored-by: tefyosL-sol <gasgoblinn@gmail.com>
* Revert "fix(config): err on unknown profile (#12946)" (#12964)
This reverts commit 6ff4b52e2e572e93d0cd81591b1bd0e6ad9ed507.
* fix(anvil): use B256 instead of TxHash for block hash parameters (#12961)
Update mod.rs
* Update crates/config/src/compilation.rs
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
Co-authored-by: grandizzy <38490174+grandizzy@users.noreply.github.com>
Co-authored-by: cakevm <cakevm@proton.me>
Co-authored-by: Theodore Solis <gasgobling@gmail.com>
Co-authored-by: tefyosL-sol <gasgoblinn@gmail.com>
Co-authored-by: Desant pivo <pivasdesant@gmail.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Create ci-web3-gamefi.yml (#217) (#289)
Introduce a basic CircleCI pipeline for the web3 GameFi project, providing a custom Docker executor and a stub job within a workflow.
CI:
Add CircleCI config file ci-web3-gamefi.yml with version 2.1 pipeline
Define a custom executor using the cimg/base:stable Docker image with Docker Hub credentials
Create a web3-defi-game-project- job and integrate it into a my-custom-workflow
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Merge pull request #47 (#290)
* Add .circleci/config.yml
* Updated config.yml
* Updated config.yml
* Updated config.yml
* Update test.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 19: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update test.yml (#46)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* chore(deps): bump revm to 24.0.0 (#10601)
* feat: implement add_balance endpoint (#10636)
* fix(bindings): ensure forge bind generates snake_case file names (#10622)
* fix(bindings): ensure forge bind generates snake_case file names
* refactor: use heck crate for snake_case conversion
---------
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* chore: standardize lint help + validate docs existance (#10639)
* feat(cast mktx): add support for "--ethsign" option (#10641)
- Sign transactions using "eth_signTransaction" on local node with unlocked accounts.
- Same TX building logic as in "cast send --unlocked".
- Added a test case to validate the new functionality.
* chore(wallets): improve error message for signer instantiation failure (#10646)
chore(wallets): improve error message on signer instantiation failure
* chore: replaced anvil hardforks with alloy hardforks (#10612)
* chore: replaced anvil hardforks with alloy hardforks
* fixes
* fixes
* fixes
* removed redundant op and alloy hardforks enum
* fixes
* fixes
* bumped alloy hardforks and kept default to prague and isthmus
* bumped alloy-hardforks and fixes
---------
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* fix(`anvil`): latest evm version should be prague (#10653)
* fix(`anvil`): latest evm version should be prague
* fix test
* nit
* chore(deps): bump tracing-subscriber (#51)
Bumps the cargo group with 1 update in the / directory: [tracing-subscriber](https://github.com/tokio-rs/tracing).
Updates `tracing-subscriber` from 0.3.19 to 0.3.20
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.3.19...tracing-subscriber-0.3.20)
---
updated-dependencies:
- dependency-name: tracing-subscriber
dependency-version: 0.3.20
dependency-type: direct:production
dependency-group: cargo
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Update test.yml (#52)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update docker-image.yml (#53)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create ci_cargo.yml (#59)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create web3_defi_gamefi.yml (#61)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update dependencies.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 21: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Update dependencies.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update dependencies.yml (#247)
Improve readability of the GitHub Actions dependencies workflow by adjusting whitespace and adding blank lines
CI:
Add blank line before the workflow name declaration
Insert blank line after the scheduled cron job entry
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update dependencies.yml (#248)
CI:
Remove extraneous blank line in .github/workflows/dependencies.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update test.yml (#249)
CI:
Remove dev branch from test workflow triggers
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
Co-authored-by: pistomat <pistomat@users.noreply.github.com>
Co-authored-by: zark <77061323+zarkk01@users.noreply.github.com>
Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com>
Co-authored-by: Mablr <59505383+mablr@users.noreply.github.com>
Co-authored-by: Ishika Choudhury <117741714+Rimeeeeee@users.noreply.github.com>
Co-authored-by: Yash Atreya <44857776+yash-atreya@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Update crates/evm/evm/src/executors/corpus.rs
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Foundry/master test ux (#295)
* Update ci.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update ci.yml (#211)
This pull request updates the Rust version in the CircleCI workflow to 1.89.0. This is a good maintenance task to keep the CI environment up-to-date. I have one suggestion regarding the Docker image tag to potentially simplify future maintenance by automatically adopting patch releases. Overall, the change is correct and beneficial.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update test.yml (#250)
CI:
Include the 'main' branch in the push event triggers for the test workflow
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
---------
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* fix(fmt): handle trailing coments between base contracts (#296) (#299)
@0xrusowsky @Dargon789 fix(fmt): handle trailing coments between base contracts Revert 142 master (#296)
* Create ci_cargo.yml (#72)
* Create config.yml
* Rename ci_cargo.yml to cargo.yml
* fix(fmt): handle trailing coments between base contracts (#12127)
* fix(fmt): account for ternary operators when estimating size
* fix(fmt): handle comments between inherited base contracts
* test: layout + base inheritance
* Revert "fix(fmt): handle trailing coments between base contracts (#12127)"
This reverts commit b8b5fbb83fa2436063cebc34ddf900abc972b11d.
* Update cargo.yml (#172)
CI/CD Configuration Update: The CircleCI configuration file, .circleci/cargo.yml, has been updated to use a newer version of the Rust Docker image.
Rust Toolchain Version Bump: The cimg/rust Docker image version has been incremented from 1.88.0 to 1.89.0, ensuring builds and tests run with the latest stable Rust toolchain.
* Fix cloning of compiler settings for Vyper input
Replace context.clone().compiler_settings.vyper with
context.compiler_settings.vyper.clone() to avoid unnecessary
cloning of the entire VerificationContext. This reduces memory
allocations when creating VyperInput instances.
Applied to both etherscan and sourcify verification providers.
* Remove duplicate logic in TxSigner::address() implementations
---------
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com>
Co-authored-by: Gengar <creeptogengar@gmail.com>
Co-authored-by: Aganis <aganisgash@gmail.com>
* Update CircleCI configuration for dev stage (#300)
fix Automatic reruns provide a safety net for your CI/CD pipelines by automatically retrying failed steps and/or workflows. Automatic reruns help teams maintain productivity by reducing the need for manual intervention when steps and workflows fail due to temporary issues.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* EIP-4788 implementation
* formatting
* add beacon block root tests
* Update crates/evm/evm/src/executors/trace.rs
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Update crates/cast/src/cmd/run.rs
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* feat: upgrade @types/node from 24.10.4 to 25.0.2
Snyk has created this PR to upgrade @types/node from 24.10.4 to 25.0.2.
See this package in npm:
@types/node
See this project in Snyk:
https://app.snyk.io/org/dargon789/project/8da85645-409e-46fa-bd46-9b58e7905fb8?utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr
* fix: `svm fails to download solc 0.8.33 on linux/arm64`, bump `svm-rs` (#13007) (#309)
bump svm-rs
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* Ethereumjs/master (#310)
* Potential fix for code scanning alert no. 19: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 61: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 74: Artifact poisoning
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create config.yml (#105)
* Create cargo.yml (#106)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .github/workflows/docker-image.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Rename ci_cargo.yml to cargo.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* fix(fmt): handle trailing coments between base contracts (#12127)
* fix(fmt): account for ternary operators when estimating size
* fix(fmt): handle comments between inherited base contracts
* test: layout + base inheritance
* Revert "fix(fmt): handle trailing coments between base contracts (#12127)"
This reverts commit b8b5fbb83fa2436063cebc34ddf900abc972b11d.
* Update cargo.yml (#172)
CI/CD Configuration Update: The CircleCI configuration file, .circleci/cargo.yml, has been updated to use a newer version of the Rust Docker image.
Rust Toolchain Version Bump: The cimg/rust Docker image version has been incremented from 1.88.0 to 1.89.0, ensuring builds and tests run with the latest stable Rust toolchain.
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Revert "Create cargo.yml (#106)"
This reverts commit 251a2b4fce0c50e3426ffb2022d9abef5b948fa9.
* Create cargo.yml (#213)
https://github.com/apps/gemini-code-assist
Code Review
This pull request introduces a CircleCI workflow to automate formatting checks and tests. My review has identified two main issues in the configuration: redundant steps that would unnecessarily increase job execution time, and a mismatch between the Rust version in the CI environment and the one specified in the project's Cargo.toml. I've provided suggestions to fix these issues for a more efficient and consistent CI process.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Create docker.yml
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Remove duplicate logic in TxSigner::address() implementations
* fix(fmt): handle trailing coments between base contracts (#296)
@0xrusowsky @Dargon789 fix(fmt): handle trailing coments between base contracts Revert 142 master (#296)
* Create ci_cargo.yml (#72)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create config.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Rename ci_cargo.yml to cargo.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* fix(fmt): handle trailing coments between base contracts (#12127)
* fix(fmt): account for ternary operators when estimating size
* fix(fmt): handle comments between inherited base contracts
* test: layout + base inheritance
* Revert "fix(fmt): handle trailing coments between base contracts (#12127)"
This reverts commit b8b5fbb83fa2436063cebc34ddf900abc972b11d.
* Update cargo.yml (#172)
CI/CD Configuration Update: The CircleCI configuration file, .circleci/cargo.yml, has been updated to use a newer version of the Rust Docker image.
Rust Toolchain Version Bump: The cimg/rust Docker image version has been incremented from 1.88.0 to 1.89.0, ensuring builds and tests run with the latest stable Rust toolchain.
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Fix cloning of compiler settings for Vyper input
Replace context.clone().compiler_settings.vyper with
context.compiler_settings.vyper.clone() to avoid unnecessary
cloning of the entire VerificationContext. This reduces memory
allocations when creating VyperInput instances.
Applied to both etherscan and sourcify verification providers.
* Remove duplicate logic in TxSigner::address() implementations
---------
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com>
Co-authored-by: Gengar <creeptogengar@gmail.com>
Co-authored-by: Aganis <aganisgash@gmail.com>
---------
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: 0xrusowsky <90208954+0xrusowsky@users.noreply.github.com>
Co-authored-by: Aganis <aganisgash@gmail.com>
Co-authored-by: Gengar <creeptogengar@gmail.com>
* Forge/master (#311)
* Potential fix for code scanning alert no. 19: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 61: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Potential fix for code scanning alert no. 74: Artifact poisoning
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create config.yml (#105)
* Create cargo.yml (#106)
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Delete .github/workflows/docker-image.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Rename ci_cargo.yml to cargo.yml
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* fix(fmt): handle trailing coments between base contracts (#12127)
* fix(fmt): account for ternary operators when estimating size
* fix(fmt): handle comments between inherited base contracts
* test: layout + base inheritance
* Revert "fix(fmt): handle trailing coments between base contracts (#12127)"
This reverts commit b8b5fbb83fa2436063cebc34ddf900abc972b11d.
* Update cargo.yml (#172)
CI/CD Configuration Update: The CircleCI configuration file, .circleci/cargo.yml, has been updated to use a newer version of the Rust Docker image.
Rust Toolchain Version Bump: The cimg/rust Docker image version has been incremented from 1.88.0 to 1.89.0, ensuring builds and tests run with the latest stable Rust toolchain.
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Revert "Create cargo.yml (#106)"
This reverts commit 251a2b4fce0c50e3426ffb2022d9abef5b948fa9.
* Cr…
Review or Edit in CodeSandboxOpen the branch in Web Editor • VS Code • Insiders |
There was a problem hiding this comment.
Sorry @Dargon789, you have reached your weekly rate limit of 500000 diff characters.
Please try again later or upgrade to continue using Sourcery
This comment was marked as resolved.
This comment was marked as resolved.
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
There was a problem hiding this comment.
Code Review
This pull request introduces a linter framework, the foundry-config-spec crate, and security hardening for file operations and npm registry URLs. It also adds various CircleCI configurations, issue templates, and a sample project. Feedback identifies invalid and redundant CircleCI configurations, a logic error in a path validation security check, and minor typos in the linter documentation.
| for entry in std::fs::read_dir(&root_path)? { | ||
| let entry = entry?; | ||
| let path = entry.path(); | ||
| if path.is_dir() { | ||
| std::fs::remove_dir_all(&path).ok(); | ||
| // Canonicalize the entry to prevent directory traversal | ||
| let canon = match path.canonicalize() { | ||
| Ok(p) => p, | ||
| Err(_) => continue, // Skip if unable to canonicalize | ||
| }; | ||
| // Ensure canonicalized path stays strictly within root_path (TempProject root) | ||
| if !canon.starts_with(&root_path) { |
There was a problem hiding this comment.
The starts_with check on line 139 will likely fail if root_path is a relative path, because path.canonicalize() returns an absolute path. To ensure the security check against directory traversal works as intended, root_path should be canonicalized before the loop so that both paths being compared are absolute.
| for entry in std::fs::read_dir(&root_path)? { | |
| let entry = entry?; | |
| let path = entry.path(); | |
| if path.is_dir() { | |
| std::fs::remove_dir_all(&path).ok(); | |
| // Canonicalize the entry to prevent directory traversal | |
| let canon = match path.canonicalize() { | |
| Ok(p) => p, | |
| Err(_) => continue, // Skip if unable to canonicalize | |
| }; | |
| // Ensure canonicalized path stays strictly within root_path (TempProject root) | |
| if !canon.starts_with(&root_path) { | |
| let root_path = root_path.canonicalize()?; | |
| for entry in std::fs::read_dir(&root_path)? { | |
| let entry = entry?; | |
| let path = entry.path(); | |
| // Canonicalize the entry to prevent directory traversal | |
| let canon = match path.canonicalize() { | |
| Ok(p) => p, | |
| Err(_) => continue, // Skip if unable to canonicalize | |
| }; | |
| // Ensure canonicalized path stays strictly within root_path (TempProject root) | |
| if !canon.starts_with(&root_path) { |
| /// | ||
| /// # Required Methods | ||
| /// | ||
| /// - `lint`: Scans the provided source files emitting a daignostic for lints found. |
| } | ||
|
|
||
| /// Trait for lints that operate directly on the AST. | ||
| /// Its methods mirror `solar_ast::visit::Visit`, with the addition of `LintCotext`. |
clippy: warn on flat_map_option Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
The P256VERIFY precompile gas cost was reduced from 6900 to 3450, but the flaky_osaka_can_run_p256_precompile snapshot still had the old value hardcoded. Replace with [..] for consistency with the rest of the snapshot. Closes foundry-rs#14282 Closes foundry-rs#14283 Amp-Thread-ID: https://ampcode.com/threads/T-019d8681-ae7d-712f-b4e7-eb6f595f82e3 Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* clippy: warn on flat_map_option Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * clippy: warn on equatable_if_let Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
clippy: warn on large_stack_frames Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
clippy: warn on needless_continue Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
…ry-rs#14286) clippy: warn on trailing_empty_array, trait_duplication_in_bounds, trivial_regex, tuple_array_conversions, unnecessary_struct_initialization, unused_peekable Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Co-authored-by: Mablr <59505383+mablr@users.noreply.github.com>
clippy: warn on unnecessary_self_imports Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
…ry-rs#14292) * fix(anvil): convert evm_setTime input from millis to seconds before use evm_setTime accepts a JavaScript-style millisecond timestamp for Ganache compatibility, but the offset was computed by subtracting current_call_timestamp (seconds) from the raw millisecond input. Convert the input to seconds first, then compute the offset correctly. Co-Authored-By: cui <1579517+cuiweixie@users.noreply.github.com> Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix: move millis-to-seconds conversion to RPC dispatch layer The internal evm_set_time API accepts seconds (matching internal tests), while the JSON-RPC evm_setTime method accepts milliseconds for Ganache compatibility. Move the Duration::from_millis conversion to the RPC handler so both code paths are correct. Co-Authored-By: cui <1579517+cuiweixie@users.noreply.github.com> Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * fix: auto-detect seconds vs milliseconds in evm_setTime Timestamps above 1e12 are treated as milliseconds (Ganache compat) and converted to seconds; values at or below that threshold are treated as seconds directly. This avoids silently downcasting a seconds timestamp to a nonsensical value. Co-Authored-By: cui <1579517+cuiweixie@users.noreply.github.com> Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> * style: fix rustfmt Co-Authored-By: cui <1579517+cuiweixie@users.noreply.github.com> Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> --------- Co-authored-by: cui <1579517+cuiweixie@users.noreply.github.com> Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
clippy: enable `string_lit_as_bytes` Amp-Thread-ID: https://ampcode.com/threads/T-019d8707-07ff-77cf-b7f2-5dc0f64200ec Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
clippy: enable `option_as_ref_cloned` Amp-Thread-ID: https://ampcode.com/threads/T-019d8707-07ff-77cf-b7f2-5dc0f64200ec Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
* fix(anvil): guard deposit tx parsing in Tempo mode * use the ensure_op_deposits_active check
* clippy: enable `missing_const_for_fn` Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Amp-Thread-ID: https://ampcode.com/threads/T-019d8707-07ff-77cf-b7f2-5dc0f64200ec * fix: revert const on feature-gated non-const functions Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Amp-Thread-ID: https://ampcode.com/threads/T-019d8707-07ff-77cf-b7f2-5dc0f64200ec --------- Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
clippy: enable `useless_let_if_seq` Amp-Thread-ID: https://ampcode.com/threads/T-019d8707-07ff-77cf-b7f2-5dc0f64200ec Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
…ed in path expression' Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
… into dargon789/gamefi
) Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.44.0 to 1.45.0. - [Release notes](https://github.com/crate-ci/typos/releases) - [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md) - [Commits](crate-ci/typos@631208b...cf5f1c2) --- updated-dependencies: - dependency-name: crate-ci/typos dependency-version: 1.45.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
clippy: enable `needless_for_each` Amp-Thread-ID: https://ampcode.com/threads/T-019d8707-07ff-77cf-b7f2-5dc0f64200ec Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Motivation
Solution
PR Checklist