Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
87ce694
feat: bring in frontend
Autoparallel Feb 28, 2025
032827b
fix: some old tests
Autoparallel Feb 28, 2025
6a32cb9
cleanup
Autoparallel Feb 28, 2025
974e04d
lint + workflows
Autoparallel Feb 28, 2025
80fdc6f
Update check.yaml
Autoparallel Feb 28, 2025
31d7fbd
Update check.yaml
Autoparallel Feb 28, 2025
565a2eb
cleanup
Autoparallel Feb 28, 2025
7434f11
feat: noir circuits
Autoparallel Feb 28, 2025
a441dd0
recompiles again
Autoparallel Feb 28, 2025
23226f2
cleanup
Autoparallel Feb 28, 2025
58b6c97
small changes
Autoparallel Feb 28, 2025
9fc6f3e
WIP: abi improvements
Autoparallel Mar 1, 2025
1c935e2
got it working again
Autoparallel Mar 1, 2025
d11ae71
WIP: better functions
Autoparallel Mar 1, 2025
28c479f
feat: use ACIR ABI
Autoparallel Mar 1, 2025
a4b14b6
cleanup
Autoparallel Mar 2, 2025
41a22f7
feat: program counter getter
Autoparallel Mar 2, 2025
7a9de5f
cleanup
Autoparallel Mar 2, 2025
9e6f58b
refactor: remove `SwitchboardInputs`
Autoparallel Mar 2, 2025
30c1e45
cleanup
Autoparallel Mar 2, 2025
faca080
working NIVC
Autoparallel Mar 2, 2025
55cffa0
comments
Autoparallel Mar 2, 2025
97443bf
fix: constraints
Autoparallel Mar 2, 2025
d075dc4
tests: fix and add
Autoparallel Mar 2, 2025
6e62a01
feat: basic `Setup`
Autoparallel Mar 2, 2025
35447ba
feat: store setup
Autoparallel Mar 2, 2025
8fd06ca
test: compress verification
Autoparallel Mar 2, 2025
2088c67
cleanup api
Autoparallel Mar 2, 2025
2adca43
fix: constraints
Autoparallel Mar 2, 2025
bb7c6f8
bug: only poseidon fails
Autoparallel Mar 2, 2025
42142eb
fix: all passing again
Autoparallel Mar 3, 2025
393e0bc
feat: clean af
Autoparallel Mar 3, 2025
fbf9b2f
example: collatz vm
Autoparallel Mar 4, 2025
e03fc1e
feat: RAM and ROM variants
Autoparallel Mar 4, 2025
f5aca44
cleanup
Autoparallel Mar 6, 2025
74252c1
docs
Autoparallel Mar 6, 2025
679039f
docs: `error.rs`
Autoparallel Mar 6, 2025
0fbd432
continue cleanup
Autoparallel Mar 6, 2025
749647e
docs + WIP end to end
Autoparallel Mar 6, 2025
4e07069
fix: end to end
Autoparallel Mar 6, 2025
f255e7c
bug: handle end case
Autoparallel Mar 6, 2025
9cc21c0
fix: arity discrepancy
Autoparallel Mar 6, 2025
715ae53
cleanup + tests pass
Autoparallel Mar 6, 2025
e61973e
cleanup
Autoparallel Mar 6, 2025
265dcc5
formatting + typo
Autoparallel Mar 6, 2025
d09f784
Update check.yaml
Autoparallel Mar 7, 2025
d894221
refactor
Autoparallel Mar 7, 2025
fb54c8f
remove deps + error variants
Autoparallel Mar 7, 2025
03e1d9d
Update error.rs
Autoparallel Mar 7, 2025
2496afd
revert arity check
Autoparallel Mar 7, 2025
4a739be
Update Cargo.toml
Autoparallel Mar 7, 2025
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
74 changes: 74 additions & 0 deletions .github/workflows/check.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: Check

on:
pull_request:
types: [opened, synchronize, reopened]
push:
branches: [main]

jobs:
test:
name: Tests
runs-on: ubuntu-latest
steps:
- name: Install Nargo
uses: noir-lang/noirup@v0.1.3
with:
toolchain: v1.0.0-beta.2
- uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly
- name: Run tests
run: |
nargo compile --workspace
cargo test --all

format:
name: Format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly
components: rustfmt
- name: Check formatting
run: cargo fmt --all -- --check
- name: Install taplo
uses: taiki-e/install-action@cargo-binstall
- name: Install tools
run: cargo binstall --no-confirm taplo-cli
- name: Check TOML formatting
run: taplo fmt --check

lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly
components: clippy
- name: Run clippy
run: cargo clippy --all

deps:
name: Dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly
- name: Install cargo-binstall
uses: taiki-e/install-action@cargo-binstall
- name: Install tools
run: cargo binstall --no-confirm cargo-udeps
- name: Check unused dependencies
run: cargo udeps
51 changes: 43 additions & 8 deletions .rustfmt.toml
Original file line number Diff line number Diff line change
@@ -1,11 +1,46 @@
imports_granularity = "Crate"
group_imports = "StdExternalCrate"
# Rustfmt configuration
# Opinionated whitespace and tabs. The most important of these are imports and width settings.
# Others may want to borrow or change these to their own liking.
# https://rust-lang.github.io/rustfmt

format_code_in_doc_comments = true
# version-related
unstable_features=true
use_try_shorthand=true # replace any `try!` (2015 Rust) with `?`

use_field_init_shorthand = true
# misc formatting
condense_wildcard_suffixes =true # replace: (a,b,_,_)=(1, 2, 3, 4); -> (a,b,..)=(1, 2, 3, 4);
format_code_in_doc_comments =true # format code blocks in doc comments
format_macro_matchers =true # $a: ident -> $a:ident
format_strings =true # break and insert newlines for long string literals
match_block_trailing_comma =true # include comma in match blocks after '}'
normalize_comments =true # convert /*..*/ to //.. where possible
reorder_impl_items =true # move `type` and `const` declarations to top of impl block
struct_field_align_threshold=20 # align struct arguments' types vertically
use_field_init_shorthand =true # struct initialization short {x: x} -> {x}

wrap_comments = true
normalize_comments = true
comment_width = 80
edition = "2021"
# reduce whitespace
blank_lines_upper_bound=1 # default: 1. Sometimes useful to change to 0 to condense a file.
brace_style ="PreferSameLine" # prefer starting `{` without inserting extra \n
fn_single_line =true # if it's a short 1-liner, let it be a short 1-liner
match_arm_blocks =false # remove unnecessary {} in match arms
newline_style ="Unix" # not auto, we won the culture war. \n over \r\n
overflow_delimited_expr=true # prefer ]); to ]\n);
where_single_line =true # put where on a single line if possible

# imports preferences
group_imports ="StdExternalCrate" # create import groupings for std, external libs, and internal deps
imports_granularity="Crate" # aggressively group imports

# width settings: everything to 100
comment_width =100 # default: 80
inline_attribute_width=60 # inlines #[cfg(test)]\nmod test -> #[cfg(test)] mod test
max_width =100 # default: 100
use_small_heuristics ="Max" # don't ever newline short of `max_width`.
wrap_comments =true # wrap comments at `comment_width`
# format_strings = true # wrap strings at `max_length`

# tabs and spaces
hard_tabs =false # (def: false) use spaces over tabs
tab_spaces=2 # 2 > 4, it's just math.

ignore=["tls"]
Loading