b1c0f97483f01f8836e5d83e98c881e44018cde5 [doc] Add permissions to the getpeerinfo help. (Amiti Uttarwar) 1fda7db64f0f30c23724f6db14f8a49d3975c716 rpc: Add missing description of vout in getrawtransaction help text (Ben Carman) ef7a155cf06bf54fff4ff9fda9b28207fcc9adfb qt: Align layout of checkboxes (Hennadii Stepanov) 35a10e4ebc9da916c470d2a9e5b68c3cfc3efd02 Add patch to make codesign_allocate compatible with Apple's (Pieter Wuille) e70ccb0bc4b695cd331aeda6d7aa405fa6d8f2e7 doc: update -externalip documentation in tor.md (Jon Atack) 2c8482d0a279d07a814eaaae231c90d3d2058e55 doc: add tor.md section on how to get tor info via bitcoind (Jon Atack) 0c1fa78af1c413c848359df76f4d55f819b9fad5 doc: update tor.md address examples from onion v2 to v3 (Jon Atack) 84e8d5467fcec3b7c8ce950cd7a3e7e7b24452a3 doc: warn that incoming conns are unlikely when not using default ports (Adam Jonas) e4440eb67b339fdacb2c1476f8f909a009c6a47f doc: Add warnings for http interfaces limitations (Fabian Jahr) 85dabd12494a0d82a8f5883cee1c1ff29fb81b27 Removed redundant git pull from appveyor config. (Aaron Clauson) 249d61a382014c15025fe63025ac5f46d4721262 Adjusted msvc compiler and linker settings to remove optimisations that are causing sporadic ABI issues on Visual Studio updates. (Aaron Clauson) e7b53d47218301790bfec44d50219561502922ad This change to the appveyor CI config for msvc builds reverses a change introduced in #19960. It re-applies a setting to inform vcpkg to only build release vesions of the dependencies rather than the default of debug and release. (Aaron Clauson) 8273ea3b8db1449b65cf369e541a1253c4490f45 Move signet onion seed from v2 to v3 (Sjors Provoost) Pull request description: The remaining backports to get rc4 out. Currently only waiting on the macOS build fix. ACKs for top commit: benthecarman: ACK b1c0f97483f01f8836e5d83e98c881e44018cde5 Sjors: ACK b1c0f97 Tree-SHA512: 53eaecd531ba461678917cb630d67f1e6bb737d64022abe971eaced6eca366c9ed593e44276bd9c7ad7b3aebe3850d2d29282eb310e10b547986d10fe77a8482
Bitcoin Core integration/staging tree
What is Bitcoin?
Bitcoin is an experimental digital currency that enables instant payments to anyone, anywhere in the world. Bitcoin uses peer-to-peer technology to operate with no central authority: managing transactions and issuing money are carried out collectively by the network. Bitcoin Core is the name of open source software which enables the use of this currency.
For more information, as well as an immediately usable, binary version of the Bitcoin Core software, see https://bitcoincore.org/en/download/, or read the original whitepaper.
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, that are run automatically on the build server.
These tests can be run (if the test dependencies are installed) with: test/functional/test_runner.py
The Travis CI system makes 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.
Translators should also subscribe to the mailing list.