BitcoinPrivate-legacy/contrib/bitcoin-cli.bash-completion

157 lines
4.7 KiB
Plaintext
Raw Normal View History

Merge: v1.0.4 into master (#42) * Add getlocalsolps and getnetworksolps RPC calls, show them in getmininginfo * Add benchmark for attempting decryption of notes * Add benchmark for incrementing note witnesses * Add -metricsui flag to toggle between persistent screen and rolling metrics Defaults to true if stdout is a TTY, else false. * Add -metricsrefreshtime option * Only show metrics by default if stdout is a TTY * Document metrics screen options * Fix stale comment referencing upstream block interval * Add checkpoint at block height 15000 * Added mainnet, testnet, and onion nodes * Make command line option to show all debugging consistent with similar options Most people expect a value of 1 to enable all for command line arguments. However to do this for the -debug option you must type "-debug=". This has been changed to allow "-debug=1" as well as "-debug=" to enable all debug logging * Update documentation to match the #4219 change * Update help message to match the #4219 change * Clarify that metrics options are only useful without -daemon and -printtoconsole * Increase length of metrics divider * Closes #1857. Fixes bug where tx spending only notes had priority of 0. * Closes #1901. Increase default settings for the max block size when mining and the amount of space available for priority transactions. * Write witness caches when writing the best block For steady-state operation, this reduces the average time between wallet disk writes from once per block to once per hour. On -rescan, witness caches are only written out at the end along with the best block, increasing speed while ensuring that on-disk state is kept consistent. Witness caches are now never recreated during a -reindex, on the assumption that the blocks themselves are not changing (the chain is just being reconstructed), and so the witnesses will remain valid. Part of #1749. * Add porter dev overrides for CC, CXX, MAKE, BUILD, HOST * Apply miniupnpc patches to enable compilation on Solaris 11 These can be removed after the next MiniUPnP release. Closes #1835. * Closes #1903. Add fee parameter to z_sendmany. * Add an upstream miniupnpc patch revision * Metrics - Don't exclaim unless > 1 "You have validated 0 transactions!" sounds a little less enthusiastic that intended. Also, only says "1 transaction". * Address review comments, tweak strings * bash-completion: Adapt for 0.12 and 0.13 * separate completion for bitcoind and bitcoin-cli * remove RPC support from bitcoind completion * add completion for bitcoin-tx and bitcoin-qt * rely on autoloading of completions * Change function names to not clash with Bitcoin, apply to correct binaries * Add bash completion files to Debian package * Always bash-complete the default account * Add Zcash RPC commands to CLI argument completion * Fixes #1823. Witness anchors for input notes no longer cross block boundaries. * Edit for grammar: "block chain" At this point, I believe it is universally accepted that "blockchain" is one word, and should not be separated into two. * Increase timeout as laptops on battery power have cpu throttling. * Isolate verification to a `ProofVerifier` context object that allows verification behavior to be tuned by the caller. * Regression test. * Ensure cache contains valid entry when anchor is popped. * Ensure ProofVerifier cannot be accidentally copied. * Document behaviour of CWallet::SetBestChain * WitnessAnchorData only needs to store one witness per JSOutPoint. * Rename Dummy to Disabled. * Add more tests for ProofVerifier. * Fix indentation * Generate JS for trydecryptnotes, make number of addresses a variable * Add JS to second block to ensure witnesses are incremented * ASSERT_TRUE -> ASSERT_FALSE * Skip JoinSplit verification before the last checkpoint Part of #1749 * Gather release notes from previous release to HEAD Also update release-process.md to replace git shortlog command with release-notes.py script. * Add a reindex test that fails because of a bug in decrementing witness caches Ref: https://github.com/zcash/zcash/pull/1904#issuecomment-265992988 * Make the test pass by fixing the bug! * Only check cache validity for witnesses being incremented or decremented Fixes the bug resulting from #1904. * Check that E' points are actually in G2 by ensuring they are of order r. * Fix bug in wallet tests * Extract block-generation wallet test code into a function * Rewrite reindex test to check beyond the max witness cache size * Fix bug in IncrementNoteWitness() * Update payment API docs to recommend -rescan for fixing witness errors * Update version to 1.0.4 * Update man pages * Release notes, authors, changelog * Update seed nodes * Bugfix #14 - getblocksubsidy RPC command is incorrect
2016-12-19 04:59:58 -08:00
# bash programmable completion for bitcoin-cli(1)
# Copyright (c) 2012-2016 The Bitcoin Core developers
# Distributed under the MIT software license, see the accompanying
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
# call $bitcoin-cli for RPC
_zcash_rpc() {
# determine already specified args necessary for RPC
local rpcargs=()
for i in ${COMP_LINE}; do
case "$i" in
-conf=*|-datadir=*|-regtest|-rpc*|-testnet)
rpcargs=( "${rpcargs[@]}" "$i" )
;;
esac
done
$bitcoin_cli "${rpcargs[@]}" "$@"
}
# Add wallet accounts to COMPREPLY
_zcash_accounts() {
local accounts
# Accounts are deprecated in Zcash
#accounts=$(_zcash_rpc listaccounts | awk -F '"' '{ print $2 }')
accounts="\\\"\\\""
COMPREPLY=( "${COMPREPLY[@]}" $( compgen -W "$accounts" -- "$cur" ) )
}
_btcp_cli() {
Merge: v1.0.4 into master (#42) * Add getlocalsolps and getnetworksolps RPC calls, show them in getmininginfo * Add benchmark for attempting decryption of notes * Add benchmark for incrementing note witnesses * Add -metricsui flag to toggle between persistent screen and rolling metrics Defaults to true if stdout is a TTY, else false. * Add -metricsrefreshtime option * Only show metrics by default if stdout is a TTY * Document metrics screen options * Fix stale comment referencing upstream block interval * Add checkpoint at block height 15000 * Added mainnet, testnet, and onion nodes * Make command line option to show all debugging consistent with similar options Most people expect a value of 1 to enable all for command line arguments. However to do this for the -debug option you must type "-debug=". This has been changed to allow "-debug=1" as well as "-debug=" to enable all debug logging * Update documentation to match the #4219 change * Update help message to match the #4219 change * Clarify that metrics options are only useful without -daemon and -printtoconsole * Increase length of metrics divider * Closes #1857. Fixes bug where tx spending only notes had priority of 0. * Closes #1901. Increase default settings for the max block size when mining and the amount of space available for priority transactions. * Write witness caches when writing the best block For steady-state operation, this reduces the average time between wallet disk writes from once per block to once per hour. On -rescan, witness caches are only written out at the end along with the best block, increasing speed while ensuring that on-disk state is kept consistent. Witness caches are now never recreated during a -reindex, on the assumption that the blocks themselves are not changing (the chain is just being reconstructed), and so the witnesses will remain valid. Part of #1749. * Add porter dev overrides for CC, CXX, MAKE, BUILD, HOST * Apply miniupnpc patches to enable compilation on Solaris 11 These can be removed after the next MiniUPnP release. Closes #1835. * Closes #1903. Add fee parameter to z_sendmany. * Add an upstream miniupnpc patch revision * Metrics - Don't exclaim unless > 1 "You have validated 0 transactions!" sounds a little less enthusiastic that intended. Also, only says "1 transaction". * Address review comments, tweak strings * bash-completion: Adapt for 0.12 and 0.13 * separate completion for bitcoind and bitcoin-cli * remove RPC support from bitcoind completion * add completion for bitcoin-tx and bitcoin-qt * rely on autoloading of completions * Change function names to not clash with Bitcoin, apply to correct binaries * Add bash completion files to Debian package * Always bash-complete the default account * Add Zcash RPC commands to CLI argument completion * Fixes #1823. Witness anchors for input notes no longer cross block boundaries. * Edit for grammar: "block chain" At this point, I believe it is universally accepted that "blockchain" is one word, and should not be separated into two. * Increase timeout as laptops on battery power have cpu throttling. * Isolate verification to a `ProofVerifier` context object that allows verification behavior to be tuned by the caller. * Regression test. * Ensure cache contains valid entry when anchor is popped. * Ensure ProofVerifier cannot be accidentally copied. * Document behaviour of CWallet::SetBestChain * WitnessAnchorData only needs to store one witness per JSOutPoint. * Rename Dummy to Disabled. * Add more tests for ProofVerifier. * Fix indentation * Generate JS for trydecryptnotes, make number of addresses a variable * Add JS to second block to ensure witnesses are incremented * ASSERT_TRUE -> ASSERT_FALSE * Skip JoinSplit verification before the last checkpoint Part of #1749 * Gather release notes from previous release to HEAD Also update release-process.md to replace git shortlog command with release-notes.py script. * Add a reindex test that fails because of a bug in decrementing witness caches Ref: https://github.com/zcash/zcash/pull/1904#issuecomment-265992988 * Make the test pass by fixing the bug! * Only check cache validity for witnesses being incremented or decremented Fixes the bug resulting from #1904. * Check that E' points are actually in G2 by ensuring they are of order r. * Fix bug in wallet tests * Extract block-generation wallet test code into a function * Rewrite reindex test to check beyond the max witness cache size * Fix bug in IncrementNoteWitness() * Update payment API docs to recommend -rescan for fixing witness errors * Update version to 1.0.4 * Update man pages * Release notes, authors, changelog * Update seed nodes * Bugfix #14 - getblocksubsidy RPC command is incorrect
2016-12-19 04:59:58 -08:00
local cur prev words=() cword
local bitcoin_cli
# save and use original argument to invoke bitcoin-cli for -help, help and RPC
# as bitcoin-cli might not be in $PATH
bitcoin_cli="$1"
COMPREPLY=()
_get_comp_words_by_ref -n = cur prev words cword
if ((cword > 5)); then
case ${words[cword-5]} in
sendtoaddress)
COMPREPLY=( $( compgen -W "true false" -- "$cur" ) )
return 0
;;
esac
fi
if ((cword > 4)); then
case ${words[cword-4]} in
importaddress|listtransactions|setban)
COMPREPLY=( $( compgen -W "true false" -- "$cur" ) )
return 0
;;
signrawtransaction)
COMPREPLY=( $( compgen -W "ALL NONE SINGLE ALL|ANYONECANPAY NONE|ANYONECANPAY SINGLE|ANYONECANPAY" -- "$cur" ) )
return 0
;;
esac
fi
if ((cword > 3)); then
case ${words[cword-3]} in
addmultisigaddress)
_zcash_accounts
return 0
;;
getbalance|gettxout|importaddress|importpubkey|importprivkey|listreceivedbyaccount|listreceivedbyaddress|listsinceblock)
COMPREPLY=( $( compgen -W "true false" -- "$cur" ) )
return 0
;;
esac
fi
if ((cword > 2)); then
case ${words[cword-2]} in
addnode)
COMPREPLY=( $( compgen -W "add remove onetry" -- "$cur" ) )
return 0
;;
setban)
COMPREPLY=( $( compgen -W "add remove" -- "$cur" ) )
return 0
;;
fundrawtransaction|getblock|getblockheader|getmempoolancestors|getmempooldescendants|getrawtransaction|gettransaction|listaccounts|listreceivedbyaccount|listreceivedbyaddress|sendrawtransaction|z_importkey)
COMPREPLY=( $( compgen -W "true false" -- "$cur" ) )
return 0
;;
move|setaccount)
_zcash_accounts
return 0
;;
esac
fi
case "$prev" in
backupwallet|dumpwallet|importwallet|z_exportwallet|z_importwallet)
_filedir
return 0
;;
getaddednodeinfo|getrawmempool|lockunspent|setgenerate)
COMPREPLY=( $( compgen -W "true false" -- "$cur" ) )
return 0
;;
getaccountaddress|getaddressesbyaccount|getbalance|getnewaddress|getreceivedbyaccount|listtransactions|move|sendfrom|sendmany)
_zcash_accounts
return 0
;;
esac
case "$cur" in
-conf=*)
cur="${cur#*=}"
_filedir
return 0
;;
-datadir=*)
cur="${cur#*=}"
_filedir -d
return 0
;;
-*=*) # prevent nonsense completions
return 0
;;
*)
local helpopts commands
# only parse -help if senseful
if [[ -z "$cur" || "$cur" =~ ^- ]]; then
helpopts=$($bitcoin_cli -help 2>&1 | awk '$1 ~ /^-/ { sub(/=.*/, "="); print $1 }' )
fi
# only parse help if senseful
if [[ -z "$cur" || "$cur" =~ ^[a-z] ]]; then
commands=$(_zcash_rpc help 2>/dev/null | awk '$1 ~ /^[a-z]/ { print $1; }')
fi
COMPREPLY=( $( compgen -W "$helpopts $commands" -- "$cur" ) )
# Prevent space if an argument is desired
if [[ $COMPREPLY == *= ]]; then
compopt -o nospace
fi
return 0
;;
esac
} &&
complete -F _btcp_cli btcp-cli
Merge: v1.0.4 into master (#42) * Add getlocalsolps and getnetworksolps RPC calls, show them in getmininginfo * Add benchmark for attempting decryption of notes * Add benchmark for incrementing note witnesses * Add -metricsui flag to toggle between persistent screen and rolling metrics Defaults to true if stdout is a TTY, else false. * Add -metricsrefreshtime option * Only show metrics by default if stdout is a TTY * Document metrics screen options * Fix stale comment referencing upstream block interval * Add checkpoint at block height 15000 * Added mainnet, testnet, and onion nodes * Make command line option to show all debugging consistent with similar options Most people expect a value of 1 to enable all for command line arguments. However to do this for the -debug option you must type "-debug=". This has been changed to allow "-debug=1" as well as "-debug=" to enable all debug logging * Update documentation to match the #4219 change * Update help message to match the #4219 change * Clarify that metrics options are only useful without -daemon and -printtoconsole * Increase length of metrics divider * Closes #1857. Fixes bug where tx spending only notes had priority of 0. * Closes #1901. Increase default settings for the max block size when mining and the amount of space available for priority transactions. * Write witness caches when writing the best block For steady-state operation, this reduces the average time between wallet disk writes from once per block to once per hour. On -rescan, witness caches are only written out at the end along with the best block, increasing speed while ensuring that on-disk state is kept consistent. Witness caches are now never recreated during a -reindex, on the assumption that the blocks themselves are not changing (the chain is just being reconstructed), and so the witnesses will remain valid. Part of #1749. * Add porter dev overrides for CC, CXX, MAKE, BUILD, HOST * Apply miniupnpc patches to enable compilation on Solaris 11 These can be removed after the next MiniUPnP release. Closes #1835. * Closes #1903. Add fee parameter to z_sendmany. * Add an upstream miniupnpc patch revision * Metrics - Don't exclaim unless > 1 "You have validated 0 transactions!" sounds a little less enthusiastic that intended. Also, only says "1 transaction". * Address review comments, tweak strings * bash-completion: Adapt for 0.12 and 0.13 * separate completion for bitcoind and bitcoin-cli * remove RPC support from bitcoind completion * add completion for bitcoin-tx and bitcoin-qt * rely on autoloading of completions * Change function names to not clash with Bitcoin, apply to correct binaries * Add bash completion files to Debian package * Always bash-complete the default account * Add Zcash RPC commands to CLI argument completion * Fixes #1823. Witness anchors for input notes no longer cross block boundaries. * Edit for grammar: "block chain" At this point, I believe it is universally accepted that "blockchain" is one word, and should not be separated into two. * Increase timeout as laptops on battery power have cpu throttling. * Isolate verification to a `ProofVerifier` context object that allows verification behavior to be tuned by the caller. * Regression test. * Ensure cache contains valid entry when anchor is popped. * Ensure ProofVerifier cannot be accidentally copied. * Document behaviour of CWallet::SetBestChain * WitnessAnchorData only needs to store one witness per JSOutPoint. * Rename Dummy to Disabled. * Add more tests for ProofVerifier. * Fix indentation * Generate JS for trydecryptnotes, make number of addresses a variable * Add JS to second block to ensure witnesses are incremented * ASSERT_TRUE -> ASSERT_FALSE * Skip JoinSplit verification before the last checkpoint Part of #1749 * Gather release notes from previous release to HEAD Also update release-process.md to replace git shortlog command with release-notes.py script. * Add a reindex test that fails because of a bug in decrementing witness caches Ref: https://github.com/zcash/zcash/pull/1904#issuecomment-265992988 * Make the test pass by fixing the bug! * Only check cache validity for witnesses being incremented or decremented Fixes the bug resulting from #1904. * Check that E' points are actually in G2 by ensuring they are of order r. * Fix bug in wallet tests * Extract block-generation wallet test code into a function * Rewrite reindex test to check beyond the max witness cache size * Fix bug in IncrementNoteWitness() * Update payment API docs to recommend -rescan for fixing witness errors * Update version to 1.0.4 * Update man pages * Release notes, authors, changelog * Update seed nodes * Bugfix #14 - getblocksubsidy RPC command is incorrect
2016-12-19 04:59:58 -08:00
# Local variables:
# mode: shell-script
# sh-basic-offset: 4
# sh-indent-comment: t
# indent-tabs-mode: nil
# End:
# ex: ts=4 sw=4 et filetype=sh