Skip to content

Commit eb18763

Browse files
authored
release: v0.12.0 (#1399)
1 parent ac1472a commit eb18763

File tree

16 files changed

+137
-56
lines changed

16 files changed

+137
-56
lines changed

CHANGELOG.md

+95-4
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,97 @@
1+
<a name="v0.12.0"></a>
2+
## [v0.12.0] - 2025-01-23
3+
### Build
4+
- modify workflows for new CI slack bot ([#1277](https://github.com/Consensys/gnark/issues/1277))
5+
- **deps:** bump golang.org/x/crypto from 0.26.0 to 0.31.0 ([#1346](https://github.com/Consensys/gnark/issues/1346))
6+
7+
### Chore
8+
- use max builtin
9+
- go mod update
10+
- generate changelog
11+
- update citation
12+
- update hardcoded version
13+
- fix some struct names in comment ([#1370](https://github.com/Consensys/gnark/issues/1370))
14+
- fix typos ([#1371](https://github.com/Consensys/gnark/issues/1371))
15+
- fix error message ([#1337](https://github.com/Consensys/gnark/issues/1337))
16+
- use errors.New to replace fmt.Errorf with no parameters ([#1338](https://github.com/Consensys/gnark/issues/1338))
17+
- fix some problematic function names in comment ([#1334](https://github.com/Consensys/gnark/issues/1334))
18+
- fix some struct and interface names in comment ([#1329](https://github.com/Consensys/gnark/issues/1329))
19+
- remove duplicate nil-check ([#1355](https://github.com/Consensys/gnark/issues/1355))
20+
- fix some function names in comment ([#1304](https://github.com/Consensys/gnark/issues/1304))
21+
- Replace fmt.Printf calls with warning logs ([#1305](https://github.com/Consensys/gnark/issues/1305))
22+
- Pedersen verification key reference field ([#1295](https://github.com/Consensys/gnark/issues/1295))
23+
- lint generated files ([#1289](https://github.com/Consensys/gnark/issues/1289))
24+
- up gnark-crypto ([#1274](https://github.com/Consensys/gnark/issues/1274))
25+
26+
### Doc
27+
- add audit report ([#1342](https://github.com/Consensys/gnark/issues/1342))
28+
29+
### Docs
30+
- Change copyright year to 2025 (not autogenerated) ([#1388](https://github.com/Consensys/gnark/issues/1388))
31+
- less verbose Apache 2 header, latest bavard ([#1344](https://github.com/Consensys/gnark/issues/1344))
32+
- add input packing example ([#1311](https://github.com/Consensys/gnark/issues/1311))
33+
- update api doc following audit suggestions ([#1291](https://github.com/Consensys/gnark/issues/1291))
34+
- final audit report from LA ([#1283](https://github.com/Consensys/gnark/issues/1283))
35+
36+
### Feat
37+
- settable hasher for MiMC ([#1345](https://github.com/Consensys/gnark/issues/1345))
38+
- 4-dimensional fake GLV ([#1296](https://github.com/Consensys/gnark/issues/1296))
39+
40+
### Feat
41+
- add ripemd160 hash function with permutation ([#1120](https://github.com/Consensys/gnark/issues/1120))
42+
- direct multivariate polynomial evaluation in non-native ([#1299](https://github.com/Consensys/gnark/issues/1299))
43+
- update to latest gnark-crypto
44+
- replace stats gob format with csv for easier diffs ([#1276](https://github.com/Consensys/gnark/issues/1276))
45+
- **bls12-381:** pairing using direct Fp12 + non-native `Eval()` ([#1349](https://github.com/Consensys/gnark/issues/1349))
46+
47+
### Fix
48+
- stashed typo fixes for v0.12 ([#1398](https://github.com/Consensys/gnark/issues/1398))
49+
- add G2 membership check for constant points ([#1397](https://github.com/Consensys/gnark/issues/1397))
50+
- do not return unused sign ([#1385](https://github.com/Consensys/gnark/issues/1385))
51+
- typos in documentation files ([#1369](https://github.com/Consensys/gnark/issues/1369))
52+
- spellchecker ([#1359](https://github.com/Consensys/gnark/issues/1359))
53+
- typos in documentation files ([#1327](https://github.com/Consensys/gnark/issues/1327))
54+
- tinyfield generation with updated gnark-crypto ([#1358](https://github.com/Consensys/gnark/issues/1358))
55+
- avoid linking icicle dependent files when tag not provided ([#1352](https://github.com/Consensys/gnark/issues/1352))
56+
- NNA quotient length computation edge cases ([#1340](https://github.com/Consensys/gnark/issues/1340))
57+
- initialize public committed ([#1317](https://github.com/Consensys/gnark/issues/1317))
58+
- sanitize groth16 verification key reading ([#1307](https://github.com/Consensys/gnark/issues/1307))
59+
- expmod precompile if modulus is 1 ([#1294](https://github.com/Consensys/gnark/issues/1294))
60+
- allow only v=0 or v=1 ([#1293](https://github.com/Consensys/gnark/issues/1293))
61+
- fix slice init length ([#1288](https://github.com/Consensys/gnark/issues/1288))
62+
63+
### Optim
64+
- avoid div in millerLoopAndFinalExpResult ([#1363](https://github.com/Consensys/gnark/issues/1363))
65+
66+
### Perf
67+
- `PairingCheck` for BN254, BLS12-381, BLS12-377 and BW6-761 ([#1365](https://github.com/Consensys/gnark/issues/1365))
68+
- G1/2 membership using Eval ([#1356](https://github.com/Consensys/gnark/issues/1356))
69+
- using non-native Eval for curve arithmetic ([#1331](https://github.com/Consensys/gnark/issues/1331))
70+
- normalize the random linear combination in logderivarg ([#1333](https://github.com/Consensys/gnark/issues/1333))
71+
- BW6 pairing computation using non-native Eval ([#1312](https://github.com/Consensys/gnark/issues/1312))
72+
- fast path operations for small non-native values ([#1326](https://github.com/Consensys/gnark/issues/1326))
73+
- **bn254:** include G2 membership check in ML ([#1387](https://github.com/Consensys/gnark/issues/1387))
74+
- **emulated:** small perf on doubleAndAdd ([#1386](https://github.com/Consensys/gnark/issues/1386))
75+
76+
### Perf
77+
- Pairing on BN254 using direct Fp12 extension and non-native `Eval()` ([#1339](https://github.com/Consensys/gnark/issues/1339))
78+
79+
### Refactor
80+
- move poseidon2 to permutation package ([#1353](https://github.com/Consensys/gnark/issues/1353))
81+
82+
### Test
83+
- add scalar mul to stats ([#1275](https://github.com/Consensys/gnark/issues/1275))
84+
85+
### Pull Requests
86+
- Merge pull request [#1298](https://github.com/Consensys/gnark/issues/1298) from Consensys/build/gnark-crypto
87+
88+
189
<a name="v0.11.0"></a>
290
## [v0.11.0] - 2024-09-06
391
### Build
492
- update runner and go version ([#1260](https://github.com/Consensys/gnark/issues/1260))
593

694
### Chore
7-
- update version
895
- explicit IO methods in interfaces ([#1266](https://github.com/Consensys/gnark/issues/1266))
996
- update gnark-crypto module
1097
- clean old definition
@@ -57,6 +144,9 @@
57144
### Feat
58145
- implement FixedLengthSum of sha2 ([#821](https://github.com/Consensys/gnark/issues/821))
59146

147+
### Fix
148+
- Build on 32-bit arch would raise int overflow https://github.com/Consensys/gnark/issues/1192 ([#1195](https://github.com/Consensys/gnark/issues/1195))
149+
60150
### Fix
61151
- remove redundant select
62152
- variable modulus subtraction padding ([#1200](https://github.com/Consensys/gnark/issues/1200))
@@ -116,9 +206,6 @@
116206
- **pairing:** fix benchmarks
117207
- **uints:** constrain valueOf ([#1139](https://github.com/Consensys/gnark/issues/1139))
118208

119-
### Fix
120-
- Build on 32-bit arch would raise int overflow https://github.com/Consensys/gnark/issues/1192 ([#1195](https://github.com/Consensys/gnark/issues/1195))
121-
122209
### Perf
123210
- eliminate final exp in bls12-381 optimized
124211
- eliminate final exp in bls12-377
@@ -171,6 +258,9 @@
171258
- **bw6:** remove benchmark
172259
- **bw6:** apply review suggestion
173260

261+
### Release
262+
- v0.11.0 ([#1272](https://github.com/Consensys/gnark/issues/1272))
263+
174264
### Style
175265
- fixed wrong EcMul comment
176266
- fixed comment
@@ -3199,6 +3289,7 @@
31993289
- Merge pull request [#5](https://github.com/Consensys/gnark/issues/5) from ConsenSys/go1.14_deps
32003290

32013291

3292+
[v0.12.0]: https://github.com/Consensys/gnark/compare/v0.11.0...v0.12.0
32023293
[v0.11.0]: https://github.com/Consensys/gnark/compare/v0.10.0...v0.11.0
32033294
[v0.10.0]: https://github.com/Consensys/gnark/compare/v0.9.1...v0.10.0
32043295
[v0.9.1]: https://github.com/Consensys/gnark/compare/v0.9.0...v0.9.1

README.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -192,17 +192,17 @@ If you use `gnark` in your research a citation would be appreciated.
192192
Please use the following BibTeX to cite the most recent release.
193193

194194
```bib
195-
@software{gnark-v0.11.0,
195+
@software{gnark-v0.12.0,
196196
author = {Gautam Botrel and
197197
Thomas Piellard and
198198
Youssef El Housni and
199199
Ivo Kubjas and
200200
Arya Tabaie},
201-
title = {Consensys/gnark: v0.11.0},
202-
month = sep,
203-
year = 2024,
201+
title = {Consensys/gnark: v0.12.0},
202+
month = jan,
203+
year = 2025,
204204
publisher = {Zenodo},
205-
version = {v0.11.0},
205+
version = {v0.12.0},
206206
doi = {10.5281/zenodo.5819104},
207207
url = {https://doi.org/10.5281/zenodo.5819104}
208208
}

backend/groth16/bls12-377/verify.go

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

backend/groth16/bls12-381/verify.go

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

backend/groth16/bls24-315/verify.go

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

backend/groth16/bls24-317/verify.go

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

backend/groth16/bn254/verify.go

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

backend/groth16/bw6-633/verify.go

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

backend/groth16/bw6-761/verify.go

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

constraint/gkr.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import (
44
"fmt"
55
"sort"
66

7-
"github.com/consensys/gnark-crypto/utils"
87
"github.com/consensys/gnark/constraint/solver"
98
"github.com/consensys/gnark/internal/algo_utils"
109
)
@@ -102,7 +101,7 @@ func (d *GkrInfo) Compile(nbInstances int) (GkrPermutations, error) {
102101
oldW := d.Circuit[oldI]
103102

104103
if !oldW.IsInput() {
105-
d.MaxNIns = utils.Max(d.MaxNIns, len(oldW.Inputs))
104+
d.MaxNIns = max(d.MaxNIns, len(oldW.Inputs))
106105
}
107106

108107
for j := range oldW.Dependencies {

doc.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ import (
2222
"github.com/consensys/gnark-crypto/ecc"
2323
)
2424

25-
var Version = semver.MustParse("0.11.0")
25+
var Version = semver.MustParse("0.12.0")
2626

2727
// Curves return the curves supported by gnark
2828
func Curves() []ecc.ID {

docs/CITATION.bib

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
@software{gnark-v0.11.0,
1+
@software{gnark-v0.12.0,
22
author = {Gautam Botrel and
33
Thomas Piellard and
44
Youssef El Housni and
55
Ivo Kubjas and
66
Arya Tabaie},
7-
title = {ConsenSys/gnark: v0.11.0},
8-
month = sep,
9-
year = 2024,
7+
title = {ConsenSys/gnark: v0.12.0},
8+
month = jan,
9+
year = 2025,
1010
publisher = {Zenodo},
11-
version = {v0.11.0},
11+
version = {v0.12.0},
1212
doi = {10.5281/zenodo.5819104},
1313
url = {https://doi.org/10.5281/zenodo.5819104}
1414
}

go.mod

+7-7
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@ go 1.22
55
toolchain go1.22.6
66

77
require (
8-
github.com/bits-and-blooms/bitset v1.14.2
8+
github.com/bits-and-blooms/bitset v1.20.0
99
github.com/blang/semver/v4 v4.0.0
10-
github.com/consensys/bavard v0.1.25
10+
github.com/consensys/bavard v0.1.27
1111
github.com/consensys/compress v0.2.5
12-
github.com/consensys/gnark-crypto v0.14.1-0.20250116204316-e7fd38b0a0a6
12+
github.com/consensys/gnark-crypto v0.15.0
1313
github.com/fxamacker/cbor/v2 v2.7.0
1414
github.com/google/go-cmp v0.6.0
1515
github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8
@@ -18,10 +18,10 @@ require (
1818
github.com/leanovate/gopter v0.2.11
1919
github.com/ronanh/intcomp v1.1.0
2020
github.com/rs/zerolog v1.33.0
21-
github.com/stretchr/testify v1.9.0
22-
golang.org/x/crypto v0.31.0
21+
github.com/stretchr/testify v1.10.0
22+
golang.org/x/crypto v0.32.0
2323
golang.org/x/exp v0.0.0-20240823005443-9b4947da3948
24-
golang.org/x/sync v0.8.0
24+
golang.org/x/sync v0.10.0
2525
)
2626

2727
require (
@@ -31,7 +31,7 @@ require (
3131
github.com/mmcloughlin/addchain v0.4.0 // indirect
3232
github.com/pmezard/go-difflib v1.0.0 // indirect
3333
github.com/x448/float16 v0.8.4 // indirect
34-
golang.org/x/sys v0.28.0 // indirect
34+
golang.org/x/sys v0.29.0 // indirect
3535
gopkg.in/yaml.v3 v3.0.1 // indirect
3636
rsc.io/tmplfunc v0.0.3 // indirect
3737
)

0 commit comments

Comments
 (0)