Skip to content

updated to sierra version 2.16 - #1557

Merged
gabrielbosio merged 1 commit into
mainfrom
tomer/sierra2.16_update
Mar 4, 2026
Merged

updated to sierra version 2.16#1557
gabrielbosio merged 1 commit into
mainfrom
tomer/sierra2.16_update

Conversation

@TomerStarkware

@TomerStarkware TomerStarkware commented Feb 17, 2026

Copy link
Copy Markdown
Collaborator

Title

Closes #NA

Introduces Breaking Changes?

No.

These PRs should be merged after this one right away, in that order.

Checklist

  • Linked to Github Issue.
  • Unit tests added.
  • Integration tests added.
  • This change requires new documentation.
    • Documentation has been added/updated.

This change is Reviewable

@github-actions

github-actions Bot commented Feb 18, 2026

Copy link
Copy Markdown

✅ Code is now correctly formatted.

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi reviewed 5 files and all commit messages, and made 3 comments.
Reviewable status: 5 of 28 files reviewed, 3 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).


Makefile line 4 at r1 (raw file):

UNAME := $(shell uname)
SCARB_VERSION = 2.14.0

Suggestion:

SCARB_VERSION = 2.16.0

binaries/starknet-native-compile/src/main.rs line 113 at r1 (raw file):

            .extract_sierra_program(false)
            .context("Error extracting Sierra program from contract class.")?.program,
        sierra_version,

Suggestion:

    let extracted = contract_class
            .extract_sierra_program(false)
            .context("Error extracting Sierra program from contract class.")?;
    Ok((
        contract_class.clone(),
        extracted.program,
        extracted.sierra_version,

debug_utils/sierra-emu/examples/contract.rs line 44 at r1 (raw file):

        &contract.entry_points_by_type,
        version_id,
    );

Suggestion:

    )?;
    let extracted = contract.extract_sierra_program(false)?;

    // Find entrypoint to execute
    let entrypoint = contract
        .entry_points_by_type
        .external
        .first()
        .ok_or("contract should contain at least one external entrypoint")?
        .clone();

    // Build virtual machine
    let mut vm = VirtualMachine::new_starknet(
        Arc::new(extracted.program),
        &contract.entry_points_by_type,
        extracted.sierra_version,
    );

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi reviewed 1 file and made 2 comments.
Reviewable status: 6 of 28 files reviewed, 5 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).


debug_utils/sierra-emu/src/main.rs line 93 at r1 (raw file):

            &contract.entry_points_by_type,
            sierra_version,
        );

Suggestion:

        let extracted = contract.extract_sierra_program(false).unwrap();

        let entry_point = contract.entry_points_by_type.external.first().unwrap();

        let mut vm = VirtualMachine::new_starknet(
            extracted.program.into(),
            &contract.entry_points_by_type,
            extracted.sierra_version,
        );

debug_utils/sierra-emu/src/main.rs line 141 at r1 (raw file):

            &contract.entry_points_by_type,
            sierra_version,
        );

Suggestion:

        let extracted = contract.extract_sierra_program(false).unwrap();

        let entry_point = contract.entry_points_by_type.constructor.first().unwrap();

        let mut vm = VirtualMachine::new_starknet(
            extracted.program.into(),
            &contract.entry_points_by_type,
            extracted.sierra_version,
        );

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi made 7 comments.
Reviewable status: 6 of 28 files reviewed, 12 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).


debug_utils/sierra-emu/src/vm.rs line 377 at r1 (raw file):

                            )
                            .unwrap();
                        frame.state = new_state;

Suggestion:

                        frame.pc = frame.pc.next(invocation.branches[branch_idx].target);
                        frame.state
                            .put_vars(
                                invocation.branches[branch_idx].results.iter().zip(results),
                            )
                            .unwrap();

debug_utils/sierra-emu/src/vm.rs line 420 at r1 (raw file):

                        .put_vars(target_branch.results.iter().zip(values))
                        .unwrap();
                    prev_frame.state = new_state;

Suggestion:

                    prev_frame.state
                        .put_vars(target_branch.results.iter().zip(values))
                        .unwrap();

debug_utils/sierra-emu/src/vm/enum.rs line 27 at r1 (raw file):

        EnumConcreteLibfunc::Match(info) => eval_match(registry, info, args),
        EnumConcreteLibfunc::SnapshotMatch(info) => eval_snapshot_match(registry, info, args),
        EnumConcreteLibfunc::BoxedMatch(_) => todo!(),

Suggestion:

 todo!("string with meaning"),

debug_utils/src/bin/contract-to-sierra.rs line 26 at r1 (raw file):

        .expect("failed to extract sierra program").program;

    print!("{}", sierra);

Suggestion:

    print!("{}", contract
        .extract_sierra_program(false)
        .expect("failed to extract sierra program").program);

src/compiler.rs line 437 at r1 (raw file):

        state.put_vars(values.into_iter())?;
        state
    };

Suggestion:

    let initial_state = {
        let mut values = OrderedHashMap::default();

        let mut count = 0;
        for param in &function.params {
            let type_info = registry.get_type(&param.ty)?;
            let location = Location::new(
                context,
                "program.sierra",
                sierra_stmt_start_offset + function.entry_point.0,
                0,
            );

            values.insert(
                param.id.clone(),
                if type_info.is_builtin() && type_info.is_zst(registry)? {
                    pre_entry_block
                        .append_operation(llvm::undef(
                            type_info.build(context, module, registry, metadata, &param.ty)?,
                            location,
                        ))
                        .result(0)?
                        .into()
                } else {
                    let value = entry_block.argument(count)?.into();
                    count += 1;

                    value
                },
            );

            #[cfg(feature = "with-trace-dump")]
            var_types.insert(param.id.clone(), param.ty.clone());
        }
        values
    };

src/compiler.rs line 488 at r1 (raw file):

                        .collect::<Result<Vec<_>, Error>>()?
                        .into_iter(),
                )?;

Suggestion:

                let mut new_state = state
                        .keys()
                        .sorted_by_key(|x| x.id)
                        .enumerate()
                        .map(|(idx, var_id)| Ok((var_id, landing_block.argument(idx)?.into())))
                        .collect::<Result<_, Error>>()?;

src/compiler.rs line 506 at r1 (raw file):

                    ),
                ));
            }

Suggestion:

                landing_block.append_operation(cf::br(
                    block,
                    &state.clone().take_vars(match &statements[statement_idx.0] {
                    Statement::Invocation(x) => &x.args,
                    Statement::Return(x) => x,
                }.iter())?,
                    Location::name(
                        context,
                        &format!("landing_block(stmt_idx={})", statement_idx),
                        fn_location,
                    ),
                ));
            }

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi reviewed 6 files and made 9 comments.
Reviewable status: 12 of 28 files reviewed, 21 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).


src/compiler.rs line 556 at r1 (raw file):

                    );

                    let mut state = state;

src/compiler.rs line 1072 at r1 (raw file):

        )?;
        state
    };

Suggestion:

    let initial_state: OrderedHashMap::<_, Type> = 
            function
                .params
                .iter()
                .zip(&function.signature.param_types)
                .map(|(param, ty)| {
                    let type_info = registry.get_type(ty)?;
                    Ok((
                        &param.id,
                        type_info.build(context, module, registry, metadata_storage, ty)?,
                    ))
                })
                .collect::<Result<_, Error>>()?;

src/executor/contract.rs line 857 at r1 (raw file):

                    .extract_sierra_program(false)
                    .unwrap()
                    .program,

Suggestion:

        let extracted = starknet_program
                    .extract_sierra_program(false)
                    .unwrap();
        let executor = Arc::new(
            AotContractExecutor::new(
                &extracted.program,

src/executor/contract.rs line 859 at r1 (raw file):

                    .program,
                &starknet_program.entry_points_by_type,
                sierra_version,

Suggestion:

                extracted.sierra_version,

src/executor/contract.rs line 902 at r1 (raw file):

                .program,
            &starknet_program.entry_points_by_type,
            sierra_version,

same


src/executor/contract.rs line 945 at r1 (raw file):

                .program,
            &starknet_program_factorial.entry_points_by_type,
            sierra_version,

same


src/executor/contract.rs line 989 at r1 (raw file):

                .program,
            &starknet_program_empty.entry_points_by_type,
            sierra_version,

same


src/utils/sierra_gen.rs line 468 at r1 (raw file):

            let cache = self.type_info_cache.borrow();
            let ptr = cache.get(id).unwrap() as *const TypeInfo;
            return Some(unsafe { &*ptr });

i don't see any actual reason for this entire file to exist. @gabrielbosio @igaray


tests/common/mod.rs line 473 at r1 (raw file):

        &contract.extract_sierra_program(false).unwrap().program,
        &contract.entry_points_by_type,
        sierra_version,

same

@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch from fe05bc2 to 5a12e37 Compare February 18, 2026 14:02

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi partially reviewed 21 files and resolved 18 discussions.
Reviewable status: 30 of 34 files reviewed, 3 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).

@github-actions

github-actions Bot commented Feb 18, 2026

Copy link
Copy Markdown

Benchmark results Main vs HEAD.

Base

Command Mean [s] Min [s] Max [s] Relative
base dict_insert.cairo (JIT) 2.100 ± 0.011 2.075 2.115 1.04 ± 0.01
base dict_insert.cairo (AOT) 2.017 ± 0.016 2.000 2.052 1.00

Head

Command Mean [s] Min [s] Max [s] Relative
head dict_insert.cairo (JIT) 2.135 ± 0.018 2.114 2.169 1.03 ± 0.02
head dict_insert.cairo (AOT) 2.068 ± 0.038 2.010 2.132 1.00

Base

Command Mean [s] Min [s] Max [s] Relative
base dict_snapshot.cairo (JIT) 1.810 ± 0.018 1.774 1.830 1.06 ± 0.01
base dict_snapshot.cairo (AOT) 1.705 ± 0.009 1.691 1.718 1.00

Head

Command Mean [s] Min [s] Max [s] Relative
head dict_snapshot.cairo (JIT) 1.922 ± 0.040 1.861 1.989 1.08 ± 0.03
head dict_snapshot.cairo (AOT) 1.782 ± 0.042 1.727 1.862 1.00

Base

Command Mean [s] Min [s] Max [s] Relative
base factorial_2M.cairo (JIT) 2.206 ± 0.019 2.177 2.238 1.03 ± 0.01
base factorial_2M.cairo (AOT) 2.150 ± 0.013 2.129 2.169 1.00

Head

Command Mean [s] Min [s] Max [s] Relative
head factorial_2M.cairo (JIT) 2.261 ± 0.014 2.238 2.282 1.01 ± 0.02
head factorial_2M.cairo (AOT) 2.237 ± 0.034 2.172 2.280 1.00

Base

Command Mean [s] Min [s] Max [s] Relative
base fib_2M.cairo (JIT) 1.754 ± 0.018 1.730 1.787 1.04 ± 0.02
base fib_2M.cairo (AOT) 1.684 ± 0.020 1.657 1.718 1.00

Head

Command Mean [s] Min [s] Max [s] Relative
head fib_2M.cairo (JIT) 1.836 ± 0.033 1.785 1.892 1.00
head fib_2M.cairo (AOT) 1.873 ± 0.035 1.833 1.922 1.02 ± 0.03

Base

Command Mean [s] Min [s] Max [s] Relative
base linear_search.cairo (JIT) 1.871 ± 0.013 1.847 1.888 1.07 ± 0.01
base linear_search.cairo (AOT) 1.742 ± 0.010 1.729 1.759 1.00

Head

Command Mean [s] Min [s] Max [s] Relative
head linear_search.cairo (JIT) 1.997 ± 0.038 1.950 2.085 1.06 ± 0.03
head linear_search.cairo (AOT) 1.878 ± 0.044 1.827 1.951 1.00

Base

Command Mean [s] Min [s] Max [s] Relative
base logistic_map.cairo (JIT) 2.043 ± 0.008 2.036 2.057 1.10 ± 0.01
base logistic_map.cairo (AOT) 1.862 ± 0.011 1.837 1.873 1.00

Head

Command Mean [s] Min [s] Max [s] Relative
head logistic_map.cairo (JIT) 2.179 ± 0.029 2.130 2.235 1.11 ± 0.02
head logistic_map.cairo (AOT) 1.963 ± 0.031 1.924 2.026 1.00

@github-actions

github-actions Bot commented Feb 18, 2026

Copy link
Copy Markdown

Benchmarking results

Benchmark for program dict_insert

Open benchmarks
Command Mean [s] Min [s] Max [s] Relative
Cairo-vm (Rust, Cairo 1) 11.515 ± 0.080 11.455 11.728 5.50 ± 0.07
cairo-native (embedded AOT) 2.092 ± 0.022 2.065 2.128 1.00
cairo-native (embedded JIT using LLVM's ORC Engine) 2.125 ± 0.030 2.081 2.164 1.02 ± 0.02

Benchmark for program dict_snapshot

Open benchmarks
Command Mean [ms] Min [ms] Max [ms] Relative
Cairo-vm (Rust, Cairo 1) 564.8 ± 4.3 558.2 573.2 1.00
cairo-native (embedded AOT) 1727.2 ± 27.3 1682.1 1768.1 3.06 ± 0.05
cairo-native (embedded JIT using LLVM's ORC Engine) 1842.4 ± 12.1 1812.7 1853.5 3.26 ± 0.03

Benchmark for program factorial_2M

Open benchmarks
Command Mean [s] Min [s] Max [s] Relative
Cairo-vm (Rust, Cairo 1) 4.936 ± 0.038 4.903 5.038 2.29 ± 0.03
cairo-native (embedded AOT) 2.158 ± 0.020 2.133 2.199 1.00
cairo-native (embedded JIT using LLVM's ORC Engine) 2.220 ± 0.017 2.205 2.252 1.03 ± 0.01

Benchmark for program fib_2M

Open benchmarks
Command Mean [s] Min [s] Max [s] Relative
Cairo-vm (Rust, Cairo 1) 4.832 ± 0.025 4.797 4.871 2.81 ± 0.03
cairo-native (embedded AOT) 1.717 ± 0.015 1.696 1.744 1.00
cairo-native (embedded JIT using LLVM's ORC Engine) 1.802 ± 0.008 1.789 1.814 1.05 ± 0.01

Benchmark for program linear_search

Open benchmarks
Command Mean [ms] Min [ms] Max [ms] Relative
Cairo-vm (Rust, Cairo 1) 613.8 ± 5.1 607.0 623.5 1.00
cairo-native (embedded AOT) 1753.0 ± 30.7 1724.0 1811.7 2.86 ± 0.06
cairo-native (embedded JIT using LLVM's ORC Engine) 1876.5 ± 20.2 1849.3 1918.4 3.06 ± 0.04

Benchmark for program logistic_map

Open benchmarks
Command Mean [ms] Min [ms] Max [ms] Relative
Cairo-vm (Rust, Cairo 1) 513.3 ± 6.3 507.5 524.9 1.00
cairo-native (embedded AOT) 1898.7 ± 21.0 1874.0 1948.6 3.70 ± 0.06
cairo-native (embedded JIT using LLVM's ORC Engine) 2077.1 ± 17.4 2044.2 2102.9 4.05 ± 0.06

@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch 3 times, most recently from 7121fd3 to caf228a Compare February 18, 2026 15:55

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi reviewed 16 files and all commit messages, made 1 comment, and resolved 2 discussions.
Reviewable status: 41 of 42 files reviewed, 2 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).


tests/common.rs line 0 at r3 (raw file):
what is this file?

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi reviewed 5 files and all commit messages, and resolved 1 discussion.
Reviewable status: all files reviewed, 1 unresolved discussion (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).

@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch from caf228a to 5e82362 Compare February 19, 2026 09:04

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi reviewed 5 files and made 1 comment.
Reviewable status: 43 of 46 files reviewed, 2 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).


tests/common/mod.rs line 350 at r5 (raw file):

        0.into(),
        0.into(),
    ];

Suggestion:

    let builtin_costs: Vec<MaybeRelocatable> = vec![0.into(); 8];

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi reviewed 1 file and all commit messages.
Reviewable status: 44 of 46 files reviewed, 2 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).

@orizi orizi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@orizi reviewed 2 files.
Reviewable status: all files reviewed, 2 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, pefontana, and TomerStarkware).

@gabrielbosio

Copy link
Copy Markdown
Contributor

Two pending tasks here:

  1. Bump Sierra to 2.16 in replay and our sequencer fork, following this order
    Create a PR in sequencer (see this one as a reference, it bumped Sierra to 2.15)
  2. After merging the sequencer PR, create a PR in replay (this one bumped Sierra to 2.15). Note that it should make the sequencer dependency point to the commit that bumps Sierra to 2.16.
    After merging the replay PR, bump both the sequencer and replay dependencies in the Native PR.

There are some CI jobs that fail in the actual_cost == expected_cost assertion. These are triggered probably because the new version of Sierra changed the gas cost of some operations so there are some tests that have to get their expected gas costs updated.

Also, the sequencer PR should point to the main-v0.14.1 branch of the fork.

@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch from 5e82362 to 17ef1a1 Compare February 23, 2026 11:37
@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch 5 times, most recently from 23468de to a84d1df Compare March 1, 2026 17:39
@codecov-commenter

codecov-commenter commented Mar 1, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 84.29752% with 19 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.03%. Comparing base (025181a) to head (284ca64).

Files with missing lines Patch % Lines
src/types.rs 0.00% 4 Missing ⚠️
src/libfuncs/uint256.rs 83.33% 3 Missing ⚠️
src/compiler.rs 95.74% 2 Missing ⚠️
src/executor/contract.rs 0.00% 2 Missing ⚠️
src/utils.rs 33.33% 2 Missing ⚠️
src/debug.rs 0.00% 1 Missing ⚠️
src/execution_result.rs 0.00% 1 Missing ⚠️
src/executor.rs 0.00% 1 Missing ⚠️
src/libfuncs/enum.rs 0.00% 1 Missing ⚠️
src/libfuncs/uint512.rs 83.33% 1 Missing ⚠️
... and 1 more
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1557      +/-   ##
==========================================
+ Coverage   72.87%   73.03%   +0.15%     
==========================================
  Files         110      110              
  Lines       27152    27188      +36     
==========================================
+ Hits        19788    19856      +68     
+ Misses       7364     7332      -32     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch 3 times, most recently from 494ac90 to 8e72a11 Compare March 1, 2026 22:05

@TomerStarkware TomerStarkware left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TomerStarkware made 17 comments.
Reviewable status: 38 of 84 files reviewed, 2 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, orizi, and pefontana).


src/executor/contract.rs line 902 at r1 (raw file):

Previously, orizi wrote…

same

Done.


src/executor/contract.rs line 945 at r1 (raw file):

Previously, orizi wrote…

same

Done.


src/executor/contract.rs line 989 at r1 (raw file):

Previously, orizi wrote…

same

Done.


tests/common/mod.rs line 473 at r1 (raw file):

Previously, orizi wrote…

same

Done.


tests/common.rs line at r3 (raw file):

Previously, orizi wrote…

what is this file?

was accedintaly resored due to merge conflics


debug_utils/sierra-emu/src/vm.rs line 377 at r1 (raw file):

                            )
                            .unwrap();
                        frame.state = new_state;

Done.


debug_utils/sierra-emu/src/vm.rs line 420 at r1 (raw file):

                        .put_vars(target_branch.results.iter().zip(values))
                        .unwrap();
                    prev_frame.state = new_state;

Done.


binaries/starknet-native-compile/src/main.rs line 113 at r1 (raw file):

            .extract_sierra_program(false)
            .context("Error extracting Sierra program from contract class.")?.program,
        sierra_version,

Done.


debug_utils/src/bin/contract-to-sierra.rs line 26 at r1 (raw file):

        .expect("failed to extract sierra program").program;

    print!("{}", sierra);

Done.


src/compiler.rs line 437 at r1 (raw file):

        state.put_vars(values.into_iter())?;
        state
    };

Done.


src/compiler.rs line 488 at r1 (raw file):

                        .collect::<Result<Vec<_>, Error>>()?
                        .into_iter(),
                )?;

Done.


src/compiler.rs line 556 at r1 (raw file):

                    );

                    let mut state = state;

Done.


src/compiler.rs line 1072 at r1 (raw file):

        )?;
        state
    };

Done.


Makefile line 4 at r1 (raw file):

UNAME := $(shell uname)
SCARB_VERSION = 2.14.0

Done.


src/executor/contract.rs line 857 at r1 (raw file):

                    .extract_sierra_program(false)
                    .unwrap()
                    .program,

Done.


src/executor/contract.rs line 859 at r1 (raw file):

                    .program,
                &starknet_program.entry_points_by_type,
                sierra_version,

Done.


debug_utils/sierra-emu/src/vm/enum.rs line 27 at r1 (raw file):

        EnumConcreteLibfunc::Match(info) => eval_match(registry, info, args),
        EnumConcreteLibfunc::SnapshotMatch(info) => eval_snapshot_match(registry, info, args),
        EnumConcreteLibfunc::BoxedMatch(_) => todo!(),

Done.

@TomerStarkware TomerStarkware left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TomerStarkware made 1 comment.
Reviewable status: 38 of 84 files reviewed, 2 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, orizi, and pefontana).


tests/common/mod.rs line 350 at r5 (raw file):

        0.into(),
        0.into(),
    ];

done

Comment thread .github/workflows/starknet-blocks.yml
Comment thread docs/overview.md Outdated
Comment thread docs/overview.md
Comment thread src/libfuncs/squashed_dict.rs
Comment thread src/utils/sierra_gen.rs Outdated
Comment thread test_data/programs/libfuncs/array_snapshot_pop_back_clone_offset.cairo Outdated
Comment thread test_data/programs/libfuncs/array_snapshot_pop_front_clone_offset.cairo Outdated
Comment thread test_data/programs/snapshot_loop.cairo
@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch from 8e72a11 to 50085a2 Compare March 3, 2026 22:16

@TomerStarkware TomerStarkware left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TomerStarkware made 8 comments.
Reviewable status: 38 of 84 files reviewed, 11 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, orizi, and pefontana).

Comment thread .github/workflows/starknet-blocks.yml
Comment thread docs/overview.md
Comment thread docs/overview.md Outdated
Comment thread src/libfuncs/squashed_dict.rs
Comment thread test_data/programs/snapshot_loop.cairo
Comment thread test_data/programs/libfuncs/array_snapshot_pop_back_clone_offset.cairo Outdated
Comment thread test_data/programs/libfuncs/array_snapshot_pop_front_clone_offset.cairo Outdated
@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch from 50085a2 to 4e3680d Compare March 3, 2026 23:20

@TomerStarkware TomerStarkware left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TomerStarkware made 1 comment.
Reviewable status: 36 of 85 files reviewed, 11 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, orizi, and pefontana).

Comment thread src/libfuncs/squashed_dict.rs
Comment thread src/libfuncs/squashed_dict.rs

@TomerStarkware TomerStarkware left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TomerStarkware made 6 comments.
Reviewable status: 36 of 85 files reviewed, 12 unresolved discussions (waiting on azteca1998, edg-l, entropidelic, gabrielbosio, igaray, jrchatruc, Oppen, orizi, and pefontana).

Comment thread src/libfuncs/squashed_dict.rs
Comment thread src/utils/sierra_gen.rs Outdated
Comment thread test_data/programs/snapshot_loop.cairo
Comment thread test_data/programs/libfuncs/array_snapshot_pop_back_clone_offset.cairo Outdated
Comment thread test_data/programs/libfuncs/array_snapshot_pop_front_clone_offset.cairo Outdated
@TomerStarkware
TomerStarkware force-pushed the tomer/sierra2.16_update branch from 4e3680d to 284ca64 Compare March 4, 2026 12:48

@gabrielbosio gabrielbosio left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job!

@gabrielbosio
gabrielbosio added this pull request to the merge queue Mar 4, 2026
This was linked to issues Mar 4, 2026
Merged via the queue into main with commit 89684bf Mar 4, 2026
30 checks passed
@gabrielbosio
gabrielbosio deleted the tomer/sierra2.16_update branch March 4, 2026 18:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Daily Workflow Failure Weekly Cairo Release Check

4 participants