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-arrayarray-by-referenceassert-state-changecontrolled-array-lengthcostly-loopevents-accessevents-mathfunction-init-stateincorrect-modifierincorrect-unaryincorrect-shiftmapping-deletionmissing-inheritancemissing-zero-checkmultiple-constructorspublic-mappings-nestedredundant-statementsreused-constructorsimilar-namesstorage-arrayunimplemented-functionsuninitialized-fptr-cstunprotected-upgradevariable-scopeweak-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
ObjectContractandObjectTopLevel(ex:FunctionContractandFunctionTopLevel)
Changed
- Use crytic-compile@0.1.12