Kris Nuttycombe
45177a51e1
Fix off-by-one error in scan_block_with_runner.
2023-06-30 09:30:24 -06:00
Kris Nuttycombe
c05b3d0c8c
Add a test demonstrating off-by-one error in `scan_block_with_runner`
2023-06-30 09:30:24 -06:00
Kris Nuttycombe
8fa3a08c0b
Fix indexing error in checkpoint determination.
2023-06-30 09:30:24 -06:00
Kris Nuttycombe
d65b129b43
Apply changelog, documentation & style suggestions from code review
...
Co-authored-by: str4d <thestr4d@gmail.com>
2023-06-30 09:30:24 -06:00
Kris Nuttycombe
ba709177d3
Reorganize Sapling and Orchard note commitment tree sizes in CompactBlock.
...
We move thes fields out into a separate BlockMetadata struct to ensure
that future additions to block metadata are structurally separated from
future additions to block data.
2023-06-29 15:35:18 -06:00
Kris Nuttycombe
c42cffeb1d
zcash_client_backend: Replace `WalletWrite::advance_by_block` with `WalletWrite::put_block`
...
Also, add assertions to prevent attempting the creation of zero-conf
shielded spends.
2023-06-29 15:35:18 -06:00
Kris Nuttycombe
3e358bc1c9
zcash_client_backend: Use `shardtree` for note commitments in block scanning.
...
Also adds a skeleton `zcash_client_sqlite` implementation of
`shardtree::ShardStore` and a skeleton migration for related
database changes.
2023-06-29 15:35:18 -06:00
Kris Nuttycombe
32e2991c4d
zcash_client_backend: Add note commitment tree sizes to `CompactBlock` serialization.
2023-06-26 10:19:43 -06:00
Hazel OHearn
4fbdd64c89
Add Orchard support to `zcash_primitives::transaction::builder::Builder`
...
Co-authored-by: Jack Grigg <jack@electriccoin.co>
Co-authored-by: Kris Nuttycombe <kris@nutty.land>
2023-06-23 14:09:59 -06:00
Nate Wilcox
5ba44b9019
Update dependencies to resolve https://rustsec.org/advisories/RUSTSEC-2022-0090
2023-06-17 12:44:35 -07:00
Kris Nuttycombe
e7fb276b04
Release zcash_proofs 0.12.0
2023-06-06 15:56:29 -06:00
Kris Nuttycombe
f9cacc5b21
Release zcash_primitives 0.12.0
2023-06-06 15:56:28 -06:00
Kris Nuttycombe
60ac1070c5
Release zcash_address version 0.3.0
2023-06-06 15:53:16 -06:00
Kris Nuttycombe
75e529eea6
Upgrade to `bs58 0.5`
2023-06-06 15:53:14 -06:00
Kris Nuttycombe
3dd0c63095
Update to `incrementalmerkletree 0.4`, `orchard 0.5`
2023-06-06 14:27:39 -06:00
Kris Nuttycombe
0b126a107c
Clarify `Zip321Error::TooManyPayments` documentation.
...
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2023-06-06 09:29:43 -06:00
Kris Nuttycombe
bca951bf44
doc-only: Document ZIP 321 error variants.
...
Fixes #499
2023-06-06 08:42:54 -06:00
Kris Nuttycombe
ebcfae987d
Update the data access API in preparation for shardtree introduction.
2023-06-02 10:59:17 -06:00
Kris Nuttycombe
4b3ea857df
Merge pull request #818 from nathan-at-least/resolve-RUSTSEC-2023-0018
...
Bump `tempfile` to 3.5.0 to mitigate RUSTSEC-2023-0018…
2023-05-22 20:19:43 -06:00
Kris Nuttycombe
b341903ae2
Merge pull request #842 from zcash/msrv-1.65
...
Bump MSRV for `zcash_primitives` and dependents to 1.65
2023-05-19 09:28:43 -06:00
Kris Nuttycombe
ea84243e0f
Add `get_memo` change to the zcash_client_backend CHANGELOG
2023-05-17 08:56:24 -06:00
Kris Nuttycombe
d99b4d4d6e
Update memo retrieval API to reflect that memos may not be present.
...
Memos may be absent for both sent and received notes in cases where only
compact block information has been used to populate the wallet database.
This fixes a potential crash in the case that we attempt to decode a
SQLite `NULL` as a byte array. It does, however, introduce a slight
semantic confusion that will need to be considered in the case of future
updates where a note may not have an associated memo; at present, the
only reason we might not have the memo is that we might not have
retrieved the full transaction information from the chain, but in the
future there might be other possible reasons for this absence.
Fixes #384
2023-05-16 10:27:40 -06:00
Jack Grigg
a092da8d5d
Fix clippy lints for 1.65
2023-05-16 15:59:58 +00:00
Jack Grigg
8681b56d52
Bump MSRV for `zcash_primitives` and dependents to 1.65
2023-05-16 15:37:07 +00:00
Kris Nuttycombe
87212b6137
Merge branch 'main' into resolve-RUSTSEC-2023-0018
2023-05-12 09:08:59 -06:00
Kris Nuttycombe
a718810fa8
Update zcash_client_backend/src/data_api/wallet.rs
2023-05-09 12:32:56 -06:00
Daira Emma Hopwood
9cc6319f26
Fix clippy lints.
...
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-05-09 17:59:03 +01:00
Daira Emma Hopwood
3903935234
Deprecate `transaction::components::amount::DEFAULT_FEE` and
...
`zcash_primitives::transaction::fees::fixed::FeeRule::standard()`.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-05-09 17:18:34 +01:00
Daira Emma Hopwood
736d11b45b
Change `transaction::fees::fixed::FeeRule::standard()` to use the ZIP 317
...
minimum fee (10000 zatoshis rather than 1000 zatoshis) as the fixed fee.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-05-09 16:42:41 +01:00
Daira Emma Hopwood
4cf27126e5
Revert "Update DEFAULT_FEE to 10_000 from 1000"
...
This reverts commit 2a6dc59c5d
.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-05-09 13:15:52 +01:00
Kris Nuttycombe
d37e6adee5
Merge pull request #783 from nuttycom/upgrade_bridgetree
...
Upgrade `zcash_primitives` to use updated `incrementalmerkletree` types.
2023-05-08 12:00:00 -06:00
str4d
579ab92b93
Merge branch 'main' into 823-secp256k1-0.26
2023-05-08 18:53:33 +01:00
Kris Nuttycombe
1f9747e15f
Move merkle tree types to the `incrementalmerkletree` crate.
...
This removes the `CommitmentTree`, `IncrementalWitness`, and
`MerklePath` types in favor of equivalent versions available
from the `incrementalmerkletree` crate.
2023-05-04 12:30:56 -06:00
Kris Nuttycombe
ec57d23115
Use const generics to set commitment tree & incremental witness depths.
...
This is in preparation for extraction into the `incrementalmerkletree`
crate, which is not Sapling-specific and therefore cannot hard-code
the depths of these data structures.
2023-05-04 12:16:09 -06:00
Hazel OHearn
2a6dc59c5d
Update DEFAULT_FEE to 10_000 from 1000
2023-05-03 16:42:01 -03:00
Jack Grigg
8b53d4a0c4
zcash_client_backend 0.9.0
2023-04-28 01:46:28 +00:00
Kris Nuttycombe
fa282695da
Store change notes as received for internal transfers.
2023-04-27 14:41:26 -06:00
Kris Nuttycombe
f3745c0cb5
Make the internal state of `SentTransactionOutput` private.
2023-04-27 13:07:34 -06:00
Kris Nuttycombe
ac3439e65e
Rename *rewind* to *truncate* in data_api methods.
...
This better reflects the semantics of wallet behavior. Also, this
adds a `zcash_client_backend::WalletRead::get_min_unspent_height`
method that replaces the deprecated & removed (and misleadingly
named) `get_rewind_height` method.
2023-04-27 09:12:07 -06:00
Kris Nuttycombe
7405d0cd69
Make internals of `WalletSaplingSpend` and `WalletSaplingOutput` private.
2023-04-26 14:47:10 -06:00
Kris Nuttycombe
bfc5b9a5b3
Parameterize `DecryptedOutput` by note type.
2023-04-26 14:47:10 -06:00
Kris Nuttycombe
55c2de0066
Remove the redundant `WalletSaplingOutput::to` and `DecryptedOutput::to` fields.
2023-04-26 14:47:10 -06:00
Kris Nuttycombe
c15a185454
Remove deprecated APIs & rename Sapling-specific data structures to include "Sapling"
...
This helps to clarify the Sapling-specific nature of a number of
operations in wallet code.
2023-04-26 14:47:10 -06:00
Jack Grigg
ec1c1bcf21
Migrate to `secp256k1 0.26`, `hdwallet 0.4`
...
Closes zcash/librustzcash#823 .
2023-04-19 19:33:34 +00:00
Jack Grigg
4dbb9c01e5
zcash_client_backend 0.8.0
2023-04-15 00:00:40 +00:00
Jack Grigg
4678ff8299
zcash_proofs 0.11.0
2023-04-14 23:58:53 +00:00
Jack Grigg
a419b56e80
zcash_primitives 0.11.0
2023-04-14 23:56:16 +00:00
Jack Grigg
7be5d1bf7d
Update changelogs
2023-04-14 23:49:13 +00:00
Nate Wilcox
25f03f8dc0
Bump `tempfile` to 3.5.0 to mitigate RUSTSEC-2023-0018…
...
See https://rustsec.org/advisories/RUSTSEC-2023-0018
This is one of multiple audit failures reported in: https://github.com/zcash/librustzcash/issues/816
2023-04-14 16:40:13 -07:00
Jack Grigg
f82866dbb9
Migrate to `bech32 0.9`
2023-04-11 16:01:19 +00:00