Changeset View
Changeset View
Standalone View
Standalone View
doc/release-notes.md
Bitcoin ABC version 0.20.1 is now available from: | Bitcoin ABC version 0.20.1 is now available from: | ||||
<https://download.bitcoinabc.org/0.20.1/> | <https://download.bitcoinabc.org/0.20.1/> | ||||
This release includes the following features and fixes: | This release includes the following features and fixes: | ||||
- From 0.20.1 onwards macOS <10.10 is no longer supported. | - From 0.20.1 onwards macOS <10.10 is no longer supported. | ||||
0.20.1 is built using Qt 5.9.6, which doesn't support | 0.20.1 is built using Qt 5.9.6, which doesn't support | ||||
versions of macOS older than 10.10. | versions of macOS older than 10.10. | ||||
'label' API for wallet | |||||
---------------------- | |||||
A new 'label' API has been introduced for the wallet. This is intended as a | |||||
replacement for the deprecated 'account' API. | |||||
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: <ul><li>allow assigning labels to any address, instead of raising an error if the address is not receiving address.<li>delete the previous label associated with an address when the final address using that label is reassigned to a different label, instead of making an implicit `getaccountaddress` call to ensure the previous label still has a receiving address. | | |||||
| Changed Method | Notes | | |||||
| :--------------------- | :------ | | |||||
| `addmultisigaddress` | Renamed `account` named parameter to `label`. Still accepts `account` for backward compatibility. | | |||||
| `getnewaddress` | Renamed `account` named parameter to `label`. Still accepts `account` for backward compatibility. | | |||||
| `listunspent` | Returns new `label` fields, along with `account` fields for backward compatibility. | |