03:00:54  * hyperirc-9d25a90quit (Remote host closed the connection)
03:01:02  * hyperirc-9d25a90joined
03:28:09  <noffle>substack: this fella has been trying to fix an issue and get this PR landed for a while, if you get a sec: https://github.com/substack/picture-tube/pull/11
03:28:28  <noffle>him and I had a back and forth on node-charm, but it's a package.json dep issue on picture-tube that's the problem
04:19:55  * hyperirc-9d25a90quit (Read error: Connection reset by peer)
04:20:06  * hyperirc-9d25a90joined
04:20:16  * timoxleyquit (Ping timeout: 248 seconds)
04:20:49  * milkandtangquit (Ping timeout: 248 seconds)
04:23:19  * milkandtangjoined
04:24:51  * timoxleyjoined
10:25:32  * mylesborinsquit (Quit: farewell for now)
10:26:11  * mylesborinsjoined
18:47:25  <kumavis>mafintosh: > push (null) plus draining the stream will do the trick
18:47:25  <kumavis>what does "draining the stream" mean in this context
18:47:30  <kumavis>sorry to pick this up so much later
18:49:12  <kumavis>prepping a reproduceable thing
18:56:00  <mafintosh>kumavis: attaching a data listener, piping, or calling . resume
18:56:14  <kumavis>right ok
18:56:33  <kumavis>almost done with my example
19:08:25  <kumavis>mafintosh: https://github.com/kumavis/eos-duplex-test
19:08:50  <kumavis>sorry for whole repo but testing deps so seemed easiest
19:09:59  <kumavis>my assumption is that _onDisconnect should trigger end-of-stream, but it does not
19:26:22  <kumavis>mafintosh: findings so far:
19:26:22  <kumavis>- eos seems to be waiting for the duplex to emit 'finish'
19:26:22  <kumavis>- 'finish' is not being emitted because state.ending is false for both calls of finishMaybe
19:26:22  <kumavis>- state.ending is false bc stream.end is never called
19:37:18  <kumavis>maybe i should be calling `stream.destroy()` ?
19:37:35  <kumavis>on transport failure
19:39:54  <kumavis>it triggers the eos handler
19:45:20  * phatedjoined
19:49:35  * phatedquit (Ping timeout: 240 seconds)
20:00:36  <mafintosh>kumavis: your stream is duplex so it waits for both and the readable and writable side to end
20:01:03  <mafintosh>kumavis: and where do you .push(null) the source?
20:01:38  <kumavis>mafintosh: inside _onDisconnect
20:02:03  <kumavis>want to simulate a disconnect/failure in the underlying transport
20:07:39  <kumavis>https://github.com/kumavis/eos-duplex-test/blob/master/fake-transport.js#L22-L24
20:21:10  * phatedjoined
20:24:21  * phated_joined
20:26:40  * phatedquit (Ping timeout: 248 seconds)
21:05:46  * phated_quit (Remote host closed the connection)
21:23:59  <kumavis>mafintosh: could i hire you for a couple hours to audit our stream stuff? open source, no nda, pay in btc/eth/whatever
21:25:25  <kumavis>i think it would take you less than 1 hour, its not a lot of code, just a lot of streams with short life cycles so proper cleanup is necesary
21:28:49  <kumavis>im just making that offer bc i dont know how to capture your attention long enough to figure out the correct way to do things
21:37:13  <mafintosh>kumavis: sure, dm me
21:41:12  <mafintosh>kumavis: (you don't have to pay me also)
21:41:33  <mafintosh>you can make a donation of your choice to our non profit instead
21:53:50  <ogd>i approve of this answer
22:16:10  * phatedjoined
22:20:47  * phatedquit (Ping timeout: 248 seconds)
23:58:12  <kumavis>i would be very happy to do that