@@ -47,36 +47,42 @@ additional_compiler_profiles = [
4747
4848compilation_restrictions = [
4949 # v2
50- { paths = " src/pkgs/v2-core/contracts/[!i]*.sol" , version = " 0.5.16" , optimizer_runs = 999999 },
51- { paths = " src/pkgs/v2-periphery/contracts/[!i]*.sol" , version = " 0.6.6" , optimizer_runs = 999999 },
50+ { paths = " src/pkgs/v2-core/contracts/[!i]*.sol" , version = " = 0.5.16" , optimizer_runs = 999999 },
51+ { paths = " src/pkgs/v2-periphery/contracts/[!i]*.sol" , version = " = 0.6.6" , optimizer_runs = 999999 },
5252 # v3
5353 { paths = " src/pkgs/v3-core/contracts/{UniswapV3Factory,UniswapV3Pool}.sol" , optimizer_runs = 800 },
5454 { paths = " src/**/v3-core/**/libraries/TickBitmap.sol" , version = " <0.8.0" },
55- { paths = " src/pkgs/v3-periphery/contracts/lens/*.sol" , version = " 0.7.6" , via_ir = false , optimizer_runs = 1000000 },
55+ { paths = " src/pkgs/v3-periphery/contracts/lens/*.sol" , version = " = 0.7.6" , via_ir = false , optimizer_runs = 1000000 },
5656 { paths = " src/pkgs/v3-periphery/contracts/NonfungiblePositionManager.sol" , optimizer_runs = 2000 },
5757 { paths = " src/pkgs/v3-periphery/contracts/NonfungibleTokenPositionDescriptor.sol" , optimizer_runs = 1000 },
5858 { paths = " src/pkgs/v3-periphery/contracts/libraries/NFTDescriptor.sol" , optimizer_runs = 1000 },
59- { paths = " src/pkgs/v3-periphery/contracts/SwapRouter.sol" , version = " 0.7.6" , via_ir = false , min_optimizer_runs = 1000000 },
60- { paths = " src/pkgs/v3-periphery/contracts/V3Migrator.sol" , version = " 0.7.6" , via_ir = false , min_optimizer_runs = 1000000 },
59+ { paths = " src/pkgs/v3-periphery/contracts/SwapRouter.sol" , version = " = 0.7.6" , via_ir = false , min_optimizer_runs = 1000000 },
60+ { paths = " src/pkgs/v3-periphery/contracts/V3Migrator.sol" , version = " = 0.7.6" , via_ir = false , min_optimizer_runs = 1000000 },
6161 { paths = " src/pkgs/v3-periphery/**/libraries/**" , version = " <0.8.0" },
62- # permit2
63- { paths = " src/pkgs/permit2/src/Permit2.sol" , version = " 0.8.17" , via_ir = true , optimizer_runs = 1000000 , evm_version = " london" },
64- { paths = " src/pkgs/permit2/src/**" , version = " 0.8.17" , via_ir = true },
62+ # permit2 - implementation at 0.8.17; interfaces/libs used by 0.8.26 contracts use >=0.8.17
63+ { paths = " src/pkgs/permit2/src/Permit2.sol" , version = " =0.8.17" , via_ir = true , optimizer_runs = 1000000 , evm_version = " london" },
64+ { paths = " src/pkgs/permit2/src/AllowanceTransfer.sol" , version = " =0.8.17" , via_ir = true },
65+ { paths = " src/pkgs/permit2/src/SignatureTransfer.sol" , version = " =0.8.17" , via_ir = true },
66+ { paths = " src/pkgs/permit2/src/EIP712.sol" , version = " =0.8.17" , via_ir = true },
67+ { paths = " src/pkgs/permit2/src/PermitErrors.sol" , version = " =0.8.17" , via_ir = true },
68+ { paths = " src/pkgs/permit2/src/libraries/PermitHash.sol" , version = " =0.8.17" , via_ir = true },
69+ { paths = " src/pkgs/permit2/src/libraries/Permit2Lib.sol" , version = " =0.8.17" , via_ir = true },
70+ { paths = " src/pkgs/permit2/src/libraries/Allowance.sol" , version = " =0.8.17" , via_ir = true },
6571 # v4
6672 { paths = " src/pkgs/v4-core/src/PoolManager.sol" , optimizer_runs = 44444444 },
67- { paths = " src/pkgs/v4-periphery/src/PositionDescriptor.sol" , version = " 0.8.26" , optimizer_runs = 1 },
68- { paths = " src/pkgs/v4-periphery/src/PositionManager.sol" , version = " 0.8.26" , optimizer_runs = 30000 },
73+ { paths = " src/pkgs/v4-periphery/src/PositionDescriptor.sol" , version = " = 0.8.26" , optimizer_runs = 1 },
74+ { paths = " src/pkgs/v4-periphery/src/PositionManager.sol" , version = " = 0.8.26" , optimizer_runs = 30000 },
6975 { paths = " src/pkgs/v4-periphery/src/lens/**" , version = " =0.8.26" , optimizer_runs = 44444444 },
70- { paths = " src/pkgs/v4-periphery/src/hooks/**" , version = " 0.8.26" , optimizer_runs = 44444444 },
76+ { paths = " src/pkgs/v4-periphery/src/hooks/**" , version = " = 0.8.26" , optimizer_runs = 44444444 },
7177 # router
7278 { paths = " src/pkgs/universal-router/contracts/UniversalRouter.sol" , optimizer_runs = 4444 },
7379 { paths = " src/pkgs/universal-router-2_0/contracts/UniversalRouter.sol" , version = " =0.8.26" , optimizer_runs = 44444444 },
74- { paths = " src/pkgs/swap-router-contracts/contracts/**" , version = " 0.7.6" , via_ir = false , optimizer_runs = 1000000 },
80+ { paths = " src/pkgs/swap-router-contracts/contracts/**" , version = " = 0.7.6" , via_ir = false , optimizer_runs = 1000000 },
7581 { paths = " src/pkgs/universal-router/contracts/deploy/UnsupportedProtocol.sol" , version = " =0.8.30" , optimizer_runs = 200 , via_ir = false , evm_version = " cancun" },
7682 # mixed-quoter
7783 { paths = " src/pkgs/mixed-quoter/src/**" , version = " =0.8.26" , via_ir = true , optimizer_runs = 200 , evm_version = " cancun" },
78- # X
79- { paths = " src/pkgs/uniswapx/src/base/BlockNumberish.sol" , version = " 0.8.24" },
84+ # X - BlockNumberish used by 0.8.30 code in Tribunal/the-compact
85+ { paths = " src/pkgs/uniswapx/src/base/BlockNumberish.sol" , version = " >= 0.8.24" },
8086 # Calibur
8187 { paths = " src/pkgs/calibur/src/**" , version = " =0.8.29" , optimizer_runs = 10000 , via_ir = true },
8288 # util-contracts: util-contracts specifies shanghai fork, but it was only supported from 0.8.20 onwards, so paris is the correct evm version
0 commit comments