Skip to content

Commit 7c4a45c

Browse files
author
AztecBot
committed
[1 changes] chore: also print test output to stdout in CI (noir-lang/noir#6930)
fix: Non-determinism from under constrained checks (noir-lang/noir#6945) chore: use logs for benchmarking (noir-lang/noir#6911) chore: bump `noir-gates-diff` (noir-lang/noir#6944) chore: bump `noir-gates-diff` (noir-lang/noir#6943) fix: Show output of `test_program_is_idempotent` on failure (noir-lang/noir#6942) chore: delete a bunch of dead code from `noirc_evaluator` (noir-lang/noir#6939) feat: require trait function calls (`Foo::bar()`) to have the trait in scope (imported) (noir-lang/noir#6882) chore: Bump arkworks to version `0.5.0` (noir-lang/noir#6871)
1 parent 5e4b46d commit 7c4a45c

File tree

445 files changed

+18615
-3203
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

445 files changed

+18615
-3203
lines changed

.noir-sync-commit

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
f337992de96ef656681ebfc96a30c2c9c9b82a70
1+
000799244b6df18f6d3a1335d2e054c983afa0d1

noir/noir-repo/.github/critical_libraries_status/AztecProtocol/aztec-packages/noir-projects/noir-protocol-circuits/crates/blob.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/AztecProtocol/aztec-packages/noir-projects/noir-protocol-circuits/crates/parity-lib.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/AztecProtocol/aztec-packages/noir-projects/noir-protocol-circuits/crates/private-kernel-lib.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/AztecProtocol/aztec-packages/noir-projects/noir-protocol-circuits/crates/reset-kernel-lib.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/AztecProtocol/aztec-packages/noir-projects/noir-protocol-circuits/crates/rollup-lib.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/AztecProtocol/aztec-packages/noir-projects/noir-protocol-circuits/crates/types.failures.jsonl

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Critical Libraries Status
2+
3+
This directory contains one `.failures.jsonl` file per external directory that is checked by CI.
4+
CI will run the external repository tests and compare the test failures against those recorded
5+
in these files. If there's a difference, CI will fail.
6+
7+
This allows us to mark some tests as expected to fail if we introduce breaking changes.
8+
When tests are fixed on the external repository, CI will let us know that we need to remove
9+
the `.failures.jsonl` failures on our side.
10+
11+
The format of the `.failures.jsonl` files is one JSON per line with a failure:
12+
13+
```json
14+
{"suite":"one","name":"foo"}
15+
```
16+
17+
If it's expected that an external repository doesn't compile (because a PR introduces breaking changes
18+
to, say, the type system) you can remove the `.failures.jsonl` file for that repository and CI
19+
will pass again. Once the repository compiles again, CI will let us know and require us to put
20+
back the `.failures.jsonl` file.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{"event":"started","name":"one","test_count":1,"type":"suite"}
2+
{"event":"started","name":"foo","suite":"one","type":"test"}
3+
{"event":"failed","exec_time":0.05356625,"name":"foo","suite":"one","type":"test"}
4+
{"event":"ok","failed":0,"ignored":0,"passed":1,"type":"suite"}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"suite":"one","name":"foo"}

noir/noir-repo/.github/critical_libraries_status/noir-lang/ec/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/ec/.failures.jsonl.jq

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/eddsa/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/mimc/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/noir-bignum/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/noir-edwards/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/noir_base64/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/noir_bigcurve/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/noir_json_parser/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/noir_rsa/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/noir_sort/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/noir_string_search/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/schnorr/.failures.jsonl

Whitespace-only changes.

noir/noir-repo/.github/critical_libraries_status/noir-lang/sparse_array/.failures.jsonl

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
#!/bin/bash
2+
set -eu
3+
4+
# Usage: ./check_test_results.sh <expected.json> <actual.jsonl>
5+
# Compares the output of two test results of the same repository.
6+
# If any of the files doesn't exist or is empty, the script will consider that the test suite
7+
# couldn't be compiled.
8+
9+
function process_json_lines() {
10+
cat $1 | jq -c 'select(.type == "test" and .event == "failed") | {suite: .suite, name: .name}' | jq -s -c 'sort_by(.suite, .name) | .[]' > $1.jq
11+
}
12+
13+
if [ -f $1 ] && [ -f $2 ]; then
14+
# Both files exist, let's compare them
15+
$(process_json_lines $2)
16+
if ! diff $1 $2.jq; then
17+
echo "Error: test failures don't match expected failures"
18+
echo "Lines prefixed with '>' are new test failures (you could add them to '$1')"
19+
echo "Lines prefixed with '<' are tests that were expected to fail but passed (you could remove them from '$1')"
20+
fi
21+
elif [ -f $1 ]; then
22+
# Only the expected file exists, which means the actual test couldn't be compiled.
23+
echo "Error: external library tests couldn't be compiled."
24+
echo "You could rename '$1' to '$1.does_not_compile' if it's expected that the external library can't be compiled."
25+
exit -1
26+
elif [ -f $2 ]; then
27+
# Only the actual file exists, which means we are expecting the external library
28+
# not to compile but it did.
29+
echo "Error: expected external library not to compile, but it did."
30+
echo "You could create '$1' with these contents:"
31+
$(process_json_lines $2)
32+
cat $2.jq
33+
exit -1
34+
else
35+
# Both files don't exists, which means we are expecting the external library not
36+
# to compile, and it didn't, so all is good.
37+
exit 0
38+
fi

noir/noir-repo/.github/workflows/docs-pr.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
uses: actions/checkout@v4
5656

5757
- name: Setup toolchain
58-
uses: dtolnay/rust-toolchain@1.74.1
58+
uses: dtolnay/rust-toolchain@1.75.0
5959

6060
- uses: Swatinem/rust-cache@v2
6161
with:

noir/noir-repo/.github/workflows/formatting.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
uses: actions/checkout@v4
2626

2727
- name: Setup toolchain
28-
uses: dtolnay/rust-toolchain@1.74.1
28+
uses: dtolnay/rust-toolchain@1.75.0
2929
with:
3030
targets: x86_64-unknown-linux-gnu
3131
components: clippy, rustfmt
@@ -51,7 +51,7 @@ jobs:
5151
uses: actions/checkout@v4
5252

5353
- name: Setup toolchain
54-
uses: dtolnay/rust-toolchain@1.74.1
54+
uses: dtolnay/rust-toolchain@1.75.0
5555
with:
5656
targets: x86_64-unknown-linux-gnu
5757
components: clippy, rustfmt
@@ -89,7 +89,7 @@ jobs:
8989
uses: actions/checkout@v4
9090

9191
- name: Setup toolchain
92-
uses: dtolnay/rust-toolchain@1.74.1
92+
uses: dtolnay/rust-toolchain@1.75.0
9393

9494
- uses: Swatinem/rust-cache@v2
9595
with:

noir/noir-repo/.github/workflows/publish-acvm.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
ref: ${{ inputs.noir-ref }}
1919

2020
- name: Setup toolchain
21-
uses: dtolnay/rust-toolchain@1.74.1
21+
uses: dtolnay/rust-toolchain@1.75.0
2222

2323
# These steps are in a specific order so crate dependencies are updated first
2424
- name: Publish acir_field
@@ -74,4 +74,4 @@ jobs:
7474
WORKFLOW_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
7575
with:
7676
update_existing: true
77-
filename: .github/ACVM_PUBLISH_FAILED.md
77+
filename: .github/ACVM_PUBLISH_FAILED.md

noir/noir-repo/.github/workflows/publish-es-packages.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
ref: ${{ inputs.noir-ref }}
2525

2626
- name: Setup toolchain
27-
uses: dtolnay/rust-toolchain@1.74.1
27+
uses: dtolnay/rust-toolchain@1.75.0
2828

2929
- uses: Swatinem/rust-cache@v2
3030
with:
@@ -58,7 +58,7 @@ jobs:
5858
ref: ${{ inputs.noir-ref }}
5959

6060
- name: Setup toolchain
61-
uses: dtolnay/rust-toolchain@1.74.1
61+
uses: dtolnay/rust-toolchain@1.75.0
6262

6363
- uses: Swatinem/rust-cache@v2
6464
with:
@@ -95,7 +95,7 @@ jobs:
9595
ref: ${{ inputs.noir-ref }}
9696

9797
- name: Setup toolchain
98-
uses: dtolnay/rust-toolchain@1.74.1
98+
uses: dtolnay/rust-toolchain@1.75.0
9999

100100
- uses: Swatinem/rust-cache@v2
101101
with:

noir/noir-repo/.github/workflows/publish-nargo.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ jobs:
4646
echo "MACOSX_DEPLOYMENT_TARGET=$(xcrun -sdk macosx$(sw_vers -productVersion) --show-sdk-platform-version)" >> $GITHUB_ENV
4747
4848
- name: Setup toolchain
49-
uses: dtolnay/rust-toolchain@1.74.1
49+
uses: dtolnay/rust-toolchain@1.75.0
5050
with:
5151
targets: ${{ matrix.target }}
5252

@@ -120,7 +120,7 @@ jobs:
120120
ref: ${{ inputs.tag || env.GITHUB_REF }}
121121

122122
- name: Setup toolchain
123-
uses: dtolnay/rust-toolchain@1.74.1
123+
uses: dtolnay/rust-toolchain@1.75.0
124124
with:
125125
targets: ${{ matrix.target }}
126126

0 commit comments

Comments
 (0)