Merge pull request #343 from str4d/changelogs-add-unreleased
Add details of unreleased changes to changelogs
This commit is contained in:
commit
47f3b5f045
|
@ -6,7 +6,37 @@ and this library adheres to Rust's notion of
|
|||
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [Unreleased]
|
||||
TBD
|
||||
### Added
|
||||
- `zcash_client_backend::address::RecipientAddress`
|
||||
- `zcash_client_backend::data_api` module, containing the Data Access API.
|
||||
- `zcash_client_backend::wallet`:
|
||||
- `AccountId`
|
||||
- `SpendableNote`
|
||||
- `OvkPolicy`
|
||||
- First alpha of TZE support, behind the `zfuture` feature flag.
|
||||
|
||||
### Changed
|
||||
- `epk` fields and return values were changed from a `jubjub::SubgroupPoint` to
|
||||
a `jubjub::ExtendedPoint`, to match the change to the `zcash_primitives`
|
||||
decryption APIs:
|
||||
- `zcash_client_backend::proto::compact_formats::CompactOutput::epk()`
|
||||
- The `epk` field of `zcash_client_backend::wallet::WalletShieldedOutput`.
|
||||
- `zcash_client_backend::decrypt::decrypt_transaction` now takes a variable with
|
||||
type `P: zcash_primitives::consensus::Parameters`.
|
||||
- `zcash_client_backend::wallet`:
|
||||
- The `nf` property of `WalletShieldedSpend` now has the type `Nullifier`.
|
||||
- The `account` property of `WalletShieldedSpend` and `WalletShieldedOutput`
|
||||
now has the type `AccountId`.
|
||||
- `zcash_client_backend::welding_rig`:
|
||||
- `scan_block` now takes `&[(AccountId, IncomingViewingKey)]`, instead of a
|
||||
slice of extended full viewing keys with implicit account IDs.
|
||||
- The `nullifiers` argument to `scan_block` now has the type
|
||||
`&[(AccountId, Nullifier)]`.
|
||||
|
||||
### Removed
|
||||
- `zcash_client_backend::constants` module (its sub-modules have been moved into
|
||||
`zcash_primitives::constants`, and more generally replaced by the new methods
|
||||
on the `zcash_primitives::consensus::Parameters` trait).
|
||||
|
||||
## [0.4.0] - 2020-09-09
|
||||
### Changed
|
||||
|
|
|
@ -6,7 +6,27 @@ and this library adheres to Rust's notion of
|
|||
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [Unreleased]
|
||||
TBD
|
||||
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 by `WalletDB::get_update_ops`.
|
||||
- `zcash_client_sqlite::NoteId`
|
||||
|
||||
### Changed
|
||||
- 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 a `P: zcash_primitives::consensus::Parameters` variable.
|
||||
|
||||
### Removed
|
||||
- `zcash_client_sqlite::address` module (moved to `zcash_client_backend`).
|
||||
|
||||
## [0.2.1] - 2020-10-24
|
||||
### Fixed
|
||||
|
|
|
@ -6,7 +6,100 @@ and this library adheres to Rust's notion of
|
|||
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [Unreleased]
|
||||
TBD
|
||||
### Added
|
||||
- Support for implementing candidate ZIPs before they have been selected for a
|
||||
network upgrade, behind the `zfuture` feature flag.
|
||||
- At runtime, these ZIPs are gated behind the new `NetworkUpgrade::ZFuture`
|
||||
enum case, which is inaccessible without the `zfuture` feature flag. This
|
||||
pseudo-NU can be enabled for private testing using a custom implementation
|
||||
of the `Parameters` trait.
|
||||
- New structs and methods:
|
||||
- `zcash_primitives::consensus`:
|
||||
- `BlockHeight`
|
||||
- New methods on the `Parameters` trait:
|
||||
- `coin_type`
|
||||
- `hrp_sapling_extended_spending_key`
|
||||
- `hrp_sapling_extended_full_viewing_key`
|
||||
- `hrp_sapling_payment_address`
|
||||
- `b58_pubkey_address_prefix`
|
||||
- `b58_script_address_prefix`
|
||||
- The `Network` enum, which enables code to be generic over the network type
|
||||
at runtime.
|
||||
- `zcash_primitives::primitives::Nullifier` struct.
|
||||
- `zcash_primitives::transaction`:
|
||||
- `TxVersion` enum, representing the set of valid transaction format
|
||||
versions.
|
||||
- `SignableInput` enum, encapsulating per-input data used when
|
||||
creating transaction signatures.
|
||||
- Test helpers, behind the `test-dependencies` feature flag:
|
||||
- `zcash_primitives::prover::mock::MockTxProver`, for building transactions in
|
||||
tests without creating proofs.
|
||||
- `zcash_primitives::transaction::Builder::test_only_new_with_rng` constructor
|
||||
which accepts a non-`CryptoRng` randomness source (for e.g. deterministic
|
||||
tests).
|
||||
- `proptest` APIs for generating arbitrary Zcash types.
|
||||
- New constants:
|
||||
- `zcash_primitives::consensus`:
|
||||
- `H0`, the height of the genesis block.
|
||||
- `MAIN_NETWORK`
|
||||
- `TEST_NETWORK`
|
||||
- `zcash_primitives::constants::{mainnet, testnet, regtest}` modules,
|
||||
containing network-specific constants.
|
||||
- `zcash_primitives::note_encryption`:
|
||||
- `ENC_CIPHERTEXT_SIZE`
|
||||
- `OUT_CIPHERTEXT_SIZE`
|
||||
- `zcash_primitives::transaction::components::amount`:
|
||||
- `COIN`
|
||||
- `MAX_MONEY`
|
||||
- More implementations of standard traits:
|
||||
- `zcash_primitives::consensus`:
|
||||
- `Parameters: Clone`
|
||||
- `MainNetwork: PartialEq`
|
||||
- `TestNetwork: PartialEq`
|
||||
- `zcash_primitives::legacy`:
|
||||
- `Script: PartialEq`
|
||||
- `TransparentAddress: Clone + PartialOrd + Hash`
|
||||
- `zcash_primitives::redjubjub::PublicKey: Clone`
|
||||
- `zcash_primitives::transaction`:
|
||||
- `Transaction: Clone`
|
||||
- `TransactionData: Clone + Default`
|
||||
- `components::Amount: Eq + PartialOrd + Ord`
|
||||
- `components::TxIn: Clone + PartialEq`
|
||||
- `components::TxOut: PartialEq`
|
||||
- `components::SpendDescription: Clone`
|
||||
- `components::OutputDescription: Clone`
|
||||
- `components::SproutProof: Clone`
|
||||
- `components::JSDescription: Clone`
|
||||
- `zcash_primitives::zip32::DiversifierIndex: Default`
|
||||
|
||||
### Changed
|
||||
- Trial decryption using the APIs in `zcash_primitives::note_encryption` is now
|
||||
over 60% faster at detecting which notes are relevant.
|
||||
- Part of this improvement was achieved by changing the APIs to take `epk` as
|
||||
a `&jubjub::ExtendedPoint` instead of a `&SubgroupPoint`.
|
||||
- Various APIs now take the network parameters as an explicit variable instead
|
||||
of a type parameter:
|
||||
- `zcash_primitives::consensus::BranchId::for_height`
|
||||
- The `zcash_primitives::note_encryption` APIs.
|
||||
- `zcash_primitives::transaction::builder`:
|
||||
- `SaplingOutput::new`
|
||||
- `Builder::new`
|
||||
- `Builder::new_with_rng`
|
||||
- `Parameters::activation_height` and `Parameters::is_nu_active` now take
|
||||
`&self`.
|
||||
- `zcash_primitives::merkle_tree::CommitmentTree::new` has been renamed to
|
||||
`CommitmentTree::empty`.
|
||||
- `zcash_primitives::primitives::Note::nf` now returns `Nullifier`.
|
||||
- `zcash_primitives::transaction`:
|
||||
- The `overwintered`, `version`, and `version_group_id` properties of the
|
||||
`Transaction` and `TransactionData` structs have been replaced by
|
||||
`version: TxVersion`.
|
||||
- `components::amount::DEFAULT_FEE` is now 1000 zatoshis, following
|
||||
[ZIP 313](https://zips.z.cash/zip-0313).
|
||||
- The `nullifier` property of `components::SpendDescription` now has the type
|
||||
`Nullifier`.
|
||||
- `signature_hash` and `signature_hash_data` now take a `SignableInput`
|
||||
argument instead of a `transparent_input` argument.
|
||||
|
||||
## [0.4.0] - 2020-09-09
|
||||
### Added
|
||||
|
|
|
@ -6,7 +6,26 @@ and this library adheres to Rust's notion of
|
|||
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [Unreleased]
|
||||
TBD
|
||||
### Added
|
||||
- `zcash_proofs::ZcashParameters`
|
||||
- `zcash_proofs::parse_parameters`
|
||||
- `zcash_proofs::prover::LocalProver::from_bytes`
|
||||
- The `zcash_proofs::constants` module, containing constants and helpers used by
|
||||
the `zcash_proofs::circuit::ecc::fixed_base_multiplication` gadget:
|
||||
- The `FixedGeneratorOwned` type alias.
|
||||
- `generate_circuit_generator`
|
||||
- The six Zcash fixed generators:
|
||||
- `PROOF_GENERATION_KEY_GENERATOR`
|
||||
- `NOTE_COMMITMENT_RANDOMNESS_GENERATOR`
|
||||
- `NULLIFIER_POSITION_GENERATOR`
|
||||
- `VALUE_COMMITMENT_VALUE_GENERATOR`
|
||||
- `VALUE_COMMITMENT_RANDOMNESS_GENERATOR`
|
||||
- `SPENDING_KEY_GENERATOR`
|
||||
- `zcash_proofs::sapling::SaplingProvingContext: Default`
|
||||
- `zcash_proofs::sapling::SaplingVerificationContext: Default`
|
||||
|
||||
### Changed
|
||||
- `zcash_proofs::load_parameters` now returns `ZcashParameters`.
|
||||
|
||||
## [0.4.0] - 2020-09-09
|
||||
### Changed
|
||||
|
|
Loading…
Reference in New Issue