00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:07  * ircretaryjoined
00:06:14  * brsonquit (Quit: leaving)
00:08:45  * ericktquit (Quit: erickt)
00:39:34  <isaacs>oh, my, strange things happen when yo utry to read() from stdout
00:41:15  * ericktjoined
00:41:55  <isaacs>in osx at least, it's as if 0, 1, and 2 are all the same fd, for the purpose of reading, which makes sense, since they'r eall /dev/tty, I suppose.
00:42:36  <isaacs>so tests (not in tty mode) would pass just fine, but the first 0, 1, or 2 writes would not make it into the repl, somewhat randomly
00:42:39  <isaacs>but usually 2
00:43:07  <isaacs>that has been making me think i might be insane.
00:46:58  * warzquit
01:14:40  * indutnyquit (*.net *.split)
01:14:40  * kristatequit (*.net *.split)
01:14:40  * ryahquit (*.net *.split)
01:14:58  * ryahjoined
01:17:25  * kristatejoined
01:38:23  * joshthecoderjoined
01:44:51  * jmar777quit (Remote host closed the connection)
02:02:15  * ericktquit (Quit: erickt)
03:04:11  * skebcioquit (Ping timeout: 260 seconds)
03:08:02  * skebciojoined
03:15:33  * indutnyjoined
03:17:14  * stagasquit (Ping timeout: 250 seconds)
03:49:50  * dapquit (Quit: Leaving.)
04:02:39  * stagasjoined
04:15:54  * joshthecoderquit (Quit: Leaving...)
04:47:40  * joshthecoderjoined
05:26:08  * AvianFluquit (Remote host closed the connection)
05:33:02  * bnoordhuisjoined
05:38:32  <bnoordhuis>morning
06:06:50  <isaacs>bnoordhuis: morning
06:06:59  <bnoordhuis>sup isaacs
06:07:19  <isaacs>bnoordhuis: do you know offhand where the code is that refs stdin on resume() and unrefs it on pause()?
06:07:35  <bnoordhuis>isaacs: in src/node.js, i think
06:07:58  <isaacs>hmm..
06:08:29  <bnoordhuis>isaacs: line 524 in master
06:09:34  <isaacs>right, so, that's where we call pause()
06:09:37  <isaacs>but why does pause() unref?
06:12:35  <isaacs>that's the part i can't seem to figure out
06:16:45  <isaacs>bnoordhuis: it looks like in master tty.ReadStream.pause() just calls net.Socket.pause() which does handle.readStop(). i can't figure out where stdin actually gets unrefed.
06:17:43  <isaacs>we expliitly unref *writable* stdio streams on creation
06:22:14  <bnoordhuis>isaacs: probably because there's only one uv_tty_t handle
06:25:06  <bnoordhuis>then again, maybe not
06:25:34  <bnoordhuis>node creates separate handles for fds 0-2
06:26:08  <bnoordhuis>this raises profound questions that i will be sure to ponder over my morning coffee. biab :)
06:27:57  * stagasquit (Read error: Connection reset by peer)
06:36:05  * stagasjoined
06:59:34  * jmar777joined
07:25:14  * felixgejoined
07:25:14  * felixgequit (Changing host)
07:25:14  * felixgejoined
07:30:09  * jmar777quit (Remote host closed the connection)
07:53:54  * skebcioquit (Read error: Connection reset by peer)
07:54:53  * rendarjoined
08:00:02  * skebciojoined
08:18:23  * felixgequit (Quit: felixge)
08:19:34  * `3rdEdenjoined
08:27:34  * `3rdEdenquit (Ping timeout: 240 seconds)
08:54:14  * felixgejoined
08:54:14  * felixgequit (Changing host)
08:54:14  * felixgejoined
09:07:21  * `3rdEdenjoined
09:13:34  * `3rdEdenquit (Ping timeout: 240 seconds)
09:14:36  * felixgequit (Ping timeout: 264 seconds)
09:42:18  * loladiroquit (Quit: loladiro)
10:13:04  * joshthecoderquit (Quit: Leaving...)
10:13:26  * AvianFlujoined
10:13:46  * hzjoined
10:14:00  * AvianFluquit (Remote host closed the connection)
10:29:08  * felixgejoined
10:29:09  * felixgequit (Changing host)
10:29:10  * felixgejoined
10:53:54  * felixgequit (Quit: felixge)
10:55:35  * felixgejoined
10:55:35  * felixgequit (Changing host)
10:55:35  * felixgejoined
11:02:14  <deoxxa>if anyone wants to sort out this jerk in #node.js that'd be nice
11:02:25  <deoxxa>it's been a few hours now he's been spamming pointless crap
11:07:41  * indutny_ajoined
11:18:49  * piscisaureus_joined
11:18:55  * piscisaureus_quit (Remote host closed the connection)
11:32:01  * felixgequit (Read error: Connection reset by peer)
11:32:33  * felixgejoined
11:32:33  * felixgequit (Changing host)
11:32:33  * felixgejoined
11:35:29  * indutny_a_bjoined
11:39:03  * indutny_aquit (Ping timeout: 255 seconds)
11:43:09  * piscisaureus_joined
11:43:15  * piscisaureus_quit (Client Quit)
11:56:30  * felixgequit (Quit: felixge)
11:59:43  * hzquit (Read error: Connection reset by peer)
12:00:54  * hzjoined
12:17:56  <bnoordhuis>deoxxa: i've muted him
12:23:17  * indutny_a_bquit (Ping timeout: 248 seconds)
12:26:58  * stagasquit (Read error: Connection timed out)
12:28:28  * stagasjoined
13:30:06  * piscisaureus_joined
13:31:33  <bnoordhuis>piscisaureus_: what's up, bertje?
13:31:40  <piscisaureus_>nothing bennetje
13:31:49  <piscisaureus_>I am hanging out with my family atm
13:31:56  <bnoordhuis>oh
13:32:01  <bnoordhuis>say hi to your mom from me
13:32:45  <piscisaureus_>bnoordhuis: she said she filed a suit already
13:33:03  <piscisaureus_>ok I was just coming online to say hi to fedor and then go
13:33:04  <bnoordhuis>rejection hits some women hard
13:33:19  <bnoordhuis>what do you need fedor for? i don't think he's around
13:35:16  <piscisaureus_>ok bnoordhuis, bye
13:35:22  <bnoordhuis>later bertje
13:35:24  <piscisaureus_>drop by in 020 some time next week
13:35:29  <bnoordhuis>yeah, i will
13:35:35  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
14:01:14  * hzquit
14:13:28  <MI6>joyent/libuv: Ben Noordhuis master * 52c8a86 : unix: add uv_cancel() (+1 more commits) - http://git.io/E5ILDg
14:14:37  <bnoordhuis>indutny: you around?
14:15:15  * travis-cijoined
14:15:15  <travis-ci>[travis-ci] joyent/libuv#935 (master - 52c8a86 : Ben Noordhuis): The build was broken.
14:15:15  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/b4168cd69738...52c8a8617de0
14:15:15  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/3576962
14:15:15  * travis-cipart
14:22:22  <bnoordhuis>ircretary: tell piscisaureus https://github.com/joyent/libuv/pull/535 <- review that or i'll blindly merge it and let you deal with the fallout >:(
14:22:23  <ircretary>bnoordhuis: I'll be sure to tell piscisaureus
14:23:37  <indutny>bnoordhuis: yes
14:23:43  <indutny>bnoordhuis: hi
14:23:51  <bnoordhuis>indutny: piscisaureus says hi
14:23:58  <indutny>oh he's with you :)
14:24:06  <indutny>sorry bert, I was walking with my wife
14:24:08  <bnoordhuis>no, but he was in here earlier today
14:24:13  <indutny>aaah
14:24:15  <indutny>ok
14:24:23  <bnoordhuis>have you reviewed my changes to your PR?
14:24:49  <bnoordhuis>'walking' - is that a code word?
14:25:35  <indutny>haha
14:25:43  <indutny>no, not really
14:25:49  <indutny>better rephrase it
14:25:53  <indutny>I was on a walk with my wife
14:25:56  <indutny>is this better?
14:26:00  <indutny>so about my patch
14:26:05  <indutny>where is the link to updated version?
14:26:10  <bnoordhuis>ah, very good - everyone should take out his wife for a walk
14:26:31  <bnoordhuis>i linked you to it friday, didn't i?
14:26:36  <indutny>yes
14:26:41  <indutny>but my memory is short
14:26:47  <bnoordhuis>yeah, so is mine
14:26:54  <indutny>ok, lets search irc history
14:27:08  <bnoordhuis>let's hope awesome bar's is better
14:27:25  <bnoordhuis>indutny: https://github.com/bnoordhuis/libuv/commit/209c966
14:27:31  <indutny>yeah
14:27:55  <bnoordhuis>besides the sheer beauty of it, does it lgty?
14:28:15  <indutny>not completely
14:28:21  <indutny>I thought I've updated PR with your patch
14:28:33  <indutny>there're some problems with your patch
14:28:36  <indutny>that I've fixed in mine
14:28:43  <indutny>bnoordhuis: https://github.com/joyent/libuv/pull/622/files
14:28:59  <bnoordhuis>oh, you force-pushed it
14:29:15  <indutny>yeah
14:29:19  <bnoordhuis>did you change anything else?
14:29:23  <indutny>ah
14:29:28  <indutny>I haven't pulled everything
14:29:33  <indutny>hm... I thought I did
14:29:53  <bnoordhuis>what didn't you pull in?
14:30:13  <indutny>well, at least uv__tcp_close() movement
14:30:15  <indutny>probably more
14:30:46  <indutny>hm....
14:30:47  <indutny>interesting
14:30:49  <bnoordhuis>that's because i moved the #ifdef block down a few lines
14:30:58  <indutny>ah
14:31:10  <indutny>yeah
14:31:13  <indutny>all other changes seems to be in
14:31:25  <indutny>so
14:31:29  <indutny>it would be cool
14:31:38  <indutny>if you'll verify fake_fd->int_fd stuff
14:31:48  <indutny>especially that I did it correctly
14:32:03  <indutny>I'm writing to fake_fd and waiting for events on int_fd
14:32:27  <bnoordhuis>oh, i assigned fd[0] to both int_fd and fake_fd?
14:32:31  <indutny>yes
14:32:33  <indutny>I fixed that
14:32:43  <bnoordhuis>well, that's a pretty big error - i wonder why it didn't trigger test failures...
14:32:46  <indutny>https://github.com/joyent/libuv/pull/622/files#L6R318
14:32:52  <indutny>because it isn't interrupting
14:33:05  <indutny>because only tty test is using select()able fd
14:33:18  <indutny>and it doesn't change any property of stream
14:33:37  <indutny>oh, btw
14:33:42  <indutny>there could be probably another problem
14:33:53  <indutny>cpu pipelining
14:34:19  <bnoordhuis>hmm?
14:34:21  <indutny>we should make ->flags sigatomic_t
14:35:55  <bnoordhuis>what does cpu pipelining have to do with that?
14:36:08  <indutny>bnoordhuis: well, it may queue write to stream flags
14:36:17  <indutny>and select() thread won't see changes after interruption
14:37:06  <bnoordhuis>indutny: can you rebase against master and force-push?
14:37:11  <indutny>sure
14:37:13  <indutny>one sec
14:39:31  <indutny>bnoordhuis: done
14:43:26  <MI6>joyent/libuv: Fedor Indutny master * 731adac : unix: use select() for specific fds on OS X kqueue(2) on osx doesn't wor - http://git.io/rhc4ug
14:43:31  <indutny>oh, nice
14:43:39  <indutny>so it does look good to you? :)
14:44:10  <bnoordhuis>yeah
14:44:19  <bnoordhuis>special-casing sucks but what you're gonna do eh?
14:44:59  <indutny>yes
14:45:01  <indutny>indeed
14:45:06  <indutny>we can write kernel module for it
14:45:06  * travis-cijoined
14:45:07  <travis-ci>[travis-ci] joyent/libuv#937 (master - 731adac : Fedor Indutny): The build was fixed.
14:45:07  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/52c8a8617de0...731adacad242
14:45:07  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/3577219
14:45:07  * travis-cipart
14:45:16  <indutny>I've recently read a couple of books about it
14:46:09  <bnoordhuis>xnu kernel modules?
14:50:12  <indutny>yeah
14:50:16  <indutny>why not
14:50:22  <indutny>though, they're called kext
14:50:30  <indutny>for obvious reasons
14:56:27  <indutny>actually, it's only about binding kqfilter when creating a character device
14:56:34  <indutny>for some obscure reasons it's NULL in xnu right now
14:56:36  <indutny>bnoordhuis: ^
14:56:51  <indutny>probably, they just thought it's not necessary enough
14:57:15  <bnoordhuis>okay, so you write a kernel module. and then what?
14:58:36  <indutny>and I think I can replace all that character devices, or hot patch them :)
14:58:39  <indutny>but no-one will use it
14:58:59  <indutny>because it's simplier to just mess with select() hacks, or don't work with ttys asynchronously
15:06:57  <indutny>bnoordhuis: so lets return to https://github.com/joyent/node/pull/4346
15:08:18  <bnoordhuis>yes?
15:10:52  <indutny>are you ok to land it in 0.11?
15:12:18  <bnoordhuis>i haven't really reviewed it
15:12:48  <bnoordhuis>but 0.11 means postponing that for another day, that's something i'm automatically okay with it
15:12:58  <indutny>ook :)
15:24:04  * dapjoined
15:36:04  * bnoordhuisquit (Ping timeout: 250 seconds)
15:41:36  * mmaleckichanged nick to mmalecki[away]
15:44:08  * felixgejoined
15:44:10  * felixgequit (Changing host)
15:44:10  * felixgejoined
15:44:50  * piscisaureus_joined
16:07:13  * dapquit (Quit: Leaving.)
16:19:14  * piscisaureus_quit (Ping timeout: 265 seconds)
16:22:35  * loladirojoined
16:31:02  * loladiroquit (Quit: loladiro)
16:56:09  <isaacs>today i'm going to make stdin work properly.
16:56:18  <isaacs>ifit means a thousand duct tape hacks.
16:58:45  * dapjoined
17:01:05  * hzjoined
17:19:43  <indutny>yayaya!
17:22:11  * jmar777joined
17:23:46  * piscisaureus_joined
17:26:46  * felixgequit (Quit: felixge)
17:32:26  <indutny>ahha
17:32:33  <indutny>isaacs: thanks man :)
17:32:34  <indutny>finally
17:32:39  <indutny>now I can force push master
17:33:25  <isaacs>indutny: only if you want to answer to piscisaureus_ and bnoordhuis
17:33:32  <indutny>ok :)
17:33:57  <isaacs>as long as it all works well when it gets to node, though, i don't really care too much.
17:34:05  <piscisaureus_>haha
17:34:14  * piscisaureus_changed nick to piscisaureus
17:34:32  <piscisaureus>indutny: CAREFUL >:)
17:34:37  <indutny>:)
17:51:57  * piscisaureusquit (Read error: No route to host)
17:56:37  * loladirojoined
18:31:05  * hzquit
18:42:51  * AvianFlujoined
18:43:06  * dscape_changed nick to dscape
19:09:25  * `3rdEdenjoined
19:11:23  * `3rdEdenquit (Remote host closed the connection)
19:29:56  <isaacs>indutny: do you know why stdin unref's when it's paused?
19:35:44  * hzjoined
19:46:03  <indutny>isaacs: no
19:46:06  <indutny>isaacs: it shouldn't be
19:57:51  * davisp-changed nick to davisp
19:57:52  * davispquit (Changing host)
19:57:52  * davispjoined
20:10:33  * benoitcquit (Excess Flood)
20:11:49  * benoitcjoined
20:32:45  * hzquit
20:39:29  * benoitcquit (Excess Flood)
20:45:19  * benoitcjoined
20:48:25  <isaacs>i think i figured it out
20:48:34  <isaacs>when we handle.readStop stdin, it lets the program close.
20:48:42  <isaacs>when we handle.readStart it, the program stays open
20:52:44  * dscapequit
20:53:02  * dscapejoined
21:01:11  * indutnyquit
21:01:21  * indutnyjoined
21:17:18  * ericktjoined
21:19:53  * benoitcquit (Excess Flood)
21:21:19  * benoitcjoined
21:34:43  * brsonjoined
21:46:03  * joshthecoderjoined
22:03:15  * loladiroquit (Quit: loladiro)
22:10:07  * loladirojoined
22:15:38  * dapquit (Quit: Leaving.)
22:16:44  * rendarquit
22:18:11  * jmar777quit (Remote host closed the connection)
22:23:42  * loladiroquit (Quit: loladiro)
22:29:49  * loladirojoined
22:30:01  * loladiroquit (Client Quit)
22:35:05  * hzjoined
22:40:25  * benoitcquit (Excess Flood)
22:45:50  * benoitcjoined
22:56:32  * ericktquit (Quit: erickt)
22:59:57  * ericktjoined
23:13:35  * hzquit
23:31:23  * ericktquit (Quit: erickt)
23:51:03  <isaacs>ircretary: tell bnoordhuis It looks like b6a3b0a6297ee205aa34d357edd55b79f91cdf09 made my writeReq.oncomplete functions stop getting called. any idea why that might be?
23:51:04  <ircretary>isaacs: I'll be sure to tell bnoordhuis
23:55:24  * ArmyOfBrucequit (Excess Flood)
23:55:52  * ArmyOfBrucejoined