diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/README.md | 1 | ||||
-rw-r--r-- | doc/build-netbsd.md | 49 | ||||
-rw-r--r-- | doc/build-osx.md | 17 | ||||
-rw-r--r-- | doc/build-unix.md | 22 | ||||
-rw-r--r-- | doc/build-windows.md | 19 | ||||
-rw-r--r-- | doc/dependencies.md | 6 | ||||
-rw-r--r-- | doc/developer-notes.md | 2 | ||||
-rw-r--r-- | doc/man/bitcoin-cli.1 | 18 | ||||
-rw-r--r-- | doc/man/bitcoin-qt.1 | 44 | ||||
-rw-r--r-- | doc/man/bitcoin-tx.1 | 10 | ||||
-rw-r--r-- | doc/man/bitcoind.1 | 44 | ||||
-rw-r--r-- | doc/release-notes.md | 72 | ||||
-rw-r--r-- | doc/release-process.md | 10 |
13 files changed, 174 insertions, 140 deletions
diff --git a/doc/README.md b/doc/README.md index 988019869e..ddb239f60c 100644 --- a/doc/README.md +++ b/doc/README.md @@ -42,6 +42,7 @@ The following are developer notes on how to build Bitcoin on your native platfor - [Unix Build Notes](build-unix.md) - [Windows Build Notes](build-windows.md) - [OpenBSD Build Notes](build-openbsd.md) +- [NetBSD Build Notes](build-netbsd.md) - [Gitian Building Guide](gitian-building.md) Development diff --git a/doc/build-netbsd.md b/doc/build-netbsd.md new file mode 100644 index 0000000000..5bf2d6b59b --- /dev/null +++ b/doc/build-netbsd.md @@ -0,0 +1,49 @@ +NetBSD build guide +====================== +(updated for NetBSD 7.0) + +This guide describes how to build bitcoind and command-line utilities on NetBSD. + +This guide does not contain instructions for building the GUI. + +Preparation +------------- + +You will need the following modules, which can be installed via pkgsrc or pkgin: + +``` +autoconf +automake +boost +db4 +git +gmake +libevent +libtool +python27 +``` + +Download the source code: +``` +git clone https://github.com/bitcoin/bitcoin +``` + +See [dependencies.md](dependencies.md) for a complete overview. + +### Building Bitcoin Core + +**Important**: Use `gmake` (the non-GNU `make` will exit with an error). + +With wallet: +``` +./autogen.sh +./configure CPPFLAGS="-I/usr/pkg/include" LDFLAGS="-L/usr/pkg/lib" BOOST_CPPFLAGS="-I/usr/pkg/include" BOOST_LDFLAGS="-L/usr/pkg/lib" +gmake +``` + +Without wallet: +``` +./autogen.sh +./configure --disable-wallet CPPFLAGS="-I/usr/pkg/include" LDFLAGS="-L/usr/pkg/lib" BOOST_CPPFLAGS="-I/usr/pkg/include" BOOST_LDFLAGS="-L/usr/pkg/lib" +gmake +``` diff --git a/doc/build-osx.md b/doc/build-osx.md index 3e243933c8..2b84c7cc2c 100644 --- a/doc/build-osx.md +++ b/doc/build-osx.md @@ -90,23 +90,6 @@ Other commands: ./src/bitcoin-cli --help # Outputs a list of command-line options. ./src/bitcoin-cli help # Outputs a list of RPC commands when the daemon is running. -Using Qt Creator as IDE ------------------------- -You can use Qt Creator as an IDE, for bitcoin development. -Download and install the community edition of [Qt Creator](https://www.qt.io/download/). -Uncheck everything except Qt Creator during the installation process. - -1. Make sure you installed everything through Homebrew mentioned above -2. Do a proper ./configure --enable-debug -3. In Qt Creator do "New Project" -> Import Project -> Import Existing Project -4. Enter "bitcoin-qt" as project name, enter src/qt as location -5. Leave the file selection as it is -6. Confirm the "summary page" -7. In the "Projects" tab select "Manage Kits..." -8. Select the default "Desktop" kit and select "Clang (x86 64bit in /usr/bin)" as compiler -9. Select LLDB as debugger (you might need to set the path to your installation) -10. Start debugging with Qt Creator - Notes ----- diff --git a/doc/build-unix.md b/doc/build-unix.md index af567cadeb..b823c23e0c 100644 --- a/doc/build-unix.md +++ b/doc/build-unix.md @@ -2,7 +2,8 @@ UNIX BUILD NOTES ==================== Some notes on how to build Bitcoin Core in Unix. -(for OpenBSD specific instructions, see [build-openbsd.md](build-openbsd.md)) +(For BSD specific instructions, see [build-openbsd.md](build-openbsd.md) and/or +[build-netbsd.md](build-netbsd.md)) Note --------------------- @@ -61,8 +62,13 @@ tuned to conserve memory with additional CXXFLAGS: ./configure CXXFLAGS="--param ggc-min-expand=1 --param ggc-min-heapsize=32768" -Dependency Build Instructions: Ubuntu & Debian ----------------------------------------------- + +## Linux Distribution Specific Instructions + +### Ubuntu & Debian + +#### Dependency Build Instructions + Build requirements: sudo apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils python3 @@ -104,8 +110,7 @@ ZMQ dependencies (provides ZMQ API 4.x): sudo apt-get install libzmq3-dev -Dependencies for the GUI: Ubuntu & Debian ------------------------------------------ +#### Dependencies for the GUI If you want to build Bitcoin-Qt, make sure that the required packages for Qt development are installed. Either Qt 5 or Qt 4 are necessary to build the GUI. @@ -127,8 +132,11 @@ libqrencode (optional) can be installed with: Once these are installed, they will be found by configure and a bitcoin-qt executable will be built by default. -Dependency Build Instructions: Fedora -------------------------------------- + +### Fedora + +#### Dependency Build Instructions + Build requirements: sudo dnf install gcc-c++ libtool make autoconf automake openssl-devel libevent-devel boost-devel libdb4-devel libdb4-cxx-devel python3 diff --git a/doc/build-windows.md b/doc/build-windows.md index 9e0e66e522..a10654c7ee 100644 --- a/doc/build-windows.md +++ b/doc/build-windows.md @@ -34,10 +34,9 @@ Full instructions to install WSL are available on the above link. To install WSL on Windows 10 with Fall Creators Update installed (version >= 16215.0) do the following: 1. Enable the Windows Subsystem for Linux feature - * From Start, search for "Turn Windows features on or off" (type 'turn') - * Select Windows Subsystem for Linux - * Click OK - * Restart if necessary + * Open the Windows Features dialog (`OptionalFeatures.exe`) + * Enable 'Windows Susbsystem for Linux' + * Click 'OK' and restart if necessary 2. Install Ubuntu * Open Microsoft Store and search for Ubuntu or use [this link](https://www.microsoft.com/store/productId/9NBLGGH4MSV6) * Click Install @@ -102,11 +101,9 @@ Note that for WSL the Bitcoin Core source path MUST be somewhere in the default example /usr/src/bitcoin, AND not under /mnt/d/. If this is not the case the dependency autoconf scripts will fail. This means you cannot use a directory that located directly on the host Windows file system to perform the build. -The next three steps are an example of how to acquire the source in an appropriate way. +Acquire the source in the usual way: - cd /usr/src - sudo git clone https://github.com/bitcoin/bitcoin.git - sudo chmod -R a+rw bitcoin + git clone https://github.com/bitcoin/bitcoin.git Once the source code is ready the build steps are below. @@ -132,11 +129,9 @@ Note that for WSL the Bitcoin Core source path MUST be somewhere in the default example /usr/src/bitcoin, AND not under /mnt/d/. If this is not the case the dependency autoconf scripts will fail. This means you cannot use a directory that located directly on the host Windows file system to perform the build. -The next three steps are an example of how to acquire the source in an appropriate way. +Acquire the source in the usual way: - cd /usr/src - sudo git clone https://github.com/bitcoin/bitcoin.git - sudo chmod -R a+rw bitcoin + git clone https://github.com/bitcoin/bitcoin.git Then build using: diff --git a/doc/dependencies.md b/doc/dependencies.md index 5c5645de97..5e698126d4 100644 --- a/doc/dependencies.md +++ b/doc/dependencies.md @@ -7,10 +7,10 @@ These are the dependencies currently used by Bitcoin Core. You can find instruct | --- | --- | --- | --- | --- | --- | | Berkeley DB | [4.8.30](http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/downloads/index.html) | 4.8.x | No | | | | Boost | [1.64.0](http://www.boost.org/users/download/) | [1.47.0](https://github.com/bitcoin/bitcoin/pull/8920) | No | | | -| ccache | [3.3.4](https://ccache.samba.org/download.html) | | No | | | +| ccache | [3.3.6](https://ccache.samba.org/download.html) | | No | | | | Clang | | [3.3+](http://llvm.org/releases/download.html) (C++11 support) | | | | | D-Bus | [1.10.18](https://cgit.freedesktop.org/dbus/dbus/tree/NEWS?h=dbus-1.10) | | No | Yes | | -| Expat | [2.2.1](https://libexpat.github.io/) | | No | Yes | | +| Expat | [2.2.5](https://libexpat.github.io/) | | No | Yes | | | fontconfig | [2.12.1](https://www.freedesktop.org/software/fontconfig/release/) | | No | Yes | | | FreeType | [2.7.1](http://download.savannah.gnu.org/releases/freetype) | | No | | | | GCC | | [4.8+](https://gcc.gnu.org/) | | | | @@ -18,7 +18,7 @@ These are the dependencies currently used by Bitcoin Core. You can find instruct | libevent | [2.1.8-stable](https://github.com/libevent/libevent/releases) | 2.0.22 | No | | | | libjpeg | | | | | [Yes](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L75) | | libpng | | | | | [Yes](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L74) | -| MiniUPnPc | [2.0.20170509](http://miniupnp.free.fr/files) | | No | | | +| MiniUPnPc | [2.0.20180203](http://miniupnp.free.fr/files) | | No | | | | OpenSSL | [1.0.1k](https://www.openssl.org/source) | | Yes | | | | PCRE | | | | | [Yes](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L76) | | protobuf | [2.6.3](https://github.com/google/protobuf/releases) | | No | | | diff --git a/doc/developer-notes.md b/doc/developer-notes.md index 9dc63a1e4b..2ebfb59c08 100644 --- a/doc/developer-notes.md +++ b/doc/developer-notes.md @@ -132,6 +132,8 @@ Not OK (used plenty in the current source, but not picked up): A full list of comment syntaxes picked up by doxygen can be found at http://www.stack.nl/~dimitri/doxygen/manual/docblocks.html, but if possible use one of the above styles. +Documentation can be generated with `make docs` and cleaned up with `make clean-docs`. + Development tips and tricks --------------------------- diff --git a/doc/man/bitcoin-cli.1 b/doc/man/bitcoin-cli.1 index 6787638443..168a68cb30 100644 --- a/doc/man/bitcoin-cli.1 +++ b/doc/man/bitcoin-cli.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.4. -.TH BITCOIN-CLI "1" "September 2017" "bitcoin-cli v0.15.99.0" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.3. +.TH BITCOIN-CLI "1" "January 2018" "bitcoin-cli v0.16.99.0" "User Commands" .SH NAME -bitcoin-cli \- manual page for bitcoin-cli v0.15.99.0 +bitcoin-cli \- manual page for bitcoin-cli v0.16.99.0 .SH DESCRIPTION -Bitcoin Core RPC client version v0.15.99.0 +Bitcoin Core RPC client version v0.16.99.0 .SS "Usage:" .TP bitcoin\-cli [options] <command> [params] @@ -25,6 +25,14 @@ Specify configuration file (default: bitcoin.conf) \fB\-datadir=\fR<dir> .IP Specify data directory +.HP +\fB\-getinfo\fR +.IP +Get general information from the remote server. Note that unlike +server\-side RPC calls, the results of \fB\-getinfo\fR is the result of +multiple non\-atomic requests. Some entries in the result may +represent results from different states (e.g. wallet balance may +be as of a different block from the chain state reported) .PP Chain selection options: .HP @@ -88,7 +96,7 @@ Send RPC for non\-default wallet on RPC server (argument is wallet filename in bitcoind directory, required if bitcoind/\-Qt runs with multiple wallets) .SH COPYRIGHT -Copyright (C) 2009-2017 The Bitcoin Core developers +Copyright (C) 2009-2018 The Bitcoin Core developers Please contribute if you find Bitcoin Core useful. Visit <https://bitcoincore.org> for further information about the software. diff --git a/doc/man/bitcoin-qt.1 b/doc/man/bitcoin-qt.1 index ae35d50ac3..a8c55fb0b3 100644 --- a/doc/man/bitcoin-qt.1 +++ b/doc/man/bitcoin-qt.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.4. -.TH BITCOIN-QT "1" "September 2017" "bitcoin-qt v0.15.99.0" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.3. +.TH BITCOIN-QT "1" "January 2018" "bitcoin-qt v0.16.99.0" "User Commands" .SH NAME -bitcoin-qt \- manual page for bitcoin-qt v0.15.99.0 +bitcoin-qt \- manual page for bitcoin-qt v0.16.99.0 .SH DESCRIPTION -Bitcoin Core version v0.15.99.0 (64\-bit) +Bitcoin Core version v0.16.99.0 (64\-bit) Usage: .IP bitcoin\-qt [command\-line options] @@ -32,7 +32,7 @@ block hash) If this block is in the chain assume that it and its ancestors are valid and potentially skip their script verification (0 to verify all, default: -0000000000000000003b9ce759c2a087d52abc4266f8f4ebd6d768b89defa50a, +0000000000000000005214481d2d96f898e3d5416e43359c145944a909d242e0, testnet: 0000000002e9e7b00e1f6dc5123a04aad68dd0f0968d8c7aa45f6640795c37b1) .HP @@ -52,6 +52,11 @@ Set database cache size in megabytes (4 to 16384, default: 450) .IP Imports blocks from external blk000??.dat file on startup .HP +\fB\-debuglogfile=\fR<file> +.IP +Specify location of debug log file: this can be an absolute path or a +path relative to the data directory (default: debug.log) +.HP \fB\-maxorphantx=\fR<n> .IP Keep at most <n> unconnectable transactions in memory (default: 100) @@ -76,7 +81,7 @@ Extra transactions to keep in memory for compact block reconstructions .HP \fB\-par=\fR<n> .IP -Set the number of script verification threads (\fB\-2\fR to 16, 0 = auto, <0 = +Set the number of script verification threads (\fB\-6\fR to 16, 0 = auto, <0 = leave that many cores free, default: 0) .HP \fB\-pid=\fR<file> @@ -117,7 +122,8 @@ Connection options: .HP \fB\-addnode=\fR<ip> .IP -Add a node to connect to and attempt to keep the connection open +Add a node to connect to and attempt to keep the connection open (see +the `addnode` RPC command help for more info) .HP \fB\-banscore=\fR<n> .IP @@ -136,7 +142,8 @@ for IPv6 \fB\-connect=\fR<ip> .IP Connect only to the specified node(s); \fB\-connect\fR=\fI\,0\/\fR disables automatic -connections +connections (the rules for this peer are the same as for +\fB\-addnode\fR) .HP \fB\-discover\fR .IP @@ -258,6 +265,18 @@ Tries to keep outbound traffic under the given target (in MiB per 24h), .PP Wallet options: .HP +\fB\-addresstype\fR +.IP +What type of addresses to use ("legacy", "p2sh\-segwit", or "bech32", +default: "p2sh\-segwit") +.HP +\fB\-changetype\fR +.IP +What type of change to use ("legacy", "p2sh\-segwit", or "bech32"). +Default is same as \fB\-addresstype\fR, except when +\fB\-addresstype\fR=\fI\,p2sh\-segwit\/\fR a native segwit output is used when +sending to a native segwit address) +.HP \fB\-disablewallet\fR .IP Do not load the wallet and disable wallet RPC calls @@ -307,7 +326,7 @@ confirmation on average within n blocks (default: 6) .HP \fB\-walletrbf\fR .IP -Send transactions with full\-RBF opt\-in enabled (default: 0) +Send transactions with full\-RBF opt\-in enabled (RPC only, default: 0) .HP \fB\-upgradewallet\fR .IP @@ -321,6 +340,11 @@ Specify wallet file (within data directory) (default: wallet.dat) .IP Make the wallet broadcast transactions (default: 1) .HP +\fB\-walletdir=\fR<dir> +.IP +Specify directory to hold wallets (default: <datadir>/wallets if it +exists, otherwise <datadir>) +.HP \fB\-walletnotify=\fR<cmd> .IP Execute command when a wallet transaction changes (%s in cmd is replaced @@ -542,7 +566,7 @@ Show splash screen on startup (default: 1) .IP Reset all settings changed in the GUI .SH COPYRIGHT -Copyright (C) 2009-2017 The Bitcoin Core developers +Copyright (C) 2009-2018 The Bitcoin Core developers Please contribute if you find Bitcoin Core useful. Visit <https://bitcoincore.org> for further information about the software. diff --git a/doc/man/bitcoin-tx.1 b/doc/man/bitcoin-tx.1 index 8b72fbde05..8e6994ac07 100644 --- a/doc/man/bitcoin-tx.1 +++ b/doc/man/bitcoin-tx.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.4. -.TH BITCOIN-TX "1" "September 2017" "bitcoin-tx v0.15.99.0" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.3. +.TH BITCOIN-TX "1" "January 2018" "bitcoin-tx v0.16.99.0" "User Commands" .SH NAME -bitcoin-tx \- manual page for bitcoin-tx v0.15.99.0 +bitcoin-tx \- manual page for bitcoin-tx v0.16.99.0 .SH DESCRIPTION -Bitcoin Core bitcoin\-tx utility version v0.15.99.0 +Bitcoin Core bitcoin\-tx utility version v0.16.99.0 .SS "Usage:" .TP bitcoin\-tx [options] <hex\-tx> [commands] @@ -112,7 +112,7 @@ set=NAME:JSON\-STRING .IP Set register NAME to given JSON\-STRING .SH COPYRIGHT -Copyright (C) 2009-2017 The Bitcoin Core developers +Copyright (C) 2009-2018 The Bitcoin Core developers Please contribute if you find Bitcoin Core useful. Visit <https://bitcoincore.org> for further information about the software. diff --git a/doc/man/bitcoind.1 b/doc/man/bitcoind.1 index baf747436f..8728965b2a 100644 --- a/doc/man/bitcoind.1 +++ b/doc/man/bitcoind.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.4. -.TH BITCOIND "1" "September 2017" "bitcoind v0.15.99.0" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.3. +.TH BITCOIND "1" "January 2018" "bitcoind v0.16.99.0" "User Commands" .SH NAME -bitcoind \- manual page for bitcoind v0.15.99.0 +bitcoind \- manual page for bitcoind v0.16.99.0 .SH DESCRIPTION -Bitcoin Core Daemon version v0.15.99.0 +Bitcoin Core Daemon version v0.16.99.0 .SS "Usage:" .TP bitcoind [options] @@ -33,7 +33,7 @@ block hash) If this block is in the chain assume that it and its ancestors are valid and potentially skip their script verification (0 to verify all, default: -0000000000000000003b9ce759c2a087d52abc4266f8f4ebd6d768b89defa50a, +0000000000000000005214481d2d96f898e3d5416e43359c145944a909d242e0, testnet: 0000000002e9e7b00e1f6dc5123a04aad68dd0f0968d8c7aa45f6640795c37b1) .HP @@ -57,6 +57,11 @@ Set database cache size in megabytes (4 to 16384, default: 450) .IP Imports blocks from external blk000??.dat file on startup .HP +\fB\-debuglogfile=\fR<file> +.IP +Specify location of debug log file: this can be an absolute path or a +path relative to the data directory (default: debug.log) +.HP \fB\-maxorphantx=\fR<n> .IP Keep at most <n> unconnectable transactions in memory (default: 100) @@ -81,7 +86,7 @@ Extra transactions to keep in memory for compact block reconstructions .HP \fB\-par=\fR<n> .IP -Set the number of script verification threads (\fB\-2\fR to 16, 0 = auto, <0 = +Set the number of script verification threads (\fB\-6\fR to 16, 0 = auto, <0 = leave that many cores free, default: 0) .HP \fB\-pid=\fR<file> @@ -122,7 +127,8 @@ Connection options: .HP \fB\-addnode=\fR<ip> .IP -Add a node to connect to and attempt to keep the connection open +Add a node to connect to and attempt to keep the connection open (see +the `addnode` RPC command help for more info) .HP \fB\-banscore=\fR<n> .IP @@ -141,7 +147,8 @@ for IPv6 \fB\-connect=\fR<ip> .IP Connect only to the specified node(s); \fB\-connect\fR=\fI\,0\/\fR disables automatic -connections +connections (the rules for this peer are the same as for +\fB\-addnode\fR) .HP \fB\-discover\fR .IP @@ -263,6 +270,18 @@ Tries to keep outbound traffic under the given target (in MiB per 24h), .PP Wallet options: .HP +\fB\-addresstype\fR +.IP +What type of addresses to use ("legacy", "p2sh\-segwit", or "bech32", +default: "p2sh\-segwit") +.HP +\fB\-changetype\fR +.IP +What type of change to use ("legacy", "p2sh\-segwit", or "bech32"). +Default is same as \fB\-addresstype\fR, except when +\fB\-addresstype\fR=\fI\,p2sh\-segwit\/\fR a native segwit output is used when +sending to a native segwit address) +.HP \fB\-disablewallet\fR .IP Do not load the wallet and disable wallet RPC calls @@ -312,7 +331,7 @@ confirmation on average within n blocks (default: 6) .HP \fB\-walletrbf\fR .IP -Send transactions with full\-RBF opt\-in enabled (default: 0) +Send transactions with full\-RBF opt\-in enabled (RPC only, default: 0) .HP \fB\-upgradewallet\fR .IP @@ -326,6 +345,11 @@ Specify wallet file (within data directory) (default: wallet.dat) .IP Make the wallet broadcast transactions (default: 1) .HP +\fB\-walletdir=\fR<dir> +.IP +Specify directory to hold wallets (default: <datadir>/wallets if it +exists, otherwise <datadir>) +.HP \fB\-walletnotify=\fR<cmd> .IP Execute command when a wallet transaction changes (%s in cmd is replaced @@ -521,7 +545,7 @@ non\-verbose mode, non\-segwit(0) or segwit(1) (default: 1) .IP Set the number of threads to service RPC calls (default: 4) .SH COPYRIGHT -Copyright (C) 2009-2017 The Bitcoin Core developers +Copyright (C) 2009-2018 The Bitcoin Core developers Please contribute if you find Bitcoin Core useful. Visit <https://bitcoincore.org> for further information about the software. diff --git a/doc/release-notes.md b/doc/release-notes.md index 29377d4a1d..528cb81a38 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -3,7 +3,7 @@ release-notes at release time) Bitcoin Core version *version* is now available from: - <https://bitcoin.org/bin/bitcoin-core-*version*/> + <https://bitcoincore.org/bin/bitcoin-core-*version*/> This is a new major version release, including new features, various bugfixes and performance improvements, as well as updated translations. @@ -56,70 +56,12 @@ frequently tested on them. Notable changes =============== -GCC 4.8.x --------------- -The minimum version of GCC required to compile Bitcoin Core is now 4.8. No effort will be -made to support older versions of GCC. See discussion in issue #11732 for more information. - -HD-wallets by default ---------------------- -Due to a backward-incompatible change in the wallet database, wallets created -with version 0.16.0 will be rejected by previous versions. Also, version 0.16.0 -will only create hierarchical deterministic (HD) wallets. - -Replace-By-Fee by default in GUI --------------------------------- -The send screen now uses BIP-125 RBF by default, regardless of `-walletrbf`. -There is a checkbox to mark the transaction as final. - -The RPC default remains unchanged: to use RBF, launch with `-walletrbf=1` or -use the `replaceable` argument for individual transactions. - -Wallets directory configuration (`-walletdir`) ----------------------------------------------- - -Bitcoin Core now has more flexibility in where the wallets directory can be -located. Previously wallet database files were stored at the top level of the -bitcoin data directory. The behavior is now: - -- For new installations (where the data directory doesn't already exist), - wallets will now be stored in a new `wallets/` subdirectory inside the data - directory by default. -- For existing nodes (where the data directory already exists), wallets will be - stored in the data directory root by default. If a `wallets/` subdirectory - already exists in the data directory root, then wallets will be stored in the - `wallets/` subdirectory by default. -- The location of the wallets directory can be overridden by specifying a - `-walletdir=<path>` option where `<path>` can be an absolute path to a - directory or directory symlink. - -Care should be taken when choosing the wallets directory location, as if it -becomes unavailable during operation, funds may be lost. - -Low-level RPC changes ----------------------- -- The deprecated RPC `getinfo` was removed. It is recommended that the more specific RPCs are used: - * `getblockchaininfo` - * `getnetworkinfo` - * `getwalletinfo` - * `getmininginfo` -- The wallet RPC `getreceivedbyaddress` will return an error if called with an address not in the wallet. -- The wallet RPC `addwitnessaddress` was deprecated and will be removed in version 0.17, - set the `address_type` argument of `getnewaddress`, or option `-addresstype=[bech32|p2sh-segwit]` instead. - -Changed command-line options ------------------------------ -- `-debuglogfile=<file>` can be used to specify an alternative debug logging file. - -Renamed script for creating JSON-RPC credentials ------------------------------ -The `share/rpcuser/rpcuser.py` script was renamed to `share/rpcauth/rpcauth.py`. This script can be -used to create `rpcauth` credentials for a JSON-RPC user. - - -- `dumpwallet` now includes hex-encoded scripts from the wallet in the dumpfile, and - `importwallet` now imports these scripts, but corresponding addresses may not be added - correctly or a manual rescan may be required to find relevant transactions. +RPC changes +------------ + +### Low-level changes + +- The `fundrawtransaction` rpc will reject the previously deprecated `reserveChangeKey` option. Credits ======= diff --git a/doc/release-process.md b/doc/release-process.md index f429b4bbdb..430a5a7ed3 100644 --- a/doc/release-process.md +++ b/doc/release-process.md @@ -13,7 +13,7 @@ Before every minor and major release: * Update version in `configure.ac` (don't forget to set `CLIENT_VERSION_IS_RELEASE` to `true`) * Write release notes (see below) * Update `src/chainparams.cpp` nMinimumChainWork with information from the getblockchaininfo rpc. -* Update `src/chainparams.cpp` defaultAssumeValid with information from the getblockhash rpc. +* Update `src/chainparams.cpp` defaultAssumeValid with information from the getblockhash rpc. - The selected value must not be orphaned so it may be useful to set the value two blocks back from the tip. - Testnet should be set some tens of thousands back from the tip due to reorgs there. - This update should be reviewed with a reindex-chainstate with assumevalid=0 to catch any defect @@ -23,7 +23,8 @@ Before every major release: * Update hardcoded [seeds](/contrib/seeds/README.md), see [this pull request](https://github.com/bitcoin/bitcoin/pull/7415) for an example. * Update [`BLOCK_CHAIN_SIZE`](/src/qt/intro.cpp) to the current size plus some overhead. -* Update `src/chainparams.cpp` chainTxData with statistics about the transaction count and rate. +* Update `src/chainparams.cpp` chainTxData with statistics about the transaction count and rate. Use the output of the RPC `getchaintxstats`, see + [this pull request](https://github.com/bitcoin/bitcoin/pull/12270) for an example. Reviewers can verify the results by running `getchaintxstats <window_block_count> <window_last_block_hash>` with the `window_block_count` and `window_last_block_hash` from your output. * Update version of `contrib/gitian-descriptors/*.yml`: usually one'd want to do this on master after branching off the release - but be sure to at least do it before a new major release ### First time / New builders @@ -136,10 +137,7 @@ Build output expected: ### Verify other gitian builders signatures to your own. (Optional) -Add other gitian builders keys to your gpg keyring, and/or refresh keys. - - gpg --import bitcoin/contrib/gitian-keys/*.pgp - gpg --refresh-keys +Add other gitian builders keys to your gpg keyring, and/or refresh keys: See `../bitcoin/contrib/gitian-keys/README.md`. Verify the signatures |