Releases: foundry-rs/foundry
Release list
Nightly (2026-08-22)
Other
- feat(debugger): label storage slots (#16246) by @figtracer
- fix(cast): decode call revert errors (#16308) by @mattsse
- perf(symbolic): speed up direct contradiction checks (#16311) by @figtracer
- perf(symbolic): trim model evaluation cache (#16313) by @figtracer
- fix(doc): preserve longer code fences (#16279) by @racequite
- fix(anvil): redact fork credentials (#16223) by @stevencartavia
- fix(doc): reject invalid backtick fences (#16314) by @mablr
- fix(anvil): preserve fork node info errors (#16295) by @mablr
- feat(chisel): inspect inline assembly expressions (#16310) by @figtracer
- fix(fmt): space comments inside an empty contract or struct body (#16272) by @mattsse
- perf(symbolic): reuse solver normalization across queries (#16316) by @figtracer
- fix(fuzz): include splice endpoints (#16320) by @stevencartavia
- fix(fuzz): preserve string fixtures (#16319) by @stevencartavia
Full Changelog:
nightly-269c725512d1c0fad024e78d0b8edcf9a4f05105...nightly-e469863b1ac3f2d9d48f9d25d068a14861060cb3
Nightly (2026-08-23)
Other
- refactor(anvil): use native handler futures (#16328) by @mattsse
- refactor: qualify Monad-only imports (#16327) by @mattsse
Full Changelog:
nightly-e469863b1ac3f2d9d48f9d25d068a14861060cb3...nightly-2a5df2c4d8123a8b9df63a848c146a6085426c27
Nightly (2026-08-21)
Other
- fix(fmt): keep the comments preceding a disabled item (#16271) by @mattsse
- feat(evm): bind Monad's journal state to
ContextTr::Journal(#16262) by @mablr - feat(cheatcodes): stabilize storage hooks (#16286) by @mablr
- feat(cheatcodes): add typed FFI outputs (#16287) by @figtracer
- fix(fmt): preserve item separation in disabled regions (#16274) by @mattsse
- perf(debugger): render only visible opcodes (#16289) by @figtracer
- perf(symbolic): speed up single-var witnesses (#16291) by @figtracer
- perf(symbolic): speed up constraint normalization (#16296) by @figtracer
- feat(anvil): add built-in Tempo fee payer (#16278) by @mattsse
- refactor(anvil): unify hardfork resolution (#16281) by @mablr
- fix(forge): classify skips by minted cheatcode payload (#16204) by @mattsse
- feat(cheatcodes): match EVM errors in expectRevert (#16294) by @figtracer
Full Changelog:
nightly-af70ca286b7c0a5d16163ff43b311af01bf176d3...nightly-269c725512d1c0fad024e78d0b8edcf9a4f05105
Nightly (2026-08-20)
Other
- perf(anvil): speed up transaction receipt queries (#16245) by @figtracer
- refactor(verify): drop the unreachable unknown optimizer runs branch (#16066) by @mkzung
- feat(fuzz): seed bytes32 from literals (#16249) by @figtracer
- feat(chisel): expose last result as $_ (#16244) by @figtracer
- refactor(evm): gate Monad transaction state behind feature (#16250) by @mablr
- fix(symbolic): track runtime memory extents (#16240) by @stevencartavia
- fix(anvil): restore fee state on revert (#16241) by @stevencartavia
- feat(forge)!: remove deprecated generate (#16242) by @stevencartavia
- fix(anvil): invalidate newer snapshots (#16208) by @stevencartavia
- refactor(evm): gate Monad ContextUpdate behind feature (#16251) by @mablr
- perf(symbolic): reduce path clone overhead (#16259) by @figtracer
- perf(symbolic): cache model evaluation (#16260) by @figtracer
- fix(wallet): reject keystore names that escape the keystore directory (#16237) by @SashaMIT
- fix(script): skip synthetic Tempo fees (#16217) by @mablr
- refactor(evm): bind chain context to ContextTr::Chain (#16257) by @mablr
- fix(common): classify OpenChain 5xx responses as connectivity failures (#16258) by @zloglevel
- perf(symbolic): reuse z3 subprocess (#16252) by @figtracer
- fix(fmt): keep comments in the contract header (#16267) by @mattsse
- ci: fix tempo sponsor-signature check flakiness (#16273) by @mattsse
Full Changelog:
nightly-423ac0d4080830fd2ec6ea52175b323a095973e9...nightly-af70ca286b7c0a5d16163ff43b311af01bf176d3
Nightly (2026-08-19)
Cast Fixes
- fix(cast): avoid stack overflow on nested RLP (#16233) by @figtracer
Forge Fixes
- fix(script): restrict sensitive cache files (#16234) by @figtracer
Other
- refactor(evm): isolate Monad system replay (#16220) by @mablr
- feat(anvil): add getLastBlockWallTime RPC (#16207) by @stevencartavia
- fix(config): preserve Windows contexts (#16170) by @mablr
- fix(anvil): recover malformed IPC framing (#16226) by @stevencartavia
- fix(wallet): reject BIP32 paths that overflow the harden bit (#16096) by @SashaMIT
- fix(anvil): normalize JSON-RPC error codes (#16227) by @stevencartavia
- perf(symbolic): reclaim dead hashcons entries (#16235) by @figtracer
- fix(cast): reject impossible to match vanity addresses (#16230) by @siosw
- refactor(tempo): derive broadcast fee token (#16222) by @mablr
- feat(symbolic): normalize branchless word selection (#16094) by @figtracer
- feat(cheatcodes): add parsing defaults (#16221) by @figtracer
Full Changelog:
nightly-30422fdee6d150eb05e63be4d9372171c4ed728a...nightly-423ac0d4080830fd2ec6ea52175b323a095973e9
Nightly (2026-08-18)
Other
- perf(forge): borrow test summaries (#16216) by @figtracer
- fix(forge): revalidate cached invariants (#16077) by @stevencartavia
- fix(anvil): stabilize state dump ordering (#16189) by @stevencartavia
Full Changelog:
nightly-3c16e2361f18f2cecc975e1d5a8d17330d92ced7...nightly-30422fdee6d150eb05e63be4d9372171c4ed728a
Nightly (2026-08-15)
Other
- fix(coverage): report file-level (free) functions (#16098) by @zexoverz
- feat(crates/cheatcodes): add secp256k1 EC arithmetic (#16160) by @StackOverflowExcept1on
- feat(forge): show fork block on failures (#16179) by @figtracer
- feat(cheatcodes): add expectDelegateCall (#16192) by @figtracer
- fix(cast): omit wallet new stdout record on interactive terminals (#16191) by @mattsse
- feat(cli): require approval for local compiler executables (#16113) by @figtracer
- chore(deps): use released Monad crates (#16190) by @haythemsellami
- refactor(evm): isolate Monad context state (#16175) by @mablr
- fix(symbolic): preserve reverted recordings (#16199) by @stevencartavia
- feat(symbolic): prove bounded arithmetic identities (#16087) by @figtracer
- perf(bind): stream single-file output (#16193) by @figtracer
- fix(traces): decode P256VERIFY precompile calls (#15972) by @HwanHeo
- fix(forge): report canonical fork blocks (#16201) by @stevencartavia
- fix(forge): preserve skip after caught revert (#16200) by @mablr
- feat(symbolic): prove saturating multiplication (#16093) by @figtracer
- feat(anvil): add debug_executionWitness endpoint (#16185) by @mattsse
Full Changelog:
nightly-72426621753d5a635b7313d7535ac2c891505d20...nightly-b830076f5c25a085928c704a2eb225f6d02a81a5
Nightly (2026-08-16)
Nightly (2026-08-14)
Other
- fix(mutation): filter compound negation (#16137) by @mablr
- fix(evm): honor explicit fork network (#16150) by @mablr
- feat(forge): cover empty special functions (#16130) by @figtracer
- fix(monad): refresh tracker after state splices (#16153) by @haythemsellami
- fix(cast): secure vanity wallet permissions (#16163) by @questfever
- chore(deps): bump alloy to 2.4.0, revm-inspectors to 0.42.2 (#16171) by @mattsse
- fix(foundryup): clarify install status (#16159) by @mablr
- chore(deps): bump Tempo revision (#16172) by @decofe
- feat(cli): add gas estimate multiplier (#16173) by @figtracer
- perf(cast): speed up find-block (#16174) by @figtracer
- refactor(fuzz): unify campaign execution (#15837) by @stevencartavia
- fix(forge): scope duplicate remappings (#16125) by @stevencartavia
- chore(deps): bump alloy-hardforks to 0.4.8 (#16176) by @mattsse
- fix(symbolic): preserve call semantics (#16169) by @stevencartavia
- fix: restore OP support in releases (#16186) by @stevencartavia
Full Changelog:
nightly-ae4490e28362c46e1e1cdfd6ecc563ff397653fa...nightly-72426621753d5a635b7313d7535ac2c891505d20
Nightly (2026-08-13)
Other
- fix(config): preserve custom source defaults (#16141) by @stevencartavia
- Monad Foundry (#15343) by @haythemsellami
- perf(cast): target storage layout compile (#16081) by @mattsse
- fix(forge): use project root for installs (#16155) by @figtracer
- feat(cast): add Touch ID enrollment (#15995) by @dadadave80
- perf(forge): speed up gas reports (#16158) by @figtracer
- fix(anvil): preserve fork endpoint identity (#16151) by @mablr
Full Changelog:
nightly-56b854e401f5748989d346f0aea871bac5d3e266...nightly-ae4490e28362c46e1e1cdfd6ecc563ff397653fa