diff --git a/README.md b/README.md index 3b52d7bf..5cda3f53 100644 --- a/README.md +++ b/README.md @@ -104,7 +104,7 @@ $ yarn hardhat export --network --export ./deployments/ +npx hardhat verify --network ``` ## Hardhat Commands diff --git a/hardhat.config.ts b/hardhat.config.ts index ebaafb94..70a88519 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -1,7 +1,7 @@ import "module-alias/register"; import "@nomicfoundation/hardhat-chai-matchers"; -import "@nomiclabs/hardhat-etherscan"; +import "@nomicfoundation/hardhat-verify"; import "@openzeppelin/hardhat-upgrades"; import "@typechain/hardhat"; import * as dotenv from "dotenv"; @@ -204,56 +204,12 @@ const config: HardhatUserConfig = { accounts: process.env.DEPLOYER_PRIVATE_KEY ? [`0x${process.env.DEPLOYER_PRIVATE_KEY}`] : [], }, }, + sourcify: { + enabled: true, + }, etherscan: { - apiKey: { - bscmainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - bsctestnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - sepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - ethereum: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - opbnbtestnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - opbnbmainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - arbitrumsepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - arbitrumone: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - opsepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - opmainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - basesepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - basemainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - unichainsepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - unichainmainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", - }, + apiKey: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", customChains: [ - { - network: "bscmainnet", - chainId: 56, - urls: { - apiURL: "https://api.bscscan.com/api", - browserURL: "https://bscscan.com", - }, - }, - { - network: "bsctestnet", - chainId: 97, - urls: { - apiURL: "https://api-testnet.bscscan.com/api", - browserURL: "https://testnet.bscscan.com", - }, - }, - { - network: "sepolia", - chainId: 11155111, - urls: { - apiURL: "https://api-sepolia.etherscan.io/api", - browserURL: "https://sepolia.etherscan.io", - }, - }, - { - network: "ethereum", - chainId: 1, - urls: { - apiURL: "https://api.etherscan.io/api", - browserURL: "https://etherscan.io", - }, - }, { network: "opbnbtestnet", chainId: 5611, @@ -270,22 +226,6 @@ const config: HardhatUserConfig = { browserURL: "https://opbnbscan.com/", }, }, - { - network: "arbitrumsepolia", - chainId: 421614, - urls: { - apiURL: `https://api-sepolia.arbiscan.io/api`, - browserURL: "https://sepolia.arbiscan.io/", - }, - }, - { - network: "arbitrumone", - chainId: 42161, - urls: { - apiURL: `https://api.arbiscan.io/api/`, - browserURL: "https://arbiscan.io/", - }, - }, { network: "opsepolia", chainId: 11155420, @@ -294,30 +234,6 @@ const config: HardhatUserConfig = { browserURL: "https://sepolia-optimistic.etherscan.io/", }, }, - { - network: "opmainnet", - chainId: 10, - urls: { - apiURL: "https://api-optimistic.etherscan.io/api", - browserURL: "https://optimistic.etherscan.io/", - }, - }, - { - network: "basesepolia", - chainId: 84532, - urls: { - apiURL: "https://api-sepolia.basescan.org/api", - browserURL: "https://sepolia.basescan.org/", - }, - }, - { - network: "basemainnet", - chainId: 8453, - urls: { - apiURL: "https://api.basescan.org/api", - browserURL: "https://basescan.org/", - }, - }, { network: "unichainsepolia", chainId: 1301, diff --git a/package.json b/package.json index e25e8fe5..e605d280 100644 --- a/package.json +++ b/package.json @@ -61,8 +61,8 @@ "@matterlabs/hardhat-zksync-solc": "^1.2.1", "@matterlabs/hardhat-zksync-verify": "^1.8.0", "@nomicfoundation/hardhat-chai-matchers": "^1.0.4", + "@nomicfoundation/hardhat-verify": "^2.0.14", "@nomiclabs/hardhat-ethers": "^2.2.1", - "@nomiclabs/hardhat-etherscan": "^3.1.0", "@openzeppelin/hardhat-upgrades": "^1.22.0", "@semantic-release/changelog": "^6.0.1", "@semantic-release/git": "^10.0.1", diff --git a/yarn.lock b/yarn.lock index 7031332c..981e821b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1732,6 +1732,25 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/hardhat-verify@npm:^2.0.14": + version: 2.1.1 + resolution: "@nomicfoundation/hardhat-verify@npm:2.1.1" + dependencies: + "@ethersproject/abi": ^5.1.2 + "@ethersproject/address": ^5.0.2 + cbor: ^8.1.0 + debug: ^4.1.1 + lodash.clonedeep: ^4.5.0 + picocolors: ^1.1.0 + semver: ^6.3.0 + table: ^6.8.0 + undici: ^5.14.0 + peerDependencies: + hardhat: ^2.26.0 + checksum: 11abc13105a85cfcedd6d6cd76c5fe57ab83543e6667e8006b7104cf10d97f05ed81d2a0ae8aa766e940346989b41983a0015805ac3d2f300255af05304ebe62 + languageName: node + linkType: hard + "@nomicfoundation/hardhat-verify@npm:^2.0.8": version: 2.0.9 resolution: "@nomicfoundation/hardhat-verify@npm:2.0.9" @@ -1931,26 +1950,6 @@ __metadata: languageName: node linkType: hard -"@nomiclabs/hardhat-etherscan@npm:^3.1.0": - version: 3.1.8 - resolution: "@nomiclabs/hardhat-etherscan@npm:3.1.8" - dependencies: - "@ethersproject/abi": ^5.1.2 - "@ethersproject/address": ^5.0.2 - cbor: ^8.1.0 - chalk: ^2.4.2 - debug: ^4.1.1 - fs-extra: ^7.0.1 - lodash: ^4.17.11 - semver: ^6.3.0 - table: ^6.8.0 - undici: ^5.14.0 - peerDependencies: - hardhat: ^2.0.4 - checksum: 13864380d104705a54668adf2fb37a87d1147a064c1d29dbc356390e7254d5c7501b9b3af9c4ec2f9d9ff642a01417d5d35970d626fe706f5f4830820ae89ecb - languageName: node - linkType: hard - "@npmcli/agent@npm:^2.0.0": version: 2.2.2 resolution: "@npmcli/agent@npm:2.2.2" @@ -4024,8 +4023,8 @@ __metadata: "@matterlabs/hardhat-zksync-verify": ^1.8.0 "@nomicfoundation/hardhat-chai-matchers": ^1.0.4 "@nomicfoundation/hardhat-network-helpers": ^1.0.8 + "@nomicfoundation/hardhat-verify": ^2.0.14 "@nomiclabs/hardhat-ethers": ^2.2.1 - "@nomiclabs/hardhat-etherscan": ^3.1.0 "@openzeppelin/contracts": ^4.6.0 "@openzeppelin/contracts-upgradeable": ^4.7.3 "@openzeppelin/hardhat-upgrades": ^1.22.0