UNPKG

hardhat

Version:

Hardhat is an extensible developer tool that helps smart contract developers increase productivity by reliably bringing together the tools they want.

570 lines (334 loc) 83.5 kB
# hardhat ## 3.8.0 ### Minor Changes - [#8339](https://github.com/NomicFoundation/hardhat/pull/8339) [`f21390f`](https://github.com/NomicFoundation/hardhat/commit/f21390fe78773d8ba514cd4a64954220437293e3) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Added `definePlugin`, a new helper exported from `hardhat/plugins`. Plugin authors should wrap their plugin literal with it so the default export of their `index` module becomes: ```ts import type { HardhatPlugin } from "hardhat/types/plugins"; import { definePlugin } from "hardhat/plugins"; const hardhatPlugin: HardhatPlugin = definePlugin({ id: "my-plugin", // ... }); export default hardhatPlugin; ``` `definePlugin` returns its argument unchanged and, as a side effect, registers the plugin's id in a process-wide registry of loaded plugins. Hardhat's CLI uses that registry to warn when a plugin is imported but missing from the user's `plugins` array. - [#8339](https://github.com/NomicFoundation/hardhat/pull/8339) [`19c6927`](https://github.com/NomicFoundation/hardhat/commit/19c6927372fb39c4c4f0afe37895c738abbde237) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Hardhat now warns when a plugin is imported in your Hardhat config file but missing from the `plugins` array. The warning is printed to stderr after the runtime environment is created, listing the offending plugins and pointing the user at the fix. If your Hardhat config file is written in TypeScript, for the warning to be reliable your project's `tsconfig.json` must enable `verbatimModuleSyntax: true`. Without it, TypeScript deletes unused default-value imports, so an unused plugin can't be detected. ### Patch Changes - [#8336](https://github.com/NomicFoundation/hardhat/pull/8336) [`86bfe66`](https://github.com/NomicFoundation/hardhat/commit/86bfe66b9b73c52649be2207b00b315a3b758f25) Thanks [@Wodann](https://github.com/Wodann)! - - Fixed default gas limit of Solidity test runner when a custom transaction gas cap (EIP-7825) or block gas limit is specified - Fixed process deadlock/hang when dropping a provider with interval mining and logging enabled - Print more detailed error descriptions for EVM, invariant fuzz, and cheatcode errors - [#8345](https://github.com/NomicFoundation/hardhat/pull/8345) [`9d5b96c`](https://github.com/NomicFoundation/hardhat/commit/9d5b96c59b4b84db549fff18144e6d0c8b129901) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Add `.solidityStack` property to the `SolidityError` exceptions generated by EDR - [#8365](https://github.com/NomicFoundation/hardhat/pull/8365) [`dbb689b`](https://github.com/NomicFoundation/hardhat/commit/dbb689b94925a949c554708d7ded2d9dde074270) Thanks [@kanej](https://github.com/kanej)! - Suppress the solc contract size warning for Solidity test files. - [#8368](https://github.com/NomicFoundation/hardhat/pull/8368) [`2e2ba99`](https://github.com/NomicFoundation/hardhat/commit/2e2ba996cc7c8a3056da3352defeb9cc9eba0cb2) Thanks [@kanej](https://github.com/kanej)! - Fixed the `build` task attempting to download a compiler even though a `path` to a local compiler is configured. - [#8339](https://github.com/NomicFoundation/hardhat/pull/8339) [`25cea9f`](https://github.com/NomicFoundation/hardhat/commit/25cea9f9789c56d3e43f1cc8f0f7a34adde89605) Thanks [@alcuadrado](https://github.com/alcuadrado)! - The sample projects initialized with `hardhat --init` now set `verbatimModuleSyntax: true` in their `tsconfig.json`. This ensures that plugin imports in `hardhat.config.ts` are actually evaluated at runtime, which is required for the new "imported but unused plugin" warning to work reliably. - Updated dependencies: - @nomicfoundation/hardhat-errors@3.0.15 ## 3.7.0 ### Minor Changes - [#8200](https://github.com/NomicFoundation/hardhat/pull/8200) [`ce430ac`](https://github.com/NomicFoundation/hardhat/commit/ce430ac97113e743ff6b2d34105f1ebde90d0d91) Thanks [@tenderdeve](https://github.com/tenderdeve)! - Hardhat 3 is now stable, the "Beta" wording is being dropped from the `hardhat --init` process and project templates. ## 3.6.0 ### Minor Changes - [#8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Add a `cleanupArtifacts` option to `SolidityBuildSystem#build`. When `true`, the build system runs `cleanupArtifacts` against the build's root file paths after a successful build, deleting orphan artifacts and unreachable build-info files for the scope. - [#8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Deprecate the following `SolidityHooks`: `getCompiler`, `onCleanUpArtifacts`, `preprocessProjectFileBeforeBuilding`, `preprocessSolcInputBeforeBuilding`, `readSourceFile`, `invokeSolc`, and `readNpmPackageRemappings`. They will be removed in a future release. Use `processArtifactsAfterSuccessfulBuild` instead of `onCleanUpArtifacts`, and `getCompilationJobErrors` instead of `invokeSolc`. - [#8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Add `SolidityHooks#getCompilationJobErrors` hook, which lets plugins process the compiler output errors of a compilation job before they are reported to the user. - [#8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Add `SolidityHooks#processArtifactsAfterSuccessfulBuild` hook to let plugins post-process the artifacts. The hook receives the resolved build options as a new exported `ResolvedBuildOptions` type. ### Patch Changes - [#8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@alcuadrado](https://github.com/alcuadrado)! - `SolidityBuildSystem#cleanupArtifacts` now returns the list of artifact paths that remain after the cleanup. - [#8335](https://github.com/NomicFoundation/hardhat/pull/8335) [`a4bf547`](https://github.com/NomicFoundation/hardhat/commit/a4bf547bd7bc7d60e63fc31efc3dd27edb197b78) Thanks [@gultekinmakif](https://github.com/gultekinmakif)! - Allow STRING_WITHOUT_DEFAULT and FILE_WITHOUT_DEFAULT as positional arguments - [#8326](https://github.com/NomicFoundation/hardhat/pull/8326) [`959f2e1`](https://github.com/NomicFoundation/hardhat/commit/959f2e1989c4bcbff05f717b33a2df1098f67616) Thanks [@kanej](https://github.com/kanej)! - Fixed `hardhat flatten` silently producing a misleading output for projects with cyclic Solidity dependencies. - [#8262](https://github.com/NomicFoundation/hardhat/pull/8262) [`d3ba170`](https://github.com/NomicFoundation/hardhat/commit/d3ba17006874715de86194c6a136cd0b7afb9bc4) Thanks [@fvictorio](https://github.com/fvictorio)! - Add AGENTS.md and agentic skills to sample projects - Updated dependencies: - @nomicfoundation/hardhat-utils@4.1.3 - @nomicfoundation/hardhat-errors@3.0.14 ## 3.5.1 ### Patch Changes - [#8316](https://github.com/NomicFoundation/hardhat/pull/8316) [`971a135`](https://github.com/NomicFoundation/hardhat/commit/971a135becc86dea7a3039148b55d0774c7c26a0) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Fix `hardhat --init` when used with pnpm 11 - [#8302](https://github.com/NomicFoundation/hardhat/pull/8302) [`fb99caa`](https://github.com/NomicFoundation/hardhat/commit/fb99caa5b9bf75ffa70d2488112755b8de94e7a3) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Suppress solc warnings that are direct side effects of `--coverage` instrumentation. - [#8315](https://github.com/NomicFoundation/hardhat/pull/8315) [`90650fd`](https://github.com/NomicFoundation/hardhat/commit/90650fd841a800adecdae011c196c8ec83a1a053) Thanks [@schaable](https://github.com/schaable)! - Improved error messages for common migration errors. ## 3.5.0 ### Minor Changes - [#8301](https://github.com/NomicFoundation/hardhat/pull/8301) [`793cc84`](https://github.com/NomicFoundation/hardhat/commit/793cc84d311ff96b1725f5b83a0063b9a28e3d19) Thanks [@kanej](https://github.com/kanej)! - Disable transaction gas cap and block gas limit when running tests under `--coverage`. - [#8270](https://github.com/NomicFoundation/hardhat/pull/8270) [`cf2823b`](https://github.com/NomicFoundation/hardhat/commit/cf2823b5ec9b5e6427c874636393a5ffcb70f412) Thanks [@schaable](https://github.com/schaable)! - Solidity test configuration now also accepts `{ profiles: { default: ... } }`. Only the `default` profile is currently supported, other profile names will be supported in a future release. The previous flat shape continues to work unchanged. The resolved `HardhatConfig.test.solidity` is now profile-keyed: read per-profile fields at `hre.config.test.solidity.profiles.default.*` instead of `hre.config.test.solidity.*`. Plugins that read the resolved Solidity test config need to be updated. ### Patch Changes - [#8298](https://github.com/NomicFoundation/hardhat/pull/8298) [`83b1ae1`](https://github.com/NomicFoundation/hardhat/commit/83b1ae1bdc3b941f9e15f9d2d92cadf88f7a8747) Thanks [@Wodann](https://github.com/Wodann)! - - Fixed a bug when using a test filter where the `setUp` function would be run for empty test suites - Fixed a bug where snapshot cheatcodes would throw an error if names were invalid - Fixed coverage instrumentation interfering with the single-call `vm.prank` cheatcode - Added support for instrumentation of Solidity 0.8.35 - [#8264](https://github.com/NomicFoundation/hardhat/pull/8264) [`8452f97`](https://github.com/NomicFoundation/hardhat/commit/8452f9726205540e1684d3f8458bfd145e790226) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Export `./package.json` so consumers can import the package's manifest. - [#8310](https://github.com/NomicFoundation/hardhat/pull/8310) [`9f394ec`](https://github.com/NomicFoundation/hardhat/commit/9f394ec7547cf7dd3392aeb826fca96b9c0aca28) Thanks [@js360000](https://github.com/js360000)! - Fix JSON-RPC `error.data` shape for revert errors (code 3): return the raw revert hex string directly instead of a `{ message, txHash, data }` wrapper object. This matches the geth/anvil/EVM-node convention that client tooling (viem, ethers, web3.js) relies on when decoding custom errors. Closes [#8075](https://github.com/NomicFoundation/hardhat/issues/8075). - [#8269](https://github.com/NomicFoundation/hardhat/pull/8269) [`045cb8d`](https://github.com/NomicFoundation/hardhat/commit/045cb8d46162f07b51cc08e91395a196ee42d07c) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Always load the builtin plugins' type extensions - [#8243](https://github.com/NomicFoundation/hardhat/pull/8243) [`08805db`](https://github.com/NomicFoundation/hardhat/commit/08805db44549f1ee2175854a456d94a849e7a839) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Support EIP-712 cheatcodes in Solidity Test. - [#8301](https://github.com/NomicFoundation/hardhat/pull/8301) [`793cc84`](https://github.com/NomicFoundation/hardhat/commit/793cc84d311ff96b1725f5b83a0063b9a28e3d19) Thanks [@kanej](https://github.com/kanej)! - Respect user config for `allowUnlimitedContractSize` when running under `--coverage`. - [#8259](https://github.com/NomicFoundation/hardhat/pull/8259) [`1d1204f`](https://github.com/NomicFoundation/hardhat/commit/1d1204fe9baa8221d6c32025ffb2d51b67745b19) Thanks [@kanej](https://github.com/kanej)! - Fixed build overrides not being respected when running `compile` - [#8188](https://github.com/NomicFoundation/hardhat/pull/8188) [`d48bbfd`](https://github.com/NomicFoundation/hardhat/commit/d48bbfd86c22f5dfaaee7e926814ace0db20f320) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Add `--init --template <template-name>` to initialize projects in a non-interactive way. Also add `--init --templates` to get the list of template names. - [#8290](https://github.com/NomicFoundation/hardhat/pull/8290) [`3a15b11`](https://github.com/NomicFoundation/hardhat/commit/3a15b11b4f4f4987b60ea09d2252dfddbe2f430a) Thanks [@gultekinmakif](https://github.com/gultekinmakif)! - Fixed `abstract` contracts being picked up as test suites by the Solidity test runner ([#8203](https://github.com/NomicFoundation/hardhat/issues/8203)). - [#8266](https://github.com/NomicFoundation/hardhat/pull/8266) [`325bae1`](https://github.com/NomicFoundation/hardhat/commit/325bae178dd5278f995d591516e3937d5590de4d) Thanks [@schaable](https://github.com/schaable)! - Sanitized snapshot cheatcode group names to avoid issues when persisting them to disk. A warning is shown when a group is renamed suggesting the user to update their snapshot group names to match the on-disk names. - [#8312](https://github.com/NomicFoundation/hardhat/pull/8312) [`76c15ff`](https://github.com/NomicFoundation/hardhat/commit/76c15ffb080978aea82a198b990b34a2d9d91c99) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Update the Hardhat 3 TypeScript project templates for TypeScript 6. - Updated dependencies: - @nomicfoundation/hardhat-errors@3.0.13 - @nomicfoundation/hardhat-utils@4.1.2 - @nomicfoundation/hardhat-vendored@3.0.4 - @nomicfoundation/hardhat-zod-utils@3.0.5 ## 3.4.5 ### Patch Changes - [#8253](https://github.com/NomicFoundation/hardhat/pull/8253) [`4aeed16`](https://github.com/NomicFoundation/hardhat/commit/4aeed168afeeb3305a0841605cf2ff5ed20d54a4) Thanks [@schaable](https://github.com/schaable)! - Fix compilation artifacts accidentally being deleted when their path contains an intermediate directory whose name ends in `.sol`. - [#8191](https://github.com/NomicFoundation/hardhat/pull/8191) [`2a4ae8e`](https://github.com/NomicFoundation/hardhat/commit/2a4ae8e7dc78cabbe8b17bec778952f0124f9759) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Update how type extensions are handled to optimize the bootstrap process of Hardhat. - [#8190](https://github.com/NomicFoundation/hardhat/pull/8190) [`2443073`](https://github.com/NomicFoundation/hardhat/commit/24430736fdec068d29895156d7789c4e91b6c678) Thanks [@anaPerezGhiglia](https://github.com/anaPerezGhiglia)! - Bump EDR version to `0.12.0-next.32`. - [#8228](https://github.com/NomicFoundation/hardhat/pull/8228) [`417bbf9`](https://github.com/NomicFoundation/hardhat/commit/417bbf9f5d8ee4f9e19788aa40571452d36086d2) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Small performance optimizations - [#8229](https://github.com/NomicFoundation/hardhat/pull/8229) [`a4d106e`](https://github.com/NomicFoundation/hardhat/commit/a4d106e78faf6278747ff526a31d9c26ec92a2ec) Thanks [@schaable](https://github.com/schaable)! - Add `isolate` and `evmVersion` to the Solidity test inline configuration. - Updated dependencies: - @nomicfoundation/hardhat-utils@4.1.1 ## 3.4.4 ### Patch Changes - [#8213](https://github.com/NomicFoundation/hardhat/pull/8213) [`448da88`](https://github.com/NomicFoundation/hardhat/commit/448da88c9a221576c212d3a7e8eb5cc124087d70) Thanks [@kanej](https://github.com/kanej)! - Reduced internal memory usage during coverage test runs ([#8213](https://github.com/NomicFoundation/hardhat/pull/8213)) - [#8197](https://github.com/NomicFoundation/hardhat/pull/8197) [`d3cb008`](https://github.com/NomicFoundation/hardhat/commit/d3cb0080e1a7a44cbfddfae879aa8bc23cfe818b) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Update the error reporting logic to reduce noise ## 3.4.3 ### Patch Changes - [#8196](https://github.com/NomicFoundation/hardhat/pull/8196) [`b669814`](https://github.com/NomicFoundation/hardhat/commit/b6698146abc87aaa6b2b2f18c830a01dba9b6daa) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Improve error messages in common failures - [#8196](https://github.com/NomicFoundation/hardhat/pull/8196) [`73436aa`](https://github.com/NomicFoundation/hardhat/commit/73436aaa1ddac805f8d855627b5b40ad69cf7d2e) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Export missing error types - [#8195](https://github.com/NomicFoundation/hardhat/pull/8195) [`79205cc`](https://github.com/NomicFoundation/hardhat/commit/79205cc7dc5c89e88438ac0db8fd812720d07df2) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Replace `chalk` with `util.styleText`. - [#8224](https://github.com/NomicFoundation/hardhat/pull/8224) [`3614c02`](https://github.com/NomicFoundation/hardhat/commit/3614c0241250ad210a1eb608e9a39482d34b6ce7) Thanks [@schaable](https://github.com/schaable)! - Add a `fuzz.showLogs` option to the Solidity test config to display `console.log` output from fuzz tests. - [#8218](https://github.com/NomicFoundation/hardhat/pull/8218) [`32f2b59`](https://github.com/NomicFoundation/hardhat/commit/32f2b5970e870a38db5e4e5b184038faf6052a0f) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Fix `hardhat test solidity --no-compile` failing with `SELECTED_TEST_FILES_NOT_COMPILED` when no test files are specified. - [#8139](https://github.com/NomicFoundation/hardhat/pull/8139) [`536b745`](https://github.com/NomicFoundation/hardhat/commit/536b745d041a252601d6feebdbf7d9473accd78c) Thanks [@anaPerezGhiglia](https://github.com/anaPerezGhiglia)! - Bumped EDR version to [`0.12.0-next.31`](https://github.com/NomicFoundation/edr/releases/tag/%40nomicfoundation%2Fedr%400.12.0-next.31) - [#8199](https://github.com/NomicFoundation/hardhat/pull/8199) [`2cb91f1`](https://github.com/NomicFoundation/hardhat/commit/2cb91f12e7a43e9f883a3451fafc7b7283511c05) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Add LPT scheduling to the Solidity build system - [#8219](https://github.com/NomicFoundation/hardhat/pull/8219) [`2cad309`](https://github.com/NomicFoundation/hardhat/commit/2cad309eb8d35fcc5d2aba5d75a5af4d63d50508) Thanks [@schaable](https://github.com/schaable)! - Improved performance by replacing the semver dependency with a lightweight in-tree implementation. - [#8207](https://github.com/NomicFoundation/hardhat/pull/8207) [`d594209`](https://github.com/NomicFoundation/hardhat/commit/d59420968bffca83e1ad2712c6881d19cc7e1a99) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Improved performance by replacing the debug logging library with a lightweight in-tree implementation. - [#8189](https://github.com/NomicFoundation/hardhat/pull/8189) [`b5ca1ae`](https://github.com/NomicFoundation/hardhat/commit/b5ca1aee1eb2571ec23f54ac8a9b2c39a90361c6) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Introduce a TrueCasePathResolver class to optimize repeated filesystem casing resolution - Updated dependencies: - @nomicfoundation/hardhat-utils@4.1.0 - @nomicfoundation/hardhat-errors@3.0.12 - @nomicfoundation/hardhat-vendored@3.0.3 ## 3.4.2 ### Patch Changes - [#8177](https://github.com/NomicFoundation/hardhat/pull/8177) [`7cab964`](https://github.com/NomicFoundation/hardhat/commit/7cab96452b81d0f96053ec26a038f3bc13e62d1b) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Optimize the `HookManager` and the `coverage` plugin - [#8187](https://github.com/NomicFoundation/hardhat/pull/8187) [`8f6a418`](https://github.com/NomicFoundation/hardhat/commit/8f6a418203e78b699ca1a4d9b498d13a428e71f6) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Improved the logic for handling `Node.js` versions that fall below the minimum requirement. - [#8183](https://github.com/NomicFoundation/hardhat/pull/8183) [`88f8d59`](https://github.com/NomicFoundation/hardhat/commit/88f8d59a947bd0a2045effd84d518d9e5a109e6d) Thanks [@schaable](https://github.com/schaable)! - Speed up startup by loading the coverage manager only when --coverage is set. - [#8183](https://github.com/NomicFoundation/hardhat/pull/8183) [`82208ba`](https://github.com/NomicFoundation/hardhat/commit/82208baeba7847820810b1d3c7b2aa149f9688c0) Thanks [@schaable](https://github.com/schaable)! - Speed up HRE creation by loading user-interruption support only when it's first used. - [#8175](https://github.com/NomicFoundation/hardhat/pull/8175) [`eeea0aa`](https://github.com/NomicFoundation/hardhat/commit/eeea0aa3ebde0eca139bcdf74794252cad68500d) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Restructure the imports of the network-manager. - [#8183](https://github.com/NomicFoundation/hardhat/pull/8183) [`baa9c9a`](https://github.com/NomicFoundation/hardhat/commit/baa9c9a5f9fc1a18afc23cb0bf1c5831dccd13c5) Thanks [@schaable](https://github.com/schaable)! - Speed up startup by loading the gas-analytics manager only when --gas-stats or --gas-stats-json is set. - [#8180](https://github.com/NomicFoundation/hardhat/pull/8180) [`4122faa`](https://github.com/NomicFoundation/hardhat/commit/4122faa3da2b588d83f2c94574f04ae2abd2e723) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Optimize file system traversal helpers - Updated dependencies: - @nomicfoundation/hardhat-utils@4.0.5 ## 3.4.1 ### Patch Changes - [#8142](https://github.com/NomicFoundation/hardhat/pull/8142) [`a997091`](https://github.com/NomicFoundation/hardhat/commit/a997091fe104cc4c96abadae8895d8068cff0201) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Make `node:test` sequential by default and run test files in the same process (`isolation: "none"`). - [#8173](https://github.com/NomicFoundation/hardhat/pull/8173) [`1a01f9b`](https://github.com/NomicFoundation/hardhat/commit/1a01f9ba842311bec890c1e59e4b52345b1ef74f) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Improve error reporter - [#8176](https://github.com/NomicFoundation/hardhat/pull/8176) [`13e46b2`](https://github.com/NomicFoundation/hardhat/commit/13e46b2e5a481a964dfd88041277e026308208b7) Thanks [@kanej](https://github.com/kanej)! - Fixed compilation error check to ignore ambiguous warnings ([#8176](https://github.com/NomicFoundation/hardhat/pull/8176)) - [#8179](https://github.com/NomicFoundation/hardhat/pull/8179) [`d16d82a`](https://github.com/NomicFoundation/hardhat/commit/d16d82abfd5c9fa044cb508468cd4b50a5fcfd8a) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Await all returned promises for better debuggability - Updated dependencies: - @nomicfoundation/hardhat-utils@4.0.4 ## 3.4.0 ### Minor Changes - [#8116](https://github.com/NomicFoundation/hardhat/pull/8116) [`88787e1`](https://github.com/NomicFoundation/hardhat/commit/88787e172a3d90652d0ffaf73e31857f6ed875cc) Thanks [@kanej](https://github.com/kanej)! - Add `getOrCreate` to the network API - [#8127](https://github.com/NomicFoundation/hardhat/pull/8127) [`353cf86`](https://github.com/NomicFoundation/hardhat/commit/353cf86d83f43aba998d63acf646bec5e3355512) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Make the split of contracts and solidity tests compilation optional, and controlled with a new `splitTestsCompilation` config field. ### Patch Changes - [#8105](https://github.com/NomicFoundation/hardhat/pull/8105) [`00e9695`](https://github.com/NomicFoundation/hardhat/commit/00e9695909deef9b08105bc44549f98571df7ef3) Thanks [@marianfe](https://github.com/marianfe)! - Add Solidity 0.8.34 to the default EVM targets table (osaka) ([#8105](https://github.com/NomicFoundation/hardhat/pull/8105)) - [#8108](https://github.com/NomicFoundation/hardhat/pull/8108) [`5404ac8`](https://github.com/NomicFoundation/hardhat/commit/5404ac83fc3d04bfadca9ffad412dff955ee5035) Thanks [@schaable](https://github.com/schaable)! - Display contract runtime bytecode size in the gas stats table and JSON output - [#8104](https://github.com/NomicFoundation/hardhat/pull/8104) [`e27a7ad`](https://github.com/NomicFoundation/hardhat/commit/e27a7ad584b01392afc9294f739d731ab6e78f06) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Use code 3 for JSON-RPC revert error codes to align with standard node behavior and preserve error causes in viem/ethers. - [#8103](https://github.com/NomicFoundation/hardhat/pull/8103) [`14b335a`](https://github.com/NomicFoundation/hardhat/commit/14b335a06a10caf4149b6a40241c0eab8d1788c4) Thanks [@kanej](https://github.com/kanej)! - Improved network handler performance through additional metadata to allow early skipping ([#8103](https://github.com/NomicFoundation/hardhat/pull/8103)) - [#8148](https://github.com/NomicFoundation/hardhat/pull/8148) [`49ec5d0`](https://github.com/NomicFoundation/hardhat/commit/49ec5d0cd4ddfaa97ec1fe1838d781cc41e53d72) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Don't report HardhatErrors that aren't bugs - [#8102](https://github.com/NomicFoundation/hardhat/pull/8102) [`d5f8394`](https://github.com/NomicFoundation/hardhat/commit/d5f8394aaabe4f2bd083264d15419d26235f51f2) Thanks [@kanej](https://github.com/kanej)! - Improved performance of network handler initialization ([#8102](https://github.com/NomicFoundation/hardhat/pull/8102)) - [#8141](https://github.com/NomicFoundation/hardhat/pull/8141) [`63c68c1`](https://github.com/NomicFoundation/hardhat/commit/63c68c1968209731fcac636bcd336fecf4e444c5) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Added support for EDR structured Solidity test cheatcode errors. - [#8123](https://github.com/NomicFoundation/hardhat/pull/8123) [`cf3933b`](https://github.com/NomicFoundation/hardhat/commit/cf3933bbc7bee5f34cf5b480d9f20820362b1d23) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Add a `toolVersionsInBuildInfo` setting to the Solidity config, which is `true` by default in the `production` build profile. When enabled, the version of Hardhat is included in the Build Info files. NOTE: This change can lead to build info ids changing despite the compilation output's bytecodes being identical, especially when using the `production` build profile. - [#8143](https://github.com/NomicFoundation/hardhat/pull/8143) [`f74cec9`](https://github.com/NomicFoundation/hardhat/commit/f74cec9451958b85c9702ef77ee7eb6d963cd84b) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Update `.gitignore` files in the sample projects to ignore snapshots and env files. - [#8096](https://github.com/NomicFoundation/hardhat/pull/8096) [`7fb721b`](https://github.com/NomicFoundation/hardhat/commit/7fb721bb2b1c521d0073a156f361c60a049e8fdf) Thanks [@alcuadrado](https://github.com/alcuadrado)! - [chore] Move to packages/ folder. - [#8116](https://github.com/NomicFoundation/hardhat/pull/8116) [`88787e1`](https://github.com/NomicFoundation/hardhat/commit/88787e172a3d90652d0ffaf73e31857f6ed875cc) Thanks [@kanej](https://github.com/kanej)! - Deprecate the `hre.network.connect()` method in favour of `hre.network.create()`, exactly the same method but more clearly indicating that it will create a new connection. - [#8119](https://github.com/NomicFoundation/hardhat/pull/8119) [`ff5a97e`](https://github.com/NomicFoundation/hardhat/commit/ff5a97e32468b0f841dc8a530ba8c2aac91a5c22) Thanks [@schaable](https://github.com/schaable)! - Show proxy chain information in --gas-stats and --gas-stats-json output - [#8114](https://github.com/NomicFoundation/hardhat/pull/8114) [`6eeb144`](https://github.com/NomicFoundation/hardhat/commit/6eeb144c6aa47c46322798762422560896bb65a1) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Updated forking configurations to support number and bigint. - [#8121](https://github.com/NomicFoundation/hardhat/pull/8121) [`0f1038c`](https://github.com/NomicFoundation/hardhat/commit/0f1038c9b91b0e5f61ecc402837d003fa9baf07f) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Update the default outputSelection setting of solc to decrease the artifacts size. NOTE: This change can lead to build info ids changing, despite compilation output's bytecodes being identical. - [#8122](https://github.com/NomicFoundation/hardhat/pull/8122) [`edfa548`](https://github.com/NomicFoundation/hardhat/commit/edfa548e48076d7f127523354c173b48ed9494a7) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Optimize `hre.artifacts.artifactExists()` - [#8115](https://github.com/NomicFoundation/hardhat/pull/8115) [`935a043`](https://github.com/NomicFoundation/hardhat/commit/935a043bd34cfb91593b5485c9b672282109c699) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Breaking change: removed `timeout` option for Solidity tests in `hardhat.config.ts` file. - [#8120](https://github.com/NomicFoundation/hardhat/pull/8120) [`688870c`](https://github.com/NomicFoundation/hardhat/commit/688870c7900ba729f27af563d0c2d03f4f70146e) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Fix remappings duplication - Updated dependencies: - @nomicfoundation/hardhat-errors@3.0.11 - @nomicfoundation/hardhat-utils@4.0.3 - @nomicfoundation/hardhat-vendored@3.0.2 - @nomicfoundation/hardhat-zod-utils@3.0.4 ## 3.3.0 ### Minor Changes - [#8073](https://github.com/NomicFoundation/hardhat/pull/8073) [`dfe4ffe`](https://github.com/NomicFoundation/hardhat/commit/dfe4ffeb57b97419ae0cca8929c9bd9c25912dbe) Thanks [@schaable](https://github.com/schaable)! - Add support for per-test inline configuration in solidity tests. ### Patch Changes - [#8008](https://github.com/NomicFoundation/hardhat/pull/8008) [`6fb3c27`](https://github.com/NomicFoundation/hardhat/commit/6fb3c27c58ece8cf2ba30ff9664cd00f4c925502) Thanks [@marianfe](https://github.com/marianfe)! - Introduce multi-compiler abstraction that allows plugins to define new Solidity compiler types ([#8008](https://github.com/NomicFoundation/hardhat/pull/8008)). - [#8077](https://github.com/NomicFoundation/hardhat/pull/8077) [`4581395`](https://github.com/NomicFoundation/hardhat/commit/45813957cb9220e9d781c5344f3829801a64359a) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Optimize the initialization of EDR Network Connections by caching their genesis state. - [#7983](https://github.com/NomicFoundation/hardhat/pull/7983) [`8e194d0`](https://github.com/NomicFoundation/hardhat/commit/8e194d0899bf9a74d9cacf84e289e41ed3966c14) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Added `--verbosity` (and `-v`, `-vv`, and the other shorthands) to all tasks, including TypeScript tests ([7983](https://github.com/NomicFoundation/hardhat/pull/7983)), ([7963](https://github.com/NomicFoundation/hardhat/issues/7963)). - [#8077](https://github.com/NomicFoundation/hardhat/pull/8077) [`4581395`](https://github.com/NomicFoundation/hardhat/commit/45813957cb9220e9d781c5344f3829801a64359a) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Fix a bug where `network.connect()` re-resolved the config when not needed. - [#8009](https://github.com/NomicFoundation/hardhat/pull/8009) [`83b412e`](https://github.com/NomicFoundation/hardhat/commit/83b412ef7d0e09261855185d0967e4da827fbaad) Thanks [@marianfe](https://github.com/marianfe)! - Add `SolidityHooks#downloadCompilers` and `SolidityHooks#getCompiler` hooks for extensible custom compiler support ([#8009](https://github.com/NomicFoundation/hardhat/pull/8009)) - [#8091](https://github.com/NomicFoundation/hardhat/pull/8091) [`c89cb91`](https://github.com/NomicFoundation/hardhat/commit/c89cb9183a684040a6a5ebbf1446db513f1ca95f) Thanks [@kanej](https://github.com/kanej)! - Improved performance of the network stack by removing a clone of the http request ([#8046](https://github.com/NomicFoundation/hardhat/issues/8046)) - [#8088](https://github.com/NomicFoundation/hardhat/pull/8088) [`23c0d36`](https://github.com/NomicFoundation/hardhat/commit/23c0d3658f29305bf0adbbce4644a54d7ef22550) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Optimize imports. - [#8074](https://github.com/NomicFoundation/hardhat/pull/8074) [`8984862`](https://github.com/NomicFoundation/hardhat/commit/89848629d9d139ad8a3cb23077c97557beab421a) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Optimize the initialization of EDR Network Connections by only processing the build outputs once. - [#8082](https://github.com/NomicFoundation/hardhat/pull/8082) [`72a033d`](https://github.com/NomicFoundation/hardhat/commit/72a033dc163a6f4b8a9cd87eb918084f4bafe5b6) Thanks [@popescuoctavian](https://github.com/popescuoctavian)! - Bumped EDR version to [`0.12.0-next.29`](https://github.com/NomicFoundation/edr/releases/tag/%40nomicfoundation%2Fedr%400.12.0-next.29) - [#8008](https://github.com/NomicFoundation/hardhat/pull/8008) [`57d1075`](https://github.com/NomicFoundation/hardhat/commit/57d10751c101fc00aeab2b588d23003c597edc40) Thanks [@marianfe](https://github.com/marianfe)! - Introduce the `ConfigHooks#validateResolvedConfig` hook and the `HardhatConfigValidationError` type to be able to run global validations on the resolved config ([#8008](https://github.com/NomicFoundation/hardhat/pull/8008)). - [#8079](https://github.com/NomicFoundation/hardhat/pull/8079) [`759983b`](https://github.com/NomicFoundation/hardhat/commit/759983be975c043e963ca8b3d7874467e8b078d2) Thanks [@alcuadrado](https://github.com/alcuadrado)! - Optimize the network connections to prevent memory leaks. - Updated dependencies: - @nomicfoundation/hardhat-utils@4.0.2 - @nomicfoundation/hardhat-errors@3.0.10 ## 3.2.0 ### Minor Changes - [#8064](https://github.com/NomicFoundation/hardhat/pull/8064) [`392fc38`](https://github.com/NomicFoundation/hardhat/commit/392fc388556e9ec3ca1309db0ffb2ded24439ee2) Thanks [@schaable](https://github.com/schaable)! - Add `--gas-stats-json <path>` global option to write gas usage statistics to a JSON file ([#7990](https://github.com/NomicFoundation/hardhat/issues/7990)). ### Patch Changes - [#8061](https://github.com/NomicFoundation/hardhat/pull/8061) [`c03f647`](https://github.com/NomicFoundation/hardhat/commit/c03f6476cc62ae31e745e0e1a72371d3cba8e9dc) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Fixed bug to preserve revert data in JSON-RPC responses for non-ProviderErrors ([8061](https://github.com/NomicFoundation/hardhat/pull/8061)). - [#8060](https://github.com/NomicFoundation/hardhat/pull/8060) [`4461d1e`](https://github.com/NomicFoundation/hardhat/commit/4461d1e760c42e186c4b64e4332ca2c6333b86bf) Thanks [@kanej](https://github.com/kanej)! - Updated `network.createServer` signature to type non-generic chainTypes - [#8038](https://github.com/NomicFoundation/hardhat/pull/8038) [`465d00d`](https://github.com/NomicFoundation/hardhat/commit/465d00d6f67b72752ffa54a88ee90027667f0030) Thanks [@schaable](https://github.com/schaable)! - Aggregate deployment gas statistics (min, avg, median, max, count) instead of showing only the last deployment cost and size ([#8037](https://github.com/NomicFoundation/hardhat/issues/8037)) - [#8060](https://github.com/NomicFoundation/hardhat/pull/8060) [`0e8abcf`](https://github.com/NomicFoundation/hardhat/commit/0e8abcf376b7b3618261512c98ae5dcfef716216) Thanks [@kanej](https://github.com/kanej)! - Added guard against `http` network configs in `network.createServer(...)` - [#8036](https://github.com/NomicFoundation/hardhat/pull/8036) [`954825a`](https://github.com/NomicFoundation/hardhat/commit/954825a35f5813625c4a72d8e887895d7a71e78b) Thanks [@schaable](https://github.com/schaable)! - Aggregate `--gas-stats` output when using multiple test runners, printing a single consolidated table at the end instead of separate tables per runner ([#7500](https://github.com/NomicFoundation/hardhat/issues/7500)). - [#8062](https://github.com/NomicFoundation/hardhat/pull/8062) [`45963d4`](https://github.com/NomicFoundation/hardhat/commit/45963d4ef98f505e7f1e40414ead94baaa566d79) Thanks [@ChristopherDedominici](https://github.com/ChristopherDedominici)! - Fixed compiler download for old versions in ARM64 ([8062](https://github.com/NomicFoundation/hardhat/pull/8062)). - Updated dependencies: - @nomicfoundation/hardhat-errors@3.0.9 ## 3.1.12 ### Patch Changes - 01b41ee: Added support for function gas snapshots and snapshot cheatcodes in Solidity tests with `--snapshot` and `--snapshot-check` flags ([#7769](https://github.com/NomicFoundation/hardhat/issues/7769)) - e37f96c: Add `TestRunResult` type that wraps `TestSummary`, allowing plugins to extend test results with additional data - bda5a0a: Bumped EDR version to [`0.12.0-next.28`](https://github.com/NomicFoundation/edr/releases/tag/%40nomicfoundation%2Fedr%400.12.0-next.28) ## 3.1.11 ### Patch Changes - 2cbf218: Bumped EDR version to [`0.12.0-next.27`](https://github.com/NomicFoundation/edr/releases/tag/%40nomicfoundation%2Fedr%400.12.0-next.27) BREAKING CHANGE: Memory capture used to be enabled by default on geth, but has since been flipped https://github.com/ethereum/go-ethereum/pull/23558 and is now disabled by default. We have followed suit and disabled it by default as well. If you were relying on memory capture, you will need to explicitly enable it by setting the `enableMemory` option to true in your tracer configuration. - bc193be: Use concrete value types for contract names in hardhat-viem and hardhat-ethers - 2cbf218: Make SolidityBuildSystem easier to work with ([#7988](https://github.com/NomicFoundation/hardhat/pull/7988)) - 19b691d: Fix typo in assertion message [#8028](https://github.com/NomicFoundation/hardhat/pull/8028) - 2cbf218: Expose `Result` type for task action success/failure signaling. - 2cbf218: Fixed the acceptance of relative paths to `node_modules` in npm remappings ([#8007](https://github.com/NomicFoundation/hardhat/pull/8007)) - 2cbf218: Implement a global banner logic in Hardhat 3 [#8021](https://github.com/NomicFoundation/hardhat/pull/8021) - 4ff11c1: Return typed `Result` from test runners and telemetry tasks ([#8015](https://github.com/NomicFoundation/hardhat/pull/8015)). - 2cbf218: Show fs paths and better error messages when a Solidity file can't be compiled with any configured compiler ([#7988](https://github.com/NomicFoundation/hardhat/pull/7988)) - 2cbf218: Add `onTestRunStart`, `onTestWorkerDone`, and `onTestRunDone` test hooks ([#8001](https://github.com/NomicFoundation/hardhat/pull/8001)) ## 3.1.10 ### Patch Changes - ca26adb: Update `hardhat node` to always use the new `node` network (#7989)[https://github.com/NomicFoundation/hardhat/pull/7989] - 87623db: Introduce new inter-process mutex implementation ([7942](https://github.com/NomicFoundation/hardhat/pull/7942)). - 88e9cb5: Add a `SolidityHooks#readNpmPackageRemappings` hook - ec03a01: Allow overriding the type of the network configs `default` and `localhost` [#7805](https://github.com/NomicFoundation/hardhat/pull/7805) - 2c2e1f5: Throw better error messages when trying to use a Hardhat 2 plugin with Hardhat 3 [#7991](https://github.com/NomicFoundation/hardhat/pull/7991). - 90b5eec: Suggest installing hardhat-foundry when appropriate - 87623db: Make the solc downloader safe when run by multiple processes ([7946](https://github.com/NomicFoundation/hardhat/pull/7946)). - 726ff37: Update the `--coverage` table output to match the style used by `--gas-stats`. Thanks @jose-blockchain! ([#7733](https://github.com/NomicFoundation/hardhat/issues/7733)) - f1e9b05: Added support for `inline actions` in tasks [7851](https://github.com/NomicFoundation/hardhat/pull/7851). - 73cb725: Expose `gasLimit` configuration for Solidity tests [#7996](https://github.com/NomicFoundation/hardhat/pull/7996) ## 3.1.9 ### Patch Changes - 621d07e: Make the coverage work with versions of Solidity that aren't fully supported by EDR [#7982 ](https://github.com/NomicFoundation/hardhat/pull/7982) - 3e39a06: Round average and median gas usage in the gas analytics output - 78af2ed: Allow multiple parallel downloads of different compilers ([7946](https://github.com/NomicFoundation/hardhat/pull/7946)). ## 3.1.8 ### Patch Changes - a6947fb: Use the official Linux ARM64 builds of solc in the `production` profile when available ([#7917](https://github.com/NomicFoundation/hardhat/pull/7917)). - fd42744: Fixed missing EIP-7212 precompile in Solidity Tests ([#7872](https://github.com/NomicFoundation/hardhat/issues/7872)). ## 3.1.7 ### Patch Changes - 4995121: Suppressed pragma and license warnings in Solidity test files ([7894](https://github.com/NomicFoundation/hardhat/issues/7894)). - 22adbcb: Added support for `eth_getProof` ([3345](https://github.com/NomicFoundation/hardhat/issues/3345)). ## 3.1.6 ### Patch Changes - 98fbf44: Implemented `SolidityBuildSystemImplementation#compileBuildInfo` ([#7891](https://github.com/NomicFoundation/hardhat/pull/7891)) - a9445c9: Added ArtifactManager#getAllArtifactPaths ([#7902](https://github.com/NomicFoundation/hardhat/pull/7902)) - a9445c9: Fixed typechain type generation when compiling a subset of the Solidity files ([#7902](https://github.com/NomicFoundation/hardhat/pull/7902)) - 127ce88: Suppress Hardhat console.sol memory-safe-assembly warning [#7862](https://github.com/NomicFoundation/hardhat/pull/7862). - c40697b: Added a Solidity#build hook ([#7890](https://github.com/NomicFoundation/hardhat/pull/7890)) - 8e5610f: Fixed a bug where nested folders were not created during the HTML coverage report generation ([#7889](https://github.com/NomicFoundation/hardhat/pull/7889)) - 13a1e4b: Multiple internal fixes to the solidity build system ([#7900](https://github.com/NomicFoundation/hardhat/pull/7900)) - 0c47a69: Added compiler downloader retry in case of failure ([#7031](https://github.com/NomicFoundation/hardhat/issues/7031)) ## 3.1.5 ### Patch Changes - 346f92a: Improve how solidity tests are displayed, making it more consistent with the js reporters. - 2bc18b2: Bumped `viem` version across all packages [7861](https://github.com/NomicFoundation/hardhat/pull/7861). - 865e346: Updated the incorrect JSDOC against the `preprocessProjectFileBeforeBuilding` Solidity Hook ([#7870](https://github.com/NomicFoundation/hardhat/pull/7870)) - c9bdbd0: Added `invokeSolc` in `SolidityHooks` to allow plugins to respond to the input/output from solc ([#7646](https://github.com/NomicFoundation/hardhat/issues/7646)) ## 3.1.4 ### Patch Changes - d7c13fa: Fixes a bug in how code coverage for Solidity tests is calculated ([7767](https://github.com/NomicFoundation/hardhat/pull/7767)). - b6a9d5a: Hardhat tries to use the latest Solidity version supported by Slang in case the a newer, unsupported version is selected ([7846](https://github.com/NomicFoundation/hardhat/pull/7846)). - 268acbf: Added HTML coverage report for solidity tests ([7787](https://github.com/NomicFoundation/hardhat/pull/7787)). ## 3.1.3 ### Patch Changes - 12d7468: Add mocha results to test summary numbers ([#7791](https://github.com/NomicFoundation/hardhat/pull/7791)) - 25155b5: Add support for the official builds of `solc` for ARM64 Linux ([#7752](https://github.com/NomicFoundation/hardhat/issues/7752)) - 065df38: Bumped EDR version to [`0.12.0-next.22`](https://github.com/NomicFoundation/edr/releases/tag/%40nomicfoundation%2Fedr%400.12.0-next.22). - NomicFoundation/edr@b5a7b75: Added an API that reports the latest supported Solidity version for source instrumentation - 5abcee6: Use Osaka as the default EVM target for solc 0.8.31+ and increase the gas limit per EIP-7935. Thanks @Amxx! ([#7813](https://github.com/NomicFoundation/hardhat/pull/7813)) ## 3.1.2 ### Patch Changes - 3575a52: Bumped EDR version to [`0.12.0-next.21`](https://github.com/NomicFoundation/edr/releases/tag/%40nomicfoundation%2Fedr%400.12.0-next.21). ### Minor Changes - NomicFoundation/edr@44e779c: Added function-level configuration overrides for Solidity tests ### Patch Changes - NomicFoundation/edr@b5ad15c: Added support for instrumentation of Solidity `0.8.32` and `0.8.33` - fd70728: Bumped EDR version to [`0.12.0-next.20`](https://www.npmjs.com/package/@nomicfoundation/edr/v/0.12.0-next.20). Patch Changes - NomicFoundation/edr@34e1ab4: Updated base mainnet eip1559 parameters after SystemConfig update on 2025-12-18 - NomicFoundation/edr@2272bc0: Fixed excess_blob_gas calculation after Osaka ## 3.1.1 ### Patch Changes - b3bde25: Disable test summary when mocha is included in runners ([#7781](https://github.com/NomicFoundation/hardhat/issues/7781)) - 88fcf8b: Bumped EDR version to [`0.12.0-next.19`](https://www.npmjs.com/package/@nomicfoundation/edr/v/0.12.0-next.19). - [faef065](https://github.com/NomicFoundation/edr/commit/faef0656f8c86c6f92c7c309d2373bbca89cbff7): Added support for EIP-7892 (Blob Parameter Only hardforks) ## 3.1.0 ### Minor Changes - 7b851f3: Bumped EDR version to [`0.12.0-next.17`](https://www.npmjs.com/package/@nomicfoundation/edr/v/0.12.0-next.17) - Changed default L1 hardfork to Osaka - Changed default OP stack hardfork to Isthmus - Fixed default transaction gas limit for post-Osaka hardforks in OP stack and generic chains ### Patch Changes - 7697451: Test summaries are now merged when running multiple test tasks ([#7053](https://github.com/NomicFoundation/hardhat/issues/7053)) - a3bf244: Fixed the download of solc, which broke for v0.8.31 ## 3.0.17 ### Patch Changes - 9f4020b: - Update template projects to ignore local `.env` files but still allow committing `.env.example` files, thanks @KonstantinosChonas! ([7702](https://github.com/NomicFoundation/hardhat/issues/7702)) - a9a47e5: Fixed hex validation patterns, thanks @Bilogweb3 ([#7719](https://github.com/NomicFoundation/hardhat/pull/7719)) - b0f37e1: Fixed the network config to re-validate and re-resolve `chainType` on `connect()` ([#7700](https://github.com/NomicFoundation/hardhat/issues/7700)). ## 3.0.16 ### Patch Changes - 478ee07: Bumped EDR version to [`0.12.0-next.16`](https://www.npmjs.com/package/@nomicfoundation/edr/v/0.12.0-next.16) - Added support for Osaka hardfork - Added full support for OP stack Isthmus hardfork - 806ee5a: Fixed an issue caused by networks that don't implement `eth_feeHistory` correctly (https://github.com/NomicFoundation/hardhat/pull/7678) - f4b7f7e: Fix: use user config provided value for `defaultChainType` ([#7700](https://github.com/NomicFoundation/hardhat/issues/7700)) - 6b2ed9a: Add ability for task options to be hidden from the CLI ([#7426](https://github.com/NomicFoundation/hardhat/issues/7426)) - 6d10d05: Update `hardfork` validation and resolution to use `defaultChainType` when `chainType` is undefined ([#7700](https://github.com/NomicFoundation/hardhat/issues/7700)) ## 3.0.15 ### Patch Changes - 9fb054a: Fix the initialization of the Mocha and Ethers sample project when using pnpm ## 3.0.14 ### Patch Changes - 3d42a6f: Remove the compilation spinner when the compilation fails - 52e1eb4: Fix the `test solidity` task's compilation process - ce5c22a: Fail when a file isn't built neither as contract nor test ## 3.0.13 ### Patch Changes - 6e4ad6d: Fixed unexpected test failure when running in isolate/gas stats mode ([#1146](https://github.com/NomicFoundation/edr/issues/1146)) - 6e4ad6d: Added latest dynamic base fee parameters to Base Mainnet chain config ([#1141](https://github.com/NomicFoundation/edr/pull/1141)) ## 3.0.12 ### Patch Changes - 147f8a6: Improved the look and feel of compilation output ([#7669](https://github.com/NomicFoundation/hardhat/pull/7669)) - 50ce3e0: Fix a bug that could lead to different builds having the same build id. Note that this version will change how every build id is computed. - 31f0b03: Don't compile solidity tests files when not needed ([#7669](https://github.com/NomicFoundation/hardhat/pull/7669)) - a77c06a: Added a new minimal sample project ## 3.0.11 ### Patch Changes - a4733f6: Add `defineConfig` in `hardhat/config` - 52d9902: Fix package manager detection - d45234d: Fixed Etherscan verification failures by removing hardcoded v1 API URLs from chain descriptors ([#7623](https://github.com/NomicFoundation/hardhat/issues/7623)). Also enhanced config resolution to support partial overrides in block explorer configurations for future extensibility. ## 3.0.10 ### Patch Changes - fe28daf: Added support for showing gas statistics after running tests ([#7472](https://github.com/NomicFoundation/hardhat/issues/7428) and [#7503](https://github.com/NomicFoundation/hardhat/issues/7503)) - 1ab6b75: Optimism ISTHMUS hardfork support added to Hardhat ([#7517](https://github.com/NomicFoundation/hardhat/issues/7517)) - 5e64246: Improved JS/TS test tasks to not compile Solidity tests ([#7626](https://github.com/NomicFoundation/hardhat/pull/7626)) - 217a1a8: Fix arbitrum sepolia chain id in chain descriptors (thanks @aelmanaa!) - 8a03bd0: Fixed gas calculation for EIP-7702 refunds ([#7606](https://github.com/NomicFoundation/hardhat/pull/7606)) - 8a03bd0: Make all parameters of `eth_feeHistory` rpc call required ([#7606](https://github.com/NomicFoundation/hardhat/pull/7606)) ## 3.0.9 ### Patch Changes - 0ee442d: All test runners now set NODE_ENV to "test" in case it is not set before the tests start ([#7511](https://github.com/NomicFoundation/hardhat/issues/7511)) - b27b924: Fix bug in flatten task where ordering was incorrect ([#7586](https://github.com/NomicFoundation/hardhat/issues/7586)) ## 3.0.8 ### Patch Changes - d2c9a7f: Don't swallow the original error when trying to improve installation error messages ([#7569](https://github.com/NomicFoundation/hardhat/pull/7569)) - ec50793: Validate `initialBaseFeePerGas` against hardfork only for L1 chain type ([#6181](https://github.com/NomicFoundation/hardhat/issues/6181)) ## 3.0.7 ### Patch Changes - 138d673: Added `network.createServer(...)` to spawn a Hardhat node programmatically ([#6472](https://github.com/NomicFoundation/hardhat/issues/6472)) - d414eda: Added support for conditional dependencies on plugins ([#7424](https: