Commit graph

1228 commits

Author SHA1 Message Date
MarcoFalke
ae1cc010b8
Merge #14282: [wallet] Remove -usehd
7ac911afe7 [docs] Add release notes for removing `-usehd` (John Newbery)
25548b2958 [wallet] Remove -usehd (John Newbery)

Pull request description:

  `-usehd` is no longer used (except to tell the user that they've set it incorrectly for the wallet that they're loading). Remove it (in the same spirit as #14272)

Tree-SHA512: 5bdcd2bb9bb8504a01343595bcd1bd433d97b730255152c725103c1ac3fa3a9d9e5220a4c29d4c72307cf803e1c09d31080f83603c23dc77263846e17b1826f0
2018-09-26 17:36:28 -04:00
John Newbery
7ac911afe7
[docs] Add release notes for removing -usehd 2018-09-26 17:32:39 -04:00
Walter
52beb9ed88
Add autogen.sh in ARM Cross-compilation
autogen for the config files was missing.
2018-09-20 13:57:29 +02:00
MarcoFalke
920c090f63
Merge #14287: tests: Use MakeUnique to construct objects owned by unique_ptrs
b6718e373e tests: Use MakeUnique to construct objects owned by unique_ptrs (practicalswift)

Pull request description:

  A subset of #14211 ("Use MakeUnique to construct objects owned by unique_ptrs") as suggested by @MarcoFalke in https://github.com/bitcoin/bitcoin/pull/14211#issuecomment-423324019.

  Use `MakeUnique` to construct objects owned by `unique_ptr`s.

  Rationale:
  * `MakeUnique` ensures exception safety in complex expressions.
  * `MakeUnique` gives a more concise statement of the construction.

Tree-SHA512: 1228ae6ce7beb178d79142c4e936b728178ccaa8aa35c6d8feeb33d1a667abfdd010c59996a9d833594611e913877ce5794e75953d11d9b1fdbac04aa491d9cf
2018-09-19 13:26:47 -04:00
practicalswift
b6718e373e tests: Use MakeUnique to construct objects owned by unique_ptrs 2018-09-21 11:03:21 +02:00
MarcoFalke
fad95e8da6
doc: Split build linux dependencies 2018-09-19 10:18:35 -04:00
MarcoFalke
d26278988f
Merge #13152: [rpc] Add getnodeaddresses RPC command
a2eb6f5405 [rpc] Add getnodeaddresses RPC command (chris-belcher)

Pull request description:

  Implements issue https://github.com/bitcoin/bitcoin/issues/9463

  New getnodeaddresses call gives access via RPC to the peers known by the node. It may be useful for bitcoin wallets to broadcast their transactions over tor for improved privacy without using the centralized DNS seeds. getnodeaddresses is very similar to the getaddr p2p method.

  Please advise me on the best approach for writing an automated test. By my reading the getaddr p2p method also isn't really tested.

Tree-SHA512: ad03abf518847476495b76a2f5394b8030aa86654429167fa618e21460abb505c10ef9817ec1b80472320d41d0aff5dc94a8efce023aaaaf5e81386aa92b852b
2018-09-18 19:50:00 -04:00
Wladimir J. van der Laan
fd5c95cc4e doc: Add historical release notes for 0.16.3 2018-09-18 21:20:13 +02:00
chris-belcher
a2eb6f5405 [rpc] Add getnodeaddresses RPC command
New getnodeaddresses call gives access via RPC to the peers known by
the node. It may be useful for bitcoin wallets to broadcast their
transactions over tor for improved privacy without using the
centralized DNS seeds. getnodeaddresses is very similar to the getaddr
p2p method.

Tests the new rpc call by feeding IP address to a test node via the p2p
protocol, then obtaining someone of those addresses with
getnodeaddresses and checking that they are a subset.
2018-09-17 22:55:23 +01:00
Wladimir J. van der Laan
2d4749b366
Merge #13578: [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions
f1bd03eb01 [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions (mruddy)

Pull request description:

  Upgrade the ZeroMQ dependency from version 4.2.3 to the latest stable version 4.2.5.

  This PR Follows the lead of https://github.com/bitcoin/bitcoin/pull/11986.

  I upgraded both patch files to correspond to the version `4.2.5` libzmq files.
  I assume doing so is still necessary and correct.

  Without updating the patch line numbers, things appear to work, but you get extra log messages while building `depends` because things don't exactly match, e.g.:
  ```
  /bitcoin/depends> make zeromq
  Extracting zeromq...
  /bitcoin/depends/sources/zeromq-4.2.5.tar.gz: OK
  Preprocessing zeromq...
  patching file src/windows.hpp
  Hunk #1 succeeded at 58 (offset 3 lines).
  patching file src/thread.cpp
  Hunk #1 succeeded at 307 with fuzz 2 (offset 87 lines).
  Hunk #2 succeeded at 323 with fuzz 2 (offset 90 lines).
  ```
  Updating the patches seemed cleaner, so I did it. Note that libzmq had some whitespace changes, so that's why the updated patches do too.

  More info: https://github.com/zeromq/libzmq/releases/tag/v4.2.5

  tags: libzmq, zmq, 0mq

Tree-SHA512: 78659dd276b5311e40634b1bbebb802ddd6b69662ba3c84995ef1e3795c49a78b1635112c7fd72a405ea36e2cc3bdeb84e6d00d4e491a349bba1dafff50e2fa5
2018-09-17 13:54:42 +02:00
Hennadii Stepanov
14b29a77ac
Fix reference to lint-locale-dependence.sh 2018-09-13 18:01:56 +03:00
Luke Dashjr
92af71cea9 configure: Make it possible to build only one of bitcoin-cli or bitcoin-tx 2018-09-13 11:48:23 +00:00
mruddy
f1bd03eb01 [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions 2018-09-11 16:33:05 -04:00
Wladimir J. van der Laan
321075609d
Merge #14054: p2p: Disable BIP 61 by default
faea5bfc5a doc: release notes for -enablebip61 default change (MarcoFalke)
fa14b54a87 p2p: Disable BIP 61 by default (MarcoFalke)

Pull request description:

  The live p2p network should not be used for debugging or as development aid when implementing the p2p protocol. Instead, applications should be tested locally (e.g. by inspecting the debug log of a validating node on the local network)

  Using the p2p network for this purpose seems wasteful and even dangerous, as peers can not be trusted to send the correct reject messages or a reject message at all.

Tree-SHA512: 9c91ad035b5110942172a3b4b8a332a84e0c0aa9ee80f8134aeab63e66ac604841e68b04038681c288b716e5e0cbe38065eb5c7eb63fa72c3bdb3255a4b2d99d
2018-09-10 17:57:47 +02:00
MarcoFalke
faea5bfc5a
doc: release notes for -enablebip61 default change 2018-09-09 13:54:18 -04:00
MarcoFalke
b8cf492e85
Merge #14153: Docs: Add disable-wallet section to OSX build instructions, update line in Unix instructions
e351a16a2a Remove reference to deprecated RPC call in build instructions (Michael Goldstein)
a6f16f1b1a Docs: Add disable-wallet section to OSX build instructions (Michael Goldstein)

Pull request description:

  The `disable-wallet` section was mentioned in the `Berkeley DB` section of the OSX build instructions, but the section did not actually exist. This PR ports the section from the Unix build instructions.

Tree-SHA512: e32f10f3b92307325f2101e89d3e18c89346916e70117c208ad7441170c4aee65b636ea4f7dd1cb0ecf0e800c1aa7c37fa73125e69ecdd539bc862e651b79b16
2018-09-07 08:24:21 -04:00
Russell Yanofsky
eb49412562 doc/descriptors.md tweaks
Add some implementation details, and tweak phrasing in examples section to be
more explicit about how script expressions are used for matching.
2018-09-06 09:59:42 -04:00
Michael Goldstein
e351a16a2a Remove reference to deprecated RPC call in build instructions 2018-09-05 14:21:18 -05:00
Michael Goldstein
a6f16f1b1a Docs: Add disable-wallet section to OSX build instructions 2018-09-05 13:57:47 -05:00
Pieter Wuille
9254ffcf2d Add descriptor reference documentation 2018-09-05 11:26:16 -07:00
Jordan Baczuk
fb97437efa added note that control port must be enabled and how to do that in torrc config file 2018-08-31 07:50:55 -06:00
John Newbery
c9c32e6b84 [wallet] Kill accounts
This commit does the following changes:

- [wallet] Remove 'account' argument from GetLegacyBalance()
  - GetLegacyBalance() is never called with an account argument.
    Remove the argument and helper functions.
- [wallet] Remove CWallet::ListAccountCreditDebit()
  - Function no longer used.
- [wallet] Remove AccountMove()
  - Function no longer used.
- [wallet] Remove AddAccountingEntry()
  - Function no longer used.
- [wallet] Remove GetAccountCreditDebit()
  - Function no longer used.
- [wallet] Don't rewrite accounting entries when reordering wallet transactions.
 - Accounting entries are deprecated. Don't rewrite them to the wallet
   database when re-ordering transactions.
- [wallet] Remove WriteAccountingEntry()
  - Function no longer used.
- [wallet] Don't read acentry key-values from wallet on load.
- [wallet] Remove ListAccountCreditDebit()
  - Function no longer used.
- [wallet] Remove CAccountingEntry class
  - No longer used
- [wallet] Remove GetLabelDestination
  - Function no longer used.
- [wallet] Delete unused account functions
  - ReadAccount
  - WriteAccount
  - EraseAccount
  - DeleteLabel
- [wallet] Remove fromAccount argument from CommitTransaction()
- [wallet] Remove strFromAccount.
  - No longer used.
- [wallet] Remove strSentAccount from GetAmounts().
  - No longer used.
- [wallet] Update zapwallettxes comment to remove accounts.
- [wallet] Remove CAccount
  - No longer used
- [docs] fix typo in release notes for PR 14023
2018-08-30 16:08:42 +02:00
John Newbery
bb08423d5c [doc] Add release notes for 'account' API removal 2018-08-27 10:45:03 -04:00
Wladimir J. van der Laan
2df11322fa
Merge #13941: Add PSBT documentation
19efc01aec Add PSBT documentation (Pieter Wuille)

Pull request description:

  This is just some initial text to get going; other contributions welcome.

  I'd like to include other workflows, such as hardware wallets and (manual) coinjoins. However, the former will in practice require PSBT interfaces for existing hardware devices, and the second can really use some extra RPCs first.

Tree-SHA512: 951e475e31bb2ea9ab5d84d139b8bc436153ad035185f00ad1d56afc0c6f7c4de8176a785a6d0c38bb3fd9cbf318e513e1a032e83e1da99ded5d43a36f9cbc60
2018-08-21 17:41:30 +02:00
Pieter Wuille
19efc01aec Add PSBT documentation 2018-08-14 12:13:42 -07:00
Wladimir J. van der Laan
58efc49b95
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
2018-08-13 15:38:28 +02:00
MarcoFalke
fad3898627
doc: move-only release notes of individual prs 2018-08-13 07:41:52 -04:00
Wladimir J. van der Laan
78dae8cacc
Merge #13780: 0.17: Pre-branch maintenance
3fc20632a3 qt: Set BLOCK_CHAIN_SIZE = 220 (DrahtBot)
2b6a2f4a28 Regenerate manpages (DrahtBot)
eb7daf4d60 Update copyright headers to 2018 (DrahtBot)

Pull request description:

  Some trivial maintenance to avoid having to do it again after the 0.17 branch off.

  (The scripts to do this are in `./contrib/`)

Tree-SHA512: 16b2af45e0351b1c691c5311d48025dc6828079e98c2aa2e600dc5910ee8aa01858ca6c356538150dc46fe14c8819ed8ec8e4ec9a0f682b9950dd41bc50518fa
2018-08-08 13:55:27 +02:00
Wladimir J. van der Laan
7c82e40e76
Merge #13857: docs: fix typo in translation_process.md
081f5b4e2b Docs: Improve "of" grammar (johnlow95)

Pull request description:

Tree-SHA512: 7227371372cd4cc0ec2dbbbf0947c63f63ba41f8c6f9f6909f1dd37a724bf09a60bc57037233cc282922bcbcf2aff3bfd35bef823bdf11ffe26ba990fa3f7e32
2018-08-07 16:22:05 +02:00
Wladimir J. van der Laan
8c3c402a5a
Merge #13717: docs: Link to python style guidelines from developer notes
a9e898a4ad docs: Link to python style guidelines from developer notes (Mason Simon)

Pull request description:

  Initially I moved the python style guidelines from the functional test README, but some of the python rules are test-specific, and most of the developer notes doc is C++ centric, so just dropping a link seemed better.

Tree-SHA512: 9d4d5cc45526319a118595d90fcfad2c9aced22007aa096d8af04ba1b963312822804f4c15b0b227d66af49565034437691b7760e7ff6d1e3f8b10b898906362
2018-08-07 13:56:31 +02:00
fanquake
322d34ef65
doc: correct versions in dependencies.md 2018-08-03 09:06:36 +08:00
johnlow95
081f5b4e2b
Docs: Improve "of" grammar 2018-08-03 02:49:48 +08:00
William Robinson
3be70ba400
trivial: Fixed typos and cleaned up language 2018-08-02 21:27:16 +08:00
MarcoFalke
77168f766f
Merge #13809: contrib: Remove debian and rpm subfolder
fa0e1e2f63 contrib: Remove debian and rpm subfolders (MarcoFalke)

Pull request description:

  The folders are now located here:

  * https://github.com/bitcoin-core/packaging/tree/master/debian
  * https://github.com/bitcoin-core/packaging/tree/master/rpm

  Note that I kept the copyright file, so that it can be updated for our purposes in the commit that adds new files.

Tree-SHA512: 4c919e8e04cdcc56f2c4c16e83c68d5ec74b7e4438ca54222a37f85cf604b77880393d1a0004f16f270ab04ee00b2060129c5c2e0b34815679940f1c3b5754f3
2018-07-31 11:56:09 -04:00
Pieter Wuille
1dbad82f61 Add BIP174 to list of implemented BIPs 2018-07-30 13:51:56 -07:00
MarcoFalke
fa0e1e2f63
contrib: Remove debian and rpm subfolders 2018-07-30 14:00:56 -04:00
Wladimir J. van der Laan
222e627322
doc: Add historical release notes for 0.16.2
Tree-SHA512: 39601090cbfbc51b00426696c118758953d3eb5e0323e9105a5aabb63ab22eb1b3edbabb541bb7a24869c53624dee3c220fd2c1f3fbe627f8d9d168a23064393
2018-07-29 19:02:26 +02:00
DrahtBot
2b6a2f4a28 Regenerate manpages 2018-07-27 07:15:29 -04:00
MarcoFalke
94dd89e6fa
Merge #13706: doc: Minor improvements to release-process.md
95464c7519 doc: Improve command to generate list of authors for release notes (Mitchell Cash)
1c22cc1af1 doc: Update broken links to now point to gitian-build.py (Mitchell Cash)

Pull request description:

  - Update broken links
  - Improve command to generate list of authors for a release

  ---

  I also note that it asks to ping **wumpus** on IRC, to assist in generating a list of merged pulls and sort them into categories based on labels. I tried to turn this into a simple one-liner as well (something like ``git log --merges --format="- \`%h\` %s (%an)" v0.16.0..v0.16.1``), but it didn't seem to capture everything I needed.

  Would it be worthwhile **wumpus** open-sourcing his code into `contrib/devtools` so there is no single point of failure (even if it can manually be worked around).

Tree-SHA512: 8e7f0880ff07ce8fe67b74de3f2c4b78dafe2c95eefb0617fa319ff196232967cb22ee75a183a39f93bfc6e0bf85547689160139312cee5956af2c069b8a3b6a
2018-07-25 07:13:22 -04:00
fanquake
6c6dbd8af5
doc: mention that macOS 10.10 is now required 2018-07-25 07:30:28 +08:00
Karl-Johan Alm
232f96f5c8
doc: Add release notes for -avoidpartialspends 2018-07-24 15:05:38 +09:00
Wladimir J. van der Laan
2dc5ab6378
Merge #13482: Remove boost::program_options dependency
f447a0a707 Remove program options from build system (Chun Kuan Lee)
11588c639e Replace boost program_options (Chun Kuan Lee)

Pull request description:

  Concept from #12744, but without parsing negated options.

Tree-SHA512: 7f418744bb8934e313d77a5f162633746ef5d043de802b9c9cd9f7c1842e7e566eb5f171cd9e2cc13317281b2449c6fbd553fa4f09b837e6af2f5d2b2aabdca2
2018-07-20 16:45:44 +02:00
Mason Simon
a9e898a4ad docs: Link to python style guidelines from developer notes 2018-07-19 12:17:00 -07:00
Mitchell Cash
95464c7519
doc: Improve command to generate list of authors for release notes
- Remove dependency on sed (sed was overkill when you can just add plain
  text to the git log --format command)
- Sort resulting list of authors alphabetically (case-insensitive)
- Provide an example of how to only generate authors between versions
2018-07-19 16:03:00 +10:00
Mitchell Cash
1c22cc1af1
doc: Update broken links to now point to gitian-build.py 2018-07-19 09:33:05 +10:00
Wladimir J. van der Laan
7146672687
Merge #13625: doc: Add release notes for -printtoconsole and -debuglogfile changes
801cb307b5 doc: Add release notes for -printtoconsole and -debuglogfile changes (Samuel B. Atwood)

Pull request description:

  This adds release notes relevant to the changes in #13004 and documented in command line help in #13614.

Tree-SHA512: ff320415afa9be1ace37ebf0a69ee5a7e6d4167465bc41111be062a556da9b8accfc39553fac610e68521c7ab2095126ace4f012a32f5e9f37cbec39cfa74b04
2018-07-18 16:29:51 +02:00
Chun Kuan Lee
f447a0a707 Remove program options from build system 2018-07-18 02:48:34 +00:00
MarcoFalke
fa7f8a7769
contrib: Clone core repo in gitian-build 2018-07-17 15:44:08 -04:00
Samuel B. Atwood
801cb307b5 doc: Add release notes for -printtoconsole and -debuglogfile changes
This adds release notes relevant to the changes in #13004 and documented in command line help in #13614
2018-07-11 14:39:19 -05:00
Wladimir J. van der Laan
a247594e75
Merge #13570: RPC: Add new "getzmqnotifications" method
161e8d40a4 RPC: Add new getzmqnotifications method. (Daniel Kraft)
caac39b0ac Make ZMQ notification interface instance global. (Daniel Kraft)

Pull request description:

  This adds a new RPC method `getzmqnotifications`, which returns information about all active ZMQ notification endpoints.  This is useful for software that layers on top of bitcoind, so it can verify that ZeroMQ is enabled and also figure out where it should listen.

  See #13526.

Tree-SHA512: edce722925741c84ddbf7b3a879fc9db1907e5269d0d97138fe724035d93ee541c2118c24fa92f4197403f380d0e25c2fda5ca6c62d526792ea749cf527a99a0
2018-07-09 17:21:03 +02:00
Daniel Kraft
161e8d40a4 RPC: Add new getzmqnotifications method.
This adds a new RPC method "getzmqnotifications", which returns
information about all active ZMQ notification endpoints.  This is useful
for software that layers on top of bitcoind, so it can verify that
ZeroMQ is enabled and also figure out where it should listen.

See https://github.com/bitcoin/bitcoin/issues/13526.
2018-07-05 08:02:22 +02:00
Chun Kuan Lee
747ee89b4c
Docs: Modify policy to not translate command-line help 2018-07-04 09:18:29 +08:00
Wladimir J. van der Laan
dc53f7f251
Merge #13458: gui: Drop qt4 support
af6ac3b677 doc: Remove mention of Qt4 from build docs (Wladimir J. van der Laan)
462c71f71b test: Update travis to not test Qt4 anymore (Wladimir J. van der Laan)
907f73bbc5 gui: Remove QT_VERSION fallbacks for Qt < 5 (Wladimir J. van der Laan)
bad068ad9f build: Build system changes to support only Qt5 (Wladimir J. van der Laan)

Pull request description:

  Implements #8263.

  Qt4.x has been EOL since 2015, and at least Gentoo has, or is going to drop support for it. I wouldn't be surprised if other Linux distributions follow.

  This removes Qt4 detection from the build system, as well as removes all Qt4 fallbacks from the code. Turns out there's more than I expected: this is going to make maintenance of the GUI code, as well as adding new features significantly easier.

  (I know there's still some references left to qt4 in RPM and Debian build script, but I don't have the knowledge how to fix them)

Tree-SHA512: d495924fd4dda6f6566ba44ee96be7cbe62e69ba1ca993b80a8449f78da852b7f1bd3e8200d57cfa1d72233c340eeff4596fb0032ecbddc715d99aea63817d3f
2018-06-24 16:02:37 +02:00
Jonas Schnelli
000abbb6b0
Merge #13111: Add unloadwallet RPC
fe65bdec2 bugfix: Delete walletView in WalletFrame::removeWallet (João Barbosa)
0b82bac76 bugfix: Remove dangling wallet env instance (João Barbosa)
0ee77b207 ui: Support wallets unloaded dynamically (João Barbosa)
9f9b50d5f doc: Add release notes for unloadwallet RPC (João Barbosa)
ccbf7ae74 test: Wallet methods are disabled when no wallet is loaded (João Barbosa)
4940a20a4 test: Add functional tests for unloadwallet RPC (João Barbosa)
6608c369b rpc: Add unloadwallet RPC (João Barbosa)
537efe19e rpc: Extract GetWalletNameFromJSONRPCRequest from GetWalletForJSONRPCRequest (João Barbosa)

Pull request description:

  This patch adds wallet unload feature via RPC. It also adds UI support for unloaded wallets.

Tree-SHA512: 7c7f9f32f7a2266d2df574aa6b95f993c3dc82736f93304562122beb8756fb28cd22d03866b48f493c747441f22d30e196b098dec435cc25e035633f090351ea
2018-06-21 16:24:31 +02:00
João Barbosa
9f9b50d5fe doc: Add release notes for unloadwallet RPC 2018-06-18 16:35:17 +01:00
Wladimir J. van der Laan
af6ac3b677 doc: Remove mention of Qt4 from build docs 2018-06-18 12:22:14 +02:00
Wladimir J. van der Laan
280924e672
doc: Add historical release notes for 0.16.1
Tree-SHA512: cca8188f954eeded58f705749b2ae51b08aadf4feddafaaafc57df2f84c10a3340a373c1602e9aa290c54b67cdcce53f61f4ca2db87bd98de5449afc53e25f86
2018-06-15 18:31:20 +02:00
MarcoFalke
9501938a44
Merge #13476: Fix incorrect shell quoting in FreeBSD build instructions.
c9924a2756 Fix incorrect shell quoting in FreeBSD build instructions. (murrayn)

Pull request description:

  The current instructions suggest:

      BDB_PREFIX='$PWD/db4'

  which results in BDB_PREFIX being set, literally, to '$PWD/db4'.

Tree-SHA512: 4a920d7a506ff94fb12793f0b8161fdfe0798382cfa88290a0eadd6926843b577328f7159a55039e2655def7ddf2e7a1eaa3dd30490292d4a920c98759becf56
2018-06-15 09:21:14 -04:00
murrayn
c9924a2756 Fix incorrect shell quoting in FreeBSD build instructions. 2018-06-15 01:34:40 -07:00
MarcoFalke
fa3d39ec53
doc: Remove note to install all boost dev packages 2018-06-13 15:11:31 -04:00
MarcoFalke
b22115d9a3
Merge #13312: docs: Add a note about the source code filename naming convention
e56771365b Do not use uppercase characters in source code filenames (practicalswift)
419a1983ca docs: Add a note about the source code filename naming convention (practicalswift)

Pull request description:

  Add a note about the source code filename naming convention.

Tree-SHA512: 8d329bd9e19bcd26e74b0862fb0bc2369b46095dbd3e69d34859908632763abd7c3d00ccc44ee059772ad4bae4460c2bcc1c0e22fd9d8876d57e5fcd346cea4b
2018-06-12 08:02:20 -04:00
Wladimir J. van der Laan
7c32b414b6
Merge #13230: Simplify include analysis by enforcing the developer guide's include syntax
16e3cd380a Clarify include recommendation (practicalswift)
6d10f43738 Enforce the use of bracket syntax includes ("#include <foo.h>") (practicalswift)
906bee8e5f Use bracket syntax includes ("#include <foo.h>") (practicalswift)

Pull request description:

  When analysing includes in the project it is often assumed that the preferred bracket include syntax (`#include <foo.h>`) mentioned in `developer-docs.md` is used consistently. @sipa:s excellent circular dependencies script [`circular-dependencies.py`](50c69b7801/contrib/devtools/circular-dependencies.py) (#13228) is an example of a script making this reasonable assumption.

  This PR enables automatic Travis checking of the include syntax making sure that the bracket syntax includes (`#include <foo.h>`) is used consistently.

Tree-SHA512: a414921aabe8e487ebed42f3f1cbd02fecd1add385065c1f2244cd602c31889e61fea5a801507ec501ef9bd309b05d3c999f915cec1c2b44f085bb0d2835c182
2018-06-11 20:24:58 +02:00
Wladimir J. van der Laan
3f0f39415b
Merge #13060: [wallet] [rpc] Remove getlabeladdress RPC
67e0e04140 [wallet] [docs] Update release notes for removing `getlabeladdress` (John Newbery)
81608178cf [wallet] [rpc] Remove getlabeladdress RPC (John Newbery)

Pull request description:

  labels are associated with addresses (rather than addresses being
  associated with labels, as was the case with accounts). The
  getlabeladdress does not make sense in this model, so remove it.

  getaccountaddress is still supported for one release as the accounts
  API is deprecated.

Tree-SHA512: 7f45d0456248ebcc4e54dd34e2578a09a8ea8e4fceda75238ccea9d731dc99a3f3c0519b18a9739de17d2e6e59c9c2259ba67c9ae2e3cb2a40ddb14b9193fe29
2018-06-11 15:21:24 +02:00
Wladimir J. van der Laan
6e249e4678
Merge #13043: [qt] OptionsDialog: add prune setting
cbede7dbfd [qt] OptionsDialog: add prune setting (Sjors Provoost)

Pull request description:

  The default suggested value is 2 GB. Minimum is 1 GB (550 MB rounded up).

  When the user toggles this setting, a strong warning appears that undoing requires re-downloading the chain:

  <img width="478" alt="schermafbeelding 2018-05-15 om 12 35 24" src="https://user-images.githubusercontent.com/10217/40051858-7939cc20-583c-11e8-9120-327a75376732.png">

  Tooltip points out that actual disk usage can be higher. It's a bit vague on the "advanced features", because I'm assuming anyone who needs to use `-rescan` and `-txindex` will read the documentation, and a more detailed text would needlessly confuse everyone else.

  <img width="450" alt="schermafbeelding 2018-05-15 om 12 33 51" src="https://user-images.githubusercontent.com/10217/40051791-49d6156a-583c-11e8-97b9-7de6dfd8c481.png">

  The UI uses gigabytes for readability and easy of use. There is also no manual pruning UI (`prune=1`). The user will have to use `bitcoin.conf` for those things.

  Fixes #6461. When combined with #13029 the user, after pruning their node, can safely reset settings and/or use bitcoind without having to edit `bitcoin.conf`. However I don't think that's an essential prerequisite.

Tree-SHA512: e17aff276d7235fbd40796adb6431d430620788a753ee13bc064abd35d2edc4280a3d3cddc18e42b4e00edff13ed18fd4f2a966c6f0b43b689afd13673e0c4bf
2018-06-11 14:21:24 +02:00
Wladimir J. van der Laan
f8bcef38fb
Merge #13369: [docs] update transifex doc link
2b30ccc30a [docs] update transifex doc link (Cristian Mircea Messel)

Pull request description:

  The old link is no longer working.

  #13364

Tree-SHA512: 5729b9eabbdf8e05cb60be1bedc7e21a2052bb2921dca8322d8348c3ea0f7ee33f2e2e32a19f21bbe2b93b48ed221cfcb020592d0e6b118b77ca34e14bb30b89
2018-06-07 11:38:32 +02:00
practicalswift
16e3cd380a Clarify include recommendation 2018-06-06 11:09:05 +02:00
practicalswift
698cfd0811 docs: Mention lint-locale-dependence.sh in developer-notes.md 2018-06-06 08:08:44 +02:00
Giulio Lombardo
989c8990bb Rename “OS X” to the newer “macOS” convention 2018-06-04 13:04:04 +02:00
Cristian Mircea Messel
2b30ccc30a [docs] update transifex doc link 2018-06-02 12:26:21 +03:00
steverusso
1e4eec47be doc: split FreeBSD build instructions out of build-unix.md
docs: Linked to the 'Building on FreeBSD' section of the Unix guide where it lists BSD specific guides.

Created a FreeBSD build guide (doc/build-freebsd.md).

Added in warning about the version of 'gdb' installed by default.

Removed the FreeBSD build instructions now that they have their own guide (doc/build-freebsd.md).

Updated the sentence to refer to the BSD guides in the 'doc' directory for more specific BSD build instructions.

Minor grammatical fix.
2018-06-02 01:42:50 -04:00
Jonas Schnelli
343d4e44ef
Merge #13058: [wallet] createwallet RPC - create new wallet at runtime
f7e153e95 [wallets] [docs] Add release notes for createwallet RPC. (John Newbery)
32167e830 [wallet] [tests] Add tests for `createwallet` RPC. (John Newbery)
942131774 [wallet] [rpc] Add `createwallet` RPC (John Newbery)

Pull request description:

  Adds a `createwallet` RPC to dynamically create a new wallet at runtime.

  Includes tests and release notes.

Tree-SHA512: e0d89e3ae498234e9db5b827c56804cbab64f18a1875e2b5e676172c110278ea1b9e93a8a61b8dd80e2f2a691490bf229e923e4ccb284a1d3e420b8317815866
2018-06-01 10:46:45 +02:00
John Newbery
f7e153e95f [wallets] [docs] Add release notes for createwallet RPC. 2018-05-31 17:10:20 -04:00
fanquake
83102388c0
doc: update bitcoin-dot-org links in release-process.md 2018-05-30 20:11:36 +08:00
Wladimir J. van der Laan
2ac6315f44
Merge #13281: test: Move linters to test/lint, add readme
fa3c910bfe test: Move linters to test/lint, add readme (MarcoFalke)

Pull request description:

  This moves the checks and linters from `devtools` to a subfolder in `test`. (Motivated by my opinion that the dev tools are mostly for generating code and updating the repo whereas the linters are read-only checks.)

  Also, adds a readme to clarify that checks and linters are only meant to prevent bugs and user facing issues, not merely stylistic preference or inconsistencies. (This is motivated by the diversity in developers and work flows as well as existing code styles. It would be too disruptive to change all existing code to a single style or too burdensome to force all developers to adhere to a single style. Also note that our style guide is changing, so locking in at the wrong style "too early" would only waste resources.)

Tree-SHA512: 9b10e89f2aeaf0c8a9ae248aa891d74e0abf0569f8e5dfd266446efa8bfaf19f0ea0980abf0b0b22f0d8416ee90d7435d21a9f9285b66df43f370b7979173406
2018-05-29 15:45:48 +02:00
Wladimir J. van der Laan
70d3541313
Merge #13134: net: Add option -enablebip61 to configure sending of BIP61 notifications
87fe292d89 doc: Mention disabling BIP61 in bips.md (Wladimir J. van der Laan)
fe16dd8226 net: Add option `-enablebip61` to configure sending of BIP61 notifications (Wladimir J. van der Laan)

Pull request description:

  This commit adds a boolean option `-peersendreject`, defaulting to `1`, that can be used to disable the sending of [BIP61](https://github.com/bitcoin/bips/blob/master/bip-0061.mediawiki) `reject` messages. This functionality has been requested for various reasons:

  - security (DoS): reject messages can reveal internal state that can be used to target certain resources such as the mempool more easily.

  - bandwidth: a typical node sends lots of reject messages; this counts against upstream bandwidth. Also the reject messages tend to be larger than the message that was rejected.

  On the other hand, reject messages can be useful while developing client software (I found them indispensable while creating bitcoin-submittx), as well as for our own test cases, so whatever the default becomes on the long run, IMO the functionality should be retained as option. But that's a discussion for later, for now it's simply a node operator decision.

  Also adds a RPC test that checks the functionality.

Tree-SHA512: 9488cc53e13cd8e5c6f8eb472a44309572673405c1d1438c3488f627fae622c95e2198bde5ed7d29e56b948e2918bf1920239e9f865889f4c37c097c37a4d7a9
2018-05-29 15:31:54 +02:00
Wladimir J. van der Laan
fb7731089e
Merge #13295: docs: Update OpenBSD build instructions for OpenBSD 6.3
1680b8bf03 docs: Update OpenBSD build instructions for OpenBSD 6.3 (practicalswift)

Pull request description:

  Update OpenBSD build instructions for OpenBSD 6.3.

Tree-SHA512: cafed10e053351bf2c7cf802e011acd557e9a55b55b961a192e5d69ee6681f12ddbd936ab4d18fc39baaa992a942f04b087a827d98a6b157e5481a1a29dacb62
2018-05-28 16:03:29 +02:00
MarcoFalke
fa3c910bfe
test: Move linters to test/lint, add readme 2018-05-24 12:02:15 -04:00
Wladimir J. van der Laan
5c41b60080
Merge #13246: doc: Bump to Ubuntu Bionic 18.04 in build-windows.md
9d4f9421a4 doc: Bump to Ubuntu Bionic 18.04 in build-windows.md (Chun Kuan Lee)

Pull request description:

  Windows starts to provide Ubuntu 18.04 WSL, it can be downloaded from Microsoft Store.

Tree-SHA512: a96ed03f36894ad867fd88631c1497eac7fc1cdaee8f59f36f34781df0b0f0b352a1bd8f09eba61002534fb7e0fe460006f223e37d61ad888197a36d17b43178
2018-05-24 10:44:57 +02:00
practicalswift
419a1983ca docs: Add a note about the source code filename naming convention 2018-05-23 15:52:55 +02:00
practicalswift
1680b8bf03 docs: Update OpenBSD build instructions for OpenBSD 6.3 2018-05-22 06:54:40 +02:00
John Newbery
6249021d15 [docs] Add release notes for HD master key -> HD seed rename 2018-05-19 11:21:20 -04:00
Chun Kuan Lee
9d4f9421a4 doc: Bump to Ubuntu Bionic 18.04 in build-windows.md
Windows starts to provide Ubuntu 18.04 WSL, it can be downloaded from Microsoft Store.
2018-05-17 11:12:18 +00:00
John Newbery
67e0e04140 [wallet] [docs] Update release notes for removing getlabeladdress 2018-05-16 17:45:19 -04:00
João Barbosa
0e674ba557 ui: Support wallets loaded dynamically 2018-05-16 20:48:48 +01:00
John Newbery
cd53981b3d [docs] Add release notes for loadwallet RPC. 2018-05-16 12:00:01 -04:00
Sjors Provoost
cbede7dbfd
[qt] OptionsDialog: add prune setting 2018-05-15 12:46:19 +02:00
Wladimir J. van der Laan
87fe292d89 doc: Mention disabling BIP61 in bips.md 2018-05-13 21:03:27 +02:00
Wladimir J. van der Laan
7b966d9e6e
Merge #10267: New -includeconf argument for including external configuration files
25b7ab9 doc: Add release notes for -includeconf (Karl-Johan Alm)
0f0badd test: Test includeconf parameter. (Karl-Johan Alm)
629ff8c -includeconf=<path> support in config handler, for including external configuration files (Karl-Johan Alm)

Pull request description:

  Fixes: #10071.

  Done:
  - adds `-includeconf=<path>`, where `<path>` is relative to `datadir` or to the path of the file being read, if in a file
  - protects against circular includes
  - updates help docs

  ~~~Thoughts:~~~
  - ~~~I am not sure how to test this in a neat manner. Feedback on this would be nice. Will dig/think though.~~~

Tree-SHA512: cb31f1b2f69fbc0890d264948eb2e501ac05cf12f5e06a5942f9c1539eb15ea8dc3cae817f4073aecb2fcc21d0386747f14f89d990772003a76e2a6d25642553
2018-05-09 06:36:54 +02:00
Wladimir J. van der Laan
979150bc23
Merge #12729: Get rid of ambiguous OutputType::NONE value
1e46d8a Get rid of ambiguous OutputType::NONE value (Russell Yanofsky)

Pull request description:

  Based on suggestion by @sipa https://github.com/bitcoin/bitcoin/pull/12119#issuecomment-357982763

  After #12119, the NONE output type was overloaded to refer to either an output type that couldn't be parsed, or to an automatic change output mode.  This change drops the NONE enum and uses a simple bool to indicate parse failure, and a new CHANGE_AUTO enum to refer the change output type.

  This change is almost a pure refactoring except it makes RPCs reject empty string ("") address types instead of treating them like they were unset. This simplifies the parsing code a little bit and could prevent RPC usage mistakes. It's noted in the release notes.

  Follows up #12408 by @MarcoFalke

  Followups for future PRs:

  - [ ] Add explicit support for specifying "auto" in `ParseOutputType` as suggested by promag and sipa: https://github.com/bitcoin/bitcoin/pull/12729#issuecomment-374799567 and https://github.com/bitcoin/bitcoin/pull/12729#discussion_r175969481
  - [ ] Add wallet `AddressChangeType` method to complement `TransactionChangeType`:  https://github.com/bitcoin/bitcoin/pull/12729#discussion_r175969618.

Tree-SHA512: 8b08b272bcb177a0a9e556dcd965840a7fe601ef83ca97938b879c9b1a33b5b3f96939e1bceef11ba7c644ac21bfd6c1dbc6ca715cd1da4ace50475240e4ee48
2018-05-03 11:53:30 +02:00
Karl-Johan Alm
25b7ab9c02
doc: Add release notes for -includeconf 2018-05-02 14:26:46 +09:00
Wladimir J. van der Laan
c5f7efe331
Merge #12384: [Docs] Add version footnote to tor.md
39d2911 [Docs] Add version footnote to tor.md (Damian Williamson)

Pull request description:

  [Docs] Add version footnote to tor.md

  Added note to section 2, part -edits to `/etc/tor/torrc`- indicating this is only required for Tor version 0.2.7.0 and older, since section 3 states it is valid for Tor version 0.2.7.1 and newer. Added ref link from section 2 version footnote to section 3. Re-styled headings to work on GitHub -alternate heading style markup creation issue with numbered headings and thus headings and automatic heading links are broken-

  Ref: [Issue# 12376](https://github.com/bitcoin/bitcoin/issues/12376)

  Signed-off-by: Damian Williamson \<willtech@live.com.au\>

Tree-SHA512: 439f4ccc3e196011af448b220adf26b0e653ac589bf4cfbbc276c1500c9d08f209c9d6101e4d232857779d9f25164cfb222ed30e3d63de116f9121e6ebde31c3
2018-05-01 16:43:06 +02:00
Damian Williamson
39d2911918 [Docs] Add version footnote to tor.md
Added note to section 2, part -edits to `/etc/tor/torrc`- indicating this is only required for Tor version 0.2.7.0 and older, since section 3 states it is valid for Tor version 0.2.7.1 and newer. Added ref link from section 2 version footnote to section 3. Re-styled headings to work on GitHub -alternate heading style markup creation issue with numbered headings and thus headings and automatic heading links are broken- Ref: [Issue# 12376](https://github.com/bitcoin/bitcoin/issues/12376)

Signed-off-by: Damian Williamson <willtech@live.com.au>
2018-05-01 20:39:49 +10:00
mryandao
9b78ef3edc nit: descendent should be spelled descendant even in the release-notes 2018-04-30 19:21:18 +10:00
Wladimir J. van der Laan
487dcbe80c
Merge #13002: Do not treat bare multisig outputs as IsMine unless watched
7d0f80b Use anonymous namespace instead of static functions (Pieter Wuille)
b61fb71 Mention removal of bare multisig IsMine in release notes (Pieter Wuille)
9c2a8b8 Do not treat bare multisig as IsMine (Pieter Wuille)
08f3228 Optimization: only test for witness scripts at top level (Pieter Wuille)
3619735 Track difference between scriptPubKey and P2SH execution in IsMine (Pieter Wuille)
ac6ec62 Switch to a private version of SigVersion inside IsMine (Pieter Wuille)
19fc973 Do not expose SigVersion argument to IsMine (Pieter Wuille)
fb1dfbb Remove unused IsMine overload (Pieter Wuille)
952d821 Make CScript -> CScriptID conversion explicit (Pieter Wuille)

Pull request description:

  Currently our wallet code will treat bare multisig outputs (meaning scriptPubKeys with multiple public keys + `OP_CHECKMULTISIG` operator in it) as ours without the user asking for it, as long as all private keys in it are in our wallet.

  This is a pointless feature. As it only works when all private keys are in one place, it's useless compared to single key outputs (P2PK, P2PKH, P2WPKH, P2SH-P2WPKH), and worse in terms of space, cost, UTXO size, and ability to test (due to lack of address format for them).

  Furthermore, they are problematic in that producing a list of all `scriptPubKeys` we accept is not tractable (it involves all combinations of all public keys that are ours). In further wallet changes I'd like to move to a model where all scriptPubKeys that are treated as ours are explicit, rather than defined by whatever keys we have. The current behavior of the wallet is very hard to model in such a design, so I'd like to get rid of it.

  I think there are two options:
  * Remove it entirely (do not ever accept bare multisig outputs as ours, unless watched)
  * Only accept bare multisig outputs in situations where the P2SH version of that output would also be acceptable

  This PR implements the first option. The second option was explored in #12874.

Tree-SHA512: 917ed45b3cac864cee53e27f9a3e900390c576277fbd6751b1250becea04d692b3b426fa09065a3399931013bd579c4f3dbeeb29d51d19ed0c64da75d430ad9a
2018-04-26 20:10:12 +02:00
Wladimir J. van der Laan
6f8b3453f8
Merge #12240: [rpc] Introduced a new fees structure that aggregates all sub-field fee types denominated in BTC
7de1de7 Add new fee structure with all sub-fields denominated in BTC (mryandao)

Pull request description:

  the denomination for `fee` is current in btc while the other such as `decendentFee` and `ancestorFee` are in satoshis.

Tree-SHA512: e428f6dca1d339f89ab73e38ce5903f5465c46b159069d9bcc3f8b1140fe6657fa49a11abe0088e9f7ba9999f64af72a349a4735bf5eaa61b8e4a185b23543f3
2018-04-26 12:35:36 +02:00
Wladimir J. van der Laan
646b7f6abe
Merge #12997: [doc] build-windows: Switch to Artful, since Zesty is EOL
fad2958 [doc] build-windows: Switch to Artful, since Zesty is EOL (MarcoFalke)

Pull request description:

  According to https://wiki.ubuntu.com/Releases#End_of_Life, Zesty is EOL, so bump to Artful for now.

  Note that Artful is going to be EOL soon as well, so I am not sure how to proceed after that.

Tree-SHA512: 8efc1ade429cf053f4c69e764175aad8790ded71f04bb9963202be171f1cfa1a3de55a207c0b19271d2f536feafa754ed71a6fafc597e3023bdf0e02fa5cd5e5
2018-04-26 10:01:08 +02:00
Jim Posen
9b2704777c [doc] Include txindex changes in the release notes. 2018-04-25 11:25:19 -07:00
Wladimir J. van der Laan
d1d54ae6a3
Merge #12953: Deprecate accounts
cead28b [docs] Add release notes for deprecated 'account' API (John Newbery)
72c9575 [wallet] [tests] Add tests for accounts/labels APIs (John Newbery)
109e05d [wallet] [rpc] Deprecate wallet 'account' API (John Newbery)
3576ab1 [wallet] [rpc] Deprecate account RPC methods (John Newbery)
3db1ba0 [tests] Set -deprecatedrpc=accounts in tests (John Newbery)
4e671f0 [tests] Rename rpc_listtransactions.py to wallet_listtransactions.py (John Newbery)
a28b907 [wallet] [rpc] Remove duplicate entries in rpcwallet.cpp's CRPCCommand table (John Newbery)

Pull request description:

  Deprecate all accounts functionality and make it only accessible by using `-deprecatedrpc=accounts`.

  Accounts specific RPCs, account arguments, and account related results all require the `-deprecatedrpc=accunts` startup option now in order to see account things.

  Several wallet functional tests use the accounts system. Those tests are unchanged, except to start the nodes with `-deprecatedrpc=accounts`. We can slowly migrate those tests to use the 'label' API instead of the 'account' API before accounts are fully removed.

Tree-SHA512: 89f4ae2fe6de4a1422f1817b0997ae22d63ab5a1a558362ce923a3871f3e42963405d6573c69c27f1764679cdee5b51bf52202cc407f1361bfd8066d652f3f37
2018-04-24 15:21:27 +02:00
Pieter Wuille
4d330399e2 List support for BIP173 in bips.md 2018-04-23 16:31:05 -07:00
Pieter Wuille
b61fb71136 Mention removal of bare multisig IsMine in release notes 2018-04-19 21:05:14 -07:00