This is medusa's first major release. It includes many powerful features and important bug fixes. The biggest update is the introduction of on-chain fuzzing! medusa can now run starting with an existing state provided by an external RPC service (Infura, Alchemy, local node, etc). This enables users to speed up the fuzzing setup when using already deployed contracts. Please note that the on-chain fuzzing capability is in "experimental mode" and will continue to improve over the next few releases.
Additional features include integration with Slither for improved value generation, capturing transaction return values for improved value generation, efficient shrinking during optimization mode, and support for the label cheatcode.
What's Changed
- Support for on-chain fuzzing via external RPC by @bsamuels453 in #513
- Integrate Slither for improved value generation by @anishnaik in #530
- Capture transaction return values for improved value generation by @anishnaik in #533
- Add support for the
vm.labelcheatcode by @priyankabose in #545 - Improve runtime performance and shrinking during optimization mode by @anishnaik in #548
- Add Docker support by @elopez in #522
- Add Nix support by @bohendo in #143
- Add support for exploration mode through the CLI by @tuturu-tech in #526
Bug Fixes
- Fix
warpto allow for the setting of a starting timestamp by @anishnaik in #499 - Fix duplication bug in program counter coverage by @0xalpharush in #485
- Fix execution tracing during failed contract deployments by @anishnaik in #538
- Fix weighting of corpus items to use timestamp to favor 'hardest-to-discover' inputs by @0xalpharush in #383
- Improve error logging for arithmetic overflows and underflows by @hexshire in #536
- Fix error handling during corpus initialization by @MukulKolpe in #537
New Contributors
- @tuturu-tech made their first contribution in #526
- @bohendo made their first contribution in #143
- @hexshire made their first contribution in #536
- @MukulKolpe made their first contribution in #537
- @priyankabose made their first contribution in #543
- @bsamuels453 made their first contribution in #513
Full Changelog: v0.1.8...v1.0.0