halmos v0.3.0 release highlights! (quick reminder: halmos is a symbolic testing tool for EVM bytecode which interfaces nicely with foundry projects and supports multiple SMT solvers) 1. we (finally) added support for stateful invariant testing
2. coverage reports (just run with --coverage), then either genhtml the result or visualize it in VSCode
3. flamegraphs kinda weird, but an interesting way to visualize an invariant testing campaign. Just run with --flamegraph
5. better solver support before: --solver-command "yices-smt2 --smt2-model-format" after: --solver yices before: --solver-command "bitwuzla --produce-models --abstraction" after: --solver bitwuzla-abs
6. friendship ended with z3, yices is the default solver now (so you don't even need to say `--solver yices` to enjoy the benefits)
7. solx support if you don't know what solx is, @PatrickAlphaC has you covered
Patrick Collins
Patrick Collins14.7. klo 20.40
How to solve "stack too deep" in solidity.
8. added env* and random* cheatcodes, all 3 million of them. Thanks @Jayakumar2812 for the contribution!
9. cool progress indicators from the future
That's it! Get it now: uv tool install --python 3.13 halmos
27,41K