build: bump version to 0.17.99
Now that 0.17 branch has been split off, master is 0.17.99 (pre-0.18). Also clean out release notes. Tree-SHA512: bb20025d3ead3346afc7a6a51af715783e705e1de9d1b90ced6423d8969d64e42b72d06a1eb853083b11e9cfe674775266792ae2cd18ed6c858938e125edab03
This commit is contained in:
parent
8a9ffec0a2
commit
58efc49b95
2 changed files with 2 additions and 203 deletions
|
@ -1,7 +1,7 @@
|
|||
dnl require autoconf 2.60 (AS_ECHO/AS_ECHO_N)
|
||||
AC_PREREQ([2.60])
|
||||
define(_CLIENT_VERSION_MAJOR, 0)
|
||||
define(_CLIENT_VERSION_MINOR, 16)
|
||||
define(_CLIENT_VERSION_MINOR, 17)
|
||||
define(_CLIENT_VERSION_REVISION, 99)
|
||||
define(_CLIENT_VERSION_BUILD, 0)
|
||||
define(_CLIENT_VERSION_IS_RELEASE, false)
|
||||
|
|
|
@ -59,210 +59,9 @@ support versions of macOS older than 10.10.
|
|||
Notable changes
|
||||
===============
|
||||
|
||||
Changed command-line options
|
||||
----------------------------
|
||||
|
||||
- `-includeconf=<file>` can be used to include additional configuration files.
|
||||
Only works inside the `bitcoin.conf` file, not inside included files or from
|
||||
command-line. Multiple files may be included. Can be disabled from command-
|
||||
line via `-noincludeconf`. Note that multi-argument commands like
|
||||
`-includeconf` will override preceding `-noincludeconf`, i.e.
|
||||
|
||||
noincludeconf=1
|
||||
includeconf=relative.conf
|
||||
|
||||
as bitcoin.conf will still include `relative.conf`.
|
||||
|
||||
GUI changes
|
||||
-----------
|
||||
|
||||
- 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.
|
||||
|
||||
RPC changes
|
||||
Example item
|
||||
------------
|
||||
|
||||
### Low-level changes
|
||||
|
||||
- The `createrawtransaction` RPC will now accept an array or dictionary (kept for compatibility) for the `outputs` parameter. This means the order of transaction outputs can be specified by the client.
|
||||
- The `fundrawtransaction` RPC will reject the previously deprecated `reserveChangeKey` option.
|
||||
- `sendmany` now shuffles outputs to improve privacy, so any previously expected behavior with regards to output ordering can no longer be relied upon.
|
||||
- The new RPC `testmempoolaccept` can be used to test acceptance of a transaction to the mempool without adding it.
|
||||
- JSON transaction decomposition now includes a `weight` field which provides
|
||||
the transaction's exact weight. This is included in REST /rest/tx/ and
|
||||
/rest/block/ endpoints when in json mode. This is also included in `getblock`
|
||||
(with verbosity=2), `listsinceblock`, `listtransactions`, and
|
||||
`getrawtransaction` RPC commands.
|
||||
- New `fees` field introduced in `getrawmempool`, `getmempoolancestors`, `getmempooldescendants` and
|
||||
`getmempoolentry` when verbosity is set to `true` with sub-fields `ancestor`, `base`, `modified`
|
||||
and `descendant` denominated in BTC. This new field deprecates previous fee fields, such as
|
||||
`fee`, `modifiedfee`, `ancestorfee` and `descendantfee`.
|
||||
- The new RPC `getzmqnotifications` returns information about active ZMQ
|
||||
notifications.
|
||||
|
||||
External wallet files
|
||||
---------------------
|
||||
|
||||
The `-wallet=<path>` option now accepts full paths instead of requiring wallets
|
||||
to be located in the -walletdir directory.
|
||||
|
||||
Newly created wallet format
|
||||
---------------------------
|
||||
|
||||
If `-wallet=<path>` is specified with a path that does not exist, it will now
|
||||
create a wallet directory at the specified location (containing a wallet.dat
|
||||
data file, a db.log file, and database/log.?????????? files) instead of just
|
||||
creating a data file at the path and storing log files in the parent
|
||||
directory. This should make backing up wallets more straightforward than
|
||||
before because the specified wallet path can just be directly archived without
|
||||
having to look in the parent directory for transaction log files.
|
||||
|
||||
For backwards compatibility, wallet paths that are names of existing data files
|
||||
in the `-walletdir` directory will continue to be accepted and interpreted the
|
||||
same as before.
|
||||
|
||||
Dynamic loading and 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 load, create and unload wallets dynamically at runtime:
|
||||
|
||||
- Existing wallets can be loaded by calling the `loadwallet` RPC. The wallet can be specified as file/directory basename (which must be located in the `walletdir` directory), or as an absolute path to a file/directory.
|
||||
- New wallets can be created (and loaded) by calling the `createwallet` RPC. The provided name must not match a wallet file in the `walletdir` directory or the name of a wallet that is currently loaded.
|
||||
- Loaded wallets can be unloaded by calling the `unloadwallet` RPC.
|
||||
|
||||
This feature is currently only available through the RPC interface.
|
||||
|
||||
Coin selection
|
||||
--------------
|
||||
- A new `-avoidpartialspends` flag has been added (default=false). If enabled, the wallet will try to spend UTXO's that point at the same destination
|
||||
together. This is a privacy increase, as there will no longer be cases where a wallet will inadvertently spend only parts of the coins sent to
|
||||
the same address (note that if someone were to send coins to that address after it was used, those coins will still be included in future
|
||||
coin selections).
|
||||
|
||||
Configuration sections for testnet and regtest
|
||||
----------------------------------------------
|
||||
|
||||
It is now possible for a single configuration file to set different
|
||||
options for different networks. This is done by using sections or by
|
||||
prefixing the option with the network, such as:
|
||||
|
||||
main.uacomment=bitcoin
|
||||
test.uacomment=bitcoin-testnet
|
||||
regtest.uacomment=regtest
|
||||
[main]
|
||||
mempoolsize=300
|
||||
[test]
|
||||
mempoolsize=100
|
||||
[regtest]
|
||||
mempoolsize=20
|
||||
|
||||
The `addnode=`, `connect=`, `port=`, `bind=`, `rpcport=`, `rpcbind=`
|
||||
and `wallet=` options will only apply to mainnet when specified in the
|
||||
configuration file, unless a network is specified.
|
||||
|
||||
'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.17 by starting bitcoind with the '-deprecatedrpc=accounts'
|
||||
argument, and will be fully removed in V0.18.
|
||||
|
||||
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` | n/a | There is no replacement for `getaccountaddress` since labels do not have an associated receive address. |
|
||||
| `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 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' |
|
||||
|
||||
Low-level RPC changes
|
||||
---------------------
|
||||
|
||||
- When bitcoin is not started with any `-wallet=<path>` options, the name of
|
||||
the default wallet returned by `getwalletinfo` and `listwallets` RPCs is
|
||||
now the empty string `""` instead of `"wallet.dat"`. If bitcoin is started
|
||||
with any `-wallet=<path>` options, there is no change in behavior, and the
|
||||
name of any wallet is just its `<path>` string.
|
||||
- Passing an empty string (`""`) as the `address_type` parameter to
|
||||
`getnewaddress`, `getrawchangeaddress`, `addmultisigaddress`,
|
||||
`fundrawtransaction` RPCs is now an error. Previously, this would fall back
|
||||
to using the default address type. It is still possible to pass null or leave
|
||||
the parameter unset to use the default address type.
|
||||
|
||||
- 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 in `listtransactions`, `listunspent`, or contribute to
|
||||
your balance, unless they are explicitly watched (using `importaddress` or
|
||||
`importmulti` with hex script argument). `signrawtransaction*` also still
|
||||
works for them.
|
||||
|
||||
- The `getwalletinfo` RPC method now returns an `hdseedid` value, which is always the same as the incorrectly-named `hdmasterkeyid` value. `hdmasterkeyid` will be removed in V0.18.
|
||||
- The `getaddressinfo` RPC method now returns an `hdseedid` value, which is always the same as the incorrectly-named `hdmasterkeyid` value. `hdmasterkeyid` will be removed in V0.18.
|
||||
|
||||
Other API changes
|
||||
-----------------
|
||||
|
||||
- The `inactivehdmaster` property in the `dumpwallet` output has been corrected to `inactivehdseed`
|
||||
|
||||
### Logging
|
||||
|
||||
- The log timestamp format is now ISO 8601 (e.g. "2018-02-28T12:34:56Z").
|
||||
|
||||
- When running bitcoind with `-debug` but 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`.
|
||||
|
||||
Transaction index changes
|
||||
-------------------------
|
||||
|
||||
The transaction index is now built separately from the main node procedure,
|
||||
meaning the `-txindex` flag can be toggled without a full reindex. If bitcoind
|
||||
is run with `-txindex` on a node that is already partially or fully synced
|
||||
without one, the transaction index will be built in the background and become
|
||||
available once caught up. When switching from running `-txindex` to running
|
||||
without the flag, the transaction index database will *not* be deleted
|
||||
automatically, meaning it could be turned back on at a later time without a full
|
||||
resync.
|
||||
|
||||
Miner block size removed
|
||||
------------------------
|
||||
|
||||
The `-blockmaxsize` option for miners to limit their blocks' sizes was
|
||||
deprecated in V0.15.1, and has now been removed. Miners should use the
|
||||
`-blockmaxweight` option if they want to limit the weight of their blocks'
|
||||
weights.
|
||||
|
||||
Python Support
|
||||
--------------
|
||||
|
||||
Support for Python 2 has been discontinued for all test files and tools.
|
||||
|
||||
Credits
|
||||
=======
|
||||
|
||||
|
|
Loading…
Reference in a new issue