00:00:01  * ircretaryquit (Remote host closed the connection)
00:00:09  * ircretaryjoined
00:01:06  * benoitcjoined
00:03:51  <trevnorris>isaacs: so right now js libs ask for a slab, which calls the buffer constructor_template which calls to fastBuffer (and possibly also SlowBuffer if the allocation is large enough). that's js -> cc -> js -> cc (-> cc)
00:04:13  <trevnorris>we can get that down to one hop
00:05:18  * TooTallNatequit (Quit: Computer has gone to sleep.)
00:13:29  * loladirojoined
00:17:01  * TooTallNatejoined
00:20:42  <tjfontaine>isaacs: http://jenkins.nodejs.org//job/nodejs-master-fnt/DESTCPU=x64,label=linux/lastCompletedBuild//tapTestReport/test.tap-566/
00:28:00  * qmx|awaychanged nick to qmx
00:29:08  * TooTallNatequit (Quit: Computer has gone to sleep.)
00:29:57  * karupaneruraquit (Excess Flood)
00:32:03  * karupanerurajoined
00:41:30  * perezdquit (Ping timeout: 264 seconds)
00:41:58  <isaacs>we need an environment var to make the nextTick warning a throw
00:42:23  <trevnorris>isaacs: for this release?
00:42:35  <trevnorris>wait, duh
00:42:42  <trevnorris>of course this release.
00:43:13  <trevnorris>isaacs: so something like MAX_DEPTH_THROW?
00:46:49  <sblom>tjfontaine: I don't know enough about tap to have much to say about https://github.com/tjfontaine/libuv/compare/windowstap
00:47:58  <sblom>(Reading about it now.)
00:48:03  <tjfontaine>sblom: well, more a review on C really as I know the TAP part is right
00:48:04  * perezdjoined
00:48:34  <sblom>okay
00:48:41  <sblom>retargetting review. :)
00:48:50  <tjfontaine>:)
00:52:03  <sblom>LGTM
00:52:04  <tjfontaine>sblom: I cheaped out on adding an extra \r\n because I didn't want to figure out if I was at the end of the buffer or not
00:52:10  <tjfontaine>k
00:52:27  <tjfontaine>I'll make a PR and see what bert gets angry at
00:52:31  <sblom>heh
00:55:28  <isaacs>the system works!
00:55:56  * hzquit
00:56:10  <isaacs>trevnorris: the Writable refactor stuff turned a nextTickWarning into a bunch more of nextTickWarnings, followed by a good old fashionded range error.
00:56:52  <trevnorris>isaacs: lol. don't know how I would have missed that case =P
00:57:22  * qmxchanged nick to qmx|away
00:57:28  <tjfontaine>trevnorris: make test-pummel :)
00:58:07  <trevnorris>tjfontaine: never used it. what's the difference?
00:58:28  <tjfontaine>trevnorris: more tests, that work harder, that take a lot longer
00:58:28  <isaacs>trevnorris: oh, it's fine.
00:58:41  <isaacs>it was actually "failing" already, because we should not see warnings like this.
00:58:59  <isaacs>along with --trace-deprecation, we really need a --throw-deprecation
00:59:03  <tjfontaine>right
00:59:11  <isaacs>and have it set for all tests.
00:59:32  <trevnorris>isaacs: need to jam in a sec. but you see my note about slabs?
01:00:06  <tjfontaine>trevnorris: eliminating barrier crossing is an excellent thing, so if you can make it happen
01:01:07  <trevnorris>tjfontaine: i know it _can_ be done. for me it's a matter of how long. right now I have about a dozen lines of new code, and a dozen TODO tags...
01:02:17  * indexzeroquit (Quit: indexzero)
01:03:18  <trevnorris>tjfontaine: but in all seriousness, the slab allocator shouldn't need to use buffers. i'm shooting to have that solid by the 0.12 release.
01:06:07  <tjfontaine>trevnorris: right, ya I agree, and if there's anything I can do to help I will be glad to :)
01:06:49  <trevnorris>tjfontaine: thanks much. i'll definitely need it. once I have the basics done it'll become a PR, with a whole lot of reviews.
01:07:01  <tjfontaine>nod
01:11:54  <isaacs>trevnorris: that sounds awesome.
01:14:00  * perezdquit (Quit: perezd)
01:21:17  * trevnorrisquit (Quit: Leaving)
01:40:20  * perezdjoined
01:54:43  * perezdquit (Ping timeout: 240 seconds)
01:55:36  * abraxasjoined
01:56:29  * TooTallNatejoined
01:58:45  * kazuponjoined
02:06:37  * loladiroquit (Quit: loladiro)
02:14:07  * dominictarrjoined
02:15:02  * mikealquit (Quit: Leaving.)
02:15:16  * c4milojoined
02:15:53  * perezdjoined
02:16:33  * kazuponquit (Remote host closed the connection)
02:17:25  * loladirojoined
02:27:51  * sblomquit (Ping timeout: 257 seconds)
02:49:13  * perezdquit (Ping timeout: 240 seconds)
02:49:18  * chrisdickinsonquit (Ping timeout: 264 seconds)
02:49:23  * perezdjoined
02:50:01  * chrisdickinsonjoined
02:57:22  * perezdquit (Read error: Connection reset by peer)
02:58:03  * AvianFluquit (Ping timeout: 260 seconds)
02:58:41  * perezdjoined
03:01:51  * perezd_joined
03:02:40  * AvianFlujoined
03:03:06  * perezdquit (Ping timeout: 252 seconds)
03:06:43  * perezd_quit (Ping timeout: 240 seconds)
03:15:54  * perezdjoined
03:18:34  * perezdquit (Client Quit)
03:38:59  * mikealjoined
03:40:05  * brsonquit (Quit: leaving)
03:40:53  * c4miloquit (Remote host closed the connection)
03:47:23  * mikealquit (Quit: Leaving.)
03:48:18  * mikealjoined
04:05:13  * indexzerojoined
04:07:00  * mikealquit (Quit: Leaving.)
04:09:59  * abraxasquit (Remote host closed the connection)
04:19:48  * kazuponjoined
04:30:13  * brsonjoined
04:37:27  * TooTallNatequit (Quit: ["Textual IRC Client: www.textualapp.com"])
05:00:59  * abraxasjoined
05:04:27  * dominictarrquit (Quit: dominictarr)
05:14:42  * loladiroquit (Quit: loladiro)
05:16:00  <MI6>joyent/node: Nathan Rajlich v0.8 * 4d809e2 : process: invoke EventEmitter on `process` This properly sets the `_maxLi - http://git.io/Dhg7rA
05:19:21  * benoitcquit (Excess Flood)
05:26:05  <MI6>nodejs-v0.8: #26 FAILURE linux-x64 (1/468) smartos-x64 (2/468) smartos-ia32 (2/468) osx-x64 (3/468) linux-ia32 (2/468) windows-ia32 (2/467) osx-ia32 (1/468) http://jenkins.nodejs.org/job/nodejs-v0.8/26/
05:26:39  * benoitcjoined
05:27:20  * dominictarrjoined
05:30:53  * loladirojoined
05:43:49  <isaacs>HOW ARE YOU GENTLEMAN!!!
05:43:49  <LOUDBOT>CONSISTENCY DOESN'T MEAN EVERY STATEMENT IS WORD PERIOD MORE WORDS
05:47:32  * philips_quit (Excess Flood)
05:52:02  * benoitcquit (Excess Flood)
05:54:06  <pquerna>but in an eventually consistent system all words are eventually lower case, aren't they?
05:56:01  * bradleymeckjoined
05:59:41  * benoitcjoined
06:00:52  * wolfeidauquit (Remote host closed the connection)
06:03:26  * philips_joined
06:23:07  * mikealjoined
06:58:48  * abraxasquit (Remote host closed the connection)
07:06:47  * dscapequit (Ping timeout: 260 seconds)
07:08:18  * wavded_quit (Ping timeout: 250 seconds)
07:17:20  * brsonquit (Quit: leaving)
07:25:03  * abraxasjoined
07:25:35  <isaacs>PQUERNA: NOT IF THE EVENTUALLY CONSISTENT DATA IS A DATABASE OF LOUDS
07:25:36  <LOUDBOT>THEY CANT BE KILLED
07:29:48  * `3rdEdenjoined
07:33:02  * rendarjoined
07:39:22  * dominictarrquit (Quit: dominictarr)
07:40:04  * dominictarrjoined
07:40:06  * dominictarrquit (Client Quit)
07:41:20  * dominictarrjoined
07:53:36  * dominictarrquit (Quit: dominictarr)
07:58:02  * abraxasquit (Remote host closed the connection)
08:15:07  * stagasjoined
08:18:13  * AvianFluquit (Remote host closed the connection)
08:33:57  * csaohjoined
08:41:15  * zotjoined
08:41:35  * stagas_joined
08:41:36  <zot>morning
08:42:04  * stagasquit (Ping timeout: 245 seconds)
08:42:05  <indutny>morning
08:42:08  * stagas_changed nick to stagas
08:43:13  <zot>according to the libev dogs, (http://doc.dvgu.ru/devel/ev.html#ev_async search for ev_async), you cannot "generally" use 2 parallel loops in parallel threads. does anybody know if this is a limitation to libev, or would you have the same problem trying to run 1 libev and 1 libuv in separate threads? (ie, is the limitation in the underlying select/epoll/kqueue mechanism?)
08:43:20  <zot>s/dogs/docs/
08:43:31  <indutny>there're no such limitation
08:43:51  <indutny>aah
08:43:53  <zot>any idea why libev doesn't support it?
08:43:55  <indutny>wait
08:44:00  <indutny>it does support it
08:44:07  <indutny>you just can't use loop from different thread
08:44:16  <zot>if you do your own signalling, yes
08:44:18  <indutny>but you can safely run multiple loops in separate threads
08:44:41  <zot>but if i have a library running entirely in its own thread, on its own event loop, i still can't have main program running on another ev loop
08:44:52  <zot>or perhaps i misunderstand a fine point here?
08:44:57  <indutny>probably
08:45:11  <zot>probably to which? :)
08:45:14  <indutny>haha :)
08:45:27  <indutny>well, I don't see why you can't have loop in main thread
08:45:32  <indutny>and in sibling thread
08:45:35  <indutny>simultaneously
08:45:42  * V1joined
08:45:47  <zot>yeah, i had thought it was a reasonable model, but the docs seem to directly contradict that belief
08:46:11  <indutny>are they?
08:46:28  <indutny>In general, you cannot use an ev_loop _from multiple threads_
08:46:35  <indutny>they key word is from
08:46:37  <zot>i have a lib that i want to make work in both a threaded and event based world; so my underlying lib code can just do all of its work in a separate thread and use a signalling pipe
08:46:54  <zot>how else would each loop run independently?
08:47:14  <indutny>that's the only way to communicate between threads
08:47:20  * V1quit (Disconnected by services)
08:47:22  <indutny>if they're both libuv threads
08:47:47  <MI6>joyent/node: Scott Blomquist master * 323120b : child_process: handle ENOENT correctly on Windows - http://git.io/NYx57g
08:47:58  <zot>of course — i'm not worried about the comm part; just whether i can have 2 calls to 'ev_loop(…)', each with a separate loop object, but that will work correctly.
08:48:15  <zot>at present i'm bound to libev, since my target is node v0.8.x
08:48:28  <zot>well, one target, anywaiz
08:48:32  <indutny>wait, are we talking about libuv
08:48:39  <indutny>or libev
08:49:05  <indutny>I can assure you that libuv works in separate threads
08:49:15  <indutny>in 0.8
08:49:27  <indutny>isaacs: still not sleeping? ;)
08:49:28  <zot>i asked about doing 1 libev/1libuv OR 2x libev
08:49:28  * stagasquit (Ping timeout: 272 seconds)
08:49:36  <zot>or meant to — i may have been unclear
08:49:45  <zot>current model would likely be 2x libev
08:50:36  <zot>but i could conceivably consider libuv
08:51:31  <indutny>ok
08:51:33  <indutny>it should still work
08:51:38  <indutny>anyway
08:52:25  * abraxasjoined
08:55:26  * hzjoined
08:56:09  <zot>indutny: cross your heart and hope to die? (dunno if you're american… prolly not since you're likely in my timezone?)
08:56:27  <indutny>:)
08:56:42  <indutny>we was using multiple threads/eventloops in previous year
08:56:48  <indutny>when node.js was trying out isolates api
08:56:52  <indutny>and it was working
08:57:04  <zot>also, if i use libuv in my "processing thread", can i just call uv_loop(), in each thread, and not have to mess w/ _async or sth like that? (because i don't want to assume that the client user is using libuv)
08:57:23  <indutny>erm
08:57:27  <zot>cool. perhaps i'll send an email to libev group or sth to see if there's a definitive answer
08:57:28  <indutny>not sure I follow
08:58:46  <zot>ok. intended use. my library will make a thread; in that thread, it will call uv_loop(…) on a private loop variable. it will expose a pipe for signaling, to the client. the client could use libev/libuv/libevent/select/blocking reads, whatever. will this *just work*, particularly in the double libuv case?
08:59:17  <indutny>yes
08:59:29  <indutny>the only limitation is that you can use handles belonging to other thread
08:59:35  <indutny>s/can/can't/
08:59:58  <indutny>so work with event loop from it's thread
09:00:01  <zot>that's fine — all of that would be private, since i only expose a socket api to the library's user
09:00:02  <indutny>and everything will work fine
09:02:12  <MI6>nodejs-master: #65 UNSTABLE osx-ia32 (1/547) windows-x64 (12/547) windows-ia32 (12/547) linux-ia32 (1/547) http://jenkins.nodejs.org/job/nodejs-master/65/
09:02:51  <zot>indutny: grazi!
09:03:04  <indutny>you're welcome
09:04:17  * dscapejoined
09:04:18  * wavded_joined
09:13:05  <zot>indutny: is there a libuv analog to ev_async_pending? (i haven't found it so far, but could just be confused.)
09:14:09  * kazuponquit (Remote host closed the connection)
09:14:53  <indutny>no
09:15:08  <indutny>but, I guess you can check async->pending value
09:15:10  <indutny>if you really want to
09:15:17  <indutny>what do you need this for?
09:21:06  <zot>i don't think i do, but was porting some test code from libev -> libuv, and wanted to honor it if it existed
09:23:10  * stagasjoined
09:23:10  <indutny>hm... better not use it then
09:23:19  <indutny>its a little bit "internal"
09:23:40  <indutny>and may change in the future
09:38:56  * stagasquit (Ping timeout: 255 seconds)
09:42:09  * loladiroquit (Quit: loladiro)
09:43:55  <isaacs>indutny: not at the moment
09:44:04  <isaacs>indutny: yes, we should put proces sin node_internals.h
09:44:06  <isaacs>i'll update the pr
09:47:48  <indutny>yeah
09:50:16  <isaacs>indutny: https://github.com/isaacs/node/commit/7c2c9c3a784d0c9df4da3902bbfbac2be822dc36
09:50:47  <indutny>lgtm
09:50:53  <indutny>wait
09:50:55  <indutny>extern?
09:52:02  <isaacs>um... i dunno
09:52:06  <isaacs>i just copy paste c++ man
09:52:11  <isaacs>i don't know what any of this shit actually means
09:52:17  <indutny>hahaha
09:52:20  <indutny>can you try "static"
09:52:23  <indutny>instead of extern
09:52:42  <isaacs>suer
09:52:42  <indutny>this should work pretty well too
09:52:53  <indutny>I mean, please build it :)
09:52:55  <indutny>before pushing
09:52:56  <indutny>brb
09:53:51  <isaacs>../src/node.cc:103: error: redefinition of ‘v8::Persistent<v8::Object> node::process’
09:53:54  <isaacs>../src/node_internals.h:35: error: ‘v8::Persistent<v8::Object> node::process’ previously declared here
09:54:02  <isaacs>using static isntead of extern
09:54:46  <isaacs>indutny: static is only for that file
09:55:26  <isaacs>http://wiki.answers.com/Q/What_is_the_difference_between_static_and_extern
09:57:08  * stagasjoined
09:57:55  * zotpart
09:57:59  * zotjoined
10:07:50  * isaacscrashing
10:08:17  <indutny>erm
10:08:26  <isaacs>i mean, i'm actually crashing, not node
10:08:49  <indutny>ah
10:09:03  <isaacs>indutny: but yeah, long and short of it is that it has to be extern to be seen in other files.
10:09:09  <indutny>ok
10:09:28  <indutny>they better use CommonJS
10:09:35  <isaacs>indutny: if you wanna land 4933 and 3177, go ahead.
10:09:44  <isaacs>if they lgty
10:09:51  <isaacs>3177 should be squashed
10:10:02  <indutny>sec
10:10:07  <isaacs>or review some things: https://github.com/joyent/node/issues?milestone=14&state=open
10:10:10  * abraxasquit (Remote host closed the connection)
10:10:27  <MI6>joyent/node: isaacs master * 74784b6 : cares: Set process._errno, not global.errno This makes test-internet pas - http://git.io/PeKd1g
10:10:50  <isaacs>thanks
10:10:52  * isaacs&
10:10:52  <LOUDBOT>BOB THE BUILDER IS OBVIOUSLY A METAPHOR FOR THE STRUGGLES OF THE WORKING CLASS UNDER THE ECONOMIC SLAVERY OF THE SO-CALLED FREE MARKET
10:11:20  <indutny>has last guy signed CLA?
10:11:21  <indutny>https://github.com/joyent/node/pull/3177
10:11:38  <isaacs>oh, i mean, https://github.com/joyent/node/pull/4033
10:11:42  <isaacs>not 3177
10:11:49  <indutny>not 4933?
10:11:54  <indutny>3177 seems to be legit
10:12:03  <indutny>or I've just pushed a crap :)
10:12:13  <isaacs>4933 is mine
10:12:14  <isaacs>that's fine
10:12:20  <isaacs>3177 is garbage party
10:12:29  <indutny>h god
10:12:35  <indutny>ah
10:12:36  <isaacs>4033 is pancake mix. just needs to be squashed.
10:12:37  <indutny>I pushed 4933
10:12:37  <indutny>ok
10:12:39  * bradleymeckquit (Quit: bradleymeck)
10:12:40  <isaacs>yeah
10:12:41  <indutny>ok
10:12:43  <isaacs>that's all good
10:12:53  <isaacs>don't worry, when ben comes online he'll just revert it all for you
10:12:54  <isaacs>;)
10:12:57  <zot>is there no generic function to check for write readiness on a socket/pipe fd? (ie, is uv_write the only mechanism?)
10:13:08  <isaacs>ok, i'm up way past my bedtime.
10:13:14  <isaacs>it's just so exciting with 0.10 to close.
10:13:23  <isaacs>couldn't sleep
10:13:34  <zot>ahhhh, uv_poll, methinks.
10:13:36  <indutny>looking
10:13:40  <indutny>haha
10:13:54  <indutny>zot: yes
10:14:12  <indutny>isaacs: sorry, I won't land it in this form
10:14:48  <indutny>ah
10:14:52  <indutny>its in the same style
10:14:56  <indutny>as the rest of that file
10:14:57  <indutny>ok then
10:20:37  * stagas_joined
10:22:08  * stagasquit (Ping timeout: 255 seconds)
10:22:17  * stagas_changed nick to stagas
10:24:45  <MI6>nodejs-master: #66 UNSTABLE osx-x64 (1/547) windows-x64 (11/547) windows-ia32 (11/547) http://jenkins.nodejs.org/job/nodejs-master/66/
10:30:43  * zotquit (Read error: Connection reset by peer)
10:31:36  * zotjoined
10:31:55  <MI6>joyent/node: Pavel Lang master * 2ad9872 : DNS: Support NAPTR queries They were previously removed in a90bc78534d94 - http://git.io/PExZPw
10:32:39  <indutny>isaacs: done
10:32:44  <indutny>isaacs: you can sleep now :)
10:37:39  <zot>'nuther question: will (or does) libuv ever have its own release schedule? from my look @ github, it looks like tags only coincide with node.js releases.
10:37:49  <zot>maybe s/schedule/cycle/ is the right way to ask that
10:38:18  <indutny>no, it's releases are tightly coupled to node.js releases
10:38:31  <indutny>generally, you should just use stable branch
10:38:41  <indutny>but for now libuv's master is very stable
10:38:46  <indutny>because we're going to branch 0.10 soon
10:39:44  * indexzeroquit (Quit: indexzero)
10:41:26  * txdvquit (Read error: Connection reset by peer)
10:44:37  <zot>it's less over stability, and more over the notion of "what version should i use", and the question being answered by a node tag, and how strange that feels :) are there other projects using libuv atm?
10:46:15  <MI6>nodejs-master: #67 UNSTABLE osx-ia32 (1/547) windows-x64 (11/547) windows-ia32 (12/547) http://jenkins.nodejs.org/job/nodejs-master/67/
10:46:40  <indutny>zot: luvit, rust and many others
10:46:44  <indutny>s/many/some/
10:48:56  * stagasquit (Ping timeout: 256 seconds)
10:49:06  <zot>cooooool
11:14:20  * zot1joined
11:16:38  * zotquit (Ping timeout: 252 seconds)
11:21:06  * zot1changed nick to zot
11:29:39  * kazuponjoined
11:39:59  * dominictarrjoined
11:51:40  * dominictarrquit (Quit: dominictarr)
11:54:41  * stagasjoined
11:56:43  * csaohquit (Quit: csaoh)
11:58:33  * stagas_joined
11:59:56  * stagasquit (Ping timeout: 256 seconds)
11:59:59  * stagas_changed nick to stagas
12:15:13  * sgallaghjoined
12:21:20  * csaohjoined
12:22:59  * csaohquit (Client Quit)
12:27:40  * csaohjoined
12:42:24  * piscisaureus_joined
12:44:04  * bnoordhuisjoined
12:44:26  * kazuponquit (Remote host closed the connection)
12:47:44  * c4milojoined
12:57:50  * wolfeidaujoined
13:01:51  <bnoordhuis>hi y'all
13:02:34  <bnoordhuis>zot: we'll switch to official libuv releases eventually. you're not the only one asking about it :)
13:03:18  * kazuponjoined
13:03:43  <indutny>hi
13:07:19  * kazuponquit (Remote host closed the connection)
13:09:45  <bnoordhuis>sup fedor?
13:10:01  <indutny>nosup
13:10:23  <indutny>sup ben?
13:13:00  <bnoordhuis>nothing much, just fixing all the bugs
13:13:08  <bnoordhuis>and probably introducing some new ones while i'm at it
13:13:30  <indutny>yeah, as usual
13:26:52  <bnoordhuis>so what've you been up to, fedor?
13:27:04  <indutny>nothing, yet
13:27:08  <indutny>just some small reviewing
13:32:32  * zotquit (Ping timeout: 245 seconds)
13:49:06  <MI6>joyent/node: Ben Noordhuis master * 3dbbfd7 : src: remove unused symbols in node_file.cc - http://git.io/-2NpXA
13:49:52  <csaoh>is there a way to know if an event is a read or write one ? for instance, if I call uv_poll_start, can i figure it out inside the callback ?
13:52:57  <bnoordhuis>csaoh: yes, check the events argument
13:53:07  * qmx|awaychanged nick to qmx
13:53:15  <piscisaureus_>csaoh: https://github.com/joyent/libuv/blob/0b26af376a8d788adf00ed4cb60aba4da2f046c1/include/uv.h#L1062-L1063
13:53:41  <csaoh>OH great :)
13:53:55  <csaoh>thanks !!
14:04:06  <MI6>nodejs-master: #68 UNSTABLE windows-x64 (11/547) windows-ia32 (13/547) http://jenkins.nodejs.org/job/nodejs-master/68/
14:17:18  * piscisaureus_quit (Ping timeout: 250 seconds)
14:17:46  * kazuponjoined
14:20:55  * stagas_joined
14:22:11  * stagasquit (Ping timeout: 260 seconds)
14:22:20  * stagas_changed nick to stagas
14:23:07  * kazuponquit (Ping timeout: 260 seconds)
14:31:18  * piscisaureus_joined
14:36:16  <indutny>piscisaureus_: hoya
14:36:21  <piscisaureus_>hey indutny
14:36:22  <indutny>what's your birthday date?
14:40:51  * zotjoined
14:41:29  <piscisaureus_>indutny: april 11th
14:41:34  <piscisaureus_>why?
14:41:43  <piscisaureus_>are you going to send me a cake / bottle of scotch?
14:41:45  <indutny>good to know
14:41:49  <indutny>cake of scotch
14:41:56  <indutny>bnoordhuis: and yours?
14:43:10  <bnoordhuis>indutny: september 10
14:43:33  <indutny>great
14:43:35  <indutny>thanks guys
14:51:41  * nsmjoined
14:53:16  * stagas_joined
14:54:04  * stagasquit (Ping timeout: 252 seconds)
14:54:09  * stagas_changed nick to stagas
14:56:53  * zotquit (Quit: Leaving.)
15:04:44  * kazuponjoined
15:20:51  * bradleymeckjoined
15:30:25  * kazuponquit (Remote host closed the connection)
15:33:46  * mikealquit (Quit: Leaving.)
15:40:53  * hzquit
15:53:53  * stagasquit (Ping timeout: 255 seconds)
15:57:06  * kazuponjoined
16:00:53  * zot1joined
16:06:30  * hzjoined
16:10:44  * mikealjoined
16:10:53  * `3rdEdenchanged nick to `3E|DINNER
16:23:33  <MI6>joyent/libuv: Bert Belder master * f89125e : win/tty: fix typo in color attributes enumeration (+2 more commits) - http://git.io/yJhhjA
16:25:49  <MI6>libuv-master: #31 UNSTABLE osx (2/183) linux (2/183) smartos (5/183) http://jenkins.nodejs.org/job/libuv-master/31/
16:32:54  * loladirojoined
16:43:05  * c4miloquit (Remote host closed the connection)
16:56:50  <tjfontaine>piscisaureus_: did you get a chance to look at the runner-win.c changes?
16:57:02  <piscisaureus_>tjfontaine: no, not yet
16:57:06  <tjfontaine>k
16:58:31  <piscisaureus_>I have to go, bbl today
16:58:37  <tjfontaine>enjoy
17:00:08  * hzquit
17:03:48  * loladiroquit (Quit: loladiro)
17:04:21  * `3E|DINNERquit (Remote host closed the connection)
17:04:21  * qmxchanged nick to qmx|lunch
17:06:54  * felixgejoined
17:07:46  * AvianFlujoined
17:09:18  * piscisaureus_quit (Ping timeout: 245 seconds)
17:14:26  * zot1part
17:17:10  * mikealquit (Quit: Leaving.)
17:21:46  * felixgequit (Quit: http://www.debuggable.com/)
17:26:06  * kazuponquit (Remote host closed the connection)
17:33:29  * `3rdEdenjoined
17:41:05  * sblomjoined
17:43:07  * c4milojoined
17:43:32  * bradleymeckquit (Quit: bradleymeck)
17:48:53  * trevnorrisjoined
17:54:37  * `3rdEdenquit (Remote host closed the connection)
17:56:21  * mikealjoined
17:56:30  * csaohquit (Quit: csaoh)
17:57:46  <isaacs>bnoordhuis: updated pulls based on your feedba.c
17:57:53  <isaacs>bnoordhuis: about to review your close cb thingie now
17:58:30  * dapquit (Quit: Leaving.)
17:58:54  <isaacs>bnoordhuis: what does the "k" prefix stand for? I see that in _ry's code a lot, too, i never really groked it
18:01:13  <tjfontaine>isaacs: constant identifier, just a style thing
18:01:37  <isaacs>tjfontaine: k is for constant?
18:01:41  <tjfontaine>isaacs: http://stackoverflow.com/questions/5016622/where-does-the-k-prefix-for-constants-come-from
18:01:52  <tjfontaine>if you want to bore yourself :)
18:02:25  <isaacs>i will just assume it's bad spelling
18:02:41  <tjfontaine>it's german
18:02:43  <tjfontaine>konstant
18:03:01  <tjfontaine>"c" was the tag for type "char", so it couldn't also be used for "const"; so "k" was chosen, since that's the first letter of "konstant" in German, and is widely used for constants in mathematics.
18:03:29  <isaacs>yeah
18:03:34  <tjfontaine>typos are fun
18:03:35  <isaacs>germans spell things weird
18:03:39  <tjfontaine>ReferenceError: rubBench is not defined
18:05:38  <bnoordhuis>isaacs: what tjfontaine said, it's a google styleguide thing
18:06:09  * stagasjoined
18:07:00  <isaacs>is ee
18:08:08  <MI6>joyent/node: Ben Noordhuis master * fb3ec32 : net: use close callback, not process.nextTick Don't emit the 'close' eve (+2 more commits) - http://git.io/e4-maQ
18:08:10  <isaacs>bnoordhuis: thanks ^
18:13:37  * TooTallNatejoined
18:14:57  * qmx|lunchchanged nick to qmx
18:15:32  <trevnorris>when should NODE_EXTERN be used?
18:16:31  * bradleymeckjoined
18:16:39  <_ry>so... 0.10 this week?
18:16:48  <trevnorris>nm.
18:16:59  <TooTallNate>_ry: i think we were talking monday
18:17:01  <TooTallNate> /cc isaacs
18:17:13  <_ry>nice
18:17:26  <TooTallNate>_ry: but probably a v0.9.12 this week
18:17:46  <_ry>with a blog post showing benchmarks of how its faster than 0.8 - it'll be awesome
18:19:43  <_ry>:)
18:22:48  <bnoordhuis>trevnorris: when it's exposed to native add-ons
18:22:52  <tjfontaine>I wish there were an easier way to diff stat while excluding deps/v8 and deps/openssl
18:22:53  <bnoordhuis>i.e. part of the official API
18:23:38  <trevnorris>bnoordhuis: ah, thanks.
18:23:46  <tjfontaine> 2510 files changed, 323602 insertions(+), 186543 deletions(-) between v0.8 and master
18:24:00  <MI6>nodejs-master: #69 UNSTABLE osx-ia32 (1/547) linux-x64 (1/547) windows-x64 (11/547) windows-ia32 (12/547) linux-ia32 (1/547) http://jenkins.nodejs.org/job/nodejs-master/69/
18:24:46  <isaacs>bnoordhuis: re 4920, the patch is a little wrong. this corrects it. lgty? https://gist.github.com/isaacs/5101705
18:25:32  * stagasquit (Quit: ChatZilla 0.9.90-rdmsoft [XULRunner 1.9.0.17/2009122204])
18:30:17  <bnoordhuis>isaacs: this === req in that patch right?
18:30:27  <tjfontaine>damnit, why didn't I know about this plugin https://wiki.jenkins-ci.org/display/JENKINS/Port+Allocator+Plugin
18:30:47  <bnoordhuis>i guess it has to be, ServerResponse doesn't have a setTimeout method
18:31:36  <bnoordhuis>tjfontaine: nice
18:31:59  <tjfontaine>ya, I now need to determine if it works across jobs
18:32:15  <indutny>_ry: if faster=not-slower then yes :)
18:32:44  <indutny>isaacs: are we going to change setImmediate() behaviour?
18:33:11  <tjfontaine>hm?
18:33:34  <isaacs>indutny: what for?
18:33:48  <indutny>I seen issue on github
18:34:03  <tjfontaine>it's now done via uv_check
18:34:04  <indutny>where trevnorris (or other guy) explained why it was slower
18:34:08  <indutny>yes
18:34:09  <indutny>exactly
18:34:22  <indutny>wait
18:34:31  <indutny>aaah
18:34:50  <trevnorris>hm?
18:35:00  <indutny>nooo
18:35:04  <indutny>I don't get it :)
18:35:14  <indutny>why not using prepare/check
18:35:18  <indutny>depending on context
18:35:25  <tjfontaine>context?
18:35:28  <indutny>yeah
18:35:50  <bnoordhuis>i think tjfontaine is asking for clarification
18:36:08  <indutny>timers/idle/prepare/pending/io/check/close
18:36:20  <indutny>that's the order of execution in event loop
18:36:27  <indutny>so if we're in timer's callback
18:36:36  <indutny>waiting for check could be a very long story
18:36:37  * kazuponjoined
18:36:41  <tjfontaine>indutny: it *is* using a uv_check now
18:36:51  <indutny>yep
18:37:01  <indutny>but I propose to use prepare when its called from timer's callback
18:37:06  <bnoordhuis>you're afraid it'll block in poll indefinitely?
18:37:14  <indutny>not indefinitely
18:37:19  <indutny>but will be delayed for too much
18:37:20  <bnoordhuis>for a long time then
18:37:24  <indutny>yes
18:37:50  <bnoordhuis>setImmediate starts an idle handle too
18:37:56  <bnoordhuis>so the call to uv__io_poll won't block
18:38:27  * c4miloquit (Remote host closed the connection)
18:39:03  <indutny>aah
18:39:14  <indutny>so it just invokes callback on idle and check
18:39:15  <indutny>ok
18:39:18  <indutny>that's what I was asking
18:39:20  <indutny>thanks
18:41:28  <isaacs>bnoordhuis: yes, the top level, and the first and third closures.
18:41:45  <isaacs>bnoordhuis: i clarified it in the on('socket') event handler, and in this.socket.once('timeout') handler
18:41:58  <trevnorris>in WeakCallback, what's the reason for creating a HandleScope, but not closing it?
18:42:07  * kazuponquit (Ping timeout: 260 seconds)
18:42:08  <isaacs>bnoordhuis: basically, #4920 will make timeout not fire some times when it should. not gonna fault the guy, that code is crazy.
18:42:58  * pooyajoined
18:44:56  <bnoordhuis>isaacs: i didn't actually test it but it lgtm
18:45:10  <isaacs>k
18:45:22  <isaacs>i'm gonna squash it onto his pr. the test is good.
18:45:57  * `3rdEdenjoined
18:46:19  <MI6>joyent/node: Eugene Girshov master * 25ba971 : http: fix multiple timeout events Fixed up slightly by @isaacs so as not - http://git.io/CeX_og
18:48:23  <isaacs>bnoordhuis, indutny: any reviews, much appreciated https://github.com/joyent/node/issues?milestone=14&state=open
18:49:01  <indutny>sure
18:50:56  <isaacs>after that, i'm going to release 0.9.12, and then start re-checking all the performance stuff
18:53:43  * c4milojoined
18:53:48  * c4miloquit (Remote host closed the connection)
18:59:56  <indutny>may be 0.9.99
18:59:57  <indutny>?
19:00:53  <trevnorris>isaacs: just doing some preliminary analysis for the buffer changes. couple interesting things:
19:01:33  <MI6>nodejs-master: #70 UNSTABLE windows-ia32 (11/548) windows-x64 (11/548) http://jenkins.nodejs.org/job/nodejs-master/70/
19:02:05  <trevnorris>isaacs: buffer has always been at least as hot nextTick, sometimes much more so.
19:02:16  * indexzerojoined
19:02:28  * mikealquit (Quit: Leaving.)
19:03:02  <trevnorris>*as nextTick
19:04:50  * brsonjoined
19:07:43  <isaacs>trevnorris: yeah, that kinda makes sense.
19:08:26  <trevnorris>isaacs: i'm focusing on the net/http type operations.
19:08:39  <isaacs>awesome
19:08:50  <isaacs>indutny: calling it 0.9.99 is a good idea :)
19:09:13  <indutny>hehe
19:09:21  * `3rdEdenquit (Ping timeout: 248 seconds)
19:12:09  <trevnorris>and crypto is binging on buffer calls.
19:13:17  * mikealjoined
19:13:32  * dapjoined
19:14:43  * nsmquit (Quit: nsm)
19:15:52  <trevnorris>whoa, on the test "tls/throughput.js dur=5 type=utf size=2" buffer was called 409295 times. that is awesome. 81k x's/sec is a new record.
19:16:43  <indutny>and?
19:17:15  <indutny>it requires a lot of buffers
19:17:26  <indutny>2x more than the same tcp connection
19:17:36  <indutny>generally even 2.5x more
19:19:06  <isaacs>trevnorris: yeah, i mean, what you're seeing is just that there's a bunch of data involved with tcp
19:19:09  <isaacs>*tls
19:20:08  <indutny>isaacs: https://github.com/isaacs/node/commit/80d6aba8639faf244bc619e6e226993d4392ec06#L0R243
19:20:13  <indutny>but here's my buffer, so finish may be
19:20:22  <isaacs>ah
19:20:23  <isaacs>hahah
19:20:25  <isaacs>yeah :)
19:20:43  <indutny>reviewing
19:20:55  <isaacs>thanks
19:21:05  <trevnorris>i'm trying to figure out how many of those buffer calls are coming from the slab allocator.
19:21:08  <isaacs>indutny: how would you suggest doing the pow2 thing?
19:22:08  <bnoordhuis>isaacs: i agree with the way you did it actually
19:22:16  <isaacs>oh, ok
19:22:21  * piscisaureus_joined
19:22:21  <bnoordhuis>it's straight from hacker's delight
19:22:21  <indutny>heh
19:22:25  <indutny>well
19:22:26  <isaacs>yeah, that's a pretty standard thing
19:22:34  <indutny>what about 1gb thing?
19:22:38  <isaacs>but i'm always up fornew micro optimizations in my standards :)
19:22:49  <isaacs>indutny: the max hwm is just the max size for a single buffer
19:23:00  <isaacs>indutny: but i'm realizing, it can conceivably be as much as double that size.
19:23:08  <isaacs>so... should probably cap it lower, indeed.
19:23:12  <isaacs>like 2^16 or so
19:23:22  <indutny>yes
19:23:25  <bnoordhuis>isaacs: btw, real programmers write 0x3fffffff, not Math.pow(2,30)-1
19:23:27  <isaacs>if oyu'er buffering up that much data, something is busted anyway
19:23:28  <indutny>ahhaha
19:23:38  <isaacs>bnoordhuis: lol
19:23:39  <trevnorris>indutny: so what i'm getting at is that tls uses slabs. every time a slab allocates it's going cc -> js -> cc (and possibly another cc if the buffer is big enough). but to get a slab you go js -> cc
19:23:51  <trevnorris>that means for a single buffer you're jumping the fence three times.
19:24:04  <indutny>still it isn't bottleneck there
19:24:18  <indutny>but less work - better
19:24:28  <indutny>isaacs: well, left it as it is
19:24:30  <indutny>fuck it :D
19:24:40  <isaacs>hm... that's still only 64kb
19:24:42  <indutny>that's too complex for such simle thing
19:24:48  <isaacs>but maybe 1024*1024
19:25:15  <bnoordhuis>you mean 0x100000?
19:25:47  <indutny>you mean 04000000
19:25:49  <indutny>?
19:26:02  <isaacs>bnoordhuis: {0x73, 0x75, 0x72, 0x65}
19:26:08  <isaacs>("sure")
19:26:14  <bnoordhuis>hah :)
19:26:27  <indutny>cmVhbGx5Pw==
19:26:53  * isaacstopic: liberal utopian vacation ~ "No YOURE too clever!" ~ http://logs.libuv.org/libuv ~ http://groups.google.com/group/libuv
19:26:55  <indutny>WW91IHdlcmUgcmljay1yb2xsZWQ=
19:29:27  <isaacs>ok, i think 128MB is probably a decent limit.
19:29:53  * piscisaureus_quit (Ping timeout: 256 seconds)
19:29:59  <isaacs>small enough to not hit the max buffer size, but low enough that you'll probably never hit that limit
19:30:09  <isaacs>er, high enough that you'll probably never hit that limit
19:30:17  <isaacs>and at that point, it switches to reading repeatedly, instead of all in one big chunk
19:30:20  <isaacs>so, whatever, that's fine
19:30:35  <isaacs>node streams will fall over probably way before that point anyway
19:30:54  <indutny>yeah
19:36:46  <indutny>isaacs: https://github.com/isaacs/node/commit/5a857471cc1fd7467e1493ae88850ea68828b05e
19:36:48  <indutny>https://github.com/isaacs/node/commit/892a20d7df309f2ce173fecb0b03bd456e3cf33a
19:36:50  <indutny>explain please
19:36:53  * pooya_joined
19:37:01  * c4milojoined
19:37:15  * pooyaquit (Ping timeout: 256 seconds)
19:37:15  * pooya_changed nick to pooya
19:37:19  <isaacs>https://github.com/isaacs/node/commit/5a857471cc1fd7467e1493ae88850ea68828b05e is rebased out already.
19:37:31  <indutny>ok
19:37:38  <indutny>ah
19:37:38  <indutny>I see
19:37:50  <isaacs>https://github.com/isaacs/node/commit/892a20d7df309f2ce173fecb0b03bd456e3cf33a is so that i can run the test with --throw-deprecation and see where these messages are actually coming rom.
19:38:01  <indutny>yes, I understand
19:38:06  <isaacs>if you trigger a nextTick warning in Writable.write(), you can get into trouble
19:38:12  <isaacs>because it calls stderr.write()
19:38:26  <isaacs>so, by the time you scroll back, you can't find the first one any more.
19:38:32  <isaacs>--throw-deprecation == super handy there
19:39:03  * piscisaureus_joined
19:41:28  <indutny>ok
19:41:31  <indutny>https://github.com/joyent/node/pull/4934
19:41:32  <indutny>LGTM ^
19:41:37  <indutny>what about this https://github.com/joyent/node/pull/4930
19:42:24  * pooyaquit (Ping timeout: 276 seconds)
19:43:07  <isaacs>indutny: 4934 implies 4930
19:43:12  <isaacs>if you reviewed one, you reviewed the other :)
19:43:14  <indutny>ok
19:43:17  <indutny>good to know
19:43:25  <indutny>so, anything else?
19:43:34  * stagasjoined
19:43:51  * pooyajoined
19:44:06  <isaacs>one sec...
19:44:43  <MI6>joyent/node: isaacs master * 9208c89 : stream: Raise readable high water mark in powers of 2 This prevents exce (+7 more commits) - http://git.io/4rw4uQ
19:45:08  <isaacs>indutny: https://github.com/joyent/node/pull/4927 <-- this one
19:45:19  <isaacs>indutny: adds httpServer.setTimeout(msecs, callback)
19:45:22  <indutny>yeah, looking
19:45:25  <isaacs>so you can override the "destroy after 2 minutes" behavior
19:45:33  <isaacs>and then 0.9.9000!
19:46:10  <indutny>haha :)
19:46:16  <indutny>node 3000
19:47:13  <sblom>node 3000 is more likely to ship than node 6. Although its adoption would be nearly as slow.
19:47:38  <indutny>oh, I've better idea
19:47:40  <indutny>node xp
19:47:43  <isaacs>hahaha
19:47:44  <sblom>Heh.
19:47:46  <isaacs>Node 8
19:47:51  <indutny>we won't support it at all
19:47:53  <sblom>Node ME.
19:47:55  <isaacs>same program, but we changed the hexagons ot squares
19:47:58  <indutny>and release only service packs
19:48:04  <indutny>isaacs: ++
19:48:35  <sblom>I was sitting in the lobby of Building 9 one day many years ago and I saw some guy walk in with his boxed copy of Windows ME demanding a cash refund from the building's receptionist because he couldn't get it to install.
19:48:39  <isaacs>brb, gonna kill wifi and run some benchmarks
19:48:52  * mikealquit (Quit: Leaving.)
19:48:52  <indutny>sblom: oh gosh
19:49:05  <sblom>Yeah--needless to say, the receptionist was powerless to help.
19:49:06  <indutny>sblom: it was quite pirated here in russia
19:49:08  <indutny>:)
19:49:11  <sblom>Heh.
19:49:21  <indutny>I don't think anyone installed license copy of ME
19:49:23  <indutny>and 95
19:49:35  <indutny>people've started paying some money after XP
19:49:47  <indutny>thankfully it was preinstalled on many pcs and laptops
19:50:34  <indutny>I'm a long time "unix" user, but seen a lot of this stuff in my professional life
19:54:51  <indutny>isaacs: sorry man, going to read armv6 manual for the rest of the day
19:55:03  <indutny>will look into .setTimeout() later
19:55:11  <indutny>if bnoordhuis won't review it before that
19:55:40  * bnoordhuisis having dinner first
19:55:51  <indutny>same in my timeozne
19:55:55  <indutny>s/ozne/zone/
19:58:19  <indutny>btw, ia32e is so complicated
19:58:24  <indutny>stupid legacy and compatibility
19:58:56  <indutny>the fact that you need to switch between 3 modes at kernel initialization is so...
19:59:10  <indutny>idk, stupid?
19:59:35  <MI6>nodejs-master: #71 UNSTABLE windows-ia32 (12/550) windows-x64 (11/550) osx-x64 (1/550) http://jenkins.nodejs.org/job/nodejs-master/71/
20:00:11  <sblom>ia32e is Intel's implementation of x86_64?
20:00:40  <tjfontaine>hm?
20:01:35  <sblom>I'm probably imprecise wording. was just asking indutny what ia32e is.
20:01:42  * bnoordhuisquit (Ping timeout: 245 seconds)
20:01:48  <tjfontaine>oh
20:02:53  <sblom>My crappy understanding is that it's Intel's name for their 64-bit processor technology that _isn't_ ia64.
20:03:19  <sblom>Entirely possible that my crappy understanding is wrong in addition to crappy. :)
20:03:46  * dapquit (Quit: Leaving.)
20:06:47  <mmalecki>sblom: ia32e is x86-64, it's just a brand name
20:07:36  * hzjoined
20:07:51  <trevnorris>anyone have a real world example of using .ref()/.unref() for net, etc?
20:08:04  <trevnorris>TooTallNate: you probably do. you seem to have an example for almost everything. =)
20:08:21  <mmalecki>trevnorris: I might do. browsing through code, just a sec.
20:09:01  <mmalecki>trevnorris: nah, we had one. don't have any atm, sorry
20:09:15  <trevnorris>np. just wondering why someone would use it.
20:09:19  <mmalecki>trevnorris: it was used for a control channel tho
20:09:40  * brsonquit (Ping timeout: 272 seconds)
20:09:59  <mmalecki>so basically, a script wrapping an app would connect to a server and unref the connection, to avoid keeping the application up
20:10:02  * brsonjoined
20:10:05  <TooTallNate>trevnorris: i don't have one for net… but I was considering unrefing a Timer the other day...
20:10:34  <trevnorris>ok. but those are things that a Buffer would never need, right?
20:11:04  <trevnorris>just curious since the Buffer class inherets from ObjectWrap, which supplies the Ref/Unref methods.
20:11:24  <TooTallNate>trevnorris: i think net and timer ref()/unref() are more for event loop semantics
20:11:33  <trevnorris>mmalecki: ah, ok. that makes sense.
20:11:34  <TooTallNate>trevnorris: the ObjectWrap one is for garbage colelction
20:12:26  <trevnorris>TooTallNate: but I don't see it ever being used (e.g. grep "\<Ref\>" src/*)
20:12:33  <TooTallNate>trevnorris: i.e. ref()ing a Buffer instance won't keep the event loop alive
20:12:54  <trevnorris>oh, freak. ok.
20:13:06  <trevnorris>yeah, i see it. HandleWrap also has a Ref and Unref.
20:13:07  <TooTallNate>trevnorris: i think it's more useful for addons maybe? idk, i've never used ObjectWrap
20:14:25  <trevnorris>TooTallNate: yeah. the comment in node_object_wrap.h makes sense ("Ref() marks the object as being attached to an event loop"), I just can't find it being used anywhere.
20:14:36  <trevnorris>well, guess I'll just delete them and run the tests. ;-)
20:15:41  <mmalecki>trevnorris: it might not be used in node at all
20:15:56  <mmalecki>trevnorris: by default, these things should happen in uv only
20:16:01  <trevnorris>ah, just found it. being used by StatWatcher and zlib.
20:16:04  <mmalecki>eg. when connection is created, it's reffed
20:16:11  <mmalecki>and unreffed when it exits
20:16:15  <trevnorris>mmalecki: oh, sorry. i was talking about a different ref.
20:16:23  <mmalecki>ah, Buffer ref, okay :)
20:16:31  <trevnorris>yeah
20:17:04  <trevnorris>didn't realize that both HandleWrap and ObjectWrap each have Ref/Unref...
20:18:36  <isaacs>http://static.izs.me/benchmark-master-vs-0.8.html
20:18:53  <isaacs>the net benchmarks are kind of just showing jitter
20:18:59  <isaacs>but http and fs are consistently faster.
20:19:46  <isaacs>some of the fs numbers are unbelievable. i'm guessing that my hd just decided to spin or something at some point there
20:20:22  * loladirojoined
20:21:16  <isaacs>but still, good enough for 0.9.12
20:21:49  <TooTallNate>isaacs: +1
20:23:20  <indutny>sblom: yes its sort of this
20:23:27  <indutny>extended 32bit mode
20:31:13  * sblomquit
20:33:36  <MI6>joyent/node: isaacs master * db5d58e : bench: Use environ to run compares more than once This will run the benc - http://git.io/1zGD8g
20:34:40  * sblomjoined
20:45:35  * qmxchanged nick to qmx|coffee
20:47:57  <trevnorris>isaacs: have a friend that works on display drivers at apple. funny though because he measures regression in ns and clock cycles. need to keep reminding myself that isn't node's case. ;-)
20:47:57  <MI6>nodejs-master: #72 UNSTABLE windows-ia32 (13/550) windows-x64 (11/550) osx-x64 (1/550) http://jenkins.nodejs.org/job/nodejs-master/72/
20:48:27  <isaacs>trevnorris: haha
20:48:29  <isaacs>thankfully!
20:48:33  <isaacs>http is pretty forgiving
20:48:41  <isaacs>but, like him, we are IO bound
20:48:44  <isaacs>it's just that his IO is WAY faster.
20:50:01  <trevnorris>heh, seriously.
20:56:54  * dapjoined
21:00:21  <MI6>joyent/node: isaacs created branch v0.9.12-release - http://git.io/6HFwCw
21:01:07  <isaacs>TooTallNate: ping
21:02:47  * bnoordhuisjoined
21:03:13  <MI6>joyent/node: isaacs v0.9.12-release * 719e487 : 2013.03.06, Version 0.9.12 (Unstable) * stream: Allow strings in Readabl - http://git.io/jQ6wkg
21:04:30  <TooTallNate>isaacs: pong
21:04:31  * c4miloquit (Remote host closed the connection)
21:04:50  <TooTallNate>oh, gchat, i see
21:04:55  <isaacs>TooTallNate: do you have a moment to take a look at-- yeah, that
21:04:56  <isaacs>:)
21:05:03  <isaacs>sblom: omg! you're not in the AUTHORS file!
21:05:05  <isaacs>sblom: i'm so sorry.
21:05:14  <isaacs>sblom: this will be rectified in 0.9.12
21:06:33  <MI6>joyent/node: isaacs v0.9.12-release * 0debf5a : 2013.03.06, Version 0.9.12 (Unstable) * stream: Allow strings in Readabl - http://git.io/mY4O-g
21:07:19  * mikealjoined
21:12:40  <TooTallNate>isaacs: patch lgtm
21:13:33  <isaacs>TooTallNate: kewl
21:13:44  <MI6>joyent/node: isaacs master * d258fb0 : http: More useful setTimeout API on server This adds the following to HT - http://git.io/B8f9cw
21:13:54  <isaacs>whoa nice. just used a new git power I learned :)
21:14:03  <isaacs>i'm not on the master branch, but i did `git push ry-push master:master`
21:14:09  <isaacs>ie, "set remote master to my master"
21:14:19  <tjfontaine>ya, it's quite a helpful one
21:14:21  <isaacs>tests all pass
21:14:35  * isaacstakeing off every zig
21:15:29  <TooTallNate>zig?
21:15:31  <MI6>joyent/libuv: isaacs created tag node-v0.9.12 - http://git.io/-t7ILQ
21:17:28  <isaacs>PREPARE ZIG
21:17:28  <LOUDBOT>GOOGLE'S TELLING ME TWITTER DOES METH
21:17:35  <isaacs>TooTallNate: you're making me feel old again, i think.
21:17:39  <isaacs>that meme might be before your time.
21:17:54  <TooTallNate>shiitttt
21:17:57  <TooTallNate>:p
21:18:31  <isaacs>TooTallNate: http://knowyourmeme.com/memes/all-your-base-are-belong-to-us
21:18:36  <isaacs>history lesson for the youngins
21:18:47  <isaacs>back when i was your age, video games didn't have talking them.
21:18:48  <tjfontaine>bad TooTallNate
21:18:56  <TooTallNate>oh, haha i know all your base
21:18:57  <isaacs>they had poorly translated low-resolution TEXT instead.
21:19:04  <isaacs>adn i'm not talking pre-retina
21:19:12  <tjfontaine>TooTallNate: clearly not well enough :)
21:19:14  <isaacs>no sir-ee bob. we'd've been THRILLED for 800x600!
21:19:25  <tjfontaine>gimmie some EGA/CGA
21:19:40  <isaacs>an 800x600 monitor was 7 billion dollars, and the size of a minivan!
21:19:43  <isaacs>;P
21:19:59  <isaacs>anyway... time to make the binaries.
21:20:10  * isaacswhippin out the pre-internet memes even...
21:21:06  * qmx|coffeechanged nick to qmx
21:21:43  <trevnorris>indutny: ping
21:21:46  * hzquit (Disconnected by services)
21:21:52  * hzjoined
21:24:04  * dominictarrjoined
21:29:39  * bradleymeckquit (Ping timeout: 276 seconds)
21:30:28  <MI6>joyent/node: isaacs master * 51c8b0e : V8: Reapply floating patches (+1 more commits) - http://git.io/eOiBMA
21:32:25  <MI6>nodejs-master: #73 UNSTABLE osx-ia32 (1/551) windows-ia32 (11/551) linux-x64 (1/551) windows-x64 (11/551) linux-ia32 (1/551) http://jenkins.nodejs.org/job/nodejs-master/73/
21:32:37  * dominictarrquit (Quit: dominictarr)
21:34:01  * wolfeidauquit (Remote host closed the connection)
21:34:38  <sblom>isaacs: If it helps you feel less bad, I noticed me missing from AUTHORS weeks ago and have been continually forgetting to say anything. I.e. it was really low prio for me.
21:35:00  <isaacs>heh
21:35:11  <isaacs>sblom: well, making contributors feel included and special is HIGH priority for me :)
21:35:17  <isaacs>sblom: that's like half my job.
21:35:49  <sblom>isaacs: I appreciate that. And for what it's worth I feel included. :p
21:36:55  <isaacs>good to hear :)
21:47:07  <MI6>nodejs-master: #74 FAILURE windows-ia32 (11/551) http://jenkins.nodejs.org/job/nodejs-master/74/
21:47:15  <tjfontaine>ugh
21:47:27  <MI6>joyent/node: isaacs created tag v0.9.12 - http://git.io/X8JJLQ
21:48:09  <tjfontaine>TAP Reports Processing: FINISH
21:48:10  <tjfontaine>Finished: ABORTED
21:48:12  <tjfontaine>wtf.
21:49:28  <isaacs>tjfontaine: the robots are messing with you now.
21:49:37  <isaacs>tjfontaine: they've developed a sense of humor. it's time to run.
21:50:15  * c4milojoined
21:50:15  <tjfontaine>isaacs: inexplicable
21:53:17  * pooyaquit (Quit: pooya)
21:54:09  <isaacs>hm........
21:54:10  <isaacs>so....
21:54:12  <isaacs>i've got a crazy idea.
21:54:16  <isaacs>what if we just call this 0.10?
21:54:40  <isaacs>actually, i don't think i feel like writing up that blog post today.
21:54:42  <isaacs>nvm.
21:54:45  <isaacs>we'll put off until monday
21:54:46  <TooTallNate>does anyone else think realine's "terminal" mode should have been called "rawMode" instead?
21:55:05  * TooTallNatefeels guilty since i came up with "terminal" name
21:55:10  * wolfeidaujoined
21:55:30  * pooyajoined
21:58:49  <MI6>joyent/node: isaacs v0.8 * 116d6c4 : blog: Post for 0.9.12 - http://git.io/63vf1A
21:59:13  <trevnorris>bnoordhuis: not sure why, but all my nprof outputs are just showing all undefined ticks. any ideas?
22:00:18  * pooyaquit (Client Quit)
22:00:19  * rendarquit
22:00:20  <MI6>joyent/node: isaacs master * 7df4652 : Now working on 0.9.13 Probably that will be 0.10.0 instead, though. (+3 more commits) - http://git.io/TIUDQg
22:04:05  <isaacs>TooTallNate: it's not too late!!
22:04:12  <isaacs>TooTallNate: i haven't forked v0.10 branch yet!!
22:04:14  <isaacs>;P
22:04:40  <TooTallNate>isaacs: i guess we could keep backwards compat there easily enough
22:04:44  <isaacs>sure
22:04:53  <TooTallNate>isaacs: but do you think "rawMode" is more self-documenting?
22:04:57  <isaacs>meh
22:05:08  <TooTallNate>ya, it's not a huge improvement :p
22:05:09  <isaacs>it kinda seems connected to socket.setRawMode()
22:05:12  <isaacs>so that's nice.
22:05:25  <isaacs>start an issue.
22:05:30  <isaacs>let's do it in 0.12, probably
22:07:35  <mmalecki>isaacs: hey, mind giving https://github.com/isaacs/npm-registry-client/pull/14 a quick look when not busy :) ?
22:07:41  * isaacstopic: liberal utopian vacation ~ http://logs.libuv.org/libuv ~ http://groups.google.com/group/libuv
22:09:27  <isaacs>mmalecki: done
22:09:46  <piscisaureus_>isaacs/sblom: so did you resolve this child_process pipes not working on windows problem?
22:09:53  <mmalecki>isaacs: thanks. now to hope that the error goes away :D
22:10:25  <mmalecki>(actual error, I mean. socket hang up.)
22:12:25  <bnoordhuis>trevnorris: are you profiling code that uses the cluster module?
22:12:53  <trevnorris>bnoordhuis: no. i'm just profiling a for loop creating buffers. the v8 log looks normal.
22:13:18  <bnoordhuis>might be a mismatch between the v8 version and the tick profiler
22:13:38  <bnoordhuis>try building d8 and running deps/v8/tools/linux-tick-processor
22:13:46  <bnoordhuis>you know how to build d8?
22:14:04  <trevnorris>yeah
22:15:00  <trevnorris>well. from the v8 repo that is. i assume that's what you meant.
22:15:12  <trevnorris>ah, yep.
22:15:13  <trevnorris>that's it.
22:15:35  <MI6>nodejs-v0.8: #27 FAILURE windows-ia32 (2/467) osx-x64 (8/468) smartos-ia32 (2/468) linux-ia32 (2/468) osx-ia32 (1/468) smartos-x64 (11/468) linux-x64 (6/468) http://jenkins.nodejs.org/job/nodejs-v0.8/27/
22:15:46  <trevnorris>oh, i remember asking you to upgrade master. I guess the revert to 3.14.5 broke it.
22:16:08  <bnoordhuis>i suspect that's it, yes
22:16:29  <bnoordhuis>i haven't yet up/downgraded nprof
22:16:57  * sgallaghquit (Remote host closed the connection)
22:20:32  <MI6>nodejs-master: #75 UNSTABLE osx-ia32 (113/551) smartos-ia32 (4/551) windows-ia32 (11/551) windows-x64 (11/551) linux-ia32 (3/551) osx-x64 (2/551) http://jenkins.nodejs.org/job/nodejs-master/75/
22:21:23  <tjfontaine>er, 113 test failures on osx-ia32 wtf there guy
22:21:49  <tjfontaine>hmm address in use
22:22:49  <piscisaureus_>isaacs: did you upgrade uv before the .12 release ?
22:23:05  <isaacs>piscisaureus_: ben did, ib elieve
22:23:10  <piscisaureus_>hmm
22:23:22  <isaacs>but there are 3 tty fixes that are not there, yet.
22:23:29  <isaacs>so they'll be new in 0.10 :)
22:23:43  <piscisaureus_>yes exactly. not big of a deal, just making sure they will go into .10
22:24:03  <piscisaureus_>also I will polish the msi a bit before that although it's no blocker
22:24:40  <piscisaureus_>but it's basically what I've been working on this week (apart from npm)
22:24:42  <piscisaureus_>and it's long overdue
22:24:50  <tjfontaine>piscisaureus_: have you ever had wix complain at you for a 32/64 incompatibility?
22:25:03  <isaacs>piscisaureus_: kewl, thanks
22:25:04  <piscisaureus_>tjfontaine: no
22:25:07  <tjfontaine>well msbuild I guess really
22:25:09  <tjfontaine>k
22:25:18  <piscisaureus_>tjfontaine: well yes
22:25:43  <piscisaureus_>tjfontaine: it happens if you cancel an x86 build halfway and then try to build x64 (without cleaning)
22:25:45  <piscisaureus_>or vice versa
22:25:53  <piscisaureus_>the trick is usually to just clean
22:26:07  <tjfontaine>well, I use `git clean -fdX` before each build
22:26:43  <piscisaureus_>ooh then I know what it is
22:26:46  <tjfontaine>but it http://jenkins.nodejs.org/job/nodejs-master-fnt/DESTCPU=ia32,label=windows/25/consoleText
22:27:02  * pooyajoined
22:27:13  <tjfontaine>sblom and I have tried the run out of process, but it either didn't accept the value or just hates me
22:27:18  <piscisaureus_>You mean -> Could not load file or assembly 'file:///C:\Program Files (x86)\WiX Toolset v3.7\bin\Heat.exe' or one of its dependencies. An attempt was made to load a program with an incorrect format.
22:27:24  <piscisaureus_>hmm
22:27:28  <piscisaureus_>no I don't know about that
22:27:30  <tjfontaine>k
22:27:48  <tjfontaine>I'm going to blame it on wix being angry at me for not having VS installed in g:
22:27:58  <tjfontaine>for *having
22:28:21  <piscisaureus_>huh neither have i
22:28:37  <piscisaureus_>does it always do this or only sometimes?
22:28:48  <tjfontaine>it happens for all msi builds
22:29:16  <piscisaureus_>maybe it can't find the proper .net runtime library
22:29:31  <piscisaureus_>also (unrelated) you probably want to install ctrpp for the full testing experience
22:29:53  <tjfontaine>well the heat.exe.config has both 2.0 and 4.0 in it
22:30:02  <tjfontaine>piscisaureus_: is that in sdk?
22:30:07  <piscisaureus_>yeah
22:30:27  <trevnorris>bnoordhuis: thanks. got it working again.
22:30:28  <tjfontaine>well it still can't find it despite me doing g:\sdks\windows\v7.1\bin\setenv.cmd /x86 /release
22:30:36  <tjfontaine>so it must not be putting it on the path
22:30:49  <tjfontaine>I can add that to path
22:31:32  <trevnorris>bnoordhuis: oh, and if I can request your development wisdom. i'm working on the piece that will (hopefully) handle all memory allocations. but not sure show how the api should look.
22:31:43  <piscisaureus_>tjfontaine: btw -http://sourceforge.net/p/wix/bugs/2165/
22:32:08  <trevnorris>bnoordhuis: not familiar w/ cc api best practices or such.
22:32:43  <tjfontaine>piscisaureus_: right, and the "fix" they say doesn't seem to work https://github.com/MSOpenTech/node/commit/c5aa61aac17d267144012effd094d19bab1a07da
22:34:33  <piscisaureus_>g:\jenkins\workspace\nodejs-master-fnt\destcpu\ia32\label\windows\deps\v8\src\utils.h(274): warning C4800: 'uint32_t' : forcing value to bool 'true' or 'false' (performance warning) [g:\jenkins\workspace\nodejs-master-fnt\DESTCPU\ia32\label\windows\deps\v8\tools\gyp\mksnapshot.vcxproj]
22:34:34  <piscisaureus_> g:\jenkins\workspace\nodejs-master-fnt\destcpu\ia32\label\windows\deps\v8\src\utils.h(273) : while compiling class template member function 'bool v8::internal::BitField<T,shift,size>::decode(uint32_t)'
22:34:40  <piscisaureus_>all these warnings were onced fixed
22:34:52  <piscisaureus_>but I think some v8 patch didn't get reapplied
22:35:09  <tjfontaine>perhaps when we went down to 3.14
22:36:52  <piscisaureus_>anyway - tjfontaine - I don't know. WiX always wants me to make me shoot myself.
22:37:00  <piscisaureus_>You better not ask me to debug it :)
22:37:14  <tjfontaine>piscisaureus_: as of right now I'm there with you
22:37:26  <tjfontaine>and I haven't had to actually do anything with it
22:37:47  <piscisaureus_>tjfontaine: maybe to get started just don't build the msi on the ci
22:38:14  <piscisaureus_>if you run the tests (including pummel) then you've already made a giant leap
22:38:40  <tjfontaine>piscisaureus_: well that's only on the full-nightly-test anyway, so it's not a part of the normal, but it is a step towards the automated releases
22:39:03  <piscisaureus_>ah yeah
22:39:11  <tjfontaine>ya I can split binary generation off until after tests are run
22:39:23  <tjfontaine>but on the unicies that implies a rebuild of the tree generally
22:39:48  <tjfontaine>I think, maybe just osx
22:41:00  <piscisaureus_>maybe you can also try if 3.6 works
22:41:06  <piscisaureus_>and if it does, file a bug against wix
22:41:11  <piscisaureus_>anyway - I'm out of here
22:41:16  <tjfontaine>bye
22:41:27  <piscisaureus_>trying to maintain this healthy rhytm
22:41:38  <piscisaureus_>godspeed, everyone
22:41:42  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
22:45:53  <trevnorris>bnoordhuis: duh, nm. the slaballocator is a good example.
22:48:28  * kazuponjoined
22:49:17  * mikealquit (Quit: Leaving.)
22:57:47  * kazuponquit (Ping timeout: 252 seconds)
22:59:55  <tjfontaine>TooTallNate: ping
23:00:10  * sblomquit
23:00:19  <TooTallNate>tjfontaine: pong
23:00:32  <tjfontaine>TooTallNate: did you say you have a released libgit2 ffi interface?
23:00:52  <TooTallNate>tjfontaine: just a partial, hand-written one
23:00:58  <TooTallNate>tjfontaine: didn't you give me a full one?
23:01:19  <tjfontaine>I did, but ya know it was untested, I was just curious if yours was in npm already
23:01:37  <TooTallNate>tjfontaine: actually, the one you ended up giving me seemed to be for a different libgit2 version than the one on my pi
23:01:42  <TooTallNate>i was getting undefined symbols
23:02:10  <TooTallNate>tjfontaine: but no, mine's not on npm, but it's here: https://github.com/TooTallNate/n8.io/blob/master/lib/git.js
23:02:28  <tjfontaine>lul node/ffi/libgit2 and pi, I love hearing this shit :P
23:03:07  <TooTallNate>tjfontaine: ya, that formula = http://n8.io :)
23:04:52  * benoitcquit (Excess Flood)
23:06:03  * dominictarrjoined
23:07:15  * c4miloquit (Remote host closed the connection)
23:09:24  * dominictarrquit (Client Quit)
23:12:49  * benoitcjoined
23:14:14  * hzquit
23:15:54  * dominictarrjoined
23:16:46  * pooyaquit (Quit: pooya)
23:19:36  * mikealjoined
23:20:10  * dominictarrquit (Client Quit)
23:28:20  * qmxchanged nick to qmx|away
23:31:29  * loladiroquit (Quit: loladiro)
23:41:18  <MI6>joyent/node: isaacs v0.8 * 80fb580 : npm: Update to 1.2.14 (+1 more commits) - http://git.io/y7LP9g
23:43:34  <MI6>joyent/node: isaacs master * f780c6f : Merge remote-tracking branch 'ry/v0.8' into master Conflicts: deps/npm/ (+4 more commits) - http://git.io/minCgQ
23:52:37  <MI6>joyent/node: isaacs created branch v0.8.22-release - http://git.io/QBfnDw
23:53:30  <isaacs>queueing up for tomorrow ^
23:53:58  * kazuponjoined
23:56:50  <MI6>nodejs-v0.8: #28 FAILURE windows-ia32 (2/467) osx-x64 (10/468) smartos-ia32 (4/468) linux-ia32 (1/468) osx-ia32 (4/468) smartos-x64 (91/468) linux-x64 (6/468) http://jenkins.nodejs.org/job/nodejs-v0.8/28/
23:57:03  <isaacs>wowzers.
23:57:20  <tjfontaine>which
23:57:33  <tjfontaine>oh they all failed
23:57:38  <tjfontaine>probably because I changed hte build system
23:58:01  <MI6>joyent/libuv: Ben Noordhuis master * dac5a75 : unix: replace volatile cast with ACCESS_ONCE macro (+5 more commits) - http://git.io/cTyGVQ
23:58:06  <isaacs>tjfontaine: i can tell that 0.10 is right around the corner.
23:58:15  <isaacs>i already give zero fucks about 0.8 builds failing
23:58:17  <isaacs>:)
23:58:22  * kazuponquit (Ping timeout: 245 seconds)
23:58:24  <tjfontaine>heh
23:58:42  <tjfontaine>ya I did something wrong in the build system :)
23:58:58  <tjfontaine>/data/jenkins/workspace/nodejs-v0.8/DESTCPU/ia32/label/linux/buildit/node_modules/slide/lib/chain.js:7
23:59:01  <tjfontaine> if (i >= len) return cb(null,res)
23:59:15  <MI6>nodejs-master: #76 FAILURE osx-ia32 (111/551) smartos-ia32 (136/551) windows-ia32 (13/551) linux-x64 (1/551) windows-x64 (13/551) linux-ia32 (10/551) http://jenkins.nodejs.org/job/nodejs-master/76/
23:59:27  <isaacs>whoa your buildit thing uses slide?
23:59:29  <isaacs>crazy.
23:59:44  <isaacs>111 failures??
23:59:47  <isaacs>erm...
23:59:56  * c4milojoined
23:59:57  * isaacssuddenly gives > 0 fucks again