Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
eab2af4
platform: foundry: compile specific files with `forge`
elopez Jul 2, 2025
4c2addc
platform: foundry: use relative paths for `--skip` arguments
elopez Jul 2, 2025
54e484e
Merge pull request #606 from crytic/dev-foundry-partial
smonicas Jul 7, 2025
8b32a5b
chore(deps): bump actions/download-artifact from 4 to 5
dependabot[bot] Aug 12, 2025
b29f650
chore(deps): bump actions/checkout from 4 to 5
dependabot[bot] Aug 12, 2025
6efa9cc
Merge pull request #607 from crytic/dependabot/github_actions/dev/act…
elopez Aug 12, 2025
a52de85
Merge pull request #608 from crytic/dependabot/github_actions/dev/act…
elopez Aug 12, 2025
ca3eceb
added monad testnet
Jayakumar2812 Aug 12, 2025
ad64797
added other networks from the github pr comments
Jayakumar2812 Aug 13, 2025
6d22865
added friendly names for new chains
Jayakumar2812 Aug 13, 2025
85ed3ec
Fix linting
elopez Aug 18, 2025
4a58063
chore(deps): bump sigstore/gh-action-sigstore-python from 3.0.0 to 3.0.1
dependabot[bot] Aug 18, 2025
fcb9af3
platform: foundry: auto-detect `out` directory
elopez Aug 18, 2025
b491c24
tests: foundry: improve and fix test
elopez Aug 18, 2025
fbad738
Merge pull request #610 from crytic/foundry-detect-out
elopez Aug 20, 2025
2dc1e07
Merge pull request #609 from Jayakumar2812/master
elopez Aug 20, 2025
4b2997c
Merge pull request #603 from crytic/dependabot/github_actions/dev/sig…
elopez Aug 20, 2025
348f609
chore(deps): bump actions/upload-pages-artifact from 3 to 4
dependabot[bot] Aug 26, 2025
f5a99c5
tests: scripts: make scripts fail on unexpected errors
elopez Aug 26, 2025
fb307cb
ci: add Python 3.13
elopez Aug 26, 2025
41a378f
ci: re-enable brownie on modern Python
elopez Aug 26, 2025
ac3b68a
ci: upgrade Windows runners
elopez Aug 26, 2025
deae85d
tests: scripts: use older NodeJS for buidler
elopez Aug 26, 2025
0a5aa75
tests: scripts: update setuptools for brownie
elopez Aug 26, 2025
d670c5a
chore(deps): bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0
dependabot[bot] Sep 8, 2025
32dd172
chore(deps): bump actions/setup-python from 5 to 6
dependabot[bot] Sep 8, 2025
f63f752
chore(deps): bump actions/setup-node from 4 to 5
dependabot[bot] Sep 8, 2025
0ee4a4c
Merge pull request #616 from crytic/dependabot/github_actions/dev/act…
elopez Sep 8, 2025
06c2463
Merge pull request #617 from crytic/dependabot/github_actions/dev/act…
elopez Sep 8, 2025
dbd713b
Merge pull request #615 from crytic/dependabot/github_actions/dev/pyp…
elopez Sep 8, 2025
f29ed14
Merge pull request #612 from crytic/dependabot/github_actions/dev/act…
elopez Sep 8, 2025
d6bb02d
Merge pull request #613 from crytic/dev-testing
elopez Sep 15, 2025
d057a07
chore(deps): bump actions/setup-node from 5 to 6
dependabot[bot] Oct 20, 2025
c842900
chore(deps): bump sigstore/gh-action-sigstore-python from 3.0.1 to 3.1.0
dependabot[bot] Oct 27, 2025
0248bbc
chore(deps): bump actions/upload-artifact from 4 to 5
dependabot[bot] Oct 27, 2025
c044782
chore(deps): bump actions/download-artifact from 5 to 6
dependabot[bot] Oct 27, 2025
ceae396
Merge pull request #618 from crytic/dependabot/github_actions/dev/act…
elopez Nov 14, 2025
a183ac7
Merge pull request #620 from crytic/dependabot/github_actions/dev/act…
elopez Nov 14, 2025
62d3c24
Merge pull request #621 from crytic/dependabot/github_actions/dev/act…
elopez Nov 14, 2025
8e8c9f8
Merge pull request #619 from crytic/dependabot/github_actions/dev/sig…
elopez Nov 14, 2025
4707494
Bump version to 0.3.11
elopez Nov 14, 2025
a6ae5cb
Update etherscan platforms
elopez Nov 14, 2025
1c30e20
Merge pull request #625 from crytic/update-etherscan
smonicas Nov 14, 2025
43b23ff
Merge pull request #624 from crytic/bump-version
smonicas Nov 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/black.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ jobs:

steps:
- name: Checkout Code
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Set up Python 3.8
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.8

Expand Down
29 changes: 12 additions & 17 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,40 +21,35 @@ jobs:
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest", "windows-2022"]
python: ${{ (github.event_name == 'pull_request' && fromJSON('["3.8", "3.12"]')) || fromJSON('["3.8", "3.9", "3.10", "3.11", "3.12"]') }}
os: ["ubuntu-latest", "windows-2025"]
python: ${{ (github.event_name == 'pull_request' && fromJSON('["3.8", "3.13"]')) || fromJSON('["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]') }}
type: ["brownie", "buidler", "dapp", "embark", "hardhat", "solc", "truffle", "waffle", "foundry", "standard", "vyper", "solc_multi_file", "hardhat_multi_file"]
include:
# buidler requires older NodeJS
- type: buidler
node-version: 12
exclude:
# Currently broken, tries to pull git:// which is blocked by GH
- type: embark
# Requires nix
- os: windows-2022
- os: windows-2025
type: dapp
# Explore foundry support in windows
- os: windows-2022
- os: windows-2025
type: foundry
# brownie does not install correctly with Python 3.10
- python: 3.10
type: brownie
# brownie does not install correctly with Python 3.11
- python: 3.11
type: brownie
# brownie does not install correctly with Python 3.12
- python: 3.12
type: brownie
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up shell
if: runner.os == 'Windows'
run: |
echo 'C:\msys64\mingw64\bin' >> "$GITHUB_PATH"
echo 'C:\msys64\usr\bin' >> "$GITHUB_PATH"
- name: Set up Node
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version: 18.15
node-version: ${{ matrix.node-version || '18.15' }}
- name: Set up Python ${{ matrix.python }}
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python }}
- name: Install dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/darglint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ jobs:
tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up Python 3.8
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.8
- name: Run Tests
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/doc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,16 +28,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Setup Pages
uses: actions/configure-pages@v5
- uses: actions/setup-python@v5
- uses: actions/setup-python@v6
with:
python-version: '3.8'
- run: pip install -e ".[doc]"
- run: pdoc -o html/ crytic_compile
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
uses: actions/upload-pages-artifact@v4
with:
# Upload the doc
path: './html/'
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/etherscan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,17 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ["ubuntu-latest", "windows-2022"]
os: ["ubuntu-latest", "windows-2025"]
type: ["etherscan"]
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up shell
if: runner.os == 'Windows'
run: |
echo 'C:\msys64\mingw64\bin' >> "$GITHUB_PATH"
echo 'C:\msys64\usr\bin' >> "$GITHUB_PATH"
- name: Set up Python 3.8
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.8
- name: Install dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/linter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ jobs:

steps:
- name: Checkout Code
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Set up Python 3.8
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.8

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/mypy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ jobs:

steps:
- name: Checkout Code
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Set up Python 3.8
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.8

Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5

- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: '3.x'

Expand All @@ -24,7 +24,7 @@ jobs:
python -m build
- name: Upload distributions
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: crytic-compile-dists
path: dist/
Expand All @@ -39,16 +39,16 @@ jobs:
- build-release
steps:
- name: fetch dists
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: crytic-compile-dists
path: dist/

- name: publish
uses: pypa/gh-action-pypi-publish@v1.12.4
uses: pypa/gh-action-pypi-publish@v1.13.0

- name: sign
uses: sigstore/gh-action-sigstore-python@v3.0.0
uses: sigstore/gh-action-sigstore-python@v3.1.0
with:
inputs: ./dist/*.tar.gz ./dist/*.whl
release-signing-artifacts: true
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pylint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ jobs:

steps:
- name: Checkout Code
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Set up Python 3.8
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.8

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pytest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up Python 3.8
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.8
cache: "pip"
Expand Down
2 changes: 1 addition & 1 deletion crytic_compile/cryticparser/defaults.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
"hardhat_cache_directory": None,
"hardhat_artifacts_directory": None,
"foundry_ignore_compile": False,
"foundry_out_directory": "out",
"foundry_out_directory": None,
"foundry_compile_all": False,
"export_dir": "crytic-export",
"compile_libraries": None,
Expand Down
1 change: 1 addition & 0 deletions crytic_compile/platform/abstract_platform.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ class PlatformConfig:
tests_path: str = "test"
libs_path: List[str] = field(default_factory=lambda: ["lib"])
scripts_path: str = "script"
out_path: str = "out"


class AbstractPlatform(metaclass=abc.ABCMeta):
Expand Down
32 changes: 16 additions & 16 deletions crytic_compile/platform/etherscan.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,39 +49,34 @@
"mainnet": ("1", "etherscan.io"),
"sepolia": ("11155111", "sepolia.etherscan.io"),
"holesky": ("17000", "holesky.etherscan.io"),
"hoodi": ("560048", "hoodi.etherscan.io"),
"bsc": ("56", "bscscan.com"),
"testnet.bsc": ("97", "testnet.bscscan.com"),
"poly": ("137", "polygonscan.com"),
"amoy.poly": ("80002", "amoy.polygonscan.com"),
"polyzk": ("1101", "zkevm.polygonscan.com"),
"cardona.polyzk": ("2442", "cardona-zkevm.polygonscan.com"),
"base": ("8453", "basescan.org"),
"sepolia.base": ("84532", "sepolia.basescan.org"),
"arbi": ("42161", "arbiscan.io"),
"nova.arbi": ("42170", "nova.arbiscan.io"),
"sepolia.arbi": ("421614", "sepolia.arbiscan.io"),
"linea": ("59144", "lineascan.build"),
"sepolia.linea": ("59141", "sepolia.lineascan.build"),
"ftm": ("250", "ftmscan.com"),
"testnet.ftm": ("4002", "testnet.ftmscan.com"),
"blast": ("81457", "blastscan.io"),
"sepolia.blast": ("168587773", "sepolia.blastscan.io"),
"optim": ("10", "optimistic.etherscan.io"),
"sepolia.optim": ("11155420", "sepolia-optimism.etherscan.io"),
"avax": ("43114", "snowscan.xyz"),
"testnet.avax": ("43113", "testnet.snowscan.xyz"),
"bttc": ("199", "bttcscan.com"),
"testnet.bttc": ("1028", "testnet.bttcscan.com"),
"testnet.bttc": ("1029", "testnet.bttcscan.com"),
"celo": ("42220", "celoscan.io"),
"alfajores.celo": ("44787", "alfajores.celoscan.io"),
"cronos": ("25", "cronoscan.com"),
"sepolia.celo": ("11142220", "sepolia.celoscan.io"),
"frax": ("252", "fraxscan.com"),
"holesky.frax": ("2522", "holesky.fraxscan.com"),
"hoodi.frax": ("2523", "hoodi.fraxscan.com"),
"gno": ("100", "gnosisscan.io"),
"kroma": ("255", "kromascan.com"),
"sepolia.kroma": ("2358", "sepolia.kromascan.com"),
"mantle": ("5000", "mantlescan.xyz"),
"sepolia.mantle": ("5003", "sepolia.mantlescan.xyz"),
"memecore": ("43521", "testnet.memecorescan.io"),
"moonbeam": ("1284", "moonbeam.moonscan.io"),
"moonriver": ("1285", "moonriver.moonscan.io"),
"moonbase": ("1287", "moonbase.moonscan.io"),
Expand All @@ -90,13 +85,9 @@
"scroll": ("534352", "scrollscan.com"),
"sepolia.scroll": ("534351", "sepolia.scrollscan.com"),
"taiko": ("167000", "taikoscan.io"),
"hekla.taiko": ("167009", "hekla.taikoscan.io"),
"wemix": ("1111", "wemixscan.com"),
"testnet.wemix": ("1112", "testnet.wemixscan.com"),
"hoodi.taiko": ("167013", "hoodi.taikoscan.io"),
"era.zksync": ("324", "era.zksync.network"),
"sepoliaera.zksync": ("300", "sepolia-era.zksync.network"),
"xai": ("660279", "xaiscan.io"),
"sepolia.xai": ("37714555429", "sepolia.xaiscan.io"),
"xdc": ("50", "xdcscan.com"),
"testnet.xdc": ("51", "testnet.xdcscan.com"),
"apechain": ("33139", "apescan.io"),
Expand All @@ -106,12 +97,21 @@
"sophon": ("50104", "sophscan.xyz"),
"testnet.sophon": ("531050104", "testnet.sophscan.xyz"),
"sonic": ("146", "sonicscan.org"),
"testnet.sonic": ("57054", "testnet.sonicscan.org"),
"testnet.sonic": ("14601", "testnet.sonicscan.org"),
"unichain": ("130", "uniscan.xyz"),
"sepolia.unichain": ("1301", "sepolia.uniscan.xyz"),
"abstract": ("2741", "abscan.org"),
"sepolia.abstract": ("11124", "sepolia.abscan.org"),
"berachain": ("80094", "berascan.com"),
"testnet.berachain": ("80069", "testnet.berascan.com"),
"swellchain": ("1923", "swellchainscan.io"),
"testnet.swellchain": ("1924", "sepolia.swellchainscan.io"),
"testnet.monad": ("10143", "testnet.monadscan.com"),
"hyperevm": ("999", "hyperevmscan.io"),
"katana": ("747474", "katanascan.com"),
"bokuto.katana": ("737373", "bokuto.katanascan.com"),
"sei": ("1329", "seiscan.io"),
"testnet.sei": ("1328", "testnet.seiscan.io"),
}

SUPPORTED_NETWORK = {**SUPPORTED_NETWORK_V1, **SUPPORTED_NETWORK_V2}
Expand Down
Loading
Loading