Commit Graph

1459 Commits

Author SHA1 Message Date
fanquake
c52cea9486 Merge #16430: doc: Update bips 35, 37 and 111 status
fa56b21c744577eb5d2085fd6104cbc3dc62d677 doc: Update bips 35, 37 and 111 status (MarcoFalke)

Pull request description:

  Follow-up to

  * #16152: Disable bloom filtering by default

ACKs for top commit:
  laanwj:
    ACK fa56b21c744577eb5d2085fd6104cbc3dc62d677, thanks for keeping this file up to date
  fanquake:
    ACK fa56b21c744577eb5d2085fd6104cbc3dc62d677

Tree-SHA512: 50c17067abbba096e8604b8abccbd0474ecc2dca973935751720c79a023a2d517bb025bb6c36d4fb0d29b7338322af7ae1c0d5a9aaf2712000d9d336c898c204
2022-01-24 11:09:09 -05:00
Wladimir J. van der Laan
07ce010869 Merge #16512: rpc: Shuffle inputs and outputs after joining psbts
c0b5d9710322a614a50ab5da081558cf6a38ad2a Test that joinpsbts randomly shuffles the inputs (Andrew Chow)
6f405a1d3b38395e35571b68aae55cae50e0762a Shuffle inputs and outputs after joining psbts (Andrew Chow)

Pull request description:

  `joinpsbts` currently just adds the inputs and outputs in the order of that the PSBTs were provided. This makes it extremely easy to identify which outputs belong to which inputs. This PR changes that so that all of the inputs and outputs are shuffled in the joined transaction.

ACKs for top commit:
  instagibbs:
    utACK c0b5d97103
  jonatack:
    ACK c0b5d9710322a614a50ab5da081558cf6a38ad2a modulo suggestions for later.

Tree-SHA512: 14a0b7aae07d92e6d2c76a3a3b228b481e1964cb7d34f97515bdda18e2ea05a9f97c5a22affc143b86ae8b95c3cb239849fb54219d65512bc2112264dca915c8
2022-01-20 13:09:17 -05:00
fanquake
9509768939 Merge #16812: doc: Fix whitespace errs in .md files, bitcoin.conf, and Info.plist.in
6aab7649d30b19d136a27f1287fd2c8b00fb460c doc: Fix whitespace errs in .md files, bitcoin.conf, Info.plist.in, and find_bdb48.m4 (Jon Layton)

Pull request description:

  Although there is an existing `test/lint/lint-whitespace.sh` linter, it only prevents new errors from being introduced. This commit removes all existing whitespace errors from Core markdown files (skips `src/crypto/ctaes/`, `leveldb/`, and `doc/release-notes/`), `bitcoin.conf`, and `Info.plist.in`.

  Further formatting could be done on the markdown documents, but seeing as there several coexisting styles that break a few `markdownlint` rules, a first step would be to define and add a linter to Travis. For now, the small fix is made.

ACKs for top commit:
  fanquake:
    ACK 6aab7649d30b19d136a27f1287fd2c8b00fb460c - Thanks for following up. Hopefully we now never have to deal with whitespace again.

Tree-SHA512: 810cc31ae4364b2dedf85783e67315d7b4e11589e4b32c599606e1b1ba8de0663bcae9ddb1bd8c9762a3636a2d65bdcd64ec22d2e90943f374a0c9574b77ca23
2022-01-20 13:09:17 -05:00
Wladimir J. van der Laan
e6a2d2b071
Merge #15757: List new RPCs in psbt.md and descriptors.md
9b085f4863eaefde4bec0638f1cbc8509d6ee59a Mention new descriptor RPCs in descriptors.md (Pieter Wuille)
28d78de00bf49c6efc19f0edeef2a03d039752a1 Mention new PSBT RPCs in psbt.md (Pieter Wuille)

Pull request description:

  The documentation in `psbt.md` and `descriptors.md` does not list new and updated RPCs (`analyzepsbt`, `utxoupdatepsbt`, `joinpsbts`, `deriveaddresses`, `getdescriptorinfo`, `listunspent`). Fix this.

  It'd be good to have this in 0.18 (only documentation).

ACKs for commit 9b085f:
  fanquake:
    utACK 9b085f4

Tree-SHA512: ee16907e8c15351a530f11fc0a585c50835a7bf5aec997ac0e897949d9b9e41a28ddebbeaba69753fee7d2de75e518091518185085fcd1f6ada94b7231097b2e
2022-01-03 18:55:35 +05:30
UdjinM6
db312c361e
Revert "Merge #16404: qa: Test ZMQ notification after chain reorg" (#4646)
This reverts commit cf43f40fb4.
2022-01-03 15:30:11 +03:00
PastaPastaPasta
19149f50f4
Merge pull request #4632 from Munkybooty/backports-0.19-pr11
Backports 0.19 pr11
2021-12-29 14:32:26 -05:00
PastaPastaPasta
03abbd3b0d
Merge pull request #4615 from Munkybooty/backports-0.19-pr10
Backports 0.19 pr10
2021-12-29 14:23:23 -05:00
Munkybooty
926d4a774f
lint: Fix typos flagged by codespell (#4639) 2021-12-29 00:45:54 +03:00
UdjinM6
61036f4fdb
Merge pull request #4636 from PastaPastaPasta/develop-trivial-2021-12-21
backport trivial 2021 12 21
2021-12-29 00:44:05 +03:00
PastaPastaPasta
79f7f3e08e
Merge pull request #4336 from kittywhiskers/docker
build: support containerized development via Docker; revert dash#4621
2021-12-28 13:08:12 -05:00
fanquake
27dfe903e4
Merge bitcoin/bitcoin#18568: doc: Clarify developer notes about constant naming
05f9770c1fa64bd9730cd6e18ec333e0801c00d6 doc: Clarify developer notes about constant naming (Russell Yanofsky)

Pull request description:

  I'm pretty sure developer notes were intended to say constants should be upper case and variables should be lower case, but right now they are ambiguous about whether to write:

  ```c++
  extern const int SYMBOL;
  ```

  or:

  ```c++
  extern const int g_symbol;
  ```

  First convention above is better than the second convention because it tells you without having to look anything up that the value of `SYMBOL` won't change at runtime. Also I haven't seen other c++ projects using the second convention.

ACKs for top commit:
  MarcoFalke:
    cr ACK 05f9770c1fa64bd9730cd6e18ec333e0801c00d6
  practicalswift:
    ACK 05f9770c1fa64bd9730cd6e18ec333e0801c00d6
  jarolrod:
    ACK 05f9770c1fa64bd9730cd6e18ec333e0801c00d6 🥃

Tree-SHA512: 766d0e25d9db818d45df4ad6386987014f2053584cbced4b755ceef8bda6b7e2cfeb34eb8516423bd03b140faaf577614d5e3be2799f7eed0eb439187ab85323
2021-12-28 00:27:11 -05:00
fanquake
d202707939
Merge #17539: doc: Update and improve Developer Notes
794fe91395c79f46a6d920bc08de5a0551b359a3 doc: Update and improve Developer Notes (Hennadii Stepanov)

Pull request description:

  This PR:
  - removes outdated things, e.g., global pointer `pwalletMain` etc
  - adds "Sanitizers" to the TOC
  - makes filenames, `peer.dat` and `debug.log`, monospaced
  - specifies that _compile-time_ constant names are all uppercase
  - rewords using `explicit` with constructors

ACKs for top commit:
  jamesob:
    lazy ACK 794fe91395
  practicalswift:
    ACK 794fe91395c79f46a6d920bc08de5a0551b359a3 -- nice improvements!

Tree-SHA512: 2c5f035b1627f5fac8dc2453199d9e46bd101f86771de567cd95698de3c61cc459444ec1a68710e1d280195e1e40b42d9f40906297d12f12bf37749eca58297d
2021-12-28 00:27:08 -05:00
Wladimir J. van der Laan
e54d4af104 Merge #14982: rpc: Add getrpcinfo command
a0ac15459a0df598e1ee1fd36a3899a129cecaeb doc: Add getrpcinfo release notes (João Barbosa)
251a91c1bf245b3674c2612149382a0f1e18dc98 qa: Add tests for getrpcinfo (João Barbosa)
d0730f5ce475e5a84da7c61fe79bcd6ed24d693e rpc: Add getrpcinfo command (João Barbosa)
068a8fc05f8dbec198bdc3fe46f955d8a5255303 rpc: Track active commands (João Barbosa)
bf4383277d6761cc5b7a91975752c08df829af72 rpc: Remove unused PreCommand signal (João Barbosa)

Pull request description:

  The new `getrpcinfo` command exposes details of the RPC interface. The details can be configuration properties or runtime values/stats.

  This can be particular useful to coordinate concurrent functional tests (see #14958 from where this was extracted).

Tree-SHA512: 7292cb6087f4c429973d991aa2b53ffa1327d5a213df7d6ba5fc69b01b2e1a411f6d1609fed9234896293317dab05f65064da48b8f2b4a998eba532591d31882
2021-12-26 22:25:14 -05:00
MarcoFalke
71e38b9ebc
Merge #15323: rpc: Expose g_is_mempool_loaded via getmempoolinfo
effe81f750 Move g_is_mempool_loaded into CTxMemPool::m_is_loaded (Ben Woosley)
bb8ae2c419 rpc: Expose g_is_mempool_loaded via getmempoolinfo and /rest/mempool/info.json (Ben Woosley)

Pull request description:

  And use it to fix a race condition in mempool_persist.py:
  https://travis-ci.org/Empact/bitcoin/jobs/487577243

  Since e.g. getrawmempool returns errors based on this status, this
  enables users to test it for readiness.

  Fixes #12863

ACKs for commit effe81:
  MarcoFalke:
    utACK effe81f750
  jnewbery:
    utACK effe81f7503d2ca3c88cfdea687f9f997f353e0d

Tree-SHA512: 74328b0c17a97efb8a000d4ee49b9a673c2b6dde7ea30c43a6a2eff961a233351c9471f9a42344412135786c02bdf2ee1b2526651bb8fed68bd94d2120c4ef86
2021-12-25 18:32:19 +05:30
MarcoFalke
89c945eea1
Merge #15637: rpc: Rename size to vsize in mempool related calls
e16b6a7188 rpc: Rename size to vsize in mempool related calls (Miguel Herranz)

Pull request description:

  #13008 rebased on `master`, with release notes split out.

  > In getmempoolancestors, getmempooldescendants, getmempoolentry and getrawmempool RPCs size returns the virtual transaction size as defined in BIP 141. Renaming it to vsize makes it consistent with returned value and other calls such as getrawtransaction.
  >
  > Related to #11218.

ACKs for commit e16b6a:
  MarcoFalke:
    re-utACK e16b6a71880052a6f7a368d8357901b0460abaef
  jnewbery:
    utACK e16b6a71880052a6f7a368d8357901b0460abaef

Tree-SHA512: ce95260fe7f280eacf4ff70bfffe02315c3a521b3b462a34e72a05b90733f40cc473319ac2df05d3e3c12cb7b1fbf2a1bbea632a8f979fff94207854cdbd494d
2021-12-25 18:32:18 +05:30
Wladimir J. van der Laan
783f502c86 Merge #16982: build: Factor out qt translations from build system
4320bfc0c0d88633c84146f8d640f5b6e4596244 build: Factor out qt translations from build system (Wladimir J. van der Laan)

Pull request description:

  Move qt translations to a separate make include file. This makes it easier to auto-generate this list from tooling (see bitcoin-core/bitcoin-maintainer-tools#36).

ACKs for top commit:
  promag:
    ACK 4320bfc0c0d88633c84146f8d640f5b6e4596244.

Tree-SHA512: 7133d0103bcf97672ae5aa40ba35d4b81331a8c179190031bbc887da6a5ccc929428e522938db43d87dbcbf9ad3b121dac1e6faf1daa5ae81d0b5fed7f053b5f
2021-12-22 20:13:18 -05:00
PastaPastaPasta
5bc79fefc9
Remove KeePass integration (#4628)
* Remove KeePass integration

This integration is not actively supported. It has zero tests, little documentation, and has not really been actively maintained. As far as I can tell, noone uses this integration, and even if they do, they will simply have to copy/paste password from keepass instead of using this integration.

* continued
2021-12-22 12:53:11 +03:00
Kittywhiskers Van Gogh
c2f62ae24b revert dash#4621: remove all the unneeded and unused (probably broken) travis stuff 2021-12-19 14:03:39 +05:30
Wladimir J. van der Laan
d25c0f21b7
Merge #15006: Add option to create an encrypted wallet
662d1171d9e29964b039ba4c5bc8a2304426c003 Add option to create an encrypted wallet (Andrew Chow)

Pull request description:

  This PR adds a new `passphrase` argument to `createwallet` which will create a wallet that is encrypted with that passphrase.

  This is built on #15226 because it needs to first create an empty wallet, then encrypt the empty wallet and generate new keys that have only been stored in an encrypted state.

ACKs for commit 662d11:
  laanwj:
    utACK 662d1171d9e29964b039ba4c5bc8a2304426c003
  jnewbery:
    Looks great. utACK 662d1171d9e29964b039ba4c5bc8a2304426c003

Tree-SHA512: a53fc9a0f341eaec1614eb69abcf2d48eb4394bc89041ab69bfc05a63436ed37c65ad586c07fd37dc258ac7c7d5e4f7f93b4191407f5824bbf063b4c50894c4a
2021-12-17 21:11:25 +03:00
MeshCollider
254e122217
Merge #15226: Allow creating blank (empty) wallets (alternative)
7687f7873 [wallet] Support creating a blank wallet (Andrew Chow)

Pull request description:

  Alternative (kind of) to #14938

  This PR adds a `blank` parameter to the `createwallet` RPC to create a wallet that has no private keys initially. `sethdseed` can then be used to make a clean wallet with a custom seed. `encryptwallet` can also be used to make a wallet that is born encrypted.

  Instead of changing the version number as done in #14938, a wallet flag is used to indicate that the wallet should be blank. This flag is set at creation, and then unset when the wallet is no longer blank. A wallet becomes non-blank when a HD seed is set or anything is imported. The main change to create a blank wallet is primarily taken from #14938.

  Also with this, the term "blank wallet" is used instead of "empty wallet" to avoid confusion with wallets that have balance which would also be referred to as "empty".

  This is built on top of #15225 in order to fix GUI issues.

Tree-SHA512: 824d685e11ac2259a26b5ece99c67a7bda94a570cd921472c464243ee356b7734595ad35cc439b34357135df041ed9cba951e6edac194935c3a55a1dc4fcbdea
2021-12-17 21:11:10 +03:00
PastaPastaPasta
a472a85ab6
refactor: remove all the unneeded and unused (probably broken) travis stuff (#4621) 2021-12-17 20:24:00 +03:00
PastaPastaPasta
d9c994a100
Merge pull request #4607 from humbleDasher/dec042021
Backport 17015, 16397, 15459
2021-12-17 11:04:02 -06:00
Wladimir J. van der Laan
91310cf78a Merge #15459: doc: add how to calculate blockchain and chainstate size variables to release process
eb4c43e49f625895670866b89bb56ca641c4eeb7 doc: documents how to calculate m_assumed_blockchain_size and m_assumed_chain_state_size on the release process. (marcoagner)

Pull request description:

  Regarding [this](https://github.com/bitcoin/bitcoin/pull/15183#issuecomment-463133734) on https://github.com/bitcoin/bitcoin/pull/15183.
  Added an "Additional information" section for this which seems reasonable to me but may not be the best place for this. Also, let me know if anything else should be documented here (like more details).

ACKs for top commit:
  laanwj:
    ACK eb4c43e49f625895670866b89bb56ca641c4eeb7

Tree-SHA512: 7e6fc46740daa01dd9be5a8da7846e7a9f7fa866bf31fdc2cb252f90c698cfd6ef954f9588f7abcebda2355ec2b2a380635e14a164e53e77d38abefa3e2cc698
2021-12-15 13:06:44 -05:00
MarcoFalke
cf43f40fb4
Merge #16404: qa: Test ZMQ notification after chain reorg
abdfc5e89b687f73de4ab97e924c29cc27e71c15 qa: Test ZMQ notification after chain reorg (João Barbosa)
aa2622a726bc0f02152d79c888a332694678a989 qa: Refactor ZMQ test (João Barbosa)
6bc1ff915dd495f05985d3402a34dbfc3b6a08b4 doc: Add note regarding ZMQ block notification (João Barbosa)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: b93237adc8c84b3aa72ccc28097090eabcb006cf408083218bebf6fec703bd0de2ded80b6879e77096872e14ba9402a6d3f923b146a54d4c4e41dcb862c3e765
2021-12-15 20:09:56 +05:30
UdjinM6
af68eeca22
Drop arm-linux-gnueabihf from releases 2021-12-04 00:51:20 +03:00
fanquake
b5f5bf7330
partial merge #18104: build: Skip i686 build by default in guix and gitian
fae9084ac5b10f94bdee54853d307838c4254e9c build: Skip i686 build by default in guix and gitian (MarcoFalke)
fa55a2554c2661b8f2a759044d5ac85c9979d9ca depends: Remove reference to win32 (MarcoFalke)

Pull request description:

  Closes #17504

  Now that we no longer provide downloads for i686 on our website (https://bitcoincore.org/en/download/), there is no need to build them by default.

  i686 can still be built in depends (tested by ci/travis) and in guix/gitian by setting the appropriate `HOSTS`.

ACKs for top commit:
  practicalswift:
    ACK fae9084ac5b10f94bdee54853d307838c4254e9c -- patch looks correct
  dongcarl:
    ACK fae9084ac5b10f94bdee54853d307838c4254e9c patch looks correct
  laanwj:
    Code review ACK fae9084ac5b10f94bdee54853d307838c4254e9c
  hebasto:
    ACK fae9084ac5b10f94bdee54853d307838c4254e9c, I have reviewed the code and it looks OK, I agree it can be merged.

Tree-SHA512: b000c19a2cd2a596a52028fa298c4022c24cfdfc1bdb3795a90916d0a00a32e4dd22278db93790b6a11724e08ea8451f4f05c77bc40d1664518e11a8c82d6e29
2021-12-03 18:13:00 +03:00
UdjinM6
9718bb394b
build/ci: Fix --enable-glibc-back-compat and its usage (#4592)
* build: Fix `--enable-glibc-back-compat`

Compiling on Ubuntu 20.04 results in binaries that can't be run on older systems we still support (e.g. Ubuntu 16.04) and `contrib/devtools/symbol-check.py` complains about it.

Available versions for `log` for example:
$ objdump -T /lib/x86_64-linux-gnu/libm.so.6 | egrep -w 'log'
00000000000431b0 g    DF .text	0000000000000039  GLIBC_2.29  log
0000000000012360 g    DF .text	0000000000000066 (GLIBC_2.2.5) log

(i.e. the default one is 2.29)

This commit fixes the issue by picking the version we support instead of the default one.

Before:
$ objdump -T dashd | egrep -w 'log'
0000000000000000      DF *UND*	0000000000000000  GLIBC_2.29  log

After:
$ objdump -T dashd | egrep -w 'log'
0000000000000000      DF *UND*	0000000000000000  GLIBC_2.2.5 log

* ci: Add `make check-symbols` to the `build` step

* ci: Do not specify `--enable-glibc-back-compat` for non-release builds

* ci: Set correct LDFLAGS for the release build

* doc: Update docs to mention the need for `LDFLAGS=-static-libstdc++` when compiling for same host but different distro

* ci: Add `--with-sanitizers=undefined` back to `linux64` build
2021-11-30 14:13:18 +03:00
UdjinM6
d6b9958310
Merge pull request #4586 from Munkybooty/backports-0.19-pr8
Backports 0.19 pr8
2021-11-30 14:12:24 +03:00
PastaPastaPasta
d99ea37684
Merge pull request #4555 from vijaydasmp/bp_19_4
Merge 15919, 15897, 15763, 16912, 17001, 16656, 16804
2021-11-30 00:58:00 -05:00
fanquake
a4e2c74b50 Merge #16530: doc: Fix grammar and punctuation in developer notes
b2ea20d3302275a62bbdfdb96169c6788fe7b9c1 doc: Fix grammar and punctuation in developer notes (Kristian Kramer)

Pull request description:

  This pull request is regarding minor grammar and punctuation errors in the developer notes. There were no modifications to the existing code, only alterations to fix the grammar and punctuation in the text to make the developer notes more understandable and easier to read.

ACKs for top commit:
  fanquake:
    ACK b2ea20d3302275a62bbdfdb96169c6788fe7b9c1

Tree-SHA512: eef990b7e7645b44a1ab0b057f4df35894c307fd23cc861a10d3cc80e7fe7fe8f5b94467f8224cc8a7aaa226f82be3a1f0460a45f3e25e5dab1e1d333c9edbc0
2021-11-30 00:01:38 -05:00
MarcoFalke
ef78dbce53 Merge #16536: doc: Update and extend benchmarking.md
05fdb97df46d0a0675b93e9791bd5d498e5e5117 [doc] Update and extend benchmarking.md (Antoine Riard)

Pull request description:

  Trying to make benchmarking docs a bit more friendly.

  If you have any more ideas, specially on the Notes section, which component need more benchmarks.

  (oh isn't a write-up somewhere to generate flame graphs for core ?)

ACKs for top commit:
  jonatack:
    ACK 05fdb97df46d0a0675b93e9791bd5d498e5e5117
  fanquake:
    ACK 05fdb97df46d0a0675b93e9791bd5d498e5e5117 - with the single nit.

Tree-SHA512: 1d31438065cab12b43b0227c1c774b412ac3d9d46d4cbe69cfe753424a81e51839777e815c70880da8ae6c8fb95221dc7559334eeb550221e8a76fb20a370f75
2021-11-30 00:01:38 -05:00
Wladimir J. van der Laan
d96680acd2 Merge #16338: test: Disable other targets when enable-fuzz is set
84edfc72e5eba3dde824ebd0626e97929a0b1bca Update doc and CI config (qmma)
48bcb2ac249e0e666ce638bb29124558b3283c16 Disable other targets when enable-fuzz is set (qmma)

Pull request description:

  This is to fix https://github.com/bitcoin/bitcoin/issues/16094

  When the `enable-fuzz` flag is set, disable all other binary targets.

ACKs for top commit:
  MarcoFalke:
    ACK 84edfc72e5eba3dde824ebd0626e97929a0b1bca (only checked that travis compiled this)

Tree-SHA512: f4ac80526388a67709986b22de88b00bf93ab44ae31a20bd4d8923a4982ab97e015a9f13010081d6ecf6c23ae8afeac7ca9d849d198ce6ebe239aa3127151efc
2021-11-29 23:10:31 -05:00
MarcoFalke
610f1e41d8
Merge #16912: doc: Remove Doxygen intro from src/bitcoind.cpp
dbdc758c27cfdda9d255742b6c6ff4d1b7be82df doc: Improve doxygen readme navigation section (Jon Layton)
c15ac2c0aa45c59aee6d36c2d6d5210290dc601c doc: Move doxygen intro to file for USE_MDFILE_AS_MANPAGE (Jon Layton)

Pull request description:

  With `USE_MDFILE_AS_MAINPAGE`, this moves the introductory Doxygen comment to its own file. This makes `bitcoind.cpp` cleaner.

  It also removes the `\mainpage` header text, which was smaller than the section titles, and improves the Navigation section.

ACKs for top commit:
  promag:
    ACK dbdc758c27cfdda9d255742b6c6ff4d1b7be82df.

Tree-SHA512: 9352baad655877437913b74dc8888a71d1cccf55a837657ee2630fde3f427d0f0339155b7ab3d9e63a9edb9d53512d747eafcb11987a7c26c47a6df2eca93351
2021-11-25 06:38:14 +05:30
MarcoFalke
267482876a
Merge #15763: Update bips.md for 0.18.0
65d2f5d2de Update bips.md for 0.18.0 (Pieter Wuille)

Pull request description:

  Update `doc/bips.md` for changes in 0.17 and 0.18 (BIP 61 deprecated, BIP 70 support optional, BIP 159 connection logic).

ACKs for commit 65d2f5:
  MarcoFalke:
    ACK 65d2f5d2de37fd64c9cf8d526bab0072774b7b1d
  fanquake:
    utACK 65d2f5d
  promag:
    ACK 65d2f5d, referenced pulls match.

Tree-SHA512: a261aae196c90d4fab7925e53e61cdd02e39050cb09eb5a89002f2d8304e26782ec4811f77bfc9e92a5b1b675020c324ca91c9a111ccbd3ae90b80821607c7c9
2021-11-25 06:38:13 +05:30
fanquake
3c2eef8e82
Merge #16857: doc: Elaborate need to re-login on Debian-based after usermod for Tor group
706340150f3ae26fce4659f8fa0a5d57149d2fb3 Elaborate on the need to re-login on Debian-based systems to use tor following usermod (clashicly)

Pull request description:

  Starting bitcoind with `-onlynet=onion` immediately after adding bitcoind user to debian-tor group will yield the following notice on debug.log:

  	"tor: Authentication cookie /run/tor/control.authcookie could not be opened (check permissions)"

  Elaborate on the need to re-login to ensure debian-tor group has been applied to bitcoind user after:

  	sudo usermod -a -G debian-tor username

  Verification can be done via `groups` command in shell.
  Otherwise operator may not be aware at first launch they are not running a tor enabled node.

ACKs for top commit:
  fanquake:
    ACK 706340150f3ae26fce4659f8fa0a5d57149d2fb3 - Thanks for following up.

Tree-SHA512: 3473966fb43b4f1c86bd8841dd6ea8c2798256c2ca926b10bd08cd655b954a9e77f0278c4fe63160e69cc75e240a3580af00ea46bf960fde2788aa88f03510b2
2021-11-16 07:13:49 +05:30
MarcoFalke
053e7f74e2 Merge #16139: Docs: Add riscv64 to outputs list in release-process.md
6f7f141f77 Add riscv64 to outputs list in release-process.md (JeremyRand)

Pull request description:

  The `riscv64` binary is created by the Gitian scripts and distributed by the Bitcoin Core website, so it should be listed in the release process docs.

  I placed it between i686 and x86_64 since it looked like the original list of Linux arches was in alphabetical order; I'm open to including it in a different position if the desire is to keep the two ARM arches together and the two x86 arches together.

ACKs for commit 6f7f14:
  fanquake:
    utACK 6f7f141f77

Tree-SHA512: e87723f7bddd02e33897cfacdaac9f2e3ccc2bde74eb47d52ba1dd6082c868232e58247e427d6f95dc0b54858d8ccd1b6de47a379fce0f90b63a38bd97ebf419
2021-11-09 14:08:49 -05:00
Kittywhiskers Van Gogh
3c63ffa68c merge bitcoin#15368: Descriptor checksums 2021-10-28 14:01:02 +05:30
Kittywhiskers Van Gogh
95c3d05ca2 merge bitcoin#14150: Add key origin support to descriptors 2021-10-28 10:56:04 +05:30
Wladimir J. van der Laan
617941fd8b
Merge #15642: [rpc] Remove deprecated rpc warnings
947f73ceba7d74153fe83b538e42be1dfe77aea4 [docs] remove reference to signrawtransaction in the developer docs. (John Newbery)
7b6616b78bd9f76502002db1a209a0363979e506 [rpc] Remove deprecated functionality message from validateaddress help (John Newbery)
839c3f7c4937eb8a3e1e5ab2dafff26688af1078 [rpc] Remove signrawtransaction warning (John Newbery)

Pull request description:

  Removes some deprecated code from the RPCs:

  - signrawtransaction was deprecated in 0.17 and removed in 0.18. A warning message was left in place to advise users to use signrawtransactionwithwallet and signrawtransactionwithkey. That warning can now be removed.
  - validateaddress had some functionality deprecated in 0.17 and removed in 0.18. The help text for that functionality was not removed in 0.18 and can be removed now.

Tree-SHA512: 981678a697954ff2c392752e5a183b4b12c4eb94f55766ee1aa97a70d300668237db8fc5748c2772869d0155ba4a93e38817887b98160ee972a6f6ee94e3f7d9
2021-10-16 06:23:15 +05:30
MarcoFalke
ea750966f9
Merge #12246: Bugfix: Only run bitcoin-tx tests when bitcoin-tx is enabled
a2a04a5abb Bugfix: Only run bitcoin-tx tests when bitcoin-tx is enabled (Luke Dashjr)
92af71cea9 configure: Make it possible to build only one of bitcoin-cli or bitcoin-tx (Luke Dashjr)

Pull request description:

  Includes #5618 (which the reasons for rejecting no longer hold true)

Tree-SHA512: f30a8e4a2f70166b7cabef77c4674163b3a9da14c6a547d34f00d1056a19bf4d23e22851eea726fad2afc8735d5473ae91122c770b65ac3886663dc20e2c5b70
2021-10-08 19:13:56 +05:30
fanquake
53b2f81892
Merge #16186: doc/lint: Fix spelling errors identified by codespell 1.15.0
b748bf6f50dda6bb57eadf697edc320b2695e01a Fix spelling errors identified by codespell 1.15.0 (Ben Woosley)

Pull request description:

  Note all changes are to comments / documentation.

  After this commit, the only remaining output is:

  ```
    $ test/lint/lint-spelling.sh
    src/test/base32_tests.cpp:14: fo  ==> of, for
    src/test/base64_tests.cpp:14: fo  ==> of, for
    ^ Warning: codespell identified likely spelling errors. Any false positives? Add them to the list of ignored words in test/lint/lint-spelling.ignore-words.txt
  ```

  Note:
  * I ignore several valid alternative spellings ~, but changed homogenous
  to homogeneous as the latter is a more specific term according to the
  Google dictionary definitions I found~
  * homogenous is present in tinyformat, hence should be addressed upstream
  * process' is correct only if there are plural processes

ACKs for commit b748bf:
  practicalswift:
    ACK b748bf6f50dda6bb57eadf697edc320b2695e01a
  fanquake:
    ACK b748bf6f50

Tree-SHA512: 9add7044643ce015e0a44d8b27a3f300d72c485ffff550fb6491a17f14528085289ec5caddfe02f291ea9b2cded38a0dd3079652a054e2d7fe2ff4f7b53db5d7
2021-10-05 20:34:00 +03:00
Kittywhiskers Van Gogh
5856f2c124 merge bitcoin#22993: set OSX_MIN_VERSION to 10.15 2021-10-05 08:04:26 +05:30
Kittywhiskers Van Gogh
091477d853 merge bitcoin#19817: macOS toolchain bump 2021-10-05 08:04:26 +05:30
UdjinM6
38aeb47cc4
Merge pull request #4468 from Munkybooty/backports-0.19-pr1
Backports 0.19 pr1
2021-10-01 20:10:29 +03:00
MarcoFalke
4b4fb27f1d Merge #15527: doc: Move pr release notes file in wrong dir 2021-10-01 09:48:23 -04:00
MarcoFalke
1e0aa634b2 Merge #15566: cli: replace testnet with chain and return network name as per BIP70.
890396cbd5 cli: replace testnet with chain and return network name as per BIP70. (fanquake)

Pull request description:

  Related IRC discussion [here (line 151)](http://www.erisian.com.au/bitcoin-core-dev/log-2019-03-09.html).

Tree-SHA512: 8bdbacc7b8ce8bd2cc7c47aa9d73f2830a7c2e2ec43686430e3fba1a9db0e53a285467f26cde6dcc3bf948b7d6d59b9b7f184ce1a30a8970f39e5396dfc122f0
2021-10-01 09:42:27 -04:00
UdjinM6
80cf7424b5
Merge pull request #4439 from PastaPastaPasta/backport-15809
Backport 15809, 15802, 15792, 15913
2021-09-28 23:38:56 +03:00
UdjinM6
d2c975dbd7
Merge pull request #4437 from PastaPastaPasta/backport-sept-17
Backport 14264, 14324, 14583, 14426, 13687
2021-09-25 02:55:50 +03:00
MarcoFalke
abeafe4488
Merge #14583: docs: Textual improvements in build docs
36c8e68585 Various textual improvements in build docs (Martin Erlandsson)

Pull request description:

  While reading the build docs, I found some opportunities for textual improvements (Force of habit, I used to work as a technical writer...)

  * Added a few missing words, should be uncontroversial.

  * Changed/added some punctuation, for better flow and readability.

  * Fixed one Markdown issue, where two list item headings rendered without a line break. (See image)
  This one needs to be verified after a build, I don't have a proper build environment yet.

  <img width="403" alt="layout_issue" src="https://user-images.githubusercontent.com/453092/47555613-893b4d00-d90c-11e8-8a31-943846059ae7.png">

Tree-SHA512: 1e40a0414e2ce91d223933cca169d3cef25f9d2c606fd75476cef946095eee161f700f9dbf8afe60388ab8c400283d057537266d171ea63125257b7156838ecb
2021-09-24 18:48:44 -04:00
UdjinM6
2d1b13bd90
Merge pull request #4435 from PastaPastaPasta/backport-trivial-pr20
Backport trivial pr20
2021-09-24 23:10:10 +03:00
Jonas Schnelli
516cfb54c5
Merge #14687: zmq: enable tcp keepalive
c276df775914e4e42993c76e172ef159e3b830d4 zmq: enable tcp keepalive (mruddy)

Pull request description:

  This addresses https://github.com/bitcoin/bitcoin/issues/12754.

  These changes enable node operators to address the silent dropping (by network middle boxes) of long-lived low-activity ZMQ TCP connections via further operating system level TCP keepalive configuration. For example, ZMQ sockets that publish block hashes can be affected in this way due to the length of time it sometimes takes between finding blocks (e.g.- sometimes more than an hour).

  Prior to this patch, operating system level TCP keepalive configurations would not take effect since the SO_KEEPALIVE option was not enabled on the underlying socket.

  There are additional ZMQ socket options related to TCP keepalive that can be set. However, I decided not to implement those options in this changeset because doing so would require adding additional bitcoin node configuration options, and would not yield a better outcome. I preferred a small, easily reviewable patch that doesn't add a bunch of new config options, with the tradeoff that the fine tuning would have to be done via well-documented operating system specific configurations.

  I tested this patch by running a node with:
  `./src/qt/bitcoin-qt -regtest -txindex -datadir=/tmp/node -zmqpubhashblock=tcp://127.0.0.1:28332 &`
  and connecting to it with:
  `python3 ./contrib/zmq/zmq_sub.py`

  Without these changes, `ss -panto | grep 28332 | grep ESTAB | grep bitcoin` will report no keepalive timer information. With these changes, the output from the prior command will show keepalive timer information consistent with the configuration at the time of connection establishment, e.g.-: `timer:(keepalive,119min,0)`.

  I also tested with a non-TCP transport and did not witness any adverse effects:
  `./src/qt/bitcoin-qt -regtest -txindex -datadir=/tmp/node -zmqpubhashblock=ipc:///tmp/bitcoin.block &`

ACKs for top commit:
  adamjonas:
    Just to summarize for those looking to review - as of c276df775914e4e42993c76e172ef159e3b830d4 there are 3 tACKs (n-thumann, Haaroon, and dlogemann), 1 "looks good to me" (laanwj) with no NACKs or any show-stopping concerns raised.
  jonasschnelli:
    utACK c276df775914e4e42993c76e172ef159e3b830d4

Tree-SHA512: b884c2c9814e97e666546a7188c48f9de9541499a11a934bd48dd16169a900c900fa519feb3b1cb7e9915fc7539aac2829c7806b5937b4e1409b4805f3ef6cd1
2021-09-24 13:26:37 -04:00
UdjinM6
b78ceed6ca
Merge pull request #4426 from Munkybooty/backports-0.18-pr17
Backports 0.18 pr17
2021-09-24 12:02:53 +03:00
UdjinM6
b6640644eb
Merge pull request #4442 from UdjinM6/pr4319_new
Backport #14023, #13825, #14411 (and revert #14441)
2021-09-24 12:01:27 +03:00
Wladimir J. van der Laan
66d6e52d13
Merge #20741: doc: Update 'Secure string handling'
7117d7503f39f06b74c84777ec4db5d456a8086f Update 'Secure string handling' (Prayank)

Pull request description:

  - Add information about possible path traversal attack
  - [wallet_name](https://bitcoincore.org/en/doc/0.20.0/rpc/wallet/createwallet/) (string): _The name for the new wallet. If this is a 'path', the wallet will be created at the 'path' location._

  Fixes https://github.com/bitcoin/bitcoin/issues/20128 (Not really fixing it but workaround)

  This PR is an alternative to https://github.com/bitcoin/bitcoin/pull/20393

ACKs for top commit:
  michaelfolkson:
    ACK 7117d7503f39f06b74c84777ec4db5d456a8086f
  RiccardoMasutti:
    ACK 7117d7503f
  benthecarman:
    ACK 7117d7503f39f06b74c84777ec4db5d456a8086f

Tree-SHA512: 0d6c4f8db5feba848bbb583e87a99e6c4b655deaa2b566164e2632acc1aabf470d4626d2dc4b82c4997effc30d9b474d860d0e0d3e896648c5cc9bfdb623da6d
2021-09-18 21:41:46 -04:00
Wladimir J. van der Laan
4140379b58
Merge #15792: doc: describe onlynet option in doc/tor.md
140bbeec45f14fd50cce68448bc7fa655cbef951 doc: describe onlynet option in doc/tor.md (Jon Atack)

Pull request description:

  as per http://www.erisian.com.au/bitcoin-core-dev/log-2019-04-11.html#l-102.

  Description adapted from [/src/init.cpp#L429](https://github.com/bitcoin/bitcoin/blob/master/src/init.cpp#L429).

  Please verify if this is the best place to add it in the documentation.

  This commit also fixes a typo in doc/dependencies.md.

  [skip ci]

ACKs for commit 140bbe:
  practicalswift:
    ACK 140bbeec45f14fd50cce68448bc7fa655cbef951
  fanquake:
    utACK 140bbee

Tree-SHA512: 05064cc155de5a855e26f70ac5741a137ee5050573007a19e10dba0b5b2c89148ef30f765b50fc76f73dfad17df082f4e68e174b93e2bf7e169e8bd1f9426673
2021-09-18 00:28:29 -04:00
Wladimir J. van der Laan
0ddc6505b6
Merge #15802: doc: mention creating application support bitcoin folder on OSX
8dfbb5cf236cb70a2a1e65b076ccb7e2901833bd doc: mention creating application support bitcoin folder on OSX (Jack Mallers)

Pull request description:

  When setting up bitcoin core on my new MacBook via the [`macOS Build Instructions and Notes`](https://github.com/bitcoin/bitcoin/blob/master/doc/build-osx.md), running `touch "/Users/${USER}/Library/Application Support/Bitcoin/bitcoin.conf"` resulted in `No such file or directory` because my `/Users/${USER}/Library/Application Support/Bitcoin/` folder had not been created yet.

  This PR adds `mkdir "/Users/${USER}/Library/Application Support/Bitcoin"` to the documentation before creating the configuration file with `touch "/Users/${USER}/Library/Application Support/Bitcoin/bitcoin.conf"`

ACKs for commit 8dfbb5:
  fanquake:
    utACK 8dfbb5cf236cb70a2a1e65b076ccb7e2901833bd

Tree-SHA512: c401dae0a681bed77b31939bd29f79837f66c8537da393871fc3596e8c10629b8817ece9c8d49b1b9de34e74e0fbff742a9116b02ce7a71af93f872b87539337
2021-09-18 00:26:06 -04:00
Wladimir J. van der Laan
b8a87799f0 Merge #14096: Add reference documentation for descriptors language
2b5d6f8df24b381d35b75187c97ae0cc9f7c3ed0 Replace duplcate reference with reference to reference doc (Pieter Wuille)
89709db7a2710456011eac9dcd6a60d5e87b97ae Adjust TODO link (Pieter Wuille)
9254ffcf2d910ecb0f9ecbeef6d40a2008a44870 Add descriptor reference documentation (Pieter Wuille)

Pull request description:

Tree-SHA512: 1ca0d537f9bcbb23266e9a4a02a60013ef8309958fb701f638283887585b5ddea6bc9dab859454ec3a373b1a12a4fd69836e7030417bb2ca43fef26b104c0d65
2021-09-17 14:07:10 -04:00
John Newbery
da164724d2
Merge bitcoin#13825: [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
2021-09-17 02:17:00 +03:00
Wladimir J. van der Laan
b00e1b6331
Merge #14023: Remove accounts rpcs
bb08423d5ca866d4a139a3b57ff110d818d08b32 [doc] Add release notes for 'account' API removal (John Newbery)
1f4b865e57b4567270b1586bb1f348ab9106485d [wallet] Re-sort wallet RPC commands (John Newbery)
f0dc850bf698f7377797d7d68365d4fc79b0221c [wallet] Remove wallet account RPCs (John Newbery)
c410f415758913c933ad6c71cf50227cc85aa385 [tests] Remove wallet accounts test (John Newbery)

Pull request description:

  This is the first part of #13825. It simply removes the RPC methods and tests.

  #13825 touches lots of files and will require frequent rebasing.

  Breaking it down for easier reviewing and fewer rebases.

Tree-SHA512: d29af8e7a035e4484e6b9bb56cb86592be0ec112d8ba4ce19c15d15366ff3086e89e99fca26b90c9d66f6d3e06894486d0f29948df0bb7dcb1e2c49c6887a85a
2021-09-17 02:17:00 +03:00
Dzutte
6619124787
Merge #13152: [rpc] Add getnodeaddresses RPC command (#4425)
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

Co-authored-by: MarcoFalke <falke.marco@gmail.com>
2021-09-16 01:28:55 +03:00
Wladimir J. van der Laan
9ca2c0a8a6
Merge #17410: Rename db log category to walletdb (like coindb)
e2c03c1156a1a8cb2c04c180f2ddbd3535126a46 doc: Add relase note for db→walletdb rename (Wladimir J. van der Laan)
4c1d263d93988ceed53e8f6b5decaf034b68137e scripted-diff: Change `BCLog::DB` to `BCLog::WALLETDB` (Wladimir J. van der Laan)
6b42b3ba9087225fddb91dd764c42c28d0c42d0f Rename `db` log category to `walletdb` (like `coindb`) (Wladimir J. van der Laan)

Pull request description:

  Rename the `db` log category to `walletdb` (in the style of, and to distinguish from `coindb`). Deprecate (but still accept) '-debug=db'.

  Second commit is a scripted commit that changes the enum item name.

ACKs for top commit:
  hebasto:
    ACK e2c03c1156a1a8cb2c04c180f2ddbd3535126a46, tested on Linux Mint 19.2:

Tree-SHA512: a044de6f9a70e735cbb1caa4ed6bf75bc2269b2d5bc3241a25b6a6d69c1fc1d83456e252b431388ae61f4821e4fc06ecc1b634816ceadbe9a3c0e494bee6c11e
2021-09-15 13:54:41 -04:00
Wladimir J. van der Laan
46c3eaab48
Merge #17281: doc: Add developer note on c_str()
1cf9b35c0dac5f685b7ae62ded16284803816570 doc: Add developer note on c_str() (Wladimir J. van der Laan)

Pull request description:

  Add a note when to use and when not to use `c_str()`.

ACKs for top commit:
  elichai:
    ACK 1cf9b35c0dac5f685b7ae62ded16284803816570
  MarcoFalke:
    Looking nice ACK 1cf9b35c0dac5f685b7ae62ded16284803816570

Tree-SHA512: 38cb5e54695782c23a82d03db214a8999b5bb52553f4fbe5322281686f42616981a217ba987feb6d87f3e6b95919cadd8484efe69ecc364ba1731aaf173626c9
2021-09-15 13:54:39 -04:00
PastaPastaPasta
dfea329f69
Merge pull request #4396 from Munkybooty/backports-0.18-pr16
Backports 0.18 pr16
2021-09-14 12:05:37 -04:00
Wladimir J. van der Laan
7006a38ba5 Merge #15404: [test] Remove -txindex to start nodes
8e4b4f683a0b342cec24cd51b1e98433034ea2ea Address test todos by removing -txindex to nodes. Originally added when updating getrawtransaction to stop searching unspent utxos. (Amiti Uttarwar)

Pull request description:

  Original todos added when removing getrawtransaction default behavior of searching unspent utxos.

Tree-SHA512: d080953c3b0d2e5dca2265a15966dc25985a614c9cc86271ecd6276178ce428c85e262c24df92501695c32fed7beec0339b989f03cce91b57fb2efba201b7809
2021-09-13 16:04:36 -04:00
MarcoFalke
721b38c056
Merge #16039: docs: add release note for 14954
0830d40456 docs: add release note for 14954 (fanquake)

Pull request description:

  Adds a release note for #14954: build: Require python 3.5.

ACKs for commit 0830d4:

Tree-SHA512: f647c065ef290fb2acb8f55390d8a8cb197372219700bd48777850646c2410b080e1878582ca08c59e6da37ea1dc2d51724e826894dbb7d8a2b218a3b5464a77
2021-09-12 14:15:11 -04:00
MarcoFalke
1c7188fab1
Merge #15922: doc: Explain how to pass in non-fundamental types into functions
faede747b3 doc: Explain how to pass in non-fundamental types into functions (MarcoFalke)

Pull request description:

  There is a common misconception in C++ that one ampersand is better than no ampersand and two ampersands are better than one.

ACKs for commit faede7:
  practicalswift:
    ACK faede747b3493544f25d601b8e02c833e54c8751
  jonasschnelli:
    ACK faede747b3493544f25d601b8e02c833e54c8751

Tree-SHA512: be12c23287398e4525f16e13de30e51a42d9e38284644eed5b67fa23197b09436d75a3aa8db08555ee91a38a0f159d2722b8a9927ce0bc906e600d2a7976086b
2021-09-12 14:15:10 -04:00
pasta
a2652e5648 15799 / 15223 Dashification
Signed-off-by: pasta <pasta@dashboost.org>
2021-09-10 23:16:27 -04:00
MarcoFalke
fd0a1cf410
Merge #15799: doc: Clarify RPC versioning
fa747498f7 doc: Clarify RPC versioning (MarcoFalke)

Pull request description:

ACKs for commit fa7474:

Tree-SHA512: 4d374cc9ae77a06423acc9c73fe29f706f4349c548b17cb2414f15f72e0fc8c6ef7783ce099e938db2ab949717a4ef29e1aebc6aa09a350853d7f875b192ccb5
2021-09-10 20:56:00 -04:00
Wladimir J. van der Laan
63a21fd1c5
Merge #15223: Doc: add information about security to the JSON-RPC doc
5a5ea93e87c766dac1251f0369b2737d8e9dadde Doc: add information about security to the JSON-RPC doc (David A. Harding)

Pull request description:

  This documents some information about using the RPC interface securely, as suggested in https://github.com/bitcoin-core/bitcoincore.org/pull/637 by @luke-jr and @TheBlueMatt.  I think it should fit in well with #14458, but is not dependent on it (and shouldn't have any significant merge conflicts with it).

Tree-SHA512: e09d82c3029ed17a8bcf50722ea25a8c6c514731f3bce01908cbb6fe48bc96a3068a025beabebc602d18e1bc0dc3f2602848abc05dca1d3efe2a988ee50068c0
2021-09-10 20:54:46 -04:00
Wladimir J. van der Laan
7c3c6ef71f Merge #12255: Update bitcoin.service to conform to init.md
bad1716c6d30fdf4be6d5050a04e1211f920bbd6 init: Modify docs and add release note for 12255 (Carl Dong)
b0c7b54d0c2e116d61e686b1adfdea6a1f7f02fe init: Use systemd automatic directory creation (Carl Dong)

Pull request description:

  - `-datadir` option specified.
  - Ask systemd to create and set the right mode for PID directory, configuration directory, and data directory.
  - Tell systemd our group so it will set the right owner for aforementioned directories.

  More information: https://www.freedesktop.org/software/systemd/man/systemd.exec.html

Tree-SHA512: a6fad1efa2be433c1fdd863df3ff232736ed709a9e281f51a003b40987d8c213dc64a52bc13a19c85bf85680e78f0be112ecaf32ac274b1ff93bac84a1208845
2021-09-10 15:40:46 -04:00
UdjinM6
4dbe320662
Merge pull request #4400 from PastaPastaPasta/backport-new-wallet-pr1
Backport 14941, 15149 and 15210
2021-09-09 23:33:29 +03:00
Wladimir J. van der Laan
39308f017a
Merge #14941: rpc: Make unloadwallet wait for complete wallet unload
645e905c327411555073fa7964b36f652998059f doc: Add release notes for unloadwallet change to synchronous call (João Barbosa)
c37851de5752f107c16e19317f28038b6b7ca2dc rpc: Make unloadwallet wait for complete wallet unload (João Barbosa)

Pull request description:

  Currently the `unloadwallet` RPC is asynchronous, it only signals the intent to unload the wallet and then returns the response to the client. The actual unload can happen later and the client has no way to be notified of that.

  This PR makes the `unloadwallet` RPC synchronous, meaning that it blocks until the wallet is fully unloaded.

  Replaces #14919, fixes #14917.

Tree-SHA512: ad88b980e2f3652809a58f904afbfe020299f3aa6a517f495ba943b8d54d4520f6e70074d6749be8f5967065c0f476e0faedcde64c8b4899e5f99c70f0fd6534
2021-09-08 14:17:35 -04:00
Dzutte
39933ecd8a
Merge bitcoin#14060: ZMQ: add options to configure outbound message high water mark, aka SNDHWM (#4360)
* Merge #14060: ZMQ: add options to configure outbound message high water mark, aka SNDHWM

a4edb168b635b6f5c36324e44961cd42cf9bbbaa ZMQ: add options to configure outbound message high water mark, aka SNDHWM (mruddy)

Pull request description:

  ZMQ: add options to configure outbound message high water mark, aka SNDHWM

  This is my attempt at https://github.com/bitcoin/bitcoin/pull/13315

Tree-SHA512: a4cc3bcf179776899261a97c8c4f31f35d1d8950fd71a09a79c5c064879b38e600b26824c89c4091d941502ed5b0255390882f7d44baf9e6dc49d685a86e8edb

* High watermark settings for Dash-specific messages

Signed-off-by: Dzutte <dzutte.tomsk@gmail.com>

Co-authored-by: Wladimir J. van der Laan <laanwj@gmail.com>
2021-09-08 12:39:06 -04:00
Dzutte
22dd7bfa37
Merge #13578: [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions (#4397)
f1bd03eb013b96ff040a8f835e4137fbd2a38cda [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

Co-authored-by: Wladimir J. van der Laan <laanwj@gmail.com>
2021-09-08 12:25:20 -04:00
UdjinM6
779d1f53e1
build|gitian: Install cmake for macos cross-compilation builds
native_libtapi requires cmake
2021-09-07 03:25:11 +03:00
Kittywhiskers Van Gogh
d451833380 merge #20419: set minimum supported macOS to 10.14 2021-09-03 21:35:53 +05:30
Kittywhiskers Van Gogh
6349b7e401 merge #19240: macOS toolchain simplification and bump 2021-09-03 17:49:55 +05:30
Wladimir J. van der Laan
07a7fda225
Merge #15939: gitian: Remove Windows 32 bit build
fa193dc8e6f3b96fa2dba2f1c1668f7720fed320 doc: Remove win32 from the release process (MarcoFalke)
faf666f8148eeb305a9c4f78459aff2c7268016b Remove Windows 32 bit build (MarcoFalke)

Pull request description:

  The Windows 32 bit build has been removed from https://bitcoincore.org/en/download/, so unless there are complaints, we don't need to build it even

ACKs for commit fa193d:
  fanquake:
    utACK fa193dc8e6

Tree-SHA512: d6f2976a2e0c407698f720b00ac23ec4056626de4eff8621f4c5581120af0460afd1bdef72329cc0e7d92afca48d94ae5fce6777cb36bfabb60b8034ff08fd88
2021-09-02 22:27:58 +03:00
Kittywhiskers Van Gogh
a358d2e593 merge #16392: macOS toolchain update 2021-09-02 01:55:01 +05:30
Kittywhiskers Van Gogh
ced48380b8 partial merge #17550: set minimum supported macOS to 10.12 2021-08-31 11:16:04 +05:30
Wladimir J. van der Laan
86de06e86a Merge #15243: [doc] add notes on release notes
65bc38d1c1f666e2c2d773111921b115d4249563 [doc] add notes on release notes (John Newbery)

Pull request description:

  Explains when and how release notes should be written.

Tree-SHA512: 94085d5a30499f41e6d1821b9f157aea40b3cff61a8ba606fed1b239e794ffe6769f985f53400715d712d12aadaa8db8cfca08dd1700a1fe17df86e0e554eac2
2021-08-24 19:14:50 -04:00
Jonas Schnelli
583c2ee123 Merge #13216: [Qt] implements concept for different disk sizes on intro
9d0e52834 implements different disk sizes for different networks on intro (marcoagner)

Pull request description:

  Fixes https://github.com/bitcoin/bitcoin/issues/13213.
  Mostly, I layed out the concept to open the PR for refinement and getting feedback if the approach is okay. Changes are expected.

  Two points:
  - The values for both new consts `TESTNET_BLOCK_CHAIN_SIZE` and `TESTNET_CHAIN_STATE_SIZE` is certainly not optimal; I just checked the size of my testnet3 related dirs and set them to little bit higher values. Which values should be used?
  - Should we do something like this to regtest? Or these "niceties" do not matter when on regtest?

  Thanks!

Tree-SHA512: 8ae87a29fa8356b899e7a823c76cde793d9126b4ee59554d7a2a8edb088fe42a19976b34c06c2fd4a98a727e1e4971dd983f42b6093ea6caa255b45004e22bb4
2021-08-24 19:14:49 -04:00
MarcoFalke
33384816b5 Merge #14519: tests: add utility to easily profile node performance with perf
13782b8ba8 docs: add perf section to developer docs (James O'Beirne)
58180b5fd4 tests: add utility to easily profile node performance with perf (James O'Beirne)

Pull request description:

  Adds a context manager to easily (and selectively) profile node performance during functional test execution using `perf`.

  While writing some tests, I encountered some odd bitcoind slowness. I wrote up a utility (`TestNode.profile_with_perf`) that generates performance diagnostics for a node by running `perf` during the execution of a particular region of test code.

  `perf` usage is detailed in the excellent (and sadly unmerged) https://github.com/bitcoin/bitcoin/pull/12649; all due props to @eklitzke.

  ### Example

  ```python
  with node.profile_with_perf("large-msgs"):
      for i in range(200):
          node.p2p.send_message(some_large_msg)
      node.p2p.sync_with_ping()
  ```

  This generates a perf data file in the test node's datadir (`/tmp/testtxmpod0y/node0/node-0-TestName-large-msgs.perf.data`).

  Running `perf report` generates nice output about where the node spent most of its time while running that part of the test:

  ```bash
  $ perf report -i /tmp/testtxmpod0y/node0/node-0-TestName-large-msgs.perf.data --stdio \
    | c++filt \
    | less

  # To display the perf.data header info, please use --header/--header-only options.
  #
  #
  # Total Lost Samples: 0
  #
  # Samples: 135  of event 'cycles:pp'
  # Event count (approx.): 1458205679493582
  #
  # Children      Self  Command          Shared Object        Symbol
  # ........  ........  ...............  ...................  ........................................................................................................................................................................................................................................................................
  #
      70.14%     0.00%  bitcoin-net      bitcoind             [.] CNode::ReceiveMsgBytes(char const*, unsigned int, bool&)
                  |
                  ---CNode::ReceiveMsgBytes(char const*, unsigned int, bool&)

      70.14%     0.00%  bitcoin-net      bitcoind             [.] CNetMessage::readData(char const*, unsigned int)
                  |
                  ---CNetMessage::readData(char const*, unsigned int)
                     CNode::ReceiveMsgBytes(char const*, unsigned int, bool&)

      35.52%     0.00%  bitcoin-net      bitcoind             [.] std::vector<char, zero_after_free_allocator<char> >::_M_fill_insert(__gnu_cxx::__normal_iterator<char*, std::vector<char, zero_after_free_allocator<char> > >, unsigned long, char const&)
                  |
                  ---std::vector<char, zero_after_free_allocator<char> >::_M_fill_insert(__gnu_cxx::__normal_iterator<char*, std::vector<char, zero_after_free_allocator<char> > >, unsigned long, char const&)
                     CNetMessage::readData(char const*, unsigned int)
                     CNode::ReceiveMsgBytes(char const*, unsigned int, bool&)

  ...
  ```

Tree-SHA512: 9ac4ceaa88818d5eca00994e8e3c8ad42ae019550d6583972a0a4f7b0c4f61032e3d0c476b4ae58756bc5eb8f8015a19a7fc26c095bd588f31d49a37ed0c6b3e
2021-08-18 22:24:36 -03:00
UdjinM6
3bc04d668a
Merge pull request #4338 from pravblockc/backports-v0.18-pr11
Backports v0.18: PR's #15176, 15235, 15272 and 15247
2021-08-17 22:55:21 +03:00
PastaPastaPasta
592cd0a939
Merge pull request #4333 from Munkybooty/backports-0.18-pr13
Backports 0.18 pr13
2021-08-16 14:24:51 -05:00
Wladimir J. van der Laan
debac13960 Partial Merge #14831: Scripts and tools: Use #!/usr/bin/env bash instead of #!/bin/bash.
688f665a5e526fda0fb797bf617412fe9cbe64fd Scripts and tools & Docs: Used #!/usr/bin/env bash instead of obsolete #!/bin/bash, added linting for .sh files shebang and updated the Developer Notes. (vim88)

Pull request description:

  As it was discussed in [#13510](https://github.com/bitcoin/bitcoin/pull/13510), it is better to use `#!/usr/bin/env bash` instead of `#!/bin/bash`.

Tree-SHA512: 25f71eb9a6a0cdc91568b5c6863205c5fe095f77a69e633503a2ac7805bd9013af8538e538c0c666ce96a28e3f43ce7a8df5f08d4ff007723bb588d85674f2da
2021-08-15 11:08:08 -04:00
Wladimir J. van der Laan
6b3ec8fe0d Merge #14804: docs: Less confusing documentation for torpassword
6c6ee8af8 Less confusing documentation for `torpassword` (Chakib Benziane)

Pull request description:

  Rebased & squashed #14609.

  > The current documentation leads the reader to think hash-password is an other option.
  This change is less confusing and make it clear how to use this option.

Tree-SHA512: b94223715f1d28a8218e501117faa103d7cc791333e6d9a40e9253756070316d41de73e3b4593cd1fa9e1823fa8e8de4938cf0de89117a6e4649401d877e3477
2021-08-15 11:08:08 -04:00
Wladimir J. van der Laan
b2acd799e6 Merge #15176: docs: Get rid of badly named readme
f24ed6d39f963e7f1c0b4dbd9b784132ef975f2a Delete README_osx.md and move its contents into build-osx.md (Martin Erlandsson)

Pull request description:

  With its current name, the file `doc/README_osx.md` looks like an entry point README for OSX users, but it only contains specific instructions on how to build a DMG.

  This PR deletes the file and moves the contents of the file into `doc/build-osx.md`.

Tree-SHA512: 2636b9da967f2a4c0d68cb9a157fb3db137bdb8fbff5d9d004f28b5d816e9c27fddc5c403e6b0c363d1dc9ddc7cac8b295efa01fc691126c0e36e21bb9b3cbd3
2021-08-12 23:45:30 -03:00
PastaPastaPasta
90e7119a8b
Merge pull request #4312 from kittywhiskers/fuzz
merge bitcoin#15043, #15295, #15399, #17452, #16338, #15504, #17076, #17069, #17018: fuzzing
2021-08-11 11:28:26 -05:00
PastaPastaPasta
a9bfde558a
Merge pull request #4313 from Munkybooty/backports-0.18-pr12
Backports 0.18 pr12
2021-08-11 11:11:35 -05:00
Kittywhiskers Van Gogh
45d0b240b8 bitcoin#17942: Improve fuzzing docs for macOS users 2021-08-11 09:48:41 +05:30
Kittywhiskers Van Gogh
d967c39222 bitcoin#15295: Add test/fuzz/test_runner.py and run it in travis 2021-08-11 08:50:43 +05:30
Kittywhiskers Van Gogh
0e7fe9e6ab bitcoin#15043: Build fuzz targets into separate executables 2021-08-11 08:50:43 +05:30
Wladimir J. van der Laan
c5d4a69ce0 Merge #14612: Include full version number in released file names
75a4bf699fa6bdefa1b3d8cd405ea822d6ee01c0 Update release-process.md to include RC version bumping (Andrew Chow)
04b0bc7425e43de90856beeb1f33653db109fecd build: include rc number in version number (Andrew Chow)
895e6bbb2241e9175463734f3677398a9f38f0f8 build: if VERSION_BUILD is non-zero, include it in the package version (Andrew Chow)

Pull request description:

  As noted on IRC, the filenames of the gitian build results do not contain the 4th digit of the version number if it has one, e.g. 0.17.0.1 produces files with the number 0.17.0. Furthermore, when RC's are built, the resulting filenames are of the release version and do not include `rc` in them. This occurs because `configure.ac` is written to create version numbers of the form `major.minor.rev` instead of `major.minor.rev.build` and without any rc version as it does not handle rc numbers.

  This PR changes `configure.ac` to include the build number if it is greater than 0. It will also include the rc number if it is greater than 0. So the filenames of the gitian builds will now contain the full version number.

  This behavior can be tested by setting `_CLIENT_VERSION_BUILD` and `_CLIENT_VERSION_RC` to non-zero values and then doing `make dist`. A tar file should be created with the correct versioning.

Tree-SHA512: b77990485f2c7770be897dc136737cd805306afff9882ebef7170741f363203587356ccf8bec83163268ace1bd77433fbd2ba8c213f993677bfb867d99a0bbe7
2021-08-10 20:24:28 -04:00
MarcoFalke
e1e36309bf Merge #14684: [doc] conf: Remove deprecated options from docs, Other cleanup
fa4da3c058 [doc] conf: Remove deprecated options from docs, Other cleanup (MarcoFalke)

Pull request description:

  Some dumb fixes, like removing the mention that free transactions are still a thing or that rpcuser/pass should be used (as opposed to rpcauth or rpc cookie).

  Combined with other fixes because I don't want to create 3 pull requests:
  * conf: Remove deprecated options from docs
  * Remove only mention of MIT/X11
  * Link to developer notes in README.md

Tree-SHA512: 9e45dc6c63037e7618cf3c871d7d9e65b66f1a952f91a6e623d97d90171e29bc40299a06029c4dc21a0f579e68021e3663186bd3a65e3ab333aff711f7dcb2bf
2021-08-03 11:42:08 -04:00
Wladimir J. van der Laan
6d221d5220 Merge #15012: Docs: Fix minor error in doc/psbt.md
72b63bc9054f7742a9b12ea29b21770b5e437092 Fix minor grammar error in doc (bitcoinhodler)

Pull request description:

  It's pretty clear that the author meant "rather than" here.

Tree-SHA512: aa31d0e8a8a203dba5c0f6edd73ba935b701449243a0fa75d7ca4a35d20c0fd44ba45b58e3d1c7f1854eb1ed66543ecd5d53181c54352e4c3d42eb3ab38cf6f2
2021-08-03 10:36:15 -04:00
Wladimir J. van der Laan
0720565814 Merge #14319: doc: Fix PSBT howto and example parameters
78542a3f36381fe96f60708834c8378042e3bab6 doc: Fix PSBT howto and example parameters (priscoan)

Pull request description:

Tree-SHA512: 2fcdd67717647e2f6166e6744c0938c96d8df6951e2ee5507372dad22ff66660f34c4554c86624c25f9a0dac2cdf8aff19bb7fc64a60e8e80a175f729ef913e4
2021-08-03 10:36:15 -04:00
PastaPastaPasta
dfc17e235b
drop 16695 release notes (#4286) 2021-07-27 13:47:16 +03:00
MarcoFalke
fc40144859 Merge #14395: Fix typos and cleanup
4a9f064ea1 Fix typos (Dimitris Apostolou)

Pull request description:

Tree-SHA512: 011133fb524c3c3cfd272aad0fe9103192b1cc00ac8b14d5b224368fffdb3893e8a19fe281e59ea1aba81bd5e5ab4b7b2de5c3f269e4a7aee66959727cd82cec

# Conflicts:
#	doc/init.md
2021-07-22 16:02:34 -04:00
Wladimir J. van der Laan
3cb8293ba5
Merge #15990: Add tests and documentation for blocksonly
fa8ced32a60dea37ac169241cf9a1f708ef46c4b doc: Mention blocksonly in reduce-traffic.md, unhide option (MarcoFalke)
fa320de79faaca2b088fcbe7f76701faa9bff236 test: Add test for p2p_blocksonly (MarcoFalke)
fa3872e7b4540857261aed948b94b6b2bfdbc3d1 test: Format predicate source as multiline on error (MarcoFalke)
fa1dce7329d3e74d46ab98b93772b1832a3f1819 net: Rename ::fRelayTxes to ::g_relay_txes (MarcoFalke)

Pull request description:

  This is de-facto no longer hidden

ACKs for commit fa8ced:
  jamesob:
    utACK fa8ced32a6

Tree-SHA512: 474fbdee6cbd035ed9068a066b6056c1f909ec7520be0417820fcd1672ab3069b53f55c5147968978d9258fd3a3933fe1a9ef8e4f6e14fb6ebbd79701a0a1245
2021-07-21 15:53:38 -05:00