v0.5.1
What's Changed
-
fix: fix overflow for
QUAD_BIT
andDI_BIT
hints #1209
Fixes #1205 -
fix: fix hints
UINT256_UNSIGNED_DIV_REM
&&UINT256_EXPANDED_UNSIGNED_DIV_REM
#1203 -
bugfix: fix deserialization of scientific notation with fractional values #1202
-
feat: implement
mem_eq
function to test for equality of two ranges in memory #1198 -
perf: use
mem_eq
inset_add
#1198 -
feat: wrap big variants of
HintError
,VirtualMachineError
,RunnerError
,MemoryError
,MathError
,InsufficientAllocatedCellsError
inBox
#1193- BREAKING: all tuple variants of
HintError
with a singleFelt252
or multiple elements now receive a singleBox
- BREAKING: all tuple variants of
-
Add
Program::builtins_len method
#1194 -
fix: Handle the deserialization of serde_json::Number with scientific notation (e.g.: Number(1e27)) in felt_from_number function #1188
-
feat: Add RunResources Struct #1175
- BREAKING: Modify
CairoRunner::run_until_pc
arity. Addrun_resources: &mut Option<RunResources>
input - BREAKING: Modify
CairoRunner::run_from_entrypoint
arity. Addrun_resources: &mut Option<RunResources>
input
- BREAKING: Modify
-
fix: Fix 'as_int' conversion usage in hints
ASSERT_250_BIT
&SIGNED_DIV_REM
#1191 -
bugfix: Use cairo constants in
ASSERT_250_BIT
hint #1187 -
bugfix: Fix
EC_DOUBLE_ASSIGN_NEW_X_V2
hint not takingSECP_P
value from the current execution scope #1186 -
fix: Fix hint
BIGINT_PACK_DIV_MOD
#1189 -
fix: Fix possible subtraction overflow in
QUAD_BIT
&DI_BIT
hints #1185- These hints now return an error when ids.m equals zero
-
fix: felt_from_number not properly returning parse errors #1012
-
fix: Fix felt sqrt and Signed impl #1150
- BREAKING: Fix
Felt252
methodsabs
,signum
,is_positive
,is_negative
andsqrt
- BREAKING: Remove function
math_utils::sqrt
(Now moved toFelt252::sqrt
)
- BREAKING: Fix
-
feat: Add method
CairoRunner::initialize_function_runner_cairo_1
#1151-
Add method
pub fn initialize_function_runner_cairo_1( &mut self, vm: &mut VirtualMachine, program_builtins: &[BuiltinName], ) -> Result<(), RunnerError>
toCairoRunner
-
BREAKING: Move field
builtins
fromSharedProgramData
toProgram
-
BREAKING: Remove argument
add_segment_arena_builtin
fromCairoRunner::initialize_function_runner
, it is now always false -
BREAKING: Add
segment_arena
enum variant toBuiltinName
-
-
Fix implementation of
InitSquashData
andShouldSkipSquashLoop
-
Add more hints to
Cairo1HintProcessor
#1171
#1143Cairo1HintProcessor
can now run the following hints:- Felt252DictEntryInit
- Felt252DictEntryUpdate
- GetCurrentAccessDelta
- InitSquashData
- AllocConstantSize
- GetCurrentAccessIndex
- ShouldContinueSquashLoop
- FieldSqrt
- Uint512DivMod
-
Add some small considerations regarding Cairo 1 programs #1144:
- Ignore Casm and Sierra files
- Add special flag to compile Cairo 1 programs
-
Make the VM able to run
CasmContractClass
files undercairo-1-hints
feature #1098- Implement
TryFrom<CasmContractClass> for Program
- Add
Cairo1HintProcessor
- Implement