Releases: WaizKhan7/SmartMuv
Releases · WaizKhan7/SmartMuv
v0.2.0
For this release, we have tested SmartMuv on 15K+ smart contracts. And fixed the following bugs:
Changes and Bug Fixes
- Fixed backtracking of keys in case of “tuple expression”,
- Added marking of mapping key nodes, for cases like
int a = map[key1]
, - Fixed slot calculation for
string
type mapping key, - Fixed state extraction for the dynamic array of user-defined variables,
- Fixed state extraction for mapping variables containing a dynamic array of user-defined variables as value,
- Fixed diamond inheritance problem that affects state variables' slot layout,
- Fixed bugs in the
get_contract_details
andget_contract_details_new
functions.
What's Changed
- fixed #1 and #2 by @WaizKhan7 in #3
- fixed #4 by @WaizKhan7 in #5
- Update README.md by @WaizKhan7 in #6
- fixed #7 by @WaizKhan7 in #8
- improved key back tracking by @WaizKhan7 in #9
- fixed issues #10 #11 #12 by @WaizKhan7 in #13
- minor changes by @WaizKhan7 in #14
- fixed #15 and other minor bugs by @WaizKhan7 in #16
- fixed #17 and other minor bugs by @WaizKhan7 in #18
New Contributors
- @WaizKhan7 made their first contribution in #3
Full Changelog: v0.2.0-alpha...v0.2.0
v0.2.0-alpha - 14-10-2023
In this release, we fixed multiple bugs and refactored the code. The tool is now easier to install and use.
Changes and Bug Fixes
- Fixed inherited variable (mapping) key approx issue,
- Fixed inherited variable (mapping) extraction issue,
- Fixed slot calculation contract/interface pointer issue,
- Added
get_contract_details_new
method that usessolcx
, the existing method usespython-solidity-parser
, - Fixed slot calculation issues for multi-dimensional static and dynamic arrays,
- Fixed extraction of multi-dimensional static and dynamic arrays,
- Added slot calculation for data type -
enum
, - Added support of solidity compiler version 0.8.0+,
- Updated
README.md
file, - Made installing and tool usage easier.
SmartMuv - v0.1.0-alpha
First Release
This is the first public release of SmartMuv, it allows users to extract the complete state of their Solidity smart contracts including complex variables i.e. mappings and dynamic arrays.
SmartMuv is EVM compatible and works on all EVM-compatible blockchains i.e. Poylgon, BNB Smart Chain, Neon EVM, Moonbeam etc.