Kris Nuttycombe
1be86b7a54
Derive the correct note when spending from a change address.
2022-11-03 18:44:48 -06:00
Kris Nuttycombe
b68d37a0b1
Use DiversifiableFullViewingKey instead of ExtFVK where possible.
2022-11-03 18:44:45 -06:00
str4d
d4f4f5ad91
Merge pull request #658 from nuttycom/wallet/builder_explicit_change
...
Update the transaction builder to make change outputs explicit
2022-11-04 00:42:31 +00:00
Kris Nuttycombe
28db1e324f
Update changelog.
2022-11-03 18:14:15 -06:00
Kris Nuttycombe
9c894ebf3e
Create per-protocol fees modules.
2022-11-03 15:07:14 -06:00
Kris Nuttycombe
c92d81b15d
Move the `TzeInput` trait to the `tze::components::builder` module
2022-11-03 09:57:36 -06:00
Kris Nuttycombe
37e78e1fe3
Expose less information about Sapling outputs to change calculation.
2022-11-03 09:56:50 -06:00
Kris Nuttycombe
1be97e9cef
Address comments from code review.
2022-11-03 09:56:08 -06:00
Jack Grigg
4d6e2bcf59
Merge pull request #642 from zcash/lightwalletd-grpc-bindings
...
zcash_client_backend: Add gRPC bindings behind feature flag
2022-11-03 05:32:29 +00:00
str4d
cfc8088d5f
Merge pull request #691 from zcash/prost
...
zcash_client_backend: Switch from `protobuf 2` to `prost 0.11`
2022-11-03 05:29:25 +00:00
Jack Grigg
587e1fa60b
Fix clippy lints related to `prost` API usage
2022-11-03 05:02:39 +00:00
Kris Nuttycombe
9496fc6118
Add fee calculator to the transaction builder.
...
This adds a fee calculation strategy abstraction that can be used to
dynamically compute fees so that the total fees required may be taken
taken into account during note selection, and also removes automatic
change creation from the transaction builder.
Change outputs must now be directly created by the caller by the caller.
This is a necessary prerequisite for permitting fees to adjust based
upon the contents of the transaction being constructed.
The initial implementation of the fee strategy simply uses the current
default fee.
2022-11-02 08:28:16 -06:00
Jack Grigg
17a4830c70
zcash_client_backend: Add gRPC bindings behind feature flag
...
The lightwalletd service file is sourced from:
Git: https://github.com/zcash/lightwalletd
Rev: ad5ecda5fbb5e12799f926b8cd785d54fdd250c8
Closes zcash/librustzcash#585 .
2022-11-02 06:22:02 +00:00
Jack Grigg
379b703e6b
zcash_client_backend: Switch from `protobuf 2` to `prost 0.11`
...
The latter is maintained by the Tokio developers, and has easy
integration with the `tonic` gRPC library which is actively maintained.
2022-11-02 06:21:38 +00:00
Kris Nuttycombe
df1cbbdd1d
Merge pull request #690 from zcash/dependency-refactor
...
Dependency refactor
2022-11-01 13:40:19 -06:00
Jack Grigg
3720b45feb
Categorise dependencies in `Cargo.toml` files
...
This should make it easier to upgrade dependencies in future.
2022-11-01 09:02:54 +00:00
Jack Grigg
a0016588ac
Remove unused dependencies
...
Some were only used by tests, others weren't used at all.
2022-11-01 09:02:27 +00:00
Francisco Gindre
0da4d27824
Merge pull request #687 from zcash/686_no-such-column
...
get_transparent_balances fails with `no such column`
2022-10-26 19:46:44 -03:00
Francisco Gindre
60c153930d
get_transparent_balances fails with `no such column`
...
Error message:
"Error while fetching transparent balances for AccountId(0): no such column: u.received_by_accountt"
Closes #686
2022-10-26 19:09:36 -03:00
Kris Nuttycombe
4964ca7b92
Merge pull request #685 from nuttycom/wallet/upsert_legacy_addr_utxo
...
Allow insertion of UTXOs associated with the legacy taddr.
2022-10-25 14:26:43 -06:00
Kris Nuttycombe
334383f363
Allow shielding from multiple taddrs within a single transaction.
2022-10-25 13:17:21 -06:00
Kris Nuttycombe
efa95fcb39
Add `get_transparent_balances` to data api.
2022-10-25 12:53:54 -06:00
Kris Nuttycombe
8cb16d878e
Require a source transparent address to shield transparent funds.
...
Previously, `shield_transparent_funds` was only shielding funds
associated with the legacy default transparent address. This meant
that transparent funds sent to unified addresses could not reliably
be shielded, as a unified address will frequently be constructed
using a diversifier index greater than zero.
This modifies the `get_transparent_receivers` method to return address
metadata containing the account ID and diversifier index used to derive
each address along with the receiver.
2022-10-25 12:53:54 -06:00
Kris Nuttycombe
e13459bd31
Allow insertion of UTXOs associated with the legacy taddr.
...
The legacy transparent address is never added to the `addresses` table,
but we still need to be able to receive UTXOs sent to that address. So,
we add a special case for when a UTXO matches that legacy address, and
set the account ID to 0 manually.
2022-10-24 17:32:30 -06:00
Kris Nuttycombe
277d07c79c
Merge pull request #684 from zcash/bump-some-versions
...
Bump versions for f4jumble, zcash_address, zcash_encoding and zcash_history crates
2022-10-19 17:56:46 -06:00
Kris Nuttycombe
373e69907f
Improve reason for yanking of the 0.8.0 version of `zcash_primitives`.
...
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-10-19 17:53:50 -06:00
Sean Bowe
f588d0dbeb
Bump zcash_primitives version to 0.8.1 and yank 0.8.0.
2022-10-19 16:59:53 -06:00
Sean Bowe
bd7f9d7c3c
Bump zcash_encoding and zcash_address crate versions to 0.2.
2022-10-19 16:51:59 -06:00
ebfull
c34cacaae6
Merge pull request #683 from nuttycom/fix/zcash_history_changelog
...
This reverts a previous incorrect change to the changelog.
2022-10-19 16:10:52 -06:00
Kris Nuttycombe
9b8b9ed189
This reverts a previous incorrect change to the changelog.
...
The MSRV bump was actually in `zcash_history` 0.3.0, even though the
addition of that to the Cargo.toml file was post-0.3.0 release.
2022-10-19 16:05:04 -06:00
Kris Nuttycombe
4ed64e4820
Merge pull request #682 from nuttycom/fix/zcash_encoding_changelog
...
Fix changelog for `zcash_encoding`
2022-10-19 15:54:23 -06:00
Kris Nuttycombe
42fd3c1091
Fix changelogs for `zcash_encoding` and `zcash_history`
2022-10-19 15:52:42 -06:00
Kris Nuttycombe
ccb0444b6d
Merge pull request #681 from zcash/update-orchard
...
Update zcash_primitives to orchard 0.3; release zcash_primitives and zcash_proofs 0.8.
2022-10-19 14:50:51 -06:00
Kris Nuttycombe
5bf36989e2
Fix beta clippy complaints.
2022-10-19 13:35:51 -06:00
Sean Bowe
176e21b015
Update zcash_primitives to orchard 0.3; release zcash_primitives and zcash_proofs 0.8.
2022-10-19 13:32:51 -06:00
str4d
49bdd86908
Merge pull request #678 from zcash/dependabot/github_actions/actions/cache-3.0.11
...
build(deps): bump actions/cache from 3.0.10 to 3.0.11
2022-10-15 01:06:52 +01:00
Kris Nuttycombe
022964056f
Merge pull request #679 from zcash/daa-fix-missing-bound
...
zcash_client_backend: Fix missing bound
2022-10-14 15:29:54 -06:00
Jack Grigg
b3dc323876
zcash_client_backend: Fix missing bound
...
In 47a0d0d2b7
`WalletWriteTransparent` was
merged into `WalletWrite`, including its associated type `UtxoRef`.
However, `shield_transparent_funds` placed a bound on this associated
type that was not moved to `WalletWrite`. This left the generic
parameter `U` unconstrained, which didn't cause a local failure because
the method has no local tests, but was immediately apparent when trying
to use the method in the mobile SDKs.
2022-10-14 20:45:35 +00:00
str4d
5301b9c9d3
Merge pull request #677 from nuttycom/wallet/decrypt_marks_utxos_spent
...
Mark our utxos spent when we detect them as inputs to a transaction.
2022-10-14 21:12:21 +01:00
Kris Nuttycombe
c773ea3b3e
Make the internals of `WalletTransparentOutput` private.
2022-10-14 12:38:55 -06:00
Kris Nuttycombe
69791af92c
Mark our utxos spent when we detect them as inputs to a transaction.
...
This modifies `decrypt_and_store_transaction` to check for inputs
to a transaction being decrypted that correspond to utxos known
to our wallet. For each such UTXO found, it is marked spent.
2022-10-14 10:40:43 -06:00
Kris Nuttycombe
85f69fa787
Merge pull request #676 from nuttycom/wallet/remove_feature_extensions
...
Remove the `WalletReadTransparent` and `WalletWriteTransparent` extension traits.
2022-10-14 07:47:48 -06:00
dependabot[bot]
fb299e2988
build(deps): bump actions/cache from 3.0.10 to 3.0.11
...
Bumps [actions/cache](https://github.com/actions/cache ) from 3.0.10 to 3.0.11.
- [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.10...v3.0.11 )
---
updated-dependencies:
- dependency-name: actions/cache
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-14 05:14:02 +00:00
Kris Nuttycombe
47a0d0d2b7
Remove the `WalletReadTransparent` and `WalletWriteTransparent` extension traits.
...
These traits introduce a problem, in that constraints on a method cannot
be conditionally required based upon the presence or absence of a
feature flag. Instead, we make the methods previously introduced by
the removed traits present in all cases on the `WalletRead` and
`WalletWrite` traits, but ensure that their implementations return
an error if the caller attempts to use them in a wallet that has not
been configured with support for transparent inputs functionality.
2022-10-13 21:05:49 -06:00
str4d
1a20fc1578
Merge pull request #675 from zcash/zcash_note_encryption-0.2.0
...
zcash_note_encryption 0.2.0
2022-10-13 23:23:12 +01:00
Jack Grigg
cf5af3edbc
Point to `orchard` commit with `zcash_note_encryption 0.2`
2022-10-13 21:42:46 +00:00
Jack Grigg
8f068b3b71
zcash_note_encryption 0.2.0
2022-10-13 21:35:39 +00:00
Jack Grigg
9a010d42ff
zcash_note_encryption: Clean up changelog and readme
...
We no longer depend on the previously-mentioned dependencies.
2022-10-13 21:23:09 +00:00
Kris Nuttycombe
d9dac00ac7
Merge pull request #674 from zcash/remove-unused-deps
...
Remove unused dependencies
2022-10-13 14:41:40 -06:00
Jack Grigg
8842de18cc
Remove unused dependencies
...
These were mostly detected with `cargo-udeps`, for which I've also added
exclusions for the dependencies it can't detect are used in doc-tests.
2022-10-13 20:06:52 +00:00