No description
Find a file
Steven Roose fcec315daa
Merge #501: [0.17 MERGE] merge up to Core 8aa9badf5e
d670da8b3 fixup non-breaking merge error (Gregory Sanders)
60b7ef528 MERGE-FIX: mining_basic.py: Remove magic constants, make sure serialized header deserializes (Gregory Sanders)
faaac5caa RPCTypeCheck bip32derivs arg in walletcreatefunded (Gregory Sanders)
1f0c4282e QA: add basic walletcreatefunded optional arg test (Gregory Sanders)
1f18d7b59 walletcreatefundedpsbt: remove duplicate replaceable arg (Gregory Sanders)
2252ec500 Allow ConstructTransaction to not throw error with 0-input txn (Gregory Sanders)
d795c610d [qt] TransactionView: highlight replacement tx after fee bump (Sjors Provoost)
6d5fcad57 [gui] Make proxy icon from statusbar clickable (Cristian Mircea Messel)
de0b4fba2 depends: fix qt determinism (Cory Fields)
ea16c2d04 appveyor: fetch the latest port data (Chun Kuan Lee)
c4aecd1d8 Add risc-v 64-bit to gitian (Chun Kuan Lee)
96dda8b05 [depends] Add riscv qt depends support for cross compiling bitcoin-qt (Chun Kuan Lee)
241f8b5de Fix typo in feature_blocksdir.py log message (Alexander Leishman)
fa091b001 qa: Add tests for submitheader (MarcoFalke)
36b1b63f2 rpc: Expose ProcessNewBlockHeaders (MarcoFalke)
b2f23c415 [RPC] Remove getinfo deprecation warning (John Newbery)
4b3b85c59 refactor: use fs:: over boost::filesystem:: (fanquake)
8bd98a384 [trivial] Fix typo in CDiskBlockPos struct's ToString (Jon Layton)
1f6ff04e5 Use wildcard path in test_bitcoin.vcxproj (Chun Kuan Lee)
90cc69c0c ci: Add appveyor.yml to build on MSVC (Chun Kuan Lee)
4d0c7924d Make macro compatible with MSVC (Chun Kuan Lee)
5df6f089b More tests of signer checks (Andrew Chow)
7c8bffdc2 Test that a non-witness script as witness utxo is not signed (Andrew Chow)
8254e9950 Additional sanity checks in SignPSBTInput (Pieter Wuille)
c05712cb5 Only wipe wrong UTXO type data if overwritten by wallet (Pieter Wuille)
bd19cc78c Serialize non-witness utxo as a non-witness tx but always deserialize as witness (Andrew Chow)
43811e633 Fix PSBT deserialization of 0-input transactions (Andrew Chow)
a9cf5c962 Import CInv from correct module (Chun Kuan Lee)
265bd5088 Removes unsed `CBloomFilter` constructor. (251)
16bcc1b82 Remove unused dummy_tx variable from FillPSBT (Carl Dong)
8845c8aea tests: Replace usage of tostring() with tobytes() (Carl Dong)
fa5ce2738 ui: Compile boost:signals2 only once (MarcoFalke)
6ad0328f1 Don't assert(foo()) where foo has side effects (practicalswift)
ef7beaea6 Visual Studio build configuration for Bitcoin Core (Aaron Clauson)
d56b73f21 Remove redundant extern (practicalswift)
f04bb1361 Enable -Wredundant-decls (gcc) if available (practicalswift)
a9e90e500 Remove redundant redeclaration of rescanblockchain(...) in same scope (practicalswift)
49e56625a fix deprecation in bitcoin-util-test.py (Isidoro Ghezzi)

Pull request description:

  Half the "diff" here is from changes that 0.17 branch already had backported, and the rest are diffs of features we added touching small code changes.

  only 1323 commits to go

Tree-SHA512: 65c4d72d2edd949aed7cd0ff749f6ead81faff43f6600a296c309fed85633f6fe4624db111598b39a7757c95878455b7eff843989b081b5049fb2765810eb1fb
2019-01-24 18:31:14 +00:00
.github Make default issue text all comments to make issues more readable 2017-11-16 11:50:56 -05:00
.tx tx: Update transifex slug 016x→017x 2018-08-02 13:42:15 +02:00
build-aux/m4 Squashed 'src/secp256k1/' changes from 0b70241..53ad841 2018-12-14 16:06:00 -05:00
build_msvc Use wildcard path in test_bitcoin.vcxproj 2018-08-14 20:46:35 +00:00
contrib UPSTREAM MERGE BROKEN: Merge commit '8aa9badf5e' into e17 2019-01-23 16:48:22 -05:00
depends UPSTREAM MERGE BROKEN: Merge commit '8aa9badf5e' into e17 2019-01-23 16:48:22 -05:00
doc UPSTREAM MERGE: Merge commit '62d40f1983' into elements-0.17 2019-01-23 12:57:11 -05:00
share Bugfix: NSIS: Exclude Makefile* from docs 2018-08-22 15:29:22 +02:00
src fixup non-breaking merge error 2019-01-24 13:01:20 -05:00
test Merge branch 'elements-0.17' into merge_13968 2019-01-24 12:51:19 -05:00
.gitattributes Separate protocol versioning from clientversion 2014-10-29 00:24:40 -04:00
.gitignore Squashed 'src/secp256k1/' changes from 0b70241..53ad841 2018-12-14 16:06:00 -05:00
.travis.yml Squashed 'src/secp256k1/' changes from 53ad841..43dd1f4 2019-01-04 10:39:37 -05:00
appveyor.yml appveyor: fetch the latest port data 2018-08-17 17:01:46 +00:00
autogen.sh Add "export LC_ALL=C" to all shell scripts 2018-06-14 15:27:52 +02:00
configure.ac Merge branch 'elements-0.17' into merge_13968 2019-01-24 12:51:19 -05:00
CONTRIBUTING.md doc: add note to contributor docs about warranted PR's 2018-07-30 23:47:46 +09:00
COPYING [Trivial] Update license year range to 2018 2018-01-01 04:33:09 +09:00
INSTALL.md Update INSTALL landing redirection notice for build instructions. 2016-10-06 12:27:23 +13:00
libbitcoinconsensus.pc.in Unify package name to as few places as possible without major changes 2015-12-14 02:11:10 +00:00
Makefile.am Squashed 'src/secp256k1/' changes from 0b70241..53ad841 2018-12-14 16:06:00 -05:00
README.md doc: Adjust bitcoincore.org links 2018-07-22 10:32:38 -04:00

Bitcoin Core integration/staging tree

Build Status

https://bitcoincore.org

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 useable, 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 and tested, but is not guaranteed to be completely stable. Tags are created regularly to indicate new official, stable release versions of Bitcoin Core.

The contribution workflow is described in CONTRIBUTING.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.