-
Notifications
You must be signed in to change notification settings - Fork 18
/
Copy pathfoundry.toml
58 lines (51 loc) · 2.87 KB
/
foundry.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
[profile.default]
src = 'src'
out = 'artifacts/foundry'
libs = ['node_modules', 'lib']
test = 'test'
cache_path = 'artifacts/forge-cache'
fs_permissions = [{ access = "read", path = "./"}]
auto_detect_solc = true
evm_version = 'shanghai' # lock to shanghai to use push0 opcode which is live on base, optimism and Moonbeam
optimizer_runs = 1
rpc_storage_caching = { chains = "all", endpoints = "all" }
ignored_warnings_from = ["src/MErc20Delegator.sol", "src/tokensale/TokenSaleDistributorProxy.sol"]
gas_limit = "18446744073709551615" # u64::MAX
block_gas_limit = "18446744073709551615"
revert_strings = "debug"
sparse_mode = true # compiles files that match filter criteria
# We can have quite some control over the optimiser when using the new IR one.
[profile.default.optimizer_details]
# # Enables the new ABI optimiser.
[profile.default.optimizer_details.yul_details]
stack_allocation = true # Improves allocation of stack slots for variables.
[profile.debug]
# Make things chattier when debugging in case of test failures, giving us more
# information with which to debug the issue. At this level, stack traces and
# setup traces for failing tests are displayed.
verbosity = 4
[profile.ci]
fuzz = {runs = 1000}
verbosity = 4
[rpc_endpoints]
localhost = "http://127.0.0.1:8545"
moonriver = { endpoint= "${MOONRIVER_RPC_URL}", retries = 3, retry_backoff = 1000 }
moonbeam = { endpoint= "${MOONBEAM_RPC_URL}", retries = 3, retry_backoff = 1000 }
moonbase = { endpoint= "${MOONBASE_RPC_URL}", retries = 3, retry_backoff = 1000 }
ethereum = { endpoint= "${ETH_RPC_URL}", retries = 3, retry_backoff = 1000 }
base = { endpoint= "${BASE_RPC_URL}", retries = 3, retry_backoff = 1000 }
baseSepolia = { endpoint= "${BASE_SEPOLIA_RPC_URL}", retries = 3, retry_backoff = 1000 }
arbitrum = { endpoint= "${ARB_RPC_URL}", retries = 3, retry_backoff = 1000 }
optimism = { endpoint= "${OP_RPC_URL}", retries = 3, retry_backoff = 1000 }
opSepolia = { endpoint= "${OP_SEPOLIA_RPC_URL}", retries = 2, retry_backoff = 1000 }
# comment out the following lines so that CI passes fast and doesn't throw errors related to connecting to CI
[etherscan]
#optimism = { key = "${OPTIMISM_API_KEY}", url= "https://api-optimistic.etherscan.io/api" }
#moonriver = { key = "${MOONRIVER_API_KEY}", url= "https://api-moonriver.moonscan.io/api" }
#moonbeam = { key = "${MOONBEAM_API_KEY}", url= "https://api-moonbeam.moonscan.io/api" }
#moonbase = { key = "${MOONBEAM_API_KEY}", url= "https://api-moonbase.moonscan.io/api" }
#goerli = { key = "${ETHERSCAN_API_KEY}", url= "https://api-goerli.etherscan.io/api" }
#sepolia = { key = "${ETHERSCAN_API_KEY}", url= "https://api-sepolia.etherscan.io/api" }
#base = { key = "${BASESCAN_API_KEY}", url= "https://api.basescan.org/api" }
#baseSepolia = { key = "${BASESCAN_API_KEY}", url= "https://sepolia.basescan.org/api" }
#opSepolia = { key = "${OPSCAN_API_KEY}", url= "https://api.optimistic.etherscan.io/api" }