Releases: Bitcoin-ABC/bitcoin-abc
0.20.12
Bitcoin ABC version 0.20.12 is now available from:
https://download.bitcoinabc.org/0.20.12/
This release includes the following features and fixes:
- The
unloadwallet
RPC is now synchronous, meaning that it blocks until the
wallet is fully unloaded. - Fixed a bug where wallet handles were not being freed correctly, effectively causing
a memory leak when many wallets were called vialoadwallet
andunloadwallet
. - Better error reporting for parsing errors in configuration files.
0.20.11
Bitcoin ABC version 0.20.11 is now available from:
https://download.bitcoinabc.org/0.20.11/
This release includes the following features and fixes:
- The
prioritisetransaction
RPC no longer takes apriority_delta
argument,
which is replaced by adummy
argument for backwards compatibility with
clients using positional arguments. The RPC is still used to change the
apparent fee-rate of the transaction by using thefee_delta
argument. - Bare multisig outputs to our keys are no longer automatically treated as
incoming payments. As this feature was only available for multisig outputs for
which you had all private keys in your wallet, there was generally no use for
them compared to single-key schemes. Furthermore, no address format for such
outputs is defined, and wallet software can't easily send to it. These outputs
will no longer show up inlisttransactions
,listunspent
, or contribute to
your balance, unless they are explicitly watched (usingimportaddress
or
importmulti
with hex script argument).signrawtransaction*
also still
works for them. - The RPC
createwallet
now has an optionalblank
argument that can be used
to create a blank wallet. Blank wallets do not have any keys or HD seed.
They cannot be opened in software older than 0.20.11
Once a blank wallet has a HD seed set (by usingsethdseed
) or private keys,
scripts, addresses, and other watch only things have been imported, the wallet
is no longer blank and can be opened in 0.20.x.
Encrypting a blank wallet will also set a HD seed for it.
0.20.10
Bitcoin ABC version 0.20.10 is now available from:
https://download.bitcoinabc.org/0.20.10/
This release includes the following features and fixes:
- Remove deprecated "startingpriority" and "currentpriority" from
getrawmempool
,getmempoolancestors
,getmempooldescendants
and
getmempoolentry
RPC.
0.20.9
Bitcoin ABC version 0.20.9 is now available from:
https://download.bitcoinabc.org/0.20.9/
This release includes the following features and fixes:
- Fixed a bug with Multiwallets that have their own directories (i.e. cases
such asDATADIR/wallets/mywallet/wallet.dat
). Backups of these wallets
will now take each wallet's specific directory into account. - When transactions are rejected for being low fee, the error message will
read "min relay fee not met" instead of "insufficient priority". Also,
a bug was fixed where sometimes low fee transactions would be accepted via
sendrawtransaction
(and be stuck semipermanently, as they would be unable
to relay to miners). - Added
nTx
return value togetblock
andgetblockheader
detailing the
number of transactions in the returned block.
0.20.8
Bitcoin ABC version 0.20.8 is now available from:
https://download.bitcoinabc.org/0.20.8/
This release includes the following features and fixes:
- When running bitcoind without
-daemon
, logging to stdout is now the
default behavior. Setting-printtoconsole=1
no longer implicitly disables
logging to debug.log. Instead, logging to file can be explicitly disabled by
setting-debuglogfile=0
. getlabeladdress
has been removed and replaced withgetaccountaddress
until v0.21 at which timegetaccountaddress
will also be removed. To
usegetaccountaddress
startbitcoind
with the-deprecatedrpc=accounts
option. See the v0.20.6 release notes for more details.
Network
- When fetching a transaction announced by multiple peers, previous versions of
Bitcoin ABC would sequentially attempt to download the transaction from each
announcing peer until the transaction is received, in the order that those
peers' announcements were received. In this release, the download logic has
changed to randomize the fetch order across peers and to prefer sending
download requests to outbound peers over inbound peers. This fixes an issue
where inbound peers can prevent a node from getting a transaction.
Seeder
bitcoin-seeder
no longer takes single letter parameter names. Please use
the full length parameter names. Seebitcoin-seeder -?
for more
information.- If the
-?
,-h
, or-help
options are used,bitcoin-seeder
will now
output its help message and then cease operation. bitcoin-seeder
can now be run onregtest
using-regtest
. See
bitcoin-seeder -? --help-debug
for more information about the-regtest
option.- If options are given to
bitcoin-seeder
that are not recognizable it will
output an error and then cease operation.
0.20.7
Bitcoin ABC version 0.20.7 is now available from:
https://download.bitcoinabc.org/0.20.7/
This release includes the following features and fixes:
- The new RPC
scantxoutset
can be used to scan the UTXO set for entries
that match certain output descriptors. Refer to the output descriptors
reference documentation for more details. This call
is similar tolistunspent
but does not use a wallet, meaning that the
wallet can be disabled at compile or run time. This call is experimental,
as such, is subject to changes or removal in future releases. - The new RPC
getzmqnotifications
returns information about active ZMQ
notifications.
0.20.6
Bitcoin ABC version 0.20.6 is now available from:
https://download.bitcoinabc.org/0.20.6/
This release includes the following features and fixes:
hdmasterkeyid
ingetwalletinfo
has been deprecated in favor of
hdseedid
.hdmasterkeyid
will be removed in V0.21.hdmasterkeyid
ingetaddressinfo
has been deprecated in favor of
hdseedid
.hdmasterkeyid
will be removed in V0.21.- The
inactivehdmaster
property in thedumpwallet
output has been
deprecated in favor ofinactivehdseed
.inactivehdmaster
will be removed
in V0.21. - Building from source now requires python 3.5 or greater
'label' and 'account' APIs for wallet
A new 'label' API has been introduced for the wallet. This is intended as a
replacement for the deprecated 'account' API. The 'account' can continue to
be used in v0.20 by starting bitcoind with the '-deprecatedrpc=accounts'
argument, and will be fully removed in v0.21.
The label RPC methods mirror the account functionality, with the following functional differences:
- Labels can be set on any address, not just receiving addresses. This functionality was previously only available through the GUI.
- Labels can be deleted by reassigning all addresses using the
setlabel
RPC method. - There isn't support for sending transactions from a label, or for determining which label a transaction was sent from.
- Labels do not have a balance.
Here are the changes to RPC methods:
Deprecated Method | New Method | Notes |
---|---|---|
getaccount |
getaddressinfo |
getaddressinfo returns a json object with address information instead of just the name of the account as a string. |
getaccountaddress |
getlabeladdress |
getlabeladdress throws an error by default if the label does not already exist, but provides a force option for compatibility with existing applications. |
getaddressesbyaccount |
getaddressesbylabel |
getaddressesbylabel returns a json object with the addresses as keys, instead of a list of strings. |
getreceivedbyaccount |
getreceivedbylabel |
no change in behavior |
listaccounts |
listlabels |
listlabels does not return a balance or accept minconf and watchonly arguments. |
listreceivedbyaccount |
listreceivedbylabel |
Both methods return new label fields, along with account fields for backward compatibility. |
move |
n/a | no replacement |
sendfrom |
n/a | no replacement |
setaccount |
setlabel |
Both methods now:
|
Changed Method | Notes |
---|---|
addmultisigaddress |
Renamed account named parameter to label . Still accepts account for backward compatibility if running with '-deprecatedrpc=accounts'. |
getnewaddress |
Renamed account named parameter to label . Still accepts account for backward compatibility. if running with '-deprecatedrpc=accounts' |
listunspent |
Returns new label fields. account field will be returned for backward compatibility if running with '-deprecatedrpc=accounts' |
sendmany |
The account named parameter has been renamed to dummy . If provided, the dummy parameter must be set to the empty string, unless running with the -deprecatedrpc=accounts argument (in which case functionality is unchanged). |
listtransactions |
The account named parameter has been renamed to dummy . If provided, the dummy parameter must be set to the string * , unless running with the -deprecatedrpc=accounts argument (in which case functionality is unchanged). |
getbalance |
account , minconf and include_watchonly parameters are deprecated, and can only be used if running with '-deprecatedrpc=accounts' |
0.20.5
Bitcoin ABC version 0.20.5 is now available from:
https://download.bitcoinabc.org/0.20.5/
This release includes the following features and fixes:
- It is now possible to unload wallets dynamically at runtime. This feature is
currently only available through the RPC interface.
GUI changes
- Wallets loaded dynamically through the RPC interface may now be displayed in
the bitcoin-qt GUI. - The default wallet will now be labeled
[default wallet]
in the bitcoin-qt
GUI if no name is provided by the-wallet
option on start up. - Wallets dynamically unloaded will now be reflected in the gui.
- Block storage can be limited under Preferences, in the Main tab. Undoing
this setting requires downloading the full blockchain again. This mode is
incompatible with -txindex and -rescan.
0.20.4
Bitcoin ABC version 0.20.4 is now available from:
https://download.bitcoinabc.org/0.20.4/
This release includes the following features and fixes:
- Minor bug fixes and improvements.
- New
fees
field introduced ingetrawmempool
,getmempoolancestors
,
getmempooldescendants
andgetmempoolentry
when verbosity is set to
true
with sub-fieldsancestor
,base
,modified
anddescendant
denominated in BCH. This new field deprecates previous fee fields, such a
fee
,modifiedfee
,ancestorfee
anddescendantfee
.
Dynamic creation of wallets
-
Previously, wallets could only be loaded or created at startup, by
specifying-wallet
parameters on the command line or in the bitcoin.conf
file. It is now possible to create wallets dynamically at runtime: -
New wallets can be created (and loaded) by calling the
createwallet
RPC.
The provided name must not match a wallet file in thewalletdir
directory
or the name of a wallet that is currently loaded. -
This feature is currently only available through the RPC interface.
0.20.3
Bitcoin ABC version 0.20.3 is now available from:
https://download.bitcoinabc.org/0.20.3/
This release includes the following features and fixes:
- Minor bug fixes and improvements.