5.2 KiB
5.2 KiB
Changelog
All notable changes to this library will be documented in this file.
The format is based on Keep a Changelog, and this library adheres to Rust's notion of Semantic Versioning.
[Unreleased]
Added
- Implementations of
zcash_client_backend::data_api::WalletReadTransparent
andWalletWriteTransparent
have been added. These implementations are available only when thetransparent-inputs
feature flag is enabled. - New error variants:
SqliteClientError::TransparentAddress
, to support handling of errors in transparent address decoding.SqliteClientError::RequestedRewindInvalid
, to report when requested rewinds exceed supported bounds.
Changed
- MSRV is now 1.56.1.
- Bumped dependencies to
ff 0.11
,group 0.11
,jubjub 0.8
. - Renamed the following to use lower-case abbreviations (matching Rust
naming conventions):
zcash_client_sqlite::BlockDB
toBlockDb
zcash_client_sqlite::WalletDB
toWalletDb
zcash_client_sqlite::error::SqliteClientError::IncorrectHRPExtFVK
toIncorrectHrpExtFvk
.
- The SQLite implementations of
zcash_client_backend::data_api::WalletRead
andWalletWrite
have been updated to reflect the changes to those traits. - Renamed the following to reflect their Sapling-specific nature:
zcash_client_sqlite::wallet
:get_spendable_notes
toget_spendable_sapling_notes
.select_spendable_notes
toselect_spendable_sapling_notes
.
- Altered the arguments to
zcash_client_sqlite::wallet::put_sent_note
to take the components of aDecryptedOutput
value to allow this method to be used in contexts where a transaction has just been constructed, rather than only in the case that a transaction has been decrypted after being retrieved from the network. - A new non-null column,
output_pool
has been added to thesent_notes
table to enable distinguishing between Sapling and transparent outputs (and in the future, outputs to other pools). This will require a migration, which may need to be performed in multiple steps. Values for this column should be assigned by inference from the address type in the stored data.
Deprecated
- A number of public API methods that are used internally to support the
zcash_client_backend::data_api::{WalletRead, WalletWrite}
interfaces have been deprecated, and will be removed from the public API in a future release. Users should depend upon the versions of these methods exposed via thezcash_client_backend::data_api
traits mentioned above instead.- Deprecated in
zcash_client_sqlite::wallet
:get_address
get_extended_full_viewing_keys
is_valid_account_extfvk
get_balance
get_balance_at
get_sent_memo
block_height_extrema
get_tx_height
get_block_hash
get_rewind_height
get_commitment_tree
get_witnesses
get_nullifiers
insert_block
put_tx_meta
put_tx_data
mark_sapling_note_spent
delete_utxos_above
put_receiverd_note
insert_witness
prune_witnesses
update_expired_notes
put_sent_note
put_sent_utxo
insert_sent_note
insert_sent_utxo
get_address
- Deprecated in
zcash_client_sqlite::wallet::transact
:get_spendable_sapling_notes
select_spendable_sapling_notes
- Deprecated in
[0.3.0] - 2021-03-26
This release contains a major refactor of the APIs to leverage the new Data
Access API in the zcash_client_backend
crate. API names are almost all the
same as before, but have been reorganized.
Added
zcash_client_sqlite::BlockDB
, a read-only wrapper for the SQLite connection to the block cache database.zcash_client_sqlite::WalletDB
, a read-only wrapper for the SQLite connection to the wallet database.zcash_client_sqlite::DataConnStmtCache
, a read-write wrapper for the SQLite connection to the wallet database. Returned byWalletDB::get_update_ops
.zcash_client_sqlite::NoteId
Changed
- MSRV is now 1.47.0.
- APIs now take
&BlockDB
and&WalletDB<P>
arguments, instead of paths to the block cache and wallet databases. - The library no longer uses the
mainnet
feature flag to specify the network type. APIs now take aP: zcash_primitives::consensus::Parameters
variable.
Removed
zcash_client_sqlite::address
module (moved tozcash_client_backend
).
Fixed
- Shielded transactions created by the wallet that have no change output (fully spending their input notes) are now correctly detected as mined when scanning compact blocks.
- Unshielding transactions created by the wallet (with a transparent recipient address) that have no change output no longer cause a panic.
[0.2.1] - 2020-10-24
Fixed
transact::create_to_address
now correctly reconstructs notes from the data DB after Canopy activation (zcash/librustzcash#311). This is critcal to correct operation of spends after Canopy.
[0.2.0] - 2020-09-09
Changed
- MSRV is now 1.44.1.
- Bumped dependencies to
ff 0.8
,group 0.8
,jubjub 0.5.1
,protobuf 2.15
,rusqlite 0.24
,zcash_primitives 0.4
,zcash_client_backend 0.4
.
[0.1.0] - 2020-08-24
Initial release.