Commit Graph

33395 Commits

Author SHA1 Message Date
MarcoFalke
fab24f8c35
ci: Add clang-tidy task 2022-04-04 11:57:06 +02:00
laanwj
83b26cb97c
Merge bitcoin/bitcoin#24736: guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64
d6fae988ef guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64 (fanquake)

Pull request description:

  This introduces a patch to our GCC (10.3.0) mingw-w64 compiler, in Guix, to make
  it avoid using aligned vmov instructions. This works around a longstanding issue
  in GCC, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412, which was recently
  discovered to be causing issues, see #24726.

  Note that distros like Debian are also patching around this issue, and that is
  where this patch comes from. This would also explain why we haven't run into this
  problem earlier, in development builds. See:
  https://salsa.debian.org/mingw-w64-team/gcc-mingw-w64/-/blob/master/debian/patches/vmov-alignment.patch.

  Fixes #24726.
  Alternative to #24727.

  See also:
  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939559

ACKs for top commit:
  laanwj:
    Concept and code review ACK d6fae988ef
  hebasto:
    ACK d6fae988ef, tested Guix ` bitcoin-d6fae988eff7-win64.zip` artifact on Windows 11 Pro 21H2:

Tree-SHA512: f522efd8e604ab1d9f9c385147f6f488767cfe66f08a1c8b4ff67d448e065f8f2334bf825d99e7fe9571ada9038002b08434585f639120cb29b2e314da7b556e
2022-04-04 11:42:35 +02:00
fanquake
15893a0781
supp: remove Boost Valgrind suppression 2022-04-04 10:40:00 +01:00
fanquake
b0740fdcb8
ci: use DWARF-4 for Valgrind CI job
clang-14 defaults to using DWARF-5, which breaks vlagrinds (3.18) ability
to parse debug info. Valgrind claims to support DWARF-5 from version
3.18 onwards, but maybe that only works when building with GCC.

Explicitly use DWARF-4 for now. Note that from 11.0 GCC also defaults to
using DWARF-5.

https://releases.llvm.org/14.0.0/tools/clang/docs/ReleaseNotes.html#dwarf-support-in-clang
https://www.gnu.org/software/gcc/gcc-11/changes.html
https://valgrind.org/docs/manual/dist.news.html
2022-04-04 10:39:55 +01:00
fanquake
7c218dacd0
build: specify cmake build dir for multiprocess depends build
When no build dir is specified, cmake will warn:
```bash
Preprocessing libmultiprocess...
Configuring libmultiprocess...
CMake Warning:
  No source or binary directory provided.  Both will be assumed to be the
  same as the current working directory, but note that this warning will
  become a fatal error in future CMake releases.
```

It's unclear if this will actually ever become an error, but it's also easy
enough to just supply the directory, and save this maybe breaking in
future.
2022-04-04 10:24:06 +01:00
fanquake
52f0f7a1bb
Merge bitcoin/bitcoin#24668: build, qt: bump Qt5 version to 5.15.3
7f6042849c build, qt: use one patch per line in depends/packages/qt.mk (Pavol Rusnak)
826cbc470f build, qt: drop fix_no_printer.patch (Hennadii Stepanov)
ef20add4c9 build, qt: bump Qt5 version to 5.15.3 (Pavol Rusnak)

Pull request description:

  build, qt: bump Qt5 version to 5.15.3

  Qt 5.15.3 release is a patch release made on the top of Qt 5.15.2. As a patch
  release, Qt 5.15.3 does not add any new functionality but provides bug fixes
  and other improvements.

  https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/5.15.3/release-note.md

  * dropped patches:
    - patches/qt/dont_use_avx_android_x86_64.patch
    - patches/qt/fix_bigsur_style.patch
  * adjusted patches:
    - patches/qt/fix_android_jni_static.patch
    - patches/qt/fix_limits_header.patch
    - patches/qt/use_android_ndk23.patch

ACKs for top commit:
  hebasto:
    ACK 7f6042849c
  fanquake:
    ACK 7f6042849c

Tree-SHA512: dd79475901bc9636fb0ce2424f63ddfe8ab5f85f7f35ac64b0e8708042793c19663be1abdcaef6be95e30bae8aa9e6da4389d768de5c102ded8ab61b3d02b07b
2022-04-04 09:17:11 +01:00
MarcoFalke
0da559e02e
Merge bitcoin/bitcoin#24661: refactor: Use clang-tidy syntax for C++ named arguments
37a16ffd70 refactor: fix clang-tidy named args usage (fanquake)

Pull request description:

  > Incorrect named args are source of bugs, like https://github.com/bitcoin/bitcoin/pull/22979.

  > To allow them being checked by clang-tidy, use a format it can understand.

  Picks up #23545, with some additional changes and some feedback addressed.

  With these changes invoking `./autogen.sh && ./configure CC=clang-12 CXX=clang++-12 && make clean && bear make -j9 && ( cd ./src/ && run-clang-tidy-12 -j9 )` no-longer results in named argument errors out of `clang-tidy`.

  Ultimately I think we should just add `clang-tidy-*` jobs to the CI and automate things away.

ACKs for top commit:
  MarcoFalke:
    cr ACK 37a16ffd70

Tree-SHA512: 9bfc0d006eb187755b4fdb0bd92cee9266fc0816be42065ef7dcd885b9020ff12e3cdd7ca3a831613a56a0206d448e690ee4e1fa37628fa2013860e17f416ff3
2022-04-04 10:06:52 +02:00
fanquake
37a16ffd70
refactor: fix clang-tidy named args usage 2022-04-04 09:01:19 +01:00
MarcoFalke
62efdfb3be
Merge bitcoin/bitcoin#24558: build: explicitly disable Boost multi_index serialization
0d01272cd8 build: don't use Boost multi_index serialization (fanquake)

Pull request description:

  We don't use the serialization or archiving facilities of multi_index.
  So globally disable support, which gives a minor improvement in build
  time, i.e less preprocessing work, given we don't link any Boost libs.

  See: https://www.boost.org/doc/libs/1_78_0/libs/multi_index/doc/tutorial/creation.html

  > Serialization capabilities are automatically provided by just linking with the appropriate Boost.Serialization library module: it is not necessary to explicitly include any header from Boost.Serialization, apart from those declaring the type of archive used in the process. If not used, however, serialization support can be disabled by globally defining the macro BOOST_MULTI_INDEX_DISABLE_SERIALIZATION. Disabling serialization for Boost.MultiIndex can yield a small improvement in build times, and may be necessary in those defective compilers that fail to correctly process Boost.Serialization headers.

ACKs for top commit:
  MarcoFalke:
    cr ACK 0d01272cd8

Tree-SHA512: 87c664a2f142dc6b8f8598341f9829be3fda8cf614d73cc9a894c8033ee40c6daa9b50f4049ecb1f1e3aaf342568d9a5f5c65af1e04c36ee3a9cb46eca95767b
2022-04-04 09:54:48 +02:00
fanquake
7b00595d33
build: stop overriding user CXXFLAGS
Let users have the final say in regards to CXXFLAGS.
2022-04-03 19:36:17 +01:00
fanquake
3e2ef23c3e
build: stop overriding user LDFLAGS
Let the user have the final say in regards to LDFLAGS.
2022-04-03 19:36:17 +01:00
fanquake
35c3fd43c3
build: stop overriding user CPPFLAGS
Let the user have the final say in regards to CPPFLAGS
2022-04-03 19:36:11 +01:00
fanquake
112a7ab9a8
refactor: remove macOS MAP_ANONYMOUS work around
This was added to support compilation on macOS 10.10, our minimum
required macOS is now 10.15. macOS has also supported it since 10.11.

See https://github.com/bitcoin/bitcoin/pull/9063.
2022-04-03 13:04:29 +01:00
Hennadii Stepanov
31b1c67cf6
Merge bitcoin-core/gui#557: Revert "qt: Do not use QObject::tr plural syntax for numbers with a unit symbol"
0c64401324 Revert "qt: Do not use QObject::tr plural syntax for numbers with a unit symbol" (Luke Dashjr)

Pull request description:

  Apparently this got forgotten. Maybe too late for 23.x (it's a bugfix, but changes translation strings).

  This reverts commit 3adde72bc9 (#296)

  per [GChuf](https://github.com/bitcoin-core/gui/pull/296#issuecomment-962516055)

  >I can confirm for slovenian and other slavic languages that we do have 3 or 4 different ways of saying "%n GB needed%, depending on the actual number of gigabytes. Similar to english "is/are". There's no way to cover all cases ... this is exactly why transifex allows you to have more than 2 options.

ACKs for top commit:
  hebasto:
    ACK 0c64401324, I have reviewed the code and it looks OK, I agree it can be merged.

Tree-SHA512: c01bae44a32b3ec324f2f9b8e4923bbb2e83bbd1460b745c5c911b98a9b2806fcbf815cfb19a1f1a7038c5c14312e102e7df8744c9002ef784b36d158e08eb14
2022-04-03 10:10:54 +02:00
fanquake
bc7cc57607
doc: explain why we clear CXXFLAGS with enable-debug 2022-04-02 18:49:43 +01:00
fanquake
55ea6fd250
Merge bitcoin/bitcoin#24738: build: remove faketime unsetting and comments from configure
3d70c05868 build: remove faketime unsetting and comments from configure.ac (fanquake)

Pull request description:

  We no-longer use [`faketime`](https://github.com/wolfcw/libfaketime) (it used to be required in gitian), so as far as I'm aware, there is no need for us to unset `FAKETIME` or mention it in our build docs.

ACKs for top commit:
  laanwj:
    Code review ACK 3d70c05868
  prusnak:
    Approach ACK 3d70c05
  hebasto:
    ACK 3d70c05868, I have reviewed the code and it looks OK, I agree it can be merged.

Tree-SHA512: 9cf89d63b81119f3d2f02975a66ec0b93e861993fdb0e4f70538e3be6e0047dc09ce87ef2de40cbf877647a21706b39ddf07240c77765278d383d7a7878cc7eb
2022-04-02 18:46:23 +01:00
Fabian Jahr
e40779a4fe
refactor: Remove outdated libevent logging code
The removed code was intended to catch issues with event_enable_debug_logging which was not available prior to libevent 2.1.1. This is not necessary since the minimum libevent version was bumped to 2.1.8.
2022-04-02 19:26:46 +02:00
fanquake
0d01272cd8
build: don't use Boost multi_index serialization
We don't use the serialilzation or archiving facilities of multi_index.
So globally disable support, which gives a minor improvement in build
time, i.e less preprocessing work.

See: https://www.boost.org/doc/libs/1_78_0/libs/multi_index/doc/tutorial/creation.html
2022-04-02 15:46:40 +01:00
fanquake
d018db966a
Merge bitcoin/bitcoin#24740: doc: remove incorrect mention of PR_GET_NAME
e8fc236da7 refactor: add missing std:: includes to threadnames.cpp (fanquake)
87f3c04cc5 doc: remove incorrect mention of PR_GET_NAME (fanquake)

Pull request description:

  By removing the whole comment. These `#include // For` comments are near impossible
  to maintain, pollute diffs, and generally don't add a lot of value.

  While here, also add the missing `std::` includes.

ACKs for top commit:
  junderw:
    LGTM ACK e8fc236

Tree-SHA512: d29aff40c94f59c42f295a5738bc5ff2f4a2f2e6d270cc505f27d56d07d272597e2f8403d72fe45775661e1a1fc2af9fc52aeaeb41263bd3e9dfe255332383c8
2022-04-02 14:34:39 +01:00
fanquake
03251b6b93
Merge bitcoin/bitcoin#24594: doc: update release-process.md
ac45a43d89 doc: update release-process.md (gruve-p)

Pull request description:

ACKs for top commit:
  achow101:
    ACK ac45a43d89

Tree-SHA512: eb49310e5645fcab47c6a268221b688d0ae4ffb1cc6d66fc097da1feb61aa894fb00065c20cd2413b775b598f8c955d48240608107776e4f1016703d52a81212
2022-04-02 09:43:24 +01:00
glozow
09f32cffa6 [docs] package feerate 2022-04-01 14:14:57 -04:00
Pavol Rusnak
7f6042849c
build, qt: use one patch per line in depends/packages/qt.mk 2022-04-01 17:02:46 +02:00
Hennadii Stepanov
826cbc470f
build, qt: drop fix_no_printer.patch
The removed patch is not required since switching Qt version from
5.12.11 to 5.15.2.
2022-04-01 16:56:41 +02:00
Pavol Rusnak
ef20add4c9
build, qt: bump Qt5 version to 5.15.3
Qt 5.15.3 release is a patch release made on the top of Qt 5.15.2. As a patch
release, Qt 5.15.3 does not add any new functionality but provides bug fixes
and other improvements.

https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/5.15.3/release-note.md

* dropped patches:
  - patches/qt/dont_use_avx_android_x86_64.patch
  - patches/qt/fix_bigsur_style.patch
* adjusted patches:
  - patches/qt/fix_android_jni_static.patch
  - patches/qt/fix_limits_header.patch
  - patches/qt/use_android_ndk23.patch

Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>
2022-04-01 16:54:38 +02:00
Jon Atack
6a02355ae9
Add and improve informational links in doc/cjdns.md 2022-04-01 16:11:14 +02:00
Jon Atack
19538dd41e
Add concrete steps in doc/cjdns.md to easily find a friend 2022-04-01 16:11:03 +02:00
fanquake
e8fc236da7
refactor: add missing std:: includes to threadnames.cpp 2022-04-01 14:49:13 +01:00
fanquake
87f3c04cc5
doc: remove incorrect mention of PR_GET_NAME
By removing the whole comment. These #include // For comments are near impossible
to maintain, pollute diffs, and generally don't add a lot of value.
2022-04-01 14:48:47 +01:00
fanquake
a7f0c37c2b
Merge bitcoin/bitcoin#24722: build: patch around qt duplicate symbol issue
a24ef27cfe build: patch around qt duplicate symbol issue (fanquake)

Pull request description:

  This is currently causing the same failure in two different PRs:

  #24391: build: stop overriding user autoconf flags
  ```bash
  duplicate symbol 'lcQpaFonts()' in:
      /tmp/cirrus-ci-build/depends/x86_64-apple-darwin/lib/libQt5ThemeSupport.a(qgenericunixthemes.o)
      /tmp/cirrus-ci-build/depends/x86_64-apple-darwin/lib/libQt5FontDatabaseSupport.a(qfontengine_coretext.o)
  ld: 1 duplicate symbol for architecture x86_64
  ```

  #21778: build: LLVM 14 & LLD based macOS toolchain
  ```bash
  x86_64-apple-darwin-ld: error: duplicate symbol: __Z10lcQpaFontsv
  >>> defined in /tmp/cirrus-ci-build/depends/x86_64-apple-darwin/lib/libQt5ThemeSupport.a(qgenericunixthemes.o)
  >>> defined in /tmp/cirrus-ci-build/depends/x86_64-apple-darwin/lib/libQt5FontDatabaseSupport.a(qfontengine_coretext.o)
  ```

  Guix Build (x86_64):
  ```bash
  82dd305045fa908d3a5909c8f7827e4ab607281b84706e0722d32e4c1c507cef  guix-build-a24ef27cfe6e/output/aarch64-linux-gnu/SHA256SUMS.part
  dadef04a291a1e371cac7eef0056948180fcad86ba77f9fc7b844b389461bbe1  guix-build-a24ef27cfe6e/output/aarch64-linux-gnu/bitcoin-a24ef27cfe6e-aarch64-linux-gnu-debug.tar.gz
  67842aef90a56be203388a6838b95d6f472d018fdbf399b12b9e0b577e101651  guix-build-a24ef27cfe6e/output/aarch64-linux-gnu/bitcoin-a24ef27cfe6e-aarch64-linux-gnu.tar.gz
  bef26de8cdd47853c1bca34e2cf002a9734394a7a3e027aba1b713738b4a3794  guix-build-a24ef27cfe6e/output/arm-linux-gnueabihf/SHA256SUMS.part
  5198227d1b7801032f358da348bc577a4d99273b0ecca50b83ad1b3d5d2f9d92  guix-build-a24ef27cfe6e/output/arm-linux-gnueabihf/bitcoin-a24ef27cfe6e-arm-linux-gnueabihf-debug.tar.gz
  97656b94a4b8bedd87a8a2d11e032d01f6cb22fa22f26e047deab9fc70886733  guix-build-a24ef27cfe6e/output/arm-linux-gnueabihf/bitcoin-a24ef27cfe6e-arm-linux-gnueabihf.tar.gz
  ea0b7fa4458d36c349d7b56813c75a1957bb904945265bd26f970a5b6f8a1817  guix-build-a24ef27cfe6e/output/arm64-apple-darwin/SHA256SUMS.part
  f7741dc1baf0e59713f42fef8b53e613fef62abbeef9ca5c8187b04b7a81054f  guix-build-a24ef27cfe6e/output/arm64-apple-darwin/bitcoin-a24ef27cfe6e-arm64-apple-darwin-unsigned.dmg
  7d27ebc99af2a35ee21736dc13adf76c5e646a3b5c00cf6a4bf56077b1ce0db4  guix-build-a24ef27cfe6e/output/arm64-apple-darwin/bitcoin-a24ef27cfe6e-arm64-apple-darwin-unsigned.tar.gz
  ae47461a03cff74d8e9e575c52148d1378ed883f41557cdf57f626532adfd60e  guix-build-a24ef27cfe6e/output/arm64-apple-darwin/bitcoin-a24ef27cfe6e-arm64-apple-darwin.tar.gz
  14f55113414fa633e4499cd83ebed9f1f4d9a36e0ab2ec550cbba159d00d1de8  guix-build-a24ef27cfe6e/output/dist-archive/bitcoin-a24ef27cfe6e.tar.gz
  a2834efc9b7ac1545e442f5b527b1a739713b399c3591cfa4ac07d30a858017f  guix-build-a24ef27cfe6e/output/powerpc64-linux-gnu/SHA256SUMS.part
  720120e641fe527dbe1f6979e3ed0222238f79a0cfac067838bc91739aa3f2d9  guix-build-a24ef27cfe6e/output/powerpc64-linux-gnu/bitcoin-a24ef27cfe6e-powerpc64-linux-gnu-debug.tar.gz
  e150946434a4f0b59b7dfdec65d02a2db4290b3e7f5eade1141905ef56b7587b  guix-build-a24ef27cfe6e/output/powerpc64-linux-gnu/bitcoin-a24ef27cfe6e-powerpc64-linux-gnu.tar.gz
  1255c0e22087042f2262acc3f7d043659a9a2cbd0767b65ba355f89bc4589915  guix-build-a24ef27cfe6e/output/powerpc64le-linux-gnu/SHA256SUMS.part
  43152dcfcff13d60c5f6fbfaed328643e6a18d43f1f0935742732080e142e40d  guix-build-a24ef27cfe6e/output/powerpc64le-linux-gnu/bitcoin-a24ef27cfe6e-powerpc64le-linux-gnu-debug.tar.gz
  41ec8e457921ecf4241209015441bcf6ced53e1430f5637aef0ed837de175dfb  guix-build-a24ef27cfe6e/output/powerpc64le-linux-gnu/bitcoin-a24ef27cfe6e-powerpc64le-linux-gnu.tar.gz
  5edeefb9479d14ff8b2f6c40390ae6a8995d42238be56c1edd2c462d065fb1e7  guix-build-a24ef27cfe6e/output/riscv64-linux-gnu/SHA256SUMS.part
  f037d4cc378da0c00b10f2960cb853377b2c0710aba4ed17c8f10ff9e8ab2cd8  guix-build-a24ef27cfe6e/output/riscv64-linux-gnu/bitcoin-a24ef27cfe6e-riscv64-linux-gnu-debug.tar.gz
  793d0f8710e300adb6aff2e289370fb71c60d5d844970161898c359f3dea0f2f  guix-build-a24ef27cfe6e/output/riscv64-linux-gnu/bitcoin-a24ef27cfe6e-riscv64-linux-gnu.tar.gz
  caeed20b8b301abdd32cb82c290ef77b283eb7b9f341254cdcf846f6d85365a9  guix-build-a24ef27cfe6e/output/x86_64-apple-darwin/SHA256SUMS.part
  5f02de0e7149b70b6fe612cc382e27c3e8691a2c8d05730604ea92410843d62c  guix-build-a24ef27cfe6e/output/x86_64-apple-darwin/bitcoin-a24ef27cfe6e-x86_64-apple-darwin-unsigned.dmg
  0f5a5041a12061e4e9f5fcfc803cd2a98636d964845a76713d83575caef5a4f6  guix-build-a24ef27cfe6e/output/x86_64-apple-darwin/bitcoin-a24ef27cfe6e-x86_64-apple-darwin-unsigned.tar.gz
  adc74b896eba9eb6b6ef5da0d909f2d3c529a23b55fff4c8af4465b277b46217  guix-build-a24ef27cfe6e/output/x86_64-apple-darwin/bitcoin-a24ef27cfe6e-x86_64-apple-darwin.tar.gz
  57a56059e4054e5becdbc36a6765f3b209535a78d4fa3f8a932d65e6b12d9c05  guix-build-a24ef27cfe6e/output/x86_64-linux-gnu/SHA256SUMS.part
  5c163f6c9936307b139fcc91e9a129e144c7961b44e11b245b0c9402b6b919a8  guix-build-a24ef27cfe6e/output/x86_64-linux-gnu/bitcoin-a24ef27cfe6e-x86_64-linux-gnu-debug.tar.gz
  7c1f9370fe8e26e3363198f3cd3f1d817662bc944f873138bcff997cda2d3c25  guix-build-a24ef27cfe6e/output/x86_64-linux-gnu/bitcoin-a24ef27cfe6e-x86_64-linux-gnu.tar.gz
  0708072d2c81ed5e7d54bfec350d8737931e13bd9291bdb72925c096be33f186  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/SHA256SUMS.part
  0b9b931fb4902a2779a193ca96fee01d1790644a004cd8898e24f008799d1a24  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/bitcoin-a24ef27cfe6e-win64-debug.zip
  d19c8cbb2b3359ebf0b66dada69f3a88eb41c0945c0e2b847bc2684f1c3d1985  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/bitcoin-a24ef27cfe6e-win64-setup-unsigned.exe
  5797bb51c61b2857c0912e205bc886a29bc537076da00bba4c3e27c479d23c9c  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/bitcoin-a24ef27cfe6e-win64-unsigned.tar.gz
  131d9aff0d9c72f1d27cac728b7fdd42f6e961214eec330fc38e1d644869b6f8  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/bitcoin-a24ef27cfe6e-win64.zip
  ```

  Guix Build (arm64):
  ```bash
  fef112513bde9d33b071efd0e1c3965b10103c7f8c2c66838b6e2f0556bb62b2  guix-build-a24ef27cfe6e/output/arm-linux-gnueabihf/SHA256SUMS.part
  71b8117e6558fc455235a172b65f882b1d2ee8bcebc456f97ceafaa109c683ee  guix-build-a24ef27cfe6e/output/arm-linux-gnueabihf/bitcoin-a24ef27cfe6e-arm-linux-gnueabihf-debug.tar.gz
  25df44270fc5495967509dd36455ad70179f30b9d2819f6a86a72bbabb7a0396  guix-build-a24ef27cfe6e/output/arm-linux-gnueabihf/bitcoin-a24ef27cfe6e-arm-linux-gnueabihf.tar.gz
  918ce9c69609f4cf07fdb2de699c54db4ad39dc0e79eeb9ea1b7ef7333bc7d5c  guix-build-a24ef27cfe6e/output/arm64-apple-darwin/SHA256SUMS.part
  63a6082ed74497c957309d72e517905ac1071c45527241c8d5d08327af00e3b4  guix-build-a24ef27cfe6e/output/arm64-apple-darwin/bitcoin-a24ef27cfe6e-arm64-apple-darwin-unsigned.dmg
  dce37e97b56c9612f7fed92c58a0f9ba58a7829db2dabcd6fea56935fa4aa7dd  guix-build-a24ef27cfe6e/output/arm64-apple-darwin/bitcoin-a24ef27cfe6e-arm64-apple-darwin-unsigned.tar.gz
  056aaa181c8d6f6ae6cf9e8c1d3d9344c31ed4b73fd41d7fe2b89761d2a8ca7e  guix-build-a24ef27cfe6e/output/arm64-apple-darwin/bitcoin-a24ef27cfe6e-arm64-apple-darwin.tar.gz
  14f55113414fa633e4499cd83ebed9f1f4d9a36e0ab2ec550cbba159d00d1de8  guix-build-a24ef27cfe6e/output/dist-archive/bitcoin-a24ef27cfe6e.tar.gz
  e16e0f4fedf8761f220098c1986c0d53f4f051362ba4ff44d89a350a62f3fd3a  guix-build-a24ef27cfe6e/output/powerpc64-linux-gnu/SHA256SUMS.part
  ae804d7a23bda9dc196200cd9d4caf0bd5d0611597a3e40da1dc2b27dee0effd  guix-build-a24ef27cfe6e/output/powerpc64-linux-gnu/bitcoin-a24ef27cfe6e-powerpc64-linux-gnu-debug.tar.gz
  82b274e6bbca6f5c2b70809b9aee7831dcefe6553011aabef804ca0a531c54d8  guix-build-a24ef27cfe6e/output/powerpc64-linux-gnu/bitcoin-a24ef27cfe6e-powerpc64-linux-gnu.tar.gz
  15031a61fbb3cc9495f274a85241aa4708aef3564a66faaaccfd35fcb51e5f3c  guix-build-a24ef27cfe6e/output/powerpc64le-linux-gnu/SHA256SUMS.part
  302041c21942edb8c0de8aa4af6105338c82ffead5ad57947c0fdd99f1f66ce7  guix-build-a24ef27cfe6e/output/powerpc64le-linux-gnu/bitcoin-a24ef27cfe6e-powerpc64le-linux-gnu-debug.tar.gz
  0f6b18d72109efd249abdae611d57b94a725863a4e8ab91b07b9199d9e5e3e86  guix-build-a24ef27cfe6e/output/powerpc64le-linux-gnu/bitcoin-a24ef27cfe6e-powerpc64le-linux-gnu.tar.gz
  d3e84416a8dd90427d028390357cb9fbf98aabc1e97210afdcb26ff7b7656b93  guix-build-a24ef27cfe6e/output/riscv64-linux-gnu/SHA256SUMS.part
  564e353892b5952889e62f946fe6045f4b348fa66712f7cb06262aca8bd7fbc8  guix-build-a24ef27cfe6e/output/riscv64-linux-gnu/bitcoin-a24ef27cfe6e-riscv64-linux-gnu-debug.tar.gz
  29fc019a6c96be6a6f9190e2661be9b4c4d2da7b530ee8815be145cdfa11902a  guix-build-a24ef27cfe6e/output/riscv64-linux-gnu/bitcoin-a24ef27cfe6e-riscv64-linux-gnu.tar.gz
  3a9e1d03eb6691138f193da68e355638d4db4646b3f674ea1645358cf55a49f2  guix-build-a24ef27cfe6e/output/x86_64-apple-darwin/SHA256SUMS.part
  5f02de0e7149b70b6fe612cc382e27c3e8691a2c8d05730604ea92410843d62c  guix-build-a24ef27cfe6e/output/x86_64-apple-darwin/bitcoin-a24ef27cfe6e-x86_64-apple-darwin-unsigned.dmg
  8923d5f2b08b64fd53796db4ef90a631b8b1c15908971ae334d7ba35437e0f19  guix-build-a24ef27cfe6e/output/x86_64-apple-darwin/bitcoin-a24ef27cfe6e-x86_64-apple-darwin-unsigned.tar.gz
  adc74b896eba9eb6b6ef5da0d909f2d3c529a23b55fff4c8af4465b277b46217  guix-build-a24ef27cfe6e/output/x86_64-apple-darwin/bitcoin-a24ef27cfe6e-x86_64-apple-darwin.tar.gz
  faff9251c2d7cdd4336ab23baa34b9c52083018d5302eb3e7aa807926ef6b2b8  guix-build-a24ef27cfe6e/output/x86_64-linux-gnu/SHA256SUMS.part
  92c72070e2c95aad4ad16434b7eadef7ebdbbaa1de262ad968d4fa8396e801c4  guix-build-a24ef27cfe6e/output/x86_64-linux-gnu/bitcoin-a24ef27cfe6e-x86_64-linux-gnu-debug.tar.gz
  259f6213e0ecb0f4d01d2c106142602e7772c1b09a15ff6cf395d2f9be571787  guix-build-a24ef27cfe6e/output/x86_64-linux-gnu/bitcoin-a24ef27cfe6e-x86_64-linux-gnu.tar.gz
  22cf628aad35d18206a87514a9833acc0af79572ecba847aa59c2b2dec1be799  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/SHA256SUMS.part
  29cbe82b770d6db0ab295ff0ac2614584de5fc5cc79dc4f8f8d9918f359795dc  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/bitcoin-a24ef27cfe6e-win64-debug.zip
  d19c8cbb2b3359ebf0b66dada69f3a88eb41c0945c0e2b847bc2684f1c3d1985  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/bitcoin-a24ef27cfe6e-win64-setup-unsigned.exe
  5797bb51c61b2857c0912e205bc886a29bc537076da00bba4c3e27c479d23c9c  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/bitcoin-a24ef27cfe6e-win64-unsigned.tar.gz
  56ac734a7007d5565bee6147bc4219e0750210dae8188b602f12d4243a437fac  guix-build-a24ef27cfe6e/output/x86_64-w64-mingw32/bitcoin-a24ef27cfe6e-win64.zip
  ```

ACKs for top commit:
  hebasto:
    ACK a24ef27cfe

Tree-SHA512: d835d3f2f8fc6ed2b855717068c88574b3d6d01d7db04214e554fe101280f8196708f8e792e62e8713ff4774a4a91399ca2cf4c27f3ea3c7605e9224f5722086
2022-04-01 14:40:05 +01:00
fanquake
d6fae988ef
guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64
This introduces a patch to our GCC (10.3.0) mingw-w64 compiler, in Guix, to make
it avoid using aligned vmov instructions. This works around a longstanding issue
in GCC, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412, which was recently
discovered to be causing issues, see #24726.

Note that distros like Debian are also patching around this issue, and that is
where this patch comes from. This would also explain why we haven't run into this
problem earlier, in development builds. See:
https://salsa.debian.org/mingw-w64-team/gcc-mingw-w64/-/blob/master/debian/patches/vmov-alignment.patch.

Fixes #24726.
Alternative to #24727.

See also:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939559
2022-04-01 13:24:22 +01:00
fanquake
3d70c05868
build: remove faketime unsetting and comments from configure.ac 2022-04-01 11:52:27 +01:00
laanwj
afac75f140
Merge bitcoin/bitcoin#24733: build: Fix "ERR: Unsigned tarballs do not exist"
7762c5683f build: Fix "ERR: Unsigned tarballs do not exist" (Hennadii Stepanov)

Pull request description:

  This was missed in 53dd6165b8 (bitcoin/bitcoin#24549).

ACKs for top commit:
  laanwj:
    ACK 7762c5683f
  fanquake:
    ACK 7762c5683f - this should have been a part of #24549.

Tree-SHA512: 526e4e6ee1463003059b9703030c5b0537445783c45a205024c9c9e3493da967733153a1dc80594fed15a336805c1cf14c8d13cd106186a7544f51d0d542f335
2022-04-01 11:36:24 +02:00
MarcoFalke
fa38b1c8bd
Remove buggy and confusing IncrementExtraNonce 2022-04-01 11:00:42 +02:00
Vasil Dimov
4d4dca43fc
test: add regression test for bitcoin-core/gui/issues/567 2022-04-01 10:32:07 +02:00
Hennadii Stepanov
7762c5683f
build: Fix "ERR: Unsigned tarballs do not exist" 2022-04-01 10:28:10 +02:00
MarcoFalke
7ab9fc32d6
Merge bitcoin/bitcoin#24724: test: fix incorrect named args in txpackage tests
bf77fea3c1 test: fix incorrect named args in txpackage tests (fanquake)

Pull request description:

  Final non-scripted-diff commit split from #24661.

  Could be tested with: `./autogen.sh && ./configure CC=clang-12 CXX=clang++-12 && make clean && bear make -j9 && ( cd ./src/ && run-clang-tidy-12 -j9 )`.

  Motivation:
  > Incorrect named args are source of bugs, like https://github.com/bitcoin/bitcoin/pull/22979.

  > To allow them being checked by clang-tidy, use a format it can understand.

ACKs for top commit:
  ajtowns:
    ACK bf77fea3c1

Tree-SHA512: a13bfb5fc70424b13fbeec7f164d7a0d3b72b27ebec11dfd4115b7782a0037f26e9349e06eef8a6b17b8f529e0c7f43ae37a9c252bde65706dd164704d207d5f
2022-04-01 08:44:14 +02:00
Anthony Towns
0add4dbadb util/check: avoid unused parameter warnings 2022-04-01 14:10:46 +10:00
fanquake
a24ef27cfe
build: patch around qt duplicate symbol issue
This is currently causing the same failure in two different PRs:
```bash
duplicate symbol 'lcQpaFonts()' in:
    /tmp/cirrus-ci-build/depends/x86_64-apple-darwin/lib/libQt5ThemeSupport.a(qgenericunixthemes.o)
    /tmp/cirrus-ci-build/depends/x86_64-apple-darwin/lib/libQt5FontDatabaseSupport.a(qfontengine_coretext.o)
ld: 1 duplicate symbol for architecture x86_64
```

```bash
x86_64-apple-darwin-ld: error: duplicate symbol: __Z10lcQpaFontsv
>>> defined in /tmp/cirrus-ci-build/depends/x86_64-apple-darwin/lib/libQt5ThemeSupport.a(qgenericunixthemes.o)
>>> defined in /tmp/cirrus-ci-build/depends/x86_64-apple-darwin/lib/libQt5FontDatabaseSupport.a(qfontengine_coretext.o)
```

Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>
2022-03-31 21:23:38 +01:00
Andrew Chow
1021e4cc68
Merge bitcoin/bitcoin#24602: fuzz: add target for coinselection algorithms
21520b9551 fuzz: add target for coinselection (Martin Zumsande)

Pull request description:

  This adds a fuzz target for the coinselection algorithms by creating random `OutputGroup`s and running all three coin selection algorithms for them.
  It does not fuzz higher-level wallet logic for selecting eligible coins (as in `SelectCoins()`), thought it probably would make sense to have a fuzz target for that too.

ACKs for top commit:
  achow101:
    ACK 21520b9551
  vasild:
    ACK 21520b9551

Tree-SHA512: c763003cf5ff5317f929d3d0b2f06fa739ae41dd642042d9a5c5c96e6cb9b349a6c7aeabc77bc2b846d12c8bcb60e07ee20a9f38539429c65723ab76aeee6b2e
2022-03-31 13:09:17 -04:00
Andrew Chow
b7d78e6244
Merge bitcoin/bitcoin#24711: wallet: Postpone wallet loading notification for encrypted wallets
0c12f0116c wallet: Postpone NotifyWalletLoaded() for encrypted wallets (Hennadii Stepanov)
aeee419c6a wallet, refactor: Add wallet::NotifyWalletLoaded() function (Hennadii Stepanov)

Pull request description:

  Fixes bitcoin-core/gui#571.

  `CWallet::Create()` notifies about wallet loading too early, that results the notification goes before `DescriptorScriptPubKeyMan`s were created and added to an encrypted wallet.

  And `interfaces::Wallet::taprootEnabled()` in ecf692b466/src/qt/receivecoinsdialog.cpp (L100-L102) erroneously returns `false` for just created encrypted descriptor wallets.

ACKs for top commit:
  Sjors:
    utACK 0c12f0116c
  achow101:
    ACK 0c12f0116c

Tree-SHA512: 2694bacd12748cd5f6c95d9d3bf8bcf4502ee67fecd8d057f33236b72069c61401b08f49deb013fc71c3f1e51ae16bdfd827ddcbc2a083d7044589be7a78982e
2022-03-31 12:43:14 -04:00
fanquake
bf77fea3c1
test: fix incorrect named args in txpackage tests 2022-03-31 16:34:33 +01:00
MarcoFalke
243197ba9c
Merge bitcoin/bitcoin#24721: doc: Use DecodeTxDoc helper
fa58427aae doc: Use DecodeTxDoc helper (MarcoFalke)

Pull request description:

ACKs for top commit:
  fanquake:
    ACK fa58427aae
  shaavan:
    ACK fa58427aae

Tree-SHA512: 58652f15f858822e4fceeba6967866a4866d2455f1547f4814dd4113409da16117616c5b62eb58a6bead5433a4d28c598809a0ff79b6f377d138cad3b2edb2d7
2022-03-31 15:56:05 +02:00
Vasil Dimov
3b82608dd1
options: add a comment for -listenonion and dedup a long expression
A followup to https://github.com/bitcoin-core/gui/pull/568

Co-authored-by: Jon Atack <jon@atack.com>
2022-03-31 15:29:38 +02:00
MarcoFalke
fa58427aae
doc: Use DecodeTxDoc helper
Can be reviewed with
--color-moved=dimmed-zebra --color-moved-ws=ignore-all-space
2022-03-31 11:46:20 +02:00
MarcoFalke
1a54c060b3
Merge bitcoin/bitcoin#24716: rpc: Fix documentation assertion for getrawtransaction
71038a151e rpc: Fix documentation assertion for `getrawtransaction` (laanwj)

Pull request description:

  When `getrawtransaction` is successfully used on a coinbase transaction, there is an assertion error. This is very unlikely but happens in the `interface_usdt_utxocache.py` test in #24358.

  This does the following:

  - Add missing "coinbase" documentation.

  - Synchronize documentation between `getrawtransaction` and  `decoderawtransaction`, the two users of `TxToUniv` that have detailed   documentation. `decodepsbt` and `getblock` also uses it but fortunately elides this block.

  - Change "vout[].amount" to `STR_AMOUNT` for consistency.

  - Add maintainer comment to keep the two places synchronized. It might  be possible to get smarter with deduplication, but there are some  extra fields that prevent the obvious way.

ACKs for top commit:
  jonatack:
    ACK 71038a151e

Tree-SHA512: 962236130455d805190ff9a5c971e4e25c17db35614a90ce340264ec953b0ad7fb814eb33ae430b5073955a8a350f72bdd67ba93e35f9c70e5175b836a767a35
2022-03-31 11:19:31 +02:00
MarcoFalke
c8ac7e6a65
Merge bitcoin/bitcoin#24698: test: -peerblockfilters without -blockfilterindex raises an error
d6bc2322ed test: -peerblockfilters without -blockfilterindex raises an error (brunoerg)

Pull request description:

  This PR adds test coverage for the following init error:
  2a3e8fb359/src/init.cpp (L850)

  Setting -peerblockfilters without -blockfilterindex should raise an error when initializing.

ACKs for top commit:
  ccdle12:
    Tested ACK d6bc2322ed

Tree-SHA512: e740c2ccde6bb1bb8381bb676a6d01bd5746cf9ce0c8dadd62067a6b9b380027bfe8b8cdeae9846a0ab18385f3dc5dff607fe5274cb55107d47470db00015fb2
2022-03-31 08:37:30 +02:00
MarcoFalke
e1e6a3386f
Merge bitcoin/bitcoin#24707: doc: Speed up functional test runs using ramdisk
17648493df doc: Speed up functional test runs using ramdisk (willcl-ark)

Pull request description:

  Using a ramdisk for the functional tests can give noticable speedups for developers and reviewers.

  Local testing with an 8GB ramdisk saw a full test run using `test/functional/test_runner.py --jobs=100 --cachedir=/mnt/tmp/cache --tmpdir=/mnt/tmp` reduced from ~280 seconds to ~99 seconds.

  Possible bikeshedding opportunity to be had over whether this might best fit into `doc/productivity.md`, but IMO more people will likely see it (and it will therefore be more useful) if it is here.

  It seems best to select `tmpfs` over `ramfs` as `ramfs` can grow dynamically (good) but cannot be limited in size and might cause the system to hang if you run out of ram (bad), whereas `tmpfs` is size-limited and will overflow into swap.

ACKs for top commit:
  josibake:
    ACK 17648493df
  jamesob:
    ACK 17648493df

Tree-SHA512: b8e0846d4558a7a33fbb7cd190e30c36182db36095e1c1feae8c10a12042cff9d97739964bd9211d8564231dc99b4be5eed806d12a1d11dfa908157d7f26cc67
2022-03-31 08:34:58 +02:00
MarcoFalke
a2e1590f67
Merge bitcoin/bitcoin#24673: refactor: followup of remove -deprecatedrpc=addresses flag
9563a645c2 refactor: add stdd:: includes to core_write (fanquake)
8b9efebb0a refactor: use named args when ScriptToUniv or TxToUniv are invoked (Michael Dietz)
22f25a6116 refactor: prefer snake case, TxToUniv arg hashBlock renamed block_hash (Michael Dietz)
828a094ecf refactor: merge ScriptPubKeyToUniv & ScriptToUniv into one function (Michael Dietz)

Pull request description:

  I've cherry-picked some of the commits out of #22924, and made minor changes (like fixing named args).

ACKs for top commit:
  MarcoFalke:
    re-ACK 9563a645c2 🕓

Tree-SHA512: 4f0e5b45c14cbf68b9e389bbe1211c125d95cbd3da5205b1cff6a4c44f15b15039ba2a5b25cd7e2580d9169404f1b7ff620d8a7e01f6112e3cb153ecfaef8916
2022-03-31 08:31:16 +02:00
MarcoFalke
d2b4355c58
Merge bitcoin/bitcoin#24715: build, test: Fix test logfile name
8b517fae7e build, refactor: Replace tabs with spaces (Hennadii Stepanov)
dc0774cbdf build, test: Fix test logfile name (Hennadii Stepanov)

Pull request description:

  Recently merged bitcoin/bitcoin#19385 was flawed as it tries to `cat` a non-existed logfile:
  - https://github.com/bitcoin/bitcoin/pull/19385#discussion_r835300701
  - https://github.com/bitcoin/bitcoin/pull/19385#issuecomment-1082748549

  Closes bitcoin/bitcoin#17224.

ACKs for top commit:
  luke-jr:
    utACK 8b517fae7e

Tree-SHA512: 6c6dab6d7d38b5e949f1159ddff8e431f26d7254157f8308d63383c0642154271107e384c77722b7cf77f0be204bd21d69f3a9e93a8d19cf48954ac673df6c7a
2022-03-31 08:27:15 +02:00
MarcoFalke
87dc1dc55f
Merge bitcoin/bitcoin#24714: util/check: Don't use a lambda for Assert/Assume
2ef47ba6c5 util/check: stop using lambda for Assert/Assume (Anthony Towns)
7c9fe25c16 wallet: move Assert() check into constructor (Anthony Towns)

Pull request description:

  Using a lambda creates a couple of odd namespacing issues, in particular making clang's thread safety analysis less helpful, and confusing gcc when calling member functions. Fix this by not using a lambda.

  Fixes #21596
  Fixes #24654

ACKs for top commit:
  MarcoFalke:
    ACK 2ef47ba6c5 🚢
  jonatack:
    Tested re-ACK 2ef47ba6c5

Tree-SHA512: 4bdbf3215f3d14472df0552362c5eebe8b7eea2d0928a8a41109edd4e0c5f95de6f8220eb2fee8506874e352c003907faf5ef344174795939306a618157b1bae
2022-03-31 08:18:30 +02:00