forked from LightDotSo/LightDotSo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfoundry.toml
94 lines (82 loc) · 2.45 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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
[profile.default]
auto_detect_remappings = false
evm_version = "london"
libs = [
"lib/account-abstraction",
"lib/ds-test",
"lib/forge-std",
# "lib/kernel",
"lib/openzeppelin-contracts",
"lib/openzeppelin-contracts-upgradeable",
"lib/safe-contracts",
"lib/solady",
"lib/solmate",
# "lib/soul-wallet-contract",
"lib/v3-periphery",
]
gas_reports = ["LightWallet", "LightWalletFactory"]
optimizer = true
optimizer_runs = 10_000
solc = "0.8.18"
src = "contracts/src"
test = "contracts/test"
verbosity = 3
via_ir = false
# known error codes are: ["unreachable", "unused-return", "unused-param", "unused-var", "code-size", "shadowing", "func-mutability", "license", "pragma-solidity", "virtual-interfaces", "same-varname"]
# ignored_error_codes = ["license", "code-size"]
[profile.deploy]
optimizer_runs = 4_294_967_295
# via_ir = true
out = 'optimized-out'
script = 'contracts'
bytecode_hash = 'none'
src = 'contracts'
[profile.local]
no_match_test = "test(Fork|Fuzz|Invariant)"
[profile.ci]
fuzz = { runs = 5000 }
invariant = { runs = 1000 }
verbosity = 2
no_match_path = "*.f.sol"
[profile.fork]
test = "contracts/test/fork"
[profile.noir]
fs_permissions = [{ access = "read", path = "contracts/circuits/proofs" }]
test = "contracts/circuits/test"
[profile.script]
optimizer = true
optimizer_runs = 200
ffi = true
test = "contracts/script/test"
fs_permissions = [{ access = "read-write", path = "./tmp.json" }]
[profile.script.optimizer_details]
constantOptimizer = false
yul = false
[profile.smt]
[profile.smt.model_checker]
engine = "chc"
invariants = ["contract", "reentrancy"]
show_unproved = true
timeout = 300_000
[profile.smt.model_checker.contracts]
"contracts/src/LightWallet.sol" = ["LightWallet"]
"contracts/src/LightWalletFactory.sol" = ["LightWalletFactory"]
[fmt]
ignore = [
"contracts/src/LightWallet.sol",
"contracts/src/LightWalletFactory.sol",
]
[doc]
ignore = ["**/*.t.sol"]
out = "docs"
repository = "https://github.com/LightDotSo/LightDotSo"
[rpc_endpoints]
localhost = "http://localhost:8545"
mainnet = "${PROTECTED_RPC_URL}/1"
optimism = "${PROTECTED_RPC_URL}/10"
bsc = "${PROTECTED_RPC_URL}/56"
gnosis = "${PROTECTED_RPC_URL}/100"
polygon = "${PROTECTED_RPC_URL}/137"
arbitrum = "${PROTECTED_RPC_URL}/42161"
avalanche = "${PROTECTED_RPC_URL}/43114"
sepolia = "${PROTECTED_RPC_URL}/11155111"