Skip to content

Releases: crytic/crytic-compile

0.3.11

14 Nov 13:11
46ab5fd

Choose a tag to compare

This release adds support for additional networks in the Etherscan platform, and improves support for partial Foundry compilations as well as Foundry projects with custom out directory configurations.

What's Changed

  • platform: foundry: improve targeted compilations, skips by @elopez in #606
  • Auto-detect Foundry out directory by @elopez in #610
  • added monad testnet support in etherscan.py by @Jayakumar2812 in #609
  • ci: improve scripts, update Windows runners, add Python 3.13 by @elopez in #613
  • Update etherscan platforms by @elopez in #625

New Contributors

Full Changelog: 0.3.10...0.3.11

0.3.10

02 May 17:07
3c83210

Choose a tag to compare

This release has a minor bug fix to stop removing whitespaces from a contract's ABI. This used to break compatibility with tools like medusa.

What's Changed

New Contributors

Full Changelog: 0.3.9...v0.3.10

0.3.9

15 Apr 16:05
ceaca9e

Choose a tag to compare

This release adds new Etherscan like platforms and for Foundry considers files as dependencies if node_modules appears in the path.

What's Changed

  • Add etherscan like platforms by @smonicas in #588
  • Update is_dependency() in foundry.py to add node_modules by @nisedo in #590
  • tests: sort contractDependencies by @elopez in #596

New Contributors

Full Changelog: 0.3.8...0.3.9

0.3.8

17 Jan 17:48
7ce1189

Choose a tag to compare

This release adds support for the v2 Etherscan API and fixes a bug with a recent foundry version.

What's Changed

New Contributors

Full Changelog: 0.3.7...0.3.8

0.3.7

07 Apr 20:55
20df04f

Choose a tag to compare

0.3.7 - 2024-04-07

This release adds support for retrieving source code from Blast's block explorer (crytic-compile blast:0x). Crytic-compile will also now automatically configure remappings for Etherscan and derivative block explorers such that it can be compiled from disk without intervention.

We'd like to thank our external contributor(s):

What's Changed

  • Improve handling of "version" string from Etherscan by @ggrieco-tob in #545
  • Allow library users to use a custom current working directory by @frabert in #551
  • feat: automatically handle solc configuration for Etherscan Platform by @shortdoom in #544
  • fix: normalize windows path to handle solc >=0.8.8 filename lookup by @0xalpharush in #554
  • Add Blast support by @smonicas in #556

New Contributors

Full Changelog: 0.3.6...0.3.7

0.3.6

16 Jan 17:28
1b2998e

Choose a tag to compare

This release fixes an issue related to detecting Foundry projects when the target directory contains a foundry.toml file, adds support for contract from Etherscan that require via-ir, fixes Python >=3.12.1 compatibility, and fixes a regression in the error message when a target is not a file/directory.

What's Changed

Full Changelog: 0.3.5...0.3.6

0.3.5

18 Oct 14:17
3a4b0de

Choose a tag to compare

0.3.5 - 2023-10-18

This release enables building a single file for Foundry projects:

  • Running crytic-compile contracts/file.sol will automatically resolve the necessary imports and compile only the relevant files. Note, this requires providing the solc version in the project's foundry.toml.
  • Tests and scripts files are no longer compiled by default. This will impact echidna and medusa users. To include them, use --foundry-compile-all, or run the tool on the target file instead of the project directory.

Additionally, this releases improves the support for vyper, and adds three new etherscan-like platform (base, gnosis, and zkevm).

What's Changed

CI

New Contributors

Full Changelog: 0.3.4...0.3.5

v0.3.4

08 Aug 14:09
ac316ec

Choose a tag to compare

This release improves support for libraries, specifically for users of Echidna and Medusa. Please see the usage and accompanying tutorial for more information here.

Thank you @vovikhangcdv for your contribution.

What's Changed

  • docs: add useful info like linking and forcing framework to README by @0xalpharush in #478
  • add library names and placeholder to solc export format by @0xalpharush in #479
  • allow 20 byte address for --compile-libraries and raise error if argument is invalid by @0xalpharush in #477
  • fix: unhandled invalid api key by @vovikhangcdv in #475

New Contributors

Full Changelog: 0.3.3...0.3.4

v0.3.3

06 Jul 15:44
42aedf6

Choose a tag to compare

0.3.3 - 2023-07-06

This release adds support for detecting the Hardhat framework when CommonJS config files (hardhat.config.cjs) are used.

What's Changed

  • Add support for Hardhat CommonJS config, clean up platform ordering by @elopez in #468

New Contributors

Full Changelog: 0.3.2...0.3.3

v0.3.2

23 Jun 16:18
cad1c7a

Choose a tag to compare

0.3.2 - 2023-06-23

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 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:

Added

Changed

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

Fixed

New Contributors

  • @ale-coinbase made their first contribution in #419
  • @karmacoma-eth made their first contribution in #429
  • @sidarth16 made their first contribution in #412
  • @samalws-tob made their first contribution in #433

Full Changelog: 0.3.1...0.3.2