v0.6.0
0.6.0 - 2019-02-15
This release adds 3 new detectors, 5 new printers, improves the overall usability of Slither, and introduces a new tool: slither-check-upgradability
to help to review upradable contracts. User and developer documentation has dramatically improved. This release brings also several bugfixes, API enhancements and lowers the rate of false positives for several detectors.
Thanks to our external contributors @cty12, @mrice32 and @ptare for their numerous bug reports.
Added
- Detectors:
erc20-interface
: Incorrect ERC20 interfaceserc20-indexed
: Un-indexed ERC20 event parametersdeprecated-standards
: Deprecated Solidity Standards
- Printers:
data-dependency
: Print the data dependencies of the variablesfunction-id
: Print the keccack256 signature of the functionsmodifiers
: Print the modifiers called by each functionrequire
: Print the require and assert calls of each functionvariable-order
: Print the storage order of the state variables
- Command line usage:
--ignore-truffle-compile
: do not runtruffle compile
--disable-color
: disable output colorization--triage-mode
: run slither in its triage mode. For every finding, Slither will ask if the result should be shown for the next run.--filter-paths
: exclude all the results that are only related to the given paths.- Configuration file: Slither options can be configured through a JSON file. See the documentation
slither-check-upgradability
: Utility to help reviewing upgradable contracts- Dependency: require
pysha3>=1.0.2
Changed:
- Reduce the false alarms rates of:
- Improve Truffle integration: Slither will automatically switch to the truffle version provided in
package.json
(#154) - Improve SSA conversion: Use of an interprocedural sensitive analysis (follow parameters) (#156 (comment))
- Improve data dependency: Compute a fix-point on function context (#171)
- Improve inheritance printer output (#162, #166)
- Add support of
staticall
(#152)
Fixed
- Several minors bugs, including: