This repository has been archived by the owner on Sep 29, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
foundry.toml
73 lines (65 loc) · 2.35 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
[profile.default]
auto_detect_solc = false
solc = '0.8.20'
src = "src"
test = "test"
out = "out"
remappings = [
'forge-std/=lib/forge-std/src',
'openzeppelin-contracts/=lib/openzeppelin-contracts/contracts/',
'seaport-types/=lib/seaport-types/src/',
'shipyard-core/=lib/shipyard-core/src/',
'solady-test/=lib/solady/test/',
'solady/=lib/solady/src/'
]
# use realistic numbers in tests
block_number = 17722462
block_timestamp = 1689711647
# don't pollute bytecode with metadata
bytecode_hash = 'none'
cbor_metadata = false
# grant access to read via_ir-out by default, if necessary
fs_permissions = [{ access = "read", path = "./via_ir-out" }]
# etherscan currently does not support contracts with more than 10 million optimizer runs;
# bytecode is typically unaffected past ~1 million runs anyway
optimizer_runs = 99_999_999
# via_ir pipeline is very slow - use a separate profile to pre-compile and then use vm.getCode to deploy
[profile.via_ir]
via_ir = true
# do not compile tests when compiling via-ir
test = 'src'
out = 'via_ir-out'
[profile.ffi]
ffi = true
test = 'test-ffi'
fs_permissions = [{ access = 'read-write', path = './test-ffi/' }]
# Use a very small number of default fuzz runs to speed up local testing. It is
# recommended to increase this number or use the `--fuzz-runs=256` flag to run
# a proper fuzzing campaign before yeeting your project to mainnet.
[profile.ffi.fuzz]
runs = 5
[profile.tutorial]
src = "lib/shipyard-core/src"
test = 'lib/shipyard-core/test'
out = "lib/shipyard-core/out"
libs = ["lib/shipyard-core/lib"]
remappings = [
'src/=lib/shipyard-core/src/',
'dynamic-traits/=lib/shipyard-core/lib/dynamic-traits/src/',
'forge-std/=lib/shipyard-core/lib/forge-std/src',
'openzeppelin-contracts/=lib/shipyard-core/lib/openzeppelin-contracts/contracts/',
'openzeppelin-contracts/contracts/=lib/shipyard-core/lib/openzeppelin-contracts/contracts/',
'seaport-types/=lib/shipyard-core/lib/seaport-types/src/',
'shipyard-core/=lib/shipyard-core/src/',
'solady-test/=lib/shipyard-core/lib/solady/test/',
'solady/=lib/shipyard-core/lib/solady/src/',
'solarray/=lib/shipyard-core/lib/solarray/src/',
]
# offload bulk of fuzz runs to CI
[profile.CI.fuzz]
fuzz_runs = 1024
[fmt]
line_length = 80
tab_width = 4
bracket_spacing = true
# See more config options https://github.com/foundry-rs/foundry/tree/master/config