Releases: lambdaclass/lambdaworks
Releases · lambdaclass/lambdaworks
v0.14.0 Reckless Ramen
What's Changed
- Add Plonky3 in the Readme Table in [#1035](#1035)
- feat: support formatter alternate display in [#1049](#1049)
- Fix Readme Link in [#1052](#1052)
- Implement HasDefaultTranscript for baby bear u32 degree 4 extension field in [#1055](#1055)
- Add copy to BabyBear u32 Extension Field struct in [#1056](#1056)
- Refactor transcript for dyn - Remove generic function in [#1057](#1057)
- Change step_size from constant to function to support dyn in [#1058](#1058)
- Make AIR Dynamic, and embed them along the Prover in [#1059](#1059)
- Refactor/remove naive pairing in [#1068](#1068)
- Refactor/babybear u32 only in [#1069](#1069)
- refactor: Extract common serialization helpers to traits.rs in [#1070](#1070)
- Curve optimizations in [#1076](#1076)
- Field optimizations in [#1078](#1078)
- Fix slow sqrt in [#1079](#1079)
- Fix/doc warnings in [#1074](#1074)
- docs: Add Getting Started guide and Architecture overview (P0) in [#1075](#1075)
- docs: improve README documentation with quick start guides in [#1081](#1081)
- Add FROST 2-of-2 threshold signature example (RFC 9591) in [#1080](#1080)
- feat(examples): Add Reed-Solomon codes educational example in [#1082](#1082)
- feat: Add XMSS signature scheme example in [#1083](#1083)
- fix(math): Guard polynomial division and xgcd against zero divisors in [#1085](#1085)
- fix(crypto): Guard sample_u64 against zero upper_bound in [#1088](#1088)
- fix(stark): Return error when multi_prove receives empty airs in [#1087](#1087)
- perf(math): Pre-allocate vector in DenseMultilinearPolynomial::merge in [#1089](#1089)
- perf(stark): Optimize Table::columns with pre-allocation in [#1090](#1090)
- feat(math): Add IsFFTField and optimized extensions for Goldilocks in [#1101](#1101)
- Optimize MSM signed digit recoding with flat allocation in [#1098](#1098)
- fix(crypto): Correct hash_to_field conversion issues in [#1091](#1091)
- fix(bls12-381): Fix critical bugs in G1/G2 decompression in [#1093](#1093)
- fix(bn254): Fix error handling and add G2 subgroup check in [#1094](#1094)
- fix(crypto): Address merkle tree and related issues in [#1092](#1092)
- feat: Add AI code reviewers for PRs in [#1103](#1103)
- Optimize polynomial operations to reduce cloning and allocations in [#1102](#1102)
- Stark prover profiling in [#1100](#1100)
- fix(stark): Validate grinding_factor to prevent overflow in [#1086](#1086)
- Fix/transcript sampling bias state in [#1096](#1096)
- fix: Implement ByteConversion for P448 Goldilocks U56x8 in [#1106](#1106)
- feat: Add ECDSA signature scheme for secp256k1 in [#1072](#1072)
- pin miden-vm to lambdaworks-backup branch in [#1115](#1115)
- Feat/goldilocks hybrid and bowers fft in [#1104](#1104)
- Ignore slow tests in [#1117](#1117)
- fix(stark): Add critical input validation and fix security calculations in [#1095](#1095)
- feat(math): Add Goldilocks hybrid field implementation in [#1112](#1112)
- Use const bounds in multiplication for LLVM loop unrolling in [#1108](#1108)
- fix(error-handling): Replace bare unwrap() with descriptive expect() in [#1118](#1118)
- Fix/error handling cleanup in [#1116](#1116)
- feat(examples): Add BLS signatures example in [#1113](#1113)
- feat(math): Add x86-64 assembly optimizations for field arithmetic in [#1127](#1127)
- perf(math): Add #[inline] attributes to hot field arithmetic paths in [#1128](#1128)
- feat(polynomial): enhance multilinear polynomial operations in [#1122](#1122)
- refactor(field): Rename representative to canonical in [#1130](#1130)
- fix(plonk): add critical proof element validation checks in [#1126](#1126)
- perf: enable LTO and adaptive MSM window size selection in [#1123](#1123)
- perf(circle): optimize FFT with in-place permutation in [#1124](#1124)
- feat(polynomial): add sparse polynomial implementation in [#1120](#1120)
- fix sparse polynomial to use renamed canonical() method in [#1138](#1138)
- feat(field): add KoalaBear prime field and degree 4 extension in [#1136](#1136)
- docs: update READMEs to reflect new capabilities in [[#1139](https://github.com/lambdac...
v0.13.0: Elliptic Éclair
What's Changed
- Optimize poly division in #985
- Update docs in #986
- Remove Metal feature in #993
- Update Readme in #987
- Add Binary Field in #984
- fix: Circom Adapter (Groth16 over BLS12-381) in #991
- Add RSA and Schnorr Examples in #989
- fix(coset): shl overflow when getting the points in #994
- Pohlig Hellman Attack Example in #995
- Update README.md in #996
- feat(fft): add fast mul for fft friendly fields in #997
- Improve documentation in #999
- refactor: remove
Defaultcontraint in merkle tree trait in #1004 - Add big uint conversion in #1002
- Feat/fast division in #1001
- Add quadratic and cubic sumcheck in #1003
- fix clippy for new rust version in #1013
- Fix bincode repo change in #1023
- Add GKR Protocol in #1011
- Fix clippy in #1029
- Add modulus range check when creating
FieldElementfrom hex in #1020 - Add new unchecked in #1024
New Contributors
- @0xLucqs made their first contribution in #994
- @MarcosNicolau made their first contribution in #1004
Full Changelog: v0.12.0...v0.13.0
v0.12.0: Mellow Moussaka
What's Changed
- Circle starks by @ColoCarletti in #924
- Add Rescue Prime Optimized by @jotabulacios in #930
- Add pairing BLS12 377 by @jotabulacios in #933
- Refactor AIR by @ColoCarletti in #937
- Fix Cargo clippy by @nicole-graus in #944
- Stark continuous read-only memory example by @ColoCarletti in #940
- Baby bear extension by @nicole-graus in #942
- Refactor STARK for small fields by @ColoCarletti in #945
- Add Montgomery u32 backend for BabyBear by @jotabulacios in #948
- Update Merkle Tree CLI example by @jotabulacios in #955
- Add LogUp stark memory example by @nicole-graus in #946
- Add input check on BabySnark by @jotabulacios in #960
- chore: Add Security Reporting Instructions by @lferrigno in #966
- Add quartic extension baby bear u32 by @nicole-graus in #956
- Change elliptic curve new point function by @nicole-graus in #970
- Fix field division by handling division by zero by @jotabulacios in #969
- Remove feature serde binary for field element base type by @nicole-graus in #975
- Add sumcheck protocol by @jotabulacios in #973
- Fix sample field element for default transcript. by @ColoCarletti in #976
- Sumcheck integration by @jotabulacios in #977
- Refactor in crates folder by @pablodeymo in #979
- fix links by @diegokingston in #980
- Release v0.12.0: Mellow Moussaka by @diegokingston in #981
New Contributors
- @lferrigno made their first contribution in #966
Full Changelog: v0.11.0...v0.12.0
v0.11.0: Hasty Hamburger
What's Changed
- Compression for bls12381 by @lazcanoluca in #904
- Change ci runner by @ColoCarletti in #906
- Improving docs by @diegokingston in #901
- add new bootcamp by @diegokingston in #869
- add learning resources by @diegokingston in #878
- Compression/Decompression of G2 Points for BLS12_381 by @ColoCarletti in #909
- Add kzg docs by @diegokingston in #910
- Optimize bn254 by @jotabulacios in #899
- bn254 sqrt and decompression by @nicole-graus in #905
- Add curves by @diegokingston in #912
- Add secq256k1 Curve by @nicole-graus in #915
- ci: split coverage upload to a different job by @Oppen in #914
- Adjust delayed reduction test to run in reasonable time by @irfanbozkurt in #853
- Add Secp256r1 Curve by @ColoCarletti in #916
- Fields docs by @diegokingston in #911
- xgcd method for Polynomials by @feltroidprime in #885
- Add Jacobian coordinates for Short Weierstrass by @jotabulacios in #917
- Clean repo, remove cairo prover and update readme by @diegokingston in #920
- feat: Allow merkle trees of 1 node (its root) by @uri-99 in #919
- Add Stark101 tutorial's prime field by @erhant in #875
- Optimize Mersenne31 Field by @nicole-graus in #921
- Add Missing Components for BLS12-377 Curve by @jotabulacios in #922
- Small perf adjustments for
ShortWeierstrassProjectivePointoperations by @tcoratger in #842 - Optimize bls12 381 pairing by @jotabulacios in #923
- add circom to list of examples by @diegokingston in #925
- remove bootcamp by @diegokingston in #928
- Add from Circom to Lambdaworks example by @jotabulacios in #931
- Polynomial: differentiate & print methods. by @feltroidprime in #929
- Release v0.11.0: Hasty Hamburger by @Oppen in #932
New Contributors
- @lazcanoluca made their first contribution in #904
- @ColoCarletti made their first contribution in #906
- @uri-99 made their first contribution in #919
- @erhant made their first contribution in #875
Full Changelog: v0.10.0...v0.11.0
v0.10.0: Crazy Chipotle
What's Changed
- Bit shifting for unsigned integer doubling by @irfanbozkurt in #868
- Bn254 pairing by @nicole-graus in #889
- Fix secp square by @MauroToscano in #890
- Update docs by @diegokingston in #892
- fix: avoid
paniconMerkleTree::buildfor empty leaves by @Oppen in #896 - Fix and improve fuzzers by @MauroToscano in #898
- fix overflow by @diegokingston in #894
- fix overflow sum by @diegokingston in #900
- Release v0.10.0: Crazy Chipotle by @Oppen in #903
Full Changelog: v0.9.0...v0.10.0
v0.9.0: Bad Burrito
What's Changed
- perf: add an 'asm' feature to crypto to use optimized hashes by @Oppen in #873
- perf: avoid unnecessary clone when building Merkle trees by @Oppen in #872
- Add lambdaworks Pinocchio example by @nicole-graus in #884
- fix: Felt serde by @igamigo in #883
- fix:
from_hexpanic by @Oppen in #887 - Release v0.9.0: Bad Burrito by @Oppen in #888
New Contributors
- @nicole-graus made their first contribution in #884
Full Changelog: v0.8.0...v0.9.0
v0.8.0: Lecker Lokum
What's Changed
- Handle single element cases in MerkleTree and update tests by @jotabulacios in #871
- feat(merkle): Pad single tree leaves to next power of two by @PatStiles in #876
- Add error to UnsInt from_hex when hex too big by @MauroToscano in #880
- chore(dep): Pin starknet-rs dependencies by @PatStiles in #879
- fix: unaligned read for Metal buffers by @Oppen in #882
New Contributors
- @jotabulacios made their first contribution in #871
Full Changelog: v0.7.0...v0.8.0
v0.7.0: Poached Pepper
Release v0.7.0: Poached Pepper
v0.6.0: Bold Bolognese
Release v0.6.0: Bold Bolognese
v0.5.0: Mini Matcha
- Added no std support for crypto
- Added alloc feature for crypto and math
- Added arkworks cs adapter for groth16