|
1 |
| -import 'dotenv/config'; |
2 |
| -import { HardhatUserConfig } from 'hardhat/types'; |
| 1 | +import "dotenv/config"; |
| 2 | +import { HardhatUserConfig } from "hardhat/types"; |
3 | 3 |
|
4 |
| -import '@nomicfoundation/hardhat-chai-matchers'; |
5 |
| -import '@nomicfoundation/hardhat-ethers'; |
6 |
| -import '@typechain/hardhat'; |
7 |
| -import 'hardhat-gas-reporter'; |
8 |
| -import 'solidity-coverage'; |
| 4 | +import "@nomicfoundation/hardhat-chai-matchers"; |
| 5 | +import "@nomicfoundation/hardhat-ethers"; |
| 6 | +import "@typechain/hardhat"; |
| 7 | +import "hardhat-gas-reporter"; |
| 8 | +import "solidity-coverage"; |
9 | 9 |
|
10 |
| -import 'hardhat-deploy'; |
11 |
| -import 'hardhat-tracer'; |
12 |
| -import 'hardhat-deploy-ethers'; |
13 |
| -import 'hardhat-deploy-tenderly'; |
| 10 | +import "hardhat-deploy"; |
| 11 | +import "hardhat-tracer"; |
| 12 | +import "hardhat-deploy-ethers"; |
| 13 | +import "hardhat-deploy-tenderly"; |
14 | 14 | import "@nomicfoundation/hardhat-foundry";
|
15 |
| -import '@primitivefi/hardhat-dodoc'; |
| 15 | +import "@primitivefi/hardhat-dodoc"; |
16 | 16 |
|
17 |
| -import { node_url, accounts, addForkConfiguration } from './utils/network'; |
| 17 | +import { node_url, accounts, addForkConfiguration } from "./utils/network"; |
18 | 18 |
|
19 | 19 | const config: HardhatUserConfig = {
|
20 |
| - solidity: { |
21 |
| - compilers: [ |
22 |
| - { |
23 |
| - version: '0.8.22', |
24 |
| - settings: { |
25 |
| - optimizer: { |
26 |
| - enabled: true, |
27 |
| - runs: 2000, |
28 |
| - }, |
29 |
| - }, |
30 |
| - }, |
31 |
| - ], |
32 |
| - }, |
33 |
| - namedAccounts: { |
34 |
| - deployer: 0, |
35 |
| - simpleERC20Beneficiary: 1, |
36 |
| - }, |
37 |
| - networks: addForkConfiguration({ |
38 |
| - hardhat: { |
39 |
| - initialBaseFeePerGas: 0, // to fix : https://github.com/sc-forks/solidity-coverage/issues/652, see https://github.com/sc-forks/solidity-coverage/issues/652#issuecomment-896330136 |
40 |
| - }, |
41 |
| - localhost: { |
42 |
| - url: node_url('localhost'), |
43 |
| - accounts: accounts(), |
44 |
| - }, |
45 |
| - staging: { |
46 |
| - url: node_url('rinkeby'), |
47 |
| - accounts: accounts('rinkeby'), |
48 |
| - }, |
49 |
| - production: { |
50 |
| - url: node_url('mainnet'), |
51 |
| - accounts: accounts('mainnet'), |
52 |
| - }, |
53 |
| - mainnet: { |
54 |
| - url: node_url('mainnet'), |
55 |
| - accounts: accounts('mainnet'), |
56 |
| - }, |
57 |
| - sepolia: { |
58 |
| - url: node_url('sepolia'), |
59 |
| - accounts: accounts('sepolia'), |
60 |
| - }, |
61 |
| - kovan: { |
62 |
| - url: node_url('kovan'), |
63 |
| - accounts: accounts('kovan'), |
64 |
| - }, |
65 |
| - goerli: { |
66 |
| - url: node_url('goerli'), |
67 |
| - accounts: accounts('goerli'), |
68 |
| - }, |
69 |
| - }), |
70 |
| - paths: { |
71 |
| - sources: 'src', |
72 |
| - }, |
73 |
| - gasReporter: { |
74 |
| - currency: 'USD', |
75 |
| - gasPrice: 100, |
76 |
| - enabled: process.env.REPORT_GAS ? true : false, |
77 |
| - coinmarketcap: process.env.COINMARKETCAP_API_KEY, |
78 |
| - maxMethodDiff: 10, |
79 |
| - }, |
80 |
| - mocha: { |
81 |
| - timeout: 0, |
82 |
| - }, |
83 |
| - external: process.env.HARDHAT_FORK |
84 |
| - ? { |
85 |
| - deployments: { |
86 |
| - // process.env.HARDHAT_FORK will specify the network that the fork is made from. |
87 |
| - // these lines allow it to fetch the deployments from the network being forked from both for node and deploy task |
88 |
| - hardhat: ['deployments/' + process.env.HARDHAT_FORK], |
89 |
| - localhost: ['deployments/' + process.env.HARDHAT_FORK], |
90 |
| - }, |
91 |
| - } |
92 |
| - : undefined, |
| 20 | + solidity: { |
| 21 | + compilers: [ |
| 22 | + { |
| 23 | + version: "0.8.22", |
| 24 | + settings: { |
| 25 | + viaIR: true, |
| 26 | + optimizer: { |
| 27 | + enabled: true, |
| 28 | + runs: 2000, |
| 29 | + }, |
| 30 | + }, |
| 31 | + }, |
| 32 | + ], |
| 33 | + }, |
| 34 | + namedAccounts: { |
| 35 | + deployer: 0, |
| 36 | + simpleERC20Beneficiary: 1, |
| 37 | + }, |
| 38 | + networks: addForkConfiguration({ |
| 39 | + hardhat: { |
| 40 | + initialBaseFeePerGas: 0, // to fix : https://github.com/sc-forks/solidity-coverage/issues/652, see https://github.com/sc-forks/solidity-coverage/issues/652#issuecomment-896330136 |
| 41 | + }, |
| 42 | + localhost: { |
| 43 | + url: node_url("localhost"), |
| 44 | + accounts: accounts(), |
| 45 | + }, |
| 46 | + staging: { |
| 47 | + url: node_url("rinkeby"), |
| 48 | + accounts: accounts("rinkeby"), |
| 49 | + }, |
| 50 | + production: { |
| 51 | + url: node_url("mainnet"), |
| 52 | + accounts: accounts("mainnet"), |
| 53 | + }, |
| 54 | + mainnet: { |
| 55 | + url: node_url("mainnet"), |
| 56 | + accounts: accounts("mainnet"), |
| 57 | + }, |
| 58 | + sepolia: { |
| 59 | + url: node_url("sepolia"), |
| 60 | + accounts: accounts("sepolia"), |
| 61 | + }, |
| 62 | + kovan: { |
| 63 | + url: node_url("kovan"), |
| 64 | + accounts: accounts("kovan"), |
| 65 | + }, |
| 66 | + goerli: { |
| 67 | + url: node_url("goerli"), |
| 68 | + accounts: accounts("goerli"), |
| 69 | + }, |
| 70 | + }), |
| 71 | + paths: { |
| 72 | + sources: "src", |
| 73 | + }, |
| 74 | + gasReporter: { |
| 75 | + currency: "USD", |
| 76 | + gasPrice: 100, |
| 77 | + enabled: process.env.REPORT_GAS ? true : false, |
| 78 | + coinmarketcap: process.env.COINMARKETCAP_API_KEY, |
| 79 | + maxMethodDiff: 10, |
| 80 | + }, |
| 81 | + mocha: { |
| 82 | + timeout: 0, |
| 83 | + }, |
| 84 | + external: process.env.HARDHAT_FORK |
| 85 | + ? { |
| 86 | + deployments: { |
| 87 | + // process.env.HARDHAT_FORK will specify the network that the fork is made from. |
| 88 | + // these lines allow it to fetch the deployments from the network being forked from both for node and deploy task |
| 89 | + hardhat: ["deployments/" + process.env.HARDHAT_FORK], |
| 90 | + localhost: ["deployments/" + process.env.HARDHAT_FORK], |
| 91 | + }, |
| 92 | + } |
| 93 | + : undefined, |
93 | 94 |
|
94 |
| - tenderly: { |
95 |
| - project: 'template-ethereum-contracts', |
96 |
| - username: process.env.TENDERLY_USERNAME as string, |
97 |
| - }, |
98 |
| - dodoc: { |
99 |
| - exclude: ["@openzeppelin"] |
100 |
| - } |
| 95 | + tenderly: { |
| 96 | + project: "template-ethereum-contracts", |
| 97 | + username: process.env.TENDERLY_USERNAME as string, |
| 98 | + }, |
| 99 | + dodoc: { |
| 100 | + exclude: ["@openzeppelin"], |
| 101 | + }, |
101 | 102 | };
|
102 | 103 |
|
103 | 104 | export default config;
|
0 commit comments