-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Merge Bitcoin 0.12.1 #897
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge Bitcoin 0.12.1 #897
Conversation
0.12.0 was released, prepare empty release notes for 0.12.1.
Github-Pull: bitcoin#7487 Rebased-From: 149641e c01f08d 5d1148c 1ecbb3b
Github-Pull: bitcoin#7606 Rebased-From: fa7a5c5
Github-Pull: bitcoin#7614 Rebased-From: 5c70a6d
- Fix doxygen comment for payTxFee - [doc] Fix markdown - Make sure LogPrintf strings are line-terminated Github-Pull: bitcoin#7617 Rebased-From: fa06ce0 fa97f95 fa26652
SequenceLocks functions are used to evaluate sequence lock times or heights per BIP 68. The majority of this code is copied from maaku in #6312 Further credit: btcdrak, sipa, NicolasDorier
it boggles the mind why these nits can't be delivered on a more timely basis
- Replace NOP3 with CHECKSEQUENCEVERIFY (BIP112) <nSequence> CHECKSEQUENCEVERIFY -> <nSequence> - Fails if txin.nSequence < nSequence, allowing funds of a txout to be locked for a number of blocks or a duration of time after its inclusion in a block. - Pull most of CheckLockTime() out into VerifyLockTime(), a local function that will be reused for CheckSequence() - Add bitwise AND operator to CScriptNum - Enable CHECKSEQUENCEVERIFY as a standard script verify flag - Transactions that fail CSV verification will be rejected from the mempool, making it easy to test the feature. However blocks containing "invalid" CSV-using transactions will still be accepted; this is *not* the soft-fork required to actually enable CSV for production use.
For the sake of a little repetition, make code more readable.
This if statement is a little obtuse and using braces here improves readability.
Obtain LockPoints to store in CTxMemPoolEntry and during a reorg, evaluate whether they are still valid and if not, recalculate them.
Inspired by former implementations by Eric Lombrozo and Rusty Russell, and based on code by Jorge Timon.
This commit introduces a way to gracefully bump the default transaction version in a two step process.
This RPC test will test both the activation mechanism of the first versionbits soft fork as well as testing many code branches of the consensus logic for BIP's 68, 112, and 113.
No longer consider coins which aren't in our mempool. Add test for regression in abandonconflict.py Github-Pull: bitcoin#7715 Rebased-From: 68d4282
Github-Pull: bitcoin#7739 Rebased-From: 263de3d
Conflicts: src/init.cpp Github-Merge: bitcoin#7605 Rebased-From: 5ecfa36
Set default to off This feature is removed entirely as of 0.13.0
c0fe2c9 Mark p2p alert system as deprecated. (BtcDrak)
New languages: - `af` Afrikaans - `es_AR` Spanish (Argentina) - `es_CO` Spanish (Colombia) - `ro` Romanian - `ta` Tamil - `uz@Latn` Uzbek in Latin script
Two-line patch to make it possible to shut down bitcoind cleanly during the initial ActivateBestChain. Fixes #6459 (among other complaints). To reproduce: - shutdown bitcoind - copy chainstate - start bitcoind - let the chain sync a bit - shutdown bitcoind - copy back old chainstate - start bitcoind - bitcoind will catch up with all blocks during Init() (the `boost::this_thread::interruption_point` / `ShutdownRequested()` dance is ugly, this should be refactored all over bitcoind at some point when moving from boost::threads to c++11 threads, but it works...) Github-Pull: bitcoin#7821 Rebased-From: 07398e8
Currently, we're keeping a timeout for each requested block, starting from when it is requested, with a correction factor for the number of blocks in the queue. That's unnecessarily complicated and inaccurate. As peers process block requests in order, we can make the timeout for each block start counting only when all previous ones have been received, and have a correction based on the number of peers, rather than the total number of blocks. Conflicts: src/main.cpp src/main.h Self check after the last peer is removed Github-Pull: bitcoin#7804 Rebased-From: 2d1d658 0e24bbf
Now that bitcoin#7804 fixed the timeout handling, reduce the block timeout from 20 minutes to 10 minutes. 20 minutes is overkill. Conflicts: src/main.h Github-Pull: bitcoin#7832 Rebased-From: 62b9a55
Before activation, such transactions might not be mined, so don't allow into the mempool. - Tests: move get_bip9_status to util.py - Test relay of version 2 transactions Github-Pull: bitcoin#7835 Rebased-From: e4ba9f6 5cb1d8a da5fdbb
de7c34c Add missing link to BIP113 (BtcDrak)
9dd1e5e to
087d8fa
Compare
.travis.yml
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Regarding to this https://docs.travis-ci.com/user/ci-environment/#Virtualization-environments
This will change ci environment from "CONTAINER-BASED" to be "STANDARD" which has no cache for public and longer boot time.
If you are going to follow bitcoin to use "TRUSTY BETA" environment, more changes would need to be done.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, that's the background of Bitcoin devs using this setup - need to dig further into this, i am not biased to a specific one though
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reverted to sudo: false as it broke the loopback test in proxy_test.py
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Switched to "TRUSTY BETA" environment now
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Back to precise - there are indeed more changes needed :)
0fe6e64 to
313d52a
Compare
Merging Bitcoin 0.12.1 into Dash 0.12.1.x
313d52a to
f4e4dd6
Compare
|
All tests are passing, looks good. |
|
utACK (not every single code line checked, though), will test later. |
|
@crowning- Can you have a look especially at the Debug Window? Bitcoin removed something there (openSSLVersion), while we added something, so the row ids may haven gotten "scrambled" :) |
| - Suhas Daftuar | ||
| - Wladimir J. van der Laan | ||
|
|
||
| As well as everyone that helped translating on [Transifex](https://www.transifex.com/projects/p/bitcoin/). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this update to our transifex ?
possibly off-topic , 😎
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
True that. We might even go further, as @UdjinM6 separated the release notes of Bitcoin and Dash to separate folders, so most if these changes should go to bitcoin folder while retaining our own release-notes.
|
In general it looks good imo:
|
|
I've got a utACK from @evan82 - will merge and deploy to testnet |
I'd like to get even with Bitcoin 0.12.1 codebase for our Dash 0.12.1 release.
The merge looks good, but maybe i broke some things (need to review the debugwindow.ui) first.
Beside from that it would be cool if @UdjinM6 and @evan82 could have a look if this breaks any consensus rules for Dash.
Thanks!