Files
smom-dbis-138/foundry.toml

79 lines
2.2 KiB
TOML
Raw Normal View History

[profile.default]
src = "contracts"
test = "test"
script = "script"
out = "out"
libs = ["lib"]
solc_version = "0.8.20"
optimizer = true
optimizer_runs = 200
via_ir = false
evm_version = "london"
auto_detect_solc = false
# Enable via-ir for contracts with stack too deep issues
[profile.via-ir]
via_ir = true
# Note: Foundry doesn't support 'exclude' in profiles
# To exclude CCIP integration contracts, move them outside the 'contracts' directory
# or use a different build system (e.g., Hardhat)
[profile.ci]
fuzz = { runs = 10000 }
invariant = { runs = 1000 }
[rpc_endpoints]
mainnet = "${ETHEREUM_MAINNET_RPC}"
cronos = "${CRONOS_RPC_URL}"
bsc = "${BSC_RPC_URL}"
polygon = "${POLYGON_RPC_URL}"
gnosis = "${GNOSIS_RPC_URL}"
avalanche = "${AVALANCHE_RPC_URL}"
base = "${BASE_RPC_URL}"
arbitrum = "${ARBITRUM_RPC_URL}"
optimism = "${OPTIMISM_RPC_URL}"
chain138 = "${RPC_URL_138:-http://localhost:8545}"
[fmt]
line_length = 120
tab_width = 4
bracket_spacing = true
int_types = "long"
multiline_func_header = "all"
[doc]
out = "docs/contracts"
prefix = ""
[etherscan]
mainnet = { key = "${ETHERSCAN_API_KEY}" }
cronos = { key = "${CRONOSCAN_API_KEY}", chain = "cronos" }
bsc = { key = "${BSCSCAN_API_KEY}", chain = "bsc" }
polygon = { key = "${POLYGONSCAN_API_KEY}", chain = "polygon" }
gnosis = { key = "${GNOSISSCAN_API_KEY}", chain = "gnosis" }
avalanche = { key = "${SNOWTRACE_API_KEY}", chain = "avalanche" }
base = { key = "${BASESCAN_API_KEY}", chain = "base" }
arbitrum = { key = "${ARBISCAN_API_KEY}", chain = "arbitrum" }
optimism = { key = "${OPTIMISTIC_ETHERSCAN_API_KEY}", chain = "optimism" }
chain138 = { key = "${ETHERSCAN_API_KEY}" }
# Note: Foundry profiles don't support rpc_url and etherscan keys.
# Use --rpc-url <name> and --etherscan-api-key flags instead, where <name>
# references entries in [rpc_endpoints] and [etherscan] sections above.
#
# Example usage:
# forge script ... --rpc-url mainnet --etherscan-api-key $ETHERSCAN_API_KEY
# forge script ... --rpc-url polygon --etherscan-api-key $POLYGONSCAN_API_KEY
#
# Chain IDs for reference:
# mainnet: 1
# cronos: 25
# bsc: 56
# polygon: 137
# gnosis: 100
# avalanche: 43114
# base: 8453
# arbitrum: 42161
# optimism: 10