包详细信息

@nomicfoundation/hardhat-ignition-ethers

NomicFoundation201.2kMIT3.0.6

The Ethers extension to Hardhat Ignition. Hardhat Ignition is a declarative system for deploying smart contracts on Ethereum. It enables you to define smart contract instances you want to deploy, and any operation you want to run on them. By taking over t

ethereum, smart-contracts, hardhat, blockchain

自述文件

hardhat-ignition-ethers

This plugin integrates Hardhat Ignition with ethers.js.

Installation

This plugin is part of the Ethers+Mocha Hardhat Toolbox. If you are using that toolbox, there's nothing else you need to do.

To install this plugin, run the following command:

npm install --save-dev @nomicfoundation/hardhat-ignition-ethers

In your hardhat.config.ts file, import the plugin and add it to the plugins array:

import { defineConfig } from "hardhat/config";
import hardhatIgnitionEthers from "@nomicfoundation/hardhat-ignition-ethers";

export default defineConfig({
  plugins: [hardhatIgnitionEthers],
});

Usage

This plugin adds an ignition property to each network connection:

import { network } from "hardhat";
import Counter from "../ignition/modules/Counter.js";

const { ignition } = await network.connect();
const { counter } = await ignition.deploy(Counter);

await counter.inc();
console.log(await counter.x());

The ignition object has a deploy method that can be used to deploy Ignition modules. This returns an ethers contract instance for each contract returned by the module.

更新日志

Changelog

3.0.6

Patch Changes

  • dac916b: Expose ignition retry loop variables in user config (Hardhat v3) (#7303)

3.0.5

Patch Changes

  • d1c1803: Make @nomicfoundation/hardhat-ignition's UI work well with other plugins, like Ledger's.

3.0.4

Patch Changes

  • 843c1ae: Fixed a bug preventing Ignition from using the hre.config.ignition settings when deploying via script (#7641)
  • 558ac5b: Update installation and config instructions

3.0.3

Patch Changes

  • bebf87c: Added support for Linea network verification, thanks @kyzooghost (#7357)

3.0.2

Patch Changes

  • ddefbff: Added guard to stop multiple simultaneous calls to ignition.deploy(...) at once (#6440)

3.0.1

Patch Changes

  • 86cecc7: Fix the type guard to include m.encodeFunctionCall in those that do not submit transactions, thanks @radik878 (#7264)

3.0.0

Major Changes

  • 29cc141: First release of Hardhat 3!

0.15.9 - 2024-12-18

Added

  • Standard Ignition UI can now be enabled when deploying via Hardhat scripts by setting displayUi: true in the deploy function options, @zoeyTM (#843)
  • Ignition modules can now be set as a dependency in the after option of futures, @zoeyTM (#828)
  • The ignition transactions command output will now include a link to view each transaction on the configured block explorer, @zoeyTM (#849)
  • Module parameters can now be directly imported from a JSON file when deploying via Hardhat scripts by passing an absolute path to the file to the parameters option, @zoeyTM (#850)

Fixed

  • Properly handle errors when verifying deployments that use external artifacts, @zoeyTM (#848)
  • Fix issue with ignition status command not working with deployments that use external artifacts, @zoeyTM (#846)

0.15.8 - 2024-11-22

Fixed

  • transactions command now properly serializes bigint values, @zoeyTM (#837)
  • Additional validations added for global parameters, @kanej (#832)

0.15.7 - 2024-10-24

Added

  • New CLI command ignition transactions to list all transactions sent for a given deployment ID, @zoeyTM (#821)
  • Module parameters can now be set at the global level using $global, @zoeyTM (#819)

Fixed

  • Gas fields are now properly set for Optimistic BNB, @zoeyTM (#826)
  • Corrected resolution of artifacts when using fully qualified names in deployment modules, @kanej (#822)

0.15.6 - 2024-09-25

Added

  • Updates to the visualization UI, including the ability to zoom and pan the mermaid diagram (#810)
  • gasPrice and disableFeeBumping config fields added as part of our L2 gas logic update (#808)
  • Debug logging for communication errors with Hardhat Ledger (#792)
  • JSON5 support for module parameters, thanks @erhant (#800)
  • Add writeLocalhostDeployment flag to allow saving deployment artifacts when deploying to the ephemeral Hardhat network, thanks @SebastienGllmt (#816)

Fixed

  • Replace this with the class itself in ViemIgnitionHelper, thanks @iosh (#796)

0.15.5 - 2024-06-17

Added

  • New function m.encodeFunctionCall (#761)

Fixed

  • Adjusted regex to allow calling overloaded functions with array parameters (#774)
  • Handle anvil response for hardhat_setBalance when deploying with create2 (#773)
  • Properly resolve verify logic when dealing with circular or very deeply nested imports (#772)
  • Exclude BNB Test Chain from zero fee configuration in gas fee logic, thanks @MukulKolpe (#768)

0.15.4 - 2024-05-14

Fixed

  • Reconcile address parameters with mismatched casings (#748)
  • Display better error messages for insufficient funds (#754)

0.15.3 - 2024-05-09

Fixed

  • Exclude BNB Chain from zero fee configuration in gas fee logic, thanks @magicsih (#755)

0.15.2 - 2024-05-02

Added

  • Improved support for deploying via a Ledger Hardware wallet, see our guide for details (#720)
  • Support maxPriorityFeePerGas as a configuration parameter (#728)
  • Use RPC call eth_maxPriorityFeePerGas in gas fee calculations when available (#743)
  • Support zero gas fee chains (like private Besu chains), thanks @jimthematrix (#730)

Fixed

  • Use pre-EIP-1559 transactions for Polygon to avoid dropped transactions (#735)

0.15.1 - 2024-04-04

Added

  • Add a configurable upper limit for the maxFeePerGas (#685)
  • Support writing and reading from deployments folder within tests and scripts (#704)
  • Add ignition deployments task to list all the current deployments (#646)

Changed

  • Deploying to a cleared local hardhat node ignores previous deployment (#650)

Fixed

  • More resilent automine check (#721)
  • getCode usage brought in line with Ethereum RPC standard (#715)
  • Fixed unexpected next nonce on revert (#676)
  • Reduce sources being passed to etherscan for verification (#706)

0.15.0 - 2024-03-13

Added

0.13.2 - 2024-01-25

Fixed

  • Add memory pool lookup retry to reduce errors from slow propagation (#667)

Added

  • Improve Module API typescript doc comments to enhance intellisense experience (#642)
  • Support module parameters taking accounts as the default value (673)

0.13.1 - 2023-12-19

Added

  • New flag --reset for ignition deploy to wipe the existing deployment state before running (#649)

Fixed

  • Fix bug with process.stdout being used in a non-tty context (#644)

0.13.0 - 2023-12-13

Added

  • Add @nomicfoundation/hardhat-plugin-ethers package, that adds an ignition object to the Hardhat Runtime Environment that supports deploying Ignition modules and returning deployed contracts as Ethers contract instances (#612)
  • Add support for setting the default sender account from tests and scripts (#639)