Releases: o1-labs/o1js
Releases · o1-labs/o1js
Release 2.3.0
What's Changed
- Release v2.2.0 [CHECK SEMVER BEFORE MERGE] by @github-actions in #1943
- Readme for Nix by @querolita in #1929
- Build bindings in a nix derivation by @Geometer1729 in #1923
- Fix broken documentation links by @futreall in #1950
- Configure GH before creating a tag by @45930 in #1946
- Introduce recursive proofs from within ZkPrograms by @mitschabaude in #1931
- add action to upload a patch when bindings differ by @Geometer1729 in #1958
- ZkPrograms QoL improvements by @mitschabaude in #1933
- fix git diff to include .wasm files by @Geometer1729 in #1961
- Deprecate 'testnet' network id in favor of 'devnet' by @hattyhattington17 in #1938
- Conditional recursion from within ZkProgram by @mitschabaude in #1932
- Sort actions by tx sequence when available by @45930 in #1917
- Add setFee and setFeePerWU by @Geometer1729 in #1968
- Update typedoc version by @45930 in #1973
- Have ci update the npmDepsHash for you by @Geometer1729 in #1978
- Fix event data type inconsistency between LocalBlockchain and Mina by @hattyhattington17 in #1975
- Add doc comments to ZkProgram et al by @45930 in #1974
- Fix devshell for macos by @Geometer1729 in #1976
- Handle whole domain commitment by pointer by @Trivo25 in #1984
- Bring mina/compatible up to date by @Trivo25 in #1967
- Resolve documentation signature mismatches by @45930 in #1993
- Make sure bindings are initialized before accessing snarky by @mitschabaude in #1996
- Add important MerkleList method by @mitschabaude in #1997
- ZkProgram type fix by @mitschabaude in #1998
- Fix correctness issue in ZkProgram typing by @rpanic in #1962
- Update nix readme by @ymekuria in #2000
- Make ECDSA easier to use with alternative hash functions by @mitschabaude in #2005
- feat: Allow fetch functions to pass headers by @kadirchan in #2004
- Allow JS values as ZkProgram inputs by @mitschabaude in #1934
- MISC: remove useless whitespaces by @dannywillems in #2014
- set
GIT_LFS_SKIP_SMUDGE
to 1 in .envrc by @glyh in #2019 - Adding oxlint, removing eslint, adding husky pre-commit by @45930 in #2012
- Update bindings for proof-systems
master
in Mina by @mrmr1993 in #2030 - Supporting variants of SHA2 by @querolita in #1957
- Force-format all the files by @Trivo25 in #2033
- Bytes: use FlexibleBytes alias directly by @dannywillems in #2015
Bool.allTrue
andBool.anyTrue
by @Trivo25 in #2038- Seperate API versions by @Trivo25 in #2036
- Add toBytes() to UInt64 by @kadirchan in #2060
- Support UTF-8 encode/decode for CircuitString by @chiro-hiro in #2020
- Update bindings for Mina/16648 by @dannywillems in #2044
- Release/2.3.0 by @Trivo25 in #2062
- Update issue templates by @Trivo25 in #2061
- remove blank issue by @Trivo25 in #2070
- Monthly release schedule by @Trivo25 in #2071
- Automatic GitHub release by @Trivo25 in #2072
New Contributors
- @futreall made their first contribution in #1950
- @hattyhattington17 made their first contribution in #1938
- @glyh made their first contribution in #2019
Full Changelog: v2.1.1...2.3.0
v2.0.0
Breaking Changes
- The
divMod32()
gadget was modified to acceptnBits
instead ofquotientBits
, and assert it is in the range [0, 2**255) to address an issue previously where the bound onquotientBits
was too low https://github.com//pull/1763. Provable.equal()
now turns both types into canonical form before comparing them #1759- Removed implicit version
Provable.equal(x, y)
where you didn't have to pass in the type
- Removed implicit version
- The return signature of a zkProgram has changed. #1809
- A zkProgram method must now explicitly define the return type of the method when the method has a public or auxiliary output defined.
- The return type of a proven method has changed as a result of this.
- Various breaking constraint changes in internal methods or circuits because of audit fix.
- Removal of various deprecated methods and functions.
- Promotion of various methods and functions to stable as part of change.
- A slightly modified encryption and decryption algorithm. #1729
- Promotion of
TokenContractV2
toTokenContract
with a correct amount of maximum account updates.
Added
ZkProgram
methods now supportauxiliaryOutput
. #1809- Each program method now accepts an optional property
auxiliaryOutput
- Auxiliary output is additional output that the zkProgram method returns
- Each program method now accepts an optional property
- New method
toCanonical()
in theProvable<T>
interface to protect against incompleteness of certain operations on malicious witness inputs #1759 divMod64()
division modulo 2^64 that returns the remainder and quotient of the operationaddMod64()
addition modulo 2^64- Bitwise OR via
{UInt32, UInt64}.or()
- BLAKE2B hash function gadget #1285