Skip to content

Releases: crytic/crytic-compile

v0.2.3

21 Apr 16:40
Compare
Choose a tag to compare

0.2.3 - 2022-04-21

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

We would like to thanks @sjkelleyjr for its contributions

Added

  • Foundry support (#251)

Improved

v0.2.2

10 Dec 10:49
Compare
Choose a tag to compare

0.2.2 - 2021-12-10

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 (#221)
  • Add native support for arbiscan (mainet, testnet), polygoscan, Snowtrace (mainet, testnet), ftmscam (#216, #222)

Changed

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

Fixed

  • Invalid unicode characters (#227)
  • Improve filename lookup for truffle (#224)

v0.2.1

16 Aug 17:04
Compare
Choose a tag to compare

0.2.1 - 2021-08-16

This release adds support for BSC, improves truffle and waffle support, and improves the overall code quality through type hints and documentation.

Added

  • BSC support (#189, #194)
  • API:
    • Filenames at the compilation unit level (#205)
    • get_global_offset_from_line (#193)
  • Waffle: Support for .waffle.json config filename (#198)
  • Truffle: Support for truffle >= 5.3.14 (#204)
  • Documentation for all functions/modules (#207). The documentation follows the google style. The CI checks the documentation accuracy with dargling (see CONTRIBUTING.md)
  • Reach 100% type hints coverage (#195). The CI checks the accuracy of the type with mypy (see CONTRIBUTING.md)

Fixed

v0.2.0

07 May 14:54
Compare
Choose a tag to compare

0.2.0 - 2021-05-07

This release adds the support for multiple compilation units and contains breaking changes required for its support. Additionally, it improves the support for Vyper, Brownie, and Etherscan.

Added

  • Add vyper source mapping (#171)

Changed

  • Add support for multiple compilation units (#167, #176). See #167 for the breaking changes.
  • Use --force by default with hardhat (#173)
  • Use pylint 2.8.2 (#180)

Fixed

  • Improve Etherscan support (for Solidity >= 0.8) (#172)
  • Improve Brownie support (#166)

v0.1.13

29 Mar 17:40
Compare
Choose a tag to compare

0.1.13 - 2021-03-29

This release improves the support of solc 0.8, as well as hardhat and Etherscan support.

We are currently investigating issues with the hardhat support (#164), in the meantime, hardhat should be considered as partially supported.

Added

  • Support for solc 0.8 (direct compilation) (#147)

Changed

  • Improvements to Etherscan export directory (#144, #148)
  • Improve Etherscan error message (#159)
  • Clean up solc platform (#149)
  • Use pylint 2.7.2 and black 20.8b1, and improve CI (#162)

Fixed

  • Fix hardhat source mapping (#154)

v0.1.12

18 Dec 19:04
Compare
Choose a tag to compare

0.1.12 - 2020-12-18

This release adds the support for multi-files on Etherscan adds a new API for Slither

Added

  • Support for multi-files on Etherscan (#142, #143)
  • get_code_from_line API (#141)

v0.1.11

07 Dec 18:47
Compare
Choose a tag to compare

0.1.11 - 2020-12-07

This release improves hardhat and dapp support, and contains optimizations for Slither.

We would like to thanks @elopez for its contributions.

Added

  • Support for typescript configuration with hardhat (#131)
  • Latest dapp support (#137)
  • Hardhat custom configuration (--hardhat-ignore-compile, --hardhat-cache-directory, --hardhat-artifacts-directory) (#136)
  • Add memorization for filename_lookup, and cache for is_dependency results (#129, #135). This result in significant speed improvements for Slither for codebase with several files (up to 30% speed gain from an initial benchmark)
  • Add get_line_from_offset API (#130). This is an optimized version of the original Slither's source_mapping._compute_line (crytic/slither#702)

Fixed

  • Incorrect source mapping in buidler (#133)
  • solc version detection for --solc-solcs-(select|bin) (#138)
  • solc version regex guessing (#139)

v0.1.10

12 Nov 19:21
Compare
Choose a tag to compare

0.1.10 - 2020-11-12

This release introduces the support for hardhat, and improves Waffle and Buidler support.

We would like to thanks @PaulRBerg, for helping us debugging the buidler directory name bug (#116).

Added

  • Hardhat support (#126)
  • --solc-force-legacy-json flag (#111)
  • Support for builder directory name bug (#116, #127). The fix can be disabled with --buidler-skip-directory-name-fix

Changed

  • Solc output: sort the source list (#125)
  • Multiple improvements on the waffle support (#119)
  • Use black 19.10b0 instead of latest for github super linter compatibility (#124)

v0.1.9

08 Sep 12:38
Compare
Choose a tag to compare

0.1.9 - 2020-09-08

This release adds two new flags to improve truffle support, and improves etherlime, waffle and buidler support. Additionally, slither now runs GitHub super-linter (see CONTRIBUTING.md#linters).

We also want to thanks @alphastorm and @tomlinton for their contributions.

Added

  • --truffle-overwrite-config and --truffle-overwrite-version to ease the compilation on complex setup (#88)
    Changed
  • Remove case sensitivity in --compile-force-framework (#100)
  • Improve waffle and etherlime support (#101
  • Github super linter (#107)

Fixed

  • Improve buidler detection (#97)
  • Fix natspec parsing in buidler (#105)
  • All pylint issues (#107)

v0.1.8

24 Apr 13:48
Compare
Choose a tag to compare

0.1.8 - 2020-04-24

This release adds the support for buidler, the events information, and improves the zip export.

Added

  • Support for buidler (#82)
  • Parsing of events topics (#81)
  • -export-zip-type flag (#84)

Changed

  • Zip export will now use lzma for compression (#84)

Fixed

  • Archive platform support (#80)