Releases: foundry-rs/foundry
Releases · foundry-rs/foundry
Nightly (2025-10-21)
Other
- chore(flake): update flake (#12183) by @beeb
- chore(benches): drop unused tokio dependency (#12186) by @MamunC0der
- chore(
deps): bump alloy-hardforks, alloy-core, proptest (#12191) by @zerosnacks - chore: ignore falky celo test, update Cargo.lock (#12210) by @grandizzy
- fix(fmt): do not add underscores on fractional part with exponent (#12195) by @0xrusowsky
- fix(coverage): do not account abstract contract items (#12202) by @grandizzy
- fix(invariant): revisit sequence indices and respect shrink limit (#12180) by @0xalpharush
- fix(forge): Avoid trace confusion on functions with shared signature (#12169) by @marcvernet31
- chore(deps): update soldeer (#12184) by @beeb
- chore(deps): bump taiki-e/install-action from 2.62.28 to 2.62.33 (#12208) by @dependabot[bot]
- chore(deps): bump softprops/action-gh-release from 2.3.4 to 2.4.1 (#12207) by @dependabot[bot]
Full Changelog:
Nightly (2025-10-21)
Other
- chore(flake): update flake (#12183) by @beeb
- chore(benches): drop unused tokio dependency (#12186) by @MamunC0der
- chore(
deps): bump alloy-hardforks, alloy-core, proptest (#12191) by @zerosnacks - chore: ignore falky celo test, update Cargo.lock (#12210) by @grandizzy
- fix(fmt): do not add underscores on fractional part with exponent (#12195) by @0xrusowsky
- fix(coverage): do not account abstract contract items (#12202) by @grandizzy
- fix(invariant): revisit sequence indices and respect shrink limit (#12180) by @0xalpharush
- fix(forge): Avoid trace confusion on functions with shared signature (#12169) by @marcvernet31
- chore(deps): update soldeer (#12184) by @beeb
- chore(deps): bump taiki-e/install-action from 2.62.28 to 2.62.33 (#12208) by @dependabot[bot]
- chore(deps): bump softprops/action-gh-release from 2.3.4 to 2.4.1 (#12207) by @dependabot[bot]
- feat(anvil): add
/eth/v1/beacon/blobsbeacon endpoint (#12182) by @mablr - chore(deps): bump actions/setup-node from 5 to 6 (#12206) by @dependabot[bot]
- chore: Remove redundant Bytes inner conversions in fork and mem backends (#12199) by @phrwlk
- feat: add Sourcify trace identifier (#11917) by @DaniPopes
- fix: handle directory creation errors in sol-macro-gen (#12198) by @DeVikingMark
- fix: Simplify equal-case formatting in
fmt_changeby usingto_string()(#12193) by @maximevtush - fix: Remove redundant
.to_string()afterformat!in test summary table (#12192) by @maximevtush - refactor(config): remove etherscan_api_key fallback from get_rpc_url (#12179) by @zeevick10
- chore(
testdata): fix solidity warnings: shadowing of builtin symbol and unhandled low-level calls (#12189) by @zerosnacks - doc(cheats):
deployCodereverts w/ unlinked artifact libs (#12212) by @0xrusowsky - chore: bump v1.4.3 (#12213) by @grandizzy
- fix(forge): show backtrace line only on -vvvvv (#12211) by @grandizzy
- chore: readd table tests (#12219) by @grandizzy
- fix(coverage): exclude only virtual fns without impl (#12216) by @grandizzy
Full Changelog:
Nightly (2025-10-20)
Other
- fix(fmt): inline call options when they fit (#12172) by @0xrusowsky
- chore(deps): weekly
cargo update(#12174) by @github-actions[bot] - fix(anvil): get account info from db when node block > fork block (#12175) by @grandizzy
Full Changelog:
v1.4.2
Foundry v1.4.2
Foundry v1.4.2 is a bugfix release for forge fmt and anvil.
Anvil Fixes
- fix(anvil): eth_getAccountInfo check if predates fork inclusive (#12101) by @grandizzy
Forge Fixes
- fix(doc): follow tab width fmt config (#12103) by @grandizzy
- fix(fmt): account for ternary operators when estimating size (#12104) by @0xrusowsky
- fix(fmt): properly handle multiline_func_header = "all" + bump alloy (#12110) by @0xrusowsky
- fix(fmt): ensure no underscores in yul number literals (#12112) by @0xrusowsky
- fix(fmt): handle trailing coments between base contracts (#12127) by @0xrusowsky
- fix(fmt): filter libs when recursing (#12119) by @0xrusowsky
- fix(fmt): break try stmts in a fn header-like fashion (#12131) by @0xrusowsky
- fix(fmt): use nbsp if LHS-most element fits (#12135) by @0xrusowsky
- fix(fmt): prioritize parenthesis breaks in emit and revert stmts (#12147) by @0xrusowsky
Full Changelog:
Nightly (2025-10-19)
Anvil Features
Other
Full Changelog:
Nightly (2025-10-18)
Other
- test: refactor testdata/ tests to be run in
forge test(#12049) by @DaniPopes - fix(anvil): always disable nonce check for
eth_calls (#12144) by @grandizzy - deps: bump deps (#12149) by @rplusq
- ci: run main CI on merge queue (#12161) by @DaniPopes
- ci: remove CARGO_PROFILE_DEV_DEBUG (#12160) by @DaniPopes
- ci: re-add runner.os to cache (#12157) by @DaniPopes
- ci: bump python to 3.14 (#12158) by @DaniPopes
- ci: enable bun on Windows (#12159) by @DaniPopes
- ci: re-add rust-cache (#12156) by @DaniPopes
- ci: don't upload docs unless deploying them (#12163) by @DaniPopes
- ci: disable Windows on PRs (#12162) by @DaniPopes
Full Changelog:
Nightly (2025-10-17)
Other
- test: re-enable can_read_write_cache (#12141) by @DaniPopes
- test: re-enable external tests with fork block (#12142) by @DaniPopes
- perf(evm): reduce rpc calls when instantiating a fork environment (#12145) by @DaniPopes
- chore: re-use the same provider when creating a fork (#12143) by @DaniPopes
- fix(evm): forward selfdestruct to inner inspectors in InspectorStackRefMut (#12128) by @GarmashAlex
- fix(fmt): prioritize parenthesis breaks in emit and revert stmts (#12147) by @0xrusowsky
Full Changelog:
Nightly (2025-10-17)
Other
- Fix GCP env var names (#12129) by @MamunC0der
- test: log TestCommand exit status, output (#12137) by @DaniPopes
- chore(meta): fix method resolution in async tests (#12136) by @DaniPopes
- test: lower timeout for normal tests (#12138) by @DaniPopes
- fix(fmt): use nbsp if LHS-most element fits (#12135) by @0xrusowsky
- chore: improve unverifiable contracts warn (#12139) by @grandizzy
- test: optimize backtrace deps (#12140) by @DaniPopes
Full Changelog:
Nightly (2025-10-16)
Other
- feat(forge): add bypass prevrandao (#12125) by @grandizzy
- fix(fmt): filter libs when recursing (#12119) by @0xrusowsky
- fix(fmt): break try stmts in a fn header-like fashion (#12131) by @0xrusowsky
Full Changelog:
Nightly (2025-10-16)
Other
- chore(cast): remove unclear
prettyarg forprint_storage(#11976) by @mablr - refactor(anvil): introduce get_block_with_hash and convert_block_with_hash (#11939) by @silvekkk
- feat(forge): enhance gas snapshot diff with configurable sorting and improved output (#11974) by @silvekkk
- feat(lint): emit suggestions for
named_struct_fieldslint (#11982) by @mablr - fix(doc): reuse solar sema compiler (#11980) by @grandizzy
- fix(
forge): apply correct permission scoping in workflow templates (#11986) by @zerosnacks - fix(chisel): disable compiler optimizations (#11990) by @DaniPopes
- refactor(chisel): remove gas limit binary search (#11989) by @DaniPopes
- feat(cheats): preserve struct order when parsing JSON objects (#11612) by @0xrusowsky
- chore(docs): require contributors to disclose their use of AI (#11988) by @zerosnacks
- chore(deps): bump softprops/action-gh-release from 2.3.3 to 2.3.4 (#11999) by @dependabot[bot]
- chore(deps): bump taiki-e/install-action from 2.62.13 to 2.62.21 (#11998) by @dependabot[bot]
- chore(deps): bump crate-ci/typos from 1.36.3 to 1.38.0 (#11997) by @dependabot[bot]
- fix(
ci):create-an-issuein release workflow is pinned to incorrect hash (#12004) by @zerosnacks - fix(cast): clean up SenderKind enum and remove redundant checks (#12003) by @strmfos
- chore(
ci): integrate CodeQL into regulartest.ymlworkflow and mark as requirement for ci-success (#12007) by @zerosnacks - fix(forge): dynamic test linking should follow pranks (#12005) by @grandizzy
- ci: cache testdata project (#12009) by @DaniPopes
- fix(fmt): ensure leading blank lines are always removed (#12002) by @0xrusowsky
- feat(forge): install soldeer dependencies (#11994) by @wellnana
- ci: add test name to cache key (#12010) by @DaniPopes
- chore(test): add hints after test failed (#11995) by @silvekkk
- chore(tests): bump forge-std version (#12017) by @github-actions[bot]
- fix: improve error handling in available_senders with logging and deduplication (#12011) by @CreeptoGengar
- ci: use gha runner for macos arm releases (#12021) by @DaniPopes
- fix: replace Some(URL) with URL during installation output (#12024) by @milosdjurica
- docs(networks): fix doc heading (#12028) by @onbjerg
- chore: make network flags exclude each other (#12027) by @onbjerg
- fix(fmt): ensure commasep breaks with final trailing cmnt (#12031) by @0xrusowsky
- refactor: avoid cloning broadcast transactions in reader (#12030) by @reject-i
- deps: bump deps (#12033) by @onbjerg
- chore: rm
NodeConfig::with_optimism(#12035) by @onbjerg - chore: rm
NodeConfig::with_celo(#12034) by @onbjerg - refactor: make
NetworkConfigfields private (#12037) by @onbjerg - fix(build): use output graph/artifacts rather than sources (#12019) by @0xrusowsky
- feat(cheatcodes): add setEvmVersion / getEvmVersion (#12014) by @grandizzy
- chore: rm extra
--celoarg (#12038) by @onbjerg - fix(forge): handle overloaded functions correctly in doc (#12040) by @wellnana
- feat(forge): add --rerun-failed flag to watch mode for faster TDD feedback (#11993) by @silvekkk
- chore(meta): remove unused SolidityGeneration dir (#12053) by @DaniPopes
- chore: add more profile.dev optimizations (#12054) by @DaniPopes
- fix: use blobparams for blob fee calc (#12056) by @mattsse
- fix(forge): dynamic test linking for try catch with custom return (#12050) by @grandizzy
- fix(fmt): refine logic over comments between uninformed commasep (#12055) by @0xrusowsky
- chore(meta): remove unused testdata/default/script (#12061) by @DaniPopes
- chore: make
SourceData::contract_definitionspublic (#12058) by @cakevm - chore(deps): weekly
cargo update(#12064) by @github-actions[bot] - fix(cast): cast call --json formatting (#12060) by @0xferrous
- fix(forge): verify bytecode should replay txes (#12068) by @grandizzy
- fix(config): normalize test_failures_file path in canonic_at() (#12071) by @silvekkk
- chore: add some more logs to forge, nits (#12074) by @DaniPopes
- fix(forge): apply evm version set in setup and test constructor (#12069) by @grandizzy
- fix: tighten BroadcastReader directory validation (#12057) by @rnkrtt
- fix(anvil): set envelope for non deposit tx in debug tracers (#12080) by @grandizzy
- chore: fix setEvmVersion flaky test, same order (#12084) by @grandizzy
- chore: bump v1.4.1 (#12083) by @grandizzy
- feat(forge): support always_use_create_2_factory in inline config (#12086) by @DaniPopes
- chore(deps): bump github/codeql-action from 3 to 4 (#12091) by @dependabot[bot]
- chore(deps): bump taiki-e/install-action from 2.62.21 to 2.62.28 (#12090) by @dependabot[bot]
- chore(deps): bump crate-ci/typos from 1.38.0 to 1.38.1 (#12089) by @dependabot[bot]
- chore(deps): bump DeterminateSystems/determinate-nix-action from 3.11.2 to 3.11.3 (#12088) by @dependabot[bot]
- feat(cheats): RLP (#11232) by @qiweiii
- chore(deps): bump mikepenz/release-changelog-builder-action from 5.4.1 to 6.0.0 (#12087) by @dependabot[bot]
- fix(fmt): don't normalize single-line non-doc block cmnts (#12078) by @0xrusowsky
- chore(cheat): load and touch new origin in broadcast call (#12096) by @grandizzy
- fix(cast): use pretty JSON for txpool commands (#12099) by @mattsse
- fix(doc): follow tab width fmt config (#12103) by @grandizzy
- fix(fmt): account for ternary operators when estimating size (#12104) by @0xrusowsky
- fix(anvil): eth_getAccountInfo check if predates fork inclusive (#12101) by @grandizzy
- fix(cheatcodes): use
make_acc_non_emptyinmockCalls_1Call,mockCall_1Call,mockCall_3Callfor consistency (#11443) by @aganisgash - fix(fmt): properly handle multiline_func_header = "all" + bump alloy (#12110) by @0xrusowsky
- fix(fmt): ensure no underscores in yul number literals (#12112) by @0xrusowsky
- chore: bump version to 1.4.2 (#12113) by @grandizzy
- chore(script): avoid cloning script sequences when writing sensitive output (#12085) by @Bilogweb3
- fix(fmt): handle trailing coments between base contracts (#12127) by @0xrusowsky