Releases: Ackee-Blockchain/wake
Releases · Ackee-Blockchain/wake
v5.0.0rc0
v4.20.1
Fixes:
- fixed JSON-RPC error when call/estimate/access list is requested for a historical block, caused by
gasPrice/baseFeePerGasbeing too low compared to the block's base fee [deployment framework] - fixed pytypes resolving of errors defined in base contracts (compared to the contract raising them) [testing & deployment framework]
v4.20.0
Features & improvements:
wake upnow uses the same config options aswake compile[core]- more specifically, it does not adjust current config options unless
wake.tomldoesn't exist or--forcewas passed
- more specifically, it does not adjust current config options unless
- JSON detections export now includes even detections disabled with
// wake-disablecomments, along with a booleansuppressedflag [core] - improved
wake openCLI messages when source code cannot be found [core] - variables in NatSpec comments are now also updated on LSP rename [language server]
- removed the requirement for valid Solidity identifiers when using LSP rename [language server]
- implemented fuzzing statistics collection and summary [testing]
- debugger responses are now formatted with Rich [testing]
- added a new boolean
optimistic_pytypes_resolvingattribute toChain[testing & deployment framework]- it enforces resolving of pytypes events & errors to the first available definition (using fully qualified contract names sorted alphabetically) if multiple pytypes definitions are available
wake print storage-layoutdoesn't print storage layout for contracts that don't have any storage variables [static analysis]ControlFlowGraph.graphis no longer copied upon access for performance reasons [static analysis]- added new
invalid-memory-safe-assemblydetector [static analysis] - added new
array-delete-nullificationdetector [static analysis] - added new
contract-sizeprinter [static analysis] - added new
--keep-foldersoption toabiprinter [static analysis]
Fixes:
- fixed compilation crash on using any other assembly flag than
memory-safe[core] - fixed compilation issues sometimes triggered when a file was compiled under multiple source unit names [core]
- fixed issue where code (IR nodes) was ignored inside
StorageLayoutSpecifier[core] - changed how pytypes errors are resolved to correctly handle
require(condition, CustomError())[testing & deployment framework]
v4.19.0
Features & improvements:
- added new
lsp-public-functionsprinter that lists all public functions of a contract when triggered from the code lens button [language server] - EIP-7702 code delegations are now automatically unset for chain testing accounts on forking [testing framework]
v4.18.1
Fixes & improvements:
- fixed missing import when accessing
VariableDeclaration.declaration_string, which mainly manifested as language server crashes [core] - removed mistakenly leftover debugging prints from the IR [core]
- LSP document symbols and workspace symbols now use function declarations with parameter types to avoid deduplication on the LSP client side [language server]
- fixed LSP document symbols' last changed declaration not being propagated due to aggressive caching [language server]
- fixed LSP compilation errors not being cleared for deleted files [language server]
- changed command-line relevant code highlighting from color to underline [static analysis]
- added missing
burn_erc1155import towake.testing[testing framework] - fixed
ValueErroroccurring on failing chain connections [testing framework]
v4.18.0
Features & improvements:
- added support for Solidity 0.8.30 [core]
- improved LSP hover text for declarations [language server]
- added missing NatSpec documentation to enums and structs
- added
indexedkeyword to event parameters
- go to definition and hover LSP features now point to contract's constructor instead of the contract where appropriate [language server]
@inheritdocis now expanded in LSP hover [language server]- added highlighting of relevant code for command-line detections output [static analysis]
- implemented
chainlink-deprecated-function,unused-error, andunused-eventdetectors [static analysis]
Fixes:
- fixed compilation of files with structurally different ASTs [core]
extradictionary is no longer cleared after LSP printers run as it may be used by command callbacks [language server]
v4.17.2
v4.17.1 (yanked)
Fixes:
- fixed compilation of injected contracts when
target_versionset [core] - fixed all detections without subdetections filtered out with known contracts filtering enabled [static analysis]
v4.17.0 (yanked)
Features & improvements:
- implemented
--no-loggingCLI option [cli] - implemented
--no-headerCLI option forwake print[cli] wake up pytypesnow accepts paths to generate pytypes for [cli]- absolute paths are now supported in compilation [core]
exclude_pathsandignore_pathsare now set accordingly when importing Foundry config [core]evm_versionis now auto-downgraded with a warning if not supported by the current solc [core]- added a database of known contracts and implemented automatic ignoring of detections in such contracts [static analysis]
Fixes:
- fixed multiple sources of memory leaks [core]
- fixed compilation crash on file removal regression [core]
- fixed IR
Moduletype and its attributes [core] - fixed progressive compilation (recompilation of all files except for errored ones) regression [language server]
- fixed while loops in control flow graphs [static analysis]
- fixed injected
IERC20Metadata.solcompilation with older versions of solc [testing & deployment framework]
v4.16.1
Fixes:
- fixed the
appendCBORcompilation option being passed to solc versions not supporting it, causing a compilation error [core] - fixed compilation crash during subprojects compilation when files being imported from another subproject contain a compilation error [core]
- fixed
wake openincorrectly complaining about absolute paths when fetching from Etherscan with standard JSON format [core] - fixed control statements not indexed correctly in control flow graphs [static analysis]
- fixed resolution of renamed events & errors causing
AttributeErrorin some cases [testing & deployment framework]