Commit Graph

458 Commits

Author SHA1 Message Date
Kris Nuttycombe 44065917a3 Release incrementalmerkletree-testing 0.3 2025-01-30 16:52:27 -07:00
Kris Nuttycombe 7ceefdecf1
Merge pull request #127 from zcash/release/shardtree-0.6
Release shardtree version 0.6
2025-01-28 17:49:01 -07:00
Kris Nuttycombe 04280c42ab Release shardtree version 0.6 2025-01-28 12:29:13 -07:00
Kris Nuttycombe a3eb373c00 Merge remote-tracking branch 'upstream/hotfix/incrementalmerkletree-0.7' into main 2025-01-28 12:22:47 -07:00
Kris Nuttycombe b822170f2b
Merge pull request #126 from zcash/incrementalmerkletree_no_std
incrementalmerkletree: Enable use in `no_std` environments.
2025-01-28 09:57:42 -07:00
Kris Nuttycombe e9fe0de498 Release `incrementalmerkletree` version 0.8.1 2025-01-27 21:30:25 -07:00
Kris Nuttycombe 65db41c91d incrementalmerkletree: Remove `std` from default features.
`std` was actually only ever required for `test-dependencies`, which is
not in `default`.
2025-01-27 21:30:25 -07:00
Kris Nuttycombe 32fe37e11c incrementalmerkletree release v0.7.1
[0.7.1] - 2024-12-16
 ====================
 
 Added
 -----
 - `no-std` support, via a default-enabled `std` feature flag.
 -----BEGIN PGP SIGNATURE-----
 Comment: GPGTools - https://gpgtools.org
 
 iQIzBAABCgAdFiEEM8uh69MjC3Gih0YlOANKuf2lcGcFAmdgYzgACgkQOANKuf2l
 cGeciRAAsOC3u5vbbZIGbgXsqTuTMUpsHuy8Ef8hMpH/fOk9HAtwWRMvUn+rsHlv
 lghrxuaCBuYPPCWox9cpcn8jF/QOFnp5hj5ZzCc6RGZYJmBdJintlGNtA2IFa3rC
 ZhIFo5oBmT3d+1R7eEdLtVwLwLULxP+geK5GHLVbeu4zSpgNTy4enp9RhqOZUgoV
 V0aLdBhlZ+TxA7M7DUhVjtnyvie9O8raHWt3P7dPMeZEML9ab8LV6J/ESHDohKN8
 KmyNlYKXzypcydnV2fBx8D4j5UtXzqq1uG9vfMTe3ln8OaDZNbsXT/QUOZRZQLt8
 mr8FYUbJ2Zfb8LKUVFr/fuQuP4lb8XiL0sT4JMIPoPyyeV5qkzcJllbIszkYXNAR
 XP5eiRFIFtroG0Uw2SXHBmRaxn0i8wWY7F0NCVtXrlG60WS7EmhCFTp11uVu9kTb
 Ke2jy4JSWceQ0UD8g8al2+ndNTJMYApDkdww0VIydHnAr/EoKPynbfgSLZRam1xQ
 HVdZ73gkgdg1P4DSqNiX1QXPDEU9egMIe1yHRh7WcbhJjst0NJf5DxuxzPwEOy4q
 +aGei/QmWTrasjHDPcQVaD1TzdGA6OhauGpupv1X3lCJ1Rc1NodAv71ZebzAHCTa
 e1rksBVnkPl8yZj0rvO6wiROEGsRYFwSNvazs/GpWOHxTSOQxYg=
 =Sfdj
 -----END PGP SIGNATURE-----

Merge tag 'incrementalmerkletree-v0.7.1' into incrementalmerkletree_no_std-tmp
2025-01-27 16:13:40 -07:00
Kris Nuttycombe 60e7e18365
Merge pull request #125 from zcash/incrementalmerkletree-no-std
Allow `no_std` use of `incrementalmerkletree`
2024-12-16 11:15:39 -07:00
Kris Nuttycombe 507f6775ac Release incrementalmerkletree version 0.7.1 2024-12-16 10:13:55 -07:00
Kris Nuttycombe 0eecd6dae7 Allow `no_std` use of `incrementalmerkletree` 2024-12-16 10:13:55 -07:00
Daira-Emma Hopwood 26e8b47291
Merge pull request #124 from zcash/merge_shardtree_hotfix
Merge `shardtree` hotfixes back to `main` & update `shardtree` to `incrementalmerkletree 0.8.0`
2024-12-12 23:27:13 +00:00
Kris Nuttycombe 353cf3e9ff Update `shardtree` to depend upon `incrementalmerkletree 0.8.0` 2024-12-11 21:30:32 -07:00
Kris Nuttycombe fb62fb6175 Merge remote-tracking branch 'upstream/hotfix/shardtree-v0.3.x' into merge_shardtree_hotfix 2024-12-11 14:59:44 -07:00
Kris Nuttycombe 382d915c06
Merge pull request #123 from zcash/release/incrementalmerkletree-0.8.0
Release `incrementalmerkletree` version 0.8.0
2024-12-11 13:09:50 -07:00
Kris Nuttycombe 8a14eaa743 Release `incrementalmerkletree` version 0.8.0 2024-12-11 10:40:56 -07:00
Kris Nuttycombe 9ea34661fc
Merge pull request #122 from zcash/release/shardtree-v0.3.2
Release `shardtree v0.3.2`
2024-12-09 22:18:55 -07:00
Kris Nuttycombe 63cbc0a223 Release `shardtree v0.3.2` 2024-12-09 14:31:55 -07:00
Kris Nuttycombe c8ce5ef0a6
Merge pull request #121 from zcash/shardtree-justify-unwraps-v0.3.x-backport
Backport #119 to shardtree v0.3.x
2024-12-09 14:23:25 -07:00
Jack Grigg 766a00eb66 shardtree: Justify `unwraps` due to upheld pre-conditions 2024-12-09 13:44:38 -07:00
Kris Nuttycombe db4ad58965
Merge pull request #119 from zcash/shardtree-justify-unwraps
Replace justified `unwraps` in `shardtree` with `expect`s
2024-12-02 10:22:37 -07:00
Jack Grigg 150f5544ba shardtree: Justify `unwrap`s due to an `Infallible` error type
Rust 1.82 adds support for omitting empty types in pattern matching,
which would make these much clearer.
2024-12-02 09:46:50 -07:00
Kris Nuttycombe b05d9863db
Merge pull request #120 from zcash/imt-witness-non-empty-tree
incrementalmerkletree: Check `IncrementalWitness` at construction
2024-11-24 08:53:26 -07:00
Jack Grigg c05f2fac00 shardtree: Make `BatchInsertionResult.max_insert_position` non-optional 2024-11-23 04:03:50 +00:00
Jack Grigg 166872e49b shardtree: Ensure `LocatedTree` is correct by construction
This ensures that the various existing `unwrap`s are correctly
justified.
2024-11-23 03:47:35 +00:00
Jack Grigg 1e81f3ca45 shardtree: Justify `unwraps` due to upheld pre-conditions 2024-11-23 03:21:47 +00:00
Jack Grigg 2edacb0191 incrementalmerkletree: Check `IncrementalWitness` at construction
A witness cannot exist for an empty tree.

Part of zcash/incrementalmerkletree#118.
2024-11-23 01:42:04 +00:00
Jack Grigg 74410d059f shardtree: Justify `unwrap`s due to an `Infallible` error type
Rust 1.82 adds support for omitting empty types in pattern matching,
which would make these much clearer.
2024-11-23 00:51:30 +00:00
Kris Nuttycombe c06b836e3f
Merge pull request #117 from zcash/release/shardtree-0.5.0
Release shardtree version 0.5.0
2024-10-04 08:33:51 -06:00
Kris Nuttycombe 771a933d88 Release shardtree version 0.5.0 2024-10-04 08:14:43 -06:00
Kris Nuttycombe ae7178553e Release incrementalmerkletree-testing version 0.2.0 2024-10-04 08:14:43 -06:00
Jack Grigg 3364521525
Merge pull request #116 from zcash/stable_incrementalmerkletree_dep
Use the stable incrementalmerkletree 0.7 dependency in `incrementalmerkletree-testing` and `shardtree`
2024-10-02 20:06:03 +01:00
Kris Nuttycombe 518fa387d7 Use the stable incrementalmerkletree 0.7 dependency in `incrementalmerkletree-testing` and `shardtree` 2024-10-02 12:51:05 -06:00
Kris Nuttycombe ffe4234788
Merge pull request #115 from nuttycom/shardtree_rewind_to
shardtree: Significantly rework handling of checkpoint depths and truncation operations.
2024-09-27 11:09:22 -06:00
Kris Nuttycombe 3f59900acf Apply documentation suggestions from code review
Co-authored-by: Jack Grigg <thestr4d@gmail.com>
2024-09-27 10:55:01 -06:00
Kris Nuttycombe 9a77e51cc4 shardtree: Rework rewind & checkpoint depth handling. 2024-09-27 08:44:14 -06:00
Kris Nuttycombe 05f23d9763 incrementalmerkletree-testing: Always rewind to a checkpoint.
The previous semantics of the `rewind` operation would remove the last
checkpoint, if any, but would not further modify the tree. However,
these semantics are error prone - if you rewind to a checkpoint, you are
not able to rewind to the same checkpoint again; also, in practice, it
doesn't make sense to shift the location of a checkpoint in the note
commitment tree. This change alters `rewind` to (a) take an explicit
checkpoint depth, with depth `0` meaning that any state added since the
last checkpoint should be discarded, and (b) only allow a rewind
operation to succeed if a checkpoint actually exists at the specified
depth.
2024-09-26 22:34:21 -06:00
Kris Nuttycombe 5bbd832930
Merge pull request #114 from nuttycom/bridgetree-0.6.0
Release `bridgetree` version 0.6.0.
2024-09-25 16:51:29 -06:00
Kris Nuttycombe 13a52fcea4 Release `bridgetree` version 0.6.0.
This change removes `bridgetree` from the workspace, so that it will no
longer be maintained in lockstep with changes to the
`incrementalmerkletree` crate. `bridgetree` will only receive bug-fix
changes in the future.
2024-09-25 14:25:40 -06:00
Kris Nuttycombe 771c0858a2
Merge pull request #113 from nuttycom/incrementalmerketree-testing
Extract `incrementalmerkletree::testing` module to a separate `incrementalmerkletree-testing` crate.
2024-09-25 14:14:13 -06:00
Kris Nuttycombe d663a8f64f Release incrementalmerkletree version 0.7.0, incrementalmerkletree-testing 0.1 2024-09-25 13:49:55 -06:00
Kris Nuttycombe cfc4fcbac8 Extract incrementalmerkletree::testing module to a separate `incrementalmerkletree-testing` crate. 2024-09-25 13:37:03 -06:00
Kris Nuttycombe 6f6699da21 Use common workspace package stanza & workspace dependencies.
This requires us to upgrade our MSRV to 1.64
2024-09-25 13:37:03 -06:00
Kris Nuttycombe 8aa12e4fe3
Merge pull request #112 from ec2/ec2/for_each_checkpoint 2024-09-12 12:15:46 -06:00
Eric Tu 8ccb40d088 CHANGELOG 2024-09-12 11:48:22 -04:00
Eric Tu 16eff253ad FnMut instead of Fn 2024-09-10 15:57:50 -04:00
Eric Tu eb3843e0cf for_each_checkpoint 2024-09-10 10:12:30 -04:00
Kris Nuttycombe 0f76ad8009
Merge pull request #111 from ec2/ec2/expose_max_checkpoint
Add max_checkpoints getter on ShardTree
2024-09-08 09:33:26 -06:00
Eric Tu 0e9d4d635a Add max_checkpoints getter 2024-09-06 12:14:28 -04:00
Kris Nuttycombe f3919df8f6
Merge pull request #110 from nuttycom/release/bridgetree-v0.5.0
release `bridgetree` version 0.5.0
2024-08-12 12:34:51 -06:00