Commit Graph

2640 Commits

Author SHA1 Message Date
Jack Grigg ded14adbb3 Add `sapling::keys::DiversifiedTransmissionKey` 2023-01-24 15:02:38 +00:00
Jack Grigg 06ba399d80 Clean up the `sapling::Note` API 2023-01-24 15:02:32 +00:00
Jack Grigg 87d0bd7db1 Refactor `sapling::Note`
Its internals are now private, and it stores a `PaymentAddress` (and by
extension the diversifier) instead of `g_d`.
2023-01-24 15:02:27 +00:00
Jack Grigg dff21222fb Require `PaymentAddress` to contain a valid diversifier 2023-01-24 14:51:13 +00:00
Jack Grigg 42c332a7a8 Use `sapling::note::ExtractedNoteCommitment` type in APIs 2023-01-24 14:37:11 +00:00
Jack Grigg 0a26c812e0 Split `sapling::Authorization::Proof` type into Spend and Output types
While the Groth16 proofs have identical encodings, they are technically
for different circuits, and we need the ability to differentiate them
during bundle building.
2023-01-20 11:12:49 +00:00
Kris Nuttycombe 79f3f10714
Merge pull request #760 from zcash/759-msrv-1.60
Bump MSRV for `zcash_primitives` and dependents to 1.60
2023-01-19 19:33:15 -07:00
str4d 362e9aa0ad
Merge pull request #753 from zcash/sapling-refactor
Sapling refactor
2023-01-20 02:00:19 +00:00
Jack Grigg 809427f6bd criterion 0.4 2023-01-20 00:03:10 +00:00
Jack Grigg 49b1cb3e69 Bump MSRV for `zcash_primitives` and dependents to 1.60
The MSRVs of the component crates are left as-is, partly because our
dependencies don't require us to bump them, and partly because those
crates have no pending changes and are relatively stable. We also plan
to split the component crates out into a separate repository, where it
will be easier to have a separate MSRV.

Closes zcash/librustzcash#759.
2023-01-19 23:48:24 +00:00
str4d b83355f7a3
Merge pull request #745 from zcash/dependabot/github_actions/actions/cache-3.2.2
Bump actions/cache from 3.0.11 to 3.2.2
2023-01-09 10:40:03 +00:00
Jack Grigg 19d8e2125e Introduce `sapling::keys::{EphemeralSecretKey, EphemeralPublicKey}` types 2023-01-06 22:42:33 +00:00
Jack Grigg 7fb80d55d6 Introduce `sapling::keys::SharedSecret` type 2023-01-06 22:24:40 +00:00
Jack Grigg 1df49c517e Refactor Sapling key derivation 2023-01-06 22:24:40 +00:00
Jack Grigg 88d46fd6b3 Refactor Sapling note commitment derivation 2023-01-06 22:24:40 +00:00
Jack Grigg 65271b49e5 Refactor Sapling nullifier derivation 2023-01-06 22:24:40 +00:00
Jack Grigg f1d3e03a9b zcash_primitives: Reorganise `sapling` module into submodules
The module structure now matches the `orchard` crate, to make subsequent
refactoring easier. The public API is not altered by this commit.
2023-01-06 22:24:35 +00:00
Kris Nuttycombe 95cbc7abaf
Merge pull request #734 from zcash/sapling-type-safety
Improve Sapling type safety
2023-01-05 13:12:45 -07:00
str4d 268754d635
Merge pull request #747 from zcash/FsBlockDbError_display
Implement fmt::Display descriptions for FsBlockDbError
2023-01-04 08:15:39 +00:00
Kris Nuttycombe 99ffcbc9e8
Merge pull request #749 from rex4539/typos
Fix typo
2023-01-03 12:35:56 -07:00
Francisco Gindre 015a585cfb Implements fmt::Display descriptions for FsBlockDbError
Closes #742

Fix clippy errors

PR Suggestions. Make Displayed error messaged more readable to users

Revert clippy fixes in favor of rustfmt rules

Commit suggestion on `InvalidBlockstoreRoot`

Co-authored-by: str4d <jack@electriccoin.co>

PR Suggestion `MissingBlockPath`

Co-authored-by: str4d <jack@electriccoin.co>

PR Suggestion `InvalidBlockPath`

Co-authored-by: str4d <jack@electriccoin.co>

Run cargo fmt and fix issues
2023-01-03 14:59:52 -03:00
Dimitris Apostolou 500c8f657d
Fix typo 2022-12-31 13:03:24 +02:00
dependabot[bot] d6b76cc799
Bump actions/cache from 3.0.11 to 3.2.2
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.11 to 3.2.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.11...v3.2.2)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-28 05:05:13 +00:00
Jack Grigg 23922ca290 Add Sapling value types
These are modeled after the value types developed for the `orchard`
crate.
2022-12-20 05:16:39 +00:00
Kris Nuttycombe 125d2bc3d5
Merge pull request #727 from nuttycom/test/shield_transparent_funds
Add `shielding_threshold` argument to `shield_transparent_funds`.
2022-12-15 13:11:55 -07:00
Kris Nuttycombe 76f0f0510e
Update zcash_client_backend/CHANGELOG.md
Co-authored-by: str4d <thestr4d@gmail.com>
2022-12-15 11:10:32 -07:00
Kris Nuttycombe 95e8a67a5f
Merge pull request #731 from zcash/fsblockdb-errors
Improve `FsBlockDb` errors
2022-12-13 12:43:28 -07:00
str4d 2ad40ca5ab
Merge pull request #735 from zcash/zcash_client_sqlite-0.4.2
zcash_client_sqlite 0.4.2
2022-12-13 06:15:23 +00:00
Jack Grigg a3e612e9de zcash_client_sqlite 0.4.2 2022-12-13 05:31:40 +00:00
Jack Grigg fee0b6a18d Make Sapling transaction structs non-transparent
We instead provide getters for the struct fields.
2022-12-13 04:03:06 +00:00
str4d 11d7552f42
Merge pull request #733 from zcash/update-protobuf-bindings
Update generated protobuf bindings
2022-12-13 03:40:55 +00:00
Jack Grigg 38e3280545 Update generated protobuf bindings 2022-12-11 13:28:52 +00:00
str4d 51932b7366
Merge pull request #732 from nuttycom/fix/clippy_lints
Fix clippy complaints.
2022-12-10 02:21:54 +00:00
Kris Nuttycombe 77d6ef2fd8
Update zcash_client_backend/src/welding_rig.rs
Co-authored-by: str4d <thestr4d@gmail.com>
2022-12-09 15:00:46 -07:00
Kris Nuttycombe bbe6280bb0 Fix clippy complaints. 2022-12-09 09:32:34 -07:00
Jack Grigg 6c984429fb zcash_client_sqlite: Add error for missing FsBlockDB block files 2022-12-09 09:48:01 +00:00
Jack Grigg 3504d7031c zcash_client_sqlite: Remove `*Error` suffixes from `FsBlockDbError` cases 2022-12-09 09:48:01 +00:00
Kris Nuttycombe 0f56f095c2 Add `shielding_threshold` argument to `shield_transparent_funds`.
Previously, the shielding threshold was fixed to 100000 zatoshis.

Fixes #726
2022-12-08 17:15:48 -07:00
str4d d0297bff0c
Merge pull request #725 from nuttycom/fix/empty_wallet_t_balance
Fix transparent balance error when the wallet is empty.
2022-12-08 20:00:17 +00:00
Kris Nuttycombe fff6983512 Replace a number of uses of `assert!(matches!(...))` with `assert_matches!(...)`
The remaining uses of `assert!(matches!(...))` are all in cases where
for some reason the `assert_matches` macro interferes with correct
type inference.
2022-12-08 12:17:14 -07:00
Kris Nuttycombe be4c19d82e Fix transparent balance error when the wallet is empty.
Fixes #724
2022-12-08 12:00:35 -07:00
str4d 903922c59a
Merge pull request #721 from zcash/bugfix-releases
Cut point releases of `zcash_primitives`, `zcash_client_backend`, `zcash_client_sqlite`
2022-12-06 11:02:59 +00:00
Jack Grigg 9d50c0726e zcash_client_sqlite 0.4.1 2022-12-06 08:19:14 +00:00
Jack Grigg 1ea585fee9 zcash_client_backend 0.6.1 2022-12-06 08:18:34 +00:00
Jack Grigg 7e71cc5353 Add `tracing` spans to light client chain scanning
This enables downstream users to profile how much time is spent in each
of the main subcomponents of the current chain scanner.
2022-12-06 08:17:49 +00:00
Jack Grigg 4435c4789f zcash_primitives 0.9.1 2022-12-06 06:14:28 +00:00
Jack Grigg a1da018f1c zcash_primitives: Count Sapling padding in `Builder::build_zfuture` fees
Closes zcash/librustzcash#709.
2022-12-06 06:13:09 +00:00
Kris Nuttycombe 580f87dc3e
Merge pull request #701 from zcash/update-generated-protobufs
Update generated protobufs
2022-11-18 17:25:15 -07:00
Kris Nuttycombe 734463c188
Merge pull request #710 from zingolabs/fix_fee_arity_bug
We now pad sapling outputs to two with at least one input for fee calculation
2022-11-18 17:22:24 -07:00
Hazel OHearn 08bf711744
We now pad sapling outputs to two with at least one input for fee calculation 2022-11-18 17:30:49 -04:00