Skip to content

Commit cefb40c

Browse files
chore(blockifier_test_utils,ci): consolidate cairo-lang version and recompile deprecated contracts
1 parent 37d9157 commit cefb40c

14 files changed

+702
-371
lines changed

.github/workflows/blockifier_compiled_cairo.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ on:
1212
- 'crates/blockifier_test_utils/cairo_compile.rs'
1313
- 'crates/blockifier_test_utils/resources/feature_contracts/**'
1414
- 'crates/blockifier_test_utils/tests/feature_contracts_compatibility_test.rs'
15-
- 'crates/blockifier_test_utils/tests/requirements.txt'
1615
- 'scripts/dependencies.sh'
16+
- 'scripts/requirements.txt'
1717

1818
env:
1919
RUSTFLAGS: "-D warnings -C link-arg=-fuse-ld=lld"
@@ -74,5 +74,5 @@ jobs:
7474
- name: Verify cairo contract recompilation (both cairo versions).
7575
run:
7676
cd sequencer &&
77-
pip install -r crates/blockifier_test_utils/tests/requirements.txt &&
77+
pip install -r scripts/requirements.txt &&
7878
cargo test -p blockifier_test_utils --test feature_contracts_compatibility_test -- --include-ignored --nocapture

.github/workflows/blockifier_post-merge.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,5 @@ jobs:
3131
run: echo "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}" >> $GITHUB_ENV
3232

3333
- run: |
34-
pip install -r crates/blockifier_test_utils/tests/requirements.txt
34+
pip install -r scripts/requirements.txt
3535
cargo test -p blockifier -p native_blockifier -- --include-ignored

crates/blockifier/src/execution/stack_trace_test.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,9 @@ Unknown location (pc=0:{entry_point_location})
137137
2: Error in the called contract (contract address: {test_contract_address_2_felt:#064x}, class \
138138
hash: {test_contract_hash:#064x}, selector: {inner_entry_point_selector_felt:#064x}):
139139
Error message: You shall not pass!
140-
Error at pc=0:1294:
140+
Error at pc=0:1311:
141141
Cairo traceback (most recent call last):
142-
Unknown location (pc=0:1298)
142+
Unknown location (pc=0:1315)
143143
144144
An ASSERT_EQ instruction failed: 1 != 0.
145145
"
@@ -228,9 +228,9 @@ Unknown location (pc=0:{entry_point_location})
228228
hash: {test_contract_hash:#064x}, selector: \
229229
{inner_entry_point_selector_felt:#064x}):
230230
Error message: You shall not pass!
231-
Error at pc=0:1294:
231+
Error at pc=0:1311:
232232
Cairo traceback (most recent call last):
233-
Unknown location (pc=0:1298)
233+
Unknown location (pc=0:1315)
234234
235235
An ASSERT_EQ instruction failed: 1 != 0.
236236
"
@@ -258,8 +258,8 @@ Error in contract (contract address: {test_contract_address_2_felt:#064x}, class
258258
}
259259

260260
#[rstest]
261-
#[case(CairoVersion::Cairo0, "invoke_call_chain", "Couldn't compute operand op0. Unknown value for memory cell 1:37", (1191_u16, 1237_u16))]
262-
#[case(CairoVersion::Cairo0, "fail", "An ASSERT_EQ instruction failed: 1 != 0.", (1294_u16, 1245_u16))]
261+
#[case(CairoVersion::Cairo0, "invoke_call_chain", "Couldn't compute operand op0. Unknown value for memory cell 1:37", (1208_u16, 1254_u16))]
262+
#[case(CairoVersion::Cairo0, "fail", "An ASSERT_EQ instruction failed: 1 != 0.", (1311_u16, 1262_u16))]
263263
#[case(CairoVersion::Cairo1(RunnableCairo1::Casm), "invoke_call_chain", "0x4469766973696f6e2062792030 ('Division by 0')", (0_u16, 0_u16))]
264264
#[case(CairoVersion::Cairo1(RunnableCairo1::Casm), "fail", "0x6661696c ('fail')", (0_u16, 0_u16))]
265265
#[cfg_attr(
@@ -387,10 +387,10 @@ Error in contract (contract address: {contract_address_felt:#064x}, class hash:
387387
}
388388

389389
#[rstest]
390-
#[case(CairoVersion::Cairo0, "invoke_call_chain", "Couldn't compute operand op0. Unknown value for memory cell 1:23", 1_u8, 0_u8, (37_u16, 1203_u16, 1191_u16, 1276_u16))]
391-
#[case(CairoVersion::Cairo0, "invoke_call_chain", "Couldn't compute operand op0. Unknown value for memory cell 1:23", 1_u8, 1_u8, (49_u16, 1221_u16, 1191_u16, 1276_u16))]
392-
#[case(CairoVersion::Cairo0, "fail", "An ASSERT_EQ instruction failed: 1 != 0.", 0_u8, 0_u8, (37_u16, 1203_u16, 1294_u16, 1298_u16))]
393-
#[case(CairoVersion::Cairo0, "fail", "An ASSERT_EQ instruction failed: 1 != 0.", 0_u8, 1_u8, (49_u16, 1221_u16, 1294_u16, 1298_u16))]
390+
#[case(CairoVersion::Cairo0, "invoke_call_chain", "Couldn't compute operand op0. Unknown value for memory cell 1:23", 1_u8, 0_u8, (37_u16, 1220_u16, 1208_u16, 1293_u16))]
391+
#[case(CairoVersion::Cairo0, "invoke_call_chain", "Couldn't compute operand op0. Unknown value for memory cell 1:23", 1_u8, 1_u8, (49_u16, 1238_u16, 1208_u16, 1293_u16))]
392+
#[case(CairoVersion::Cairo0, "fail", "An ASSERT_EQ instruction failed: 1 != 0.", 0_u8, 0_u8, (37_u16, 1220_u16, 1311_u16, 1315_u16))]
393+
#[case(CairoVersion::Cairo0, "fail", "An ASSERT_EQ instruction failed: 1 != 0.", 0_u8, 1_u8, (49_u16, 1238_u16, 1311_u16, 1315_u16))]
394394
#[case(CairoVersion::Cairo1(RunnableCairo1::Casm), "invoke_call_chain", "0x4469766973696f6e2062792030 ('Division by 0')", 1_u8, 0_u8, (9631_u16, 9631_u16, 0_u16, 0_u16))]
395395
#[case(CairoVersion::Cairo1(RunnableCairo1::Casm), "invoke_call_chain", "0x4469766973696f6e2062792030 ('Division by 0')", 1_u8, 1_u8, (9631_u16, 9700_u16, 0_u16, 0_u16))]
396396
#[case(CairoVersion::Cairo1(RunnableCairo1::Casm), "fail", "0x6661696c ('fail')", 0_u8, 0_u8, (9631_u16, 9631_u16, 0_u16, 0_u16))]

crates/blockifier_test_utils/resources/feature_contracts/cairo0/compiled/account_faulty_compiled.json

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@
131131
"pedersen",
132132
"range_check"
133133
],
134-
"compiler_version": "0.12.2",
134+
"compiler_version": "0.13.5",
135135
"data": [
136136
"0x40780017fff7fff",
137137
"0x1",
@@ -1433,6 +1433,29 @@
14331433
"destination": "starkware.cairo.common.keccak_state.KeccakBuiltinState",
14341434
"type": "alias"
14351435
},
1436+
"starkware.cairo.common.cairo_builtins.ModBuiltin": {
1437+
"full_name": "starkware.cairo.common.cairo_builtins.ModBuiltin",
1438+
"members": {
1439+
"n": {
1440+
"cairo_type": "felt",
1441+
"offset": 6
1442+
},
1443+
"offsets_ptr": {
1444+
"cairo_type": "felt*",
1445+
"offset": 5
1446+
},
1447+
"p": {
1448+
"cairo_type": "starkware.cairo.common.cairo_builtins.UInt384",
1449+
"offset": 0
1450+
},
1451+
"values_ptr": {
1452+
"cairo_type": "starkware.cairo.common.cairo_builtins.UInt384*",
1453+
"offset": 4
1454+
}
1455+
},
1456+
"size": 7,
1457+
"type": "struct"
1458+
},
14361459
"starkware.cairo.common.cairo_builtins.PoseidonBuiltin": {
14371460
"full_name": "starkware.cairo.common.cairo_builtins.PoseidonBuiltin",
14381461
"members": {
@@ -1467,6 +1490,29 @@
14671490
"size": 2,
14681491
"type": "struct"
14691492
},
1493+
"starkware.cairo.common.cairo_builtins.UInt384": {
1494+
"full_name": "starkware.cairo.common.cairo_builtins.UInt384",
1495+
"members": {
1496+
"d0": {
1497+
"cairo_type": "felt",
1498+
"offset": 0
1499+
},
1500+
"d1": {
1501+
"cairo_type": "felt",
1502+
"offset": 1
1503+
},
1504+
"d2": {
1505+
"cairo_type": "felt",
1506+
"offset": 2
1507+
},
1508+
"d3": {
1509+
"cairo_type": "felt",
1510+
"offset": 3
1511+
}
1512+
},
1513+
"size": 4,
1514+
"type": "struct"
1515+
},
14701516
"starkware.cairo.common.dict_access.DictAccess": {
14711517
"full_name": "starkware.cairo.common.dict_access.DictAccess",
14721518
"members": {

crates/blockifier_test_utils/resources/feature_contracts/cairo0/compiled/account_with_dummy_validate_compiled.json

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@
153153
"pedersen",
154154
"range_check"
155155
],
156-
"compiler_version": "0.12.2",
156+
"compiler_version": "0.13.5",
157157
"data": [
158158
"0x480680017fff8000",
159159
"0x43616c6c436f6e7472616374",
@@ -1145,6 +1145,29 @@
11451145
"destination": "starkware.cairo.common.keccak_state.KeccakBuiltinState",
11461146
"type": "alias"
11471147
},
1148+
"starkware.cairo.common.cairo_builtins.ModBuiltin": {
1149+
"full_name": "starkware.cairo.common.cairo_builtins.ModBuiltin",
1150+
"members": {
1151+
"n": {
1152+
"cairo_type": "felt",
1153+
"offset": 6
1154+
},
1155+
"offsets_ptr": {
1156+
"cairo_type": "felt*",
1157+
"offset": 5
1158+
},
1159+
"p": {
1160+
"cairo_type": "starkware.cairo.common.cairo_builtins.UInt384",
1161+
"offset": 0
1162+
},
1163+
"values_ptr": {
1164+
"cairo_type": "starkware.cairo.common.cairo_builtins.UInt384*",
1165+
"offset": 4
1166+
}
1167+
},
1168+
"size": 7,
1169+
"type": "struct"
1170+
},
11481171
"starkware.cairo.common.cairo_builtins.PoseidonBuiltin": {
11491172
"full_name": "starkware.cairo.common.cairo_builtins.PoseidonBuiltin",
11501173
"members": {
@@ -1179,6 +1202,29 @@
11791202
"size": 2,
11801203
"type": "struct"
11811204
},
1205+
"starkware.cairo.common.cairo_builtins.UInt384": {
1206+
"full_name": "starkware.cairo.common.cairo_builtins.UInt384",
1207+
"members": {
1208+
"d0": {
1209+
"cairo_type": "felt",
1210+
"offset": 0
1211+
},
1212+
"d1": {
1213+
"cairo_type": "felt",
1214+
"offset": 1
1215+
},
1216+
"d2": {
1217+
"cairo_type": "felt",
1218+
"offset": 2
1219+
},
1220+
"d3": {
1221+
"cairo_type": "felt",
1222+
"offset": 3
1223+
}
1224+
},
1225+
"size": 4,
1226+
"type": "struct"
1227+
},
11821228
"starkware.cairo.common.dict_access.DictAccess": {
11831229
"full_name": "starkware.cairo.common.dict_access.DictAccess",
11841230
"members": {

crates/blockifier_test_utils/resources/feature_contracts/cairo0/compiled/account_with_long_validate_compiled.json

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@
138138
"pedersen",
139139
"range_check"
140140
],
141-
"compiler_version": "0.12.2",
141+
"compiler_version": "0.13.5",
142142
"data": [
143143
"0x480680017fff8000",
144144
"0x43616c6c436f6e7472616374",
@@ -1126,6 +1126,29 @@
11261126
"destination": "starkware.cairo.common.keccak_state.KeccakBuiltinState",
11271127
"type": "alias"
11281128
},
1129+
"starkware.cairo.common.cairo_builtins.ModBuiltin": {
1130+
"full_name": "starkware.cairo.common.cairo_builtins.ModBuiltin",
1131+
"members": {
1132+
"n": {
1133+
"cairo_type": "felt",
1134+
"offset": 6
1135+
},
1136+
"offsets_ptr": {
1137+
"cairo_type": "felt*",
1138+
"offset": 5
1139+
},
1140+
"p": {
1141+
"cairo_type": "starkware.cairo.common.cairo_builtins.UInt384",
1142+
"offset": 0
1143+
},
1144+
"values_ptr": {
1145+
"cairo_type": "starkware.cairo.common.cairo_builtins.UInt384*",
1146+
"offset": 4
1147+
}
1148+
},
1149+
"size": 7,
1150+
"type": "struct"
1151+
},
11291152
"starkware.cairo.common.cairo_builtins.PoseidonBuiltin": {
11301153
"full_name": "starkware.cairo.common.cairo_builtins.PoseidonBuiltin",
11311154
"members": {
@@ -1160,6 +1183,29 @@
11601183
"size": 2,
11611184
"type": "struct"
11621185
},
1186+
"starkware.cairo.common.cairo_builtins.UInt384": {
1187+
"full_name": "starkware.cairo.common.cairo_builtins.UInt384",
1188+
"members": {
1189+
"d0": {
1190+
"cairo_type": "felt",
1191+
"offset": 0
1192+
},
1193+
"d1": {
1194+
"cairo_type": "felt",
1195+
"offset": 1
1196+
},
1197+
"d2": {
1198+
"cairo_type": "felt",
1199+
"offset": 2
1200+
},
1201+
"d3": {
1202+
"cairo_type": "felt",
1203+
"offset": 3
1204+
}
1205+
},
1206+
"size": 4,
1207+
"type": "struct"
1208+
},
11631209
"starkware.cairo.common.dict_access.DictAccess": {
11641210
"full_name": "starkware.cairo.common.dict_access.DictAccess",
11651211
"members": {

crates/blockifier_test_utils/resources/feature_contracts/cairo0/compiled/empty_contract_compiled.json

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
"builtins": [
1111
"range_check"
1212
],
13-
"compiler_version": "0.12.2",
13+
"compiler_version": "0.13.5",
1414
"data": [],
1515
"debug_info": null,
1616
"hints": {},
@@ -115,6 +115,29 @@
115115
"destination": "starkware.cairo.common.keccak_state.KeccakBuiltinState",
116116
"type": "alias"
117117
},
118+
"starkware.cairo.common.cairo_builtins.ModBuiltin": {
119+
"full_name": "starkware.cairo.common.cairo_builtins.ModBuiltin",
120+
"members": {
121+
"n": {
122+
"cairo_type": "felt",
123+
"offset": 6
124+
},
125+
"offsets_ptr": {
126+
"cairo_type": "felt*",
127+
"offset": 5
128+
},
129+
"p": {
130+
"cairo_type": "starkware.cairo.common.cairo_builtins.UInt384",
131+
"offset": 0
132+
},
133+
"values_ptr": {
134+
"cairo_type": "starkware.cairo.common.cairo_builtins.UInt384*",
135+
"offset": 4
136+
}
137+
},
138+
"size": 7,
139+
"type": "struct"
140+
},
118141
"starkware.cairo.common.cairo_builtins.PoseidonBuiltin": {
119142
"full_name": "starkware.cairo.common.cairo_builtins.PoseidonBuiltin",
120143
"members": {
@@ -149,6 +172,29 @@
149172
"size": 2,
150173
"type": "struct"
151174
},
175+
"starkware.cairo.common.cairo_builtins.UInt384": {
176+
"full_name": "starkware.cairo.common.cairo_builtins.UInt384",
177+
"members": {
178+
"d0": {
179+
"cairo_type": "felt",
180+
"offset": 0
181+
},
182+
"d1": {
183+
"cairo_type": "felt",
184+
"offset": 1
185+
},
186+
"d2": {
187+
"cairo_type": "felt",
188+
"offset": 2
189+
},
190+
"d3": {
191+
"cairo_type": "felt",
192+
"offset": 3
193+
}
194+
},
195+
"size": 4,
196+
"type": "struct"
197+
},
152198
"starkware.cairo.common.dict_access.DictAccess": {
153199
"full_name": "starkware.cairo.common.dict_access.DictAccess",
154200
"members": {

0 commit comments

Comments
 (0)