This release improves our experimental Amsterdam hardfork support, including adding EIP-8038: State-Access Gas Cost Update. Follow our Amsterdam guide to test your contracts against the updated gas costs.
Changes
-
#8832
4f6bcf5- Thanks @anaPerezGhiglia! Added experimental EIP-8038 support to the Amsterdam hardfork: state-access operations are repriced. -
#8832
4f6bcf5- Thanks @popescuoctavian! Added therollSlot(uint64)andgetSlotNumber()cheatcodes, which set and readblock.slotnum(EIP-7843) in Solidity tests without changing the block number or timestamp; both revert on EVM versions before Amsterdam. -
#8832
4f6bcf5- Thanks @popescuoctavian! Added theisIsolateMode()cheatcode, which returns whether the running Solidity test is run withisolate. -
#8832
4f6bcf5- Thanks @anaPerezGhiglia! Added the EIP-8037 gas dimensions todebug_traceTransactionanddebug_traceCallfrom the Amsterdam hardfork: the default tracer's top-level frame and thecallTracer's root call frame reportexecutionGasUsed,stateGasUsedandgasRefund, and eachstructLogsentry reportsstateGasReservoir, plus a signedstateGasCoston the steps that charge or refill state gas. -
#8832
4f6bcf5- Thanks @anaPerezGhiglia! Changed the experimental EIP-2780 support in the Amsterdam hardfork: contract-creation transactions no longer pay a value charge. -
#8832
4f6bcf5- Thanks @anaPerezGhiglia! Added thestateGasTracertodebug_traceTransactionanddebug_traceCall, which reports a transaction's gas in both EIP-8037 dimensions on every hardfork, with zero state gas before Amsterdam. -
#8800
4ae2908Thanks @aelmanaa! - Running with the--coverageflag when no contracts are instrumented (i.e.--no-compile) now throws an error (#8796). -
#8832
4f6bcf5- Thanks @anaPerezGhiglia! Reduced the memory simulated networks use to record the call traces of executed transactions and calls. -
#8832
4f6bcf5- Thanks @popescuoctavian! Fixedblock.slotnumreturning 0 in forked Solidity tests instead of the forked block's slot number. -
#8832
4f6bcf5- Thanks @anaPerezGhiglia! Fixed missing EIP-8037 state gas for repeated contract deployments in Solidity tests on the Amsterdam hardfork. -
#8832
4f6bcf5- Thanks @popescuoctavian! Fixed Solidity tests switching to the default hardfork aftervm.createSelectFork,vm.selectForkorvm.rollFork, instead of keeping the configured hardfork or inlineevm_version. -
#8787
4aa8b87Thanks @Revinand! - Fixed--snapshot-checkfailing withHHE803when.gas-snapshothas CRLF line endings, as in Windows checkouts. -
#8812
c47ee42Thanks @AliBaig-xD! - Fixedhardhat node --forksending the configured forkinghttpHeadersto the URL passed on the command line. -
#8712
81fc983Thanks @schaable! - FixedHHE905errors on brief network failures by retrying the solc version list download. -
#8824
197263cThanks @aelmanaa! - Added a hiddenincludeTracesoption totest solidityso plugins can collect call traces regardless of the verbosity (#8737).
💡 The Nomic Foundation is hiring! Check our open positions.