Releases: Consensys/scribble
v0.6.14
The release brings fixes for the following bugs:
#171 __scribble__ReentrancyUtils.sol compiler error.
#191 Instrumented try...catch fails compilation step with Mythril
#188 Scribble doesnt work for instrumenting libraries
#181 Properly support UserDefinedTypes to Scribble functions
#176 Annotation is skipped in specific case
v0.6.13
This release brings a new experimental annotation: User constants.
User constants allow to create constants attached to contracts (and their inheritance tree) that can be used in other annotation. For example:
/// #const uint256 H := 60 * 60;
/// #const uint256 D := H * 24;
contract A {
/// #if_succeeds D == H * 24;
function testHD() public {}
}
Please note that this feature is still in its experimental phase, and may undergo changes before its made concrete.
v0.6.12
This patch tweaks the behavior of the --debug-events
flag. Specifically it changes the order of events emitted such that upon a property failure we first emit an AssertionFailedData
event (containing the values of any variables found in the failing property) and then emit the AssertionFailed
event, that marks the actual assertion failure.
v0.6.11
v0.6.10
v0.6.9
v0.6.8
v0.6.7
This release features:
v0.6.6
v0.6.5
This release brings the following improvements:
- bump nodejs version to v16 LTS
- bump solc-typed-ast to v9.0.0
- [EXPERIMENTAL] add support for
# let x := ...;
annotations before a statement - [EXPERIMENTAL] add support for
if_succeeds
annotation on a statement or code block - change default Solidity compiler from WASM to native
- Add new
--compiler-kind
command line option allowing to select which compiler to use (native or wasm) - Disallow arrays and maps in
old()
statements
WARNING: Features marked as [EXPERIMENTAL] may be changed or even removed in the future. Experiment with them at their own discretion, but for now please don't depend on them for critical annotations until these have been stabilized.