diff --git a/contrib/debian/changelog b/contrib/debian/changelog index 061713f43..504660f57 100644 --- a/contrib/debian/changelog +++ b/contrib/debian/changelog @@ -1,3 +1,9 @@ +zcash (2.0.0) stable; urgency=medium + + * 2.0.0 release. + + -- Zcash Company Wed, 15 Aug 2018 17:57:50 -0700 + zcash (2.0.0~rc1) stable; urgency=medium * 2.0.0-rc1 release. diff --git a/doc/authors.md b/doc/authors.md index bc5689eef..e4dfec076 100644 --- a/doc/authors.md +++ b/doc/authors.md @@ -1,41 +1,43 @@ Zcash Contributors ================== -Jack Grigg (719) -Simon Liu (341) -Sean Bowe (242) -Daira Hopwood (109) -Wladimir J. van der Laan (79) -Jay Graber (71) +Jack Grigg (760) +Simon Liu (352) +Sean Bowe (263) +Daira Hopwood (110) +Jay Graber (84) +Wladimir J. van der Laan (81) Taylor Hornby (65) Nathan Wilcox (56) -Jonas Schnelli (53) +Jonas Schnelli (55) Pieter Wuille (50) Kevin Gallagher (38) -Cory Fields (34) +Eirik Ogilvie-Wigley (36) +Cory Fields (35) syd (15) Matt Corallo (13) -Eirik Ogilvie-Wigley (12) Paige Peterson (10) MarcoFalke (10) nomnombtc (9) Jonathan "Duke" Leto (9) +kozyilmaz (8) fanquake (8) -kozyilmaz (7) Jeff Garzik (7) +Gregory Maxwell (7) +Ariel Gabizon (7) Luke Dashjr (6) -Ariel Gabizon (6) +Larry Ruane (6) +Daniel Cousens (6) Pavel Janík (5) Karl-Johan Alm (5) Johnathan Corgan (5) -Gregory Maxwell (5) Philip Kaufmann (4) Peter Todd (4) Patrick Strateman (4) João Barbosa (4) Jorge Timón (4) +Duke Leto (4) David Mercer (4) -Daniel Cousens (4) lpescher (3) Suhas Daftuar (3) Per Grön (3) @@ -55,10 +57,11 @@ aniemerg (2) UdjinM6 (2) Scott (2) Robert C. Seacord (2) +Pejvan (2) Pavol Rusnak (2) Pavel Vasin (2) Matthew King (2) -Larry Ruane (2) +Kaz Wesley (2) Joe Turgeon (2) Jack Gavigan (2) ITH4Coinomia (2) @@ -66,10 +69,12 @@ Gavin Andresen (2) Brad Miller (2) Bjorn Hjortsberg (2) Amgad Abdelhafez (2) +Alex Morcos (2) zathras-crypto (1) unsystemizer (1) practicalswift (1) mrbandrews (1) +mdr0id (1) kazcw (1) jc (1) isle2983 (1) @@ -84,6 +89,7 @@ Tom Harding (1) Stephen (1) S. Matthew English (1) Ross Nicoll (1) +Richard Littauer (1) René Nyffenegger (1) R E Broadley (1) Puru (1) @@ -103,7 +109,6 @@ Leo Arias (1) Lauda (1) Lars-Magnus Skog (1) Kevin Pan (1) -Kaz Wesley (1) Jonas Nick (1) Jeremy Rubin (1) Jeffrey Walton (1) @@ -113,10 +118,11 @@ Forrest Voight (1) Florian Schmaus (1) Ethan Heilman (1) Eran Tromer (1) -Duke Leto (1) +Dimitris Apostolou (1) David Llop (1) Christian von Roques (1) Chirag Davé (1) +Charlie OKeefe (1) Charlie O'Keefe (1) Casey Rodarmor (1) Cameron Boehmer (1) @@ -129,7 +135,6 @@ Ashley Holman (1) Anthony Towns (1) Allan Niemerg (1) Alex van der Peet (1) -Alex Morcos (1) Alex (1) Adam Weiss (1) Adam Brown (1) diff --git a/doc/release-notes.md b/doc/release-notes.md index 3905cc907..a29094b51 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -4,14 +4,3 @@ release-notes at release time) Notable changes =============== -Sapling network upgrade ------------------------ - -The activation height for the Sapling network upgrade on mainnet is included -in this release. Sapling will activate on mainnet at height 419200, which is -expected to be mined on the 28th of October 2018. Please upgrade to this release, -or any subsequent release, in order to follow the Sapling network upgrade. - -The testnet is being rolled back in this release to Overwinter. Sapling will -activate on testnet at height 280000. Please update your testnet nodes before -then. diff --git a/doc/release-notes/release-notes-2.0.0.md b/doc/release-notes/release-notes-2.0.0.md new file mode 100644 index 000000000..7dcbf5d6a --- /dev/null +++ b/doc/release-notes/release-notes-2.0.0.md @@ -0,0 +1,199 @@ +Notable changes +=============== + +Sapling network upgrade +----------------------- + +The activation height for the Sapling network upgrade on mainnet is included +in this release. Sapling will activate on mainnet at height 419200, which is +expected to be mined on the 28th of October 2018. Please upgrade to this release, +or any subsequent release, in order to follow the Sapling network upgrade. + +The testnet is being rolled back in this release to Overwinter. Sapling will +activate on testnet at height 280000. Please update your testnet nodes before +then. + +Changelog +========= + +Alex Morcos (1): + Output line to debug.log when IsInitialBlockDownload latches to false + +Ariel Gabizon (1): + Extend Joinsplit tests to Groth + +Charlie OKeefe (1): + Remove extra slash from lockfile path + +Cory Fields (1): + crypter: shuffle Makefile so that crypto can be used by the wallet + +Daira Hopwood (1): + Support testnet rollback. + +Daniel Cousens (2): + move rpc* to rpc/ + rpc: update inline comments to refer to new file paths + +Dimitris Apostolou (1): + Fix typos + +Duke Leto (3): + Fix absurd fee bug reported in #3281, with tests + Update comment as per @arielgabizon + Improve error message + +Eirik Ogilvie-Wigley (24): + Add more options when asserting in RPC tests + Add change indicator for notes + Fix test broken by change indicator + Rename note data to include sprout + Remove redundant curly braces + Consolidate for loops + Add out point for sapling note data + Add sapling note data and map + Decrement sapling note witnesses + Clear sapling witness cache + Extract method for copying previous witnesses + Extract methods for incrementing witnesses + Extract method for incrementing witness heights + Pass sapling merkle tree when incrementing witnesses + Increment sapling note witnesses + Rename sprout specific methods + Remove extra indentation + Add getter and setter for sapling note data and update tests + Add parameter for version in GetValidReceive + Rename Merkle Trees to include sprout or sapling + Rename Witnesses to include sprout or sapling + Rename test objects to include sprout or sapling + Only include the change field if we have a spending key + Fix assertion and comment + +Gregory Maxwell (2): + IBD check uses minimumchain work instead of checkpoints. + IsInitialBlockDownload no longer uses header-only timestamps. + +Jack Grigg (41): + Add some more checkpoints, up to the 1.1.0 release + Add Sapling support to z_validateaddress + Update payment-api.md with type field of z_validateaddress + Alter SaplingNote::nullifier() to take a SaplingFullViewingKey + Expose note position in IncrementalMerkleWitness + TransactionBuilder with support for creating Sapling-only transactions + TransactionBuilder: Check that all anchors in a transaction are identical + Formatting + test: Move ECC_Start() call into src/gtest/main.cpp + TransactionBuilder: Add support for transparent inputs and outputs + TransactionBuilder: Add change output to transaction + TransactionBuilder: Make fee configurable + Rename xsk to expsk + Implement CKeyStore::GetSaplingPaymentAddresses() + Raise the 90-character limit on Bech32 encodings + Add Sapling support to z_getnewaddress and z_listaddresses + Fix block hash for checkpoint at height 270000 + Formatting + test: Deduplicate logic in wallet_addresses RPC test + test: Another assert in wallet_zkeys_tests.store_and_load_sapling_zkeys + test: Fix permissions of wallet_addresses + test: Update rpc_wallet_z_importexport to account for Sapling changes + Rename DecryptSpendingKey -> DecryptSproutSpendingKey + Rename CryptedSpendingKeyMap -> CryptedSproutSpendingKeyMap + Add Sapling decryption check to CCryptoKeyStore::Unlock() + Check for unencrypted Sapling keys in CCryptoKeyStore::SetCrypted() + Remove outdated comment + Add CWallet::AddCryptedSaplingSpendingKey() hook + Pass SaplingPaymentAddress to store through the CKeyStore + Rename SpendingKeyMap -> SproutSpendingKeyMap + Rename Serialized*Size -> SerializedSprout*Size + Rename *ViewingKey* -> *SproutViewingKey* + Formatting nits + Rename *SpendingKey -> *SproutSpendingKey + chainparams: Add BIP 44 coin type (as registered in SLIP 44) + Upgrade Rust to 1.28.0 stable + Adjust Makefile so that common can be used by the wallet + Move RewindBlockIndex log message inside rewindLength check + test: gtest for Sapling encoding and decoding + test: Use regtest in key_tests/zs_address_test + Disable Sapling features on mainnet + +Jay Graber (13): + Add Sapling Add/Have/Get to keystore + Add SaplingIncomingViewingKeys map, SaplingFullViewingKey methods + Add StoreAndRetrieveSaplingSpendingKey test + Change default_address to return SaplingPaymentAddr and not boost::optional + Add crypted keystore sapling add key + Discard sk if ivk == 0 + Add Sapling support to z_exportkey + Add Sapling support to z_importkey + Add Sapling to rpc_wallet_z_importexport test + Refactor into visitors and throw errors for invalid key or address. + Take expiryheight as param to createrawtransaction + Add Sapling have/get sk crypter overrides + Add Sapling keys to CCryptoKeyStore::EncryptKeys + +Jonas Schnelli (2): + [RPC, Wallet] Move RPC dispatch table registration to wallet/ code + Fix test_bitcoin circular dependency issue + +Kaz Wesley (1): + IsInitialBlockDownload: usually avoid locking + +Larry Ruane (4): + Disable libsnark debug logging in Boost tests + add extra help how to enable experimental features + Add call to sync_all() after (z_sendmany, wait) + don't ban peers when loading pre-overwinter blocks + +Pejvan (2): + Update README.md + Update README.md + +Richard Littauer (1): + docs(LICENSE): update license year to 2018 + +Sean Bowe (21): + Update librustzcash + Implementation of Sapling in-band secret distribution. + Swap types in OutputDescription to use new NoteEncryption interfaces. + Prevent nonce reuse in Sapling note encryption API. + Add get_esk() function to Sapling note encryption. + Minor edits + Decryption and tests of note/outgoing encryption. + Update librustzcash and sapling-crypto. + Fix bug in return value. + Ensure sum of valueBalance and all vpub_new's does not exceed MAX_MONEY inside of CheckTransactionWithoutProofVerification. + Move `extern params` to beginning of `test_checktransaction`. + Relocate ECC_Start() to avoid test failures. + Don't call ECC_Start/ECC_Stop outside the test harness. + Make changes to gtest ECC behavior suggested by @str4d. + Check the hash of the (Sapling+) zk-SNARK parameters during initialization. + Switch to use the official Sapling parameters. + make-release.py: Versioning changes for 2.0.0-rc1. + make-release.py: Updated manpages for 2.0.0-rc1. + make-release.py: Updated release notes and changelog for 2.0.0-rc1. + Always write the empty root down as the best root, since we may roll back. + Sapling mainnet activation height + +Simon Liu (11): + Add encryption of SaplingNotePlaintext and SaplingOutgoingPlaintext classes. + Update and fix per review comments, the test for absurd fee. + Minor update to address nits in review. + Implement Sapling note decryption using full viewing key. + Rename AttemptSaplingEncDecryptionUsingFullViewingKey and use function overloading. + Only check for a valid Sapling anchor after Sapling activation. + Clean up for rebase: rename mapNoteData to mapSproutNoteData. + Clean up help messages for RPC createrawtransaction. + Add tests for expiryheight parameter of RPC createrawtransaction. + make-release.py: Versioning changes for 2.0.0. + make-release.py: Updated manpages for 2.0.0. + +Wladimir J. van der Laan (2): + Make max tip age an option instead of chainparam + rpc: Register calls where they are defined + +kozyilmaz (1): + Add -Wl,-pie linker option for macOS and use it instead of -pie + +mdr0id (1): + Fix minor references to auto-senescence in code +