Main topics

Segwit and backports

C++11 status

Short topics

Status of 0.12.1: RC2 has been released. Meanwhile there has been a 0.12.1 RC block mined last week. Normally we wait a week after the RC release before labeling it as final, but many like to release it sooner. 0.12.1 features BIP68, BIP112, BIP113 which will be deployed via the BIP9 softfork mechanism. (0.12.1 was released on 2016-04-15, the day after the meeting)

There’s independent review in progress for the constant time AES library, talked about in the 2016-03-24 meeting, from one of Matthew Green’s graduates, hopefully available in a couple of weeks.

Given the amount of new features planned for 0.13 and the timing of the meetup in Zürich the feature freeze and RC release cycle of 0.13 are pushed back a month. The revised schedule can be found here.

BlueMatt has implemented efficient block relay; related to a design gmaxwell has been circulating for a long while. He has code up, and gets about a 96% reduction in block bandwidth. The protocol needs a few tweaks but once in, it should be able to send the vast majority of blocks in 0.5 round-trip times (plus whatever awful overhead TCP adds), the rest will need a 1.5 round-trip time. He’s also been working on on other things that go further, though that work is mainly relevant to miners. The first part should get into a pull-request soon.

Segwit and backports

background

several developers are working on a soft fork to introduce segregated witness onto Bitcoin mainnet, with initial testing being performed on a special testnet. Segregated witness (segwit) allows transaction signature data to be stored outside of the data hashed to produce transaction identifiers, removing all known forms of third-party malleability, allowing full nodes to compile the current UTXO set without downloading all signatures, and laying the groundwork for fraud proofs that can allow lightweight (SPV) clients to help enforce more of the consensus rules. The segwit soft fork also allows miners to substitute 1 byte of block space with 4 bytes of segwit data, increasing transaction capacity for wallets that use segwit.

Sipa reports the segwit branch is currently on top of 0.12.1 and is close to making the PR to bitcoin. Morcos proposes to making the PR’s very quickly to both master and 0.12 and have a combined effort to review them at roughly the same time. Btcdrak agrees and notes there’s already been a lot of help, testing and review from downstream consumers.

Gmaxwell notes btcd, an alternative bitcoin full node implementation written in Go, has implemented the consensus changes for segwit and is interoperating with segnet4.

meeting conclusion

Sipa will pull request soon.

C++11 status

background

C++11 is an update of the C++ language. It offers new functionalities, an extended standard library, etc. Zerocash had to be written with some c++11 libraries and some IBLT simulation code was written in c++11, which they want to recycle for the eventual core commit.

The plan is to start using c++11 in 0.13.

The travis team has enabled caching, but only for flagged projects since it’s in a testing phase, so cfields has mailed to request the flag. He’s also been hacking on C++11 on his personal branch and says it’s clear there’s a need for a policy on what modernizations we’ll allow. People seem to revolve around the idea of starting with new C++11 code only, then boost-replacement, then refactors.

Wumpus has made a PR #7165 a while ago, which enables C++11 build and requires a C++11 compiler, this way we’ll get user reports.

meeting conclusion

Turn on C++11 in a week. New things can use it, but refactors can wait for 0.14.

Comic relief

19:00 cfields meeting? 19:00 wumpus I guess? 19:00 wumpus #startmeeting 19:00 morcos confidence inspiring wumpus 19:01 gmaxwell "If I have to." 19:01 btcdrak gavel wont be attending due to last week's beating. 19:03 Luke-Jr we should release 0.12.1 when 0.12.1 is observed to be released. 19:04 sipa Luke-Jr is the first member of the club containing Luke-Jr as first member 19:04 Luke-Jr that sounds lonely. 19:30 wumpus may work better with cfields' holiday too 19:30 cfields stupid inconvenient honeymoon... 19:30 sipa cfields: priorities! 19:37 BlueMatt when does cfields get back? 19:38 cfields BlueMatt: july4ish 19:39 cfields BlueMatt: if it turns out to be too problematic, i can revisit the dates. 19:39 BlueMatt cfields: lol, dont change honeymoon for us 19:39 wumpus cfields: no 19:39 morcos cfields: you better hope your fiance doesnt read these logs 19:58 sipa #shutdown -h now meeting 19:59 jonasschnelli sudo! 19:59 paveljanik jonasschnelli, no need for sudo once you have # ;-) 19:59 jonasschnelli nerds! oO 19:59 jtimon meeting? 20:00 gmaxwell jtimon: an hour ago. 20:00 jtimon oh... 20:00 phantomcircuit timezones strike again 20:00 jtimon well, read the logs I guess

Participants

Disclaimers

This summary was compiled without input from any of the participants in the discussion, so any errors are the fault of the summary author and not the discussion participants.