diff --git a/.github/workflows/cd.yaml b/.github/workflows/cd.yaml index 0178a5d..ff6efb3 100644 --- a/.github/workflows/cd.yaml +++ b/.github/workflows/cd.yaml @@ -11,12 +11,12 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 persist-credentials: false - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: cache: "yarn" diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index f4b1864..f971d86 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -11,12 +11,12 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Check out code - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Setup Node.js environment - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 cache: "yarn" - name: Install dependencies @@ -32,11 +32,11 @@ jobs: env: NODE_OPTIONS: --max-old-space-size=4096 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 cache: "yarn" - name: Install deps @@ -72,12 +72,12 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Check out code - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Setup Node.js environment - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 cache: "yarn" - name: Install dependencies @@ -97,15 +97,15 @@ jobs: steps: - name: Check out code - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: ref: ${{ github.head_ref }} token: ${{ secrets.VENUS_TOOLS_TOKEN }} - name: Setup Node.js environment - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 cache: "yarn" - name: Install dependencies diff --git a/README.md b/README.md index dec117d..cbcfae0 100644 --- a/README.md +++ b/README.md @@ -97,6 +97,7 @@ npx hardhat deploy --config hardhat.config.zksync.ts --network zksyncsepolia ``` Available ZKSync networks: + - `zksyncsepolia` - ZKSync Sepolia testnet - `zksyncmainnet` - ZKSync mainnet diff --git a/deployments/arbitrumone.json b/deployments/arbitrumone.json new file mode 100644 index 0000000..4e3a56a --- /dev/null +++ b/deployments/arbitrumone.json @@ -0,0 +1,5 @@ +{ + "name": "arbitrumone", + "chainId": "42161", + "contracts": {} +} diff --git a/deployments/arbitrumone_addresses.json b/deployments/arbitrumone_addresses.json new file mode 100644 index 0000000..e65d709 --- /dev/null +++ b/deployments/arbitrumone_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "arbitrumone", + "chainId": "42161", + "addresses": {} +} diff --git a/deployments/arbitrumsepolia.json b/deployments/arbitrumsepolia.json new file mode 100644 index 0000000..8180a7c --- /dev/null +++ b/deployments/arbitrumsepolia.json @@ -0,0 +1,5 @@ +{ + "name": "arbitrumsepolia", + "chainId": "421614", + "contracts": {} +} diff --git a/deployments/arbitrumsepolia_addresses.json b/deployments/arbitrumsepolia_addresses.json new file mode 100644 index 0000000..8d63941 --- /dev/null +++ b/deployments/arbitrumsepolia_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "arbitrumsepolia", + "chainId": "421614", + "addresses": {} +} diff --git a/deployments/basemainnet.json b/deployments/basemainnet.json new file mode 100644 index 0000000..c60e2e5 --- /dev/null +++ b/deployments/basemainnet.json @@ -0,0 +1,5 @@ +{ + "name": "basemainnet", + "chainId": "8453", + "contracts": {} +} diff --git a/deployments/basemainnet_addresses.json b/deployments/basemainnet_addresses.json new file mode 100644 index 0000000..b625360 --- /dev/null +++ b/deployments/basemainnet_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "basemainnet", + "chainId": "8453", + "addresses": {} +} diff --git a/deployments/basesepolia.json b/deployments/basesepolia.json new file mode 100644 index 0000000..0e19f00 --- /dev/null +++ b/deployments/basesepolia.json @@ -0,0 +1,5 @@ +{ + "name": "basesepolia", + "chainId": "84532", + "contracts": {} +} diff --git a/deployments/basesepolia_addresses.json b/deployments/basesepolia_addresses.json new file mode 100644 index 0000000..428a835 --- /dev/null +++ b/deployments/basesepolia_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "basesepolia", + "chainId": "84532", + "addresses": {} +} diff --git a/deployments/berachainbepolia.json b/deployments/berachainbepolia.json new file mode 100644 index 0000000..0277ca6 --- /dev/null +++ b/deployments/berachainbepolia.json @@ -0,0 +1,5 @@ +{ + "name": "berachainbepolia", + "chainId": "80069", + "contracts": {} +} diff --git a/deployments/berachainbepolia_addresses.json b/deployments/berachainbepolia_addresses.json new file mode 100644 index 0000000..6b34277 --- /dev/null +++ b/deployments/berachainbepolia_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "berachainbepolia", + "chainId": "80069", + "addresses": {} +} diff --git a/deployments/bscmainnet.json b/deployments/bscmainnet.json new file mode 100644 index 0000000..b1a740e --- /dev/null +++ b/deployments/bscmainnet.json @@ -0,0 +1,5 @@ +{ + "name": "bscmainnet", + "chainId": "56", + "contracts": {} +} diff --git a/deployments/bscmainnet_addresses.json b/deployments/bscmainnet_addresses.json new file mode 100644 index 0000000..8d0acc3 --- /dev/null +++ b/deployments/bscmainnet_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "bscmainnet", + "chainId": "56", + "addresses": {} +} diff --git a/deployments/bsctestnet.json b/deployments/bsctestnet.json new file mode 100644 index 0000000..eed803e --- /dev/null +++ b/deployments/bsctestnet.json @@ -0,0 +1,5 @@ +{ + "name": "bsctestnet", + "chainId": "97", + "contracts": {} +} diff --git a/deployments/bsctestnet_addresses.json b/deployments/bsctestnet_addresses.json new file mode 100644 index 0000000..c0beb7d --- /dev/null +++ b/deployments/bsctestnet_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "bsctestnet", + "chainId": "97", + "addresses": {} +} diff --git a/deployments/ethereum.json b/deployments/ethereum.json new file mode 100644 index 0000000..dd24474 --- /dev/null +++ b/deployments/ethereum.json @@ -0,0 +1,5 @@ +{ + "name": "ethereum", + "chainId": "1", + "contracts": {} +} diff --git a/deployments/ethereum_addresses.json b/deployments/ethereum_addresses.json new file mode 100644 index 0000000..de562ee --- /dev/null +++ b/deployments/ethereum_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "ethereum", + "chainId": "1", + "addresses": {} +} diff --git a/deployments/opbnbmainnet.json b/deployments/opbnbmainnet.json new file mode 100644 index 0000000..6a503c8 --- /dev/null +++ b/deployments/opbnbmainnet.json @@ -0,0 +1,5 @@ +{ + "name": "opbnbmainnet", + "chainId": "204", + "contracts": {} +} diff --git a/deployments/opbnbmainnet_addresses.json b/deployments/opbnbmainnet_addresses.json new file mode 100644 index 0000000..cf3419c --- /dev/null +++ b/deployments/opbnbmainnet_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "opbnbmainnet", + "chainId": "204", + "addresses": {} +} diff --git a/deployments/opbnbtestnet.json b/deployments/opbnbtestnet.json new file mode 100644 index 0000000..0c7a986 --- /dev/null +++ b/deployments/opbnbtestnet.json @@ -0,0 +1,5 @@ +{ + "name": "opbnbtestnet", + "chainId": "5611", + "contracts": {} +} diff --git a/deployments/opbnbtestnet_addresses.json b/deployments/opbnbtestnet_addresses.json new file mode 100644 index 0000000..fdd8ea7 --- /dev/null +++ b/deployments/opbnbtestnet_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "opbnbtestnet", + "chainId": "5611", + "addresses": {} +} diff --git a/deployments/opmainnet.json b/deployments/opmainnet.json new file mode 100644 index 0000000..58d00eb --- /dev/null +++ b/deployments/opmainnet.json @@ -0,0 +1,5 @@ +{ + "name": "opmainnet", + "chainId": "10", + "contracts": {} +} diff --git a/deployments/opmainnet_addresses.json b/deployments/opmainnet_addresses.json new file mode 100644 index 0000000..afe9164 --- /dev/null +++ b/deployments/opmainnet_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "opmainnet", + "chainId": "10", + "addresses": {} +} diff --git a/deployments/opsepolia.json b/deployments/opsepolia.json new file mode 100644 index 0000000..9dbc8be --- /dev/null +++ b/deployments/opsepolia.json @@ -0,0 +1,5 @@ +{ + "name": "opsepolia", + "chainId": "11155420", + "contracts": {} +} diff --git a/deployments/opsepolia_addresses.json b/deployments/opsepolia_addresses.json new file mode 100644 index 0000000..baeb591 --- /dev/null +++ b/deployments/opsepolia_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "opsepolia", + "chainId": "11155420", + "addresses": {} +} diff --git a/deployments/sepolia.json b/deployments/sepolia.json new file mode 100644 index 0000000..21a16fd --- /dev/null +++ b/deployments/sepolia.json @@ -0,0 +1,5 @@ +{ + "name": "sepolia", + "chainId": "11155111", + "contracts": {} +} diff --git a/deployments/sepolia_addresses.json b/deployments/sepolia_addresses.json new file mode 100644 index 0000000..96d56dd --- /dev/null +++ b/deployments/sepolia_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "sepolia", + "chainId": "11155111", + "addresses": {} +} diff --git a/deployments/unichainmainnet.json b/deployments/unichainmainnet.json new file mode 100644 index 0000000..a722ac1 --- /dev/null +++ b/deployments/unichainmainnet.json @@ -0,0 +1,5 @@ +{ + "name": "unichainmainnet", + "chainId": "130", + "contracts": {} +} diff --git a/deployments/unichainmainnet_addresses.json b/deployments/unichainmainnet_addresses.json new file mode 100644 index 0000000..cb74429 --- /dev/null +++ b/deployments/unichainmainnet_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "unichainmainnet", + "chainId": "130", + "addresses": {} +} diff --git a/deployments/unichainsepolia.json b/deployments/unichainsepolia.json new file mode 100644 index 0000000..fbca591 --- /dev/null +++ b/deployments/unichainsepolia.json @@ -0,0 +1,5 @@ +{ + "name": "unichainsepolia", + "chainId": "1301", + "contracts": {} +} diff --git a/deployments/unichainsepolia_addresses.json b/deployments/unichainsepolia_addresses.json new file mode 100644 index 0000000..466a162 --- /dev/null +++ b/deployments/unichainsepolia_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "unichainsepolia", + "chainId": "1301", + "addresses": {} +} diff --git a/deployments/zksyncmainnet.json b/deployments/zksyncmainnet.json new file mode 100644 index 0000000..2443751 --- /dev/null +++ b/deployments/zksyncmainnet.json @@ -0,0 +1,5 @@ +{ + "name": "zksyncmainnet", + "chainId": "324", + "contracts": {} +} diff --git a/deployments/zksyncmainnet_addresses.json b/deployments/zksyncmainnet_addresses.json new file mode 100644 index 0000000..6b0d84d --- /dev/null +++ b/deployments/zksyncmainnet_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "zksyncmainnet", + "chainId": "324", + "addresses": {} +} diff --git a/deployments/zksyncsepolia.json b/deployments/zksyncsepolia.json new file mode 100644 index 0000000..99f2fb0 --- /dev/null +++ b/deployments/zksyncsepolia.json @@ -0,0 +1,5 @@ +{ + "name": "zksyncsepolia", + "chainId": "300", + "contracts": {} +} diff --git a/deployments/zksyncsepolia_addresses.json b/deployments/zksyncsepolia_addresses.json new file mode 100644 index 0000000..4d4a0b2 --- /dev/null +++ b/deployments/zksyncsepolia_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "zksyncsepolia", + "chainId": "300", + "addresses": {} +} diff --git a/hardhat.config.ts b/hardhat.config.ts index edd227e..4087d44 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -7,7 +7,6 @@ import "@nomiclabs/hardhat-etherscan"; import "@openzeppelin/hardhat-upgrades"; import "@typechain/hardhat"; import * as dotenv from "dotenv"; -import { parseUnits } from "ethers/lib/utils"; import "hardhat-dependency-compiler"; import "hardhat-deploy"; import "hardhat-gas-reporter"; @@ -110,7 +109,7 @@ const config: HardhatUserConfig = { yul: !process.env.CI, }, }, - evmVersion: "paris", + evmVersion: "cancun", outputSelection: { "*": { "*": ["storageLayout"], @@ -130,53 +129,50 @@ const config: HardhatUserConfig = { bsctestnet: { url: process.env.ARCHIVE_NODE_bsctestnet || "https://data-seed-prebsc-1-s1.binance.org:8545", chainId: 97, - accounts: { - mnemonic: process.env.MNEMONIC || "", - }, - gasPrice: parseUnits("10", "gwei").toNumber(), - gasMultiplier: 10, - timeout: 12000000, + live: true, + tags: ["testnet"], + gasPrice: 20000000000, + accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, + // Mainnet deployments are done through Frame wallet RPC bscmainnet: { url: process.env.ARCHIVE_NODE_bscmainnet || "https://bsc-dataseed.binance.org/", chainId: 56, live: true, timeout: 1200000, // 20 minutes - accounts: process.env.DEPLOYER_PRIVATE_KEY ? [`0x${process.env.DEPLOYER_PRIVATE_KEY}`] : [], + accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, sepolia: { - url: process.env.ARCHIVE_NODE_sepolia || "https://ethereum-sepolia.blockpi.network/v1/rpc/public", + url: process.env.ARCHIVE_NODE_sepolia || "https://eth-sepolia.public.blastapi.io", chainId: 11155111, live: true, - accounts: { - mnemonic: process.env.MNEMONIC || "", - }, + tags: ["testnet"], + accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, ethereum: { - url: process.env.ARCHIVE_NODE_ethereum || "https://ethereum.blockpi.network/v1/rpc/public", + url: process.env.ARCHIVE_NODE_ethereum || "https://ethereum.public.blockpi.network/v1/rpc/public", chainId: 1, - accounts: process.env.DEPLOYER_PRIVATE_KEY ? [`0x${process.env.DEPLOYER_PRIVATE_KEY}`] : [], + live: true, + accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, opbnbtestnet: { url: process.env.ARCHIVE_NODE_opbnbtestnet || "https://opbnb-testnet-rpc.bnbchain.org", chainId: 5611, live: true, - gasPrice: 300000000000, + tags: ["testnet"], accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, opbnbmainnet: { url: process.env.ARCHIVE_NODE_opbnbmainnet || "https://opbnb-mainnet-rpc.bnbchain.org", chainId: 204, live: true, - gasPrice: parseUnits("0.03", "gwei").toNumber(), - accounts: { - mnemonic: process.env.MNEMONIC || "", - }, + accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, arbitrumsepolia: { url: process.env.ARCHIVE_NODE_arbitrumsepolia || "https://sepolia-rollup.arbitrum.io/rpc", chainId: 421614, live: true, + tags: ["testnet"], accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, arbitrumone: { @@ -189,6 +185,7 @@ const config: HardhatUserConfig = { url: process.env.ARCHIVE_NODE_opsepolia || "https://sepolia.optimism.io", chainId: 11155420, live: true, + tags: ["testnet"], accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, opmainnet: { @@ -201,6 +198,7 @@ const config: HardhatUserConfig = { url: process.env.ARCHIVE_NODE_basesepolia || "https://sepolia.base.org", chainId: 84532, live: true, + tags: ["testnet"], accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, basemainnet: { @@ -213,6 +211,7 @@ const config: HardhatUserConfig = { url: process.env.ARCHIVE_NODE_unichainsepolia || "https://sepolia.unichain.org", chainId: 1301, live: true, + tags: ["testnet"], accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, unichainmainnet: { @@ -225,7 +224,7 @@ const config: HardhatUserConfig = { url: process.env.ARCHIVE_NODE_berachainbepolia || "https://bepolia.rpc.berachain.com", chainId: 80069, live: true, - accounts: process.env.DEPLOYER_PRIVATE_KEY ? [`0x${process.env.DEPLOYER_PRIVATE_KEY}`] : [], + accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, }, gasReporter: { diff --git a/hardhat.config.zksync.ts b/hardhat.config.zksync.ts index 7d77062..b82c388 100644 --- a/hardhat.config.zksync.ts +++ b/hardhat.config.zksync.ts @@ -55,7 +55,7 @@ const config: HardhatUserConfig = { yul: !process.env.CI, }, }, - evmVersion: "paris", + evmVersion: "cancun", outputSelection: { "*": { "*": ["storageLayout"], @@ -77,6 +77,8 @@ const config: HardhatUserConfig = { accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], zksync: true, live: true, + gasPrice: 2000000000, // 20 gwei + enableVerifyURL: true, }, zksyncmainnet: { url: process.env.ARCHIVE_NODE_zksyncmainnet || "https://mainnet.era.zksync.io", @@ -85,6 +87,7 @@ const config: HardhatUserConfig = { accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], zksync: true, live: true, + enableVerifyURL: true, }, }, gasReporter: { diff --git a/package.json b/package.json index fa55f5e..2f3976b 100644 --- a/package.json +++ b/package.json @@ -63,6 +63,7 @@ "@typechain/ethers-v5": "^7.2.0", "@typechain/hardhat": "^2.3.1", "@types/chai": "^4.3.1", + "@types/debug": "^4.1.12", "@types/mocha": "^9.1.1", "@types/node": "^12.20.50", "@typescript-eslint/eslint-plugin": "^5.27.1", diff --git a/yarn.lock b/yarn.lock index c8de020..ed11fec 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4276,6 +4276,15 @@ __metadata: languageName: node linkType: hard +"@types/debug@npm:^4.1.12": + version: 4.1.12 + resolution: "@types/debug@npm:4.1.12" + dependencies: + "@types/ms": "*" + checksum: 47876a852de8240bfdaf7481357af2b88cb660d30c72e73789abf00c499d6bc7cd5e52f41c915d1b9cd8ec9fef5b05688d7b7aef17f7f272c2d04679508d1053 + languageName: node + linkType: hard + "@types/deep-eql@npm:*": version: 4.0.2 resolution: "@types/deep-eql@npm:4.0.2" @@ -4351,6 +4360,13 @@ __metadata: languageName: node linkType: hard +"@types/ms@npm:*": + version: 2.1.0 + resolution: "@types/ms@npm:2.1.0" + checksum: 532d2ebb91937ccc4a89389715e5b47d4c66e708d15942fe6cc25add6dc37b2be058230a327dd50f43f89b8b6d5d52b74685a9e8f70516edfc9bdd6be910eff4 + languageName: node + linkType: hard + "@types/mysql@npm:2.15.26": version: 2.15.26 resolution: "@types/mysql@npm:2.15.26" @@ -4667,6 +4683,7 @@ __metadata: "@typechain/ethers-v5": ^7.2.0 "@typechain/hardhat": ^2.3.1 "@types/chai": ^4.3.1 + "@types/debug": ^4.1.12 "@types/mocha": ^9.1.1 "@types/node": ^12.20.50 "@typescript-eslint/eslint-plugin": ^5.27.1