Commit Graph

1261 Commits

Author SHA1 Message Date
Greg Pfeil 747a6b6acc Add release notes 2022-12-07 12:31:07 -07:00
Daira Hopwood ed0089d876 make-release.py: Updated release notes and changelog for 5.3.2. 2022-12-03 19:58:44 +00:00
Daira Hopwood dd47391112 make-release.py: Updated manpages for 5.3.2. 2022-12-03 19:58:44 +00:00
Daira Hopwood 35700b9d65 Add release notes for the IBD memory spike issue.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-12-03 17:52:12 +00:00
Daira Hopwood 0972ffd785 make-release.py: Updated release notes and changelog for 5.3.1. 2022-12-02 02:46:42 +00:00
Daira Hopwood 4d5f4bc60b make-release.py: Updated manpages for 5.3.1. 2022-12-02 02:46:42 +00:00
Daira Hopwood 1ef5372859 Update release notes: z_getnotescount already had the minconf parameter
Co-authored-by: Greg Pfeil <greg@technomadic.org>
2022-11-28 14:08:55 -07:00
Daira Hopwood 1dd4be5474 Add release notes for #6122 (`asOfHeight` RPC parameters).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-11-28 14:08:47 -07:00
Greg Pfeil 761b764b51 make-release.py: Updated release notes and changelog for 5.3.1-rc1. 2022-11-23 22:18:55 -07:00
Greg Pfeil 4ec715c6db make-release.py: Updated manpages for 5.3.1-rc1. 2022-11-23 22:18:54 -07:00
Daira Hopwood aee8d5c0ec Avoid storing the Equihash solution in a CBlockIndex object once it has been written
to the leveldb database.

Co-authored-by: Jack Grigg <thestr4d@gmail.com>
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-11-21 18:24:45 +00:00
Daira Hopwood e85dae7f12
Fix a Markdown syntax error
Co-authored-by: Greg Pfeil <greg@technomadic.org>
2022-11-10 03:05:16 +00:00
Daira Hopwood 6da5742edd Add release notes for the fix to #5958.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-11-09 15:00:24 +00:00
Kris Nuttycombe e417ba89a6
Merge pull request #6211 from sellout/updatecheck-token-path
Improve token handling in the updatecheck script
2022-10-26 12:15:29 -06:00
Greg Pfeil 1296b646b3
Apply suggestions from code review
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-10-26 09:07:58 -06:00
Greg Pfeil 8e333b3f49 updatecheck: support XDG-based token location
Have updatecheck look in $XDG_DATA_HOME/zcash/updatecheck/token for the GH
token. Having one in the repo will still take precedence (for pre-existing
users, as well as if you want to override the token used in a particular
case). The new location is standardized, exists at the user level (as the token
logically does), and means that you don't need to copy files around if you get a
new clone or worktree to do a release.
2022-10-20 12:25:13 -06:00
Greg Pfeil 4c21d6f444 updatecheck: simplify token handling
- make the token optional (just will hit a rate limit after a few runs of the
  script)
- only load the token once, rather than once per request (this is necessary
  after the above change, so you don't get the warning printed repeatedly)
- switch from BasicAuth to an Authorization header (this means we no longer need
  the GitHub username, just the token)
- support a token file that doesn't contain a username (it will still parse old
  versions of the file properly)
2022-10-20 12:13:30 -06:00
Greg Pfeil d557b6e5c5 make-release.py: Updated release notes and changelog for 5.3.0. 2022-10-20 10:52:37 -06:00
Greg Pfeil b6681791fc make-release.py: Updated manpages for 5.3.0. 2022-10-20 10:52:37 -06:00
Jack Grigg 2b28a56c27 make-release.py: Updated release notes and changelog for 5.3.0-rc1. 2022-10-11 11:30:02 +00:00
Jack Grigg 4f03ebb2a5 make-release.py: Updated manpages for 5.3.0-rc1. 2022-10-11 11:30:01 +00:00
Jack Grigg 39401964d2 metrics: Add gauge for the height to which the wallet is synced 2022-09-25 22:14:22 +00:00
Greg Pfeil bdde47fb5d Fix finalorchardroot serialization
Previously, `finalorchardroot` and `orchard.anchor` were serialized differently
in the RPC API, which made it difficult to correlate them. This changes the
serialization for `finalorchardroot` to match `orchard.anchor`.
2022-09-22 18:20:42 -06:00
Jack Grigg f7f6c2070d wallet: Only store successful trial decryptions in batch scanner
Previously we were sending an `Option<DecryptedNote>` from each `Batch`
back to its parent `BatchRunner`. However, this requires allocating
sufficient space in the channel to handle the case where every output
can be decrypted. In general this will not be the case, and we can
instead signal "nothing decrypted" by just dropping the channel sender.
This reduces the post-batch-scanning memory usage of `BatchRunner` from
being linear in the number of on-chain outputs, to being linear in the
number of outputs for the wallet.
2022-09-21 01:27:42 +00:00
Jack Grigg 0072ea2447 wallet: Set a memory limit of 100 MiB for batch scanning 2022-09-21 01:27:42 +00:00
Jack Grigg 7bb6ff38d9 wallet: Collect metrics on the number of scanned outputs 2022-09-21 01:27:42 +00:00
Jack Grigg e88ea11055 wallet: Add dynamic memory usage tracking to `BatchScanner` 2022-09-21 01:27:42 +00:00
Nathan Wilcox b8ed6aaa99
Update rust.md 2022-09-01 10:01:38 -07:00
Daira Hopwood 2621efd0da
Update doc/book/src/user/security-warnings.md 2022-08-30 14:40:34 +01:00
Daira Hopwood a6c05f1a28
Apply suggestions from code review 2022-08-30 14:39:37 +01:00
Kris Nuttycombe fbdfbae593 Move restored documentation into the zcashd book 2022-08-25 10:44:11 -06:00
Greg Pfeil 07d52d006e Backport tor.md changes from readthedocs
This is an separate from the other backporting because this was an upstream
document, so isolating it helps with future backports from upstream.
2022-08-25 10:44:11 -06:00
Kris Nuttycombe ad72a606c2 Backport changes from zcash.readthedocs.io 2022-08-25 10:44:11 -06:00
Kris Nuttycombe e9234ed50f Fix documentation line wrapping 2022-08-25 10:44:09 -06:00
Kris Nuttycombe ef07ba47bc Revert "redirect and update source documentation"
This reverts commit 70ebc0942a.
2022-08-25 10:29:54 -06:00
Kris Nuttycombe df6e05173e
Merge pull request #6083 from zcash/leveldb-1.22
Update LevelDB to 1.22+
2022-08-10 18:14:43 -06:00
Sean Bowe b63dc026c7
make-release.py: Updated release notes and changelog for 5.2.0. 2022-07-25 12:42:25 -06:00
Sean Bowe 011092e608
make-release.py: Updated manpages for 5.2.0. 2022-07-25 12:42:25 -06:00
Kris Nuttycombe 9186131098 Fix incomplete release notes for witness pruning. 2022-07-22 17:14:28 -06:00
Kris Nuttycombe c2f8318444 make-release.py: Updated release notes and changelog for 5.2.0-rc1. 2022-07-22 15:52:42 -06:00
Kris Nuttycombe 7125a164ad make-release.py: Updated manpages for 5.2.0-rc1. 2022-07-22 15:49:26 -06:00
Kris Nuttycombe c6da56c216 Update release notes for v5.2.0.
This also updates the v5.1.0 release notes with a change that had
been previously missed.
2022-07-22 15:40:52 -06:00
Wladimir J. van der Laan f0d57e8948 doc: Add crc32c subtree to developer notes
(cherry picked from commit bitcoin/bitcoin@7cf13a5134)
2022-07-16 12:01:22 +01:00
Pieter Wuille 204d0c37ab Do not store Merkle branches in the wallet.
Assume that when a wallet transaction has a valid block hash and transaction position
in it, the transaction is actually there. We're already trusting wallet data in a
much more fundamental way anyway.

To prevent backward compatibility issues, a new record is used for storing the
block locator in the wallet. Old wallets will see a wallet file synchronized up
to the genesis block, and rescan automatically.

(cherry picked from commit bitcoin/bitcoin@391dff16fe)
2022-07-08 21:03:40 +00:00
Jack Grigg dda0f79277 doc: Add `decoderawtransaction` to 5.1.0 release notes 2022-07-08 10:27:04 +00:00
Jack Grigg 4d7ce75ef1 make-release.py: Updated release notes and changelog for 5.1.0. 2022-07-08 03:01:54 +00:00
Jack Grigg d79b6ca209 make-release.py: Updated manpages for 5.1.0. 2022-07-08 03:01:54 +00:00
Jack Grigg c1b40ec2a8 Add missing release note entries for 5.1.0 2022-07-08 02:47:34 +00:00
Jack Grigg 5230c9f2f4 miner: Disable proof and signature checks in CreateNewBlock
The only source of transactions for `CreateNewBlock` is the mempool, and
every transaction added to the mempool goes through `AcceptToMemoryPool`
which checks proofs and signatures.

We maintain the ability to enable these checks in `TestBlockValidity`
because it is also used in an (undocumented) `getblocktemplate` mode to
check a proposed block (minus PoW), where we cannot assume the
transactions are valid.

Co-authored-by: Kris Nuttycombe <kris@nutty.land>
2022-07-06 19:38:15 +00:00
sasha eb43bc5c02 make-release.py: Updated release notes and changelog for 5.1.0-rc1. 2022-07-05 22:25:25 +00:00
sasha 14b3c21f4a make-release.py: Updated manpages for 5.1.0-rc1. 2022-07-05 22:25:25 +00:00
Jack Grigg cb5a4acca9 Update release notes 2022-07-05 21:36:45 +00:00
Kris Nuttycombe 59cabff22d Deprecate the `vjoinsplit` field of `gettransaction` results.
Author: Kris Nuttycombe <kris@nutty.land>
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-07-01 15:47:16 +01:00
Jack Grigg ee256e2350 book: Add section about auditing Rust dependencies 2022-06-09 17:00:15 +00:00
Kris Nuttycombe f3a9dcc0cf Mark the `dumpwallet` RPC method as disabled.
Fixes #5513
2022-05-26 14:31:26 -06:00
Kris Nuttycombe 1b5ab4a06e
Merge pull request #5967 from nuttycom/feature/prefer_V4_tx_creation
Add a CLI flag to preferentially send V4 tx.
2022-05-26 09:11:47 -06:00
Kris Nuttycombe 9691d86047 Add a CLI flag to preferentially send V4 tx.
Since the wallet ecosystem may not be fully updated to handle
v5 transaction parsing at the point of NU5 activation, some
nodes may prefer to construct V4 transactions when not including
Orchard transaction components.

This change adds a CLI flag that allows node users to specify
that preference.
2022-05-26 07:26:38 -06:00
Jack Grigg dd51f0995e book: Add FreeBSD to tier 3 platforms list 2022-05-24 13:40:15 +00:00
Jack Grigg a94b26f029 book: Capitalize key words in platform tier policy 2022-05-24 13:11:12 +00:00
Jack Grigg 9f6b7ab85a book: Add platform support information and tier policy 2022-05-12 10:58:07 +00:00
Kris Nuttycombe 40c2d02997 Fix incorrect links in 5.0.0 release notes. 2022-05-11 14:54:22 -06:00
Kris Nuttycombe 16b49eadd5 Update v5.0.0 release notes to note NU5 upgrade 2022-05-10 20:14:00 -06:00
Kris Nuttycombe 10fb705f45 make-release.py: Updated release notes and changelog for 5.0.0. 2022-05-10 19:52:28 -06:00
Kris Nuttycombe f97d83981f make-release.py: Updated manpages for 5.0.0. 2022-05-10 19:52:28 -06:00
Kris Nuttycombe 721e5d85ab Deprecate `getrawchangeaddress` and `z_listaddresses` 2022-05-10 16:23:15 -06:00
Kris Nuttycombe c6ceeb1646
Merge pull request #5934 from nuttycom/fix/release-notes-typos
Fix typos in release notes & Orchard wallet internal API doc.
2022-05-09 12:52:35 -06:00
Kris Nuttycombe 7defcb8341
Merge pull request #5926 from nuttycom/deprecation/z_getbalance
Add z_get(total)balance to deprecation flags.
2022-05-09 12:52:16 -06:00
Jack Grigg 64ccad1a89 make-release.py: Updated release notes and changelog for 5.0.0-rc1. 2022-05-09 15:35:33 +00:00
Jack Grigg e7f04c1741 make-release.py: Updated manpages for 5.0.0-rc1. 2022-05-09 15:35:33 +00:00
Kris Nuttycombe f41ccaf244 Fix typos in release notes & Orchard wallet internal API doc. 2022-05-09 09:30:02 -06:00
Kris Nuttycombe 731df21da7 Fix a typo in the release script. 2022-05-09 09:12:46 -06:00
Kris Nuttycombe 8ca33e06f7
Merge pull request #5919 from nuttycom/feature/z_sendmany_tx_limit
Add -orchardactionlimit parameter to guard against memory exhaustion.
2022-05-09 08:39:09 -06:00
Kris Nuttycombe 5c1a99a288
Merge pull request #5917 from nuttycom/feature/wallet_orchard-checkpoint_depth
Select anchors at `-anchorconfirmations` depth.
2022-05-09 08:29:55 -06:00
Kris Nuttycombe a71db41d38 Add -orchardactionlimit parameter to guard against memory exhaustion.
Orchard proving can require large amounts of memory, so by default
`z_sendmany` will not attempt to create transactions containing more
than 50 Orchard inputs or outputs to reduce the risk of memory
exhaustion.  The `-orchardactionlimit` parameter allows users with
larger amounts of memory at their disposal to override this limit.

Fixes #5889
2022-05-06 22:16:13 -06:00
Kris Nuttycombe 295f7d9f7b Change default anchor depth from 10 confirmations to 3 2022-05-06 18:05:39 -06:00
Kris Nuttycombe a5f6af12b8 Update release process documentation to clarify the use of release stabilization branches. 2022-05-06 07:30:32 -06:00
Kris Nuttycombe 6b80f3ba1f Apply suggestions from code review
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-05-06 07:30:29 -06:00
Kris Nuttycombe 91ef609c1b Build releases from a commit hash, rather than a named branch.
This modifies the release script to take as its first argument
the hash of the git commit to be released. It also improves the
verification of the previous commit tag by ensuring that the tag
exists in the history of the specified commit.
2022-05-06 07:29:46 -06:00
Kris Nuttycombe 7f29c53c33 Apply suggestions from code review
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-05-05 12:29:40 -06:00
Kris Nuttycombe 0c59fd9a20 Add z_get(total)balance to deprecation flags. 2022-05-05 07:53:29 -06:00
Kris Nuttycombe f285a39063
Merge pull request #5410 from LarryRuane/2021-12-06-test-python-standalone
Allow rpc python tests to be run standalone
2022-05-04 17:41:42 -06:00
Kris Nuttycombe af18ee1aba Add -anchorconfirmations to the release notes 2022-05-04 16:07:40 -06:00
Kris Nuttycombe 63e4addd9a Select Orchard anchors at `-orchardanchorconfirmations` depth.
This changes anchor selection and Orchard authentication path generation
to default to select anchors at a the depth specified by the
`-orchardanchorconfirmations` CLI argument, with a default anchor
selection depth of 10 blocks.

If the value of `minconf` used for a particular call to `z_sendmany` is
less than the the set number of Orchard anchor confirmations, `minconf`
will be used instead for the Orchard anchor confirmations depth,
so that the selected anchor will be certain to contain any notes
selected to be spent.

Fixes #5644
2022-05-04 14:16:43 -06:00
Kris Nuttycombe 37bbb9f239 Clarify documentation of the deprecation process.
Co-authored-by: str4d <thestr4d@gmail.com>
2022-05-04 11:53:54 -06:00
Kris Nuttycombe 717b253a01 Remove `-allowdeprecated=all`
We've decided to remove the option to allow all deprecated features,
because this has the effect that, if a user enables this flag, they
won't get the warning (and hence may forget to take action) at the time
that a feature is moved from the default-allowed set to the
default-denied set.

Co-authored-by: str4d <thestr4d@gmail.com>
2022-05-03 20:32:10 -06:00
Kris Nuttycombe 81b15f3eb7 Add deprecation policy to the zcashd book. 2022-04-28 15:21:16 -06:00
Kris Nuttycombe 4ea9de5ff6 Remove zcrawreceive, zcrawjoinsplit, zcrawkeygen from default-allowed deprecated methods. 2022-04-28 15:21:13 -06:00
Kris Nuttycombe d6d3be9bf2 Allow deprecated wallet features to be preemptively disabled.
This adds an `-allowdeprecated` CLI parameter whose value is a flag
indicating a deprecated feature that should be explicitly enabled.
Multiple instances of this argument may be provided. In the case that
this parameter is not provided, all currently deprecated RPC methods
that are not slated for removal in the next release remain available.
A user may disable all deprecated features entirely by providing the
string "none" as the argument to this parameter, or enable all
deprecated features, including those slated for removal, by providing
the string "all" as the argument to this parameter. In the case that
"all" or "none" is specified, multiple invocations of `-allowdeprecated`
are not permitted.

To explicitly enable only a specific set of deprecated features, use
`-allowdeprecated=<flag1> -allowdeprecated=<flagN> ...` when starting
zcashd. The following flags are recognized:

- "all" - enables all deprecated features.
- "none" - disables all deprecated features.
- "legacy_privacy" - enables the use of the deprecated "legacy" privacy
  policy for z_sendmany. This causes the default behavior to conform to
  the `FullPrivacy` directive in all cases instead of just for
  transactions involving unified addresses.
- "getnewaddress" - enables the `getnewaddress` RPC method.
- "z_getnewaddress" - enables the `z_getnewaddress` RPC method.
- "zcrawreceive" - enables the `zcrawreceive` RPC method.
- "zcrawjoinsplit" - enables the `zcrawjoinsplit` RPC method.
- "zcrawkeygen" - enables the `zcrawkeygen` RPC method.
- "addrtype" - when this option is set, the deprecated `type` attribute
  is returned in addition to `pool` or `address_type` (which contain the
  same information) in the results of RPC methods that return address metadata.
2022-04-28 15:20:05 -06:00
Larry Ruane c5752c7ea2 Allow rpc python tests to be run standalone
That is, without having to launch with test_runner.py. There are
several places where the BITCOIND environment variable determines the
executable, but the default is "bitcoind"; change the default to
"src/zcashd". This does require running the test from the top-level
directory.

Also change the environment variable from BITCOIND to ZCASHD. This could
conceivable break someone, but it just makes too much sense not to do.
2022-04-26 15:06:31 -06:00
Daira Hopwood 1b967fcae2 Change the numbering convention for hotfixes to increment the patch number, not the hyphen number.
fixes #4364

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-04-26 09:21:00 -06:00
Kris Nuttycombe 57d9d9ee05 Update boost dependencies to version 1.79.0 2022-04-14 13:31:14 -06:00
Kris Nuttycombe 3ee9c3accd
Merge branch 'master' into make-reindex-imply-rescan 2022-04-14 10:47:24 -06:00
Charlie O'Keefe e00a1215c0
Merge pull request #5871 from daira/clean-before-build
zcutil/build.sh: Run zcutil/clean.sh before building
2022-04-14 10:46:31 -06:00
Daira Hopwood af7d883854 Make `-reindex` and `-reindex-chainstate` imply `-rescan`
(provided that the wallet is enabled and pruning is disabled,
and unless `-rescan=0` is specified explicitly).

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-04-14 14:53:29 +01:00
Daira Hopwood 2807c3f1a1 zcutil/build.sh: Run zcutil/clean.sh before building.
fixes #3625

We use clean.sh rather than distclean.sh because the checksumming
and redownloading of C++ dependencies is pretty robust.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-04-14 14:51:49 +01:00
Daira Hopwood 265d02fa1e Fix to 4.7.0 release notes: testnet nodes that upgrade prior to height 1,842,420
actually still need to run with -reindex and -rescan.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-04-14 14:35:06 +01:00
Kris Nuttycombe 44d0cf0c7c make-release.py: Updated release notes and changelog for 4.7.0. 2022-04-13 22:14:59 -06:00
Kris Nuttycombe ec42f38cfc make-release.py: Updated manpages for 4.7.0. 2022-04-13 22:04:00 -06:00
Kris Nuttycombe a9e75ed10d Apply suggestions from code review
Co-authored-by: Larry Ruane <larry@z.cash>
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
Co-authored-by: Steven <57410303+steven-ecc@users.noreply.github.com>
2022-04-13 17:01:17 -06:00
Kris Nuttycombe 254122f9d2 Update the release notes to describe consensus changes since v4.6.0 2022-04-13 12:28:36 -06:00