00:06:36  <CIA-108>node: isaacs v0.8.4-release * r5809426 / lib/net.js : net.js: lint - http://git.io/LFvRdg
00:06:37  <CIA-108>node: isaacs v0.8.4-release * rdb727a7 / (AUTHORS ChangeLog src/node_version.h): 2012.07.25, Version 0.8.4 (Stable) - http://git.io/i_8TBw
00:08:11  <CIA-108>node: isaacs v0.8.4-release * r7fd3cb6 / Makefile : Build: add jslintfix - http://git.io/icNQig
00:08:12  <CIA-108>node: isaacs v0.8.4-release * rf98562f / (AUTHORS ChangeLog src/node_version.h): 2012.07.25, Version 0.8.4 (Stable) - http://git.io/ENQvXw
00:08:26  <pooya>nowhere in uv.h or timer.h says what unit the timestamps are. i am assuming they are milliseconds
00:12:31  * xaqquit (Remote host closed the connection)
00:13:52  * EhevuTovjoined
00:15:14  * EhevuTovquit (Max SendQ exceeded)
00:15:39  * EhevuTovjoined
00:20:29  * EhevuTovquit (Ping timeout: 250 seconds)
00:40:56  * dshaw_quit (Quit: Leaving.)
00:52:13  * pooyaquit (Quit: pooya)
00:52:28  * ericktquit (Ping timeout: 255 seconds)
00:59:42  * joe___joined
01:00:11  * joe___quit (Quit: Lost terminal)
01:01:32  * joeandaverdejoined
01:03:10  <joeandaverde>yeah buddy!
01:04:42  * dapquit (Quit: Leaving.)
01:08:12  * TheJHquit (Ping timeout: 248 seconds)
01:08:54  * pieternquit (Quit: pietern)
01:10:09  * joeandaverde_joined
01:12:15  * joeandaverdequit (Remote host closed the connection)
01:14:57  <TooTallNate>isaacs: yt?
01:20:14  * mikealjoined
01:29:21  * TooTallNatequit (Quit: Computer has gone to sleep.)
01:35:55  * felix_halimjoined
01:46:12  * abraxasjoined
02:09:27  * AvianFluquit (Quit: Leaving)
02:18:20  * AvianFlujoined
02:25:18  * joeandaverde_quit (Quit: This computer has gone to sleep)
02:31:08  * TooTallNatejoined
02:36:58  * xaqjoined
02:45:13  * joeandaverdejoined
02:54:44  * c4miloquit (Remote host closed the connection)
02:55:12  * c4milojoined
02:59:25  * c4miloquit (Ping timeout: 255 seconds)
03:17:16  * beachdogquit (Quit: beachdog)
03:19:10  * beachdogjoined
03:20:10  * beachdogquit (Client Quit)
03:23:05  * beachdogjoined
03:23:20  * xaqquit (Remote host closed the connection)
03:24:33  * xaqjoined
03:35:54  * xaqquit (Ping timeout: 246 seconds)
03:39:04  * xaqjoined
03:39:39  * lohkeyquit (Quit: lohkey)
03:53:43  * pooyajoined
04:00:06  * lohkeyjoined
04:00:45  * xaqquit (Remote host closed the connection)
04:10:56  * lohkeyquit (Quit: lohkey)
04:12:35  * AvianFluquit (Quit: Leaving)
04:20:24  * TooTallNatequit (Quit: Computer has gone to sleep.)
04:37:10  * indexzerojoined
04:50:40  * pooyaquit (Quit: pooya)
04:51:27  * lohkeyjoined
05:06:03  * pooyajoined
05:07:36  * lohkeyquit (Quit: lohkey)
05:39:16  * lohkeyjoined
05:40:39  * lohkeyquit (Client Quit)
05:57:30  * AlbireoXchanged nick to AlbireoX`Away
05:58:42  * paddybyersjoined
06:00:40  * joeandaverdequit (Quit: This computer has gone to sleep)
06:01:59  * pooyaquit (Quit: pooya)
06:14:12  * paddybyersquit (Quit: paddybyers)
06:15:24  * AlbireoX`Awaychanged nick to AlbireoX
06:15:31  * AlbireoXchanged nick to AlbireoX`Away
06:31:25  * rendarjoined
06:59:58  * stephankquit (Quit: *Poof!*)
07:01:36  * txdv_quit (Read error: Connection reset by peer)
07:02:11  * `3rdEdenjoined
07:05:01  * txdvjoined
07:24:48  * hzjoined
08:00:49  * loladirojoined
08:03:16  * paddybyersjoined
08:09:40  * loladiroquit (Quit: loladiro)
08:15:07  * indexzeroquit (Quit: indexzero)
08:30:57  * loladirojoined
08:35:28  * charliesomejoined
08:47:23  * loladiroquit (Ping timeout: 255 seconds)
08:50:35  * loladirojoined
09:16:16  * TheJHjoined
09:28:19  * mmaleckijoined
09:29:08  * loladiroquit (Ping timeout: 276 seconds)
09:40:11  * TheJHquit (Ping timeout: 276 seconds)
10:09:39  * mmaleckiquit (Ping timeout: 246 seconds)
10:16:09  * mmaleckijoined
10:26:48  * mmaleckiquit (Ping timeout: 246 seconds)
10:30:30  * loladirojoined
10:30:37  * loladiropart
10:33:09  * piscisaureus_joined
10:46:42  * loladirojoined
10:54:47  * loladiroquit (Ping timeout: 255 seconds)
10:58:43  * hzquit (Disconnected by services)
10:58:47  * hzjoined
11:04:55  * dshaw_joined
11:05:18  * paddybyersquit (Ping timeout: 246 seconds)
11:10:06  * paddybyersjoined
11:13:36  * AndreasMadsenjoined
11:14:15  * piscisaureus_quit (Ping timeout: 252 seconds)
11:17:42  * theColejoined
11:19:55  * loladirojoined
11:28:58  * paddybyersquit (Quit: paddybyers)
11:32:03  * loladiroquit (Ping timeout: 244 seconds)
11:35:32  * TheJHjoined
11:39:51  * piscisaureus_joined
11:56:17  * mmaleckijoined
11:59:13  * felix_halimquit (Ping timeout: 245 seconds)
12:02:23  * paddybyersjoined
12:02:50  * beachdogquit (Quit: beachdog)
12:05:54  * piscisaureus_quit (Ping timeout: 250 seconds)
12:08:32  * piscisaureus_joined
12:14:57  * abraxasquit (Remote host closed the connection)
12:15:07  * loladirojoined
12:15:11  * loladiroquit (Client Quit)
12:24:31  * bnoordhuisjoined
12:26:42  * chobi_e_changed nick to chobi_e
12:42:14  * c4milojoined
12:48:02  * c4miloquit (Remote host closed the connection)
12:57:40  * AvianFlujoined
13:05:23  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
13:12:37  * bnoordhuisquit (Ping timeout: 250 seconds)
13:19:18  * isaacstopic: Liberty. Unity. Velocity.
13:40:01  * c4milojoined
13:53:39  * bnoordhuisjoined
14:03:11  * xaqjoined
14:07:06  * charliesomequit (Quit: Textual IRC Client: www.textualapp.com)
14:08:48  * mmaleckichanged nick to mmalecki[food]
14:09:41  * beachdogjoined
14:14:43  * blackorzarjoined
14:19:45  * AndreasMadsenquit (Remote host closed the connection)
14:20:31  <creationix>indutny, the node version will decode buffers as Buffers, the browser version will use ArrayBuffer instances
14:24:14  * bnoordhuisquit (Ping timeout: 276 seconds)
14:29:26  * theColequit (Quit: theCole)
14:59:49  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
15:06:33  * `3rdEdenquit (Quit: Linkinus - http://linkinus.com)
15:08:41  * pieternjoined
15:10:45  * piscisaureus_joined
15:21:06  * pieternquit (Read error: Connection reset by peer)
15:22:31  * pieternjoined
15:27:30  * mikealquit (Quit: Leaving.)
15:34:44  * bitprobejoined
15:35:39  <isaacs>hi
15:36:03  <isaacs>tootallnate: pong
15:38:21  * dshaw_quit (Quit: Leaving.)
15:40:09  * loladirojoined
15:46:45  * ericktjoined
15:50:37  * ericktquit (Client Quit)
15:51:35  * ericktjoined
15:58:11  <piscisaureus_>bnoordhuis still sick?
16:04:13  * mikealjoined
16:10:11  * piscisaureus_quit (Ping timeout: 276 seconds)
16:14:04  * piscisaureus_joined
16:14:46  * blackorzar_joined
16:17:13  * blackorzarquit (Ping timeout: 250 seconds)
16:22:30  * loladiroquit (Ping timeout: 255 seconds)
16:22:58  * chobi_echanged nick to chobi_e_
16:25:03  * joeandaverdejoined
16:25:09  * mmalecki[food]changed nick to mmalecki
16:26:48  * pieternquit (Quit: pietern)
16:34:39  * TheJHquit (Ping timeout: 246 seconds)
16:40:14  * theColejoined
16:45:25  * mikealquit (Quit: Leaving.)
16:46:10  * mikealjoined
16:49:45  * beachdogquit (Quit: beachdog)
16:49:49  * paddybyersquit (Quit: paddybyers)
16:53:03  * pooyajoined
16:53:30  <isaacs>piscisaureus_: v0.8.4 lgty?
16:53:36  <isaacs>piscisaureus_: building windows binaries now.
16:55:53  * AlbireoX`Awaychanged nick to AlbireoX
16:56:48  * beachdogjoined
16:56:59  * beachdogquit (Client Quit)
17:02:38  * TooTallNatejoined
17:08:08  * lohkeyjoined
17:11:29  * hzquit (Disconnected by services)
17:11:32  * hzjoined
17:14:03  <piscisaureus_>isaacs:; test-listen-fd-ebadf fails
17:14:09  <piscisaureus_>isaacs: but yeah relesase it
17:14:41  <isaacs>piscisaureus_: can you post an issue (or if you're feeling more ambitious, fix it)?
17:14:48  <isaacs>piscisaureus_: we can get it in 0.8.5
17:24:23  * hzquit (Ping timeout: 272 seconds)
17:24:52  * arlolrajoined
17:26:56  <CIA-108>node: isaacs v0.8 * r8656c26 / Makefile : Fix #3761 build: Default to V=1 - http://git.io/Jm7m0g
17:27:20  <piscisaureus_>ok
17:27:27  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
17:31:56  <creationix>isaacs, you're releasing node versions faster than I can use them :)
17:32:17  * hzjoined
17:37:08  <TooTallNate>review anyone? https://github.com/TooTallNate/node/compare/joyent:v0.8...TooTallNate:remove-assert-__proto__
17:37:34  <TooTallNate>the commit message explains better https://github.com/TooTallNate/node/commit/da667a9d8de514a7c12cc3536af3de9bdd68983a
17:38:55  * joeandaverdequit (Quit: This computer has gone to sleep)
17:39:31  <mmalecki>TooTallNate: lgtm - that __proto__ was pretty much useless
17:39:46  <TooTallNate>quite so
17:39:49  <CIA-108>node: isaacs v0.8 * rb207e24 / doc/blog/release/v0.8.4.md : Blog post for 0.8.4 (+5 more commits...) - http://git.io/Zivrzw
17:41:03  <isaacs>TooTallNate: lgtm
17:41:12  <isaacs>TooTallNate: land on v0.8, plz
17:41:55  <isaacs>creationix: i'm trying to keep a weekly cadence for stable releases.
17:42:04  <isaacs>creationix: the faster we release them, the less risky they are
17:42:34  <CIA-108>node: Nathan Rajlich v0.8 * r9eddaeb / lib/assert.js : assert: remove unnecessary use of __proto__ - http://git.io/Zmxz2A
17:42:40  <isaacs>\o/
17:43:26  <creationix>isaacs, true
17:55:26  * dapjoined
17:56:21  * joeandaverdejoined
18:02:44  <isaacs>indutny: hey, there's a slight problem with the tls verification stuff
18:03:07  <indutny>isaacs: hi
18:03:08  <indutny>sup?
18:03:11  <isaacs>indutny: https.request({ host: 'localhost', headers: { host: 'foo.com' } })
18:03:21  <isaacs>indutny: if localhost has a key for foo.com, it should be accepted
18:03:24  <indutny>ooh
18:03:26  <isaacs>since that's the 'host' header i'm sending
18:03:35  * isaacshates https so hard
18:03:37  <indutny>I'm afraid that TLS doesn't know anything about it
18:03:40  <isaacs>yeah
18:03:47  <indutny>we can pass it as option
18:03:48  <isaacs>but tha'ts how browsers do it
18:03:58  <indutny>crap
18:03:58  <tjfontaine>good ol SNI
18:04:03  <indutny>btw
18:04:05  <isaacs>right, so i'm thinking it could work if https.request passes it along as the 'servername' option or 'hostname' option or something?
18:04:10  <indutny>wouldn't it be propagated as host name?
18:04:23  <indutny>aaah, we've reverted that propagation patch :P
18:04:29  <isaacs>right
18:04:31  <indutny>so
18:04:36  <isaacs>it looks like tls looks at options.servername
18:04:39  <isaacs>which npn uses
18:04:41  <indutny>yes
18:04:58  <isaacs>so maybe i can just have it set it there when it does the tls.connect
18:05:06  <isaacs>i'll have a patch for you to review shortly
18:05:11  <indutny>cool
18:12:31  * mmaleckichanged nick to mmalecki[away]
18:17:27  * stephankjoined
18:21:44  * sh1mmerquit (Quit: sh1mmer)
18:22:23  * EhevuTovjoined
18:27:00  * piscisaureus_joined
18:31:03  <isaacs>omg, this code is such a nightmare
18:31:33  <isaacs>so, basically, this is much harder because of the socket pooling.
18:31:42  <isaacs>and the fact that "tls verification" is tied to the socket, not the request.
18:32:28  <isaacs>so, for example, you might do https.request({host:'localhost'}), and it's invalid, but then use the same socket to do https.request({host:'localhost',headers:{host:'asdf'}}) and that IS valid
18:33:01  <isaacs>so the createSocket method doesn't know anything about the request.
18:33:05  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
18:33:13  * isaacsseeing why indutny wanted to pass the request along now...
18:37:56  <indutny>hahaha
18:43:16  * EhevuTovquit (Quit: Leaving)
18:43:24  * loladirojoined
18:49:40  * loladiroquit (Ping timeout: 244 seconds)
18:51:53  * loladirojoined
18:57:15  * indexzerojoined
18:57:38  * indexzeroquit (Client Quit)
19:05:53  <isaacs>indutny: https://github.com/joyent/node/pull/3769
19:06:22  <isaacs>it seems like passing it along in createSocket, and not inheriting the options object, is a bit safer.
19:06:34  <isaacs>since createSocket is an internal API
19:06:53  * TheJHjoined
19:13:57  <indutny>heh
19:14:23  <indutny>isaacs: lgtm
19:14:34  <indutny>though it contains some fix for identify functions
19:14:38  <indutny>isaacs: ^
19:14:43  <indutny>which should be either in separate commit
19:14:48  <indutny>or documented in commit text
19:16:25  <isaacs>oh, right, that should be split up
19:16:44  <isaacs>jsut that the CN doesn't always end in a . and we're forcing the host anme to end in a . so it doesn't match.
19:17:48  <indutny>em
19:17:53  <indutny>are you sure that it's the case?
19:18:05  <indutny>I'm quite sure that CN is translated to regexp after
19:18:08  <indutny>s/after/later
19:18:09  <indutny>isaacs: ^
19:18:17  <indutny>and translating function adds '.'
19:18:41  <isaacs>indutny: lemme see if it's necessary. maybe it was a phantom...
19:18:45  <isaacs>lot of ghosts in this code.
19:18:52  <indutny>ghosts in the code
19:18:56  <indutny>that reminds me "I. Robot"
19:19:11  <indutny>I was really inspired by that quote in my childhood
19:19:29  * mmalecki[away]changed nick to mmalecki
19:19:33  <isaacs>yeah, it's not necessary
19:19:36  <isaacs>i'll just yank that out
19:19:53  <indutny>cool
19:20:26  <isaacs>pushed
19:20:27  * theColequit (Quit: theCole)
19:20:54  * bitprobequit (Quit: Textual IRC Client: http://www.textualapp.com/)
19:21:17  <indutny>woot
19:21:30  <indutny>where?
19:21:44  * EhevuTovjoined
19:21:52  <isaacs>just updated the pull req
19:22:01  <indutny>ah, ok
19:22:19  <indutny>"Ever since the first computers, there have always been ghosts in the machine. Random segments of code that have grouped together to form unexpected protocols. Unanticipated, these free radicals engender questions of free will, creativity, and even the nature of what we might call the soul."
19:22:54  <isaacs>indutny: we're a long way off from souls
19:23:02  <indutny>haha
19:23:07  <isaacs>indutny: but http is certainly some sort of primordial ooze
19:23:11  <indutny>yes, but that's just putting inspiration in me
19:23:23  <indutny>hahaha
19:23:26  <isaacs>we have mildew and mold, not even plants
19:23:28  <indutny>http is living it's own life
19:24:51  * loladiro_joined
19:26:15  <isaacs>hm... should probably add a test for this
19:26:21  * loladiroquit (Ping timeout: 244 seconds)
19:26:22  * loladiro_changed nick to loladiro
19:29:06  <AvianFlu>test-http-lack-of-sentience
19:35:39  * EhevuTovquit (Ping timeout: 244 seconds)
19:39:09  * stagasjoined
19:40:40  * EhevuTovjoined
19:42:51  * `3rdEdenjoined
19:45:07  * `3rdEdenquit (Client Quit)
19:57:31  * rendarquit (Read error: Connection reset by peer)
19:58:57  * loladiroquit (Ping timeout: 244 seconds)
19:59:00  * voodootikigodquit (Ping timeout: 240 seconds)
20:00:47  * voodootikigodjoined
20:01:22  * mikealquit (Quit: Leaving.)
20:01:22  * rendar_joined
20:05:59  * joeandaverdequit (Quit: This computer has gone to sleep)
20:08:56  <isaacs>HTTPISMYENEMY!
20:08:58  <isaacs>srsly.
20:09:07  <isaacs>this is so monkeybals.
20:09:25  <isaacs>you can't just pass { ca: [someCaCert] } in the options.
20:09:34  <isaacs>you have to create a new Agent object with that option
20:09:36  <isaacs>wtf.
20:13:52  <isaacs>how is it this bad? seriously.
20:27:10  * arlolraquit (Quit: Linkinus - http://linkinus.com)
20:32:57  <indutny>well
20:33:00  <indutny>may be not as bad
20:33:05  <indutny>just not good for API
20:33:08  <indutny>conceptually it's correct
20:36:13  <rendar_>isaacs: i just think http is too old for today stuff :-)
20:40:17  <CIA-108>node: isaacs v0.8 * rb0c0111 / (lib/http.js test/simple/test-https-strict.js): https: Use host header as effective servername - http://git.io/2G5efQ
20:40:24  <indutny>yeah, who carse anyway
20:40:31  <indutny>we all are moving to spdy nowadays
20:40:55  <isaacs>indutny: i snuck a test in there, too
20:41:09  <indutny>great
20:41:36  <isaacs>indutny: we should probably change that message to be more like the openssl errors: https://gist.github.com/3178537
20:41:40  <isaacs>doesn't really fit in ;)
20:41:47  <indutny>hahaha
20:41:59  <indutny>TOO_MUCH_UNCERTAINTY_I_FEEL_SAD
20:42:11  <isaacs>hahah
20:42:14  <isaacs>LGTM!
20:42:46  <isaacs>THIS_HOST_MAY_NOT_BE_THE_ONE_YOU_ARE_EXPECTING_ARE_YOU_SURE_YOU_WANT_TO_CONTINUE
20:43:21  <AvianFlu>test-long-error-code-underscore-counts
20:44:13  <indutny>THESE_ARENT_ THE_HOST_YOU_ARE_LOOKING_FOR
20:55:27  <rendar_>indutny: but isn't spdy only http on top of another thing?
20:59:09  * beachdogjoined
21:01:28  * theColejoined
21:03:11  * ericktquit (Quit: erickt)
21:03:48  * bnoordhuisjoined
21:07:16  <bnoordhuis>sup people?
21:09:25  <TooTallNate>bnoordhuis: yo!
21:10:28  <bnoordhuis>hey nathan :)
21:10:33  <bnoordhuis>so where is everyone?
21:10:58  <indutny>bnoordhuis: hi
21:11:03  <indutny>bnoordhuis: we're here....
21:11:06  <indutny>watching for you...
21:11:10  <indutny>rendar_: sort of
21:11:18  <indutny>rendar_: not really a HTTP
21:11:21  <indutny>but sort of
21:13:44  * mikealjoined
21:14:43  * TooTallNatequit (Quit: ["Textual IRC Client: www.textualapp.com"])
21:16:43  <bnoordhuis>what are the most pressing issues right now (if any)?
21:18:11  * dshaw_joined
21:20:54  * joeandaverdejoined
21:22:15  <bnoordhuis>oh man... the issues really stack up when you're away for a couple of days
21:23:54  <indutny>haha
21:24:26  <isaacs>bnoordhuis: yo
21:24:38  <bnoordhuis>isaacs: oy
21:24:40  <isaacs>bnoordhuis: yes, that they do :)
21:24:56  * isaacsis trying to figure out how to sign the pkg
21:25:04  <isaacs>so that Mountain Lions can stop crying
21:25:22  <bnoordhuis>there's probably a nice apple widget for that?
21:27:54  <isaacs>yeah... mostly i'm trying to figure out where the key is that i use to sign the windows binaries
21:28:02  <isaacs>i know i must have it... it's in my windows vm *somewhere*
21:28:37  * EhevuTovquit (Ping timeout: 255 seconds)
21:29:19  * mmaleckiquit (Ping timeout: 244 seconds)
21:31:08  * EhevuTovjoined
21:33:31  * TooTallNatejoined
21:36:48  * igorzijoined
21:37:42  * TooTallNatequit (Client Quit)
21:38:30  * theColepart
21:38:41  * TooTallNatejoined
21:54:52  * rendar_quit
21:56:44  * EhevuTov_joined
21:59:48  * EhevuTovquit (Ping timeout: 244 seconds)
22:07:10  * paddybyersjoined
22:07:45  <ryah>im very interested to see what a pure js http-parser does for perf
22:07:59  <ryah>isaacs told me yesterday that was a possiblity
22:08:17  <isaacs>yes.
22:08:24  <isaacs>foudn the private key. w00t!
22:08:37  * isaacsnow to figure out how to sign a pkg, and get node int eh app store
22:08:40  <ryah>the magic of jit may do wonders for perf
22:08:46  <isaacs>ryah: it might
22:08:50  <isaacs>that's the plan anyway.
22:09:04  <isaacs>also, every time i have to fix something in http.js, it makes my skin crawl.
22:09:12  <ryah>maybe felix wants to write that because he's the parser master
22:09:15  <isaacs>that's the sign it needs a major overhaul
22:09:26  <isaacs>if i can get felix to do it, that'd be great :)
22:09:50  <isaacs>i'm definitely going to try to steal ideas from his mysql parser if not, though
22:09:51  <ryah>felix, isaacs, bnoordhuis, and creationix are the best parser people in node
22:10:25  <isaacs>i'm also curious about why substack's parsely is so slow.
22:10:37  <ryah>creationix: you might want to give this a shot--^
22:10:41  <ryah>of you have time
22:10:44  <isaacs>if it's just one or two bottlenecks, we might be able to make it fast.
22:11:01  <creationix>isaacs, which parser
22:11:02  <isaacs>but my suspicion is that it's not one or two things, but rather a million little grains of sand.
22:11:05  <isaacs>creationix: http.
22:11:16  <ryah>creationix: the idea is to rewrite the http-parser in js
22:11:24  <isaacs>creationix: step one of "unfuck http" is to move the http parser to javascript
22:11:31  <ryah>see if that improves perf
22:11:43  <isaacs>ryah: it doesn't have to improve it. it only has to make it not-much-worse.
22:12:00  <isaacs>i'd be ok with a 2% regression. maybe even 5%
22:12:07  <ryah>no - it can't be worse
22:12:12  <ryah>it can be the same
22:12:17  <creationix>isaacs, how much http does it need to implement?
22:12:22  <creationix>everything http_parse does?
22:12:29  <isaacs>creationix: i want to remove the http_parser.c dependency, yes.
22:12:30  <ryah>or if it's worse, you have to make up the difference somewhere else
22:12:35  <isaacs>ryah: exactly
22:12:40  <creationix>well, the parts node uses
22:12:46  <creationix>we don't use http_parser's url parser
22:12:49  <creationix>afaik
22:12:56  <creationix>luvit does though!
22:13:03  <isaacs>creationix: yes, it doesn't need to implement the whole http_parser.c api, just the bits that we need.
22:13:12  <isaacs>creationix: but that IS quite a lot.
22:13:23  <isaacs>creationix: and it has to be about as fast.
22:13:29  <creationix>I could do a subset and see if it's faster at all
22:13:33  <ryah>it needs to plug in exactly how http_parser does now
22:13:37  <ryah>so we can compare it
22:13:38  <creationix>and then keep implementing till it's not faster
22:13:40  <isaacs>yes, that ^
22:13:58  <ryah>it doesn't need to handle all the special http cases that http_parser does
22:14:07  <isaacs>ryah: well, eventually it does
22:14:08  <ryah>just enough to test if it's going to be fast
22:14:11  <isaacs>but yeah, not at first.
22:14:26  <creationix>V8-only JS right?
22:14:30  <ryah>creationix: yes
22:14:32  <isaacs>and, ideally, it shouldn't cheat in ways that make those things terrible later.
22:14:41  <creationix>I could give it a shot
22:14:50  <isaacs>creationix: watch this first: http://www.youtube.com/watch?v=UJPdhx5zTaw
22:14:57  <creationix>bdd benchmark driven development
22:14:59  <ryah>creationix++
22:15:00  <kohai>creationix has 8 cherry juices
22:15:02  <isaacs>yes :)
22:15:08  <isaacs>hahahha
22:15:11  * joeandaverdequit (Quit: This computer has gone to sleep)
22:15:19  <creationix>oh, that video looks handy
22:15:22  <isaacs>is that a special kohai exception for creationix's teetotaler status?
22:15:27  <creationix>isaacs, indeed :)
22:15:31  <isaacs>nice :)
22:16:07  <creationix>anyway, it's after 5 and my family needs me. I'll see if I can find time tonight to start an http parser
22:16:13  <isaacs>have fun :)
22:16:16  <creationix>I write my best parsers when I'm tired
22:16:22  <ryah>heh
22:16:23  <isaacs>:)
22:16:33  <ryah>i write them best when angry
22:16:42  <isaacs>i write them best when stoned.
22:17:14  <CIA-108>libuv: Shuhei Tanuma v0.8 * r22f004d / src/unix/thread.c : unix: don't abort() when trylock functions return EBUSY - http://git.io/Ldc9Gg
22:17:29  <isaacs>interesting overlaps in those mental states.
22:19:03  * travis-cijoined
22:19:03  <travis-ci>[travis-ci] joyent/libuv#498 (v0.8 - 22f004d : Shuhei Tanuma): The build is still failing.
22:19:03  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/94355e4718a7...22f004db61c1
22:19:03  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/1954793
22:19:03  * travis-cipart
22:20:24  * joeandaverdejoined
22:24:28  <isaacs>TooTallNate: Hey, you have Mountain Lion, right? Does this pkg work? http://nodejs.org/dist/v0.8.4/node-v0.8.4-SIGNED.pkg
22:24:45  * TooTallNatetrying
22:25:29  <TooTallNate>isaacs: http://cl.ly/image/2P1U3a0Q120V
22:26:14  <isaacs>ugh. apple. they are such bastard.s
22:26:34  <isaacs>i guess we have to get a apple-certified key.
22:26:51  <isaacs>TooTallNate: is that different than the warning you get from the normal pkg?
22:27:28  <TooTallNate>isaacs: same error for both
22:27:41  <isaacs>hm... ok. so maybe it's not apple. maybe i just did it wrong :)
22:28:28  <isaacs>oh, ok, yeah, i have to sign *everything*
22:28:32  <joeandaverde>do you have the MBP retina?
22:28:46  <isaacs>like, sign the 32-bit version, sign the 64-bit version, sign the fat binary, sign the pkg
22:28:58  <TooTallNate>joeandaverde: yes
22:29:05  <joeandaverde>do you also hate the new power adapter?
22:29:11  <joeandaverde>it falls out too easily
22:29:17  <TooTallNate>joeandaverde: yes
22:30:39  <joeandaverde>TooTallNate: i'm still waiting for the authorization to download mountain lion for free
22:31:37  <TooTallNate>joeandaverde: i bought it, then remembered i get a free upgrade, but by then it was too late :
22:31:37  <TooTallNate>:p
22:31:45  <joeandaverde>oh crap
22:31:55  <joeandaverde>atleast it's not too expensive
22:32:31  <TooTallNate>well it's not free
22:32:35  <TooTallNate>… yet
22:32:38  <isaacs>oh, no, they are bastards. i have to sign up for an identity.
22:32:54  <TooTallNate>isaacs: $ ?
22:33:09  <isaacs>TooTallNate: yeah, but whatever. mostly it's the pita of doing it.
22:33:18  <TooTallNate>indeed
22:33:20  * EhevuTov_quit (Quit: Leaving)
22:33:41  <joeandaverde>isaacs: what would the ideal http parser in js look like?
22:34:07  <isaacs>joeandaverde: not much. in fact, it'd be going so fast, you could barely look at it.
22:34:08  <joeandaverde>compared to the current http_parser.c which seems to parse a character and immediately move on and not buffer anything
22:34:17  <isaacs>joeandaverde: it should not buffer much
22:34:22  <isaacs>joeandaverde: and it should be 100% interruptible
22:34:57  <isaacs>and it should be as fast as the c one
22:35:08  <joeandaverde>isaacs: interruptable for when a tcp connection drops?
22:35:08  <isaacs>beyond that, i don't care too muhc
22:35:12  <joeandaverde>what's the use case for that?
22:35:20  <TooTallNate>it should look "good"
22:35:23  <isaacs>joeandaverde: meaning, it is ok with receiving 1 byte at a time, or all of them at once, or anything in betwee.
22:35:23  <TooTallNate>not sloppy :p
22:35:57  <isaacs>joeandaverde: when the http connection drops, we just throw it away, that's no big deal
22:36:04  * c4miloquit (Remote host closed the connection)
22:36:20  <isaacs>joeandaverde: but it can't depend on being able to do lookahead, and fail if those bytes aren't there yet.
22:36:29  <joeandaverde>what about emitting events?
22:37:12  <joeandaverde>i remember hearing on nodeup that the http_parser.c doesn't emit certain very useful events
22:37:18  <isaacs>joeandaverde: whether it's an EventEmitter or just has .onBlah() methods, i don't care.
22:37:22  <isaacs>joeandaverde: speed.
22:37:27  <isaacs>that's what counts at this level.
22:37:31  <joeandaverde>ok
22:37:54  <isaacs>also, it should be less than 1000 lines.
22:37:56  <joeandaverde>after watching that google io presentation on speed in v8 i'm pretty pumped to try some things
22:37:58  <isaacs>(arbitrary requirement)
22:38:16  <isaacs>but, it should be as small as possible. other bits can go into other modules.
22:40:47  <ryah>isaacs: you can reuse the same key that we use to do the windows signing?
22:44:37  * EhevuTovjoined
22:51:56  <isaacs>ryah: so, you can sign with that, but apple doesn't respect it
22:52:08  <isaacs>ryah: it has to be a key issued by apple.
22:52:31  <isaacs>no apps without paying the $99 apple ta
22:52:33  <isaacs>*tax
23:16:17  * dshaw_quit (Quit: Leaving.)
23:22:22  * dshaw_joined
23:35:31  * piscisaureus_joined
23:35:49  <piscisaureus_>hello
23:36:12  <piscisaureus_>are there any known leaks in the createReadStream code?
23:36:26  <piscisaureus_>I am very surprised
23:36:35  <piscisaureus_>I am using node as a fancy netcat
23:36:47  <piscisaureus_>and the receive/write end uses a very stable 32 mb of memory
23:37:01  <piscisaureus_>and the receive/send end goes up all the time
23:37:05  <piscisaureus_>it's at 300mb now
23:37:35  <piscisaureus_>oh hey bnoordhuis, you coming to 020 tomorrow? I believe we have an appointment with someone
23:38:11  <bnoordhuis>piscisaureus_: i was planning to
23:38:29  <piscisaureus_>bnoordhuis: was?
23:39:19  <bnoordhuis>piscisaureus_: babysitter scheduling issues
23:39:46  <piscisaureus_>bnoordhuis: so you cancelled?
23:40:18  <bnoordhuis>piscisaureus_: not yet - my step mum may come to the rescue yet
23:40:43  <piscisaureus_>bnoordhuis: ok, kewl
23:40:48  <piscisaureus_>hey, igorzi is back
23:40:57  <isaacs>igorzi: welcome back!
23:41:06  <isaacs>igorzi: did you get your face in the book?
23:41:15  <piscisaureus_>I was all alone yesterday, and now everyone's here again :-)
23:41:35  <isaacs>piscisaureus_: you mean fs.createReadStream?
23:41:35  <bnoordhuis>step mum... i mean mother-in-law
23:41:54  <isaacs>piscisaureus_: if so, it probably shoudln't be leaking
23:43:12  <piscisaureus_>isaacs: yeah I can't really tell whether it is leaking
23:43:25  * hzquit
23:43:57  <piscisaureus_>isaacs: I will investigate after it's done. I don't like to do it now, because if it fails I have to copy 100gb of data again (or make the oneliner much smarter)
23:44:23  <isaacs>ha, indeed
23:44:37  <igorzi>piscisaureus_ isaacs: hey!
23:44:50  <piscisaureus_>igorzi: hey, how are you doing?
23:45:08  <piscisaureus_>igorzi: survived the boot camp or is it not over yet?
23:45:08  <igorzi>piscisaureus_: doing good! you?
23:45:22  <piscisaureus_>I'm rockin' :-)
23:45:25  <igorzi>piscisaureus_: yep, boot camp is over this week :)
23:46:25  <piscisaureus_>igorzi: so, are you now starting to hack on facebook features? Or are you actually noding again?
23:46:26  <igorzi>congrats on v0.8 release!
23:46:46  <piscisaureus_>yeah, thanks :-) Thanks for helping out
23:47:13  <igorzi>starting to hack on fb features
23:48:24  <piscisaureus_>igorzi: so what kind of role do you have? Web dev? Writing servers? Ops?
23:48:30  <piscisaureus_>or is that all secret?
23:49:04  <igorzi>i'm still figuring that out.. most likely i'll do something around infra
23:50:06  <piscisaureus_>heh, that's vage
23:50:22  <piscisaureus_>we have "cloud9infra" which is basically everything that's not open source
23:50:29  <igorzi>(writing servers or frameworks/infra needed for servers)
23:52:35  <igorzi>so when is v1.0 release? :)
23:53:02  <igorzi>piscisaureus_ isaacs: ^
23:53:34  <bnoordhuis>hey igorzi. liking linux so far?
23:53:41  <bnoordhuis>(i'm assuming fb is not a windows shop)
23:54:18  <igorzi>bnoordhuis: yep.. it's been much smoother than i thought :)
23:54:59  * ericktjoined
23:57:07  <piscisaureus_>igorzi: ha! that'll take some time
23:57:14  <piscisaureus_>igorzi: I think we're going to do 0.10 first
23:57:50  <piscisaureus_>igorzi: also because we're now down to 2 c hackers in practice
23:58:00  <piscisaureus_>I remember the days when we were 4
23:59:30  <igorzi>piscisaureus_: is there a roadmap of what'll be in 0.10?
23:59:52  <piscisaureus_>igorzi: not really. But I think this is roughly what we want: