github.com/ethereum-optimism/optimism@v1.7.2/packages/contracts-bedrock/foundry.toml (about) 1 ################################################################ 2 # PROFILE: DEFAULT (Local) # 3 ################################################################ 4 5 [profile.default] 6 7 # Compilation settings 8 src = 'src' 9 out = 'forge-artifacts' 10 script = 'scripts' 11 optimizer = true 12 optimizer_runs = 999999 13 remappings = [ 14 '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 16 '@rari-capital/solmate/=lib/solmate', 17 '@cwia/=lib/clones-with-immutable-args/src', 18 '@lib-keccak/=lib/lib-keccak/contracts/lib', 19 'forge-std/=lib/forge-std/src', 20 'ds-test/=lib/forge-std/lib/ds-test/src', 21 'safe-contracts/=lib/safe-contracts/contracts', 22 'kontrol-cheatcodes/=lib/kontrol-cheatcodes/src', 23 'solady/=lib/solady/src', 24 ] 25 extra_output = ['devdoc', 'userdoc', 'metadata', 'storageLayout'] 26 bytecode_hash = 'none' 27 build_info_path = 'artifacts/build-info' 28 29 # Test / Script Runner Settings 30 ffi = true 31 fs_permissions = [ 32 { access='read-write', path='./.resource-metering.csv' }, 33 { access='read-write', path='./snapshots/' }, 34 { access='read-write', path='./deployments/' }, 35 { access='read', path='./deploy-config/' }, 36 { access='read', path='./periphery-deploy-config/' }, 37 { access='read', path='./broadcast/' }, 38 { access='read', path = './forge-artifacts/' }, 39 { access='write', path='./semver-lock.json' }, 40 { access='read-write', path='./.testdata/' }, 41 { access='read', path='./kout-deployment' } 42 ] 43 libs = ["node_modules", "lib"] 44 45 [fuzz] 46 runs = 64 47 48 [fmt] 49 line_length=120 50 multiline_func_header='all' 51 bracket_spacing=true 52 wrap_comments=true 53 ignore = ['src/vendor/WETH9.sol'] 54 55 ################################################################ 56 # PROFILE: CI # 57 ################################################################ 58 59 [profile.ci] 60 deny_warnings = true 61 fuzz = { runs = 512 } 62 63 [profile.ci.invariant] 64 runs = 256 65 depth = 32 66 67 ################################################################ 68 # PROFILE: LITE # 69 ################################################################ 70 71 [profile.lite] 72 optimizer = false 73 74 ################################################################ 75 # PROFILE: KONTROL # 76 ################################################################ 77 # See test/kontrol/README.md for an explanation of how the profiles are configured 78 79 [profile.kdeploy] 80 src = 'src/L1' 81 out = 'kout-deployment' 82 test = 'test/kontrol' 83 script = 'scripts-kontrol' 84 85 [profile.kprove] 86 src = 'test/kontrol/proofs' 87 out = 'kout-proofs' 88 test = 'test/kontrol/proofs' 89 script = 'test/kontrol/proofs' 90 ast = true