Skip to content

Commit 12182b5

Browse files
AztecBotspalladino
andcommitted
feat(port): vendor bignum/bigcurve deps with fixes
Replay onto public `next` of **AztecProtocol/aztec-packages-private#623** (forward-port of the private `#170`, *feat: vendor bignum/bigcurve deps with fixes*), applied from a text-only patch since the source PR lives in the private repo. ## What this does - **Vendors** `noir-bignum-external-audit-fixes` + `noir_bigcurve-post-audit-fixes` into `noir-projects/noir-protocol-circuits/crates/{bignum,bigcurve}`. - **Repoints** the `blob` and `rollup-lib` deps from the git tags (`bignum v0.10.0` / `bigcurve v0.14.0`) to the vendored local paths. - **Fixes** the blob `point_compression` test: the regenerated BLS12-381 offset generator uses the opposite square root, so the hardcoded `is_greater` expected flag flips `true`→`false` (the dependent test fix `#328` from the private stack). 92 files, +28,486 / −6. The diff applied cleanly onto `origin/next` (`632095c`) with `git apply --3way` (exit 0). ## ⚠️ Regen debt — `pinned-build.tar.gz` `noir-projects/noir-protocol-circuits/pinned-build.tar.gz` is **deliberately excluded** (a ~70 MB binary). The vendored crates change the blob/rollup circuits, so this artifact **must be regenerated with this repo's own bb/noir** — the private tarball is not portable. CI's pinned-build check will flag it; I'll regenerate it while babysitting CI. Draft until then. ## Notes - No local toolchain here to compile the vendored crates against `next`'s noir — CI is the first real compile. - The source commit carried a `Closes #314` that pointed at a **private-repo** tracker; not copied here to avoid closing an unrelated public issue. Refs AztecProtocol/aztec-packages-private#314, AztecProtocol/aztec-packages-private#170. `ci-no-fail-fast` applied. --- *Created by [claudebox](https://claudebox.work/v2/sessions/d48394deee2dda17) · group: `slackbot`* Co-authored-by: Santiago Palladino <santiago@aztecprotocol.com>
1 parent 632095c commit 12182b5

95 files changed

Lines changed: 28491 additions & 8 deletions

Some content is hidden

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

docs/docs-developers/docs/tutorials/js_tutorials/aztecjs-getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ yarn init -y
2424
Next, add the TypeScript dependencies:
2525

2626
```sh
27-
yarn add typescript @types/node tsx
27+
yarn add "typescript@^5.3.3" @types/node tsx
2828
```
2929

3030
:::tip

docs/examples/ts/aztecjs_runner/run.sh

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,10 @@ setup_project() {
115115
[ ${#NPM_DEPS[@]} -gt 0 ] && yarn_add_with_retry "${NPM_DEPS[@]}"
116116
fi
117117

118-
yarn_add_with_retry -D typescript tsx
118+
# Pin typescript to the 5.x line used across the monorepo. An unpinned
119+
# `yarn add typescript` now resolves to the 7.x native port, whose package
120+
# layout has no lib/_tsc.js, so yarn 4's builtin compat patch fails to apply.
121+
yarn_add_with_retry -D "typescript@^5.3.3" tsx
119122

120123
# Copy tsconfig
121124
cp "$EXAMPLES_DIR/tsconfig.template.json" tsconfig.json
Lines changed: 189 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,189 @@
1+
# Changelog
2+
3+
## [0.14.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.13.2...v0.14.0) (2026-04-08)
4+
5+
6+
### ⚠ BREAKING CHANGES
7+
8+
* update to new stdlib interface ([#121](https://github.com/noir-lang/noir_bigcurve/issues/121))
9+
10+
### Bug Fixes
11+
12+
* Remove deprecated dep:: path prefix and unnecessary mut ([#112](https://github.com/noir-lang/noir_bigcurve/issues/112)) ([db37a3a](https://github.com/noir-lang/noir_bigcurve/commit/db37a3ad5a61fc3d378658ea535156aa7d69771e))
13+
* Update to new stdlib interface ([#121](https://github.com/noir-lang/noir_bigcurve/issues/121)) ([6021a13](https://github.com/noir-lang/noir_bigcurve/commit/6021a13653b10b776123520dca4294dbce25e34a))
14+
15+
## [0.13.2](https://github.com/noir-lang/noir_bigcurve/compare/v0.13.1...v0.13.2) (2026-02-20)
16+
17+
18+
### Features
19+
20+
* Update dependency versions for bignum and poseidon ([#109](https://github.com/noir-lang/noir_bigcurve/issues/109)) ([f116f40](https://github.com/noir-lang/noir_bigcurve/commit/f116f404ea2645ca84d92be1bf3d2a17b492a924))
21+
22+
## [0.13.1](https://github.com/noir-lang/noir_bigcurve/compare/v0.13.0...v0.13.1) (2026-02-19)
23+
24+
25+
### Bug Fixes
26+
27+
* Update dependencies ([#107](https://github.com/noir-lang/noir_bigcurve/issues/107)) ([f4de268](https://github.com/noir-lang/noir_bigcurve/commit/f4de26856d17ff4a1e2479e2e496293ed0dfedfe))
28+
29+
## [0.13.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.12.0...v0.13.0) (2026-02-06)
30+
31+
32+
### ⚠ BREAKING CHANGES
33+
34+
* update dependencies and bump CI Noir version ([#102](https://github.com/noir-lang/noir_bigcurve/issues/102))
35+
36+
### Bug Fixes
37+
38+
* Enforce correctness of generator points ([#104](https://github.com/noir-lang/noir_bigcurve/issues/104)) ([e834c82](https://github.com/noir-lang/noir_bigcurve/commit/e834c82a1f10521ae29b839b589e3645f7a1b30e))
39+
40+
41+
### Miscellaneous Chores
42+
43+
* Update dependencies and bump CI Noir version ([#102](https://github.com/noir-lang/noir_bigcurve/issues/102)) ([44064d0](https://github.com/noir-lang/noir_bigcurve/commit/44064d02f7c1e036751c9756b0b50a3704cd02e3))
44+
45+
## [0.12.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.11.0...v0.12.0) (2025-11-14)
46+
47+
48+
### ⚠ BREAKING CHANGES
49+
50+
* update bignum dependency to version 0.8.2 ([#95](https://github.com/noir-lang/noir_bigcurve/issues/95))
51+
52+
### Bug Fixes
53+
54+
* Add `ScalarField` WNAF validation for `N >= 64` ([#80](https://github.com/noir-lang/noir_bigcurve/issues/80)) ([c13415f](https://github.com/noir-lang/noir_bigcurve/commit/c13415f175bfe938c8507943a37180e972a6c9ce))
55+
56+
57+
### Miscellaneous Chores
58+
59+
* Update bignum dependency to version 0.8.2 ([#95](https://github.com/noir-lang/noir_bigcurve/issues/95)) ([cecb6b6](https://github.com/noir-lang/noir_bigcurve/commit/cecb6b62b85be0907e85c13411d8359c797f0d7f))
60+
61+
## [0.11.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.10.0...v0.11.0) (2025-08-14)
62+
63+
64+
### ⚠ BREAKING CHANGES
65+
66+
* bump to use `bignum` v0.8.0 ([#93](https://github.com/noir-lang/noir_bigcurve/issues/93))
67+
68+
### Miscellaneous Chores
69+
70+
* Bump to use `bignum` v0.8.0 ([#93](https://github.com/noir-lang/noir_bigcurve/issues/93)) ([2965d8b](https://github.com/noir-lang/noir_bigcurve/commit/2965d8b9e3d7ed30fb91747dbb4f57ee39b385d0))
71+
72+
## [0.10.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.9.0...v0.10.0) (2025-07-28)
73+
74+
75+
### ⚠ BREAKING CHANGES
76+
77+
* bump bignum to 0.7.4 ([#88](https://github.com/noir-lang/noir_bigcurve/issues/88))
78+
* make `derive_curve_impl` public ([#82](https://github.com/noir-lang/noir_bigcurve/issues/82))
79+
* remove some methods from `BigCurveTrait` ([#69](https://github.com/noir-lang/noir_bigcurve/issues/69))
80+
* create separate `BigCurveTrait` implementations for each curve ([#65](https://github.com/noir-lang/noir_bigcurve/issues/65))
81+
82+
### Features
83+
84+
* Add benchmarks ([#87](https://github.com/noir-lang/noir_bigcurve/issues/87)) ([54de613](https://github.com/noir-lang/noir_bigcurve/commit/54de613621018cd5e775b8a899c7e40013cda3f7))
85+
* Create separate `BigCurveTrait` implementations for each curve ([#65](https://github.com/noir-lang/noir_bigcurve/issues/65)) ([7cff316](https://github.com/noir-lang/noir_bigcurve/commit/7cff31643c621e272ffe93a54beda8f5cc105f43))
86+
* Make `derive_curve_impl` public ([#82](https://github.com/noir-lang/noir_bigcurve/issues/82)) ([4cfe4f6](https://github.com/noir-lang/noir_bigcurve/commit/4cfe4f6a69aee11775a33fc21d61487e8cdb5cc8))
87+
* Remove conditional select ([#74](https://github.com/noir-lang/noir_bigcurve/issues/74)) ([31ae850](https://github.com/noir-lang/noir_bigcurve/commit/31ae8508547eed12ecc2a614d7cdbcb147458072))
88+
* Remove CurveParamsTrait ([#73](https://github.com/noir-lang/noir_bigcurve/issues/73)) ([59bde3b](https://github.com/noir-lang/noir_bigcurve/commit/59bde3b603c859920f9d99b20bc44793a52d49cb))
89+
* Remove Trait suffix from BigCurveTrait ([#71](https://github.com/noir-lang/noir_bigcurve/issues/71)) ([4aed759](https://github.com/noir-lang/noir_bigcurve/commit/4aed759b843815af915d91bb2252bed6debdae9c))
90+
* Use to_le_bytes and bitwise operations to replace to_le_radix ([#75](https://github.com/noir-lang/noir_bigcurve/issues/75)) ([6adb77c](https://github.com/noir-lang/noir_bigcurve/commit/6adb77cdd13805f0b3d1fff6b4747fbdfa2dde75))
91+
92+
93+
### Bug Fixes
94+
95+
* Avoid using private export of `ScalarField` in macro ([#89](https://github.com/noir-lang/noir_bigcurve/issues/89)) ([200362a](https://github.com/noir-lang/noir_bigcurve/commit/200362a8679758e0c634fdd3b3b8b9af9bb02a07))
96+
* Bump bignum v0.7.5 ([#91](https://github.com/noir-lang/noir_bigcurve/issues/91)) ([8390174](https://github.com/noir-lang/noir_bigcurve/commit/83901749ee0c9073bef2c03f4eaa31580dda7e6f))
97+
98+
99+
### Miscellaneous Chores
100+
101+
* Bump bignum to 0.7.4 ([#88](https://github.com/noir-lang/noir_bigcurve/issues/88)) ([2dca59a](https://github.com/noir-lang/noir_bigcurve/commit/2dca59a57aa13c5f4f796564d077106cbf9d3c9a))
102+
* Remove some methods from `BigCurveTrait` ([#69](https://github.com/noir-lang/noir_bigcurve/issues/69)) ([832fabc](https://github.com/noir-lang/noir_bigcurve/commit/832fabc210cafcdbbb1e0fa4dc4327f1bf0aaf99))
103+
104+
## [0.9.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.8.0...v0.9.0) (2025-06-06)
105+
106+
107+
### ⚠ BREAKING CHANGES
108+
109+
* bump bignum version to 0.7.3 ([#49](https://github.com/noir-lang/noir_bigcurve/issues/49))
110+
* bump bignum to 0.7.2 ([#47](https://github.com/noir-lang/noir_bigcurve/issues/47))
111+
112+
### Features
113+
114+
* Bump bignum to 0.7.2 ([#47](https://github.com/noir-lang/noir_bigcurve/issues/47)) ([1eaae46](https://github.com/noir-lang/noir_bigcurve/commit/1eaae46ca270a340f57399232e3710730632c03e))
115+
116+
117+
### Bug Fixes
118+
119+
* Don't cast numbers to bool ([#51](https://github.com/noir-lang/noir_bigcurve/issues/51)) ([349c60b](https://github.com/noir-lang/noir_bigcurve/commit/349c60b77b7f769af73271036f2dd27eae78ae36))
120+
* Make necessary items public ([#54](https://github.com/noir-lang/noir_bigcurve/issues/54)) ([de513bb](https://github.com/noir-lang/noir_bigcurve/commit/de513bbb2ebc6158d565b49b6f127a95fda7388c))
121+
122+
123+
### Miscellaneous Chores
124+
125+
* Bump bignum version to 0.7.3 ([#49](https://github.com/noir-lang/noir_bigcurve/issues/49)) ([4d48ebf](https://github.com/noir-lang/noir_bigcurve/commit/4d48ebfb36c4681463eb67dbae807ecab413a094))
126+
127+
## [0.8.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.7.0...v0.8.0) (2025-05-16)
128+
129+
130+
### ⚠ BREAKING CHANGES
131+
132+
* bump to bignum v0.7.1 ([#46](https://github.com/noir-lang/noir_bigcurve/issues/46))
133+
134+
### Features
135+
136+
* Bump to bignum v0.7.1 ([#46](https://github.com/noir-lang/noir_bigcurve/issues/46)) ([c0b3997](https://github.com/noir-lang/noir_bigcurve/commit/c0b3997f986a0724fa14cfe4645c376a8e84a243))
137+
138+
139+
### Bug Fixes
140+
141+
* Update to use poseidon library ([#44](https://github.com/noir-lang/noir_bigcurve/issues/44)) ([b12d659](https://github.com/noir-lang/noir_bigcurve/commit/b12d6594c650f08829463251c6c0064dc9a955c6))
142+
143+
## [0.7.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.6.0...v0.7.0) (2025-02-25)
144+
145+
146+
### ⚠ BREAKING CHANGES
147+
148+
* bump bignum version to `v0.6.0` ([#40](https://github.com/noir-lang/noir_bigcurve/issues/40))
149+
150+
### Miscellaneous Chores
151+
152+
* Bump bignum version to `v0.6.0` ([#40](https://github.com/noir-lang/noir_bigcurve/issues/40)) ([630ca96](https://github.com/noir-lang/noir_bigcurve/commit/630ca96be2eaf2ace1e087cf5bd251b86d2800bc))
153+
154+
## [0.6.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.5.2...v0.6.0) (2025-02-09)
155+
156+
157+
### ⚠ BREAKING CHANGES
158+
159+
* bump bignum to `v0.5.0` ([#30](https://github.com/noir-lang/noir_bigcurve/issues/30))
160+
161+
### Features
162+
163+
* Bump bignum to `v0.5.0` ([#30](https://github.com/noir-lang/noir_bigcurve/issues/30)) ([8b88fb7](https://github.com/noir-lang/noir_bigcurve/commit/8b88fb7bc2092ca51fedcddd31ee225d6ea971a8))
164+
165+
## [0.5.2](https://github.com/noir-lang/noir_bigcurve/compare/v0.5.1...v0.5.2) (2024-12-21)
166+
167+
168+
### Bug Fixes
169+
170+
* Update format strings to use new format ([#22](https://github.com/noir-lang/noir_bigcurve/issues/22)) ([b8bd97c](https://github.com/noir-lang/noir_bigcurve/commit/b8bd97c7510e9ea7303c8e8c16719dbb42374596))
171+
172+
## [0.5.1](https://github.com/noir-lang/noir_bigcurve/compare/v0.5.0...v0.5.1) (2024-11-30)
173+
174+
175+
### Bug Fixes
176+
177+
* Update Tests ([#13](https://github.com/noir-lang/noir_bigcurve/issues/13)) ([e1f1c9c](https://github.com/noir-lang/noir_bigcurve/commit/e1f1c9c985c29213b17d965266e4f30a67b59766))
178+
179+
## [0.5.0](https://github.com/noir-lang/noir_bigcurve/compare/v0.3.1...v0.5.0) (2024-11-08)
180+
181+
182+
### ⚠ BREAKING CHANGES
183+
184+
* update to noir_bignum v0.4.0 ([#10](https://github.com/noir-lang/noir_bigcurve/issues/10))
185+
186+
### Features
187+
188+
* Added predefined curves ([#8](https://github.com/noir-lang/noir_bigcurve/issues/8)) ([582dc80](https://github.com/noir-lang/noir_bigcurve/commit/582dc808886d146d40aee334bbc200ee858ad747))
189+
* Update to noir_bignum v0.4.0 ([#10](https://github.com/noir-lang/noir_bigcurve/issues/10)) ([3930699](https://github.com/noir-lang/noir_bigcurve/commit/3930699251c55ebc45881536723a44faa3fd15ed))
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[package]
2+
name = "noir_bigcurve"
3+
type = "lib"
4+
authors = [""]
5+
compiler_version = ">=1.0.0"
6+
7+
[dependencies]
8+
bignum = { path = "../bignum" }
9+
poseidon = { git = "https://github.com/noir-lang/poseidon", tag = "v0.3.0" }

0 commit comments

Comments
 (0)