Update dependency hardhat to v3 #24

Open
renovate wants to merge 1 commit from renovate/hardhat-3.x into main
Collaborator

This PR contains the following updates:

Package Change Age Confidence
hardhat (source) ^2.28.0 → ^3.0.0 age confidence

Release Notes

NomicFoundation/hardhat (hardhat)

v3.18.1

Compare Source

Patch Changes

v3.18.0

Compare Source

Minor Changes
  • #​8574 e28e4f5 Thanks @​anaPerezGhiglia! - Removed the pre-Byzantium hardforks (chainstart, homestead, dao, tangerineWhistle, spuriousDragon) from the accepted hardfork and hardforkHistory values, as EDR cannot execute them.

  • #​8595 562cc0b Thanks @​ChristopherDedominici! - Made ethers derive secp256k1 public keys with EDR's native implementation instead of its pure-JS one, speeding up new Wallet(secretKey), Wallet.createRandom(), HD wallet derivation and computeAddress.

  • #​8590 e2ebf54 Thanks @​schaable! - Added Solidity test profiles, allowing test settings to vary across environments such as local development and CI.

Patch Changes

v3.17.0

Compare Source

Minor Changes
  • #​8501 5faee42 Thanks @​ChristopherDedominici! - Add gasEstimationMode config option to EDR networks, featuring a "noInternalOutOfGas" mode to prevent misleading eth_estimateGas results when internal calls run out of gas.

  • #​8580 8583e24 Thanks @​ChristopherDedominici! - Made ethers use EDR's native Keccak-256 instead of its pure-JS one.

  • #​8210 024b422 Thanks @​renovate! - Update the cryptography dependencies to their latest major versions: @noble/hashes and @noble/ciphers to 2, ethereum-cryptography to 3, and micro-eth-signer to 0.19.

Patch Changes

v3.16.0

Compare Source

Minor Changes

v3.15.0

Compare Source

Minor Changes
Patch Changes

v3.14.0

Compare Source

Minor Changes
  • #​8540 99306ea Thanks @​kanej! - EDR now uses platform specific optionalDependencies, reducing Hardhat's install size.
Patch Changes
  • #​8514 f7c6228 Thanks @​questfever! - Fixed Solidity resolver containment checks for paths whose names share a prefix with the project root, a package source-name root, or node_modules.

  • #​8540 99306ea Thanks @​kanej! - Fixed missing Solidity test stack trace when setUp() fails and stack traces are collected with CollectStackTraces::Always.

  • #​8500 54973b2 Thanks @​SnowingFox! - Fixed the format of fuzz test counterexamples: byte array values such as calldata, sender and address are now printed as hexadecimal strings (e.g. 0x3e2033b3...) instead of comma-separated byte lists.

  • #​8522 8640b4b Thanks @​JasonColapietro! - Remove Holesky testnet (chain id 17000) as a supported chain as it has been shut down.

  • #​8488 edd1069 Thanks @​ChristopherDedominici! - Stores gas snapshot cheatcode values as raw strings and calculates diffs using BigInt.

v3.13.0

Compare Source

Minor Changes
Patch Changes
  • #​8486 2ccd059 Thanks @​Kropiunig! - Fixed the EDR network config validation rejecting mining.interval: 0, a valid value which disables interval mining.

  • #​8490 22667f6 Thanks @​kanej! - Added detection and custom error for failed native binding loads (HHE27) of @nomicfoundation/edr or @nomicfoundation/solidity-analyzer.

  • #​8454 47793de Thanks @​ChristopherDedominici! - Only collect Solidity test stack traces at verbosity level 5 (-vvvvv) and above, fixing excessive memory usage when running large test suites with -vvv/-vvvv.

v3.12.0

Compare Source

Minor Changes
  • #​8442 4904c72 Thanks @​ChristopherDedominici! - Support test name filter negation (--grep-exclude) for Solidity and Mocha tests.

  • #​8472 2a66c2e Thanks @​kanej! - Added experimental EIP-7843 support to the Amsterdam hardfork: blocks now include the slotNumber header field, and the SLOTNUM (0x4b) opcode returns it. EDR has no consensus layer, so the value is simulated: it increments by one per mined block, starting at 0 on a new chain, or from the forked block's slot number when forking.

Patch Changes

v3.11.1

Compare Source

Patch Changes

v3.11.0

Compare Source

Minor Changes
  • #​8447 dff401d Thanks @​kanej! - Added experimental EIP-7778 support to the Amsterdam hardfork: a block's gasUsed excludes gas refunds; transaction receipts are unchanged.

  • #​8447 dff401d Thanks @​kanej! - Added experimental EIP-7928 support to the Amsterdam hardfork: blocks on Amsterdam now include the blockAccessListHash header field. The value is simulated, not the real keccak256(rlp(blockAccessList)).

Patch Changes

v3.10.0

Compare Source

Minor Changes
  • #​8431 39c93e4 Thanks @​anaPerezGhiglia! - Add support for the new experimental amsterdam L1 hardfork, which currently implements EIP-7708 (ETH transfers emit logs).
Patch Changes

v3.9.1

Compare Source

Patch Changes

v3.9.0

Compare Source

Minor Changes
  • #​8380 0fd498d Thanks @​kanej! - Added support for coverage.skipFiles, a list of globs of Solidity files to exclude from coverage instrumentation and reporting during a --coverage run.
Patch Changes
  • #​8383 1660f1e Thanks @​schaable! - Fixed an intermittent "Provider for provided chain type does not exist" error that could occur when multiple network connections were created concurrently.

  • #​8371 287620e Thanks @​gultekinmakif! - Account overrides that share an address with the network's built-in genesis accounts are now correctly merged into a single genesis entry.

  • #​8375 931a5f0 Thanks @​schaable! - Suppressed the solc initcode size warning for Solidity test contracts and when running under --coverage.

  • #​8372 5f6aff2 Thanks @​gultekinmakif! - Improved validation for initialDate network configuration. Invalid Date objects and unparseable date strings are now rejected during config loading rather than causing a runtime error later.

v3.8.0

Compare Source

Minor Changes
  • #​8339 f21390f Thanks @​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:

    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 19c6927 Thanks @​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 86bfe66 Thanks @​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 9d5b96c Thanks @​alcuadrado! - Add .solidityStack property to the SolidityError exceptions generated by EDR

  • #​8365 dbb689b Thanks @​kanej! - Suppress the solc contract size warning for Solidity test files.

  • #​8368 2e2ba99 Thanks @​kanej! - Fixed the build task attempting to download a compiler even though a path to a local compiler is configured.

  • #​8339 25cea9f Thanks @​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:

v3.7.0

Compare Source

Minor Changes
  • #​8200 ce430ac Thanks @​tenderdeve! - Hardhat 3 is now stable, the "Beta" wording is being dropped from the hardhat --init process and project templates.

v3.6.0

Compare Source

Minor Changes
  • #​8327 dee44f6 Thanks @​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 dee44f6 Thanks @​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 dee44f6 Thanks @​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 dee44f6 Thanks @​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

v3.5.1

Compare Source

Patch Changes

v3.5.0

Compare Source

Minor Changes
  • #​8301 793cc84 Thanks @​kanej! - Disable transaction gas cap and block gas limit when running tests under --coverage.

  • #​8270 cf2823b Thanks @​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

v3.4.5

Compare Source

Patch Changes

v3.4.4

Compare Source

Patch Changes

v3.4.3

Compare Source

Patch Changes

v3.4.2

Compare Source

Patch Changes

v3.4.1

Compare Source

Patch Changes

v3.4.0

Compare Source

Minor Changes
Patch Changes

v3.3.0

Compare Source

Minor Changes
Patch Changes

v3.2.0

Compare Source

Minor Changes
Patch Changes

v3.1.12

Compare Source

Patch Changes
  • 01b41ee: Added support for function gas snapshots and snapshot cheatcodes in Solidity tests with --snapshot and --snapshot-check flags (#​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

v3.1.11

Compare Source

Patch Changes
  • 2cbf218: Bumped EDR version to 0.12.0-next.27

    BREAKING CHANGE: Memory capture used to be enabled by default on geth, but has since been flipped ethereum/go-ethereum#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)

  • 19b691d: Fix typo in assertion message #​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)

  • 2cbf218: Implement a global banner logic in Hardhat 3 #​8021

  • 4ff11c1: Return typed Result from test runners and telemetry tasks (#​8015).

  • 2cbf218: Show fs paths and better error messages when a Solidity file can't be compiled with any configured compiler (#​7988)

  • 2cbf218: Add onTestRunStart, onTestWorkerDone, and onTestRunDone test hooks (#​8001)

v3.1.10

Compare Source

Patch Changes
  • ca26adb: Update hardhat node to always use the new node network (#​7989)[#​7989]
  • 87623db: Introduce new inter-process mutex implementation (7942).
  • 88e9cb5: Add a SolidityHooks#readNpmPackageRemappings hook
  • ec03a01: Allow overriding the type of the network configs default and localhost #​7805
  • 2c2e1f5: Throw better error messages when trying to use a Hardhat 2 plugin with Hardhat 3 #​7991.
  • 90b5eec: Suggest installing hardhat-foundry when appropriate
  • 87623db: Make the solc downloader safe when run by multiple processes (7946).
  • 726ff37: Update the --coverage table output to match the style used by --gas-stats. Thanks @​jose-blockchain! (#​7733)
  • f1e9b05: Added support for inline actions in tasks 7851.
  • 73cb725: Expose gasLimit configuration for Solidity tests #​7996

v3.1.9

Compare Source

Patch Changes
  • 621d07e: Make the coverage work with versions of Solidity that aren't fully supported by EDR #​7982
  • 3e39a06: Round average and median gas usage in the gas analytics output
  • 78af2ed: Allow multiple parallel downloads of different compilers (7946).

v3.1.8

Compare Source

Patch Changes
  • a6947fb: Use the official Linux ARM64 builds of solc in the production profile when available (#​7917).
  • fd42744: Fixed missing EIP-7212 precompile in Solidity Tests (#​7872).

v3.1.7

Compare Source

Patch Changes
  • 4995121: Suppressed pragma and license warnings in Solidity test files (7894).
  • 22adbcb: Added support for eth_getProof (3345).

v3.1.6

Compare Source

Patch Changes
  • 98fbf44: Implemented SolidityBuildSystemImplementation#compileBuildInfo (#​7891)
  • a9445c9: Added ArtifactManager#getAllArtifactPaths (#​7902)
  • a9445c9: Fixed typechain type generation when compiling a subset of the Solidity files (#​7902)
  • 127ce88: Suppress Hardhat console.sol memory-safe-assembly warning #​7862.
  • c40697b: Added a Solidity#build hook (#​7890)
  • 8e5610f: Fixed a bug where nested folders were not created during the HTML coverage report generation (#​7889)
  • 13a1e4b: Multiple internal fixes to the solidity build system (#​7900)
  • 0c47a69: Added compiler downloader retry in case of failure (#​7031)

v3.1.5

Compare Source

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.
  • 865e346: Updated the incorrect JSDOC against the preprocessProjectFileBeforeBuilding Solidity Hook (#​7870)
  • c9bdbd0: Added invokeSolc in SolidityHooks to allow plugins to respond to the input/output from solc (#​7646)

v3.1.4

Compare Source

Patch Changes
  • d7c13fa: Fixes a bug in how code coverage for Solidity tests is calculated (7767).
  • b6a9d5a: Hardhat tries to use the latest Solidity version supported by Slang in case the a newer, unsupported version is selected (7846).
  • 268acbf: Added HTML coverage report for solidity tests (7787).

v3.1.3

Compare Source

Patch Changes

v3.1.2

Compare Source

Patch Changes
Minor Changes
Patch Changes

v3.1.1

Compare Source

Patch Changes
  • 01b41ee: Added support for function gas snapshots and snapshot cheatcodes in Solidity tests with --snapshot and --snapshot-check flags (#​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

v3.1.0

Compare Source

Minor Changes
  • 7b851f3: Bumped EDR version to 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)
  • a3bf244: Fixed the download of solc, which broke for v0.8.31

v3.0.17

Compare Source

Patch Changes

v3.0.16

Compare Source

Patch Changes
  • 478ee07: Bumped EDR version to 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 (#​7678)
  • f4b7f7e: Fix: use user config provided value for defaultChainType (#​7700)
  • 6b2ed9a: Add ability for task options to be hidden from the CLI (#​7426)
  • 6d10d05: Update hardfork validation and resolution to use defaultChainType when chainType is undefined (#​7700)

v3.0.15

Compare Source

Patch Changes
  • 9fb054a: Fix the initialization of the Mocha and Ethers sample project when using pnpm

v3.0.14

Compare Source

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

v3.0.13

Compare Source

Patch Changes
  • 6e4ad6d: Fixed unexpected test failure when running in isolate/gas stats mode (#​1146)
  • 6e4ad6d: Added latest dynamic base fee parameters to Base Mainnet chain config (#​1141)

v3.0.12

Compare Source

Patch Changes
  • 147f8a6: Improved the look and feel of compilation output (#​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)
  • a77c06a: Added a new minimal sample project

v3.0.11

Compare Source

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). Also enhanced config resolution to support partial overrides in block explorer configurations for future extensibility.

v3.0.10

Compare Source

Patch Changes

v3.0.9

Compare Source

Patch Changes
  • 0ee442d: All test runners now set NODE_ENV to "test" in case it is not set before the tests start (#​7511)
  • b27b924: Fix bug in flatten task where ordering was incorrect (#​7586)

v3.0.8

Compare Source

Patch Changes
  • d2c9a7f: Don't swallow the original error when trying to improve installation error messages (#​7569)
  • ec50793: Validate initialBaseFeePerGas against hardfork only for L1 chain type (#​6181)

v3.0.7

Compare Source

Patch Changes
  • 138d673: Added network.createServer(...) to spawn a Hardhat node programmatically (#​6472)
  • d414eda: Added support for conditional dependencies on plugins (#​7424)
  • 138d673: Added support for compiling solidity tests separately from contracts (#​6474)
  • e17972f: Added hre.versions with Hardhat and EDR package versions.
  • 34add2d: Added configVariable support for test.solidity.forking config
  • b13620a: Added compilation progress spinner to show build progress (#​7460)
  • 4c65d3e: Automatically add compilation results to a running npx hardhat node on recompilation (#​6040)
  • 138d673: Updated EDR to version 0.12.0-next.7
  • d821a0a: Fixed npm artifact cleanup on windows (#​7459)
  • 138d673: Fixed creation of network connections to include config extensions from plugins (#​7106)

v3.0.6

Compare Source

Patch Changes
  • 609d05c: Add deprecation warning for testFail_* test functions
  • 8c1cb1e: Fixed dependencies for Hardhat so rpc utils can be loaded (#​7415)

v3.0.5

Compare Source

Patch Changes
  • bebf87c: Added support for Linea network verification, thanks @​kyzooghost (#​7357)
  • 0bfe6ac: Fixed coverage report when loading data from large test suites (#​7385)
  • be469d6: Display an error message when attempting to use a global hardhat installation in a local repo (#​5362)
  • 49cc9ba: Load resolved global options into environment variables during tests (#​7305)
  • 8d3b16c: Support for custom compilers (#​7130)
  • a475780: Added automatic proxy detection for hardhat-verify and fixed case-insensitive proxy environment variables for network requests (#​7407)
  • 3996886: Fixed getBuildInfoPath and getBuildInfoOutputPath to correctly return undefined when build info files are missing 7052

v3.0.4

Compare Source

Patch Changes

v3.0.3

Compare Source

Patch Changes
  • 34a5bc9: Fixed an issue when making historical calls in a forked network (#​7271)
  • e0e658a: Upgraded EDR to 0.12.0-next.5. This brings a fix for expectEmit cheatcode stack traces and performance improvements from upgrading to REVM 27 (#​1063)

v3.0.2

Compare Source

Patch Changes
  • d45d544: Fixed passing global network options to node:test and mocha subprocesses (#​7248)
  • 003e72c: Help message phrasing unified
  • 0120e67: Added warning when running with a non-LTS Node version (#​7167)
  • 9261714: Update npm module regex to include versions in solidity imports (#​7308)

v3.0.1

Compare Source

Patch Changes

v3.0.0

Compare Source

Major Changes
  • 29cc141: First release of Hardhat 3!

Configuration

📅 Schedule: (in timezone Europe/Berlin)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate CLI.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [hardhat](https://hardhat.org) ([source](https://github.com/NomicFoundation/hardhat/tree/HEAD/packages/hardhat)) | [`^2.28.0` → `^3.0.0`](https://renovatebot.com/diffs/npm/hardhat/2.29.1/3.18.1) | ![age](https://developer.mend.io/api/mc/badges/age/npm/hardhat/3.18.1?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/hardhat/2.29.1/3.18.1?slim=true) | --- ### Release Notes <details> <summary>NomicFoundation/hardhat (hardhat)</summary> ### [`v3.18.1`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3181) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.18.0...hardhat@3.18.1) ##### Patch Changes - [#&#8203;8631](https://github.com/NomicFoundation/hardhat/pull/8631) [`d014d43`](https://github.com/NomicFoundation/hardhat/commit/d014d43b157ab8c54d1ed4d94e24e2dd98cdf68b) Thanks [@&#8203;Kropiunig](https://github.com/Kropiunig)! - Fixed `edr-simulated` networks with `forking.enabled: false` starting without the chain's predeploys (e.g. OP's `GasPriceOracle` and `L1Block`, or the L1 beacon roots and history storage contracts). - [#&#8203;8636](https://github.com/NomicFoundation/hardhat/pull/8636) [`8b24451`](https://github.com/NomicFoundation/hardhat/commit/8b2445190330a18851c6deda682d0d11efd214e8) Thanks [@&#8203;schaable](https://github.com/schaable)! - Fixed the formatting of errors reported while running Solidity tests. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.4.0 ### [`v3.18.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3180) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.17.0...hardhat@3.18.0) ##### Minor Changes - [#&#8203;8574](https://github.com/NomicFoundation/hardhat/pull/8574) [`e28e4f5`](https://github.com/NomicFoundation/hardhat/commit/e28e4f5ccb952913046ac4c14b09fb0db45f5b25) Thanks [@&#8203;anaPerezGhiglia](https://github.com/anaPerezGhiglia)! - Removed the pre-Byzantium hardforks (`chainstart`, `homestead`, `dao`, `tangerineWhistle`, `spuriousDragon`) from the accepted `hardfork` and `hardforkHistory` values, as EDR cannot execute them. - [#&#8203;8595](https://github.com/NomicFoundation/hardhat/pull/8595) [`562cc0b`](https://github.com/NomicFoundation/hardhat/commit/562cc0b0bed2eb98822f5e302a940f9d20cccb53) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Made ethers derive secp256k1 public keys with EDR's native implementation instead of its pure-JS one, speeding up `new Wallet(secretKey)`, `Wallet.createRandom()`, HD wallet derivation and `computeAddress`. - [#&#8203;8590](https://github.com/NomicFoundation/hardhat/pull/8590) [`e2ebf54`](https://github.com/NomicFoundation/hardhat/commit/e2ebf54801eceffdcce61a705dcd2609807b51d8) Thanks [@&#8203;schaable](https://github.com/schaable)! - Added Solidity test profiles, allowing test settings to vary across environments such as local development and CI. ##### Patch Changes - [#&#8203;8635](https://github.com/NomicFoundation/hardhat/pull/8635) [`ad92657`](https://github.com/NomicFoundation/hardhat/commit/ad92657292c160cd7bdf8cc80a2386a0ebf83d43) Thanks [@&#8203;popescuoctavian](https://github.com/popescuoctavian)! - Upgraded EDR to v0.22.0. - [#&#8203;8601](https://github.com/NomicFoundation/hardhat/pull/8601) [`34087dd`](https://github.com/NomicFoundation/hardhat/commit/34087dd349e40be5bf4d5dbdce557b23b98cfefd) Thanks [@&#8203;cdesch](https://github.com/cdesch)! - Improved HTTP proxy support. - [#&#8203;8616](https://github.com/NomicFoundation/hardhat/pull/8616) [`8b73917`](https://github.com/NomicFoundation/hardhat/commit/8b73917cbf830b58c773ea7580d2d30c4fb11b43) Thanks [@&#8203;rome-xi](https://github.com/rome-xi)! - Fixed invalid `HTTPS_PROXY`/`HTTP_PROXY` values being reported as unexpected errors instead of a Hardhat error. - [#&#8203;8624](https://github.com/NomicFoundation/hardhat/pull/8624) [`1377eb0`](https://github.com/NomicFoundation/hardhat/commit/1377eb049a54f0b1bcb911141729356c2a2958da) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Updated `mocha` to `^12.0.0` in the `hardhat --init` mocha-ethers template project. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.1.0 - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.3.0 ### [`v3.17.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3170) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.16.0...hardhat@3.17.0) ##### Minor Changes - [#&#8203;8501](https://github.com/NomicFoundation/hardhat/pull/8501) [`5faee42`](https://github.com/NomicFoundation/hardhat/commit/5faee42584ec0a27454914aadf08fee6057dfd23) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Add `gasEstimationMode` config option to EDR networks, featuring a `"noInternalOutOfGas"` mode to prevent misleading `eth_estimateGas` results when internal calls run out of gas. - [#&#8203;8580](https://github.com/NomicFoundation/hardhat/pull/8580) [`8583e24`](https://github.com/NomicFoundation/hardhat/commit/8583e24c13e5fecd238734f8698867c945541f5d) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Made ethers use EDR's native Keccak-256 instead of its pure-JS one. - [#&#8203;8210](https://github.com/NomicFoundation/hardhat/pull/8210) [`024b422`](https://github.com/NomicFoundation/hardhat/commit/024b422340705f1ff5fc14b9dcc6a1f143487d86) Thanks [@&#8203;renovate](https://github.com/apps/renovate)! - Update the cryptography dependencies to their latest major versions: `@noble/hashes` and `@noble/ciphers` to 2, `ethereum-cryptography` to 3, and `micro-eth-signer` to 0.19. ##### Patch Changes - [#&#8203;8596](https://github.com/NomicFoundation/hardhat/pull/8596) [`0acd737`](https://github.com/NomicFoundation/hardhat/commit/0acd737df2e04781d6f035c79bfdac480e67b703) Thanks [@&#8203;schaable](https://github.com/schaable)! - Fixed configuration variables to stop printing of values in error messages. - [#&#8203;8596](https://github.com/NomicFoundation/hardhat/pull/8596) [`78f613c`](https://github.com/NomicFoundation/hardhat/commit/78f613c1f390cd0d39ef239a387505bc5d5dfdad) Thanks [@&#8203;schaable](https://github.com/schaable)! - Fixed error shown when an HD key cannot be derived, to only include the derivation path. - [#&#8203;8594](https://github.com/NomicFoundation/hardhat/pull/8594) [`0fc2dca`](https://github.com/NomicFoundation/hardhat/commit/0fc2dca0e12b3ed1a7491ea9e7ac934b861b31c6) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Upgrade to EDR v0.20.0. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.2.0 ### [`v3.16.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3160) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.15.0...hardhat@3.16.0) ##### Minor Changes - [#&#8203;8597](https://github.com/NomicFoundation/hardhat/pull/8597) [`6684224`](https://github.com/NomicFoundation/hardhat/commit/6684224124c48fe84904797f3c2d0c715014e64c) Thanks [@&#8203;kanej](https://github.com/kanej)! - Added slang-solx compiler support as a Hardhat plugin. ### [`v3.15.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3150) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.14.0...hardhat@3.15.0) ##### Minor Changes - [#&#8203;8457](https://github.com/NomicFoundation/hardhat/pull/8457) [`48286e0`](https://github.com/NomicFoundation/hardhat/commit/48286e0a69b49d814689073ce9897ac1b007ac19) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Improve compilation speed for Solidity test runs by porting inline configuration parsing to Rust. - [#&#8203;8541](https://github.com/NomicFoundation/hardhat/pull/8541) [`ec737a2`](https://github.com/NomicFoundation/hardhat/commit/ec737a2894162b4e59aa22dc95518deba4027003) Thanks [@&#8203;kanej](https://github.com/kanej)! - The project templates have been updated to Solidity 0.8.34 and forge-std v1.16.2. ##### Patch Changes - [#&#8203;8578](https://github.com/NomicFoundation/hardhat/pull/8578) [`d88f769`](https://github.com/NomicFoundation/hardhat/commit/d88f76989e90987a5e454c23f0c5f3fa2e07af6d) Thanks [@&#8203;kanej](https://github.com/kanej)! - Support hyphens in compiler type names. ### [`v3.14.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3140) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.13.0...hardhat@3.14.0) ##### Minor Changes - [#&#8203;8540](https://github.com/NomicFoundation/hardhat/pull/8540) [`99306ea`](https://github.com/NomicFoundation/hardhat/commit/99306ea3112ac97577cfdacc98f027ff3a261669) Thanks [@&#8203;kanej](https://github.com/kanej)! - EDR now uses platform specific `optionalDependencies`, reducing Hardhat's install size. ##### Patch Changes - [#&#8203;8514](https://github.com/NomicFoundation/hardhat/pull/8514) [`f7c6228`](https://github.com/NomicFoundation/hardhat/commit/f7c6228b057ce95309834714697c2164c14d1cd4) Thanks [@&#8203;questfever](https://github.com/questfever)! - Fixed Solidity resolver containment checks for paths whose names share a prefix with the project root, a package source-name root, or `node_modules`. - [#&#8203;8540](https://github.com/NomicFoundation/hardhat/pull/8540) [`99306ea`](https://github.com/NomicFoundation/hardhat/commit/99306ea3112ac97577cfdacc98f027ff3a261669) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed missing Solidity test stack trace when `setUp()` fails and stack traces are collected with `CollectStackTraces::Always`. - [#&#8203;8500](https://github.com/NomicFoundation/hardhat/pull/8500) [`54973b2`](https://github.com/NomicFoundation/hardhat/commit/54973b2e0a10a1ba734c9eeda5ffe0aeae54fb83) Thanks [@&#8203;SnowingFox](https://github.com/SnowingFox)! - Fixed the format of fuzz test counterexamples: byte array values such as `calldata`, `sender` and `address` are now printed as hexadecimal strings (e.g. `0x3e2033b3...`) instead of comma-separated byte lists. - [#&#8203;8522](https://github.com/NomicFoundation/hardhat/pull/8522) [`8640b4b`](https://github.com/NomicFoundation/hardhat/commit/8640b4b9b7938e539cb35158445da1cd7d5bd92d) Thanks [@&#8203;JasonColapietro](https://github.com/JasonColapietro)! - Remove Holesky testnet (chain id 17000) as a supported chain as it has been shut down. - [#&#8203;8488](https://github.com/NomicFoundation/hardhat/pull/8488) [`edd1069`](https://github.com/NomicFoundation/hardhat/commit/edd1069ad5d2f17e164eb0e8871457a88855cb94) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Stores gas snapshot cheatcode values as raw strings and calculates diffs using BigInt. ### [`v3.13.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3130) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.12.0...hardhat@3.13.0) ##### Minor Changes - [#&#8203;8453](https://github.com/NomicFoundation/hardhat/pull/8453) [`38b9f2d`](https://github.com/NomicFoundation/hardhat/commit/38b9f2d909563d7f37d0eb528e995bf7d1c577f5) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Add a fallback value for `configVariable`. - [#&#8203;8487](https://github.com/NomicFoundation/hardhat/pull/8487) [`7b7af19`](https://github.com/NomicFoundation/hardhat/commit/7b7af198a19220d3ac4b99f79cdfa9f3e525e59b) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Added a `--tolerance` option to `--snapshot-check` in Solidity tests, allowing snapshot values to drift by a given percentage before the check fails. ##### Patch Changes - [#&#8203;8486](https://github.com/NomicFoundation/hardhat/pull/8486) [`2ccd059`](https://github.com/NomicFoundation/hardhat/commit/2ccd0594df6f4202d8e4bc0200924acc9c8cd21c) Thanks [@&#8203;Kropiunig](https://github.com/Kropiunig)! - Fixed the EDR network config validation rejecting `mining.interval: 0`, a valid value which disables interval mining. - [#&#8203;8490](https://github.com/NomicFoundation/hardhat/pull/8490) [`22667f6`](https://github.com/NomicFoundation/hardhat/commit/22667f6c961f5ab030f2e1c447e1b2e4a6714ee0) Thanks [@&#8203;kanej](https://github.com/kanej)! - Added detection and custom error for failed native binding loads (`HHE27`) of `@nomicfoundation/edr` or `@nomicfoundation/solidity-analyzer`. - [#&#8203;8454](https://github.com/NomicFoundation/hardhat/pull/8454) [`47793de`](https://github.com/NomicFoundation/hardhat/commit/47793de9fe0326ac1c29b5daca4653f3f5770de6) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Only collect Solidity test stack traces at verbosity level 5 (-vvvvv) and above, fixing excessive memory usage when running large test suites with -vvv/-vvvv. ### [`v3.12.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3120) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.11.1...hardhat@3.12.0) ##### Minor Changes - [#&#8203;8442](https://github.com/NomicFoundation/hardhat/pull/8442) [`4904c72`](https://github.com/NomicFoundation/hardhat/commit/4904c726c3356e904911f8615d8f0b0bf0a76942) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Support test name filter negation (--grep-exclude) for Solidity and Mocha tests. - [#&#8203;8472](https://github.com/NomicFoundation/hardhat/pull/8472) [`2a66c2e`](https://github.com/NomicFoundation/hardhat/commit/2a66c2e9f436dbef2e5cae4d25f0fe8756f45062) Thanks [@&#8203;kanej](https://github.com/kanej)! - Added experimental EIP-7843 support to the Amsterdam hardfork: blocks now include the `slotNumber` header field, and the `SLOTNUM` (`0x4b`) opcode returns it. EDR has no consensus layer, so the value is simulated: it increments by one per mined block, starting at 0 on a new chain, or from the forked block's slot number when forking. ##### Patch Changes - [#&#8203;8464](https://github.com/NomicFoundation/hardhat/pull/8464) [`b2b69f7`](https://github.com/NomicFoundation/hardhat/commit/b2b69f75651af9bcee3de492e760bb5a15058f09) Thanks [@&#8203;nishant-uxs](https://github.com/nishant-uxs)! - Prefer environment variables over configurationVariables hooks when resolving config vars. - [#&#8203;8474](https://github.com/NomicFoundation/hardhat/pull/8474) [`49cc2f0`](https://github.com/NomicFoundation/hardhat/commit/49cc2f085aeb402c3bfe10a1c7fadf5325535128) Thanks [@&#8203;Wodann](https://github.com/Wodann)! - Report chain type to Google Analytics - [#&#8203;8458](https://github.com/NomicFoundation/hardhat/pull/8458) [`0c60e08`](https://github.com/NomicFoundation/hardhat/commit/0c60e08bec545460ced3aac1ce702a23c5e18a31) Thanks [@&#8203;schaable](https://github.com/schaable)! - Fixed project initialization so that compilation and build output directories are never copied from a template into a new project. - [#&#8203;8472](https://github.com/NomicFoundation/hardhat/pull/8472) [`2a66c2e`](https://github.com/NomicFoundation/hardhat/commit/2a66c2e9f436dbef2e5cae4d25f0fe8756f45062) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed empty stack traces on Solidity test failures when running with `-vvv` or above. - [#&#8203;8472](https://github.com/NomicFoundation/hardhat/pull/8472) [`2a66c2e`](https://github.com/NomicFoundation/hardhat/commit/2a66c2e9f436dbef2e5cae4d25f0fe8756f45062) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed missing stack traces when an invariant already fails on its initial check, when running with `-vvv` or above. - [#&#8203;8470](https://github.com/NomicFoundation/hardhat/pull/8470) [`341807c`](https://github.com/NomicFoundation/hardhat/commit/341807ca0d5cb480abf360f264829c43aad053c2) Thanks [@&#8203;kanej](https://github.com/kanej)! - Update the `chokidar` runtime dependency to its latest major version. - [#&#8203;8470](https://github.com/NomicFoundation/hardhat/pull/8470) [`4a71543`](https://github.com/NomicFoundation/hardhat/commit/4a715439373bc3fe5ebe3f62d4b16366432a6e8e) Thanks [@&#8203;kanej](https://github.com/kanej)! - Update the `p-map` dependency. - [#&#8203;8461](https://github.com/NomicFoundation/hardhat/pull/8461) [`841423a`](https://github.com/NomicFoundation/hardhat/commit/841423a913e25591a83458b39738e3e8aa5b81bc) Thanks [@&#8203;kanej](https://github.com/kanej)! - Reduce installation warnings with updated dependencies. ### [`v3.11.1`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3111) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.11.0...hardhat@3.11.1) ##### Patch Changes - [#&#8203;8451](https://github.com/NomicFoundation/hardhat/pull/8451) [`5c9d4a4`](https://github.com/NomicFoundation/hardhat/commit/5c9d4a4e0fd6c53a4c39b3629d635888da467d72) Thanks [@&#8203;kanej](https://github.com/kanej)! - Remove Hardhat 2 option from init process - [#&#8203;8452](https://github.com/NomicFoundation/hardhat/pull/8452) [`724b7cd`](https://github.com/NomicFoundation/hardhat/commit/724b7cd281411b3d995cda754747c7f508e56e5b) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed Solidity source classification so that a directory listed in both `paths.sources.solidity` and `paths.tests.solidity` is treated as a source. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.1.6 ### [`v3.11.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3110) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.10.0...hardhat@3.11.0) ##### Minor Changes - [#&#8203;8447](https://github.com/NomicFoundation/hardhat/pull/8447) [`dff401d`](https://github.com/NomicFoundation/hardhat/commit/dff401dea894eeb7c6a59f1d2aaea7158c106ea8) Thanks [@&#8203;kanej](https://github.com/kanej)! - Added experimental EIP-7778 support to the Amsterdam hardfork: a block's `gasUsed` excludes gas refunds; transaction receipts are unchanged. - [#&#8203;8447](https://github.com/NomicFoundation/hardhat/pull/8447) [`dff401d`](https://github.com/NomicFoundation/hardhat/commit/dff401dea894eeb7c6a59f1d2aaea7158c106ea8) Thanks [@&#8203;kanej](https://github.com/kanej)! - Added experimental EIP-7928 support to the Amsterdam hardfork: blocks on Amsterdam now include the `blockAccessListHash` header field. The value is simulated, not the real `keccak256(rlp(blockAccessList))`. ##### Patch Changes - [#&#8203;8447](https://github.com/NomicFoundation/hardhat/pull/8447) [`dff401d`](https://github.com/NomicFoundation/hardhat/commit/dff401dea894eeb7c6a59f1d2aaea7158c106ea8) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed JSON-RPC provider call traces omitting event logs ([NomicFoundation/edr#1542](https://github.com/NomicFoundation/edr/issues/1542)) ### [`v3.10.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3100) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.9.1...hardhat@3.10.0) ##### Minor Changes - [#&#8203;8431](https://github.com/NomicFoundation/hardhat/pull/8431) [`39c93e4`](https://github.com/NomicFoundation/hardhat/commit/39c93e4cabbbdefc1184a426757318f370f93930) Thanks [@&#8203;anaPerezGhiglia](https://github.com/anaPerezGhiglia)! - Add support for the new experimental `amsterdam` L1 hardfork, which currently implements EIP-7708 (ETH transfers emit logs). ##### Patch Changes - [#&#8203;8421](https://github.com/NomicFoundation/hardhat/pull/8421) [`1ab0408`](https://github.com/NomicFoundation/hardhat/commit/1ab04089c2eca31e611bbb3170bfdee7ced27533) Thanks [@&#8203;BROCCOLO1D](https://github.com/BROCCOLO1D)! - Fix `SolidityBuildSystem#compileBuildInfo` so build infos produced by non-solc compiler types are replayed through the Solidity compiler hooks. - [#&#8203;8414](https://github.com/NomicFoundation/hardhat/pull/8414) [`6ba2bf3`](https://github.com/NomicFoundation/hardhat/commit/6ba2bf38b5d3b7cfd9f081b61dba50503694ce0e) Thanks [@&#8203;goutamadwant](https://github.com/goutamadwant)! - Fixed Solidity tests failing to run in projects with very large compilation outputs. - [#&#8203;8438](https://github.com/NomicFoundation/hardhat/pull/8438) [`d8d2eb7`](https://github.com/NomicFoundation/hardhat/commit/d8d2eb7088584d57eb607523e554702dfe6f1fc6) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed the `hardhat node` task so the `--chain-id`, `--fork`, and `--fork-block-number` CLI options are applied to the network again. - [#&#8203;8417](https://github.com/NomicFoundation/hardhat/pull/8417) [`eb4826a`](https://github.com/NomicFoundation/hardhat/commit/eb4826af89d5eac02cafc2d3826f3888ea04a80b) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Fix a bug where the EIP-712 collector throws for a struct of the same name in a source file the user didn't include. - [#&#8203;8443](https://github.com/NomicFoundation/hardhat/pull/8443) [`b5674ea`](https://github.com/NomicFoundation/hardhat/commit/b5674ea544361ff221b123e3d2ca95bb8432c27f) Thanks [@&#8203;Kropiunig](https://github.com/Kropiunig)! - Fixed the HD wallet derivation-path validator so malformed paths containing stray colons (e.g. `m:/44'/60'/0'/0`) are rejected with the `INVALID_HD_PATH` error. - [#&#8203;8411](https://github.com/NomicFoundation/hardhat/pull/8411) [`5eb4f0e`](https://github.com/NomicFoundation/hardhat/commit/5eb4f0e1184e85c4e0d640f00a724bb525dfd139) Thanks [@&#8203;BROCCOLO1D](https://github.com/BROCCOLO1D)! - Support Solidity test `memoryLimit` and fuzz/invariant `timeout` config options. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.1.5 - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.17 ### [`v3.9.1`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#391) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.9.0...hardhat@3.9.1) ##### Patch Changes - [#&#8203;8234](https://github.com/NomicFoundation/hardhat/pull/8234) [`81871fd`](https://github.com/NomicFoundation/hardhat/commit/81871fd838c75b136c3a88813b06ac1d59a8c200) Thanks [@&#8203;tenderdeve](https://github.com/tenderdeve)! - Explain the unsupported cheatcode `eip712HashType(string,string)` and point to the documentation for the alternative instead. - [#&#8203;8400](https://github.com/NomicFoundation/hardhat/pull/8400) [`2f48724`](https://github.com/NomicFoundation/hardhat/commit/2f487248346364b235f5546df9a033b7dca8f395) Thanks [@&#8203;kanej](https://github.com/kanej)! - Support setting the transaction gas cap in Solidity Tests - [#&#8203;8367](https://github.com/NomicFoundation/hardhat/pull/8367) [`82d00fc`](https://github.com/NomicFoundation/hardhat/commit/82d00fcc7d5d3539e6dd123d893e645e42bd3645) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Lazy load dependencies to optimize bootstrap time - [#&#8203;8391](https://github.com/NomicFoundation/hardhat/pull/8391) [`f3c5727`](https://github.com/NomicFoundation/hardhat/commit/f3c5727d9df507135a37e782ea1c032fdc31c588) Thanks [@&#8203;schaable](https://github.com/schaable)! - Make `hardhat test solidity --snapshot-check` read-only. It no longer rewrites or deletes `.gas-snapshot` or `snapshots/*.json` files, and instead reports differences. The command now fails when a stored gas value differs from the current one, or when no baseline exists, with a hint to run `--snapshot`. - [#&#8203;8332](https://github.com/NomicFoundation/hardhat/pull/8332) [`e542a48`](https://github.com/NomicFoundation/hardhat/commit/e542a4850833ab1a583021bb0ee8a78530cb0be5) Thanks [@&#8203;gultekinmakif](https://github.com/gultekinmakif)! - Fixed a crash that could occur when a network returned an unexpected response while resolving the default sender account - [#&#8203;8385](https://github.com/NomicFoundation/hardhat/pull/8385) [`946e379`](https://github.com/NomicFoundation/hardhat/commit/946e379e47c1a65f95126720a80fece22fe5fd72) Thanks [@&#8203;BROCCOLO1D](https://github.com/BROCCOLO1D)! - When a Hardhat 2 plugin calls an API that no longer exists in Hardhat 3, the error now names the specific API that was used and explains how to migrate it to Hardhat 3. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.16 - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.1.4 ### [`v3.9.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#390) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.8.0...hardhat@3.9.0) ##### Minor Changes - [#&#8203;8380](https://github.com/NomicFoundation/hardhat/pull/8380) [`0fd498d`](https://github.com/NomicFoundation/hardhat/commit/0fd498df67fbdefe5ca16c77019f94715bf0401f) Thanks [@&#8203;kanej](https://github.com/kanej)! - Added support for `coverage.skipFiles`, a list of globs of Solidity files to exclude from coverage instrumentation and reporting during a `--coverage` run. ##### Patch Changes - [#&#8203;8383](https://github.com/NomicFoundation/hardhat/pull/8383) [`1660f1e`](https://github.com/NomicFoundation/hardhat/commit/1660f1e8078a1eca1de27b9256b5adcb6deb37b3) Thanks [@&#8203;schaable](https://github.com/schaable)! - Fixed an intermittent "Provider for provided chain type does not exist" error that could occur when multiple network connections were created concurrently. - [#&#8203;8371](https://github.com/NomicFoundation/hardhat/pull/8371) [`287620e`](https://github.com/NomicFoundation/hardhat/commit/287620efca6d5459cbccd5df020e08f830df8449) Thanks [@&#8203;gultekinmakif](https://github.com/gultekinmakif)! - Account overrides that share an address with the network's built-in genesis accounts are now correctly merged into a single genesis entry. - [#&#8203;8375](https://github.com/NomicFoundation/hardhat/pull/8375) [`931a5f0`](https://github.com/NomicFoundation/hardhat/commit/931a5f0699d310965b338a773f5a69c1dbcb2ec3) Thanks [@&#8203;schaable](https://github.com/schaable)! - Suppressed the solc initcode size warning for Solidity test contracts and when running under `--coverage`. - [#&#8203;8372](https://github.com/NomicFoundation/hardhat/pull/8372) [`5f6aff2`](https://github.com/NomicFoundation/hardhat/commit/5f6aff268841e947a2dd32a72a18885adf3d78de) Thanks [@&#8203;gultekinmakif](https://github.com/gultekinmakif)! - Improved validation for `initialDate` network configuration. Invalid `Date` objects and unparseable date `string`s are now rejected during config loading rather than causing a runtime error later. ### [`v3.8.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#380) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.7.0...hardhat@3.8.0) ##### Minor Changes - [#&#8203;8339](https://github.com/NomicFoundation/hardhat/pull/8339) [`f21390f`](https://github.com/NomicFoundation/hardhat/commit/f21390fe78773d8ba514cd4a64954220437293e3) Thanks [@&#8203;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. - [#&#8203;8339](https://github.com/NomicFoundation/hardhat/pull/8339) [`19c6927`](https://github.com/NomicFoundation/hardhat/commit/19c6927372fb39c4c4f0afe37895c738abbde237) Thanks [@&#8203;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 - [#&#8203;8336](https://github.com/NomicFoundation/hardhat/pull/8336) [`86bfe66`](https://github.com/NomicFoundation/hardhat/commit/86bfe66b9b73c52649be2207b00b315a3b758f25) Thanks [@&#8203;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 - [#&#8203;8345](https://github.com/NomicFoundation/hardhat/pull/8345) [`9d5b96c`](https://github.com/NomicFoundation/hardhat/commit/9d5b96c59b4b84db549fff18144e6d0c8b129901) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Add `.solidityStack` property to the `SolidityError` exceptions generated by EDR - [#&#8203;8365](https://github.com/NomicFoundation/hardhat/pull/8365) [`dbb689b`](https://github.com/NomicFoundation/hardhat/commit/dbb689b94925a949c554708d7ded2d9dde074270) Thanks [@&#8203;kanej](https://github.com/kanej)! - Suppress the solc contract size warning for Solidity test files. - [#&#8203;8368](https://github.com/NomicFoundation/hardhat/pull/8368) [`2e2ba99`](https://github.com/NomicFoundation/hardhat/commit/2e2ba996cc7c8a3056da3352defeb9cc9eba0cb2) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed the `build` task attempting to download a compiler even though a `path` to a local compiler is configured. - [#&#8203;8339](https://github.com/NomicFoundation/hardhat/pull/8339) [`25cea9f`](https://github.com/NomicFoundation/hardhat/commit/25cea9f9789c56d3e43f1cc8f0f7a34adde89605) Thanks [@&#8203;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: - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.15 ### [`v3.7.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#370) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.6.0...hardhat@3.7.0) ##### Minor Changes - [#&#8203;8200](https://github.com/NomicFoundation/hardhat/pull/8200) [`ce430ac`](https://github.com/NomicFoundation/hardhat/commit/ce430ac97113e743ff6b2d34105f1ebde90d0d91) Thanks [@&#8203;tenderdeve](https://github.com/tenderdeve)! - Hardhat 3 is now stable, the "Beta" wording is being dropped from the `hardhat --init` process and project templates. ### [`v3.6.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#360) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.5.1...hardhat@3.6.0) ##### Minor Changes - [#&#8203;8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@&#8203;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. - [#&#8203;8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@&#8203;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`. - [#&#8203;8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@&#8203;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. - [#&#8203;8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@&#8203;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 - [#&#8203;8327](https://github.com/NomicFoundation/hardhat/pull/8327) [`dee44f6`](https://github.com/NomicFoundation/hardhat/commit/dee44f69cafb9a11b702abe73e6215a954f16937) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - `SolidityBuildSystem#cleanupArtifacts` now returns the list of artifact paths that remain after the cleanup. - [#&#8203;8335](https://github.com/NomicFoundation/hardhat/pull/8335) [`a4bf547`](https://github.com/NomicFoundation/hardhat/commit/a4bf547bd7bc7d60e63fc31efc3dd27edb197b78) Thanks [@&#8203;gultekinmakif](https://github.com/gultekinmakif)! - Allow STRING_WITHOUT_DEFAULT and FILE_WITHOUT_DEFAULT as positional arguments - [#&#8203;8326](https://github.com/NomicFoundation/hardhat/pull/8326) [`959f2e1`](https://github.com/NomicFoundation/hardhat/commit/959f2e1989c4bcbff05f717b33a2df1098f67616) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed `hardhat flatten` silently producing a misleading output for projects with cyclic Solidity dependencies. - [#&#8203;8262](https://github.com/NomicFoundation/hardhat/pull/8262) [`d3ba170`](https://github.com/NomicFoundation/hardhat/commit/d3ba17006874715de86194c6a136cd0b7afb9bc4) Thanks [@&#8203;fvictorio](https://github.com/fvictorio)! - Add AGENTS.md and agentic skills to sample projects - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.1.3 - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.14 ### [`v3.5.1`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#351) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.5.0...hardhat@3.5.1) ##### Patch Changes - [#&#8203;8316](https://github.com/NomicFoundation/hardhat/pull/8316) [`971a135`](https://github.com/NomicFoundation/hardhat/commit/971a135becc86dea7a3039148b55d0774c7c26a0) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Fix `hardhat --init` when used with pnpm 11 - [#&#8203;8302](https://github.com/NomicFoundation/hardhat/pull/8302) [`fb99caa`](https://github.com/NomicFoundation/hardhat/commit/fb99caa5b9bf75ffa70d2488112755b8de94e7a3) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Suppress solc warnings that are direct side effects of `--coverage` instrumentation. - [#&#8203;8315](https://github.com/NomicFoundation/hardhat/pull/8315) [`90650fd`](https://github.com/NomicFoundation/hardhat/commit/90650fd841a800adecdae011c196c8ec83a1a053) Thanks [@&#8203;schaable](https://github.com/schaable)! - Improved error messages for common migration errors. ### [`v3.5.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#350) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.4.5...hardhat@3.5.0) ##### Minor Changes - [#&#8203;8301](https://github.com/NomicFoundation/hardhat/pull/8301) [`793cc84`](https://github.com/NomicFoundation/hardhat/commit/793cc84d311ff96b1725f5b83a0063b9a28e3d19) Thanks [@&#8203;kanej](https://github.com/kanej)! - Disable transaction gas cap and block gas limit when running tests under `--coverage`. - [#&#8203;8270](https://github.com/NomicFoundation/hardhat/pull/8270) [`cf2823b`](https://github.com/NomicFoundation/hardhat/commit/cf2823b5ec9b5e6427c874636393a5ffcb70f412) Thanks [@&#8203;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 - [#&#8203;8298](https://github.com/NomicFoundation/hardhat/pull/8298) [`83b1ae1`](https://github.com/NomicFoundation/hardhat/commit/83b1ae1bdc3b941f9e15f9d2d92cadf88f7a8747) Thanks [@&#8203;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 - [#&#8203;8264](https://github.com/NomicFoundation/hardhat/pull/8264) [`8452f97`](https://github.com/NomicFoundation/hardhat/commit/8452f9726205540e1684d3f8458bfd145e790226) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Export `./package.json` so consumers can import the package's manifest. - [#&#8203;8310](https://github.com/NomicFoundation/hardhat/pull/8310) [`9f394ec`](https://github.com/NomicFoundation/hardhat/commit/9f394ec7547cf7dd3392aeb826fca96b9c0aca28) Thanks [@&#8203;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 [#&#8203;8075](https://github.com/NomicFoundation/hardhat/issues/8075). - [#&#8203;8269](https://github.com/NomicFoundation/hardhat/pull/8269) [`045cb8d`](https://github.com/NomicFoundation/hardhat/commit/045cb8d46162f07b51cc08e91395a196ee42d07c) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Always load the builtin plugins' type extensions - [#&#8203;8243](https://github.com/NomicFoundation/hardhat/pull/8243) [`08805db`](https://github.com/NomicFoundation/hardhat/commit/08805db44549f1ee2175854a456d94a849e7a839) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Support EIP-712 cheatcodes in Solidity Test. - [#&#8203;8301](https://github.com/NomicFoundation/hardhat/pull/8301) [`793cc84`](https://github.com/NomicFoundation/hardhat/commit/793cc84d311ff96b1725f5b83a0063b9a28e3d19) Thanks [@&#8203;kanej](https://github.com/kanej)! - Respect user config for `allowUnlimitedContractSize` when running under `--coverage`. - [#&#8203;8259](https://github.com/NomicFoundation/hardhat/pull/8259) [`1d1204f`](https://github.com/NomicFoundation/hardhat/commit/1d1204fe9baa8221d6c32025ffb2d51b67745b19) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed build overrides not being respected when running `compile` - [#&#8203;8188](https://github.com/NomicFoundation/hardhat/pull/8188) [`d48bbfd`](https://github.com/NomicFoundation/hardhat/commit/d48bbfd86c22f5dfaaee7e926814ace0db20f320) Thanks [@&#8203;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. - [#&#8203;8290](https://github.com/NomicFoundation/hardhat/pull/8290) [`3a15b11`](https://github.com/NomicFoundation/hardhat/commit/3a15b11b4f4f4987b60ea09d2252dfddbe2f430a) Thanks [@&#8203;gultekinmakif](https://github.com/gultekinmakif)! - Fixed `abstract` contracts being picked up as test suites by the Solidity test runner ([#&#8203;8203](https://github.com/NomicFoundation/hardhat/issues/8203)). - [#&#8203;8266](https://github.com/NomicFoundation/hardhat/pull/8266) [`325bae1`](https://github.com/NomicFoundation/hardhat/commit/325bae178dd5278f995d591516e3937d5590de4d) Thanks [@&#8203;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. - [#&#8203;8312](https://github.com/NomicFoundation/hardhat/pull/8312) [`76c15ff`](https://github.com/NomicFoundation/hardhat/commit/76c15ffb080978aea82a198b990b34a2d9d91c99) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Update the Hardhat 3 TypeScript project templates for TypeScript 6. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.13 - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.1.2 - [@&#8203;nomicfoundation/hardhat-vendored](https://github.com/nomicfoundation/hardhat-vendored)@3.0.4 - [@&#8203;nomicfoundation/hardhat-zod-utils](https://github.com/nomicfoundation/hardhat-zod-utils)@3.0.5 ### [`v3.4.5`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#345) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.4.4...hardhat@3.4.5) ##### Patch Changes - [#&#8203;8253](https://github.com/NomicFoundation/hardhat/pull/8253) [`4aeed16`](https://github.com/NomicFoundation/hardhat/commit/4aeed168afeeb3305a0841605cf2ff5ed20d54a4) Thanks [@&#8203;schaable](https://github.com/schaable)! - Fix compilation artifacts accidentally being deleted when their path contains an intermediate directory whose name ends in `.sol`. - [#&#8203;8191](https://github.com/NomicFoundation/hardhat/pull/8191) [`2a4ae8e`](https://github.com/NomicFoundation/hardhat/commit/2a4ae8e7dc78cabbe8b17bec778952f0124f9759) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Update how type extensions are handled to optimize the bootstrap process of Hardhat. - [#&#8203;8190](https://github.com/NomicFoundation/hardhat/pull/8190) [`2443073`](https://github.com/NomicFoundation/hardhat/commit/24430736fdec068d29895156d7789c4e91b6c678) Thanks [@&#8203;anaPerezGhiglia](https://github.com/anaPerezGhiglia)! - Bump EDR version to `0.12.0-next.32`. - [#&#8203;8228](https://github.com/NomicFoundation/hardhat/pull/8228) [`417bbf9`](https://github.com/NomicFoundation/hardhat/commit/417bbf9f5d8ee4f9e19788aa40571452d36086d2) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Small performance optimizations - [#&#8203;8229](https://github.com/NomicFoundation/hardhat/pull/8229) [`a4d106e`](https://github.com/NomicFoundation/hardhat/commit/a4d106e78faf6278747ff526a31d9c26ec92a2ec) Thanks [@&#8203;schaable](https://github.com/schaable)! - Add `isolate` and `evmVersion` to the Solidity test inline configuration. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.1.1 ### [`v3.4.4`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#344) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.4.3...hardhat@3.4.4) ##### Patch Changes - [#&#8203;8213](https://github.com/NomicFoundation/hardhat/pull/8213) [`448da88`](https://github.com/NomicFoundation/hardhat/commit/448da88c9a221576c212d3a7e8eb5cc124087d70) Thanks [@&#8203;kanej](https://github.com/kanej)! - Reduced internal memory usage during coverage test runs ([#&#8203;8213](https://github.com/NomicFoundation/hardhat/pull/8213)) - [#&#8203;8197](https://github.com/NomicFoundation/hardhat/pull/8197) [`d3cb008`](https://github.com/NomicFoundation/hardhat/commit/d3cb0080e1a7a44cbfddfae879aa8bc23cfe818b) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Update the error reporting logic to reduce noise ### [`v3.4.3`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#343) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.4.2...hardhat@3.4.3) ##### Patch Changes - [#&#8203;8196](https://github.com/NomicFoundation/hardhat/pull/8196) [`b669814`](https://github.com/NomicFoundation/hardhat/commit/b6698146abc87aaa6b2b2f18c830a01dba9b6daa) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Improve error messages in common failures - [#&#8203;8196](https://github.com/NomicFoundation/hardhat/pull/8196) [`73436aa`](https://github.com/NomicFoundation/hardhat/commit/73436aaa1ddac805f8d855627b5b40ad69cf7d2e) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Export missing error types - [#&#8203;8195](https://github.com/NomicFoundation/hardhat/pull/8195) [`79205cc`](https://github.com/NomicFoundation/hardhat/commit/79205cc7dc5c89e88438ac0db8fd812720d07df2) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Replace `chalk` with `util.styleText`. - [#&#8203;8224](https://github.com/NomicFoundation/hardhat/pull/8224) [`3614c02`](https://github.com/NomicFoundation/hardhat/commit/3614c0241250ad210a1eb608e9a39482d34b6ce7) Thanks [@&#8203;schaable](https://github.com/schaable)! - Add a `fuzz.showLogs` option to the Solidity test config to display `console.log` output from fuzz tests. - [#&#8203;8218](https://github.com/NomicFoundation/hardhat/pull/8218) [`32f2b59`](https://github.com/NomicFoundation/hardhat/commit/32f2b5970e870a38db5e4e5b184038faf6052a0f) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Fix `hardhat test solidity --no-compile` failing with `SELECTED_TEST_FILES_NOT_COMPILED` when no test files are specified. - [#&#8203;8139](https://github.com/NomicFoundation/hardhat/pull/8139) [`536b745`](https://github.com/NomicFoundation/hardhat/commit/536b745d041a252601d6feebdbf7d9473accd78c) Thanks [@&#8203;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) - [#&#8203;8199](https://github.com/NomicFoundation/hardhat/pull/8199) [`2cb91f1`](https://github.com/NomicFoundation/hardhat/commit/2cb91f12e7a43e9f883a3451fafc7b7283511c05) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Add LPT scheduling to the Solidity build system - [#&#8203;8219](https://github.com/NomicFoundation/hardhat/pull/8219) [`2cad309`](https://github.com/NomicFoundation/hardhat/commit/2cad309eb8d35fcc5d2aba5d75a5af4d63d50508) Thanks [@&#8203;schaable](https://github.com/schaable)! - Improved performance by replacing the semver dependency with a lightweight in-tree implementation. - [#&#8203;8207](https://github.com/NomicFoundation/hardhat/pull/8207) [`d594209`](https://github.com/NomicFoundation/hardhat/commit/d59420968bffca83e1ad2712c6881d19cc7e1a99) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Improved performance by replacing the debug logging library with a lightweight in-tree implementation. - [#&#8203;8189](https://github.com/NomicFoundation/hardhat/pull/8189) [`b5ca1ae`](https://github.com/NomicFoundation/hardhat/commit/b5ca1aee1eb2571ec23f54ac8a9b2c39a90361c6) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Introduce a TrueCasePathResolver class to optimize repeated filesystem casing resolution - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.1.0 - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.12 - [@&#8203;nomicfoundation/hardhat-vendored](https://github.com/nomicfoundation/hardhat-vendored)@3.0.3 ### [`v3.4.2`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#342) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.4.1...hardhat@3.4.2) ##### Patch Changes - [#&#8203;8177](https://github.com/NomicFoundation/hardhat/pull/8177) [`7cab964`](https://github.com/NomicFoundation/hardhat/commit/7cab96452b81d0f96053ec26a038f3bc13e62d1b) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Optimize the `HookManager` and the `coverage` plugin - [#&#8203;8187](https://github.com/NomicFoundation/hardhat/pull/8187) [`8f6a418`](https://github.com/NomicFoundation/hardhat/commit/8f6a418203e78b699ca1a4d9b498d13a428e71f6) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Improved the logic for handling `Node.js` versions that fall below the minimum requirement. - [#&#8203;8183](https://github.com/NomicFoundation/hardhat/pull/8183) [`88f8d59`](https://github.com/NomicFoundation/hardhat/commit/88f8d59a947bd0a2045effd84d518d9e5a109e6d) Thanks [@&#8203;schaable](https://github.com/schaable)! - Speed up startup by loading the coverage manager only when --coverage is set. - [#&#8203;8183](https://github.com/NomicFoundation/hardhat/pull/8183) [`82208ba`](https://github.com/NomicFoundation/hardhat/commit/82208baeba7847820810b1d3c7b2aa149f9688c0) Thanks [@&#8203;schaable](https://github.com/schaable)! - Speed up HRE creation by loading user-interruption support only when it's first used. - [#&#8203;8175](https://github.com/NomicFoundation/hardhat/pull/8175) [`eeea0aa`](https://github.com/NomicFoundation/hardhat/commit/eeea0aa3ebde0eca139bcdf74794252cad68500d) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Restructure the imports of the network-manager. - [#&#8203;8183](https://github.com/NomicFoundation/hardhat/pull/8183) [`baa9c9a`](https://github.com/NomicFoundation/hardhat/commit/baa9c9a5f9fc1a18afc23cb0bf1c5831dccd13c5) Thanks [@&#8203;schaable](https://github.com/schaable)! - Speed up startup by loading the gas-analytics manager only when --gas-stats or --gas-stats-json is set. - [#&#8203;8180](https://github.com/NomicFoundation/hardhat/pull/8180) [`4122faa`](https://github.com/NomicFoundation/hardhat/commit/4122faa3da2b588d83f2c94574f04ae2abd2e723) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Optimize file system traversal helpers - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.0.5 ### [`v3.4.1`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#341) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.4.0...hardhat@3.4.1) ##### Patch Changes - [#&#8203;8142](https://github.com/NomicFoundation/hardhat/pull/8142) [`a997091`](https://github.com/NomicFoundation/hardhat/commit/a997091fe104cc4c96abadae8895d8068cff0201) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Make `node:test` sequential by default and run test files in the same process (`isolation: "none"`). - [#&#8203;8173](https://github.com/NomicFoundation/hardhat/pull/8173) [`1a01f9b`](https://github.com/NomicFoundation/hardhat/commit/1a01f9ba842311bec890c1e59e4b52345b1ef74f) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Improve error reporter - [#&#8203;8176](https://github.com/NomicFoundation/hardhat/pull/8176) [`13e46b2`](https://github.com/NomicFoundation/hardhat/commit/13e46b2e5a481a964dfd88041277e026308208b7) Thanks [@&#8203;kanej](https://github.com/kanej)! - Fixed compilation error check to ignore ambiguous warnings ([#&#8203;8176](https://github.com/NomicFoundation/hardhat/pull/8176)) - [#&#8203;8179](https://github.com/NomicFoundation/hardhat/pull/8179) [`d16d82a`](https://github.com/NomicFoundation/hardhat/commit/d16d82abfd5c9fa044cb508468cd4b50a5fcfd8a) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Await all returned promises for better debuggability - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.0.4 ### [`v3.4.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#340) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.3.0...hardhat@3.4.0) ##### Minor Changes - [#&#8203;8116](https://github.com/NomicFoundation/hardhat/pull/8116) [`88787e1`](https://github.com/NomicFoundation/hardhat/commit/88787e172a3d90652d0ffaf73e31857f6ed875cc) Thanks [@&#8203;kanej](https://github.com/kanej)! - Add `getOrCreate` to the network API - [#&#8203;8127](https://github.com/NomicFoundation/hardhat/pull/8127) [`353cf86`](https://github.com/NomicFoundation/hardhat/commit/353cf86d83f43aba998d63acf646bec5e3355512) Thanks [@&#8203;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 - [#&#8203;8105](https://github.com/NomicFoundation/hardhat/pull/8105) [`00e9695`](https://github.com/NomicFoundation/hardhat/commit/00e9695909deef9b08105bc44549f98571df7ef3) Thanks [@&#8203;marianfe](https://github.com/marianfe)! - Add Solidity 0.8.34 to the default EVM targets table (osaka) ([#&#8203;8105](https://github.com/NomicFoundation/hardhat/pull/8105)) - [#&#8203;8108](https://github.com/NomicFoundation/hardhat/pull/8108) [`5404ac8`](https://github.com/NomicFoundation/hardhat/commit/5404ac83fc3d04bfadca9ffad412dff955ee5035) Thanks [@&#8203;schaable](https://github.com/schaable)! - Display contract runtime bytecode size in the gas stats table and JSON output - [#&#8203;8104](https://github.com/NomicFoundation/hardhat/pull/8104) [`e27a7ad`](https://github.com/NomicFoundation/hardhat/commit/e27a7ad584b01392afc9294f739d731ab6e78f06) Thanks [@&#8203;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. - [#&#8203;8103](https://github.com/NomicFoundation/hardhat/pull/8103) [`14b335a`](https://github.com/NomicFoundation/hardhat/commit/14b335a06a10caf4149b6a40241c0eab8d1788c4) Thanks [@&#8203;kanej](https://github.com/kanej)! - Improved network handler performance through additional metadata to allow early skipping ([#&#8203;8103](https://github.com/NomicFoundation/hardhat/pull/8103)) - [#&#8203;8148](https://github.com/NomicFoundation/hardhat/pull/8148) [`49ec5d0`](https://github.com/NomicFoundation/hardhat/commit/49ec5d0cd4ddfaa97ec1fe1838d781cc41e53d72) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Don't report HardhatErrors that aren't bugs - [#&#8203;8102](https://github.com/NomicFoundation/hardhat/pull/8102) [`d5f8394`](https://github.com/NomicFoundation/hardhat/commit/d5f8394aaabe4f2bd083264d15419d26235f51f2) Thanks [@&#8203;kanej](https://github.com/kanej)! - Improved performance of network handler initialization ([#&#8203;8102](https://github.com/NomicFoundation/hardhat/pull/8102)) - [#&#8203;8141](https://github.com/NomicFoundation/hardhat/pull/8141) [`63c68c1`](https://github.com/NomicFoundation/hardhat/commit/63c68c1968209731fcac636bcd336fecf4e444c5) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Added support for EDR structured Solidity test cheatcode errors. - [#&#8203;8123](https://github.com/NomicFoundation/hardhat/pull/8123) [`cf3933b`](https://github.com/NomicFoundation/hardhat/commit/cf3933bbc7bee5f34cf5b480d9f20820362b1d23) Thanks [@&#8203;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. - [#&#8203;8143](https://github.com/NomicFoundation/hardhat/pull/8143) [`f74cec9`](https://github.com/NomicFoundation/hardhat/commit/f74cec9451958b85c9702ef77ee7eb6d963cd84b) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Update `.gitignore` files in the sample projects to ignore snapshots and env files. - [#&#8203;8096](https://github.com/NomicFoundation/hardhat/pull/8096) [`7fb721b`](https://github.com/NomicFoundation/hardhat/commit/7fb721bb2b1c521d0073a156f361c60a049e8fdf) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - \[chore] Move to packages/ folder. - [#&#8203;8116](https://github.com/NomicFoundation/hardhat/pull/8116) [`88787e1`](https://github.com/NomicFoundation/hardhat/commit/88787e172a3d90652d0ffaf73e31857f6ed875cc) Thanks [@&#8203;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. - [#&#8203;8119](https://github.com/NomicFoundation/hardhat/pull/8119) [`ff5a97e`](https://github.com/NomicFoundation/hardhat/commit/ff5a97e32468b0f841dc8a530ba8c2aac91a5c22) Thanks [@&#8203;schaable](https://github.com/schaable)! - Show proxy chain information in --gas-stats and --gas-stats-json output - [#&#8203;8114](https://github.com/NomicFoundation/hardhat/pull/8114) [`6eeb144`](https://github.com/NomicFoundation/hardhat/commit/6eeb144c6aa47c46322798762422560896bb65a1) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Updated forking configurations to support number and bigint. - [#&#8203;8121](https://github.com/NomicFoundation/hardhat/pull/8121) [`0f1038c`](https://github.com/NomicFoundation/hardhat/commit/0f1038c9b91b0e5f61ecc402837d003fa9baf07f) Thanks [@&#8203;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. - [#&#8203;8122](https://github.com/NomicFoundation/hardhat/pull/8122) [`edfa548`](https://github.com/NomicFoundation/hardhat/commit/edfa548e48076d7f127523354c173b48ed9494a7) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Optimize `hre.artifacts.artifactExists()` - [#&#8203;8115](https://github.com/NomicFoundation/hardhat/pull/8115) [`935a043`](https://github.com/NomicFoundation/hardhat/commit/935a043bd34cfb91593b5485c9b672282109c699) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Breaking change: removed `timeout` option for Solidity tests in `hardhat.config.ts` file. - [#&#8203;8120](https://github.com/NomicFoundation/hardhat/pull/8120) [`688870c`](https://github.com/NomicFoundation/hardhat/commit/688870c7900ba729f27af563d0c2d03f4f70146e) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Fix remappings duplication - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.11 - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.0.3 - [@&#8203;nomicfoundation/hardhat-vendored](https://github.com/nomicfoundation/hardhat-vendored)@3.0.2 - [@&#8203;nomicfoundation/hardhat-zod-utils](https://github.com/nomicfoundation/hardhat-zod-utils)@3.0.4 ### [`v3.3.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#330) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.2.0...hardhat@3.3.0) ##### Minor Changes - [#&#8203;8073](https://github.com/NomicFoundation/hardhat/pull/8073) [`dfe4ffe`](https://github.com/NomicFoundation/hardhat/commit/dfe4ffeb57b97419ae0cca8929c9bd9c25912dbe) Thanks [@&#8203;schaable](https://github.com/schaable)! - Add support for per-test inline configuration in solidity tests. ##### Patch Changes - [#&#8203;8008](https://github.com/NomicFoundation/hardhat/pull/8008) [`6fb3c27`](https://github.com/NomicFoundation/hardhat/commit/6fb3c27c58ece8cf2ba30ff9664cd00f4c925502) Thanks [@&#8203;marianfe](https://github.com/marianfe)! - Introduce multi-compiler abstraction that allows plugins to define new Solidity compiler types ([#&#8203;8008](https://github.com/NomicFoundation/hardhat/pull/8008)). - [#&#8203;8077](https://github.com/NomicFoundation/hardhat/pull/8077) [`4581395`](https://github.com/NomicFoundation/hardhat/commit/45813957cb9220e9d781c5344f3829801a64359a) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Optimize the initialization of EDR Network Connections by caching their genesis state. - [#&#8203;7983](https://github.com/NomicFoundation/hardhat/pull/7983) [`8e194d0`](https://github.com/NomicFoundation/hardhat/commit/8e194d0899bf9a74d9cacf84e289e41ed3966c14) Thanks [@&#8203;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)). - [#&#8203;8077](https://github.com/NomicFoundation/hardhat/pull/8077) [`4581395`](https://github.com/NomicFoundation/hardhat/commit/45813957cb9220e9d781c5344f3829801a64359a) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Fix a bug where `network.connect()` re-resolved the config when not needed. - [#&#8203;8009](https://github.com/NomicFoundation/hardhat/pull/8009) [`83b412e`](https://github.com/NomicFoundation/hardhat/commit/83b412ef7d0e09261855185d0967e4da827fbaad) Thanks [@&#8203;marianfe](https://github.com/marianfe)! - Add `SolidityHooks#downloadCompilers` and `SolidityHooks#getCompiler` hooks for extensible custom compiler support ([#&#8203;8009](https://github.com/NomicFoundation/hardhat/pull/8009)) - [#&#8203;8091](https://github.com/NomicFoundation/hardhat/pull/8091) [`c89cb91`](https://github.com/NomicFoundation/hardhat/commit/c89cb9183a684040a6a5ebbf1446db513f1ca95f) Thanks [@&#8203;kanej](https://github.com/kanej)! - Improved performance of the network stack by removing a clone of the http request ([#&#8203;8046](https://github.com/NomicFoundation/hardhat/issues/8046)) - [#&#8203;8088](https://github.com/NomicFoundation/hardhat/pull/8088) [`23c0d36`](https://github.com/NomicFoundation/hardhat/commit/23c0d3658f29305bf0adbbce4644a54d7ef22550) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Optimize imports. - [#&#8203;8074](https://github.com/NomicFoundation/hardhat/pull/8074) [`8984862`](https://github.com/NomicFoundation/hardhat/commit/89848629d9d139ad8a3cb23077c97557beab421a) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Optimize the initialization of EDR Network Connections by only processing the build outputs once. - [#&#8203;8082](https://github.com/NomicFoundation/hardhat/pull/8082) [`72a033d`](https://github.com/NomicFoundation/hardhat/commit/72a033dc163a6f4b8a9cd87eb918084f4bafe5b6) Thanks [@&#8203;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) - [#&#8203;8008](https://github.com/NomicFoundation/hardhat/pull/8008) [`57d1075`](https://github.com/NomicFoundation/hardhat/commit/57d10751c101fc00aeab2b588d23003c597edc40) Thanks [@&#8203;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 ([#&#8203;8008](https://github.com/NomicFoundation/hardhat/pull/8008)). - [#&#8203;8079](https://github.com/NomicFoundation/hardhat/pull/8079) [`759983b`](https://github.com/NomicFoundation/hardhat/commit/759983be975c043e963ca8b3d7874467e8b078d2) Thanks [@&#8203;alcuadrado](https://github.com/alcuadrado)! - Optimize the network connections to prevent memory leaks. - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-utils](https://github.com/nomicfoundation/hardhat-utils)@4.0.2 - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.10 ### [`v3.2.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#320) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.12...hardhat@3.2.0) ##### Minor Changes - [#&#8203;8064](https://github.com/NomicFoundation/hardhat/pull/8064) [`392fc38`](https://github.com/NomicFoundation/hardhat/commit/392fc388556e9ec3ca1309db0ffb2ded24439ee2) Thanks [@&#8203;schaable](https://github.com/schaable)! - Add `--gas-stats-json <path>` global option to write gas usage statistics to a JSON file ([#&#8203;7990](https://github.com/NomicFoundation/hardhat/issues/7990)). ##### Patch Changes - [#&#8203;8061](https://github.com/NomicFoundation/hardhat/pull/8061) [`c03f647`](https://github.com/NomicFoundation/hardhat/commit/c03f6476cc62ae31e745e0e1a72371d3cba8e9dc) Thanks [@&#8203;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)). - [#&#8203;8060](https://github.com/NomicFoundation/hardhat/pull/8060) [`4461d1e`](https://github.com/NomicFoundation/hardhat/commit/4461d1e760c42e186c4b64e4332ca2c6333b86bf) Thanks [@&#8203;kanej](https://github.com/kanej)! - Updated `network.createServer` signature to type non-generic chainTypes - [#&#8203;8038](https://github.com/NomicFoundation/hardhat/pull/8038) [`465d00d`](https://github.com/NomicFoundation/hardhat/commit/465d00d6f67b72752ffa54a88ee90027667f0030) Thanks [@&#8203;schaable](https://github.com/schaable)! - Aggregate deployment gas statistics (min, avg, median, max, count) instead of showing only the last deployment cost and size ([#&#8203;8037](https://github.com/NomicFoundation/hardhat/issues/8037)) - [#&#8203;8060](https://github.com/NomicFoundation/hardhat/pull/8060) [`0e8abcf`](https://github.com/NomicFoundation/hardhat/commit/0e8abcf376b7b3618261512c98ae5dcfef716216) Thanks [@&#8203;kanej](https://github.com/kanej)! - Added guard against `http` network configs in `network.createServer(...)` - [#&#8203;8036](https://github.com/NomicFoundation/hardhat/pull/8036) [`954825a`](https://github.com/NomicFoundation/hardhat/commit/954825a35f5813625c4a72d8e887895d7a71e78b) Thanks [@&#8203;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 ([#&#8203;7500](https://github.com/NomicFoundation/hardhat/issues/7500)). - [#&#8203;8062](https://github.com/NomicFoundation/hardhat/pull/8062) [`45963d4`](https://github.com/NomicFoundation/hardhat/commit/45963d4ef98f505e7f1e40414ead94baaa566d79) Thanks [@&#8203;ChristopherDedominici](https://github.com/ChristopherDedominici)! - Fixed compiler download for old versions in ARM64 ([8062](https://github.com/NomicFoundation/hardhat/pull/8062)). - Updated dependencies: - [@&#8203;nomicfoundation/hardhat-errors](https://github.com/nomicfoundation/hardhat-errors)@3.0.9 ### [`v3.1.12`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3112) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.11...hardhat@3.1.12) ##### Patch Changes - [`01b41ee`](https://github.com/NomicFoundation/hardhat/commit/01b41ee): Added support for function gas snapshots and snapshot cheatcodes in Solidity tests with `--snapshot` and `--snapshot-check` flags ([#&#8203;7769](https://github.com/NomicFoundation/hardhat/issues/7769)) - [`e37f96c`](https://github.com/NomicFoundation/hardhat/commit/e37f96c): Add `TestRunResult` type that wraps `TestSummary`, allowing plugins to extend test results with additional data - [`bda5a0a`](https://github.com/NomicFoundation/hardhat/commit/bda5a0a): Bumped EDR version to [`0.12.0-next.28`](https://github.com/NomicFoundation/edr/releases/tag/%40nomicfoundation%2Fedr%400.12.0-next.28) ### [`v3.1.11`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3111) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.10...hardhat@3.1.11) ##### Patch Changes - [`2cbf218`](https://github.com/NomicFoundation/hardhat/commit/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 [ethereum/go-ethereum#23558](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`](https://github.com/NomicFoundation/hardhat/commit/bc193be): Use concrete value types for contract names in hardhat-viem and hardhat-ethers - [`2cbf218`](https://github.com/NomicFoundation/hardhat/commit/2cbf218): Make SolidityBuildSystem easier to work with ([#&#8203;7988](https://github.com/NomicFoundation/hardhat/pull/7988)) - [`19b691d`](https://github.com/NomicFoundation/hardhat/commit/19b691d): Fix typo in assertion message [#&#8203;8028](https://github.com/NomicFoundation/hardhat/pull/8028) - [`2cbf218`](https://github.com/NomicFoundation/hardhat/commit/2cbf218): Expose `Result` type for task action success/failure signaling. - [`2cbf218`](https://github.com/NomicFoundation/hardhat/commit/2cbf218): Fixed the acceptance of relative paths to `node_modules` in npm remappings ([#&#8203;8007](https://github.com/NomicFoundation/hardhat/pull/8007)) - [`2cbf218`](https://github.com/NomicFoundation/hardhat/commit/2cbf218): Implement a global banner logic in Hardhat 3 [#&#8203;8021](https://github.com/NomicFoundation/hardhat/pull/8021) - [`4ff11c1`](https://github.com/NomicFoundation/hardhat/commit/4ff11c1): Return typed `Result` from test runners and telemetry tasks ([#&#8203;8015](https://github.com/NomicFoundation/hardhat/pull/8015)). - [`2cbf218`](https://github.com/NomicFoundation/hardhat/commit/2cbf218): Show fs paths and better error messages when a Solidity file can't be compiled with any configured compiler ([#&#8203;7988](https://github.com/NomicFoundation/hardhat/pull/7988)) - [`2cbf218`](https://github.com/NomicFoundation/hardhat/commit/2cbf218): Add `onTestRunStart`, `onTestWorkerDone`, and `onTestRunDone` test hooks ([#&#8203;8001](https://github.com/NomicFoundation/hardhat/pull/8001)) ### [`v3.1.10`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3110) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.9...hardhat@3.1.10) ##### Patch Changes - [`ca26adb`](https://github.com/NomicFoundation/hardhat/commit/ca26adb): Update `hardhat node` to always use the new `node` network ([#&#8203;7989](https://github.com/NomicFoundation/hardhat/issues/7989))\[[#&#8203;7989](https://github.com/NomicFoundation/hardhat/pull/7989)] - [`87623db`](https://github.com/NomicFoundation/hardhat/commit/87623db): Introduce new inter-process mutex implementation ([7942](https://github.com/NomicFoundation/hardhat/pull/7942)). - [`88e9cb5`](https://github.com/NomicFoundation/hardhat/commit/88e9cb5): Add a `SolidityHooks#readNpmPackageRemappings` hook - [`ec03a01`](https://github.com/NomicFoundation/hardhat/commit/ec03a01): Allow overriding the type of the network configs `default` and `localhost` [#&#8203;7805](https://github.com/NomicFoundation/hardhat/pull/7805) - [`2c2e1f5`](https://github.com/NomicFoundation/hardhat/commit/2c2e1f5): Throw better error messages when trying to use a Hardhat 2 plugin with Hardhat 3 [#&#8203;7991](https://github.com/NomicFoundation/hardhat/pull/7991). - [`90b5eec`](https://github.com/NomicFoundation/hardhat/commit/90b5eec): Suggest installing hardhat-foundry when appropriate - [`87623db`](https://github.com/NomicFoundation/hardhat/commit/87623db): Make the solc downloader safe when run by multiple processes ([7946](https://github.com/NomicFoundation/hardhat/pull/7946)). - [`726ff37`](https://github.com/NomicFoundation/hardhat/commit/726ff37): Update the `--coverage` table output to match the style used by `--gas-stats`. Thanks [@&#8203;jose-blockchain](https://github.com/jose-blockchain)! ([#&#8203;7733](https://github.com/NomicFoundation/hardhat/issues/7733)) - [`f1e9b05`](https://github.com/NomicFoundation/hardhat/commit/f1e9b05): Added support for `inline actions` in tasks [7851](https://github.com/NomicFoundation/hardhat/pull/7851). - [`73cb725`](https://github.com/NomicFoundation/hardhat/commit/73cb725): Expose `gasLimit` configuration for Solidity tests [#&#8203;7996](https://github.com/NomicFoundation/hardhat/pull/7996) ### [`v3.1.9`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#319) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.8...hardhat@3.1.9) ##### Patch Changes - [`621d07e`](https://github.com/NomicFoundation/hardhat/commit/621d07e): Make the coverage work with versions of Solidity that aren't fully supported by EDR [#&#8203;7982 ](https://github.com/NomicFoundation/hardhat/pull/7982) - [`3e39a06`](https://github.com/NomicFoundation/hardhat/commit/3e39a06): Round average and median gas usage in the gas analytics output - [`78af2ed`](https://github.com/NomicFoundation/hardhat/commit/78af2ed): Allow multiple parallel downloads of different compilers ([7946](https://github.com/NomicFoundation/hardhat/pull/7946)). ### [`v3.1.8`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#318) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.7...hardhat@3.1.8) ##### Patch Changes - [`a6947fb`](https://github.com/NomicFoundation/hardhat/commit/a6947fb): Use the official Linux ARM64 builds of solc in the `production` profile when available ([#&#8203;7917](https://github.com/NomicFoundation/hardhat/pull/7917)). - [`fd42744`](https://github.com/NomicFoundation/hardhat/commit/fd42744): Fixed missing EIP-7212 precompile in Solidity Tests ([#&#8203;7872](https://github.com/NomicFoundation/hardhat/issues/7872)). ### [`v3.1.7`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#317) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.6...hardhat@3.1.7) ##### Patch Changes - [`4995121`](https://github.com/NomicFoundation/hardhat/commit/4995121): Suppressed pragma and license warnings in Solidity test files ([7894](https://github.com/NomicFoundation/hardhat/issues/7894)). - [`22adbcb`](https://github.com/NomicFoundation/hardhat/commit/22adbcb): Added support for `eth_getProof` ([3345](https://github.com/NomicFoundation/hardhat/issues/3345)). ### [`v3.1.6`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#316) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.5...hardhat@3.1.6) ##### Patch Changes - [`98fbf44`](https://github.com/NomicFoundation/hardhat/commit/98fbf44): Implemented `SolidityBuildSystemImplementation#compileBuildInfo` ([#&#8203;7891](https://github.com/NomicFoundation/hardhat/pull/7891)) - [`a9445c9`](https://github.com/NomicFoundation/hardhat/commit/a9445c9): Added ArtifactManager#getAllArtifactPaths ([#&#8203;7902](https://github.com/NomicFoundation/hardhat/pull/7902)) - [`a9445c9`](https://github.com/NomicFoundation/hardhat/commit/a9445c9): Fixed typechain type generation when compiling a subset of the Solidity files ([#&#8203;7902](https://github.com/NomicFoundation/hardhat/pull/7902)) - [`127ce88`](https://github.com/NomicFoundation/hardhat/commit/127ce88): Suppress Hardhat console.sol memory-safe-assembly warning [#&#8203;7862](https://github.com/NomicFoundation/hardhat/pull/7862). - [`c40697b`](https://github.com/NomicFoundation/hardhat/commit/c40697b): Added a Solidity#build hook ([#&#8203;7890](https://github.com/NomicFoundation/hardhat/pull/7890)) - [`8e5610f`](https://github.com/NomicFoundation/hardhat/commit/8e5610f): Fixed a bug where nested folders were not created during the HTML coverage report generation ([#&#8203;7889](https://github.com/NomicFoundation/hardhat/pull/7889)) - [`13a1e4b`](https://github.com/NomicFoundation/hardhat/commit/13a1e4b): Multiple internal fixes to the solidity build system ([#&#8203;7900](https://github.com/NomicFoundation/hardhat/pull/7900)) - [`0c47a69`](https://github.com/NomicFoundation/hardhat/commit/0c47a69): Added compiler downloader retry in case of failure ([#&#8203;7031](https://github.com/NomicFoundation/hardhat/issues/7031)) ### [`v3.1.5`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#315) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.4...hardhat@3.1.5) ##### Patch Changes - [`346f92a`](https://github.com/NomicFoundation/hardhat/commit/346f92a): Improve how solidity tests are displayed, making it more consistent with the js reporters. - [`2bc18b2`](https://github.com/NomicFoundation/hardhat/commit/2bc18b2): Bumped `viem` version across all packages [7861](https://github.com/NomicFoundation/hardhat/pull/7861). - [`865e346`](https://github.com/NomicFoundation/hardhat/commit/865e346): Updated the incorrect JSDOC against the `preprocessProjectFileBeforeBuilding` Solidity Hook ([#&#8203;7870](https://github.com/NomicFoundation/hardhat/pull/7870)) - [`c9bdbd0`](https://github.com/NomicFoundation/hardhat/commit/c9bdbd0): Added `invokeSolc` in `SolidityHooks` to allow plugins to respond to the input/output from solc ([#&#8203;7646](https://github.com/NomicFoundation/hardhat/issues/7646)) ### [`v3.1.4`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#314) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.3...hardhat@3.1.4) ##### Patch Changes - [`d7c13fa`](https://github.com/NomicFoundation/hardhat/commit/d7c13fa): Fixes a bug in how code coverage for Solidity tests is calculated ([7767](https://github.com/NomicFoundation/hardhat/pull/7767)). - [`b6a9d5a`](https://github.com/NomicFoundation/hardhat/commit/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`](https://github.com/NomicFoundation/hardhat/commit/268acbf): Added HTML coverage report for solidity tests ([7787](https://github.com/NomicFoundation/hardhat/pull/7787)). ### [`v3.1.3`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#313) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.2...hardhat@3.1.3) ##### Patch Changes - [`12d7468`](https://github.com/NomicFoundation/hardhat/commit/12d7468): Add mocha results to test summary numbers ([#&#8203;7791](https://github.com/NomicFoundation/hardhat/pull/7791)) - [`25155b5`](https://github.com/NomicFoundation/hardhat/commit/25155b5): Add support for the official builds of `solc` for ARM64 Linux ([#&#8203;7752](https://github.com/NomicFoundation/hardhat/issues/7752)) - [`065df38`](https://github.com/NomicFoundation/hardhat/commit/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`](https://github.com/NomicFoundation/edr/commit/b5a7b75): Added an API that reports the latest supported Solidity version for source instrumentation - [`5abcee6`](https://github.com/NomicFoundation/hardhat/commit/5abcee6): Use Osaka as the default EVM target for solc 0.8.31+ and increase the gas limit per EIP-7935. Thanks [@&#8203;Amxx](https://github.com/Amxx)! ([#&#8203;7813](https://github.com/NomicFoundation/hardhat/pull/7813)) ### [`v3.1.2`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#312) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.1...hardhat@3.1.2) ##### Patch Changes - [`3575a52`](https://github.com/NomicFoundation/hardhat/commit/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`](https://github.com/NomicFoundation/edr/commit/44e779c): Added function-level configuration overrides for Solidity tests ##### Patch Changes - [NomicFoundation/edr@`b5ad15c`](https://github.com/NomicFoundation/edr/commit/b5ad15c): Added support for instrumentation of Solidity `0.8.32` and `0.8.33` - [`fd70728`](https://github.com/NomicFoundation/hardhat/commit/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`](https://github.com/NomicFoundation/edr/commit/34e1ab4): Updated base mainnet eip1559 parameters after SystemConfig update on 2025-12-18 - [NomicFoundation/edr@`2272bc0`](https://github.com/NomicFoundation/edr/commit/2272bc0): Fixed excess_blob_gas calculation after Osaka ### [`v3.1.1`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3112) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.1.0...hardhat@3.1.1) ##### Patch Changes - [`01b41ee`](https://github.com/NomicFoundation/hardhat/commit/01b41ee): Added support for function gas snapshots and snapshot cheatcodes in Solidity tests with `--snapshot` and `--snapshot-check` flags ([#&#8203;7769](https://github.com/NomicFoundation/hardhat/issues/7769)) - [`e37f96c`](https://github.com/NomicFoundation/hardhat/commit/e37f96c): Add `TestRunResult` type that wraps `TestSummary`, allowing plugins to extend test results with additional data - [`bda5a0a`](https://github.com/NomicFoundation/hardhat/commit/bda5a0a): Bumped EDR version to [`0.12.0-next.28`](https://github.com/NomicFoundation/edr/releases/tag/%40nomicfoundation%2Fedr%400.12.0-next.28) ### [`v3.1.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#310) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.17...hardhat@3.1.0) ##### Minor Changes - [`7b851f3`](https://github.com/NomicFoundation/hardhat/commit/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`](https://github.com/NomicFoundation/hardhat/commit/7697451): Test summaries are now merged when running multiple test tasks ([#&#8203;7053](https://github.com/NomicFoundation/hardhat/issues/7053)) - [`a3bf244`](https://github.com/NomicFoundation/hardhat/commit/a3bf244): Fixed the download of solc, which broke for v0.8.31 ### [`v3.0.17`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3017) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.16...hardhat@3.0.17) ##### Patch Changes - [`9f4020b`](https://github.com/NomicFoundation/hardhat/commit/9f4020b): - Update template projects to ignore local `.env` files but still allow committing `.env.example` files, thanks [@&#8203;KonstantinosChonas](https://github.com/KonstantinosChonas)! ([7702](https://github.com/NomicFoundation/hardhat/issues/7702)) - [`a9a47e5`](https://github.com/NomicFoundation/hardhat/commit/a9a47e5): Fixed hex validation patterns, thanks [@&#8203;Bilogweb3](https://github.com/Bilogweb3) ([#&#8203;7719](https://github.com/NomicFoundation/hardhat/pull/7719)) - [`b0f37e1`](https://github.com/NomicFoundation/hardhat/commit/b0f37e1): Fixed the network config to re-validate and re-resolve `chainType` on `connect()` ([#&#8203;7700](https://github.com/NomicFoundation/hardhat/issues/7700)). ### [`v3.0.16`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3016) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.15...hardhat@3.0.16) ##### Patch Changes - [`478ee07`](https://github.com/NomicFoundation/hardhat/commit/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`](https://github.com/NomicFoundation/hardhat/commit/806ee5a): Fixed an issue caused by networks that don't implement `eth_feeHistory` correctly ([#&#8203;7678](https://github.com/NomicFoundation/hardhat/pull/7678)) - [`f4b7f7e`](https://github.com/NomicFoundation/hardhat/commit/f4b7f7e): Fix: use user config provided value for `defaultChainType` ([#&#8203;7700](https://github.com/NomicFoundation/hardhat/issues/7700)) - [`6b2ed9a`](https://github.com/NomicFoundation/hardhat/commit/6b2ed9a): Add ability for task options to be hidden from the CLI ([#&#8203;7426](https://github.com/NomicFoundation/hardhat/issues/7426)) - [`6d10d05`](https://github.com/NomicFoundation/hardhat/commit/6d10d05): Update `hardfork` validation and resolution to use `defaultChainType` when `chainType` is undefined ([#&#8203;7700](https://github.com/NomicFoundation/hardhat/issues/7700)) ### [`v3.0.15`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3015) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.14...hardhat@3.0.15) ##### Patch Changes - [`9fb054a`](https://github.com/NomicFoundation/hardhat/commit/9fb054a): Fix the initialization of the Mocha and Ethers sample project when using pnpm ### [`v3.0.14`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3014) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.13...hardhat@3.0.14) ##### Patch Changes - [`3d42a6f`](https://github.com/NomicFoundation/hardhat/commit/3d42a6f): Remove the compilation spinner when the compilation fails - [`52e1eb4`](https://github.com/NomicFoundation/hardhat/commit/52e1eb4): Fix the `test solidity` task's compilation process - [`ce5c22a`](https://github.com/NomicFoundation/hardhat/commit/ce5c22a): Fail when a file isn't built neither as contract nor test ### [`v3.0.13`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3013) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.12...hardhat@3.0.13) ##### Patch Changes - [`6e4ad6d`](https://github.com/NomicFoundation/hardhat/commit/6e4ad6d): Fixed unexpected test failure when running in isolate/gas stats mode ([#&#8203;1146](https://github.com/NomicFoundation/edr/issues/1146)) - [`6e4ad6d`](https://github.com/NomicFoundation/hardhat/commit/6e4ad6d): Added latest dynamic base fee parameters to Base Mainnet chain config ([#&#8203;1141](https://github.com/NomicFoundation/edr/pull/1141)) ### [`v3.0.12`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3012) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.11...hardhat@3.0.12) ##### Patch Changes - [`147f8a6`](https://github.com/NomicFoundation/hardhat/commit/147f8a6): Improved the look and feel of compilation output ([#&#8203;7669](https://github.com/NomicFoundation/hardhat/pull/7669)) - [`50ce3e0`](https://github.com/NomicFoundation/hardhat/commit/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`](https://github.com/NomicFoundation/hardhat/commit/31f0b03): Don't compile solidity tests files when not needed ([#&#8203;7669](https://github.com/NomicFoundation/hardhat/pull/7669)) - [`a77c06a`](https://github.com/NomicFoundation/hardhat/commit/a77c06a): Added a new minimal sample project ### [`v3.0.11`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3011) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.10...hardhat@3.0.11) ##### Patch Changes - [`a4733f6`](https://github.com/NomicFoundation/hardhat/commit/a4733f6): Add `defineConfig` in `hardhat/config` - [`52d9902`](https://github.com/NomicFoundation/hardhat/commit/52d9902): Fix package manager detection - [`d45234d`](https://github.com/NomicFoundation/hardhat/commit/d45234d): Fixed Etherscan verification failures by removing hardcoded v1 API URLs from chain descriptors ([#&#8203;7623](https://github.com/NomicFoundation/hardhat/issues/7623)). Also enhanced config resolution to support partial overrides in block explorer configurations for future extensibility. ### [`v3.0.10`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3010) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.9...hardhat@3.0.10) ##### Patch Changes - [`fe28daf`](https://github.com/NomicFoundation/hardhat/commit/fe28daf): Added support for showing gas statistics after running tests ([#&#8203;7472](https://github.com/NomicFoundation/hardhat/issues/7428) and [#&#8203;7503](https://github.com/NomicFoundation/hardhat/issues/7503)) - [`1ab6b75`](https://github.com/NomicFoundation/hardhat/commit/1ab6b75): Optimism ISTHMUS hardfork support added to Hardhat ([#&#8203;7517](https://github.com/NomicFoundation/hardhat/issues/7517)) - [`5e64246`](https://github.com/NomicFoundation/hardhat/commit/5e64246): Improved JS/TS test tasks to not compile Solidity tests ([#&#8203;7626](https://github.com/NomicFoundation/hardhat/pull/7626)) - [`217a1a8`](https://github.com/NomicFoundation/hardhat/commit/217a1a8): Fix arbitrum sepolia chain id in chain descriptors (thanks [@&#8203;aelmanaa](https://github.com/aelmanaa)!) - [`8a03bd0`](https://github.com/NomicFoundation/hardhat/commit/8a03bd0): Fixed gas calculation for EIP-7702 refunds ([#&#8203;7606](https://github.com/NomicFoundation/hardhat/pull/7606)) - [`8a03bd0`](https://github.com/NomicFoundation/hardhat/commit/8a03bd0): Make all parameters of `eth_feeHistory` rpc call required ([#&#8203;7606](https://github.com/NomicFoundation/hardhat/pull/7606)) ### [`v3.0.9`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#309) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.8...hardhat@3.0.9) ##### Patch Changes - [`0ee442d`](https://github.com/NomicFoundation/hardhat/commit/0ee442d): All test runners now set NODE_ENV to "test" in case it is not set before the tests start ([#&#8203;7511](https://github.com/NomicFoundation/hardhat/issues/7511)) - [`b27b924`](https://github.com/NomicFoundation/hardhat/commit/b27b924): Fix bug in flatten task where ordering was incorrect ([#&#8203;7586](https://github.com/NomicFoundation/hardhat/issues/7586)) ### [`v3.0.8`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#308) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.7...hardhat@3.0.8) ##### Patch Changes - [`d2c9a7f`](https://github.com/NomicFoundation/hardhat/commit/d2c9a7f): Don't swallow the original error when trying to improve installation error messages ([#&#8203;7569](https://github.com/NomicFoundation/hardhat/pull/7569)) - [`ec50793`](https://github.com/NomicFoundation/hardhat/commit/ec50793): Validate `initialBaseFeePerGas` against hardfork only for L1 chain type ([#&#8203;6181](https://github.com/NomicFoundation/hardhat/issues/6181)) ### [`v3.0.7`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#307) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.6...hardhat@3.0.7) ##### Patch Changes - [`138d673`](https://github.com/NomicFoundation/hardhat/commit/138d673): Added `network.createServer(...)` to spawn a Hardhat node programmatically ([#&#8203;6472](https://github.com/NomicFoundation/hardhat/issues/6472)) - [`d414eda`](https://github.com/NomicFoundation/hardhat/commit/d414eda): Added support for conditional dependencies on plugins ([#&#8203;7424](https://github.com/NomicFoundation/hardhat/issues/7424)) - [`138d673`](https://github.com/NomicFoundation/hardhat/commit/138d673): Added support for compiling solidity tests separately from contracts ([#&#8203;6474](https://github.com/NomicFoundation/hardhat/issues/6474)) - [`e17972f`](https://github.com/NomicFoundation/hardhat/commit/e17972f): Added `hre.versions` with Hardhat and EDR package versions. - [`34add2d`](https://github.com/NomicFoundation/hardhat/commit/34add2d): Added configVariable support for test.solidity.forking config - [`b13620a`](https://github.com/NomicFoundation/hardhat/commit/b13620a): Added compilation progress spinner to show build progress ([#&#8203;7460](https://github.com/NomicFoundation/hardhat/pull/7460)) - [`4c65d3e`](https://github.com/NomicFoundation/hardhat/commit/4c65d3e): Automatically add compilation results to a running `npx hardhat node` on recompilation ([#&#8203;6040](https://github.com/NomicFoundation/hardhat/issues/6040)) - [`138d673`](https://github.com/NomicFoundation/hardhat/commit/138d673): Updated EDR to version [`0.12.0-next.7`](https://www.npmjs.com/package/@nomicfoundation/edr/v/0.12.0-next.7) - [`d821a0a`](https://github.com/NomicFoundation/hardhat/commit/d821a0a): Fixed npm artifact cleanup on windows ([#&#8203;7459](https://github.com/NomicFoundation/hardhat/issues/7459)) - [`138d673`](https://github.com/NomicFoundation/hardhat/commit/138d673): Fixed creation of network connections to include config extensions from plugins ([#&#8203;7106](https://github.com/NomicFoundation/hardhat/pull/7106)) ### [`v3.0.6`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#306) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.5...hardhat@3.0.6) ##### Patch Changes - [`609d05c`](https://github.com/NomicFoundation/hardhat/commit/609d05c): Add deprecation warning for `testFail_*` test functions - [`8c1cb1e`](https://github.com/NomicFoundation/hardhat/commit/8c1cb1e): Fixed dependencies for Hardhat so `rpc` utils can be loaded ([#&#8203;7415](https://github.com/NomicFoundation/hardhat/issues/7415)) ### [`v3.0.5`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#305) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.4...hardhat@3.0.5) ##### Patch Changes - [`bebf87c`](https://github.com/NomicFoundation/hardhat/commit/bebf87c): Added support for Linea network verification, thanks [@&#8203;kyzooghost](https://github.com/kyzooghost) ([#&#8203;7357](https://github.com/NomicFoundation/hardhat/issues/7357)) - [`0bfe6ac`](https://github.com/NomicFoundation/hardhat/commit/0bfe6ac): Fixed coverage report when loading data from large test suites ([#&#8203;7385](https://github.com/NomicFoundation/hardhat/issues/7385)) - [`be469d6`](https://github.com/NomicFoundation/hardhat/commit/be469d6): Display an error message when attempting to use a global hardhat installation in a local repo ([#&#8203;5362](https://github.com/NomicFoundation/hardhat/issues/5362)) - [`49cc9ba`](https://github.com/NomicFoundation/hardhat/commit/49cc9ba): Load resolved global options into environment variables during tests ([#&#8203;7305](https://github.com/NomicFoundation/hardhat/pull/7305)) - [`8d3b16c`](https://github.com/NomicFoundation/hardhat/commit/8d3b16c): Support for custom compilers ([#&#8203;7130](https://github.com/NomicFoundation/hardhat/issues/7130)) - [`a475780`](https://github.com/NomicFoundation/hardhat/commit/a475780): Added automatic proxy detection for `hardhat-verify` and fixed case-insensitive proxy environment variables for network requests ([#&#8203;7407](https://github.com/NomicFoundation/hardhat/pull/7407)) - [`3996886`](https://github.com/NomicFoundation/hardhat/commit/3996886): Fixed `getBuildInfoPath` and `getBuildInfoOutputPath` to correctly return undefined when build info files are missing [7052](https://github.com/NomicFoundation/hardhat/issues/7052) ### [`v3.0.4`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#304) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.3...hardhat@3.0.4) ##### Patch Changes - [`af301a8`](https://github.com/NomicFoundation/hardhat/commit/af301a8): Update validation for solidity test config ([#&#8203;7205](https://github.com/NomicFoundation/hardhat/pull/7205)) ### [`v3.0.3`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#303) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.2...hardhat@3.0.3) ##### Patch Changes - [`34a5bc9`](https://github.com/NomicFoundation/hardhat/commit/34a5bc9): Fixed an issue when making historical calls in a forked network ([#&#8203;7271](https://github.com/NomicFoundation/hardhat/issues/7271)) - [`e0e658a`](https://github.com/NomicFoundation/hardhat/commit/e0e658a): Upgraded EDR to 0.12.0-next.5. This brings a fix for `expectEmit` cheatcode stack traces and performance improvements from upgrading to REVM 27 ([#&#8203;1063](https://github.com/NomicFoundation/edr/issues/1063)) ### [`v3.0.2`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#302) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.1...hardhat@3.0.2) ##### Patch Changes - [`d45d544`](https://github.com/NomicFoundation/hardhat/commit/d45d544): Fixed passing global network options to node:test and mocha subprocesses ([#&#8203;7248](https://github.com/NomicFoundation/hardhat/issues/7248)) - [`003e72c`](https://github.com/NomicFoundation/hardhat/commit/003e72c): Help message phrasing unified - [`0120e67`](https://github.com/NomicFoundation/hardhat/commit/0120e67): Added warning when running with a non-LTS Node version ([#&#8203;7167](https://github.com/NomicFoundation/hardhat/issues/7167)) - [`9261714`](https://github.com/NomicFoundation/hardhat/commit/9261714): Update npm module regex to include versions in solidity imports ([#&#8203;7308](https://github.com/NomicFoundation/hardhat/issues/7308)) ### [`v3.0.1`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#3017) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@3.0.0...hardhat@3.0.1) ##### Patch Changes - [`9f4020b`](https://github.com/NomicFoundation/hardhat/commit/9f4020b): - Update template projects to ignore local `.env` files but still allow committing `.env.example` files, thanks [@&#8203;KonstantinosChonas](https://github.com/KonstantinosChonas)! ([7702](https://github.com/NomicFoundation/hardhat/issues/7702)) - [`a9a47e5`](https://github.com/NomicFoundation/hardhat/commit/a9a47e5): Fixed hex validation patterns, thanks [@&#8203;Bilogweb3](https://github.com/Bilogweb3) ([#&#8203;7719](https://github.com/NomicFoundation/hardhat/pull/7719)) - [`b0f37e1`](https://github.com/NomicFoundation/hardhat/commit/b0f37e1): Fixed the network config to re-validate and re-resolve `chainType` on `connect()` ([#&#8203;7700](https://github.com/NomicFoundation/hardhat/issues/7700)). ### [`v3.0.0`](https://github.com/NomicFoundation/hardhat/blob/HEAD/packages/hardhat/CHANGELOG.md#300) [Compare Source](https://github.com/NomicFoundation/hardhat/compare/hardhat@2.29.1...hardhat@3.0.0) ##### Major Changes - [`29cc141`](https://github.com/NomicFoundation/hardhat/commit/29cc141): First release of Hardhat 3! </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Berlin) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNDIuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE0Mi4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Update dependency hardhat to v3
Some checks failed
renovate/artifacts Artifact file update failure
Test / build (18.x) (pull_request) Failing after 8s
Test / build (20.x) (pull_request) Failing after 4s
Test / build (22.x) (pull_request) Failing after 4s
886dbca74c
Author
Collaborator

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: package-lock.json
npm warn Unknown env config "store". This will error in a future major version of npm. See `npm help npmrc` for supported config options.
npm error code ERESOLVE
npm error ERESOLVE could not resolve
npm error
npm error While resolving: @nomicfoundation/hardhat-chai-matchers@2.1.2
npm error Found: hardhat@3.18.1
npm error node_modules/hardhat
npm error   dev hardhat@"^3.0.0" from the root project
npm error
npm error Could not resolve dependency:
npm error peer hardhat@"^2.26.0" from @nomicfoundation/hardhat-chai-matchers@2.1.2
npm error node_modules/@nomicfoundation/hardhat-chai-matchers
npm error   peer @nomicfoundation/hardhat-chai-matchers@"^2.0.0" from @nomicfoundation/hardhat-toolbox@4.0.0
npm error   node_modules/@nomicfoundation/hardhat-toolbox
npm error     dev @nomicfoundation/hardhat-toolbox@"^4.0.0" from the root project
npm error
npm error Conflicting peer dependency: hardhat@2.29.1
npm error node_modules/hardhat
npm error   peer hardhat@"^2.26.0" from @nomicfoundation/hardhat-chai-matchers@2.1.2
npm error   node_modules/@nomicfoundation/hardhat-chai-matchers
npm error     peer @nomicfoundation/hardhat-chai-matchers@"^2.0.0" from @nomicfoundation/hardhat-toolbox@4.0.0
npm error     node_modules/@nomicfoundation/hardhat-toolbox
npm error       dev @nomicfoundation/hardhat-toolbox@"^4.0.0" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry this command with --force or --legacy-peer-deps to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error /tmp/renovate/cache/others/npm/_logs/2026-10-07T19_24_25_093Z-eresolve-report.txt
npm error A complete log of this run can be found in: /tmp/renovate/cache/others/npm/_logs/2026-10-07T19_24_25_093Z-debug-0.log

### ⚠️ Artifact update problem Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens: - any of the package files in this branch needs updating, or - the branch becomes conflicted, or - you click the rebase/retry checkbox if found above, or - you rename this PR's title to start with "rebase!" to trigger it manually The artifact failure details are included below: ##### File name: package-lock.json ``` npm warn Unknown env config "store". This will error in a future major version of npm. See `npm help npmrc` for supported config options. npm error code ERESOLVE npm error ERESOLVE could not resolve npm error npm error While resolving: @nomicfoundation/hardhat-chai-matchers@2.1.2 npm error Found: hardhat@3.18.1 npm error node_modules/hardhat npm error dev hardhat@"^3.0.0" from the root project npm error npm error Could not resolve dependency: npm error peer hardhat@"^2.26.0" from @nomicfoundation/hardhat-chai-matchers@2.1.2 npm error node_modules/@nomicfoundation/hardhat-chai-matchers npm error peer @nomicfoundation/hardhat-chai-matchers@"^2.0.0" from @nomicfoundation/hardhat-toolbox@4.0.0 npm error node_modules/@nomicfoundation/hardhat-toolbox npm error dev @nomicfoundation/hardhat-toolbox@"^4.0.0" from the root project npm error npm error Conflicting peer dependency: hardhat@2.29.1 npm error node_modules/hardhat npm error peer hardhat@"^2.26.0" from @nomicfoundation/hardhat-chai-matchers@2.1.2 npm error node_modules/@nomicfoundation/hardhat-chai-matchers npm error peer @nomicfoundation/hardhat-chai-matchers@"^2.0.0" from @nomicfoundation/hardhat-toolbox@4.0.0 npm error node_modules/@nomicfoundation/hardhat-toolbox npm error dev @nomicfoundation/hardhat-toolbox@"^4.0.0" from the root project npm error npm error Fix the upstream dependency conflict, or retry this command with --force or --legacy-peer-deps to accept an incorrect (and potentially broken) dependency resolution. npm error npm error npm error For a full report see: npm error /tmp/renovate/cache/others/npm/_logs/2026-10-07T19_24_25_093Z-eresolve-report.txt npm error A complete log of this run can be found in: /tmp/renovate/cache/others/npm/_logs/2026-10-07T19_24_25_093Z-debug-0.log ```
Some checks failed
renovate/artifacts Artifact file update failure
Test / build (18.x) (pull_request) Failing after 8s
Test / build (20.x) (pull_request) Failing after 4s
Test / build (22.x) (pull_request) Failing after 4s
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/hardhat-3.x:renovate/hardhat-3.x
git switch renovate/hardhat-3.x

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff renovate/hardhat-3.x
git switch renovate/hardhat-3.x
git rebase main
git switch main
git merge --ff-only renovate/hardhat-3.x
git switch renovate/hardhat-3.x
git rebase main
git switch main
git merge --no-ff renovate/hardhat-3.x
git switch main
git merge --squash renovate/hardhat-3.x
git switch main
git merge --ff-only renovate/hardhat-3.x
git switch main
git merge renovate/hardhat-3.x
git push origin main
Sign in to join this conversation.
No description provided.