19:00:11 <wumpus> #startmeeting
19:00:11 <lightningbot> Meeting started Thu Apr 28 19:00:11 2016 UTC.  The chair is wumpus. Information about MeetBot at http://wiki.debian.org/MeetBot.
19:00:11 <lightningbot> Useful Commands: #action #agreed #help #info #idea #link #topic.
19:00:12 <gmaxwell> sipa: jonasschnelli wumpus morcos sdaftuar kanzure BlueMatt jtimon cfields luke-jr petertodd
19:00:29 <wumpus> proposed topics?
19:00:30 <sipa> mildly present
19:00:48 <kanzure> i propose follow-up from last week re: segwit code review, and new/upcoming tasks on that front
19:00:50 <morcos> i'm here for 10 mins
19:01:02 <kanzure> gmaxwell: thanks for the ping
19:01:03 <jonasschnelli> I have two very small topic proposals: wording for RBF, a request for creating/storing CI material
19:01:05 <gmaxwell> morcos: anything you want to talk about in 10 minutes.
19:01:10 <cfields> thanks, here
19:01:31 <morcos> just to encourage anyone who is going to review segwit to get on it!  :)
19:01:56 <wumpus> action items of last time were a) more code review of segwit 2) kanzure: look at test coverage output 3) (Luke) update GBT segwit stuff 4) (jtimon) tutorial to enable travis on your own repo 5) (cfields) travis changes requiring some downtime 6) merge #7920 when cfields says so
19:01:56 <kanzure> i have some segwit review notes but they are not precisely publicly consumable, can i get a volunteer to go through my notes? ideally not sipa :)
19:01:59 <gmaxwell> What is the status of the segwit BIPs? are they all consistent with the implementation right now?
19:02:27 <kanzure> wumpus: if i was supposed to look at test coverage output then i totally barfed on that, my bad-- i thought someone else took that.
19:02:29 <wumpus> last two items are done at least, transition to trusty and c++11 was succesful
19:02:50 <gmaxwell> \O/
19:02:52 <wumpus> kanzure: yes the name is who suggested it, Idon't know the context
19:02:52 <jtimon> wumpus: re 4 I thought cfields was going to write the tutorail, not me...I'm still on https://docs.travis-ci.com/user/getting-started/
19:02:58 <sdaftuar> kanzure: i'd be happy to review your notes
19:03:07 <kanzure> sdaftuar: cool, i will spam you with them
19:03:16 <cfields> jtimon: sorry, i got lost in the transition stuff
19:03:24 <wumpus> jtimon: oh maybe he's going to, but he had a lot on his hands
19:03:46 <jtimon> no hurry, just saying that I'm not working on that
19:04:01 <wumpus> okay :)
19:04:25 <wumpus> how is the review of segwit going?
19:04:34 <kanzure> sdaftuar: you have been spammed, thanks.
19:05:53 <morcos> wumpus: i'm feeling pretty good, but it's hard to tell who all has done deep commit by commit reviews
19:05:55 <kanzure> topic suggestion-- how to convince sipa to give more context about testing status of segwit
19:06:15 <sdaftuar> wumpus: i'm slowly making my way through
19:06:23 <wumpus> morcos: good to hear that you're making your way through
19:06:24 <kanzure> morcos: perhaps we should all post about our review status?
19:06:31 <cfields> tangentially: I've finally started working with the mining pools (with Kang's help translating) to ensure that their real-world environments. Aim is to get at least one segnet block mined by each pool. Happy to report that last night, BTCC's patched pool mined a few blocks. I'll be working with the others in the coming days
19:06:49 <morcos> cfields: oh thats great!
19:07:00 <cfields> *segnet block with witness txs, ofc
19:07:07 <kanzure> i have done a preliminary read of all the diffs for segwit but not commit-by-commit.... i have a number of places that i am considering investigating the test situation more closely but it's all probably dead-ends ( sdaftuar to advise ).
19:07:09 <morcos> time for someone else to get some segnet coins, i have too many
19:07:45 <sipa> i could list a few areas where i think mildly tricky things are done that warrant review
19:07:50 <kanzure> yes please.
19:08:50 <wumpus> #action (sipa) list a few areas where i think mildly tricky things are done that warrant review
19:08:55 <morcos> sipa: in particular the areas that are new for me (such as the wallet/signing code) are harder to be confident about.  i'd feel better knowing others are reviewing it as well
19:09:20 <sipa> good to know
19:09:32 <kanzure> signaturehash changes were specified by bip and one (trivial) review task is "confirm it follows the bip spec"
19:09:47 <morcos> sipa: harder b/c of me, not b/c the code is tricky looking
19:10:14 <instagibbs> morcos, maybe have people express review coverage with amount of certainty based on familiarity with the code
19:10:33 <sipa> the wallet signing code adds a refactor to stop working directly on scriotsigs, but initially work on just the stacks being pushed, and only convert them at the last step
19:10:52 <instagibbs> for me, review of wallet code was much easier than parsing the tree commitment stuff
19:11:02 <cfields> kanzure: some input from other projects (NicolasDorier *poke*) may be helpful there.
19:11:14 <morcos> instagibbs: i like that idea. not sure how easy it is to break up
19:11:37 <instagibbs> that said, I read *every* commit, and attempted best-effort understanding
19:11:37 <sipa> cfields: i'd like some comments from you ob luke-jr's proposed bip9 gbt changes
19:11:54 <morcos> ok got to run.  overall, yay for c++11, yay for segwit!
19:11:54 <cfields> sipa: ah, right. ack.
19:12:17 <gmaxwell> I was talking to nickler about doing consensus harness tests for verifying consensus consistence, e.g. between 0.13 and 0.12.x or pre-segwit. Maybe there will be something to report there in a week or so.
19:12:47 <jtimon> yeah, for example, I'm less familiar with the p2p and wallet parts, unfortunately I don't think I will be able to give a full utACK to #7910, but that of course shouldn't not stop it from being merged
19:13:21 <instagibbs> jtimon, which brings me to my point, aside from sipa and a few others, I doubt anyone can full utACK #7910
19:14:09 <kanzure> one of the things i'd like to investigate more closely is the set of tests that were written versus the expected set of tests... but hard to find all the corner cases.
19:14:59 <jtimon> instagibbs: good point, the PR touches many parts. I think I will focus on the consensus and relay policy parts and only utACK that
19:15:03 <sipa> also in general: what do people think of the strategy i've been following to not rebase/squash, but only add small patches and a changing merge commit at the end?
19:15:23 <kanzure> sipa: i think that is a good idea. it gives us time to ACK various older commits.
19:15:31 <instagibbs> jtimon, seems wise, people have to self-select what they feel competent to review
19:16:00 <sipa> at some point i'll squash and rebase in such a way that the resulting tree id identical to the old broken down branch
19:16:07 <jtimon> sipa: no strong opinion but it seems to partly defeat the point of having the commits separated in related sections (btw, I would separate p2p from consensus)
19:16:42 <kanzure> tree id similarity is a nice approach....
19:16:49 <kanzure> (git ls-tree and such)
19:17:18 <sipa> jtimon: i'll keep the section
19:17:25 <sdaftuar> sipa: some kind of warning before you squash/rebase would be helpful for me at least
19:17:44 <sdaftuar> sipa: but i like how you've done it so far
19:17:46 <kanzure> it would also be good if you could keep the original commits around on your git repo
19:17:52 <sipa> kanzure: of course
19:17:54 <jtimon> sipa: I see, so your question is more about squashing only once at the end, fine with me
19:17:59 <sipa> it needs to be verifiable
19:18:03 <kanzure> good, thanks.
19:18:25 <cfields> sipa: you can just push to a spare branch before final squash, then we can diff the two
19:18:42 <jonasschnelli> only add commits, once we have enough ACKS, hash the diff, rebase, check the hash of the diff and merge?
19:18:55 <sipa> jonasschnelli: indeed
19:20:06 <wumpus> ok next topic?
19:20:29 <wumpus> #topic status of the segwit BIPs
19:21:18 <wumpus> (gmaxwell)
19:21:29 <achow101> bip 144 needs to include the service bit stuff
19:22:23 <wumpus> everyone agree?
19:22:48 <sipa> ugh, that was never uodated
19:22:51 <sipa> yes, agree
19:23:15 <wumpus> #action bip 144 needs to include the service bit stuff
19:23:31 <gmaxwell> I suppose we should try to extract some feedback e.g. from roastbeef to reimplemented, who might be aware of other limitations in the spec.
19:23:50 <instagibbs> roasbeef*
19:24:00 <petertodd> just noticed someone has a python-bitcoinlib segwit branch too
19:24:07 <achow101> armory does as well
19:24:27 <petertodd> (sorry, just got in)
19:24:59 <wumpus> petertodd: just in time for the python-bitcoinlib segwit branch!
19:25:31 <petertodd> wumpus: ha yeah - no credit to me though :)
19:26:20 <wumpus> #action (gmaxwell) try to extract some feedback e.g. from roasbeef to reimplemented, who might be aware of other limitations in the spec
19:26:46 <sipa> we have gotten some comments from a few people and making small clarifications frequently
19:26:55 <sipa> including from tadge
19:27:29 <sipa> i'm surprised nobody commented about the service bit
19:27:52 <achow101> sipa: I think I brought it up a couple of weeks ago but didn't follow up on it
19:28:02 <sipa> achow101: sorry then!
19:29:22 <instagibbs> I can verify 141 and 143 match up
19:30:33 <wumpus> great
19:32:15 <sipa> small update: the reviewer that btcdrak contacted about ctaes wrote a report
19:32:33 <jonasschnelli> sipa: the tor lead dev?
19:32:51 <sipa> jonasschnelli: no, someone mathhew green recommemded
19:33:04 <sipa> he formally proved that some parts were correct, and analyzed the condtant timeness
19:33:07 <jonasschnelli> Okay. Good. What was the result?
19:33:09 <sipa> i can share the reoort
19:33:11 <petertodd> sipa: +1
19:33:16 <sipa> a+ :)
19:33:24 <jonasschnelli> sipa: Can you add it on your ctaes repository?
19:33:27 <wumpus> awesome!
19:33:49 <cfields> sipa: nice!
19:35:16 <sipa> any more topics? i'll be off otherwise
19:35:30 <jonasschnelli> RBF naming: should we flag/attribute RBF transaction as "replaceable" or should we attribute "current" non RBF transaction as "non-replacable"?
19:35:59 <petertodd> jonasschnelli: I'd lean towards replacable, as non-replacable implies we're promising something...
19:36:00 <jl2012> bringing segwit testing to testnet?
19:36:09 <gmaxwell> the former, I think. It's incorrect to say non-RBF is non-replacable; they're just somewhat less replacable.
19:36:55 <wumpus> agree with gmaxwell
19:37:13 <jonasschnelli> Okay. I agree as well. Will continue with this term.
19:37:16 <instagibbs> 'mempool-replaceable' ?
19:37:26 <petertodd> doublespends happen all the time, and only a small subset of them are opt-in RBF txs
19:37:42 <wumpus> but RBF transactions the user can easily replace themselves
19:37:42 <jl2012> sipa: are we ready to define the testnet BIP9 parameter for segwit?
19:37:47 <wumpus> that should be the focus imo
19:38:06 <wumpus> what the user can do with it
19:38:10 <jonasschnelli> instagibbs: I was also thinking about that. But does the normal bitcoin-qt user really knows what the mempool is?
19:38:13 <jtimon> "standard-policy-0.12-replaceable"?
19:38:26 <jonasschnelli> :}
19:38:40 <petertodd> jtimon: all the user's node knowns is they think it's replacable, so the 0.12 is implicit :)
19:38:40 <jonasschnelli> "standard-policy-0.12-BIP125-replaceable"
19:39:13 <wumpus> yes the 0.12 is implicit, the BIP125 part makes sense
19:39:34 <jtimon> yeah, 0.12 was kind of joking, the point is all tx are equally replaceable with a custom policy, the opt-in stuff is just about the standard policy
19:39:36 <petertodd> don't we already have a bip125-replacable or similar name used in the RPC anyway?
19:39:54 <jonasschnelli> petertodd: Yes. Listtransaction
19:40:03 <wumpus> yes entry.push_back(Pair("bip125-replaceable", rbfStatus));
19:40:21 <jtimon> ack bip125-replaceable
19:40:26 <jonasschnelli> Also I think someone should refactor the RBF BIP125 rules to the new rbf.cpp
19:40:31 <petertodd> jtimon: you can also replace txs by flooding mempools and getting them kicked out :)
19:40:40 <jonasschnelli> The bumpfee or feealter command could than re-check the validity
19:40:52 <jonasschnelli> s/re-check/pre-check
19:41:37 <jonasschnelli> In the GUI we should probably just use the term "replaceable".
19:42:22 <jtimon> then we have the same problem I think
19:42:24 <petertodd> jonasschnelli: "easily replacable"
19:42:27 <jtimon> opt-in-repleaceable ?
19:42:38 <petertodd> jonasschnelli: or heck, "trivially replacable"
19:42:45 <paveljanik> "updatable"?
19:43:03 <luke-jr> "replacement-requested"
19:43:04 <jonasschnelli> of "signs replicability"?
19:43:21 <petertodd> paveljanik: eh, changing the name to something other than replacable would invite trolling possibly
19:43:39 <paveljanik> replacability signalled ;-)
19:43:48 <jonasschnelli> replacability signalled: +1
19:43:57 <wumpus> yes I think whatever the name is it should contain 'replace', otherwise it's too confusing, introducing completely new terminology
19:44:02 <petertodd> wumpus: +1
19:44:06 <jonasschnelli> Indeed
19:44:12 <wumpus> replaceability signalled sounds good to me
19:44:22 <petertodd> sure, why not
19:44:36 <jonasschnelli> ack
19:44:38 <jtimon> "replace explicitly allowed"?
19:44:41 <sdaftuar> fee-replaceable ?
19:44:56 <jonasschnelli> sdaftuar: but it could also add a output
19:44:57 <jtimon> I mean, "replacability signalled" is good enough for me
19:45:28 <jonasschnelli> sdaftuar: but right. You mean replaceable by fee
19:45:37 <sdaftuar> yeah, you can replace it if you up the fee
19:45:58 <jonasschnelli> "fee-replacability signalled"?
19:46:06 <petertodd> jonasschnelli: which is tricky, because any low fee tx is in practice replacable by fee regardless of whether bip125 is used or not
19:46:20 <sdaftuar> but not by your wallet
19:46:38 <wumpus> I don't think the GUI term needs to be so specific - just make sure that the mouseover or other documentation explains it in more detail
19:46:45 <sdaftuar> +1
19:46:46 <jonasschnelli> Sure. But the term would also be for attributing incoming payment.
19:46:47 <petertodd> oh, key question: are we going to show this for all txs, or just txs sent by the user?
19:46:54 <paveljanik> sdaftuar, depends on the wallet IMO
19:46:56 <jtimon> petertodd: exactly, for all we know, miners could replace by hash alphabetic order rather than fees
19:47:01 <cfields> sdaftuar: i like that, but it describes the mechanics more than the intent.
19:47:07 <jonasschnelli> petertodd: incoming and outdoing.
19:47:25 <petertodd> jonasschnelli: see, if it was just outgoing, this conversation would be a lot simpler :)
19:48:11 <wumpus> replacability signalled is fine, let's move on
19:48:15 <jonasschnelli> incoming tx: "replacability signalled", create tx: "[ ] signall replacability"
19:48:18 <jonasschnelli> ack.
19:48:21 <jtimon> what was wrong about "Opted in to replacement" or something along those lines?
19:48:23 <wumpus> any other topics?
19:48:44 <jtimon> yeah, nv, "replacability signalled" does it
19:48:59 <jtimon> s/nv/never mind
19:49:01 <jonasschnelli> topic: another boring one, not sure if this is the right place: Someone contacted me that we should have a repository for Bitcoin Core logos and communication material.
19:49:11 <jonasschnelli> Somehow that made me think that Bitcoin Core has no clear logo/visual identity. Its not define what to use when, the font, the colors. Not sure if anyone from us cares about that though.
19:49:25 <paveljanik> press kit? ;-)
19:49:30 <petertodd> paveljanik: +1
19:49:44 <jonasschnelli> We probably don't care. But out userbase does a lot
19:49:46 <petertodd> paveljanik: or maybe call it "media kit" to shift focus to all media in general
19:49:50 <jonasschnelli> *our
19:49:59 <btcdrak> jonasschnelli: a press kit would be a good idea
19:50:06 <wumpus> we don't have that, but if anyone wants to make it and collect some things why not
19:50:54 <jonasschnelli> It would imply that we first need to create a identity, proper logo, font, etc. I'm not interested ATM, but happy if someone know someone who is.
19:50:56 <btcdrak> jonaschnelli: ideally we could store that in a "media kit" repository.
19:51:16 <jonasschnelli> I think it should be a subarea of the website
19:51:37 <petertodd> jonasschnelli: that makes sense
19:51:46 <wumpus> yes I think the question is more *who* than if, I don't think press kits are very usual for open source projects, but if someone wants to work on that I don't want to discourage
19:52:21 <jonasschnelli> Agree.
19:52:26 <sipa> wumpus: they're very common among altcoins though :p
19:52:27 <cfields> wumpus: for open-source, they almost always accompany a licensing policy
19:52:41 <cfields> (lived through that hell for a while in a past life)
19:52:50 <wumpus> cfields: yes, as for firefox
19:52:54 <cfields> right
19:53:38 <cfields> so for us, unless we wanted to police it, a press kit would be more of a collection of recommended images/text that we also use.
19:54:08 <cfields> i suppose that was the idea, though
19:54:08 <wumpus> right
19:54:10 <jonasschnelli> Yes. There is even no clear logo that Bitcoin Core uses/represents.
19:54:15 <warren> "\nExamples:\n"
19:54:17 <warren> + HelpExampleCli("getnewaddress", "")
19:54:21 <warren> + HelpExampleRpc("getnewaddress", "")
19:54:23 <warren> Any idea why this has both, and they're identical?
19:54:25 <jonasschnelli> warren: dumpprivatekey
19:54:39 <wumpus> warren: we're in the middle of a meeting
19:54:45 <warren> oops sorry!
19:54:45 <wumpus> well, at the end
19:55:20 <wumpus> I think we're done
19:55:34 <jonasschnelli> \รถ/
19:55:37 <wumpus> #endmeeting