forked from OlympusDAO/olympus-v3
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfoundry.toml
More file actions
78 lines (69 loc) · 5.47 KB
/
Copy pathfoundry.toml
File metadata and controls
78 lines (69 loc) · 5.47 KB
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
[profile.default]
ffi = true
ast = true
legacy_assertions = true
assertions_revert = false
fs_permissions = [
{ access = "write", path = "./src/test/sim/out/" },
{ access = "read-write", path = "./deployments/" },
{ access = "read", path = "./src/scripts/" },
{ access = "read", path = "./src/proposals/addresses.json" },
{ access = "read-write", path = "./src/scripts/env.json" },
]
gas_limit = "18446744073709551615"
# The solc version was previously explicitly set, but has now been moved to `compilation_restrictions` in order to compile some contracts with 0.8.24
# solc_version = "0.8.15"
optimizer = true
optimizer_runs = 10000
verbosity = 3
# Operator is too large - it needs to only use 10 optimizer runs
# The "size" script in package.json replicates these overrides, as "forge build --sizes" does not use the profiles defined here
additional_compiler_profiles = [
{ name = "ten-runs", optimizer_runs = 10 },
{ name = "five-thousand-runs", optimizer_runs = 5000 },
]
compilation_restrictions = [
{ paths = "src/policies/Operator.sol", profile = "ten-runs" },
{ paths = "src/policies/cooler/MonoCooler.sol", profile = "five-thousand-runs" },
{ paths = "src/policies/bridge/CCIPBurnMintTokenPool.sol", version = "0.8.24" },
{ paths = "**", version = "0.8.15" },
]
libs = ["dependencies"]
[profile.deploy]
script_execution_protection = false
[profile.multisig]
script_execution_protection = false
[fuzz]
runs = 256
[rpc_endpoints]
# Place ALCHEMY_API_KEY in the environment or .env file
mainnet = { endpoint = "https://eth-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
sepolia = { endpoint = "https://eth-sepolia.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
base = { endpoint = "https://base-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
base-sepolia = { endpoint = "https://base-sepolia.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
arbitrum = { endpoint = "https://arb-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
arbitrum-sepolia = { endpoint = "https://arb-sepolia.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
optimism = { endpoint = "https://opt-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
optimism-sepolia = { endpoint = "https://opt-sepolia.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
polygon = { endpoint = "https://polygon-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
polygon-amoy = { endpoint = "https://polygon-amoy.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
berachain = { endpoint = "https://berachain-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
berachain-bepolia = { endpoint = "https://berachain-bepolia.g.alchemy.com/v2/${ALCHEMY_API_KEY}", retries = 3, retry_backoff = 10000, compute_units_per_second = 500 }
[soldeer]
remappings_generate = false
[dependencies]
surl = { version = "1.0.0", git = "https://github.com/memester-xyz/surl.git", rev = "034c912ae9b5e707a5afd21f145b452ad8e800df" }
base64 = { version = "1.1.0", git = "https://github.com/Brechtpd/base64.git", rev = "4d85607b18d981acff392d2e99ba654305552a97" }
chainlink-ccip = { version = "1.6.0", git = "https://github.com/smartcontractkit/chainlink.git", rev = "5dd09706665ee0073f8db7d5ec6e5c97eb44fb69" }
chainlink-local = { version = "0.2.5", git = "https://github.com/smartcontractkit/chainlink-local.git", rev = "b429481536095867f9cd2c6480066c472b9594de" }
forge-std = "1.9.6"
safe-utils = { version = "0.0.17", git = "https://github.com/Recon-Fuzz/safe-utils.git", rev = "c057d167139dc4878f10ab7133a8c069fa6b1601" }
base58-solidity = { version = "1.0.3", git = "https://github.com/storyicon/base58-solidity.git", rev = "2b56a9a42456ba18e79e4a8a0b541c0d7fb61b6f" }
clones-with-immutable-args = { version = "1.1.2", git = "https://github.com/wighawag/clones-with-immutable-args.git", rev = "196f1ecc6485c1bf2d41677fa01d3df4927ff9ce" }
layer-zero-endpoint-v1 = { version = "0.0.6", git = "https://github.com/LayerZero-Labs/endpoint-v1-solidity-examples.git", rev = "a4954e5747baca5e7fd2b62c639e7600ad388a5f" }
solmate = { version = "6.2.0", git = "https://github.com/transmissions11/solmate.git", rev = "fadb2e2778adbf01c80275bfb99e5c14969d964b" }
openzeppelin = { version = "4.8.0", git = "https://github.com/OpenZeppelin/openzeppelin-contracts.git", rev = "49c0e4370d0cc50ea6090709e3835a3091e33ee2" }
openzeppelin-new = { version = "5.3.0", git = "https://github.com/OpenZeppelin/openzeppelin-contracts.git", rev = "e4f70216d759d8e6a64144a9e1f7bbeed78e7079" }
forge-proposal-simulator = { version = "1.0.1", git = "https://github.com/OlympusDAO/forge-proposal-simulator.git", rev = "76374f3bf3b032dfb5c685c5a969ca20d0776384" }
safe-smart-account = { version = "1.4.1", git = "https://github.com/safe-global/safe-smart-account.git", rev = "bf943f80fec5ac647159d26161446ac5d716a294" }
solidity-http = { version = "0.0.7", git = "https://github.com/Recon-Fuzz/solidity-http.git", rev = "c1bdafefa34e4a5e581f4227dfed4efecc0d6d0e" }