Commit Graph

1534 Commits

Author SHA1 Message Date
Jack Grigg 13657342c8 qa: Recommend cargo-upgrades instead of cargo-outdated
Closes zcash/zcash#6090.
2022-10-10 19:05:51 +00:00
Jack Grigg 9a69c2b01e rust: Update to `cpufeatures 0.2.5`
Closes zcash/zcash#6195.
2022-10-10 19:04:39 +00:00
Jack Grigg f7b59a5ddb qa: Postpone Clang 15.0.2 2022-10-10 18:56:49 +00:00
Jack Grigg 1f836859f3 depends: Update cxx to 1.0.78 2022-10-10 18:56:12 +00:00
Jack Grigg 3b9f7c2a69 rust: Update to `metrics 0.20` 2022-10-10 18:44:33 +00:00
Greg Pfeil ad47364f31 Address review feedback and fixed test failures
Some tests were checking error message strings, but the check was still
hardcoded to “bitcoind”.
2022-10-04 10:21:06 -06:00
Greg Pfeil 6a7c86e63b Fix display of binary name in error messages.
Ensures that test failures report the name of the actual binary that was run.
2022-10-04 10:21:06 -06:00
DeckerSU 225c8b8a03
test_framework: fix AttributeError in sapling_spends_compact_digest
Without this fix we will get:
AttributeError: 'SpendDescriptionV5' object has no attribute 'anchor'
On certain V5 transactions rehash / calc_sha256, for example:
ca6abd8ef7d6ef158a4a35ea2c2c0cf122f2f664a88f8fa5b6fd79e48c5bed59
2022-10-04 01:54:34 +02:00
str4d f466eb0484
Merge pull request #6156 from daira/prepare-epks-and-ivks
Switch to a version of librustzcash that prepares ivk and epk when doing trial decryption
2022-09-27 22:59:45 +01:00
Jack Grigg 0e3fc36a47 wallet: Correctly track heap usage of batch items
As of zcash/librustzcash#633, `SaplingDomain::IncomingViewingKey` now
allocates memory internally, and this memory persists as long as the
`BatchRunner` is alive. Now that we have decoupled the measurement of
heap usage for batch tasks from their internals, we can add bounds to
all of the generic parameters of `Batch` to enable correctly measuring
their actual heap usage.

Ported from zcash/librustzcash@913aa0a988.
2022-09-26 22:19:33 +00:00
Kris Nuttycombe 34f0a973c7
Merge pull request #6152 from sellout/orchard-anchor-hash
Fix finalorchardroot serialization
2022-09-23 19:53:54 -06:00
Daira Hopwood 9c433909f5 Audit dependency updates.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-24 02:49:19 +01:00
Greg Pfeil 5514542a0a
Apply suggestions from code review
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-09-23 18:39:00 -06:00
Jack Grigg 153248aee1 qa: Add audit policies for patched Rust crates 2022-09-23 03:44:07 +00:00
Jack Grigg d3b434eb0f depends: Update cxx to 1.0.76 2022-09-23 03:44:07 +00:00
Jack Grigg 6af969a7b7 qa: Postpone Clang 15 to retain LLVM 14 pin 2022-09-23 02:57:07 +00:00
Jack Grigg d33594026c qa: Postpone dependencies that require CMake 2022-09-23 02:57:07 +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
Greg Pfeil 4f4ef5537b Add a finalorchardroot RPC test 2022-09-22 14:13:58 -06:00
Kris Nuttycombe da5fbfe747
Merge pull request #6132 from sellout/rpc-test-improvements
RPC test improvements
2022-08-22 16:06:50 -06:00
Greg Pfeil 6766e39ad1 Add simplejson to requirements for rpc-tests 2022-08-22 13:38:16 -06:00
Greg Pfeil 113d7a4840 Add an `rpc-tests` make target
This ensures that zcashd is up-to-date with any changes before running the
tests.
2022-08-22 13:38:16 -06:00
Jack Grigg 8d82cee9c8 rust: Add `zcash-inspect` binary for inspecting Zcash data
Currently supports Zcash blocks, block headers, and transactions. Some
consensus rules are also checked, and a JSON context object can be
optionally passed to provide any necessary details for extra contextual
consensus checks.
2022-08-19 04:13:05 +00:00
Jack Grigg a2b971befb rust: Update some of the pinned dependencies
The primary purpose of this commit is an exercise in using `cargo vet`
for tracking audits of our Rust dependency updates. `cargo update` was
run, and then a simple-to-audit subset of the dependency updates were
audited and committed.
2022-08-17 10:39:38 +00:00
Jack Grigg 12c36670fe depends: Update Clang / libcxx to LLVM 14.0.6
In practice we are using 14.0.0 in most cases, as the LLVM Project have
not published Ubuntu binaries for any point release after 14.0.0 (which
we are using here).
2022-08-10 23:10:40 +00:00
Jack Grigg 93422e8fe2 depends: Update Rust to 1.62.1 2022-08-10 22:57:46 +00:00
Kris Nuttycombe 4a17098b72
Merge branch 'version-5.2.0' into narrow-too-many-args 2022-07-25 10:42:15 -06:00
Daira Hopwood a227652d7d Update cxx to 1.0.72.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-07-25 14:57:19 +01:00
Kris Nuttycombe e48d26eeb9 qa: Postpone recent native_rust, native_cxxbridge and rustcxx updates 2022-07-22 14:56:22 -06:00
Kris Nuttycombe 035a26b674 Replace setup_clean_chain with cache_behavior in rpc test init. 2022-07-18 09:00:34 -06:00
Kris Nuttycombe 6477c6165b Update getblocktemplate test to use persisted sprout chain 2022-07-18 09:00:34 -06:00
Kris Nuttycombe 91f62f4161 Update finalsaplingroot test to use persisted sprout chains. 2022-07-18 09:00:34 -06:00
Kris Nuttycombe 95bbfd09aa Update feature_zip239 test to use persisted sprout chains. 2022-07-15 08:23:57 -06:00
Kris Nuttycombe b2fc56c24a Update sprout_sapling_migration test to use persisted sprout chains. 2022-07-15 08:23:57 -06:00
Kris Nuttycombe afea5c386d Add RPC test initialization using the persisted Sprout chains. 2022-07-15 08:23:57 -06:00
Kris Nuttycombe 532017e74e Remove the temporary test that was used for setup of the cached Sprout fixtures. 2022-07-15 08:23:57 -06:00
Kris Nuttycombe 5d44ce318e Add persistent Sprout test data.
This is in preparation for removing the ability to generate
Sprout outputs from z_shieldcoinbase. Once that is complete,
we will no longer be able to use `z_shieldcoinbase` for test
setup for uses of Sprout funds; instead, the persisted blockchain
state created in this commit will be used for tests that require
the use of Sprout funds.

This brings the test framework into line with how Sprout funds
are now used on mainnet and testnet; existing Sprout funds may
be spent, and Sprout change may be created, but no funds may
be transfered into the Sprout pool, since the activation of
ZIP 211.
2022-07-15 08:23:57 -06:00
Kris Nuttycombe 40df3d402e
Merge pull request #6042 from nuttycom/feature/clock_capability
Add a clock for testing with an offset from the system clock.
2022-07-15 08:23:23 -06:00
Kris Nuttycombe e7922af588 Add a clock for testing with an offset from the system clock.
This change improves clock management for zcashd by ensuring
that all clock methods (obtaining seconds, milliseconds, and
microseconds since the epoch) agree under testing conditions
using `-mocktime`, and also adds a feature that allows tests
to specify an offset to the system clock; this is useful to
allow comprehensive testing of the "timejacking attack mitigation"
consensus rules.
2022-07-14 16:33:54 -06:00
zancas a4a0fbb3c0 match the actual two hyphen flag 2022-07-14 07:44:17 -06:00
str4d 050133358b
Merge pull request #6059 from superbaud/smoketest-minconf
Update smoke_test.py to compensate for changes in minimum confirmations required
2022-07-08 20:08:02 +01:00
Jack Grigg 884c149c64 qa: Postpone latest `cxx` update 2022-07-08 02:51:43 +00:00
sasha b72aaab820 Patch smoke_tests.py to require 4 confirmations for z_mergetoaddress 2022-07-07 01:22:40 -07:00
sasha 823c1b44c5 Improve smoke_test.py wait_for_balance message in the minconf!=1 case 2022-07-06 23:23:44 -07:00
sasha 61dd95ef0b Patch smoke_tests.py to properly handle changes in minconf behavior 2022-07-06 22:58:03 -07:00
Jack Grigg 343ddc1752 qa: Add native_cxxbridge and rustcxx to update checker 2022-07-05 21:45:59 +00:00
Jack Grigg 2e6a6572ba qa: Postpone dependency updates 2022-07-05 20:43:26 +00:00
Jack Grigg af59b2adb7 qa: Reformat for latest cargo-vet 2022-07-05 18:22:57 +00:00
Jack Grigg 90f13641b9 Use batch validation for Sapling proofs and signatures 2022-07-05 18:21:51 +00:00
Jack Grigg 5d9ae0ba63 bench: Add `ConnectBlock` benchmark using block 1723244
This block has 470 transactions, containing a total of 452 Sapling
spends and 1862 outputs, making for a nice benchmark of verification
performance.
2022-07-04 17:32:42 +00:00
therealyingtong da15ada52e Test getrawtransaction in wallet_orchard.py 2022-07-01 08:50:34 -04:00
Daira Hopwood e584b1b43f Upgrade to metrics 0.19.x and metrics-exporter-prometheus 0.10.x.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-07-01 09:12:34 +01:00
Jack Grigg 0430fdf20d Upgrade to `orchard 0.2.0` 2022-07-01 01:24:15 +00:00
Jack Grigg 107cb9636c cargo vet fmt 2022-07-01 01:24:15 +00:00
Jack Grigg 079ff9721f bench: Add `ConnectBlock` benchmark using block 1708048
This block has 88 Orchard transactions, containing a total of 552
actions, making for a nice benchmark of verification performance.
2022-07-01 01:24:15 +00:00
Jack Grigg e6d81e0fc1 qa: Generalise `extract_benchmark_data` in `performance-measurements.sh` 2022-07-01 01:24:15 +00:00
Jack Grigg eadfc028d6 qa: Fix `qa/zcash/create_benchmark_archive.py` script 2022-07-01 01:24:15 +00:00
mdr0id 9a867e2958 Update walletbackup.py 2022-06-28 17:10:53 -07:00
Jack Grigg ad369ca29f qa: Add audits for the crates directly maintained by the ECC core team 2022-06-09 17:00:15 +00:00
Jack Grigg 4b7445145d qa: Add `crypto-reviewed` and `license-reviewed` criteria for `cargo vet` 2022-06-09 15:53:57 +00:00
Jack Grigg 19c7742318 qa: `cargo vet init` 2022-06-09 14:50:23 +00:00
str4d e66f768e5d
Merge pull request #5976 from nuttycom/bug/block_wallet_init_on_reindex
Scan wallet from genesis when reindexing
2022-06-01 18:21:10 +01:00
Jack Grigg c1343d1807 qa: Fix sprout_sapling_migration RPC test to handle wallet RPC change
Co-authored-by: ying tong <yingtong@z.cash>
2022-06-01 13:51:26 +00:00
Kris Nuttycombe f3a9dcc0cf Mark the `dumpwallet` RPC method as disabled.
Fixes #5513
2022-05-26 14:31:26 -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
Kris Nuttycombe 15d1bb6ce9 scripted-diff: Add 2020-2022 copyright headers for files added/modified in 2020
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM 6a08c225674df23f1c7f214bcb94732dba688d39..a960e896dd4c0b6d96db3d5ebbb1caa6c92a9f39 -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2020-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:32:39 -06:00
Kris Nuttycombe 940dd0d426 scripted-diff: Add 2019-2022 copyright headers for files added/modified in 2019
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM 8df7a073ce13ec057b94b5a813bb5534cdfa6809..6a08c225674df23f1c7f214bcb94732dba688d39 -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2019-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:29:59 -06:00
Kris Nuttycombe 73fcef8035 scripted-diff: Add 2018-2022 copyright headers for files added/modified in 2018
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM b2a114a8c99947b66d1fbdc70278f13e7a415d2a..8df7a073ce13ec057b94b5a813bb5534cdfa6809 -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2018-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:28:03 -06:00
Kris Nuttycombe d9aeefc54a scripted-diff: Add 2017-2022 copyright headers for files added/modified in 2017
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM 94f427a211bb337200c29a1e19be0f5ad2f171b0..b2a114a8c99947b66d1fbdc70278f13e7a415d2a -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2017-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:25:51 -06:00
Kris Nuttycombe 28040f9ce4 scripted-diff: Add 2016-2022 copyright headers for files added/modified in 2016
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM bitcoin-v0.11.2..94f427a211bb337200c29a1e19be0f5ad2f171b0 -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2016-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:23:09 -06:00
Kris Nuttycombe 1b8a9af946 Add tests to check auth data commitments committing to Orchard actions.
In the process of adding these tests, I also found and fixed a number
of type errors in Orchard auth data root computation.

Fixes #5223
2022-05-09 21:01:11 -06:00
Kris Nuttycombe 580bbc0b35 Postpone dependency updates prior to v5.0.0-rc1 2022-05-09 08:52:59 -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 c920077a46 Use default anchor confirmations for minconf in z_mergetoaddress.
z_mergetoaddress doesn't currently have any mechanism for specifying
the minconf value. We don't want to default back to a minconf of 1,
as before, because we'll be selecting anchors with at least 3
confirmations by default, so the simplest change here is to make
the minconf value default to the number of anchor confirmations, and
add a configurable minconf at some point in the future. It's likely
that `z_mergetoaddress` will end up being deprecated in any case,
so this works for now.

Also, ensure that anywhere that we're attempting to obtain the Orchard
anchor that we don't attempt to get an anchor from a height below NU5
activation.
2022-05-06 22:15:20 -06:00
Kris Nuttycombe 66fad22873 Fix missing handling for imported transparent multisig addresses. 2022-05-06 13:29:05 -06:00
Taylor Hornby b900c4827b Reproduce an assertion failure in the listaddresses RPC 2022-05-06 11:59:28 -06:00
Kris Nuttycombe fefea8fe29 Fix RPC tests that depend upon -anchorconfirmations=1 2022-05-04 18:00:34 -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 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 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 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
Kris Nuttycombe 57d9d9ee05 Update boost dependencies to version 1.79.0 2022-04-14 13:31:14 -06:00
Kris Nuttycombe f8f698086b qa: postpone native_clang, libcxx, boost, and native_b2 upgrades before 4.7.0 release 2022-04-13 20:49:32 -06:00
sasha cf4de9d03d
Merge pull request #5741 from zcash/nu5-consensus
NU5 consensus changes; merge requested by @nuttycom
2022-04-13 18:09:21 -07:00
Kris Nuttycombe 9ca0a41cf7 Update protocol version to 170050 for v4.7.0 release. 2022-04-13 08:22:56 -06:00
sasha d153f27f52 fix smoke_tests.py accounting math to remove the warning before test 4r
the warning before test 4r is generated by the check_z_mergetoaddress
at line 459, which moves all the sapling funds into taddr_2 and thus
expects (sapling_balance - DEFAULT_FEE) to show up into taddr_2.

However, the check_z_mergetoaddress_parallel at line 418 had already
funded taddr_2 (with the sum of taddr_1 and taddr_3), and so we need to
add that to the amount of money that check_z_mergetoaddress at line 459
expects to find.
2022-04-12 23:21:38 -07:00
sasha ce6e8fd5f4 add walletrequirebackup=false to the zcash argument list in smoke_tests.py 2022-04-11 13:16:41 -07:00
Jack Grigg b01fe74161 qa: Update Berkeley DB release listener regex
Oracle have altered their downloads page to not list the actual download
filename, so we now extract the version from the changelog URL.
2022-04-09 14:43:32 +00:00
Kris Nuttycombe 866b3c7900 Merge remote-tracking branch 'upstream/master' into nu5-consensus_merge-master 2022-04-08 21:08:39 -06:00
Kris Nuttycombe 0f9868ef14
Merge pull request #5852 from nuttycom/bug/consistent_finalstate_encoding
Make Orchard finalState serialization format match Sapling.
2022-04-08 21:07:37 -06:00
Kris Nuttycombe f86a65d7cb Make Orchard `finalState` serialization format match Sapling.
For consistency, we serialize the `finalState` field in the
same (sparse) encoding as Sapling and Sprout use. In the future
we may want to update this to the dense encoding that
incrementalmerkletree::bridgetree::Frontier uses, but that's not
necessary for the moment.
2022-04-08 19:48:40 -06:00
Kris Nuttycombe b38189adcd
Merge pull request #5791 from therealyingtong/z_listaccounts
Add z_listaccounts API.
2022-04-08 15:30:57 -06:00
Kris Nuttycombe f98b2393a1 Fix error in z_listaccounts help text. 2022-04-08 13:06:41 -06:00
Jack Grigg c4006a7f24 qa: Postpone update to Rust 1.60
Rust 1.60 migrates to LLVM 14, and we want to keep our Clang and Rust
compilers on matching LLVM versions.
2022-04-07 15:01:26 +00:00
Kris Nuttycombe 369fc78e0b Use DEFAULT_FEE consistently in wallet_unified_change test
This fixes a nondeterministic error where zero-fee transactions
may be excluded due to minimum-block-size rules.
2022-04-07 08:57:48 -06:00
Kris Nuttycombe dada8b38bc Add 'AllowRevealedAmounts' in tests where it is now necessary. 2022-04-07 08:47:47 -06:00
Kris Nuttycombe 51defe9f96 Make all privacy policy checks after note selection.
This adds tests to wallet_z_sendmany that demonstrates conditions
where pool-crossing transfers were not being caught by the privacy
policy checks, which were validating only against the transfer
request rather than the actual transfer selected. This missed
cases where sending funds between unified addresses would reveal
amounts via the turnstile.

Making all privacy policy checks after note selection guards against
this error.
2022-04-07 08:47:47 -06:00
therealyingtong dcc2a68682 Inline z_listaccounts check in wallet_accounts.py 2022-04-07 18:06:41 +08:00