# hevm changelog ## 0.24 - 2019-01-23 - Fix STATICCALL for precompiled contracts - Assume Solidity 0.5.2 in tests ## 0.23 - 2018-12-12 - Show passing test traces with --verbose flag ## 0.22 - 2018-11-13 - Simple memory view in TTY ## 0.21 - 2018-10-29 - Fix Hackage package by including C header files for ethjet ## 0.20 - 2018-10-27 - Parse constructor inputs from Solidity AST ## 0.19 - 2018-10-09 - Enable experimental 'cheat' address, allowing for modification of the EVM environment from within the tests. Currently just the block timestamp can be adjusted. ## 0.18 - 2018-10-09 - Fix [duplicate address bug](https://github.com/dapphub/dapptools/issues/70) ## 0.17 - 2018-10-05 - Semigroup/Monoid fix ## 0.16 - 2018-09-19 - Move ethjet into hevm ## [0.15] - 2018-05-09 - Fix SDIV/SMOD definitions for extreme case ## [0.14.1] - 2018-04-17 - Improve PC display in TTY ## [0.14] - 2018-03-08 - Implement STATICCALL ## [0.13] - 2018-02-28 - Require specific block number for RPC debugging - Implement RETURNDATACOPY and RETURNDATASIZE - Fix bug where created contracts didn't get their balance ## [0.12.3] - 2017-12-19 - More useful RPC debugging because we strip the entire BZZR metadata ## [0.12.2] - 2017-12-17 - Experimental new ecrecover implementation via libethjet - Correct error checking for setUp() invocations ## [0.12.1] - 2017-11-28 - Test name regex matching via --match - Fixed source map parsing bug when used with solc --optimize - TTY: fix a padding-related display glitch ## [0.12] - 2017-11-14 - Use 13 different environment variables to control block parameters for unit testing, e.g. block number, timestamp, initial balance, etc. Full list: - `DAPP_TEST_ADDRESS` - `DAPP_TEST_CALLER` - `DAPP_TEST_ORIGIN` - `DAPP_TEST_GAS_CREATE` - `DAPP_TEST_GAS_CALL` - `DAPP_TEST_BALANCE_CREATE` - `DAPP_TEST_BALANCE_CALL` - `DAPP_TEST_COINBASE` - `DAPP_TEST_NUMBER` - `DAPP_TEST_TIMESTAMP` - `DAPP_TEST_GAS_LIMIT` - `DAPP_TEST_GAS_PRICE` - `DAPP_TEST_DIFFICULTY` ## [0.11.5] - 2017-11-14 - Use --state with --exec --debug ## [0.11.4] - 2017-11-12 - Fix bug when unit test contract has creations in constructor ## [0.11.3] - 2017-11-08 - Fix array support in ABI module ## [0.11.2] - 2017-11-04 - TTY: show a help bar with key bindings at the bottom ## [0.11.1] - 2017-11-02 - TTY: fix a display glitch - TTY: improve display of ABI hashes on the stack ## [0.11] - 2017-10-31 - Add "hevm flatten" for Etherscan-ish source code concatenation - Simplify code by removing concrete/symbolic machine abstraction ## [0.10.9] - 2017-10-23 - Fix bugs in ABI formatting ## [0.10.7] - 2017-10-19 - Fix library linking bug - Fix gas consumption of DELEGATECALL - Better error tracing - Experimental "contract browser" (stupid list of addresses) ## [0.10.6] - 2017-10-19 - Enable library linking for unit tests and debugger - Use the same default gas/balance values as `ethrun` ## [0.10.5] - 2017-10-17 - Better trace output including arguments and return values - Proof of concept coverage analysis via `dapp-test --coverage` ## [0.10] - 2017-10-10 - Enable new trace output by default for failing tests - Exit with failure code from test runner when tests fail - More fixes to improve Ethereum test suite compliance ## [0.9.5] - 2017-10-06 - Prototype of new trace output with `hevm dapp-test --verbose` - Nicer trace tree in the TTY debugger - Many fixes to improve Ethereum test suite compliance ## [0.9] - 2017-09-29 - Integrates with live chains via RPC (read-only) - Exposes a special contract address with test-related functionality (time warp) ## [0.8.5] - 2017-09-22 - Renames `hevm` from its maiden name `hsevm` :sparkles: ## [0.8] - 2017-09-21 - Implements gas metering (Metropolis rules by default) - Shows gas counter in the terminal interface - Enables debugger for consensus test executions - Consensus test runner script with HTML reporting - Passes 564 of the `VMTests`; fails 115 (see [0.8 test report]) - Command line options for specifying initial gas amounts and balances - Improved TTY UI layout ## [0.7] - 2017-09-07 - Can save and load contract states to disk using a Git-backed store (only `--exec`) - Can debug raw EVM bytecode using `exec --debug` - Fixes `exec --value` - Has smarter defaults for command line when running tests or debugging - Fixes bug with `MSIZE` in `CALL` context ## [0.6.5] - 2017-09-01 - Fixes `exec` with regards to exit codes and error messages ## [0.6.1] - 2017-08-03 - TTY: Adds command `C-n` in TTY for "stepping over" ## [0.6] - 2017-08-03 - TTY: Adds second line to stack entries with humanized formatting - TTY: Gets rid of the separate log pane in favor of a unified trace pane ## [0.5] - 2017-08-02 - TTY: Adds `p` command for stepping backwards - Adds ability to track origins of stack and heap words - Tracks Keccak preimage for words that come from the `SHA3` instruction ## [0.4] - 2017-07-31 - Parallelizes unit test runner - Improves speed by changing representation of memory - Internal refactoring for future support of symbolic execution - Adds logs to the trace pane ## [0.3.2] - 2017-06-17 - Adds `REVERT` opcode - Sets `TIMESTAMP` value to `1` in unit tests ## [0.3.0] - 2017-06-14 - Reverts contract state after `CALL` fails - Improves test runner console output ## [0.2.0] - 2017-06-13 - Fixes bug in `CALL` ## [0.1.0.1] - 2017-03-31 - Highlights Solidity exactly on character level - Adds `N` command for stepping by Solidity source position instead of by opcode ## 0.1.0.0 - 2017-03-29 - First release [0.8 test report]: https://hydra.dapp.tools/build/135/download/1/index.html [0.12]: https://github.com/dapphub/hevm/compare/0.11.5...0.12 [0.11.5]: https://github.com/dapphub/hevm/compare/0.11.4...0.11.5 [0.11.4]: https://github.com/dapphub/hevm/compare/0.11.3...0.11.4 [0.11.3]: https://github.com/dapphub/hevm/compare/0.11.2...0.11.3 [0.11.2]: https://github.com/dapphub/hevm/compare/0.11.1...0.11.2 [0.11.1]: https://github.com/dapphub/hevm/compare/0.11...0.11.1 [0.11]: https://github.com/dapphub/hevm/compare/0.10.9...0.11 [0.10.9]: https://github.com/dapphub/hevm/compare/0.10.7...0.10.9 [0.10.7]: https://github.com/dapphub/hevm/compare/0.10.6...0.10.7 [0.10.6]: https://github.com/dapphub/hevm/compare/0.10.5...0.10.6 [0.10.5]: https://github.com/dapphub/hevm/compare/0.10...0.10.5 [0.10]: https://github.com/dapphub/hevm/compare/0.9.5...0.10 [0.9.5]: https://github.com/dapphub/hevm/compare/0.9...0.9.5 [0.9]: https://github.com/dapphub/hevm/compare/v0.8.5...v0.9 [0.8.5]: https://github.com/dapphub/hevm/compare/v0.8...v0.8.5 [0.8]: https://github.com/dapphub/hevm/compare/v0.7...v0.8 [0.7]: https://github.com/dapphub/hevm/compare/v0.6.5...v0.7 [0.6.5]: https://github.com/dapphub/hevm/compare/v0.6.1...v0.6.5 [0.6.1]: https://github.com/dapphub/hevm/compare/v0.6...v0.6.1 [0.6]: https://github.com/dapphub/hevm/compare/v0.5...v0.6 [0.5]: https://github.com/dapphub/hevm/compare/v0.4...v0.5 [0.4]: https://github.com/dapphub/hevm/compare/v0.3.2...v0.4 [0.3.2]: https://github.com/dapphub/hevm/compare/v0.3.0...v0.3.2 [0.3.0]: https://github.com/dapphub/hevm/compare/v0.2.0...v0.3.0 [0.2.0]: https://github.com/dapphub/hevm/compare/v0.1.0.1...v0.2.0 [0.1.0.1]: https://github.com/dapphub/hevm/compare/v0.1.0.0...v0.1.0.1