aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2018-11-14 13:42:45 +0100
committerWladimir J. van der Laan <laanwj@gmail.com>2018-11-14 13:42:51 +0100
commit99a3e6f0b1abcddca44af95f1d304765b944e01c (patch)
treedd461aff73a7bef8ca7225b210df9d957de33b55 /doc
parent74213fa4d13e53c3811d69a516fc865b79fdd0c7 (diff)
parentba8f0c6c8d6d3f5b0bd0ab92b6a4ca9f7b5f0862 (diff)
downloadbitcoin-99a3e6f0b1abcddca44af95f1d304765b944e01c.tar.xz
Merge #14688: Doc: update release notes for changes since 0.17.0 branch
ba8f0c6c8d6d3f5b0bd0ab92b6a4ca9f7b5f0862 Release notes: integrate detached release notes (David A. Harding) 6062f0e6139cfc5802e9b18f03908191d8c530f5 Release notes: update notes through to 11e1ac3ae08 (David A. Harding) Pull request description: This documents changes listed by `git log v0.17.0...11e1ac3 --merges` and integrates the existing detached release notes into the main file. My goal is to update the release notes each month in order to reduce the amount of writing and review that needs to be done all at once near the start of the RC cycle. Note: I've chosen to use fully-qualified URLs for linking to documentation, rather than shorter relative URLs that would otherwise be preferred, as the release notes are commonly copied into emails, reddit threads, and blog posts where relative URLs would be incomplete or would point to the wrong page. Tree-SHA512: a943327d48e166f4a188ab0f468972609276e9c8f0ed85513823511ed989606445bf6b0ae9dd693b5d1e13d2f98c13573acd13865c57fe9c8ee9dbd04ceeff7f
Diffstat (limited to 'doc')
-rw-r--r--doc/release-notes-13152.md5
-rw-r--r--doc/release-notes-14023.md8
-rw-r--r--doc/release-notes-14282.md9
-rw-r--r--doc/release-notes-14296.md5
-rw-r--r--doc/release-notes-14454.md6
-rw-r--r--doc/release-notes-14468.md15
-rw-r--r--doc/release-notes.md140
7 files changed, 137 insertions, 51 deletions
diff --git a/doc/release-notes-13152.md b/doc/release-notes-13152.md
deleted file mode 100644
index ace56f4d1b..0000000000
--- a/doc/release-notes-13152.md
+++ /dev/null
@@ -1,5 +0,0 @@
-New RPC methods
-------------
-
-- `getnodeaddresses` returns peer addresses known to this node. It may be used to connect to nodes over TCP without using the DNS seeds.
-- `listwalletdir` returns a list of wallets in the wallet directory which is configured with `-walletdir` parameter.
diff --git a/doc/release-notes-14023.md b/doc/release-notes-14023.md
deleted file mode 100644
index 18ea6f26d0..0000000000
--- a/doc/release-notes-14023.md
+++ /dev/null
@@ -1,8 +0,0 @@
-Account API removed
--------------------
-
-The 'account' API was deprecated in v0.17 and has been fully removed in v0.18.
-The 'label' API was introduced in v0.17 as a replacement for accounts.
-
-See the release notes from v0.17 for a full description of the changes from the
-'account' API to the 'label' API.
diff --git a/doc/release-notes-14282.md b/doc/release-notes-14282.md
deleted file mode 100644
index 900ca04324..0000000000
--- a/doc/release-notes-14282.md
+++ /dev/null
@@ -1,9 +0,0 @@
-Low-level RPC changes
-----------------------
-
-`-usehd` was removed in version 0.16. From that version onwards, all new
-wallets created are hierarchical deterministic wallets. Version 0.18 makes
-specifying `-usehd` invalid config.
-
-`ischange` field of boolean type that shows if an address was used for change
-output was added to `getaddressinfo` method response.
diff --git a/doc/release-notes-14296.md b/doc/release-notes-14296.md
deleted file mode 100644
index f7c52baace..0000000000
--- a/doc/release-notes-14296.md
+++ /dev/null
@@ -1,5 +0,0 @@
-addwitnessaddress RPC method removed
-------------------------------------
-
-The `addwitnessaddress` RPC was added for segwit testing in version 0.13.0. It
-was deprecated in version 0.16.0. This version fully removes the RPC method.
diff --git a/doc/release-notes-14454.md b/doc/release-notes-14454.md
deleted file mode 100644
index dd2c6c7ced..0000000000
--- a/doc/release-notes-14454.md
+++ /dev/null
@@ -1,6 +0,0 @@
-Low-level RPC changes
-----------------------
-
-The `importmulti` RPC has been updated to support P2WSH, P2WPKH, P2SH-P2WPKH,
-P2SH-P2WSH. Each request now accepts an additional `witnessscript` to be used
-for P2WSH or P2SH-P2WSH.
diff --git a/doc/release-notes-14468.md b/doc/release-notes-14468.md
deleted file mode 100644
index fb0243aba8..0000000000
--- a/doc/release-notes-14468.md
+++ /dev/null
@@ -1,15 +0,0 @@
-Wallet `generate` RPC method deprecated
----------------------------------------
-
-The wallet's `generate` RPC method has been deprecated and will be fully
-removed in v0.19.
-
-`generate` is only used for testing. The RPC call reaches across multiple
-subsystems (wallet and mining), so is deprecated to simplify the wallet-node
-interface. Projects that are using `generate` for testing purposes should
-transition to using the `generatetoaddress` call, which does not require or use
-the wallet component. Calling `generatetoaddress` with an address returned by
-`getnewaddress` gives the same functionality as the old `generate` method.
-
-To continue using `generate` in v0.18, restart bitcoind with the
-`-deprecatedrpc=generate` configuration.
diff --git a/doc/release-notes.md b/doc/release-notes.md
index 2044a50098..f5c139e3f1 100644
--- a/doc/release-notes.md
+++ b/doc/release-notes.md
@@ -53,8 +53,14 @@ the Linux kernel, macOS 10.10+, and Windows 7 and newer (Windows XP is not suppo
Bitcoin Core should also work on most other Unix-like systems but is not
frequently tested on them.
-From 0.17.0 onwards macOS <10.10 is no longer supported. 0.17.0 is built using Qt 5.9.x, which doesn't
-support versions of macOS older than 10.10.
+From 0.17.0 onwards, macOS <10.10 is no longer supported. 0.17.0 is
+built using Qt 5.9.x, which doesn't support versions of macOS older than
+10.10. Additionally, Bitcoin Core does not yet change appearance when
+macOS "dark mode" is activated.
+
+In addition to previously-supported CPU platforms, this release's
+pre-compiled distribution also provides binaries for the RISC-V
+platform.
Notable changes
===============
@@ -69,9 +75,137 @@ nodes. The option will now by default be off for improved privacy and security
as well as reduced upload usage. The option can explicitly be turned on for
local-network debugging purposes.
-Example item
+Documentation
+-------------
+
+- A new short
+ [document](https://github.com/bitcoin/bitcoin/blob/master/doc/JSON-RPC-interface.md)
+ about the JSON-RPC interface describes cases where the results of an
+ RPC might contain inconsistencies between data sourced from different
+ subsystems, such as wallet state and mempool state. A note is added
+ to the [REST interface documentation](https://github.com/bitcoin/bitcoin/blob/master/doc/REST-interface.md)
+ indicating that the same rules apply.
+
+- A new [document](https://github.com/bitcoin/bitcoin/blob/master/doc/bitcoin-conf.md)
+ about the `bitcoin.conf` file describes how to use it to configure
+ Bitcoin Core.
+
+- A new document introduces Bitcoin Core's BIP174
+ [Partially-Signed Bitcoin Transactions (PSBT)](https://github.com/bitcoin/bitcoin/blob/master/doc/psbt.md)
+ interface, which is used to allow multiple programs to collaboratively
+ work to create, sign, and broadcast new transactions. This is useful
+ for offline (cold storage) wallets, multisig wallets, coinjoin
+ implementations, and many other cases where two or more programs need
+ to interact to generate a complete transaction.
+
+- The [output script descriptor](https://github.com/bitcoin/bitcoin/blob/master/doc/descriptors.md)
+ documentation has been updated with information about new features in
+ this still-developing language for describing the output scripts that
+ a wallet or other program wants to receive notifications for, such as
+ which addresses it wants to know received payments. The language is
+ currently used in the `scantxoutset` RPC and is expected to be adapted
+ to other RPCs and to the underlying wallet structure.
+
+Build system changes
+--------------------
+
+- A new `--disable-bip70` option may be passed to `./configure` to
+ prevent Bitcoin-Qt from being built with support for the BIP70 payment
+ protocol or from linking libssl. As the payment protocol has exposed
+ Bitcoin Core to libssl vulnerabilities in the past, builders who don't
+ need BIP70 support are encouraged to use this option to reduce their
+ exposure to future vulnerabilities.
+
+Deprecated or removed RPCs
+--------------------------
+
+- The `signrawtransaction` RPC is removed after being deprecated and
+ hidden behind a special configuration option in version 0.17.0.
+
+- The 'account' API is removed after being deprecated in v0.17. The
+ 'label' API was introduced in v0.17 as a replacement for accounts.
+ See the [release notes from v0.17](https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-0.17.0.md#label-and-account-apis-for-wallet)
+ for a full description of the changes from the 'account' API to the
+ 'label' API.
+
+- The `addwitnessaddress` RPC is removed after being deprecated in
+ version 0.13.0.
+
+- The wallet's `generate` RPC method is deprecated and will be fully
+ removed in a subsequent major version. This RPC is only used for
+ testing, but its implementation reached across multiple subsystems
+ (wallet and mining), so it is being deprecated to simplify the
+ wallet-node interface. Projects that are using `generate` for testing
+ purposes should transition to using the `generatetoaddress` RPC, which
+ does not require or use the wallet component. Calling
+ `generatetoaddress` with an address returned by the `getnewaddress`
+ RPC gives the same functionality as the old `generate` RPC. To
+ continue using `generate` in this version, restart bitcoind with the
+ `-deprecatedrpc=generate` configuration option.
+
+New RPCs
+--------
+
+- A new `getnodeaddresses` RPC returns peer addresses known to this
+ node. It may be used to find nodes to connect to without using a DNS
+ seeder.
+
+- A new `listwalletdir` RPC returns a list of wallets in the wallet
+ directory (either the default wallet directory or the directory
+ configured by the `-walletdir` parameter).
+
+Updated RPCs
------------
+Note: some low-level RPC changes mainly useful for testing are described
+in the Low-level Changes section below.
+
+- The `getpeerinfo` RPC now returns an additional "minfeefilter" field
+ set to the peer's BIP133 fee filter. You can use this to detect that
+ you have peers that are willing to accept transactions below the
+ default minimum relay fee.
+
+- The mempool RPCs, such as `getrawmempool` with `verbose=true`, now
+ return an additional "bip125-replaceable" value indicating whether the
+ transaction (or its unconfirmed ancestors) opts-in to asking nodes and
+ miners to replace it with a higher-feerate transaction spending any of
+ the same inputs.
+
+- The `settxfee` RPC previously silently ignored attempts to set the fee
+ below the allowed minimums. It now prints a warning. The special
+ value of "0" may still be used to request the minimum value.
+
+- The `getaddressinfo` RPC now provides an `ischange` field indicating
+ whether the wallet used the address in a change output.
+
+- The `importmulti` RPC has been updated to support P2WSH, P2WPKH,
+ P2SH-P2WPKH, and P2SH-P2WSH. Requests for P2WSH and P2SH-P2WSH accept
+ an additional `witnessscript` parameter.
+
+Low-level changes
+=================
+
+RPC
+---
+
+- The `submitblock` RPC previously returned the reason a rejected block
+ was invalid the first time it processed that block but returned a
+ generic "duplicate" rejection message on subsequent occasions it
+ processed the same block. It now always returns the fundamental
+ reason for rejecting an invalid block and only returns "duplicate" for
+ valid blocks it has already accepted.
+
+- A new `submitheader` RPC allows submitting block headers independently
+ from their block. This is likely only useful for testing.
+
+Configuration
+-------------
+
+- The `-usehd` configuration option was removed in version 0.16. From
+ that version onwards, all new wallets created are hierarchical
+ deterministic wallets. This release makes specifying `-usehd` an
+ invalid configuration option.
+
Credits
=======