Node of Bitcoin network
Go to file
fanquake 03675b2ba3
Merge bitcoin/bitcoin#28328: guix: update time-machine
6cbedc3d9b guix: drop Windows broken-longjmp.patch (fanquake)
a1d4a42993 guix: drop NSIS patch now that we use 3.09 (fanquake)
1f6c75e82b guix: use cross-* keyword arguments (fanquake)
ea4387e1d0 guix: update time-machine to 160f78a4d92205df986ed9efcce7d3aac188cb24 (fanquake)
f1a4afb26f guix: update python-oscrypto to 1.3.0 (fanquake)
a8a7b75a01 guix: backport glibc patch to fix powerpc build (fanquake)

Pull request description:

  Bumps our Guix time-machine to [160f78a4d92205df986ed9efcce7d3aac188cb24](https://git.savannah.gnu.org/cgit/guix.git/commit/?id=160f78a4d92205df986ed9efcce7d3aac188cb24), which includes:

  GCC 10.3.0 -> 10.4.0
  Binutils 2.37 -> 2.38
  Automake 1.16.3 -> 1.16.5
  Coreutils 8.32 -> 9.1
  Findutils 4.8.2 -> 4.9.0
  Libtool 2.4.6 -> 2.4.7
  Linux Libre Headers 5.15.37 -> 5.15.127
  Git 2.36.0 -> 2.41.0
  Mingw-w64 8.0.0 -> 11.0.1
  NSIS 3.05 -> 3.09
  Xorriso 1.5.2 -> 1.5.6.pl02
  Python 3.9 -> 3.10.7
  Python-asn1crypto 1.4.0 -> 1.5.1

  GCC 12.3.0 becomes available. See #27897.
  LLVM 15.0.7 becomes available. Sadly not quite new enough for #21778.

  Split from #27897 for easier review, and to make it clear which changes are part of the time-machine bump vs changing to GCC 12.

  Guix Build:
  ```bash
  1e4aab93de36b47cbbfc5882d3d2a598e54a9c3604b3be1891ddac70cdc46547  guix-build-6cbedc3d9b67/output/aarch64-linux-gnu/SHA256SUMS.part
  278206bddf166ce507ab2ae4742ffbe6ec4256dbc6beee7e42ea040ec3d5b679  guix-build-6cbedc3d9b67/output/aarch64-linux-gnu/bitcoin-6cbedc3d9b67-aarch64-linux-gnu-debug.tar.gz
  261974753869297a480db24733f057aa58e33a0ce08754bea74984a00f8c376f  guix-build-6cbedc3d9b67/output/aarch64-linux-gnu/bitcoin-6cbedc3d9b67-aarch64-linux-gnu.tar.gz
  13bde7d903665f7699e2aa42a23ddc5ece9fab450437ae641d8ebfe6f6b084e1  guix-build-6cbedc3d9b67/output/arm-linux-gnueabihf/SHA256SUMS.part
  df951e4b23db34d1248f7ee9837594645acea8e2de1ed03b23ee002579a4c653  guix-build-6cbedc3d9b67/output/arm-linux-gnueabihf/bitcoin-6cbedc3d9b67-arm-linux-gnueabihf-debug.tar.gz
  5839bb71cca6aafa662f3c7e1c09393dce1c3fd13241726796bf3e681a0a34f0  guix-build-6cbedc3d9b67/output/arm-linux-gnueabihf/bitcoin-6cbedc3d9b67-arm-linux-gnueabihf.tar.gz
  637b1aa49db0cab1bc35064d068f1a5fdee5ab2ceba30b7f6d2c80bbf174c107  guix-build-6cbedc3d9b67/output/arm64-apple-darwin/SHA256SUMS.part
  be87c1ad41f06bcaa8c940fc8d881eca41c531d250ce114325b0e042e603c257  guix-build-6cbedc3d9b67/output/arm64-apple-darwin/bitcoin-6cbedc3d9b67-arm64-apple-darwin-unsigned.dmg
  632956e64d2baf9329ee086781b9268786f37b7c3c5f5232e2394ef2839d6d40  guix-build-6cbedc3d9b67/output/arm64-apple-darwin/bitcoin-6cbedc3d9b67-arm64-apple-darwin-unsigned.tar.gz
  1b23548a94aee5e03a8aec1e63938d9c8505005b87fa832ed112af60861c42a6  guix-build-6cbedc3d9b67/output/arm64-apple-darwin/bitcoin-6cbedc3d9b67-arm64-apple-darwin.tar.gz
  e4056df68bac0bdc0a54899af8f8178e78bfb7d170750f2296fd512d0c6c20db  guix-build-6cbedc3d9b67/output/dist-archive/bitcoin-6cbedc3d9b67.tar.gz
  9f149c82f30eed35e2c217dc57cab37745db27f0a3205e66b4535c247dffc500  guix-build-6cbedc3d9b67/output/powerpc64-linux-gnu/SHA256SUMS.part
  ef91dce0a735ce0633fd273d9e1d6599d74c18280a866c1d6b71c2c3434af9c3  guix-build-6cbedc3d9b67/output/powerpc64-linux-gnu/bitcoin-6cbedc3d9b67-powerpc64-linux-gnu-debug.tar.gz
  dfb60f13b9a7435f608f6d09585de37f789b055c77a0ee729e5723b0ef0550fe  guix-build-6cbedc3d9b67/output/powerpc64-linux-gnu/bitcoin-6cbedc3d9b67-powerpc64-linux-gnu.tar.gz
  0ae916b95617042330166e20a27399c14abbc20638ae3e5e5f9f812146d4a07e  guix-build-6cbedc3d9b67/output/powerpc64le-linux-gnu/SHA256SUMS.part
  180d9c29da1efd21fba6be8a670b6ed01d71a5e90991da3c543f6720273831a2  guix-build-6cbedc3d9b67/output/powerpc64le-linux-gnu/bitcoin-6cbedc3d9b67-powerpc64le-linux-gnu-debug.tar.gz
  9753408e3b4c10b19dba30ecb12ee2ae065c08e7c88be25599e1fdffe81bddbe  guix-build-6cbedc3d9b67/output/powerpc64le-linux-gnu/bitcoin-6cbedc3d9b67-powerpc64le-linux-gnu.tar.gz
  b1f09baec636a3bbaff1be629c95e75767c4ae3d96f0ebe63dcefb6fdb4953fb  guix-build-6cbedc3d9b67/output/riscv64-linux-gnu/SHA256SUMS.part
  09149283880c39c76f73ce83848f266f93777f6d9d389c2448ef0a9af9339b30  guix-build-6cbedc3d9b67/output/riscv64-linux-gnu/bitcoin-6cbedc3d9b67-riscv64-linux-gnu-debug.tar.gz
  788ce14925fec9861c78e16a57a1fd25d0f2ddf3f4e10f3c795bac534d339197  guix-build-6cbedc3d9b67/output/riscv64-linux-gnu/bitcoin-6cbedc3d9b67-riscv64-linux-gnu.tar.gz
  f357a0522c779d1953f37f4cab0160622cbf89ed3fe49cb5abea2509dba1d76f  guix-build-6cbedc3d9b67/output/x86_64-apple-darwin/SHA256SUMS.part
  be5c797a3e4dc969fd9116dede0cb27bda5180e653bb63d1ef3dbcc3de983bf0  guix-build-6cbedc3d9b67/output/x86_64-apple-darwin/bitcoin-6cbedc3d9b67-x86_64-apple-darwin-unsigned.dmg
  7364b2d0223b39debd386b521a5c5d1b26a446331f347b4d4e8fc58bf5b4439e  guix-build-6cbedc3d9b67/output/x86_64-apple-darwin/bitcoin-6cbedc3d9b67-x86_64-apple-darwin-unsigned.tar.gz
  7e873165d4ed785381b6e461a81a947814d14fdd41ae65bc82134c03b3ac0471  guix-build-6cbedc3d9b67/output/x86_64-apple-darwin/bitcoin-6cbedc3d9b67-x86_64-apple-darwin.tar.gz
  bf03ca15a885330ed0c91b3137dcc4ec1102570898360cc3f1073f03b792d729  guix-build-6cbedc3d9b67/output/x86_64-linux-gnu/SHA256SUMS.part
  0707b0e4d8529fc5f7567d1ff029b4b6fdf0bb46f1eb227d70c3aaa2018d65e5  guix-build-6cbedc3d9b67/output/x86_64-linux-gnu/bitcoin-6cbedc3d9b67-x86_64-linux-gnu-debug.tar.gz
  5f1e3713cf856f884d305ad12f43254be3871d9020cc514194fc0a6efd0867b1  guix-build-6cbedc3d9b67/output/x86_64-linux-gnu/bitcoin-6cbedc3d9b67-x86_64-linux-gnu.tar.gz
  c0d5e284903dbb55e4ad3d43db9b1e5d211c5259c3fae43bf4cddedea2e02c01  guix-build-6cbedc3d9b67/output/x86_64-w64-mingw32/SHA256SUMS.part
  d16f61c78b784b664d558a9a537e15da432ef9c18de0754dd7fd19682ab0569f  guix-build-6cbedc3d9b67/output/x86_64-w64-mingw32/bitcoin-6cbedc3d9b67-win64-debug.zip
  617010c1ac295bc692e0a4074acc19ebbc9561a01c8e5365428cfe61dc50fe3c  guix-build-6cbedc3d9b67/output/x86_64-w64-mingw32/bitcoin-6cbedc3d9b67-win64-setup-unsigned.exe
  a48961c49edf9f8988b902d874f47918f6716053be6c3bc263932834cb896510  guix-build-6cbedc3d9b67/output/x86_64-w64-mingw32/bitcoin-6cbedc3d9b67-win64-unsigned.tar.gz
  0cd95e8f919ac694dfd88a14fda37c57f0534cb890acc73f70aff71937fa1a8e  guix-build-6cbedc3d9b67/output/x86_64-w64-mingw32/bitcoin-6cbedc3d9b67-win64.zip
  ```

ACKs for top commit:
  TheCharlatan:
    ACK 6cbedc3d9b

Tree-SHA512: 48950535febab3865a8899b0ce590a7da6dbd0a89d2d2987a467da457e9ff0687d5afc65f952386fa562aa2a3fc6d8c85b1c221c73998d522076486a9fd845c4
2023-08-26 08:49:34 +01:00
.github Merge bitcoin/bitcoin#28322: ci: Use concurrency for pull requests only 2023-08-24 10:17:14 +01:00
.tx qt: Bump Transifex slug for 25.x 2023-02-27 14:01:14 +00:00
build_msvc Remove unused raw-pointer read helper from univalue 2023-07-27 14:24:52 +02:00
build-aux/m4 build: Bump minimum supported GCC to g++-9 2023-05-18 12:24:40 +02:00
ci Merge bitcoin/bitcoin#28330: ci: Add missing docker.io prefix for native tasks to CI_IMAGE_NAME_TAG 2023-08-24 10:56:03 +01:00
contrib guix: drop Windows broken-longjmp.patch 2023-08-24 09:21:50 +01:00
depends depends: xcb-proto 1.15.2 2023-07-18 11:27:24 +01:00
doc Merge bitcoin/bitcoin#28189: doc: diversify network outbounds release note 2023-08-09 19:11:51 +02:00
share depends: Bump MacOS minimum runtime requirement to 11.0 2023-06-22 15:28:47 +00:00
src Merge bitcoin/bitcoin#28287: rpc, test: add sendmsgtopeer rpc and a test for net-level deadlock situation 2023-08-24 17:34:57 -04:00
test Merge bitcoin/bitcoin#28287: rpc, test: add sendmsgtopeer rpc and a test for net-level deadlock situation 2023-08-24 17:34:57 -04:00
.cirrus.yml ci: Remove distro-name from task name 2023-08-18 18:06:04 +02:00
.editorconfig ci: Drop AppVeyor CI integration 2021-09-07 06:12:53 +03:00
.gitattributes Separate protocol versioning from clientversion 2014-10-29 00:24:40 -04:00
.gitignore refactor: cleanups post unsubtree'ing univalue 2022-06-15 12:56:44 +01:00
.python-version ci: Use DOCKER_BUILDKIT for lint image 2023-07-16 13:18:18 +02:00
.style.yapf Update .style.yapf 2023-06-01 23:35:10 +05:30
autogen.sh build: make sure we can overwrite config.{guess,sub} 2023-06-13 14:58:43 +02:00
configure.ac Merge bitcoin/bitcoin#28092: ci: document that -Wreturn-type has been fixed upstream (mingw-w64) 2023-07-27 11:21:49 +01:00
CONTRIBUTING.md doc: Explain squashing with merge commits 2022-05-24 08:17:41 +02:00
COPYING doc: Update license year range to 2023 2022-12-24 11:40:16 +01:00
INSTALL.md doc: Added hyperlink for doc/build 2021-09-09 19:53:12 +05:30
libbitcoinconsensus.pc.in build: remove libcrypto as internal dependency in libbitcoinconsensus.pc 2019-11-19 15:03:44 +01:00
Makefile.am build: package test_bitcoin in Windows installer 2022-08-09 09:13:23 +01:00
README.md doc: Explain Bitcoin Core in README.md 2022-05-10 07:49:09 +02:00
SECURITY.md doc: Add my key to SECURITY.md 2022-08-23 16:57:46 -04:00

Bitcoin Core integration/staging tree

https://bitcoincore.org

For an immediately usable, binary version of the Bitcoin Core software, see https://bitcoincore.org/en/download/.

What is Bitcoin Core?

Bitcoin Core connects to the Bitcoin peer-to-peer network to download and fully validate blocks and transactions. It also includes a wallet and graphical user interface, which can be optionally built.

Further information about Bitcoin Core is available in the doc folder.

License

Bitcoin Core is released under the terms of the MIT license. See COPYING for more information or see https://opensource.org/licenses/MIT.

Development Process

The master branch is regularly built (see doc/build-*.md for instructions) and tested, but it is not guaranteed to be completely stable. Tags are created regularly from release branches to indicate new official, stable release versions of Bitcoin Core.

The https://github.com/bitcoin-core/gui repository is used exclusively for the development of the GUI. Its master branch is identical in all monotree repositories. Release branches and tags do not exist, so please do not fork that repository unless it is for development reasons.

The contribution workflow is described in CONTRIBUTING.md and useful hints for developers can be found in doc/developer-notes.md.

Testing

Testing and code review is the bottleneck for development; we get more pull requests than we can review and test on short notice. Please be patient and help out by testing other people's pull requests, and remember this is a security-critical project where any mistake might cost people lots of money.

Automated Testing

Developers are strongly encouraged to write unit tests for new code, and to submit new unit tests for old code. Unit tests can be compiled and run (assuming they weren't disabled in configure) with: make check. Further details on running and extending unit tests can be found in /src/test/README.md.

There are also regression and integration tests, written in Python. These tests can be run (if the test dependencies are installed) with: test/functional/test_runner.py

The CI (Continuous Integration) systems make sure that every pull request is built for Windows, Linux, and macOS, and that unit/sanity tests are run automatically.

Manual Quality Assurance (QA) Testing

Changes should be tested by somebody other than the developer who wrote the code. This is especially important for large or high-risk changes. It is useful to add a test plan to the pull request description if testing the changes is not straightforward.

Translations

Changes to translations as well as new translations can be submitted to Bitcoin Core's Transifex page.

Translations are periodically pulled from Transifex and merged into the git repository. See the translation process for details on how this works.

Important: We do not accept translation changes as GitHub pull requests because the next pull from Transifex would automatically overwrite them again.