{
  "founder": "wumpus",
  "channel": "#bitcoin-core-dev",
  "network": "freenode",
  "id": "18267be1a9ca4549b44e801e2d3cbe3a",
  "name": "#bitcoin-core-dev",
  "chair": "wumpus",
  "chairs": [
    "wumpus"
  ],
  "nicks": {
    "wumpus": 79,
    "lightningbot": 2,
    "achow101": 8,
    "meshcollider": 5,
    "cfields": 10,
    "jnewbery": 7,
    "kanzure": 1,
    "Chris_Stewart_5": 1,
    "petertodd": 1,
    "BlueMatt": 60,
    "jonasschnelli": 62,
    "luke-jr": 53,
    "gribble": 10,
    "gmaxwell": 48,
    "sipa": 56,
    "morcos": 15,
    "sdaftuar": 2,
    "promag": 2,
    "instagibbs": 4
  },
  "start_time": "2017-09-28T19:01:29+00:00",
  "end_time": "2017-09-28T20:03:23+00:00",
  "active": false,
  "original_topic": "Bitcoin Core development discussion and commit log | This is the channel for developing Bitcoin Core. Feel free to watch, but please take commentary and usage questions to #bitcoin | Channel logs: https://botbot.me/freenode/bitcoin-core-dev, http://www.erisian.com.au/bitcoin-core-dev/",
  "current_topic": "suggested topic: next Bitcoin Core meetup (jnewbery)",
  "messages": [
    {
      "id": "377dc822321c4d8aaacef93da7aa5830",
      "sender": "wumpus",
      "payload": "#startmeeting",
      "action": false,
      "timestamp": "2017-09-28T19:01:29+00:00"
    },
    {
      "id": "1ec0dc40d99f4d06accb5a08fb8943b1",
      "sender": "lightningbot",
      "payload": "Meeting started Thu Sep 28 19:01:29 2017 UTC.  The chair is wumpus. Information about MeetBot at http://wiki.debian.org/MeetBot.",
      "action": false,
      "timestamp": "2017-09-28T19:01:29+00:00"
    },
    {
      "id": "7a383a8a875444868cd4b70129ab2802",
      "sender": "lightningbot",
      "payload": "Useful Commands: #action #agreed #help #info #idea #link #topic.",
      "action": false,
      "timestamp": "2017-09-28T19:01:29+00:00"
    },
    {
      "id": "f11fb530c0404924a91c0979de2b1c78",
      "sender": "achow101",
      "payload": "hi",
      "action": false,
      "timestamp": "2017-09-28T19:01:35+00:00"
    },
    {
      "id": "5d520aff65ca4435ad7e9c0aec5ec9ca",
      "sender": "meshcollider",
      "payload": "Hello again",
      "action": false,
      "timestamp": "2017-09-28T19:01:36+00:00"
    },
    {
      "id": "ea61e064ccaa4570ab495959ed608bba",
      "sender": "wumpus",
      "payload": "#bitcoin-core-dev Meeting: wumpus sipa gmaxwell jonasschnelli morcos luke-jr btcdrak sdaftuar jtimon cfields petertodd kanzure bluematt instagibbs phantomcircuit codeshark michagogo marcofalke paveljanik NicolasDorier jl2012 achow101",
      "action": false,
      "timestamp": "2017-09-28T19:01:47+00:00"
    },
    {
      "id": "c29ca3f3d925417caa9e40752df29baf",
      "sender": "meshcollider",
      "payload": "lightningbot?",
      "action": false,
      "timestamp": "2017-09-28T19:01:48+00:00"
    },
    {
      "id": "60aea56936964962aa248efa536bc270",
      "sender": "cfields",
      "payload": "hi",
      "action": false,
      "timestamp": "2017-09-28T19:02:10+00:00"
    },
    {
      "id": "0beade3c490e4f43b82f3c3483642403",
      "sender": "wumpus",
      "payload": "luke-jr: yes, you could ignore DST for yourself and live in GMT time, the difficulty is shop opening times and such :)",
      "action": false,
      "timestamp": "2017-09-28T19:02:20+00:00"
    },
    {
      "id": "23c58f0ab99043a383557f4639b674b3",
      "sender": "jnewbery",
      "payload": "hi",
      "action": false,
      "timestamp": "2017-09-28T19:02:22+00:00"
    },
    {
      "id": "60ce0166fd43497d9e3414707c1b6291",
      "sender": "kanzure",
      "payload": "hi.",
      "action": false,
      "timestamp": "2017-09-28T19:02:23+00:00"
    },
    {
      "id": "754d9527886649f29dd854114bc708fe",
      "sender": "Chris_Stewart_5",
      "payload": "hello",
      "action": false,
      "timestamp": "2017-09-28T19:02:29+00:00"
    },
    {
      "id": "ef1c7d953f494bedb09d0e863ad254f3",
      "sender": "wumpus",
      "payload": "oh no the bot is missing",
      "action": false,
      "timestamp": "2017-09-28T19:02:32+00:00"
    },
    {
      "id": "cf2a7a51fce04f9293bbf5eb8b219a35",
      "sender": "wumpus",
      "payload": "#action find the bot",
      "action": false,
      "timestamp": "2017-09-28T19:02:38+00:00"
    },
    {
      "id": "dd669c14486a45a9aa9cafb84d0e6c21",
      "sender": "achow101",
      "payload": "is it?",
      "action": false,
      "timestamp": "2017-09-28T19:02:46+00:00"
    },
    {
      "id": "53c1f5da255449f9bb93754d2bb49655",
      "sender": "petertodd",
      "payload": "wumpus: one of the perils of replacing humans with machines",
      "action": false,
      "timestamp": "2017-09-28T19:02:58+00:00"
    },
    {
      "id": "2bbb2ad7ff764d578c8b1373ecbdfea0",
      "sender": "wumpus",
      "payload": "ehh.. no it isn't, sorry",
      "action": false,
      "timestamp": "2017-09-28T19:03:13+00:00"
    },
    {
      "id": "1d6d6d2e455c480eafb57f14845ffdd5",
      "sender": "wumpus",
      "payload": "petertodd: but it lives in the cloud! humans can't live in a cloud!",
      "action": false,
      "timestamp": "2017-09-28T19:03:33+00:00"
    },
    {
      "id": "2d322127ced8498c91248ebb19891a3b",
      "sender": "wumpus",
      "payload": "#topic High priority for review",
      "action": false,
      "timestamp": "2017-09-28T19:03:42+00:00"
    },
    {
      "id": "8a6826aa97154cd39a0c56a0b3949ed4",
      "sender": "BlueMatt",
      "payload": "'s is staying....",
      "action": true,
      "timestamp": "2017-09-28T19:04:00+00:00"
    },
    {
      "id": "519fee861e29440998ed3a8f8b080525",
      "sender": "BlueMatt",
      "payload": "again",
      "action": false,
      "timestamp": "2017-09-28T19:04:01+00:00"
    },
    {
      "id": "9fa958c937604bdeb0aba7d38f72cc06",
      "sender": "BlueMatt",
      "payload": "10663 got merged",
      "action": false,
      "timestamp": "2017-09-28T19:04:22+00:00"
    },
    {
      "id": "71d3fa65eea9411ea9bf7d15a315e33f",
      "sender": "BlueMatt",
      "payload": "same with 10871",
      "action": false,
      "timestamp": "2017-09-28T19:04:25+00:00"
    },
    {
      "id": "ce0172fddb434bd9a2cd8c920f294a53",
      "sender": "jonasschnelli",
      "payload": "hi",
      "action": false,
      "timestamp": "2017-09-28T19:04:44+00:00"
    },
    {
      "id": "3d78ce42927d454eb306c3230e9ddb21",
      "sender": "wumpus",
      "payload": "yes, finally",
      "action": false,
      "timestamp": "2017-09-28T19:04:45+00:00"
    },
    {
      "id": "eec3f8f3ec1141ac8e64524db65bdc43",
      "sender": "BlueMatt",
      "payload": "=D",
      "action": false,
      "timestamp": "2017-09-28T19:04:57+00:00"
    },
    {
      "id": "701bcd1d20414f37a52e294f39a0fc3c",
      "sender": "wumpus",
      "payload": "BlueMatt: yours has wallet in the name, that seems to put a curse on it with regard to reviewers",
      "action": false,
      "timestamp": "2017-09-28T19:05:19+00:00"
    },
    {
      "id": "780c52599a9845edb52d853fa5129ae2",
      "sender": "luke-jr",
      "payload": "XD",
      "action": false,
      "timestamp": "2017-09-28T19:05:31+00:00"
    },
    {
      "id": "fe102de5b0474bb68538a60853d6421a",
      "sender": "jonasschnelli",
      "payload": "Maybe someone can review #10387 (in high prio), ideally cfields",
      "action": false,
      "timestamp": "2017-09-28T19:05:33+00:00"
    },
    {
      "id": "3c866fba61a4423dab9398e00833f428",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/10387 | Implement BIP159, define and signal NODE_NETWORK_LIMITED (pruned peers) by jonasschnelli \u00c3\u0082\u00c2\u00b7 Pull Request #10387 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:05:35+00:00"
    },
    {
      "id": "33538ec3e890476691ef5e5abb4b434b",
      "sender": "jonasschnelli",
      "payload": "Would be great to have this in 0.16",
      "action": false,
      "timestamp": "2017-09-28T19:05:45+00:00"
    },
    {
      "id": "b584c23b2d194471821c617e0d374f6f",
      "sender": "wumpus",
      "payload": "which reminds me",
      "action": false,
      "timestamp": "2017-09-28T19:05:55+00:00"
    },
    {
      "id": "f5d7bb0a439640a7ad4ad47f4cb32220",
      "sender": "cfields",
      "payload": "jonasschnelli: will do asap",
      "action": false,
      "timestamp": "2017-09-28T19:05:57+00:00"
    },
    {
      "id": "cff98685afc84905bfe7f51d871a5be1",
      "sender": "wumpus",
      "payload": "#topic put up 0.16 release schedule",
      "action": false,
      "timestamp": "2017-09-28T19:06:01+00:00"
    },
    {
      "id": "b2f24261843c4fb093ff693978963a6a",
      "sender": "jonasschnelli",
      "payload": "cfields: thanks!",
      "action": false,
      "timestamp": "2017-09-28T19:06:04+00:00"
    },
    {
      "id": "214e294df002423285b0c695a1ecc7e0",
      "sender": "BlueMatt",
      "payload": "wumpus: yea, I think so...I havent been pushing it cause folks want 0.15.1 first, but afterwards I really want that to go in asap, cause I really want to have it in early in 0.16 so it simmers for months",
      "action": false,
      "timestamp": "2017-09-28T19:06:11+00:00"
    },
    {
      "id": "95a23b3fd0ab44068fc94a16706f9221",
      "sender": "wumpus",
      "payload": "10387 is already in \"high priority for review\"",
      "action": false,
      "timestamp": "2017-09-28T19:06:40+00:00"
    },
    {
      "id": "c1bc310958c94e11b0deaae08c4d9028",
      "sender": "jonasschnelli",
      "payload": "Yes",
      "action": false,
      "timestamp": "2017-09-28T19:06:45+00:00"
    },
    {
      "id": "2c98c73af9c34dd28b1822c5f5d41075",
      "sender": "wumpus",
      "payload": "BlueMatt: seems it has had quite some review though",
      "action": false,
      "timestamp": "2017-09-28T19:06:49+00:00"
    },
    {
      "id": "410cbab43ee94254bb7f4858112572c2",
      "sender": "jonasschnelli",
      "payload": "Just no reviews. :)",
      "action": false,
      "timestamp": "2017-09-28T19:06:52+00:00"
    },
    {
      "id": "de9aec9e4e844b118b2648a78b7446b2",
      "sender": "BlueMatt",
      "payload": "#11089 needs to get removed from high priority, it needs major rebase",
      "action": false,
      "timestamp": "2017-09-28T19:06:58+00:00"
    },
    {
      "id": "66429f5b866b4a46b54c7782336f8c04",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/11089 | Enable various p2sh-p2wpkh functionality by luke-jr \u00c3\u0082\u00c2\u00b7 Pull Request #11089 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:07:00+00:00"
    },
    {
      "id": "7e0c8a6ccca641a2bd752e5e58cfbb72",
      "sender": "achow101",
      "payload": "#10637 for high prio review?",
      "action": false,
      "timestamp": "2017-09-28T19:07:02+00:00"
    },
    {
      "id": "8fe2d21d698f42599a5839c913bdc1a2",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/10637 | Coin Selection with Murchs algorithm by achow101 \u00c3\u0082\u00c2\u00b7 Pull Request #10637 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:07:05+00:00"
    },
    {
      "id": "8cdec4e21ee14bfe9e14af8229285e7c",
      "sender": "wumpus",
      "payload": "BlueMatt: ok",
      "action": false,
      "timestamp": "2017-09-28T19:07:17+00:00"
    },
    {
      "id": "46f06b16fd8e4df693e44fcb39ec4885",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: Oh, I'm surprised that patch is so large, I was kinda hoping to see it widely backported so pruned nodes on older branches could see it advertised.",
      "action": false,
      "timestamp": "2017-09-28T19:07:22+00:00"
    },
    {
      "id": "334f52b24f9e465884484c5a5b91dd4b",
      "sender": "jonasschnelli",
      "payload": "Maybe next to the release schedule for 0.16, ... what do we want in 0.16?",
      "action": false,
      "timestamp": "2017-09-28T19:07:26+00:00"
    },
    {
      "id": "d9e0e7dbb7e44072a34f10bb629ad1c5",
      "sender": "sipa",
      "payload": "most of 11089's functionality is included in #11403",
      "action": false,
      "timestamp": "2017-09-28T19:07:37+00:00"
    },
    {
      "id": "d966af68710f43aa8637fe9a52fa1d40",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/11403 | SegWit wallet support by sipa \u00c3\u0082\u00c2\u00b7 Pull Request #11403 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:07:38+00:00"
    },
    {
      "id": "9295a0ffabbb423eaa12ff582a51c375",
      "sender": "jonasschnelli",
      "payload": "gmaxwell: I'm happy if you see a way how to reduce it",
      "action": false,
      "timestamp": "2017-09-28T19:07:44+00:00"
    },
    {
      "id": "21aa10b0b1a14d4398481ff94df0798a",
      "sender": "jonasschnelli",
      "payload": "Or split it",
      "action": false,
      "timestamp": "2017-09-28T19:07:47+00:00"
    },
    {
      "id": "beedf39a6e2343bea31ac9df8cf9dc3f",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: yea, will look. Sorry, didn't see it until now.",
      "action": false,
      "timestamp": "2017-09-28T19:08:07+00:00"
    },
    {
      "id": "9a4c7f9aa38b4d308ecb2c78e42ee1c4",
      "sender": "wumpus",
      "payload": "11089 removed for now",
      "action": false,
      "timestamp": "2017-09-28T19:08:12+00:00"
    },
    {
      "id": "c75772f27e9f463c9bbd64f91a250936",
      "sender": "jonasschnelli",
      "payload": "Although +264 \u00c3\u00a2\u00c2\u0088\u00c2\u009213 shouldn't be too large",
      "action": false,
      "timestamp": "2017-09-28T19:08:13+00:00"
    },
    {
      "id": "edcd416379884d6eade162b234a2e1f5",
      "sender": "jonasschnelli",
      "payload": "(incl. new test)",
      "action": false,
      "timestamp": "2017-09-28T19:08:27+00:00"
    },
    {
      "id": "0bf58d4ab48b468c9521e15f829f1e92",
      "sender": "morcos",
      "payload": "oh man i feel like i'm buried under PR's to review ...   maybe i'd make some progress if you could review via tweet",
      "action": false,
      "timestamp": "2017-09-28T19:08:54+00:00"
    },
    {
      "id": "024b8c83269c4fb9bc67bbfd22fab6c2",
      "sender": "jonasschnelli",
      "payload": "heh",
      "action": false,
      "timestamp": "2017-09-28T19:09:02+00:00"
    },
    {
      "id": "7db842f587fc4d938ad91f068becc211",
      "sender": "luke-jr",
      "payload": "would be nice to have GUI multiwallet in 0.16, but #10615 is stuck on desires for refactoring :/",
      "action": false,
      "timestamp": "2017-09-28T19:09:18+00:00"
    },
    {
      "id": "d667534dcab246de95caec9e9e4926e8",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/10615 | RPC: Allow rpcauth configs to specify a 4th parameter naming a specific wallet (multiwallet RPC support) by luke-jr \u00c3\u0082\u00c2\u00b7 Pull Request #10615 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:09:19+00:00"
    },
    {
      "id": "4da8f2516ba24d82abc1123556489c66",
      "sender": "BlueMatt",
      "payload": "luke-jr: I think it is unacceptable to add so many more ifdef WALLET in bitcoin server",
      "action": false,
      "timestamp": "2017-09-28T19:09:40+00:00"
    },
    {
      "id": "1ce83ef1f3a4405d8291b513bcb60957",
      "sender": "jonasschnelli",
      "payload": "luke-jr: can you remove the rpcauth part? It's not necesdarry and contraversial.",
      "action": false,
      "timestamp": "2017-09-28T19:09:45+00:00"
    },
    {
      "id": "2ea85bf66ff7487e91ea150afb8320c8",
      "sender": "wumpus",
      "payload": "this is tagged for 0.16 right now (both issues and PRs):https://github.com/bitcoin/bitcoin/milestones/0.16.0",
      "action": false,
      "timestamp": "2017-09-28T19:09:48+00:00"
    },
    {
      "id": "667a57c468c54d4abc81746606e2a272",
      "sender": "BlueMatt",
      "payload": "(and believe it would be easy to remove them)",
      "action": false,
      "timestamp": "2017-09-28T19:09:48+00:00"
    },
    {
      "id": "6439d59061854eff930294761a937388",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: I don't understand why the flags set would change at runtime?  Setting the flag is a property of the node's configuration.",
      "action": false,
      "timestamp": "2017-09-28T19:09:52+00:00"
    },
    {
      "id": "af0655aa1ce24b28a5c635cf07077b30",
      "sender": "sipa",
      "payload": "morcos: well there is @BitcoinMerges...",
      "action": false,
      "timestamp": "2017-09-28T19:10:03+00:00"
    },
    {
      "id": "0c4c2f85f2d5476190df64af6fe3080d",
      "sender": "gmaxwell",
      "payload": "(and in our case we don't have any configuration where it shouldn't be set, AFAIK)",
      "action": false,
      "timestamp": "2017-09-28T19:10:08+00:00"
    },
    {
      "id": "780dd10f626841ab84aaf439050a51c0",
      "sender": "wumpus",
      "payload": "morcos: well at least we can fit twice as much code in a tweet now...",
      "action": false,
      "timestamp": "2017-09-28T19:10:23+00:00"
    },
    {
      "id": "9c04c0e7176a432fa61ebc78a11d8958",
      "sender": "morcos",
      "payload": "sipa: that's brilliant, at least it would constantly remind me",
      "action": false,
      "timestamp": "2017-09-28T19:10:24+00:00"
    },
    {
      "id": "61ff822511e4420698eae82dce80ee38",
      "sender": "jonasschnelli",
      "payload": "gmaxwell: maybe no longer required with a single NODE_NETWORK_LIMITED bit",
      "action": false,
      "timestamp": "2017-09-28T19:10:29+00:00"
    },
    {
      "id": "0205953590344e47a99ed1d86136fad7",
      "sender": "luke-jr",
      "payload": "jonasschnelli: I think that's possible, but I don't see why it should be controversial, and doesn't help with BlueMatt's refactoring wants",
      "action": false,
      "timestamp": "2017-09-28T19:10:32+00:00"
    },
    {
      "id": "4aff225a052e40c586b972ef18f1150d",
      "sender": "jonasschnelli",
      "payload": "luke-jr: it's a fact that it is contraversial",
      "action": false,
      "timestamp": "2017-09-28T19:10:49+00:00"
    },
    {
      "id": "a6d5e10d272d4b90a21f08c7bc7a11b8",
      "sender": "jonasschnelli",
      "payload": "* controversial",
      "action": false,
      "timestamp": "2017-09-28T19:10:57+00:00"
    },
    {
      "id": "c3495324ae5d4667ab03f64eeeaddafb",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: ah! right, so this code was originally based on the more complex spec.",
      "action": false,
      "timestamp": "2017-09-28T19:11:05+00:00"
    },
    {
      "id": "8f4a0f994e724b7d84929882d1e7c8c2",
      "sender": "BlueMatt",
      "payload": "luke-jr: I dont think I'm the only one who objects to ifdef wallet's being added to http server cpp files........",
      "action": false,
      "timestamp": "2017-09-28T19:11:11+00:00"
    },
    {
      "id": "6da755add5584d97a5783a587884ca69",
      "sender": "jonasschnelli",
      "payload": "gmaxwell: thanks for pointing out... i'll review it and check if I can remove the runtime switching",
      "action": false,
      "timestamp": "2017-09-28T19:11:31+00:00"
    },
    {
      "id": "f5bbeffec6c842568b8d7df039e9b889",
      "sender": "wumpus",
      "payload": "BlueMatt: no, you aren't, that's obviously wrong, we've been working hard to remove those as they cause circular refs :(",
      "action": false,
      "timestamp": "2017-09-28T19:11:34+00:00"
    },
    {
      "id": "c154771c7315453b8d422bc6834f460f",
      "sender": "jnewbery",
      "payload": "luke-jr: cherry-picking the non-controversial commits from your PR gives us the GUI functionality without adding a bunch of server->wallet dependencies or the rpcauth stuff",
      "action": false,
      "timestamp": "2017-09-28T19:11:49+00:00"
    },
    {
      "id": "20c533a5f1e6467daf5e65336d8db5ad",
      "sender": "luke-jr",
      "payload": "jnewbery: I don't see how that's possible",
      "action": false,
      "timestamp": "2017-09-28T19:12:15+00:00"
    },
    {
      "id": "85a8810a60fa46a1842c7aa93f0196e2",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: my completely ignorant (only barely read the patch) thought is that there should be one commit which should be a nearly one line change to just set the bit everywhere.. then another commit or two for the relay, then another for selection.  And the first commit we'd backport, maybe the second, but not the third.",
      "action": false,
      "timestamp": "2017-09-28T19:12:20+00:00"
    },
    {
      "id": "f8edee39dc43425e85cf65759cf7481b",
      "sender": "luke-jr",
      "payload": "BlueMatt: so httprpc calls a callback for \"populate JSONRequest with metadata\" which is only used for this one thing?",
      "action": false,
      "timestamp": "2017-09-28T19:12:45+00:00"
    },
    {
      "id": "fbf2415b55e64924a566beaa8d098c9c",
      "sender": "luke-jr",
      "payload": "BlueMatt: or what did you have in mind?",
      "action": false,
      "timestamp": "2017-09-28T19:12:50+00:00"
    },
    {
      "id": "90fb8a509f94459a812c4fa8a712a702",
      "sender": "wumpus",
      "payload": "see e.g. #7965. We want to go toward 0 wallet references in bitcoin_server",
      "action": false,
      "timestamp": "2017-09-28T19:12:53+00:00"
    },
    {
      "id": "114a433b28f4472c9c29b4af30218f00",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/7965 | Remaining instances of ENABLE_WALLET in `libbitcoin_server.a` \u00c3\u0082\u00c2\u00b7 Issue #7965 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:12:54+00:00"
    },
    {
      "id": "2f8d3f8ca7484fe2b8604289adb76ed6",
      "sender": "jonasschnelli",
      "payload": "gmaxwell: I thought it is basically like that (factored in a bit more commits though)",
      "action": false,
      "timestamp": "2017-09-28T19:13:14+00:00"
    },
    {
      "id": "4fa2072db87d4e059eb6a8040d9e4645",
      "sender": "achow101",
      "payload": "wumpus: we can check getinfo off that list now",
      "action": false,
      "timestamp": "2017-09-28T19:13:17+00:00"
    },
    {
      "id": "f3e53343d7844a95a34945763b5c1d75",
      "sender": "wumpus",
      "payload": "achow101: thanks good point",
      "action": false,
      "timestamp": "2017-09-28T19:13:25+00:00"
    },
    {
      "id": "7fa5271b6c304c94bc31bb405bd560c6",
      "sender": "BlueMatt",
      "payload": "luke-jr: yes, that would be sufficient",
      "action": false,
      "timestamp": "2017-09-28T19:13:30+00:00"
    },
    {
      "id": "a8ed27956ac94b8d9361d76e7c3559c7",
      "sender": "BlueMatt",
      "payload": "imo",
      "action": false,
      "timestamp": "2017-09-28T19:13:33+00:00"
    },
    {
      "id": "ad6fa1509c144a52810601ec28acc912",
      "sender": "luke-jr",
      "payload": "ok, I'll try that",
      "action": false,
      "timestamp": "2017-09-28T19:13:54+00:00"
    },
    {
      "id": "5b7b4d58b5414894bccd1b850ca0f37e",
      "sender": "wumpus",
      "payload": "achow101: updated",
      "action": false,
      "timestamp": "2017-09-28T19:13:58+00:00"
    },
    {
      "id": "36b5bb03c9ee4d918d4a590b27d42c0e",
      "sender": "BlueMatt",
      "payload": "luke-jr: you may wish to seek concept acks on the *idea* of rpc auth-based multiwallet",
      "action": false,
      "timestamp": "2017-09-28T19:14:15+00:00"
    },
    {
      "id": "25b62c538a084156b2520f17eb7b90b2",
      "sender": "BlueMatt",
      "payload": "I'm ok with it, but I dont know if others are",
      "action": false,
      "timestamp": "2017-09-28T19:14:20+00:00"
    },
    {
      "id": "815e6d2abcb54d8d99645ff1337c23bd",
      "sender": "luke-jr",
      "payload": "#action refactor #10615 for a \"populate JSONRequest\" callback, and separate out rpcauth stuff",
      "action": false,
      "timestamp": "2017-09-28T19:14:28+00:00"
    },
    {
      "id": "62df94d785bc4099a54015fa2bbecd2a",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/10615 | RPC: Allow rpcauth configs to specify a 4th parameter naming a specific wallet (multiwallet RPC support) by luke-jr \u00c3\u0082\u00c2\u00b7 Pull Request #10615 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:14:29+00:00"
    },
    {
      "id": "682287de8e8542c198db695f42bd996c",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: ah, right though the setter isn't simple like I expected but now I understand why.",
      "action": false,
      "timestamp": "2017-09-28T19:14:54+00:00"
    },
    {
      "id": "8850e55d6c4c46de9a421888ff4e9125",
      "sender": "jonasschnelli",
      "payload": "BlueMatt , luke-jr : the rpcauth multiwallet is completely orthogonal to GUI multiwallet",
      "action": false,
      "timestamp": "2017-09-28T19:14:54+00:00"
    },
    {
      "id": "88fdecb6efa24eb0a2707d7532beba33",
      "sender": "gmaxwell",
      "payload": "and that should be fixable.",
      "action": false,
      "timestamp": "2017-09-28T19:14:59+00:00"
    },
    {
      "id": "77581da72b1e416f8d28c276acc995c1",
      "sender": "wumpus",
      "payload": "jonasschnelli: indeed, let's not confound things unnecessarily",
      "action": false,
      "timestamp": "2017-09-28T19:15:23+00:00"
    },
    {
      "id": "891541085b694d268d473d9c60abea72",
      "sender": "luke-jr",
      "payload": "jonasschnelli: yeah, I'll split it off",
      "action": false,
      "timestamp": "2017-09-28T19:15:34+00:00"
    },
    {
      "id": "9e2b0ef8e4674032a1e7812bef7e6a82",
      "sender": "jonasschnelli",
      "payload": "yes. It's smells like smuggling in controversial stuff packed in a nice feature",
      "action": false,
      "timestamp": "2017-09-28T19:15:48+00:00"
    },
    {
      "id": "cdd99dd095234de0a3835c9ceefb8b51",
      "sender": "gmaxwell",
      "payload": "Yes, please split those things up. (I say this as a supporter of rpcauth based multiwallet control)",
      "action": false,
      "timestamp": "2017-09-28T19:15:55+00:00"
    },
    {
      "id": "545d90de430d48ce9ef8f68a776fbd72",
      "sender": "sipa",
      "payload": "i'm ok with rpcauth-based multiwallet, but i think it may be a longer-term thing; it would probably require some review of security of non-wallet RPCs (should a wallet-specific rpc user be allowed to call stop?)",
      "action": false,
      "timestamp": "2017-09-28T19:16:04+00:00"
    },
    {
      "id": "3209370d2dd34bab8377a8c3115c1ce6",
      "sender": "luke-jr",
      "payload": "sipa: well, it wasn't meant to be a security thing, but maybe we can consider that",
      "action": false,
      "timestamp": "2017-09-28T19:16:25+00:00"
    },
    {
      "id": "f645c0afc4ee46e2a0426efbdfce89c0",
      "sender": "sipa",
      "payload": "yeah, just saying - i think multiwallet gui can be done much faster",
      "action": false,
      "timestamp": "2017-09-28T19:16:44+00:00"
    },
    {
      "id": "61f58270166f41b9b1f3c225329aac40",
      "sender": "luke-jr",
      "payload": "right",
      "action": false,
      "timestamp": "2017-09-28T19:16:47+00:00"
    },
    {
      "id": "f40638e619044163a6b538dddff1dc85",
      "sender": "BlueMatt",
      "payload": "I was assuming rpcauth-based multiwallet would only allow you to call wallet functions",
      "action": false,
      "timestamp": "2017-09-28T19:16:48+00:00"
    },
    {
      "id": "20f5ae29cab3407480d481730aed7d09",
      "sender": "sipa",
      "payload": "everyone clearly wants it",
      "action": false,
      "timestamp": "2017-09-28T19:16:52+00:00"
    },
    {
      "id": "ab96f5dcf8d14e0e8e0132d1fe254ba1",
      "sender": "gmaxwell",
      "payload": "sipa: main interest I have in it is anti-footgun. Can't spend accidentally what you don't have access too.",
      "action": false,
      "timestamp": "2017-09-28T19:16:56+00:00"
    },
    {
      "id": "bf9e9fd400b146a4b8127a76bf5d84c5",
      "sender": "jonasschnelli",
      "payload": "rpcauth opens up the usecase and suddenly users think Core is a 100k multiuser wallet system",
      "action": false,
      "timestamp": "2017-09-28T19:16:58+00:00"
    },
    {
      "id": "dea3f05e325449c8ba3f61e0da44652e",
      "sender": "jonasschnelli",
      "payload": "we just need to be sure we want this",
      "action": false,
      "timestamp": "2017-09-28T19:17:08+00:00"
    },
    {
      "id": "cc3bcb1d22284768be5d5d703e23c045",
      "sender": "wumpus",
      "payload": "yes, multiwallet GUI isn't controversial in any way",
      "action": false,
      "timestamp": "2017-09-28T19:17:08+00:00"
    },
    {
      "id": "9df133dea2f04822b5494cc8776dccf9",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: Then we can simply say it isn't. I don't think that is a good argument.",
      "action": false,
      "timestamp": "2017-09-28T19:17:18+00:00"
    },
    {
      "id": "7f09c6e8052c46be8e1f845990df9bf2",
      "sender": "morcos",
      "payload": "yeah lets pleast punt on rpcauth for now... seems better use of our time to move towards splitting off wallet",
      "action": false,
      "timestamp": "2017-09-28T19:17:38+00:00"
    },
    {
      "id": "33ab7cf8098442b38f1644f33d925d22",
      "sender": "wumpus",
      "payload": "the gui even has some scaffolding already to be able to handle multiple wallets IIRC, of course it's not complete",
      "action": false,
      "timestamp": "2017-09-28T19:17:41+00:00"
    },
    {
      "id": "4e57fb66d8774befb7621a1a5483a048",
      "sender": "achow101",
      "payload": "gmaxwell: people will probably still use it that way though",
      "action": false,
      "timestamp": "2017-09-28T19:17:43+00:00"
    },
    {
      "id": "626b2abfabeb4e68b12c16cb3f132c0c",
      "sender": "luke-jr",
      "payload": "leaving `stop` etc accessible makes it clearly not that IMO",
      "action": false,
      "timestamp": "2017-09-28T19:17:46+00:00"
    },
    {
      "id": "9e6f7d05cffc412f955ff1b2508e69a2",
      "sender": "jonasschnelli",
      "payload": "We may end up in the same situation like the accounts... i'm not against it. But we should discuss it wisely and not related to GUI multiwallet",
      "action": false,
      "timestamp": "2017-09-28T19:17:48+00:00"
    },
    {
      "id": "3076f5f546d74511980075c408d0950d",
      "sender": "wumpus",
      "payload": "morcos: +1, I'm kind of sick of discussing that tbh",
      "action": false,
      "timestamp": "2017-09-28T19:18:01+00:00"
    },
    {
      "id": "be269dfd74fa4afdb1254573690c34de",
      "sender": "jonasschnelli",
      "payload": "`/rpcauth (ack)",
      "action": false,
      "timestamp": "2017-09-28T19:18:12+00:00"
    },
    {
      "id": "5b57eb6a7e8e443095b5e374d435c581",
      "sender": "luke-jr",
      "payload": "wumpus: #11383 is there already, just needs to get past this initial stuff",
      "action": false,
      "timestamp": "2017-09-28T19:18:17+00:00"
    },
    {
      "id": "3fddb2cd3431437e9ee30312d40c0a9e",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/11383 | Basic Multiwallet GUI support by luke-jr \u00c3\u0082\u00c2\u00b7 Pull Request #11383 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:18:19+00:00"
    },
    {
      "id": "6242b57c87a44e3682c9d9f358cb7f9d",
      "sender": "wumpus",
      "payload": "luke-jr: yes",
      "action": false,
      "timestamp": "2017-09-28T19:18:25+00:00"
    },
    {
      "id": "d472e8f70e4942e3bd2acbcb141edf92",
      "sender": "wumpus",
      "payload": "so anything that needs to be discussed with regard to  GUI multiwallet?",
      "action": false,
      "timestamp": "2017-09-28T19:18:38+00:00"
    },
    {
      "id": "06d198bbf1d044e88cb0c6d8bc9fc64a",
      "sender": "luke-jr",
      "payload": "someone mentioned that they think the current design is too unobservable",
      "action": false,
      "timestamp": "2017-09-28T19:19:04+00:00"
    },
    {
      "id": "bf799279592c425e906802ebf4148ace",
      "sender": "wumpus",
      "payload": "if not, any other topics?",
      "action": false,
      "timestamp": "2017-09-28T19:19:05+00:00"
    },
    {
      "id": "dcc5b6b2ff0e412b817a2d4ad9f41cb6",
      "sender": "jonasschnelli",
      "payload": "the UI itself is not clear yeat. But luke-jr first approach is something we could have in 0.16",
      "action": false,
      "timestamp": "2017-09-28T19:19:14+00:00"
    },
    {
      "id": "e3f48cc3fbd54c15ac9e80cb3821fd8b",
      "sender": "BlueMatt",
      "payload": "yes, next topic?",
      "action": false,
      "timestamp": "2017-09-28T19:19:25+00:00"
    },
    {
      "id": "c3a8dd7bd3554f4caba2175a6a416fd2",
      "sender": "jonasschnelli",
      "payload": "topic: I wanted to ask if there are opinions against the concept of RPC long poll",
      "action": false,
      "timestamp": "2017-09-28T19:19:40+00:00"
    },
    {
      "id": "e69474e673d34a678c3e029adce3375c",
      "sender": "jonasschnelli",
      "payload": "I'd like to work on this for 0.16",
      "action": false,
      "timestamp": "2017-09-28T19:19:47+00:00"
    },
    {
      "id": "c9b511e5c5c8413296d49930b57f1f3d",
      "sender": "wumpus",
      "payload": "#topic RPC long poll",
      "action": false,
      "timestamp": "2017-09-28T19:19:48+00:00"
    },
    {
      "id": "f35dbaa8f0e0471296277bd3681e4237",
      "sender": "sipa",
      "payload": "i'd like to bring up segwit wallet support",
      "action": false,
      "timestamp": "2017-09-28T19:19:49+00:00"
    },
    {
      "id": "d9ff296e88344c28aa4d581ebb12d7f3",
      "sender": "luke-jr",
      "payload": "proposed topic: would be nice to get some code review on https://github.com/BitcoinHardfork/bitcoin/pulls PRs before November in case we need it (other PRs welcome)",
      "action": false,
      "timestamp": "2017-09-28T19:20:00+00:00"
    },
    {
      "id": "c74f4dabb94441aaa087c2b6c90fb7d1",
      "sender": "BlueMatt",
      "payload": "jonasschnelli: please give a tl;dr; of what it is :)",
      "action": false,
      "timestamp": "2017-09-28T19:20:10+00:00"
    },
    {
      "id": "08547e52fb8f48869242e3421b21f1c2",
      "sender": "wumpus",
      "payload": "jonasschnelli: no, no problems with it, I think it's superior to other ways we've considered",
      "action": false,
      "timestamp": "2017-09-28T19:20:12+00:00"
    },
    {
      "id": "4aa24c59824a44bcbffe51d92724f8d4",
      "sender": "jonasschnelli",
      "payload": "RPC long poll would allow similar push benefits then ZMQ offers but without any dependencies",
      "action": false,
      "timestamp": "2017-09-28T19:20:14+00:00"
    },
    {
      "id": "24c772f2ec714a1da597fbd8c17f1381",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: long poll for what specifically?",
      "action": false,
      "timestamp": "2017-09-28T19:20:29+00:00"
    },
    {
      "id": "e1414cb55fd24ae0b5d1c523f5af837a",
      "sender": "luke-jr",
      "payload": "jonasschnelli: we already have RPC long poll",
      "action": false,
      "timestamp": "2017-09-28T19:20:36+00:00"
    },
    {
      "id": "b45d328a7ab84aba9348e5a2c2f864cf",
      "sender": "wumpus",
      "payload": "for any of the current notifications",
      "action": false,
      "timestamp": "2017-09-28T19:20:37+00:00"
    },
    {
      "id": "485e8f40a67b421fb76046fe7fe0017e",
      "sender": "wumpus",
      "payload": "blocks, transactions, wallet events",
      "action": false,
      "timestamp": "2017-09-28T19:20:43+00:00"
    },
    {
      "id": "80fe3174a4d14315b40db9054cfeb286",
      "sender": "gmaxwell",
      "payload": "you mean like blocks and transactions...",
      "action": false,
      "timestamp": "2017-09-28T19:20:47+00:00"
    },
    {
      "id": "31c952ef04ec4ff5ae2437beacb775af",
      "sender": "jonasschnelli",
      "payload": "you open an http connection (with a timeout of lets say 60seconds)... once a new block/tx pops in, you get it back and reopen the timeout 60 channel",
      "action": false,
      "timestamp": "2017-09-28T19:20:48+00:00"
    },
    {
      "id": "8d17e0885dec4b889306f0d9a83e5ab6",
      "sender": "gmaxwell",
      "payload": "ah.",
      "action": false,
      "timestamp": "2017-09-28T19:20:49+00:00"
    },
    {
      "id": "e914f5e0592441d18b70e8eaea20c782",
      "sender": "jonasschnelli",
      "payload": "It's how Cellphone OSes do push notifications",
      "action": false,
      "timestamp": "2017-09-28T19:20:58+00:00"
    },
    {
      "id": "c314620e330e45c7b751a8a5113a0fa5",
      "sender": "wumpus",
      "payload": "yes. the stuff that now requires launching an external notify script",
      "action": false,
      "timestamp": "2017-09-28T19:21:00+00:00"
    },
    {
      "id": "b56d0c22ea084362a62997200fba9f3c",
      "sender": "jonasschnelli",
      "payload": "very nat friendlly",
      "action": false,
      "timestamp": "2017-09-28T19:21:03+00:00"
    },
    {
      "id": "0493f0400150480dada59dd6dc6fa7eb",
      "sender": "wumpus",
      "payload": "jonasschnelli: yes, it's very basic and easy to use",
      "action": false,
      "timestamp": "2017-09-28T19:21:11+00:00"
    },
    {
      "id": "4784958d4b554ab398fe25c11deb329f",
      "sender": "gmaxwell",
      "payload": "Well. \"Better than ZMQ\"-- part of the argument against it in the past was socket monopolization but with libevent now that should be much less of an issue.",
      "action": false,
      "timestamp": "2017-09-28T19:21:19+00:00"
    },
    {
      "id": "a56068e0c7c44651bfd5eeff39265caa",
      "sender": "jonasschnelli",
      "payload": "Very easy to use... no ZMQ library, just an http client",
      "action": false,
      "timestamp": "2017-09-28T19:21:22+00:00"
    },
    {
      "id": "189fa161b4714a15843ffa14b3fb4736",
      "sender": "sdaftuar",
      "payload": "how does reopening work?  i don't understand how you avoid missing transactions in between",
      "action": false,
      "timestamp": "2017-09-28T19:21:24+00:00"
    },
    {
      "id": "fd56410ee56b4067ae6188430e36dc13",
      "sender": "luke-jr",
      "payload": "gmaxwell: hopefully. libevent has a history of having problems in this area IIRC",
      "action": false,
      "timestamp": "2017-09-28T19:21:41+00:00"
    },
    {
      "id": "ff2d8664b2c1405eb0165c1e3bfd501a",
      "sender": "jonasschnelli",
      "payload": "sdaftuar: you just open the http channel again... there is a queue on the server..",
      "action": false,
      "timestamp": "2017-09-28T19:21:46+00:00"
    },
    {
      "id": "55653ace62a04fccbc524ebf19518c78",
      "sender": "wumpus",
      "payload": "it's not meant as a competition to ZMQ, ZMQ will stay",
      "action": false,
      "timestamp": "2017-09-28T19:21:47+00:00"
    },
    {
      "id": "7532befcb00c4a9bb3bd1455500544ae",
      "sender": "jonasschnelli",
      "payload": "losing notifications is impossible",
      "action": false,
      "timestamp": "2017-09-28T19:21:51+00:00"
    },
    {
      "id": "c9c2f65299b545b19ebf32c0e4d73639",
      "sender": "jonasschnelli",
      "payload": "(or very unlikely)",
      "action": false,
      "timestamp": "2017-09-28T19:21:57+00:00"
    },
    {
      "id": "e169640fa6844ef0af95ce76b323ee91",
      "sender": "luke-jr",
      "payload": "sdaftuar: you have a session",
      "action": false,
      "timestamp": "2017-09-28T19:22:02+00:00"
    },
    {
      "id": "4ae13a122107459dbfcd9e079c29ccf7",
      "sender": "gmaxwell",
      "payload": "jonasschnelli: impossible and very unlikely are not the same. :P",
      "action": false,
      "timestamp": "2017-09-28T19:22:12+00:00"
    },
    {
      "id": "95e69039d11347deac5aebdaa7fdada4",
      "sender": "cfields",
      "payload": "didn't we have this discussion wrt waitfornewblock and friends? I'm missing how this is different",
      "action": false,
      "timestamp": "2017-09-28T19:22:21+00:00"
    },
    {
      "id": "9c5c39ff4f74402e9eb9939c28b038b0",
      "sender": "wumpus",
      "payload": "zmq is for low latency notifications, longpoll is for easy notifications over the same channel RPC already works",
      "action": false,
      "timestamp": "2017-09-28T19:22:23+00:00"
    },
    {
      "id": "75c92866aa7a443c9499d2b8be1aef45",
      "sender": "jonasschnelli",
      "payload": "yeah.. probably same level then ZMQ (where you can also loose nots)",
      "action": false,
      "timestamp": "2017-09-28T19:22:25+00:00"
    },
    {
      "id": "c5c7688b34f947989136603ff34fb345",
      "sender": "wumpus",
      "payload": "zmq requires careful extra setup",
      "action": false,
      "timestamp": "2017-09-28T19:22:43+00:00"
    },
    {
      "id": "bf81374a10e04a35baacaf9a02fb2c9f",
      "sender": "luke-jr",
      "payload": "or order the events, and have the client request with the last-seen-event (as GBT does)",
      "action": false,
      "timestamp": "2017-09-28T19:22:50+00:00"
    },
    {
      "id": "0893a348b8664dde900efbfadc87cba6",
      "sender": "jonasschnelli",
      "payload": "It would allow clients to better interect with Core without opening an ZMQ & RPC channel (only RPC)",
      "action": false,
      "timestamp": "2017-09-28T19:22:52+00:00"
    },
    {
      "id": "2d866d723f9f459ca0e544ef341e85bf",
      "sender": "gmaxwell",
      "payload": "if you are using it to notice new transactions, losing a message means you fail to credit a customer with a $10,000 deposit... and look like a theif or even actually lose the money. :)",
      "action": false,
      "timestamp": "2017-09-28T19:22:56+00:00"
    },
    {
      "id": "d2ec83a0c5044d23bf6b64bd621a0024",
      "sender": "jonasschnelli",
      "payload": "and it would allow *auth based notifications\"",
      "action": false,
      "timestamp": "2017-09-28T19:23:00+00:00"
    },
    {
      "id": "f3824311fb304e7db54ddd213d7f55f7",
      "sender": "jonasschnelli",
      "payload": "like wallet notifications",
      "action": false,
      "timestamp": "2017-09-28T19:23:03+00:00"
    },
    {
      "id": "2e2457f93c594920a282d129e3d796d9",
      "sender": "jonasschnelli",
      "payload": "(which should be behing the auth)",
      "action": false,
      "timestamp": "2017-09-28T19:23:10+00:00"
    },
    {
      "id": "218392042cd24c3d9ede523047994da6",
      "sender": "jonasschnelli",
      "payload": "notifications may lead to an RPC roundtrip...",
      "action": false,
      "timestamp": "2017-09-28T19:23:33+00:00"
    },
    {
      "id": "0ef09b3bb0ed4fbfa5abd0608d77fcfc",
      "sender": "wumpus",
      "payload": "gmaxwell: true, but the -Xnotify that launches a script can also fail to launch a script in some cases, losing notification",
      "action": false,
      "timestamp": "2017-09-28T19:23:40+00:00"
    },
    {
      "id": "59e223792c274d089c2b82ab1803d672",
      "sender": "BlueMatt",
      "payload": "if its for wallet you can just use it to get info about when you need to call listsinceblock",
      "action": false,
      "timestamp": "2017-09-28T19:23:41+00:00"
    },
    {
      "id": "b78a1730a3174e17b3f5fcc74a0486fb",
      "sender": "gmaxwell",
      "payload": "ZMQ has wire protocol incompatiblity between versions, which makes it harder to use except in very tightly coupled setups.",
      "action": false,
      "timestamp": "2017-09-28T19:23:43+00:00"
    },
    {
      "id": "c6aee7aa5ba74cfea49ae04ed533d4c1",
      "sender": "jonasschnelli",
      "payload": "It just ellimitens constant triggering",
      "action": false,
      "timestamp": "2017-09-28T19:23:44+00:00"
    },
    {
      "id": "6ab093c2624b4c07af05cc30e6af7689",
      "sender": "BlueMatt",
      "payload": "which isnt so bad...but for mempool its unclear how you can do it safely",
      "action": false,
      "timestamp": "2017-09-28T19:23:50+00:00"
    },
    {
      "id": "c52c67310c714d59bb6eaa220397d6ca",
      "sender": "wumpus",
      "payload": "gmaxwell: we have to be realistic too",
      "action": false,
      "timestamp": "2017-09-28T19:23:55+00:00"
    },
    {
      "id": "f13e1503a2af4e12a5ff9d9553201ed0",
      "sender": "sipa",
      "payload": "wumpus: but on the next notification you'll notice it",
      "action": false,
      "timestamp": "2017-09-28T19:23:59+00:00"
    },
    {
      "id": "9fc6e4a6205b4ae2992eea1d226bfdbd",
      "sender": "gmaxwell",
      "payload": "wumpus: Is there a reason we can't give a reliable notification?",
      "action": false,
      "timestamp": "2017-09-28T19:24:11+00:00"
    },
    {
      "id": "4794785f1eee4f639ff04f90bf152f82",
      "sender": "wumpus",
      "payload": "sipa: yes, that's why the zmq notifications have sequence numebrs too",
      "action": false,
      "timestamp": "2017-09-28T19:24:12+00:00"
    },
    {
      "id": "187bad47488c4049a7f2c93fc964d284",
      "sender": "luke-jr",
      "payload": "we probably don't want to use the same LP for wallet and non-wallet",
      "action": false,
      "timestamp": "2017-09-28T19:24:15+00:00"
    },
    {
      "id": "7e32bbe24076435b993e69fc88f2fcc0",
      "sender": "wumpus",
      "payload": "sipa: you'll notice that you've lost an event, you just don't know what it is so need to do reconciliation in that case",
      "action": false,
      "timestamp": "2017-09-28T19:24:41+00:00"
    },
    {
      "id": "95ec846b66ba419cb6581a1f1e306914",
      "sender": "jonasschnelli",
      "payload": "My LP PR (which I'm currently re-doing) has sequence numbers",
      "action": false,
      "timestamp": "2017-09-28T19:24:54+00:00"
    },
    {
      "id": "593094aeb28748558e673f9369190af6",
      "sender": "cfields",
      "payload": "ah",
      "action": false,
      "timestamp": "2017-09-28T19:25:02+00:00"
    },
    {
      "id": "c180c11492764ae3bdcdc8ac2f57fd0f",
      "sender": "wumpus",
      "payload": "gmaxwell: well the problem is that send buffers can be full",
      "action": false,
      "timestamp": "2017-09-28T19:25:04+00:00"
    },
    {
      "id": "56ddc213677542ffac4fed614c073492",
      "sender": "jonasschnelli",
      "payload": "If you miss a notification, do a data re-sync",
      "action": false,
      "timestamp": "2017-09-28T19:25:16+00:00"
    },
    {
      "id": "65bc5a7496e848f6b31b74cb1bb7b26b",
      "sender": "sipa",
      "payload": "i wonder if we shouldn't think about something more generic... you configure \"i have an RPC client, which is interested in all events which satisfy condition X, Y, Z....\", and then there can be means for the client to read the event log, or get notifications when there are new events, ...",
      "action": false,
      "timestamp": "2017-09-28T19:25:19+00:00"
    },
    {
      "id": "7498fc1d563e4103ac4aa1ca42eaf9a0",
      "sender": "wumpus",
      "payload": "gmaxwell: 100%(ish) reliable notifications means storing them to disk if the client isn't processing them",
      "action": false,
      "timestamp": "2017-09-28T19:25:20+00:00"
    },
    {
      "id": "e6c0b446519a4d1ab8ccd7296a939444",
      "sender": "sipa",
      "payload": "and the server keeps track of what the client has seen and hasn't",
      "action": false,
      "timestamp": "2017-09-28T19:25:34+00:00"
    },
    {
      "id": "7f82aa05858642f8a8982e0f806d8e81",
      "sender": "BlueMatt",
      "payload": "(as long as all of those events come out of the CValidationInterface =D)",
      "action": false,
      "timestamp": "2017-09-28T19:25:50+00:00"
    },
    {
      "id": "12ce389591f141638976ea204e72b0c4",
      "sender": "luke-jr",
      "payload": "sipa: that makes me think of pruning - \"I need to use block data, so don't prune until I say I'm done with it\"",
      "action": false,
      "timestamp": "2017-09-28T19:25:53+00:00"
    },
    {
      "id": "a75b83dd96934c15a46568884c78f548",
      "sender": "wumpus",
      "payload": "gmaxwell: I mean reliable messaging/notification is a huge topic in itself..",
      "action": false,
      "timestamp": "2017-09-28T19:25:53+00:00"
    },
    {
      "id": "7459409fd56941228d0a9d30072aed05",
      "sender": "luke-jr",
      "payload": "sipa: not the same thing, but perhaps has some overlap",
      "action": false,
      "timestamp": "2017-09-28T19:26:02+00:00"
    },
    {
      "id": "604efafebe2b4012a6f3865e43696cf3",
      "sender": "gmaxwell",
      "payload": "wumpus: or allowing the send buffer to grow to the point that it gets swapped out and ultimately crashes. :)",
      "action": false,
      "timestamp": "2017-09-28T19:26:04+00:00"
    },
    {
      "id": "f475d7efbe8e4856a3d0135045b58ab5",
      "sender": "sipa",
      "payload": "luke-jr: indeed, it seems related",
      "action": false,
      "timestamp": "2017-09-28T19:26:10+00:00"
    },
    {
      "id": "37073417ff2a45d6bef1eb2d807165f4",
      "sender": "wumpus",
      "payload": "gmaxwell: yes, in which case it's lost too",
      "action": false,
      "timestamp": "2017-09-28T19:26:19+00:00"
    },
    {
      "id": "2404bae83ede4e0ab01dcdae687354e5",
      "sender": "jonasschnelli",
      "payload": "sipa: my LP PR does basically something like that. You can register a UUID for notifications and the server keeps track what you have received and what not",
      "action": false,
      "timestamp": "2017-09-28T19:26:21+00:00"
    },
    {
      "id": "0267db48729a4abb93a55467a82b4699",
      "sender": "jonasschnelli",
      "payload": "It's multi-client capable",
      "action": false,
      "timestamp": "2017-09-28T19:26:29+00:00"
    },
    {
      "id": "a756b59b440e48c9a80e35a94263562b",
      "sender": "wumpus",
      "payload": "luke-jr: yeah there's certainly overlap there",
      "action": false,
      "timestamp": "2017-09-28T19:26:46+00:00"
    },
    {
      "id": "5b133bb851dc4abe91eda6cb8bba3965",
      "sender": "gmaxwell",
      "payload": "wumpus: yes, though cold start init is something that everything has to have and has to have tested, as it happens at every start.",
      "action": false,
      "timestamp": "2017-09-28T19:26:52+00:00"
    },
    {
      "id": "91655f9218534270b3b81132542e51ea",
      "sender": "wumpus",
      "payload": "luke-jr: block consumers ideally should be able to set a low-water mark",
      "action": false,
      "timestamp": "2017-09-28T19:26:56+00:00"
    },
    {
      "id": "05f514e7328d427eb60f4aef4cf6d721",
      "sender": "luke-jr",
      "payload": "maybe they should share jonasschnelli's UUID",
      "action": false,
      "timestamp": "2017-09-28T19:27:14+00:00"
    },
    {
      "id": "75220331c96e4a32b006a76996bb6088",
      "sender": "wumpus",
      "payload": "gmaxwell: well it needs reconciliation, you could also do that if you miss a notification ( which can be detected from the sequence number)",
      "action": false,
      "timestamp": "2017-09-28T19:27:18+00:00"
    },
    {
      "id": "3752d5b342ea44c8a9843f8841fc1a0f",
      "sender": "wumpus",
      "payload": "gmaxwell: so if you have something to handle potential crashes, you also have something to handle the case where a message gets lost",
      "action": false,
      "timestamp": "2017-09-28T19:27:40+00:00"
    },
    {
      "id": "ea52b15cf5ba42159dab53e0471ffdf3",
      "sender": "luke-jr",
      "payload": "although for block consumption, we'd want to store it in a persistent db IMO",
      "action": false,
      "timestamp": "2017-09-28T19:27:42+00:00"
    },
    {
      "id": "7e0b6bea2d9c49f48f1a1315e4905dc7",
      "sender": "luke-jr",
      "payload": "(or could use rwconf and have a config param, but that seems ugly for this)",
      "action": false,
      "timestamp": "2017-09-28T19:28:02+00:00"
    },
    {
      "id": "164c608de6c543569db1e808527ccd03",
      "sender": "gmaxwell",
      "payload": "obligitory question: Is any user asking for this or is it just interesting?",
      "action": false,
      "timestamp": "2017-09-28T19:28:16+00:00"
    },
    {
      "id": "296c65ce89e641988c8227d0ee11081c",
      "sender": "jonasschnelli",
      "payload": "gmaxwell: Yes. Me as an user... :)",
      "action": false,
      "timestamp": "2017-09-28T19:28:39+00:00"
    },
    {
      "id": "5c587a8fe71d40e884d7940240a502a2",
      "sender": "wumpus",
      "payload": "yes yes yes",
      "action": false,
      "timestamp": "2017-09-28T19:28:42+00:00"
    },
    {
      "id": "6afda040e2854f759cfa7329b0d2082d",
      "sender": "luke-jr",
      "payload": "gmaxwell: the block consumption part would allow Armory to do pruning, at least ;0",
      "action": false,
      "timestamp": "2017-09-28T19:28:48+00:00"
    },
    {
      "id": "77a44bb79e09421fa6693a7091f530ba",
      "sender": "wumpus",
      "payload": "joinmarket for example would like a better notification mechanism",
      "action": false,
      "timestamp": "2017-09-28T19:28:51+00:00"
    },
    {
      "id": "8d78b55a36bc4c5099c547b8d26a124f",
      "sender": "jonasschnelli",
      "payload": "(for the hardware wallet client i'm working)",
      "action": false,
      "timestamp": "2017-09-28T19:28:52+00:00"
    },
    {
      "id": "5ca205f1db9941f09200f2be208ea690",
      "sender": "cfields",
      "payload": "luke-jr: hmm, so clients could issue a single rpc command and have new blocks announcements replayed after a day offline?",
      "action": false,
      "timestamp": "2017-09-28T19:28:55+00:00"
    },
    {
      "id": "b0cfa6b7ba6b44728e36f79a189636e2",
      "sender": "wumpus",
      "payload": "gmaxwell: they currently have a hack where you have to set walletnotify in bitcoin.conf, which isn't very flexible and easy to forget",
      "action": false,
      "timestamp": "2017-09-28T19:29:09+00:00"
    },
    {
      "id": "6fc12b816ab44323bbbe34ceffb96714",
      "sender": "luke-jr",
      "payload": "cfields: I don't see why not",
      "action": false,
      "timestamp": "2017-09-28T19:29:15+00:00"
    },
    {
      "id": "d29e45e682534cc2b73330897b8b9330",
      "sender": "wumpus",
      "payload": "gmaxwell: if their software could just subscribe to events through RPC, that problem'd be solved",
      "action": false,
      "timestamp": "2017-09-28T19:29:23+00:00"
    },
    {
      "id": "b0386d15e64145daa5c976d4c40ce568",
      "sender": "cfields",
      "payload": "that's interesting",
      "action": false,
      "timestamp": "2017-09-28T19:29:33+00:00"
    },
    {
      "id": "e993f5360b6c4876b13ec73242e1699a",
      "sender": "jonasschnelli",
      "payload": "See also https://github.com/bitcoin/bitcoin/pull/10554",
      "action": false,
      "timestamp": "2017-09-28T19:29:34+00:00"
    },
    {
      "id": "58a9778edc914578be143db0091fd0a3",
      "sender": "gmaxwell",
      "payload": "wumpus: why doesn't it just poll?",
      "action": false,
      "timestamp": "2017-09-28T19:29:35+00:00"
    },
    {
      "id": "e3e0f74e90ef4ec399a2dc3d2284dda5",
      "sender": "wumpus",
      "payload": "no need for restarting bitcoind even!",
      "action": false,
      "timestamp": "2017-09-28T19:29:36+00:00"
    },
    {
      "id": "ab6274a374b94d5c8643b3f4903c9324",
      "sender": "jonasschnelli",
      "payload": "#10554",
      "action": false,
      "timestamp": "2017-09-28T19:29:37+00:00"
    },
    {
      "id": "5344902bf5df43ab9ee675939689ebe4",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/10554 | ZMQ: add publishers for wallet transactions. by somdoron \u00c3\u0082\u00c2\u00b7 Pull Request #10554 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:29:39+00:00"
    },
    {
      "id": "6fb178c6ad3d4c17b746ce767b032e47",
      "sender": "BlueMatt",
      "payload": "jonasschnelli: if its not a big bother, then, as wumpus points out, can you ask the joinmarket guys if your proposed protocol is sufficient for them? would be good to be in sync on it",
      "action": false,
      "timestamp": "2017-09-28T19:29:41+00:00"
    },
    {
      "id": "0efdc01fe0474e32b1baf1284b4e21ea",
      "sender": "luke-jr",
      "payload": "related: my GUI NetWatch branch has a circular memory-efficient buffer of weak-linked txs and blocks",
      "action": false,
      "timestamp": "2017-09-28T19:29:52+00:00"
    },
    {
      "id": "b6b7049d142346b58820b37c06b57a87",
      "sender": "wumpus",
      "payload": "gmaxwell: because polling sucks",
      "action": false,
      "timestamp": "2017-09-28T19:29:53+00:00"
    },
    {
      "id": "921c680005bb45f3b629ac0d11ff7b80",
      "sender": "jonasschnelli",
      "payload": "BlueMatt: good point",
      "action": false,
      "timestamp": "2017-09-28T19:29:55+00:00"
    },
    {
      "id": "529375293cf0467ea0c0b756f472b4a5",
      "sender": "wumpus",
      "payload": "it causes extra delays, at least, and uses more CPU time",
      "action": false,
      "timestamp": "2017-09-28T19:30:10+00:00"
    },
    {
      "id": "02e1400a48f246e5b123b41aeff6dc16",
      "sender": "wumpus",
      "payload": "(depending on how fast you poll)",
      "action": false,
      "timestamp": "2017-09-28T19:30:25+00:00"
    },
    {
      "id": "55f4060fcea94717aceb2562199966c2",
      "sender": "jonasschnelli",
      "payload": "wumpus: and the UX may suck,... LP gives you a TX, block within ms not s",
      "action": false,
      "timestamp": "2017-09-28T19:30:40+00:00"
    },
    {
      "id": "10dcd50473f144688d5ecb1a77c12048",
      "sender": "wumpus",
      "payload": "I really don't understand why we're arguing whether to add a sane notification system at all and considering repetitive polling good enough",
      "action": false,
      "timestamp": "2017-09-28T19:30:51+00:00"
    },
    {
      "id": "62ea9b3d965a42cb969012512c8b6a34",
      "sender": "gmaxwell",
      "payload": "ISTM the caller will need a consierable amount of complexity to avoid losing data, vs sending a poll every coupld seconds.  Polling faster than seconds hardly makes sense in the context of bitcoin in any case, since txn take seconds to propagate through the network.",
      "action": false,
      "timestamp": "2017-09-28T19:30:52+00:00"
    },
    {
      "id": "1a13dc7d7882446c908b85c93420518d",
      "sender": "gmaxwell",
      "payload": "wumpus: because we already have one almost unused unreliable notification system.",
      "action": false,
      "timestamp": "2017-09-28T19:31:08+00:00"
    },
    {
      "id": "12dfadb8417a4d4d98b839b701e0710f",
      "sender": "wumpus",
      "payload": "sigh, never mind",
      "action": false,
      "timestamp": "2017-09-28T19:31:16+00:00"
    },
    {
      "id": "bdcf6e462ba2471081535d9424f6ff2b",
      "sender": "wumpus",
      "payload": "another topic?",
      "action": false,
      "timestamp": "2017-09-28T19:31:19+00:00"
    },
    {
      "id": "c4afd2b4a693444c86853e7cb9faae34",
      "sender": "jonasschnelli",
      "payload": "sipa had one",
      "action": false,
      "timestamp": "2017-09-28T19:31:24+00:00"
    },
    {
      "id": "43cb0ecac95544f4b4e79aa3709a2fae",
      "sender": "gmaxwell",
      "payload": "bleh, I'm not trying to bludgon it.",
      "action": false,
      "timestamp": "2017-09-28T19:31:34+00:00"
    },
    {
      "id": "0bb2303fabe848d093d2b81ec94847fa",
      "sender": "wumpus",
      "payload": "and no, zmq is not unused",
      "action": false,
      "timestamp": "2017-09-28T19:31:35+00:00"
    },
    {
      "id": "24ec92fdcda64713af31c4e6f346c7c9",
      "sender": "jonasschnelli",
      "payload": "IMO it is heavely used in some enterprises",
      "action": false,
      "timestamp": "2017-09-28T19:31:52+00:00"
    },
    {
      "id": "313e5163d1c64bb99bd95a0809ac7837",
      "sender": "wumpus",
      "payload": "just that you're not using  or it's not good/reliable enough for you it doesn't mean no one is using it",
      "action": false,
      "timestamp": "2017-09-28T19:31:53+00:00"
    },
    {
      "id": "4fe955ee296749d88a652849e8f2a402",
      "sender": "gmaxwell",
      "payload": "I've never encountered someone using it in production. I don't doubt that it is somewhere.",
      "action": false,
      "timestamp": "2017-09-28T19:32:10+00:00"
    },
    {
      "id": "03e6eca2476b492d94fd0275efede4e4",
      "sender": "wumpus",
      "payload": "as I've said many times, loss of messages can be handled if it can be detected, and it can be detected using the sequence numbers",
      "action": false,
      "timestamp": "2017-09-28T19:32:17+00:00"
    },
    {
      "id": "ce48eca9c7974b6b909d66877496f20c",
      "sender": "BlueMatt",
      "payload": "'s preferred method of notification is the \"hey, you should poll now\" method",
      "action": true,
      "timestamp": "2017-09-28T19:32:23+00:00"
    },
    {
      "id": "8434dbe28e924457be85d5d082e54aac",
      "sender": "sipa",
      "payload": "i think there is a lot of merit in creating a reliable event logging system for clients to observe",
      "action": false,
      "timestamp": "2017-09-28T19:32:26+00:00"
    },
    {
      "id": "6ad118b241334c488ecb3258593e146c",
      "sender": "luke-jr",
      "payload": "BlueMatt: indeed, blocknotify is sane IMO",
      "action": false,
      "timestamp": "2017-09-28T19:32:36+00:00"
    },
    {
      "id": "4ca75d9d51a64c9fb59944c6242e21e6",
      "sender": "sipa",
      "payload": "if we have that, adding a notification for \"you have new events!\" seems both trivial and obvious",
      "action": false,
      "timestamp": "2017-09-28T19:32:41+00:00"
    },
    {
      "id": "b919f69f873f4cc1908ddf15c36a5afa",
      "sender": "jnewbery",
      "payload": "suggested topic: next Bitcoin Core meetup",
      "action": false,
      "timestamp": "2017-09-28T19:32:52+00:00"
    },
    {
      "id": "1229535b7ad74f4590f9083a87015e63",
      "sender": "jonasschnelli",
      "payload": "BlueMatt: ZMQ / LP is  \"hey, you should poll now\"",
      "action": false,
      "timestamp": "2017-09-28T19:32:58+00:00"
    },
    {
      "id": "495ccf2100904a2e8cb74f187d500b41",
      "sender": "cfields",
      "payload": "agreed. and agree with wumpus. Seems like a no-brainer to me.",
      "action": false,
      "timestamp": "2017-09-28T19:32:59+00:00"
    },
    {
      "id": "7ec07492770e4907ab4bb5051352abb8",
      "sender": "luke-jr",
      "payload": "jnewbery: another one?",
      "action": false,
      "timestamp": "2017-09-28T19:33:00+00:00"
    },
    {
      "id": "a3589c6b99fc47c5aba72864bdef8882",
      "sender": "jonasschnelli",
      "payload": "We only send hashes",
      "action": false,
      "timestamp": "2017-09-28T19:33:01+00:00"
    },
    {
      "id": "4c2060d0e68d4c27988cd7bdb314463d",
      "sender": "BlueMatt",
      "payload": "jonasschnelli: I wouldnt even send hashes",
      "action": false,
      "timestamp": "2017-09-28T19:33:19+00:00"
    },
    {
      "id": "6b4c5cdef80d4a5cb0b00467ac1516b2",
      "sender": "gmaxwell",
      "payload": "But we don't get a report flow on it that suggests that its in use...  And the advice I give is to poll because it's reliable, hard to get wrong, and has no scaling issues on any system that can keep up with the network.   And the reason I was asking questions is because I was trying to understand what the gain in having another one would be... one thought I had was maybe it would be more reliab",
      "action": false,
      "timestamp": "2017-09-28T19:33:27+00:00"
    },
    {
      "id": "e7ed39e0a8254a659f32f5e21e9a2920",
      "sender": "BlueMatt",
      "payload": "just do the old \"disconnect upon new data\" pattern",
      "action": false,
      "timestamp": "2017-09-28T19:33:30+00:00"
    },
    {
      "id": "daeca12ad2534c5689f8c3f7cb2eac55",
      "sender": "gmaxwell",
      "payload": "le, but I see why thats hard.",
      "action": false,
      "timestamp": "2017-09-28T19:33:33+00:00"
    },
    {
      "id": "80638368531245359c364ddccde7196c",
      "sender": "luke-jr",
      "payload": "blocknotify='killall -USR1 programname' \u00c3\u00a2\u00c2\u0098\u00c2\u00ba",
      "action": false,
      "timestamp": "2017-09-28T19:33:35+00:00"
    },
    {
      "id": "7e6acd5f81494b3cb973b64534370f41",
      "sender": "sipa",
      "payload": "19:19:49 < sipa> i'd like to bring up segwit wallet support",
      "action": false,
      "timestamp": "2017-09-28T19:34:08+00:00"
    },
    {
      "id": "c7e50b6949714b1289768e9bdaf8f2ba",
      "sender": "wumpus",
      "payload": "gmaxwell: you can do polling in addition to processing notifications, that's what I mean with 'reconciliation'",
      "action": false,
      "timestamp": "2017-09-28T19:34:20+00:00"
    },
    {
      "id": "93159b911e66460198b232824b67752a",
      "sender": "morcos",
      "payload": "notification system for topic suggestions?",
      "action": false,
      "timestamp": "2017-09-28T19:34:24+00:00"
    },
    {
      "id": "62350059e3f1402fb1dcd4420c833068",
      "sender": "gmaxwell",
      "payload": "Obviously if people want to work on it, I don't mind. I'll even spend some time reviewing it.  But there are so many other things we've left half complete... so thats just my reservation. I'm sorry for frustrating you.",
      "action": false,
      "timestamp": "2017-09-28T19:34:39+00:00"
    },
    {
      "id": "674ce53fdc8b432290297e6b95699d99",
      "sender": "wumpus",
      "payload": "anyhow, time for sipa's topic",
      "action": false,
      "timestamp": "2017-09-28T19:35:01+00:00"
    },
    {
      "id": "afa106f4b72c49cdac4240c17187f4c0",
      "sender": "wumpus",
      "payload": "#topic segwit wallet support",
      "action": false,
      "timestamp": "2017-09-28T19:35:06+00:00"
    },
    {
      "id": "293afb02a4f6441a95b27ad5d287d55b",
      "sender": "sipa",
      "payload": "yay!",
      "action": false,
      "timestamp": "2017-09-28T19:35:13+00:00"
    },
    {
      "id": "2731857c676646a3b1c62974787a19d1",
      "sender": "morcos",
      "payload": "for the record i'm also wary about adding more and more notification systems, but that's not to say i don't think we shouldn't improve from where we are now",
      "action": false,
      "timestamp": "2017-09-28T19:35:14+00:00"
    },
    {
      "id": "9e4ae62751a74970a111c89c90c65cb5",
      "sender": "wumpus",
      "payload": "morcos: you've just missed that topic",
      "action": false,
      "timestamp": "2017-09-28T19:35:25+00:00"
    },
    {
      "id": "1ce026095b90458f96d866fa2eb77a84",
      "sender": "wumpus",
      "payload": ":p",
      "action": false,
      "timestamp": "2017-09-28T19:35:29+00:00"
    },
    {
      "id": "ecaffc731fe9477c8f0eb33652de7cbd",
      "sender": "sipa",
      "payload": "so, i have a PR #11403 which i think implements most of what we want, except some import/export and message signing",
      "action": false,
      "timestamp": "2017-09-28T19:35:50+00:00"
    },
    {
      "id": "8f6add76d5974d41bc78cdf172fdffbc",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/11403 | SegWit wallet support by sipa \u00c3\u0082\u00c2\u00b7 Pull Request #11403 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2017-09-28T19:35:52+00:00"
    },
    {
      "id": "b5e5b9e7b2ac4898b113bbe0a5a1446b",
      "sender": "sipa",
      "payload": "however, i think there are 2 differences compared to what we discussed before",
      "action": false,
      "timestamp": "2017-09-28T19:36:00+00:00"
    },
    {
      "id": "c2a6fd06e6ff499d83c5f9482a21f54f",
      "sender": "sipa",
      "payload": "1) importprivkey works, and actually imports all corresponding addresses for that given key (P2PKH, P2SH-P2WPKH, P2WPKH)",
      "action": false,
      "timestamp": "2017-09-28T19:36:44+00:00"
    },
    {
      "id": "4a1b824155f942008e4187d4f7b0ed08",
      "sender": "wumpus",
      "payload": "nice",
      "action": false,
      "timestamp": "2017-09-28T19:36:48+00:00"
    },
    {
      "id": "b4654cf1092046129b28bbf06eb14b0e",
      "sender": "sipa",
      "payload": "that's not how i want things to work long term, but it's very hard and probably confusing to users to almost everywhere follow the \"a key corresponds to all 3 forms of corresponding addresses\", except when importing (and importing is inevitably needed anyway for testing)",
      "action": false,
      "timestamp": "2017-09-28T19:37:42+00:00"
    },
    {
      "id": "ba22d34e95a9451b8b8646aedea056b4",
      "sender": "sipa",
      "payload": "2) once you generate a segwit address with this patch, you can't really downgrade to older software anymore (unless you go fix your missing addresses with addwitnessaddress), though no new backup is needed",
      "action": false,
      "timestamp": "2017-09-28T19:38:38+00:00"
    },
    {
      "id": "6ed074f7f9244ef88b354ea33320b62b",
      "sender": "luke-jr",
      "payload": "why 2?",
      "action": false,
      "timestamp": "2017-09-28T19:39:05+00:00"
    },
    {
      "id": "c3070c65c2fe42fab0984ed847cb78fb",
      "sender": "BlueMatt",
      "payload": "wait, why?",
      "action": false,
      "timestamp": "2017-09-28T19:39:06+00:00"
    },
    {
      "id": "f5c94e848fbc4e86a5c6b9d4cbfaeb9a",
      "sender": "morcos",
      "payload": "2 confuses me",
      "action": false,
      "timestamp": "2017-09-28T19:39:07+00:00"
    },
    {
      "id": "e3305b6c78064671948a254d003663c9",
      "sender": "sipa",
      "payload": "which differs from the earlier idea of every new addresses effectively calling addwitnessaddress",
      "action": false,
      "timestamp": "2017-09-28T19:39:19+00:00"
    },
    {
      "id": "3dc45baf447c44229a37a9325d95b3fb",
      "sender": "BlueMatt",
      "payload": "yea, what we discussed was auto-addwitnessaddress",
      "action": false,
      "timestamp": "2017-09-28T19:39:24+00:00"
    },
    {
      "id": "1796941f4c1948e39a6735ddd0717401",
      "sender": "morcos",
      "payload": "i think it depends on what we are expecting 0.16 to do",
      "action": false,
      "timestamp": "2017-09-28T19:39:34+00:00"
    },
    {
      "id": "bb99529e3ccf472abfbdac02f8fab62f",
      "sender": "sipa",
      "payload": "well, auto-addwitnessaddress doesn't actually achieve what you want either",
      "action": false,
      "timestamp": "2017-09-28T19:39:39+00:00"
    },
    {
      "id": "3f84ee6eeb2245b289aca68d6f1db439",
      "sender": "morcos",
      "payload": "if the manual upgrade of a wallet to 0.16 is going to auto add all 3 versions of all keys, then what you are suggesting seems maybe ok...   but that will lead to more bloat in 0.16 as opposed to just having the scripts already in the wallet moved over",
      "action": false,
      "timestamp": "2017-09-28T19:40:58+00:00"
    },
    {
      "id": "265e9e48d10b456fabecd1b6ee1f86bb",
      "sender": "sipa",
      "payload": "effectively what the patch does is just implicitly making redeemscripts for all your keys known, without writing them to the file",
      "action": false,
      "timestamp": "2017-09-28T19:41:37+00:00"
    },
    {
      "id": "7f339e6be25d4699847bc4c0555716d7",
      "sender": "meshcollider",
      "payload": "Oh so if you wrote them to the file downgrading would be fine",
      "action": false,
      "timestamp": "2017-09-28T19:42:00+00:00"
    },
    {
      "id": "a2ed54a680c24e1090b55b4abd17920b",
      "sender": "achow101",
      "payload": "sipa: why not write them?",
      "action": false,
      "timestamp": "2017-09-28T19:42:32+00:00"
    },
    {
      "id": "b98252066739434c98686d3f650adbcc",
      "sender": "sipa",
      "payload": "meshcollider: not really... new transactions you receive while downgrading are risky",
      "action": false,
      "timestamp": "2017-09-28T19:42:32+00:00"
    },
    {
      "id": "76a163b99d4f4daf9929ef8d53baa017",
      "sender": "sipa",
      "payload": "achow101: bloat, and it doesn't fully solve the problem",
      "action": false,
      "timestamp": "2017-09-28T19:42:41+00:00"
    },
    {
      "id": "bb4fa8656d554e6094948e4ba86a2817",
      "sender": "BlueMatt",
      "payload": "sipa: yes, why did you decide to do that over the previous discussion?",
      "action": false,
      "timestamp": "2017-09-28T19:42:45+00:00"
    },
    {
      "id": "f9331f39d35a47e99724f59d58f7b498",
      "sender": "luke-jr",
      "payload": "morcos: don't add segwit stuff for old keys..",
      "action": false,
      "timestamp": "2017-09-28T19:43:03+00:00"
    },
    {
      "id": "a66d288061b948f396d7abf37da3e9ff",
      "sender": "sipa",
      "payload": "BlueMatt: because keys the old version adds to the keypool during auto-topup won't get their witnesses added, and will go undetected",
      "action": false,
      "timestamp": "2017-09-28T19:43:32+00:00"
    },
    {
      "id": "c562d37bd94d4076a3ef6f804948f879",
      "sender": "gmaxwell",
      "payload": "meshcollider: writing them doesn't make downgrading fine though, because the downgraded one won't be adding them for things in the keypool. so in the presences of restores they'd potentially silently lose funds.",
      "action": false,
      "timestamp": "2017-09-28T19:43:39+00:00"
    },
    {
      "id": "c019bdbe1f014296a1414f50d6b965de",
      "sender": "luke-jr",
      "payload": "would be pretty ugly if the address list tripled in size simply with an upgrade; ideally we should only list one type per key, perhaps excepting the import case",
      "action": false,
      "timestamp": "2017-09-28T19:43:55+00:00"
    },
    {
      "id": "0efa589df28e4082b1be980dfe1a5078",
      "sender": "BlueMatt",
      "payload": "sipa: huh? I figured youd \"auto-addwitnessaddress\" when you getnewaddress/get the address for gui/etc",
      "action": false,
      "timestamp": "2017-09-28T19:44:06+00:00"
    },
    {
      "id": "38d2204a925a4ed2aa334010fe6a6f5f",
      "sender": "BlueMatt",
      "payload": "not when the key is generated",
      "action": false,
      "timestamp": "2017-09-28T19:44:10+00:00"
    },
    {
      "id": "24a9ee06a7644f859bd74892e5eae5d3",
      "sender": "sipa",
      "payload": "BlueMatt: that won't work at all",
      "action": false,
      "timestamp": "2017-09-28T19:44:17+00:00"
    },
    {
      "id": "5c748fca4d144ed2b376d9d42afe2d3e",
      "sender": "gmaxwell",
      "payload": "luke-jr: we're kinda stuck with that right now, obviously when we change the wallet design we can move to a model where there is a 1:1 matching between chains and keys. But thats a major redesign.",
      "action": false,
      "timestamp": "2017-09-28T19:44:27+00:00"
    },
    {
      "id": "a7f53916f432458882ceb4cb2bbbd3c6",
      "sender": "sipa",
      "payload": "BlueMatt: as old versions will then miss all transactions received while offline",
      "action": false,
      "timestamp": "2017-09-28T19:44:30+00:00"
    },
    {
      "id": "904f527193334420a2e1d3a0765e30bc",
      "sender": "luke-jr",
      "payload": "gmaxwell: if you getnewaddress with an older version, you won't get a segwit address, so they don't *need* to be added..",
      "action": false,
      "timestamp": "2017-09-28T19:44:32+00:00"
    },
    {
      "id": "9d96a21c8bbc451395b0c17634f4f279",
      "sender": "BlueMatt",
      "payload": "sipa: yes, please explain why",
      "action": false,
      "timestamp": "2017-09-28T19:44:33+00:00"
    },
    {
      "id": "04278f6c40cd4e9691b46fa299425857",
      "sender": "sipa",
      "payload": "(their keypool entries won't have witnesses, so won't be watched for)",
      "action": false,
      "timestamp": "2017-09-28T19:44:42+00:00"
    },
    {
      "id": "76632d7e2c9d4e3d818339118090e854",
      "sender": "luke-jr",
      "payload": "gmaxwell: we can leave existing keys alone, at least",
      "action": false,
      "timestamp": "2017-09-28T19:44:48+00:00"
    },
    {
      "id": "a96f0227910b4b759311068bf06a1c76",
      "sender": "BlueMatt",
      "payload": "ah, i see your point",
      "action": false,
      "timestamp": "2017-09-28T19:44:48+00:00"
    },
    {
      "id": "48c09fe675774143a9aed8c0ed392926",
      "sender": "gmaxwell",
      "payload": "BlueMatt: then backup and restore is completely no durable and you'll miss payments if you start with a restored wallet...",
      "action": false,
      "timestamp": "2017-09-28T19:44:56+00:00"
    },
    {
      "id": "cfa9629660c84dc59203f80b72687746",
      "sender": "gmaxwell",
      "payload": "yea.",
      "action": false,
      "timestamp": "2017-09-28T19:44:59+00:00"
    },
    {
      "id": "3aaed0f0db5441a9951c91bf98768a84",
      "sender": "luke-jr",
      "payload": "gmaxwell: only if you restore a backup with an old version?",
      "action": false,
      "timestamp": "2017-09-28T19:45:29+00:00"
    },
    {
      "id": "4aea37d805234665b6e4094b5cea7f70",
      "sender": "luke-jr",
      "payload": "that seems like a very niche problem area",
      "action": false,
      "timestamp": "2017-09-28T19:45:36+00:00"
    },
    {
      "id": "d0b7bee117a94bb682f55623a819beac",
      "sender": "sipa",
      "payload": "there is a possible best-effort approach of adding witnesses for all keypool entries and new addresses... but given that that's not even water tight...",
      "action": false,
      "timestamp": "2017-09-28T19:45:42+00:00"
    },
    {
      "id": "7680438f2d4342fc8c689e8fb58437f4",
      "sender": "luke-jr",
      "payload": "\"when restoring a backup, don't use old versions\" seems the straightforward \"fix\"",
      "action": false,
      "timestamp": "2017-09-28T19:45:51+00:00"
    },
    {
      "id": "e26c35ba68f54f1c90100577e869c185",
      "sender": "gmaxwell",
      "payload": "luke-jr: no, the best we could do is store a flag where the segwittyness starts and handle that, but because users are _already_ using addwitnessaddress this would not resolve their current recovery problems while adding for all does.",
      "action": false,
      "timestamp": "2017-09-28T19:45:55+00:00"
    },
    {
      "id": "6840942c3a7742bdaeaad6fd126f0e8f",
      "sender": "gmaxwell",
      "payload": "luke-jr: this whole discussion is about old restores, if you don't do that all is fantastic in sipa's code.",
      "action": false,
      "timestamp": "2017-09-28T19:46:26+00:00"
    },
    {
      "id": "82b8df135b5a4eaa90a5133a327d91c1",
      "sender": "luke-jr",
      "payload": "gmaxwell: so I'm a user. I upgrade, and suddenly my address list has 500 new addresses. So instead of making new ones, I just use those up..",
      "action": false,
      "timestamp": "2017-09-28T19:46:40+00:00"
    },
    {
      "id": "f7987d38f36b410ca478ccb288db20f2",
      "sender": "BlueMatt",
      "payload": "sipa: so downgrades are broken anyway cause they wont know to scan for witness-ified scripts anyway",
      "action": false,
      "timestamp": "2017-09-28T19:46:46+00:00"
    },
    {
      "id": "073b7ff25b18469e9df2feedc91a490e",
      "sender": "BlueMatt",
      "payload": "(and you have to do a rescan or so)",
      "action": false,
      "timestamp": "2017-09-28T19:46:50+00:00"
    },
    {
      "id": "d80a30df01b649e29e1514b446eba1eb",
      "sender": "gmaxwell",
      "payload": "by old restores I mean downgrade.",
      "action": false,
      "timestamp": "2017-09-28T19:46:54+00:00"
    },
    {
      "id": "66f2c7497c8f476b8dfef69c61022b30",
      "sender": "luke-jr",
      "payload": "gmaxwell: it sounds like sipa's code will fail to work properly if you simply downgrade with a wallet that's used a segwit address",
      "action": false,
      "timestamp": "2017-09-28T19:47:08+00:00"
    },
    {
      "id": "dc757046a89144d89cde225dcd70145b",
      "sender": "luke-jr",
      "payload": "no backup/restore involved",
      "action": false,
      "timestamp": "2017-09-28T19:47:20+00:00"
    },
    {
      "id": "e4fdf8afe8cd4faab3bd0a59d594ba86",
      "sender": "BlueMatt",
      "payload": "sipa: so it sounds like we're back to needing to bump wallet version?",
      "action": false,
      "timestamp": "2017-09-28T19:47:26+00:00"
    },
    {
      "id": "525f0241726045bb8108282b54b42ff3",
      "sender": "sipa",
      "payload": "BlueMatt: that would be nice, yes...",
      "action": false,
      "timestamp": "2017-09-28T19:47:41+00:00"
    },
    {
      "id": "fe1ba08766d548ca8641f208227c4915",
      "sender": "gmaxwell",
      "payload": "luke-jr: right, it doesn't downgrade.",
      "action": false,
      "timestamp": "2017-09-28T19:47:45+00:00"
    },
    {
      "id": "b786cd802a1a4b47a4110053bb48d066",
      "sender": "gmaxwell",
      "payload": "luke-jr: but downgrading is just not possible to support here. At best it can look kinda like it works but lose funds.",
      "action": false,
      "timestamp": "2017-09-28T19:48:05+00:00"
    },
    {
      "id": "a0f867d7d4864a76ae016a096352e787",
      "sender": "BlueMatt",
      "payload": "sipa: so are we back to the wallet-overhaul-ish approach, then?",
      "action": false,
      "timestamp": "2017-09-28T19:48:10+00:00"
    },
    {
      "id": "ad075bb0ceba4701ae67de4e255ee194",
      "sender": "morcos",
      "payload": "sipa: it would be really helpful if you would spell this all out in a document.  including how it'll interact with 0.16",
      "action": false,
      "timestamp": "2017-09-28T19:48:13+00:00"
    },
    {
      "id": "792d6dfc168a470c9e6046210699325c",
      "sender": "luke-jr",
      "payload": "if it doesn't downgrade, I see no value in this temporary approach",
      "action": false,
      "timestamp": "2017-09-28T19:48:18+00:00"
    },
    {
      "id": "e8504a6feb3941ca889842bf930d6e84",
      "sender": "sipa",
      "payload": "morcos: it's spelled out",
      "action": false,
      "timestamp": "2017-09-28T19:48:24+00:00"
    },
    {
      "id": "7e64376350ad414f9c5c52d8b08b89ce",
      "sender": "sipa",
      "payload": "BlueMatt: NO",
      "action": false,
      "timestamp": "2017-09-28T19:48:25+00:00"
    },
    {
      "id": "da46f695aef1418090dc7be991585557",
      "sender": "gmaxwell",
      "payload": "jesus fucking christ.",
      "action": false,
      "timestamp": "2017-09-28T19:48:28+00:00"
    },
    {
      "id": "75dc672479804f9cae055602fc87456d",
      "sender": "sipa",
      "payload": "BlueMatt: all we need is a version number",
      "action": false,
      "timestamp": "2017-09-28T19:48:39+00:00"
    },
    {
      "id": "ecc0d6f2ea124b57ad669019f5ac642e",
      "sender": "morcos",
      "payload": "lets find flaws in the overall plan now, and not wait and realize we made a mistake now that makes 0.16 more difficult",
      "action": false,
      "timestamp": "2017-09-28T19:48:41+00:00"
    },
    {
      "id": "259e067a5ebe45f1bc5c2d2ad3307d14",
      "sender": "sipa",
      "payload": "overhauling will take far longer",
      "action": false,
      "timestamp": "2017-09-28T19:48:47+00:00"
    },
    {
      "id": "cbb2e54de36f46f3b353f956cc4d09cb",
      "sender": "morcos",
      "payload": "sipa: where is it spelled out",
      "action": false,
      "timestamp": "2017-09-28T19:48:49+00:00"
    },
    {
      "id": "6540a380260b487782f573f56435280a",
      "sender": "sipa",
      "payload": "morcos: it doesn't make 0.16 harder",
      "action": false,
      "timestamp": "2017-09-28T19:48:53+00:00"
    },
    {
      "id": "22b4c25e751a4d6fa64cc4812ffe3926",
      "sender": "gmaxwell",
      "payload": "luke-jr: If you don't see value in supporting segwit this year then I don't have anything more to discuss with you.",
      "action": false,
      "timestamp": "2017-09-28T19:48:54+00:00"
    },
    {
      "id": "7e701f1216c64a88ab45ab3dfb575f98",
      "sender": "morcos",
      "payload": "i agree, overhaul is goign to take a long time",
      "action": false,
      "timestamp": "2017-09-28T19:48:56+00:00"
    },
    {
      "id": "3257cc6cca5d48cabaa2058c24ca4516",
      "sender": "morcos",
      "payload": "but i just want to understand now what we are going to do",
      "action": false,
      "timestamp": "2017-09-28T19:49:05+00:00"
    },
    {
      "id": "d7b8d56057784f908d2e7156961ae14a",
      "sender": "BlueMatt",
      "payload": "sipa: well at a minimum its now blocked on hd upgrade, then, no?",
      "action": false,
      "timestamp": "2017-09-28T19:49:10+00:00"
    },
    {
      "id": "ec6dec11fb434357aab8f75d3a9a1738",
      "sender": "sipa",
      "payload": "BlueMatt: no",
      "action": false,
      "timestamp": "2017-09-28T19:49:21+00:00"
    },
    {
      "id": "9244fa1c3523490c812547ac339ec202",
      "sender": "BlueMatt",
      "payload": "why not?",
      "action": false,
      "timestamp": "2017-09-28T19:49:24+00:00"
    },
    {
      "id": "4a221e7166ec4ff08fe60e960a71e576",
      "sender": "gmaxwell",
      "payload": "BlueMatt: there is a pretty straight forward fix, set the version to maximum and introduce a new version field.",
      "action": false,
      "timestamp": "2017-09-28T19:49:34+00:00"
    },
    {
      "id": "58a55ab310eb4a1485b3cf3235fb42a4",
      "sender": "BlueMatt",
      "payload": "argh, lets not",
      "action": false,
      "timestamp": "2017-09-28T19:49:47+00:00"
    },
    {
      "id": "a8721686867345b0b7a2f637807f5516",
      "sender": "sipa",
      "payload": "hd upgrade requires a new backup",
      "action": false,
      "timestamp": "2017-09-28T19:49:52+00:00"
    },
    {
      "id": "60e7668f9c8a4ff89ddd638dc20263eb",
      "sender": "sipa",
      "payload": "_this doesn't_",
      "action": false,
      "timestamp": "2017-09-28T19:49:54+00:00"
    },
    {
      "id": "3f05c07d0bfe45a888962555030edfd6",
      "sender": "BlueMatt",
      "payload": "hd upgrade requires no more backup than keypool topup",
      "action": false,
      "timestamp": "2017-09-28T19:50:12+00:00"
    },
    {
      "id": "894d6aff55964152ad84473a5a04ebc1",
      "sender": "sipa",
      "payload": "it should simply be \"minimum software version to read this file is X\"",
      "action": false,
      "timestamp": "2017-09-28T19:50:15+00:00"
    },
    {
      "id": "4e33ae91c3d3490388efe73c0c4e688b",
      "sender": "BlueMatt",
      "payload": "(hd upgrade doesnt neccessarily imply you *must* wipe your keypool)",
      "action": false,
      "timestamp": "2017-09-28T19:50:22+00:00"
    },
    {
      "id": "57f2549650334cd0ad78062b295c4f48",
      "sender": "sipa",
      "payload": "BlueMatt: it will write a hd master key though, which must be backed up",
      "action": false,
      "timestamp": "2017-09-28T19:50:35+00:00"
    },
    {
      "id": "578e3e18264046678bf296b0f8fddb68",
      "sender": "BlueMatt",
      "payload": "(and is also quite simple)",
      "action": false,
      "timestamp": "2017-09-28T19:50:36+00:00"
    },
    {
      "id": "ec03bbc75b4846ea8a79304171aaa185",
      "sender": "BlueMatt",
      "payload": "sipa: no more than topping up your keypool? or you mean you'd want to be able to use segwit-wallet without keypool topup and with an encrypted (and locked) wallet?",
      "action": false,
      "timestamp": "2017-09-28T19:51:01+00:00"
    },
    {
      "id": "5dcb5737eb1847188fcb885f70a8c258",
      "sender": "sipa",
      "payload": "so to be clear... it *is* possible to make downgrade work, if restoring a backup with an older version isn't a concern - though at the cost of some bloat",
      "action": false,
      "timestamp": "2017-09-28T19:51:25+00:00"
    },
    {
      "id": "ec5be8f8e3b84322b1524de2e031ae7b",
      "sender": "sipa",
      "payload": "and it may make expectations unclear",
      "action": false,
      "timestamp": "2017-09-28T19:51:33+00:00"
    },
    {
      "id": "d189f73252e2489692eb9ac8d81dcc04",
      "sender": "BlueMatt",
      "payload": "you mean as long as you dont restore a backup, just use the latest wallet, right?",
      "action": false,
      "timestamp": "2017-09-28T19:52:07+00:00"
    },
    {
      "id": "9f9b8833529b43e48090e76652a8bb5f",
      "sender": "BlueMatt",
      "payload": "ie via the addwitnessaddress method?",
      "action": false,
      "timestamp": "2017-09-28T19:52:15+00:00"
    },
    {
      "id": "13a29f911a834ff583d1f39049062914",
      "sender": "sipa",
      "payload": "yes",
      "action": false,
      "timestamp": "2017-09-28T19:52:18+00:00"
    },
    {
      "id": "95662fc842c54992b0b709ed2bd25225",
      "sender": "gmaxwell",
      "payload": "restoring a backup is always a concern though.  I don't understand why downgrading suddenly shows up as a hard requirement. It's something that you generally can't do with a new feature except through the cheat of introducing it first but disabled.",
      "action": false,
      "timestamp": "2017-09-28T19:52:22+00:00"
    },
    {
      "id": "74e76c10362f40fb85d30d9f26add2ef",
      "sender": "BlueMatt",
      "payload": "gmaxwell: yes, but we generally \"support\" it in the sense that you have to manually do -walletupgrade if you want new features",
      "action": false,
      "timestamp": "2017-09-28T19:52:51+00:00"
    },
    {
      "id": "5154fab4c4ed47afb11aea97029cbc3c",
      "sender": "sdaftuar",
      "payload": "gmaxwell: i agree that restoring a backup is important, and supporting downgrade not a big deal",
      "action": false,
      "timestamp": "2017-09-28T19:52:56+00:00"
    },
    {
      "id": "b15ef901f0774466a77443dc223004fa",
      "sender": "morcos",
      "payload": "sipa: i'm sorry if i missed this, but can you point me to where this is spelled out or just explain what we will do when you upgrade to a 0.16 wallet?  Add 3x number of keys pkscripts to your ismine set?  which we'll do for all keys in your wallet for all time?",
      "action": false,
      "timestamp": "2017-09-28T19:53:01+00:00"
    },
    {
      "id": "467af40decf14dc59f971ca5687d53b1",
      "sender": "gmaxwell",
      "payload": "BlueMatt: don't restore a backup, don't run concurrent copies... perhaps some other corner cases we haven't considered.",
      "action": false,
      "timestamp": "2017-09-28T19:53:04+00:00"
    },
    {
      "id": "f8514db985244852b63b018b5e38b4e6",
      "sender": "BlueMatt",
      "payload": "and thus we support running the latest version and going back to the previous release eg if there's some critical issue for you",
      "action": false,
      "timestamp": "2017-09-28T19:53:06+00:00"
    },
    {
      "id": "3f0da650516b49bcb611a07a774ab740",
      "sender": "sipa",
      "payload": "> Every wallet key implicitly adds its corresponding P2WPKH script to the wallet's known redeemscripts - without writing to the file. This is simpler, needs significantly less space on disk, needs no one-time upgrade for existing keys, but does mean that once a SegWit address has been used, you can't really downgrade to older software anymore.",
      "action": false,
      "timestamp": "2017-09-28T19:53:13+00:00"
    },
    {
      "id": "e638eeb5e9434e119971f59c725002a2",
      "sender": "BlueMatt",
      "payload": "\"don't restore a backup\"???",
      "action": false,
      "timestamp": "2017-09-28T19:53:16+00:00"
    },
    {
      "id": "c6d39ba5581244048bd74a62b0f506da",
      "sender": "sipa",
      "payload": "^ from my PR description",
      "action": false,
      "timestamp": "2017-09-28T19:53:21+00:00"
    },
    {
      "id": "a4b5216327974169ab4c9fa248a82dfc",
      "sender": "BlueMatt",
      "payload": "sipa: yes, to me that implies we need to bump wallet version",
      "action": false,
      "timestamp": "2017-09-28T19:53:41+00:00"
    },
    {
      "id": "f4c4262c6b2f42d09f63beb70cb15496",
      "sender": "morcos",
      "payload": "i would distinguish that from the addwitness approach where you wouldn't have to do that (but you could have an i'm upgrading from a backup option that does do that to make sure you didn't miss anything)",
      "action": false,
      "timestamp": "2017-09-28T19:53:45+00:00"
    },
    {
      "id": "9d0a2a50dd2d4c0e81a86335ffa8a76b",
      "sender": "BlueMatt",
      "payload": "which is fine, but that leads us back to the question of hd upgrade",
      "action": false,
      "timestamp": "2017-09-28T19:53:53+00:00"
    },
    {
      "id": "6c4f5b2b8aa44f3abecc1f829f44f104",
      "sender": "BlueMatt",
      "payload": "we can do some hack to let people upgrade to segwit-wallet without an hd upgrade",
      "action": false,
      "timestamp": "2017-09-28T19:54:04+00:00"
    },
    {
      "id": "b343c5cadad846619752e7e70c34a320",
      "sender": "BlueMatt",
      "payload": "or we can jsut implement hd upgrade, which I think is rather trivial",
      "action": false,
      "timestamp": "2017-09-28T19:54:12+00:00"
    },
    {
      "id": "b4f458f96964409691bdeb49e93e45cc",
      "sender": "promag",
      "payload": "instagibbs: is https://github.com/bitcoin/bitcoin/pull/11407/files#diff-06ca130427d8b52a085dc51ffea1a541R545 really necessary?",
      "action": false,
      "timestamp": "2017-09-28T19:54:28+00:00"
    },
    {
      "id": "46b61b9c3d304c50a9365e894b9b98e3",
      "sender": "gmaxwell",
      "payload": "BlueMatt: Trivial but invalidates their backups.",
      "action": false,
      "timestamp": "2017-09-28T19:54:32+00:00"
    },
    {
      "id": "9838d3d540da400dbba0d2777505bf85",
      "sender": "instagibbs",
      "payload": "promag, meeting wait please",
      "action": false,
      "timestamp": "2017-09-28T19:54:37+00:00"
    },
    {
      "id": "bc2c9c1476b24ba083fbe6e70a9906bd",
      "sender": "BlueMatt",
      "payload": "gmaxwell: see previous discussion on keypool? or do you mean locked wallets?",
      "action": false,
      "timestamp": "2017-09-28T19:54:47+00:00"
    },
    {
      "id": "ac36a90688184161b4f7a00b800b5fd0",
      "sender": "BlueMatt",
      "payload": "thats a rather narrow use-case, no?",
      "action": false,
      "timestamp": "2017-09-28T19:54:50+00:00"
    },
    {
      "id": "1634b38327334dbd89baf8ba8722c6f3",
      "sender": "sipa",
      "payload": "BlueMatt: yeah, i don't know",
      "action": false,
      "timestamp": "2017-09-28T19:55:15+00:00"
    },
    {
      "id": "07ea86cf81aa43e28de716b379504761",
      "sender": "sipa",
      "payload": "i may be convinced of doing the addwitnessaddress approach",
      "action": false,
      "timestamp": "2017-09-28T19:55:25+00:00"
    },
    {
      "id": "5b04bd5082eb43e4b20752ccd384e80b",
      "sender": "BlueMatt",
      "payload": "would prefer hd-upgrade over dirty hacks, but I'm open to discussion",
      "action": true,
      "timestamp": "2017-09-28T19:55:36+00:00"
    },
    {
      "id": "8e4901073719455886c33fdf6a7f7eda",
      "sender": "sipa",
      "payload": "though i'm uneasy with the inability to restore while downgrading",
      "action": false,
      "timestamp": "2017-09-28T19:55:55+00:00"
    },
    {
      "id": "14c3413a72254e27bf6769c8853bc668",
      "sender": "BlueMatt",
      "payload": "yea, I'd tend to agree",
      "action": false,
      "timestamp": "2017-09-28T19:56:06+00:00"
    },
    {
      "id": "614a7d8b1dd6481bbea8c15a8d816e91",
      "sender": "luke-jr",
      "payload": "what if we bump the wallet version only in backups?",
      "action": false,
      "timestamp": "2017-09-28T19:56:19+00:00"
    },
    {
      "id": "d2ec77b64b0449d1b3fbde0536cbb1ef",
      "sender": "sipa",
      "payload": "on the other hand - everything will be fixed by upgrading again and rescanning",
      "action": false,
      "timestamp": "2017-09-28T19:56:20+00:00"
    },
    {
      "id": "c5813702bb9a4b89b773992737554214",
      "sender": "gmaxwell",
      "payload": "BlueMatt: hdupgrade invalidates backups, even without a locked wallet. Though thats another point you have to unlock to do it.",
      "action": false,
      "timestamp": "2017-09-28T19:56:26+00:00"
    },
    {
      "id": "74bf007ae823464a8546e4e900f96c26",
      "sender": "wumpus",
      "payload": "3 minutes to go",
      "action": false,
      "timestamp": "2017-09-28T19:56:35+00:00"
    },
    {
      "id": "0dc85ce69c7547c8ba2fc4ca292bbc39",
      "sender": "gmaxwell",
      "payload": "I think if restore isn't reliable we shouldn't run with the older version. Thats a big footgun in a mixed wallet where you may not notice a non-trivial percentage of funds vanishing.",
      "action": false,
      "timestamp": "2017-09-28T19:57:05+00:00"
    },
    {
      "id": "2802ad7f9d61473493dd488f19f6046e",
      "sender": "luke-jr",
      "payload": "backups don't need to use the same version as the latest-wallet",
      "action": false,
      "timestamp": "2017-09-28T19:57:23+00:00"
    },
    {
      "id": "fd9232c977264fc68d8b7911442facda",
      "sender": "sipa",
      "payload": "luke-jr: people use cp to make backups",
      "action": false,
      "timestamp": "2017-09-28T19:57:34+00:00"
    },
    {
      "id": "d108aa228d1f40d2a00ffe0e08fe4fd0",
      "sender": "luke-jr",
      "payload": "sipa: that's broken",
      "action": false,
      "timestamp": "2017-09-28T19:57:39+00:00"
    },
    {
      "id": "b7f3199bcf2b47588db356292faf28b5",
      "sender": "luke-jr",
      "payload": ":/",
      "action": false,
      "timestamp": "2017-09-28T19:57:43+00:00"
    },
    {
      "id": "d28a1e9e56694965aed69e1e708ea1e9",
      "sender": "sipa",
      "payload": "luke-jr: irrelevant - it will cause lost funds",
      "action": false,
      "timestamp": "2017-09-28T19:57:51+00:00"
    },
    {
      "id": "5df9e68adf2a4f84b0269240efdc6f6a",
      "sender": "luke-jr",
      "payload": "it can cause lost funds even as-is",
      "action": false,
      "timestamp": "2017-09-28T19:58:04+00:00"
    },
    {
      "id": "9a22d714c38d403ba6bc277fabc0f920",
      "sender": "gmaxwell",
      "payload": "luke-jr: yes, but it's a minor addition to make it not load in older software.",
      "action": false,
      "timestamp": "2017-09-28T19:58:26+00:00"
    },
    {
      "id": "8fd801fb339241cd861f52d96a2340b6",
      "sender": "jnewbery",
      "payload": "suggested topic: next Bitcoin Core meetup",
      "action": false,
      "timestamp": "2017-09-28T19:58:52+00:00"
    },
    {
      "id": "d15853aaecda4ce0915e28c67f485dd7",
      "sender": "sipa",
      "payload": "so, open for discussion perhaps on the PR: auto-add witnesses so downgrading when not restoring a backup works, or some scheme of versioning to make old software fail",
      "action": false,
      "timestamp": "2017-09-28T19:58:52+00:00"
    },
    {
      "id": "5361d41c7a1a4c1fbf77a54904463843",
      "sender": "sipa",
      "payload": "endtopic",
      "action": false,
      "timestamp": "2017-09-28T19:58:57+00:00"
    },
    {
      "id": "c9562dbdabae49dabd7e84ed6d4b999d",
      "sender": "wumpus",
      "payload": "#topic suggested topic: next Bitcoin Core meetup (jnewbery)",
      "action": false,
      "timestamp": "2017-09-28T19:58:59+00:00"
    },
    {
      "id": "9697a5defaa34e0db72e5796d77312e3",
      "sender": "BlueMatt",
      "payload": "sdaftuar: points out that downgrade + restore is always broken",
      "action": false,
      "timestamp": "2017-09-28T19:59:01+00:00"
    },
    {
      "id": "f3a69292605049e5b0cba41d3e270b3e",
      "sender": "achow101",
      "payload": "jnewbery: already?",
      "action": false,
      "timestamp": "2017-09-28T19:59:06+00:00"
    },
    {
      "id": "e5f8ed9fe62f4c2b9a13ad5fa61ee784",
      "sender": "BlueMatt",
      "payload": "cause even if you bump the version number....",
      "action": false,
      "timestamp": "2017-09-28T19:59:08+00:00"
    },
    {
      "id": "8ab40dc95d0545dbbb60d86b1d97f0f4",
      "sender": "instagibbs",
      "payload": "NYC :D",
      "action": false,
      "timestamp": "2017-09-28T19:59:10+00:00"
    },
    {
      "id": "02fbda7c0bbb4ba9982d8f9708142109",
      "sender": "BlueMatt",
      "payload": "hence why its nice to have an explicit walletupgrade",
      "action": false,
      "timestamp": "2017-09-28T19:59:15+00:00"
    },
    {
      "id": "9e24eb8ba45c4616b63f8850cfd84cbc",
      "sender": "jnewbery",
      "payload": "ok, just a quick announcement - we're in the early stages of planning the next one in NYC the week of March 5th 2018",
      "action": false,
      "timestamp": "2017-09-28T19:59:34+00:00"
    },
    {
      "id": "063bbb619f48444f9fed31b557b03856",
      "sender": "sipa",
      "payload": "jnewbery: what timeframe were you thinking of?",
      "action": false,
      "timestamp": "2017-09-28T19:59:34+00:00"
    },
    {
      "id": "d7610a1755314a5ab41a6b6de3088394",
      "sender": "luke-jr",
      "payload": "BlueMatt: can you elaborate on sdaftuar's point after meeting?",
      "action": false,
      "timestamp": "2017-09-28T19:59:40+00:00"
    },
    {
      "id": "1d8ad4cb9685458ca5c2105840dbb640",
      "sender": "jnewbery",
      "payload": "more details to follow by email",
      "action": false,
      "timestamp": "2017-09-28T19:59:44+00:00"
    },
    {
      "id": "660147971c894117b88e8146ff737606",
      "sender": "BlueMatt",
      "payload": "luke-jr: yes",
      "action": false,
      "timestamp": "2017-09-28T19:59:47+00:00"
    },
    {
      "id": "8f236bf3767b4191a1628fd74adf0655",
      "sender": "wumpus",
      "payload": "achow101: better to plan it long in advance so people can take it into account, instead of on short notice",
      "action": false,
      "timestamp": "2017-09-28T20:00:02+00:00"
    },
    {
      "id": "36a7eb891c2448fa9788f14ceeac2553",
      "sender": "luke-jr",
      "payload": "I'm expecting a baby in February, so I will probably pass on the March meetup",
      "action": false,
      "timestamp": "2017-09-28T20:00:15+00:00"
    },
    {
      "id": "65e75b09a9034bfea10ccf62f8dabd01",
      "sender": "jonasschnelli",
      "payload": "jnewbery: thanks for the date! thanks for organising.",
      "action": false,
      "timestamp": "2017-09-28T20:00:17+00:00"
    },
    {
      "id": "a84e2c71ca81494486d214d48da04ac9",
      "sender": "cfields",
      "payload": "jnewbery: woohoo! thanks for planning!",
      "action": false,
      "timestamp": "2017-09-28T20:00:18+00:00"
    },
    {
      "id": "5a0a56dfcfbb4a94b5387946e8440750",
      "sender": "sipa",
      "payload": "jnewbery: cool, on the way back from Financial Crypto :)",
      "action": false,
      "timestamp": "2017-09-28T20:00:24+00:00"
    },
    {
      "id": "8ebee1e86db644c5a68ab261b17d9e3a",
      "sender": "instagibbs",
      "payload": "\\o/ marked on it calender",
      "action": false,
      "timestamp": "2017-09-28T20:00:26+00:00"
    },
    {
      "id": "9d0b77411ced4cf7b9dc9a04b1718a5b",
      "sender": "jonasschnelli",
      "payload": "can't attend NYC... to bad",
      "action": true,
      "timestamp": "2017-09-28T20:00:30+00:00"
    },
    {
      "id": "c0745d05fc4c43c2b352a805c53815fc",
      "sender": "wumpus",
      "payload": "jnewbery: works for me",
      "action": false,
      "timestamp": "2017-09-28T20:00:30+00:00"
    },
    {
      "id": "ce6382977cbf4924930d12f8d5c26e5f",
      "sender": "cfields",
      "payload": "luke-jr: didn't know that, congrats :)",
      "action": false,
      "timestamp": "2017-09-28T20:01:12+00:00"
    },
    {
      "id": "f6016724a7cb4380a50509443f8813b3",
      "sender": "wumpus",
      "payload": "jonasschnelli: that's two times US in a row, let's plan another one in europe next",
      "action": false,
      "timestamp": "2017-09-28T20:01:18+00:00"
    },
    {
      "id": "4a48dca90bc34c26944fb43aa3af8a00",
      "sender": "luke-jr",
      "payload": "cfields: thx",
      "action": false,
      "timestamp": "2017-09-28T20:01:19+00:00"
    },
    {
      "id": "dd06d531604c408ab14b5d00a562554b",
      "sender": "promag",
      "payload": "europe +1",
      "action": false,
      "timestamp": "2017-09-28T20:01:45+00:00"
    },
    {
      "id": "560e974c72f242ed8a4a85936eaab27e",
      "sender": "jonasschnelli",
      "payload": "wumpus: I can organise fall 2018 in Europe",
      "action": false,
      "timestamp": "2017-09-28T20:01:47+00:00"
    },
    {
      "id": "219d0bf23e424a1cbf4a8360aba48633",
      "sender": "luke-jr",
      "payload": "we haven't done Australia or Russia yet. but those might just be inconvenient for too many people :p",
      "action": false,
      "timestamp": "2017-09-28T20:01:50+00:00"
    },
    {
      "id": "f91ee97c8bf144f28927fdf5c9e3f496",
      "sender": "jnewbery",
      "payload": "New York is almost in Europe. Just a short flight :)",
      "action": false,
      "timestamp": "2017-09-28T20:01:52+00:00"
    },
    {
      "id": "f67d2b7f38d74c82964b90ae7ffa7d8e",
      "sender": "meshcollider",
      "payload": "Australia +1 ;)",
      "action": false,
      "timestamp": "2017-09-28T20:02:00+00:00"
    },
    {
      "id": "9257ca207799410fa4925f8c328317b3",
      "sender": "luke-jr",
      "payload": "jnewbery: lol",
      "action": false,
      "timestamp": "2017-09-28T20:02:01+00:00"
    },
    {
      "id": "faf97459f3ac4b2d8314679a44ab48e7",
      "sender": "achow101",
      "payload": "lol",
      "action": false,
      "timestamp": "2017-09-28T20:02:01+00:00"
    },
    {
      "id": "ef6ca4e1750e4669b352b7db7737e4d8",
      "sender": "jonasschnelli",
      "payload": "jnewbery: hehe",
      "action": false,
      "timestamp": "2017-09-28T20:02:16+00:00"
    },
    {
      "id": "4182d4d62bf84f83a95622b1cca772f5",
      "sender": "wumpus",
      "payload": "austrialia would be fine with me too, russia meh",
      "action": false,
      "timestamp": "2017-09-28T20:02:22+00:00"
    },
    {
      "id": "4644a17d011c405da2559e17fce26eb8",
      "sender": "instagibbs",
      "payload": "not incredibly bad for Tokyo folks",
      "action": false,
      "timestamp": "2017-09-28T20:02:26+00:00"
    },
    {
      "id": "82601378bdac40e48cd77329d28a0df0",
      "sender": "cfields",
      "payload": "votes for fanquake to host one at his place",
      "action": true,
      "timestamp": "2017-09-28T20:02:27+00:00"
    },
    {
      "id": "0284d7be48f9427eae238e2f117c7ea4",
      "sender": "wumpus",
      "payload": "anyhow thanks everyone, it's time to wrap up the meeting",
      "action": false,
      "timestamp": "2017-09-28T20:02:48+00:00"
    },
    {
      "id": "6d90df25969d44aba1fd1a4895d2bd9f",
      "sender": "sipa",
      "payload": "votes for Iceland in the summer",
      "action": true,
      "timestamp": "2017-09-28T20:02:52+00:00"
    },
    {
      "id": "a011927e98564c75a193fca1c9dafdf3",
      "sender": "jonasschnelli",
      "payload": "Iceland would be cool...",
      "action": false,
      "timestamp": "2017-09-28T20:03:06+00:00"
    },
    {
      "id": "458ca730e5944ab29d27707f90ece913",
      "sender": "jonasschnelli",
      "payload": "and cold",
      "action": false,
      "timestamp": "2017-09-28T20:03:18+00:00"
    },
    {
      "id": "e27719fa66bd4788b0daadc06e28ad9a",
      "sender": "wumpus",
      "payload": "jonasschnelli: finally a meeting in UTC+0!",
      "action": false,
      "timestamp": "2017-09-28T20:03:19+00:00"
    },
    {
      "id": "da67f8b292964188a4cee52c00efbf4a",
      "sender": "BlueMatt",
      "payload": "wumpus: long since time",
      "action": false,
      "timestamp": "2017-09-28T20:03:20+00:00"
    },
    {
      "id": "90089bbc084c42c59c349797b684013c",
      "sender": "meshcollider",
      "payload": "https://www.irccloud.com/pastebin/XrHj6tr8",
      "action": false,
      "timestamp": "2017-09-28T20:03:20+00:00"
    },
    {
      "id": "6c4eefd0ff6d4f8bb45134618abaa9b4",
      "sender": "wumpus",
      "payload": "#endmeeting",
      "action": false,
      "timestamp": "2017-09-28T20:03:23+00:00"
    }
  ],
  "events": [
    {
      "event_type": "START_MEETING",
      "message": {
        "id": "377dc822321c4d8aaacef93da7aa5830",
        "sender": "wumpus",
        "payload": "#startmeeting",
        "action": false,
        "timestamp": "2017-09-28T19:01:29+00:00"
      },
      "operand": null,
      "id": "377dc822321c4d8aaacef93da7aa5830",
      "timestamp": "2017-09-28T19:01:29+00:00"
    },
    {
      "event_type": "ACTION",
      "message": {
        "id": "cf2a7a51fce04f9293bbf5eb8b219a35",
        "sender": "wumpus",
        "payload": "#action find the bot",
        "action": false,
        "timestamp": "2017-09-28T19:02:38+00:00"
      },
      "operand": "find the bot",
      "id": "cf2a7a51fce04f9293bbf5eb8b219a35",
      "timestamp": "2017-09-28T19:02:38+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "2d322127ced8498c91248ebb19891a3b",
        "sender": "wumpus",
        "payload": "#topic High priority for review",
        "action": false,
        "timestamp": "2017-09-28T19:03:42+00:00"
      },
      "operand": "High priority for review",
      "id": "2d322127ced8498c91248ebb19891a3b",
      "timestamp": "2017-09-28T19:03:42+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "3c866fba61a4423dab9398e00833f428",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/10387 | Implement BIP159, define and signal NODE_NETWORK_LIMITED (pruned peers) by jonasschnelli \u00c3\u0082\u00c2\u00b7 Pull Request #10387 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:05:35+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/10387",
      "id": "3c866fba61a4423dab9398e00833f428",
      "timestamp": "2017-09-28T19:05:35+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "cff98685afc84905bfe7f51d871a5be1",
        "sender": "wumpus",
        "payload": "#topic put up 0.16 release schedule",
        "action": false,
        "timestamp": "2017-09-28T19:06:01+00:00"
      },
      "operand": "put up 0.16 release schedule",
      "id": "cff98685afc84905bfe7f51d871a5be1",
      "timestamp": "2017-09-28T19:06:01+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "66429f5b866b4a46b54c7782336f8c04",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/11089 | Enable various p2sh-p2wpkh functionality by luke-jr \u00c3\u0082\u00c2\u00b7 Pull Request #11089 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:07:00+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/11089",
      "id": "66429f5b866b4a46b54c7782336f8c04",
      "timestamp": "2017-09-28T19:07:00+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "8fe2d21d698f42599a5839c913bdc1a2",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/10637 | Coin Selection with Murchs algorithm by achow101 \u00c3\u0082\u00c2\u00b7 Pull Request #10637 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:07:05+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/10637",
      "id": "8fe2d21d698f42599a5839c913bdc1a2",
      "timestamp": "2017-09-28T19:07:05+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "d966af68710f43aa8637fe9a52fa1d40",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/11403 | SegWit wallet support by sipa \u00c3\u0082\u00c2\u00b7 Pull Request #11403 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:07:38+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/11403",
      "id": "d966af68710f43aa8637fe9a52fa1d40",
      "timestamp": "2017-09-28T19:07:38+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "d667534dcab246de95caec9e9e4926e8",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/10615 | RPC: Allow rpcauth configs to specify a 4th parameter naming a specific wallet (multiwallet RPC support) by luke-jr \u00c3\u0082\u00c2\u00b7 Pull Request #10615 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:09:19+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/10615",
      "id": "d667534dcab246de95caec9e9e4926e8",
      "timestamp": "2017-09-28T19:09:19+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "114a433b28f4472c9c29b4af30218f00",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/7965 | Remaining instances of ENABLE_WALLET in `libbitcoin_server.a` \u00c3\u0082\u00c2\u00b7 Issue #7965 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:12:54+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/7965",
      "id": "114a433b28f4472c9c29b4af30218f00",
      "timestamp": "2017-09-28T19:12:54+00:00"
    },
    {
      "event_type": "ACTION",
      "message": {
        "id": "815e6d2abcb54d8d99645ff1337c23bd",
        "sender": "luke-jr",
        "payload": "#action refactor #10615 for a \"populate JSONRequest\" callback, and separate out rpcauth stuff",
        "action": false,
        "timestamp": "2017-09-28T19:14:28+00:00"
      },
      "operand": "refactor #10615 for a \"populate JSONRequest\" callback, and separate out rpcauth stuff",
      "id": "815e6d2abcb54d8d99645ff1337c23bd",
      "timestamp": "2017-09-28T19:14:28+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "62df94d785bc4099a54015fa2bbecd2a",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/10615 | RPC: Allow rpcauth configs to specify a 4th parameter naming a specific wallet (multiwallet RPC support) by luke-jr \u00c3\u0082\u00c2\u00b7 Pull Request #10615 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:14:29+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/10615",
      "id": "62df94d785bc4099a54015fa2bbecd2a",
      "timestamp": "2017-09-28T19:14:29+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "3fddb2cd3431437e9ee30312d40c0a9e",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/11383 | Basic Multiwallet GUI support by luke-jr \u00c3\u0082\u00c2\u00b7 Pull Request #11383 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:18:19+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/11383",
      "id": "3fddb2cd3431437e9ee30312d40c0a9e",
      "timestamp": "2017-09-28T19:18:19+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "c9b511e5c5c8413296d49930b57f1f3d",
        "sender": "wumpus",
        "payload": "#topic RPC long poll",
        "action": false,
        "timestamp": "2017-09-28T19:19:48+00:00"
      },
      "operand": "RPC long poll",
      "id": "c9b511e5c5c8413296d49930b57f1f3d",
      "timestamp": "2017-09-28T19:19:48+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "5344902bf5df43ab9ee675939689ebe4",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/10554 | ZMQ: add publishers for wallet transactions. by somdoron \u00c3\u0082\u00c2\u00b7 Pull Request #10554 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:29:39+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/10554",
      "id": "5344902bf5df43ab9ee675939689ebe4",
      "timestamp": "2017-09-28T19:29:39+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "afa106f4b72c49cdac4240c17187f4c0",
        "sender": "wumpus",
        "payload": "#topic segwit wallet support",
        "action": false,
        "timestamp": "2017-09-28T19:35:06+00:00"
      },
      "operand": "segwit wallet support",
      "id": "afa106f4b72c49cdac4240c17187f4c0",
      "timestamp": "2017-09-28T19:35:06+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "8f6add76d5974d41bc78cdf172fdffbc",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/11403 | SegWit wallet support by sipa \u00c3\u0082\u00c2\u00b7 Pull Request #11403 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2017-09-28T19:35:52+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/11403",
      "id": "8f6add76d5974d41bc78cdf172fdffbc",
      "timestamp": "2017-09-28T19:35:52+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "c9562dbdabae49dabd7e84ed6d4b999d",
        "sender": "wumpus",
        "payload": "#topic suggested topic: next Bitcoin Core meetup (jnewbery)",
        "action": false,
        "timestamp": "2017-09-28T19:58:59+00:00"
      },
      "operand": "suggested topic: next Bitcoin Core meetup (jnewbery)",
      "id": "c9562dbdabae49dabd7e84ed6d4b999d",
      "timestamp": "2017-09-28T19:58:59+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "90089bbc084c42c59c349797b684013c",
        "sender": "meshcollider",
        "payload": "https://www.irccloud.com/pastebin/XrHj6tr8",
        "action": false,
        "timestamp": "2017-09-28T20:03:20+00:00"
      },
      "operand": "https://www.irccloud.com/pastebin/XrHj6tr8",
      "id": "90089bbc084c42c59c349797b684013c",
      "timestamp": "2017-09-28T20:03:20+00:00"
    },
    {
      "event_type": "END_MEETING",
      "message": {
        "id": "6c4eefd0ff6d4f8bb45134618abaa9b4",
        "sender": "wumpus",
        "payload": "#endmeeting",
        "action": false,
        "timestamp": "2017-09-28T20:03:23+00:00"
      },
      "operand": null,
      "id": "6c4eefd0ff6d4f8bb45134618abaa9b4",
      "timestamp": "2017-09-28T20:03:23+00:00"
    }
  ],
  "aliases": {},
  "vote_in_progress": false,
  "motion_index": null
}