Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency hardhat-gas-reporter to v2 #4986

Merged
merged 1 commit into from
Apr 3, 2024

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Apr 3, 2024

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
hardhat-gas-reporter ^1.0.9 -> ^2.0.0 age adoption passing confidence

Release Notes

cgewecke/hardhat-gas-reporter (hardhat-gas-reporter)

v2.1.0: Arbitrum & Base L2 Network Support

Compare Source

What's New

  • Arbitrum and Base have been added to the list of L2 networks the gas reporter can emulate
    gasReporter: {
      L2: "arbitrum" | "base" | "optimism",
      L2Etherscan: "ABC....",
      coinmarketcap: "abc...",
    }
  • blobBaseFee is now fetched directly from the OP stack GasOracle contracts (should be accurate)
  • ⚠️ To get live blobBaseFee prices for L2 emulation you'll need to set the L2Etherscan api key option.
  • the JSON output object now includes a separate intrinsic gas measurement for each transaction. This could be convenient if you want to do more complex post-processing with the gas data.

What's changed

Full Changelog: cgewecke/hardhat-gas-reporter@v2.0.2...v2.1.0

v2.0.2: Fix crash with --parallel flag

Compare Source

What's Changed

Full Changelog: cgewecke/hardhat-gas-reporter@v2.0.1...v2.0.2

v2.0.1: Optimism Ecotone (EIP-4844)

Compare Source

What's Changed

Full Changelog: cgewecke/hardhat-gas-reporter@v2.0.0...v2.0.1

v2.0.0: : Optimism L2 & View/Pure Method Gas

Compare Source

Screen Shot 2024-03-14 at 12 48 35 PM

What's New

  • Configuration for chains with Etherscan support has been simplified to a single key. Just set the L1 option to one of the supported networks and the reporter will take care of the rest. (You'll still need a coinmarketcap api key)

    gasReporter: {
      L1: "gnosis",
      coinmarketcap: "abc...",
    }
  • Gas reporting for L2 networks is coming online, starting with Optimism.

    gasReporter: {
      L2: "optimism",
      coinmarketcap: "abc...",
    }
  • Gas metrics for view and pure methods are now available as an option. You can also exclude intrinsic gas costs for state-changing methods. (⚠️ There are performance hits when the view and pure options are enabled)

    gasReporter: {
      // Debits intrinsic gas for state-changing method calls in order to model contracts
      // that will never be called by an EOA
      includeIntrinsicGas: false,
    
      // This option executes an additional `eth_estimateGas` for every `eth_call`
      // detected by the reporter. If you have 1000's of tests setting it to true has a
      // noticeable performance impact
      reportPureAndViewMethods: true,
    
      // This option can add SIGNIFICANT LAG to test startup time if you have
      // 100's of contracts in your project. (It parses all the sources in your dependency tree
      // to identify state variable declarations)
      excludeAutoGeneratedGetters: true,
    }
  • There are multiple report formats, including markdown.

  • The reporter now supports sub-gwei gas prices. Sub-penny cost display is possible by configuring the currencyDisplayPrecision option

  • Dedicated support for the OpenZeppelin Upgrades plugin has been added. (Their proxy pattern often resulted in missing gas data because the reporter didn't know what contract was being called - that's all handled under the hood now.)

  • Dedicated support for the hardhat-viem plugin has been added (this was broken and should be fixed by this release)

  • There are many new output, display and low-level options - check out the Config Examples section of the docs

  • There's additional support for custom proxy contract resolution. If you're routing your calls through contract middleware you can configure the reporter to understand how that works and get the data you expect.

  • Additionally:

    • eth-gas-reporter's logic has been ported here and translated to Typescript
    • The plugin has been decoupled from Mocha so it can be seamlessly integrated with lots of other tasks or test frameworks
    • There have been big architectural changes and testing improvements and additional features are in the pipeline

Breaking

  • Codechecks support was removed because it hasn't been accepting users for a while. I loved codechecks. (Building a github action for the reporter is on the V2 roadmap though).
  • The JSON object emitted by the reporter has changed to reflect the plugin's internal types. If you've been post-processing that data you'll need to look at the JSON Output docs and update your logic.
  • The gas-reporter:merge task has been renamed hhgas:merge
  • The onlyCalledMethods option has been renamed showUncalledMethods and must be set to true (if you want that).

Funding

Work on V2 was funded in part by OpenZeppelin via DRIPS, a public goods protocol that helps direct funding to packages in your dependency tree. If you're using DRIPS and want to add hardhat-gas-reporter to the packages you support its page is here.

Full Changelog: cgewecke/hardhat-gas-reporter@v1.10.0...v2.0.0


Configuration

📅 Schedule: 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. View repository job log here.

Copy link

changeset-bot bot commented Apr 3, 2024

⚠️ No Changeset found

Latest commit: 2973aba

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/[email protected] environment, filesystem Transitive: network, unsafe +71 73.3 MB cgewecke

🚮 Removed packages: npm/[email protected]

View full report↗︎

@Amxx
Copy link
Collaborator

Amxx commented Apr 3, 2024

This was already merged in #4979. Am I missing something ?

@Amxx
Copy link
Collaborator

Amxx commented Apr 3, 2024

Was reset by mistake in #4980

@Amxx Amxx merged commit 8a7a9c5 into master Apr 3, 2024
20 of 21 checks passed
@Amxx Amxx deleted the renovate/hardhat-gas-reporter-2.x branch April 3, 2024 23:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant