Commit Graph

199 Commits

Author SHA1 Message Date
str4d 5c6a6a4c86
Merge pull request #1143 from nuttycom/crate_zip321
Extract `zip321` crate from `zcash_client_backend`
2024-04-22 22:46:09 +01:00
Kris Nuttycombe a7de8a3dba Release zcash_client_sqlite version 0.10.3 2024-04-08 13:24:42 -06:00
Kris Nuttycombe d982d7826a zip321: Replace dependencies on `zcash_keys` types with `zcash_address` 2024-04-05 16:10:22 -06:00
Kris Nuttycombe bbb8d1090a Add placeholder for a zip321 crate. 2024-04-03 12:13:47 -06:00
Jack Grigg 24277a6ba4 zcash_client_backend: Implement async wallet synchronization function
This implements the necessary state machine for taking a wallet in some
arbitrary synchronization status, and fully scanning (the remainder of)
the chain.

Closes zcash/librustzcash#1169.
2024-04-02 00:26:08 +00:00
oscar-pepper 25b8404e2d
Add block cache trait (#1192) 2024-04-01 21:55:16 +01:00
Kris Nuttycombe 1cb33c8b06 zcash_client_backend release version 0.12.1 2024-03-27 14:58:12 -06:00
Jack Grigg bea4097ded zcash_client_sqlite 0.10.2 2024-03-27 11:05:26 -04:00
Kris Nuttycombe da3869a576 Release zcash_client_sqlite 0.10.1 2024-03-25 20:00:48 -06:00
Kris Nuttycombe 366d5d7434 Release zcash_client_sqlite version 0.10.0
Closes #1126
2024-03-25 14:11:11 -06:00
Kris Nuttycombe 777adb871d Release zcash_client_backend version 0.12.0
Closes #1079
2024-03-25 14:03:42 -06:00
Kris Nuttycombe b68d97b614
Merge pull request #1314 from zcash/release-zcash_keys-0.2.0
Release zcash_keys version 0.2.0
2024-03-25 12:13:50 -06:00
Kris Nuttycombe f8c021546d Release zcash_keys version 0.2.0 2024-03-25 11:34:21 -06:00
Kris Nuttycombe 2bda943a2e Release zcash_proofs version 0.15.0 2024-03-25 11:23:53 -06:00
Kris Nuttycombe 4cf8cab6fc zcash_primitives release version 0.15.0 2024-03-25 08:45:23 -06:00
Kris Nuttycombe 5f042c4657 zcash_protocol release version 0.1.1 2024-03-24 19:29:59 -06:00
Kris Nuttycombe 4f7c5bd722 zcash_client_sqlite: Fix `scan_complete` tests. 2024-03-19 16:11:57 -06:00
Kris Nuttycombe cc990b60e0 zcash_keys: Remove HdSeedFingerprint as it duplicates `zip32::fingerprint::SeedFingerprint` 2024-03-14 17:09:03 -06:00
Kris Nuttycombe f58263e211 zcash_client_backend: Require the tree state for the start of each scanned range.
In order to support constructing the anchor for multiple pools with a
common anchor height, we must be able to checkpoint each note commitment
tree (and consequently compute the root) at that height. Since we may
not have the information in the tree needed to do so, we require that it
be provided.

As a bonus, this change makes it possible to improve the UX around
spendability, because we will no longer require subtree ranges below
received notes to be fully scanned; the inserted frontier provides
sufficient information to make them spendable.
2024-03-12 18:14:11 -06:00
Kris Nuttycombe 0c5a365c60 zcash_client_sqlite: Update to make use of `orchard::note::Rho` 2024-03-12 17:28:10 -06:00
Jack Grigg 6898dbf094 Replace `unstable-nu6` and `zfuture` feature flags with cfg flags
Neither of these should have been feature flags, as they gate breaking
changes to the Zcash consensus rules (and in some ways are incompatible
with each other), while feature flags should be additive.
2024-03-10 18:42:39 +00:00
Jack Grigg 75c5f31ab0 zcash_client_sqlite: Use a seeded RNG in `TestState`
This makes individual instances of `TestState` deterministic, which
helps with debugging.
2024-03-10 01:10:50 +00:00
Jack Grigg 390b536950 zcash_client_sqlite: Use `LocalNetwork` for testing
This enables us to activate Sapling and NU5 at the same height, to
simplify reuse of test logic between Sapling and Orchard.

As a side-effect, `zcash_extensions` is removed from the workspace
because it enables the `zfuture` feature flag unconditionally, which
breaks workspace-level builds because this causes the `zfuture` feature
flag on `zcash_protocol` to be enabled without the corresponding feature
flag on `zcash_client_sqlite` being enabled. We will fix this by moving
from feature flags to config flags for unstable features.
2024-03-10 01:10:28 +00:00
Kris Nuttycombe 19868af84a
Merge pull request #1246 from zcash/zcb-0.11-zcs-0.9-doc-fixes
`zcash_client_backend 0.11.1`, `zcash_client_sqlite 0.9.1` with doc fixes
2024-03-09 08:19:41 -07:00
Jack Grigg c6f1fdb73d zcash_client_sqlite 0.9.1 2024-03-09 11:39:38 +00:00
Jack Grigg 7f38b79c3c zcash_client_backend 0.11.1 2024-03-09 11:38:33 +00:00
Kris Nuttycombe 4c5ce32dee zcash_client_backend: Use `NonNegativeAmount` for `select_spendable_notes` 2024-03-08 13:48:30 -07:00
Kris Nuttycombe 8f4de9b235
Merge pull request #1235 from zcash/diverse_accounts
zcash_client_sqlite: Rework accounts to support imported viewing keys
2024-03-08 13:39:08 -07:00
Jack Grigg bfc2278bfe Encode UIVK Sapling component with `sapling-crypto` 2024-03-08 20:22:45 +00:00
Andrew Arnott 0c80893ce0 zcash_client_sqlite: Rework accounts to support imported viewing keys 2024-03-08 18:55:18 +00:00
Jack Grigg 6c6080c99c `impl TestFvk for orchard::keys::FullViewingKey` 2024-03-08 13:28:55 +00:00
Jack Grigg d539f04f2e zcash_address 0.3.2 2024-03-06 15:07:51 +00:00
Jack Grigg d0673c9bc3 zcash_protocol 0.1.0 2024-03-06 15:07:11 +00:00
Kris Nuttycombe 4b18426fcd zcash_address: Use `zcash_protocol::consensus::NetworkType`
This inverts the dependency relationship between `zcash_protocol` and
`zcash_address`, permitting the network constants (primarily the HRPs)
defined in `zcash_protocol` to be used directly in `zcash_address`
instead of being duplicated.
2024-03-05 13:36:15 -07:00
Kris Nuttycombe 64454100c5 zcash_client_backend: Move the `ShieldedProtocol` and `PoolType` types to `zcash_protocol` 2024-03-05 09:46:03 -07:00
Kris Nuttycombe bacfe3cb9d Move `zcash_primitives::{consensus, constants}` to the `zcash_protocol` crate 2024-03-05 09:45:24 -07:00
Kris Nuttycombe 66c6bba84e Add stub for a `zcash_protocol` crate. 2024-03-05 09:45:24 -07:00
Kris Nuttycombe e90d5aaaf0 Release zcash_keys version 0.1.1 2024-03-04 15:54:55 -07:00
Kris Nuttycombe e4c0b0e63f zcash_client_backend: Add `WalletRead::validate_seed`
This adds a mechanism that allows a caller to verify that a given seed
generates the viewing key that is stored in the wallet for a specified
account.

Fixes #1189
2024-03-04 10:59:56 -07:00
Jack Grigg cdbd33e2ff zcash_history 0.4.0 2024-03-01 15:10:11 +00:00
Jack Grigg 891ab1ca6d zcash_client_sqlite 0.9.0
Closes zcash/librustzcash#961.
2024-03-01 01:17:02 +00:00
Jack Grigg dfb6c65edd zcash_client_backend 0.11.0
Closes zcash/librustzcash#962.
2024-03-01 01:16:04 +00:00
Jack Grigg 3135c31d1a zcash_keys 0.1.0 2024-03-01 01:14:34 +00:00
Jack Grigg d0c380114a zcash_proofs 0.14.0
Closes zcash/librustzcash#1034.
2024-03-01 01:13:49 +00:00
Jack Grigg 599aa45a56 zcash_primitives 0.14.0 2024-03-01 01:12:43 +00:00
Kris Nuttycombe e5f23b9126 Update `orchard` dependency version to `0.7.1` 2024-02-29 15:39:44 -07:00
Kris Nuttycombe 7e8723bea9 zcash_client_backend: Add Orchard support to batch scanning. 2024-02-29 12:04:53 -07:00
Kris Nuttycombe 74b487e4c9 Apply suggestions from code review
Co-authored-by: str4d <thestr4d@gmail.com>
2024-02-15 20:51:24 -07:00
Kris Nuttycombe 6aabe60d21 zcash_client_backend: Add validation to the `Proposal::multi_step` constructor. 2024-02-15 13:09:52 -07:00
Kris Nuttycombe beeea7b44e zcash_client_backend: Modify `Proposal` to make multi-step transactions representable. 2024-02-14 19:30:52 -07:00