Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add cairo_pie_output flag to cairo1-run #1581

Merged
merged 46 commits into from
Jan 22, 2024
Merged
Show file tree
Hide file tree
Changes from 45 commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
5dd9068
First draft
fmoletta Jan 17, 2024
7a9924e
Add special serialization for ecdsa builtin additional data
fmoletta Jan 17, 2024
653e8b0
Start comparison script
fmoletta Jan 17, 2024
666f6e8
Add compare_all_no_proof target
fmoletta Jan 17, 2024
5a72498
Update file permissions
fmoletta Jan 17, 2024
89a7af0
Fix makefile
fmoletta Jan 17, 2024
5bcf06a
Add special serialization for pedersen builtin additional data
fmoletta Jan 17, 2024
b429d33
Fix prev commit
fmoletta Jan 17, 2024
9a6fcbe
Serialize ecdsa additional data as sequence
fmoletta Jan 17, 2024
3d17276
Expand comparison script
fmoletta Jan 17, 2024
f9a449e
Skip bugged case + Reduce amount of prints in comparison script
fmoletta Jan 17, 2024
171862d
Improve skip
fmoletta Jan 17, 2024
89fc207
Add comparison to CI
fmoletta Jan 17, 2024
a0c74c9
Fix
fmoletta Jan 17, 2024
70513f0
Fix pie memory serialization
fmoletta Jan 17, 2024
08e037e
Fix constant value
fmoletta Jan 17, 2024
39a05bc
Save temp changes
fmoletta Jan 17, 2024
f8699b7
Revert "Fix constant value"
fmoletta Jan 17, 2024
8ae33e1
Use to_bytes instead of serialize impl + simplify scripts
fmoletta Jan 17, 2024
0ac1e33
Cleanup
fmoletta Jan 18, 2024
642efa7
Fix test
fmoletta Jan 18, 2024
405e8ff
Clean interface + remove unwraps
fmoletta Jan 18, 2024
5f84875
Fixes
fmoletta Jan 18, 2024
cd3dbaf
clippy
fmoletta Jan 18, 2024
9b0a7ae
Move arg validation to a separate func
fmoletta Jan 18, 2024
1c2760b
Move mutually exclusive argument validation to clap
fmoletta Jan 18, 2024
d0a634f
rename var
fmoletta Jan 18, 2024
230bf07
Add Chaneglog entry
fmoletta Jan 18, 2024
f4c7a96
Make zip dep optional
fmoletta Jan 18, 2024
333e6f8
Fix wasm imports
fmoletta Jan 18, 2024
8ad3c66
Add file extension
fmoletta Jan 18, 2024
03426ba
Add file extension
fmoletta Jan 18, 2024
0a130f7
Remove unwrap + improve coverage
fmoletta Jan 18, 2024
98406e0
Add cairo_pie_output + Improve argument handling
fmoletta Jan 18, 2024
be5cca1
Add cairo_pie_output flag to tests
fmoletta Jan 18, 2024
609ea3a
Set builtins stop sptrs
fmoletta Jan 18, 2024
860f653
Add Chaneglog entry
fmoletta Jan 18, 2024
4ca5964
quick fix
fmoletta Jan 18, 2024
2cce1a6
Clean solution
fmoletta Jan 18, 2024
dd1d3d1
Merge branch 'cairo_pie_output' into cairo_pie_output_cairo_1
fmoletta Jan 18, 2024
85cf944
Apply fix to cairo1-run cli
fmoletta Jan 18, 2024
3ab3d30
Update README
fmoletta Jan 18, 2024
dca9683
Merge branch 'cairo_pie_output' into cairo_pie_output_cairo_1
fmoletta Jan 18, 2024
cf3c5f8
Update README
fmoletta Jan 18, 2024
fea1e37
Fix
fmoletta Jan 18, 2024
2a9efb4
Merge branch 'main' into cairo_pie_output_cairo_1
fmoletta Jan 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -322,6 +322,7 @@ jobs:
cairo_programs/**/*.trace
cairo_programs/**/*.air_public_input
cairo_programs/**/*.air_private_input
cairo_programs/**/*.pie.zip
key: ${{ matrix.program-target }}-reference-trace-cache-${{ hashFiles('cairo_programs/**/*.cairo', 'examples/wasm-demo/src/array_sum.cairo') }}
restore-keys: ${{ matrix.program-target }}-reference-trace-cache-

Expand Down Expand Up @@ -364,7 +365,7 @@ jobs:
extra-args: '--proof_mode --air_public_input {program}.rs.air_public_input --air_private_input {program}.rs.air_private_input '
- program-target: cairo_test_programs
programs-dir: cairo_programs
extra-args: ''
extra-args: '--cairo_pie_output {program}.rs.pie.zip'
name: Compute memory and execution traces with cairo-vm
needs: [ build-programs, build-release ]
runs-on: ubuntu-22.04
Expand Down Expand Up @@ -401,6 +402,7 @@ jobs:
cairo_programs/**/*.trace
cairo_programs/**/*.air_public_input
cairo_programs/**/*.air_private_input
cairo_programs/**/*.pie.zip
key: ${{ matrix.program-target }}-release-trace-cache-${{ github.sha }}


Expand Down Expand Up @@ -501,6 +503,7 @@ jobs:
cairo_programs/**/*.trace
cairo_programs/**/*.air_public_input
cairo_programs/**/*.air_private_input
cairo_programs/**/*.pie.zip
key: ${{ matrix.program-target }}-reference-trace-cache-${{ hashFiles('cairo_programs/**/*.cairo', 'examples/wasm-demo/src/array_sum.cairo') }}
fail-on-cache-miss: true

Expand All @@ -512,6 +515,7 @@ jobs:
cairo_programs/**/*.trace
cairo_programs/**/*.air_public_input
cairo_programs/**/*.air_private_input
cairo_programs/**/*.pie.zip
key: ${{ matrix.program-target }}-release-trace-cache-${{ github.sha }}
fail-on-cache-miss: true

Expand All @@ -521,9 +525,10 @@ jobs:
PROOF=proof_mode
AIR_PUBLIC_INPUT=air_public_input
AIR_PRIVATE_INPUT=air_private_input
else
PIE=pie
fi
./vm/src/tests/compare_vm_state.sh trace memory $PROOF $AIR_PUBLIC_INPUT $AIR_PRIVATE_INPUT
./vm/src/tests/compare_vm_state.sh trace memory $PROOF
./vm/src/tests/compare_vm_state.sh trace memory $PROOF $AIR_PUBLIC_INPUT $AIR_PRIVATE_INPUT $PIE

wasm-demo:
name: Build the wasm demo
Expand Down
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,13 @@

#### Upcoming Changes

* feat: Add `cairo_pie_output` flag to `cairo1-run` [#1581] (https://github.com/lambdaclass/cairo-vm/pull/1581)

* feat: Add `cairo_pie_output` flag to `cairo_vm_cli` [#1578] (https://github.com/lambdaclass/cairo-vm/pull/1578)
* Fix serialization of CairoPie to be fully compatible with the python version
* Add `CairoPie::write_zip_file`
* Move handling of required and exclusive arguments in `cairo-vm-cli` to struct definition using clap derives

* feat: Add `air_private_input` flag to `cairo1-run` [#1559] (https://github.com/lambdaclass/cairo-vm/pull/1559)

* feat: Add `args` flag to `cairo1-run` [#15551] (https://github.com/lambdaclass/cairo-vm/pull/15551)
Expand Down
Loading
Loading