Skip to content

v0.7.0

Compare
Choose a tag to compare
@montyly montyly released this 18 Dec 19:57
· 2502 commits to master since this release

0.7.0 - 2020-12-18

This release contains 26 new detectors, including a detector for a recent bug in Aave (unprotected-upgrade), deletion of mapping with structures (mapping-deletion), lack of events (events-access, event-maths), a shift-related issue on YUL (incorrect-shift), modifiers that can return the default value (incorrect-modifier), and multiple informational and compiler-related bugs. Additionally, it introduces the triage of results using inline comments. Use // slither-disable-next-line DETECTOR_NAME before a statement to disable the detector. Finally, we added the support for Solidity top-level objects.

We would like to thanks @josh-richardson for his contributions to the inline comment feature.

Added

  • 26 detectors (#725, #732, #736)
    • abiencoderv2-array
    • array-by-reference
    • assert-state-change
    • controlled-array-length
    • costly-loop
    • events-access
    • events-math
    • function-init-state
    • incorrect-modifier
    • incorrect-unary
    • incorrect-shift
    • mapping-deletion
    • missing-inheritance
    • missing-zero-check
    • multiple-constructors
    • public-mappings-nested
    • redundant-statements
    • reused-constructor
    • similar-names
    • storage-array
    • unimplemented-functions
    • uninitialized-fptr-cst
    • unprotected-upgrade
    • variable-scope
    • weak-prng
  • Inline comment to suppress findings (#724)
  • (Partial) support for Solidity top-level objects (#728) API BREAKING CHANGE. All the related objects are now split between ObjectContract and ObjectTopLevel (ex: FunctionContract and FunctionTopLevel)

Changed

  • Use crytic-compile@0.1.12

Fixed

  • Printers filename related issues (#729, #726)