Crytic-compile

Latest version: v0.3.8

Safety actively analyzes 723158 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 5

0.3.2

This release improves support for verified contracts on Ethercan, improves integration with Echidna's coverage collection, and fixes several bugs. Additionally, this release fixes a potential path traversal responsibly disclosed by [Lucas Ma](https://twitter.com/MaLucasBC) which could potentially overwrite a file if a user ran the crytic-compile on a specific, malicious address.

We would like to thank all of our external contributors:
* ale-coinbase
* karmacoma-eth
* sidarth16

Added
* Add support for https://goerli.basescan.org (Coinbase Base Goerli Testnet) by ale-coinbase in https://github.com/crytic/crytic-compile/pull/419
* improve error message if target does not exist by 0xalpharush in https://github.com/crytic/crytic-compile/pull/442
* create release action with sigstore by 0xalpharush in https://github.com/crytic/crytic-compile/pull/446
* increase observability and provide suggestions/clearer errors by 0xalpharush in https://github.com/crytic/crytic-compile/pull/444
* platform: etherscan: add support for solc remaps, evm version by elopez in https://github.com/crytic/crytic-compile/pull/447
* handle when AST json is `legactAST` in hardhat by 0xalpharush in https://github.com/crytic/crytic-compile/pull/455

Changed
* **[Breaking API Change]** Use list instead of set for filenames and contracts_names; change filename ordering by montyly, samalws-tob in https://github.com/crytic/crytic-compile/pull/436
* Do not explicitly pass --force to forge build by karmacoma-eth in https://github.com/crytic/crytic-compile/pull/429
* use hash of relative path to make filename key more reliable by 0xalpharush in https://github.com/crytic/crytic-compile/pull/450
* Update dependabot.yml by 0xalpharush in https://github.com/crytic/crytic-compile/pull/454

Fixed
* platform: hardhat: explicitly terminate console after querying paths by elopez in https://github.com/crytic/crytic-compile/pull/417
* handle relpath when path and start on different drives by 0xalpharush in https://github.com/crytic/crytic-compile/pull/413
* use foundry action in integration test by 0xalpharush in https://github.com/crytic/crytic-compile/pull/428
* prevent possible path traversal for etherscan platform by 0xalpharush in https://github.com/crytic/crytic-compile/pull/425
* add more logging for subprocess calls by 0xalpharush in https://github.com/crytic/crytic-compile/pull/431
* improve error message for solc platform if file is dir by 0xalpharush in https://github.com/crytic/crytic-compile/pull/427
* typo by sidarth16 in https://github.com/crytic/crytic-compile/pull/412
* Fix etherscan rate limit check by smonicas in https://github.com/crytic/crytic-compile/pull/426
* add makefile by 0xalpharush in https://github.com/crytic/crytic-compile/pull/441
* Doc site by 0xalpharush in https://github.com/crytic/crytic-compile/pull/445
* Fix --allow-paths argument in solc.py by samalws-tob in https://github.com/crytic/crytic-compile/pull/433


New Contributors
* ale-coinbase made their first contribution in https://github.com/crytic/crytic-compile/pull/419
* karmacoma-eth made their first contribution in https://github.com/crytic/crytic-compile/pull/429
* sidarth16 made their first contribution in https://github.com/crytic/crytic-compile/pull/412
* samalws-tob made their first contribution in https://github.com/crytic/crytic-compile/pull/433

**Full Changelog**: https://github.com/crytic/crytic-compile/compare/0.3.1...0.3.2

0.3.1

Not secure
This releases adds the support for Sepolia, removes the support for rinkeby, adds solc-select as a direct dependency and contains improvements to support linked libraries (to ease Echidna's integration).

We would like to thank all of our external contributors:
- UsmannK
- wakiyamap
- zhiqiangxu

Added
* Add support Sepolia by wakiyamap in https://github.com/crytic/crytic-compile/pull/388
* Add dev dependencies by bohendo in https://github.com/crytic/crytic-compile/pull/376
* add solc-select as required dep by 0xalpharush in https://github.com/crytic/crytic-compile/pull/407
* Enable custom build output directories with Brownie by UsmannK in https://github.com/crytic/crytic-compile/pull/366
* Codeowners by montyly in https://github.com/crytic/crytic-compile/pull/406

Removed
* Remove support for rinkeby by montyly in https://github.com/crytic/crytic-compile/pull/403

Changed
* hardhat: consider hardhat console might not execute successfully by elopez in https://github.com/crytic/crytic-compile/pull/364
* pass kwargs to is_supported by zhiqiangxu in https://github.com/crytic/crytic-compile/pull/299
* removed etherlime from CI by damilolaedwards in https://github.com/crytic/crytic-compile/pull/378
* upgrade nix installation to fix CI installation by 0xalpharush in https://github.com/crytic/crytic-compile/pull/399
* CI improvements by montyly in https://github.com/crytic/crytic-compile/pull/404
* Improve libraries support by montyly in https://github.com/crytic/crytic-compile/pull/390
* Normalize abs paths by bohendo in https://github.com/crytic/crytic-compile/pull/370
* support compact format for solc 0.4.12 by 0xalpharush in https://github.com/crytic/crytic-compile/pull/398

Fixed
* dapp: fix compilations with `target` different from `cwd` by elopez in https://github.com/crytic/crytic-compile/pull/365
* URL wiki fix by ahpaleus in https://github.com/crytic/crytic-compile/pull/356
* Fix Vyper type to str by smonicas in https://github.com/crytic/crytic-compile/pull/401
* fix typo by technovision99 in https://github.com/crytic/crytic-compile/pull/409

New Contributors
* ahpaleus made their first contribution in https://github.com/crytic/crytic-compile/pull/356
* zhiqiangxu made their first contribution in https://github.com/crytic/crytic-compile/pull/299
* damilolaedwards made their first contribution in https://github.com/crytic/crytic-compile/pull/378
* wakiyamap made their first contribution in https://github.com/crytic/crytic-compile/pull/388
* UsmannK made their first contribution in https://github.com/crytic/crytic-compile/pull/366
* smonicas made their first contribution in https://github.com/crytic/crytic-compile/pull/401
* technovision99 made their first contribution in https://github.com/crytic/crytic-compile/pull/409

**Full Changelog**: https://github.com/crytic/crytic-compile/compare/0.3.0...0.3.1

0.3.0

Not secure
This releases improves the support for foundry and fixes multiples bugs. The releases contains also two API breaking changes: a refactoring of the compilation unit and the filename lookup.

We would like to thank all of our external contributors:
- clems4ever
- japerk
- indigo-eth-sec

Added
* Support multiple compilation units for foundry by 0xalpharush, montyly in https://github.com/crytic/crytic-compile/pull/348
* CI: update Actions versions and enable dependabot by elopez in https://github.com/crytic/crytic-compile/pull/322
* Hardhat: auto-detect paths by elopez in https://github.com/crytic/crytic-compile/pull/311
* Add missing command-line arguments by elopez in https://github.com/crytic/crytic-compile/pull/323
* Node module resolution by bohendo in https://github.com/crytic/crytic-compile/pull/324
* Add metadata parsing + removal from bytecode by rmi7 in https://github.com/crytic/crytic-compile/pull/304
* Auto-clean projects before compiling by elopez in https://github.com/crytic/crytic-compile/pull/312

Changed
* Replace pysha3 with pycryptodome by elopez in https://github.com/crytic/crytic-compile/pull/309
* Move to python 3.8 by montyly in https://github.com/crytic/crytic-compile/pull/317
* Split CompilationUnit into CompilationUnit + SourceUnit by montyly in https://github.com/crytic/crytic-compile/pull/316, https://github.com/crytic/crytic-compile/pull/349 **BREAKING CHANGE**
* Refactor filenames/filenames_lookup by montyly in https://github.com/crytic/crytic-compile/pull/336 **BREAKING CHANGE**
* Improve etherscan and brownie tests by elopez in https://github.com/crytic/crytic-compile/pull/342
* Change priority hardhat <> foundry by montyly in https://github.com/crytic/crytic-compile/pull/350

Fixed
* Fix optimizations not applied in solc-standard-json mode by clems4ever in https://github.com/crytic/crytic-compile/pull/306
* Resolve path before passing it to solc by elopez in https://github.com/crytic/crytic-compile/pull/302
* Fix dapp CI by montyly in https://github.com/crytic/crytic-compile/pull/320
* Fix brownie version detection by 0xalpharush in https://github.com/crytic/crytic-compile/pull/303
* Clean up deprecation warnings in workflows by elopez in https://github.com/crytic/crytic-compile/pull/337
* Fix import 0.0.2 by montyly in https://github.com/crytic/crytic-compile/pull/340
* Contracts file path must be first for transform by bohendo in https://github.com/crytic/crytic-compile/pull/345
* Fix for redundant compiles and incorrect version selection when running with solc_solcs_select flag by bohendo in https://github.com/crytic/crytic-compile/pull/346
* Decode debugging and error output with backslashreplace by elopez in https://github.com/crytic/crytic-compile/pull/351
* Surface stderr/ errors from solc-select by 0xalpharush in https://github.com/crytic/crytic-compile/pull/353

New Contributors
* clems4ever made their first contribution in https://github.com/crytic/crytic-compile/pull/306
* japerk made their first contribution in https://github.com/crytic/crytic-compile/pull/345
* indigo-eth-sec made their first contribution in https://github.com/crytic/crytic-compile/pull/346
* bohendo made their first contribution in https://github.com/crytic/crytic-compile/pull/324

**Full Changelog**: https://github.com/crytic/crytic-compile/compare/0.2.4...0.3.0

0.2.4

Not secure
This release adds the support for optimistic and polygon testnets, and fixes multiples bugs.

For foundry users: we do not support setup that use multiple compiler versions at the moment (see https://github.com/foundry-rs/foundry/issues/3450).

We want to thanks our external contributors:

- [corymichaelmurray](https://github.com/corymichaelmurray)
- [GronwD](https://github.com/GronwD)
- [ibremseth](https://github.com/ibremseth)
- [medariox](https://github.com/medariox)

Added
- Support for optimistic (https://github.com/crytic/crytic-compile/pull/277)
- Support for polygon testnet (https://github.com/crytic/crytic-compile/pull/294)

Fixed
- Support for ehterscan with relative path (https://github.com/crytic/crytic-compile/pull/260)
- Foundry test (https://github.com/crytic/crytic-compile/pull/274)
- Base64 Zip import (https://github.com/crytic/crytic-compile/pull/287)
- Issues in foundry support (https://github.com/crytic/crytic-compile/pull/273, https://github.com/crytic/crytic-compile/pull/282)

0.2.3

Not secure
This release adds the support for Foundry and improves Windows & brownie support

We would like to thanks sjkelleyjr for its contributions

Added
- Foundry support (https://github.com/crytic/crytic-compile/pull/251)

Improved
- Windows support (https://github.com/crytic/crytic-compile/pull/248, https://github.com/crytic/crytic-compile/pull/249)
- Brownie support (https://github.com/crytic/crytic-compile/pull/259)
- Update to gh super linter 4.9.2 (https://github.com/crytic/crytic-compile/pull/235, https://github.com/crytic/crytic-compile/pull/252)

0.2.2

Not secure
This release adds the support for solc 0.8.10 and significantly improves the support for etherscan-like platforms

Added
- Support for solc 0.8.10 (https://github.com/crytic/crytic-compile/pull/221)
- Add native support for arbiscan (mainet, testnet), polygoscan, Snowtrace (mainet, testnet), ftmscam (https://github.com/crytic/crytic-compile/pull/216, https://github.com/crytic/crytic-compile/pull/222)

Changed
- Remove the unique contract name per compilation unit restriction. This leads to **breaking changes** in crytic-compile API (https://github.com/crytic/crytic-compile/pull/223)
- Refactor the solc standard json platform to allow standalone function calls (https://github.com/crytic/crytic-compile/pull/226)
- Refactor the etherscan platform to use the solc standard json (https://github.com/crytic/crytic-compile/pull/226)
- Add solc-select detection for the etherscan platform (https://github.com/crytic/crytic-compile/pull/226)
- Create a `CompilerVersion` object, and add `optimize-runs` info (only on etherscan for now) (https://github.com/crytic/crytic-compile/pull/226)

Fixed
- Invalid unicode characters (https://github.com/crytic/crytic-compile/pull/227)
- Improve filename lookup for truffle (https://github.com/crytic/crytic-compile/pull/224)

Page 2 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.