00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:08  * ircretaryjoined
00:13:40  * philips_quit (Excess Flood)
00:27:37  * [mlg]d30xx4[mlg]joined
00:27:41  * [mlg]d30xx4[mlg]changed nick to deoxxa
00:35:16  * philips_joined
01:01:11  * bnoordhuisquit (Ping timeout: 252 seconds)
01:05:02  * xaqquit (Remote host closed the connection)
01:05:07  * piscisaureus_joined
01:06:38  * loladiropart
01:09:33  * piscisaureus_quit (Read error: Connection reset by peer)
01:09:54  * piscisaureus_joined
01:10:58  * piscisaureus_quit (Client Quit)
01:50:34  * hij1nxquit (Quit: WeeChat 0.3.2)
01:50:45  * hij1nxjoined
02:27:32  * AvianFluquit (Read error: Connection reset by peer)
02:32:41  * AvianFlujoined
02:35:22  * mikealquit (Read error: Connection reset by peer)
02:54:24  <isaacs>mmalecki: how do you feel about adding the - at the front of the tag?
02:54:28  <isaacs>mmalecki: i can just squash it in
02:56:05  <indutny>heya
03:04:08  <mmalecki>isaacs: I'm confused, which tag are you talking about?
03:04:23  <mmalecki>actually, I'm an idiot :)
03:04:30  * deoxxaquit (Ping timeout: 252 seconds)
03:04:46  <isaacs>mmalecki: that ./configure --tag=foo thing
03:04:57  <mmalecki>yeah, I know
03:05:23  <mmalecki>sure, that sounds good to me
03:05:40  <mmalecki>want a pull request or will you just add it?
03:06:31  * [mlg]d30xx4[mlg]joined
03:06:44  * [mlg]d30xx4[mlg]changed nick to deoxxa
03:09:47  * mikealjoined
03:11:42  <indutny>I just realized that v8 using different representation for smis on x64
03:11:45  <indutny>fucking shit!!!!
03:11:51  <indutny>I spent all night trying to understand this :)
03:12:13  * mjr_quit (Ping timeout: 265 seconds)
03:18:13  <isaacs>mmalecki: i can just squash it
03:18:21  <isaacs>mmalecki: didn't want to spoil your artistic vision :)
03:18:33  <indutny>sorry, for adult lexic
03:18:39  <indutny>I'm just too surprised
03:18:58  <mmalecki>isaacs: haha, go for it
03:20:01  <isaacs>indutny: it's ok to curse in here, as long as it's not directed at people.
03:20:10  <isaacs>indutny: you can curse at computers all day long, though
03:20:18  <isaacs>indutny: in fact, i think that's kind of our job :)
03:20:38  <indutny>hahaha
03:20:42  <indutny>I suppose our job? :)
03:26:13  <indutny>isaacs: FYI https://chromiumcodereview.appspot.com/11676005/
03:26:21  <indutny>isaacs: we might need to backport it eventually
03:26:28  <indutny>isaacs: either as v8 update, or as floating patch
04:13:53  * mmaleckichanged nick to mmalecki[zzz]
04:14:57  <isaacs>indutny: we can't update v8 dramatically in a stable release.
04:15:04  <isaacs>indutny: but a floating patch could be possible
04:15:12  <brucem>Do it without drama.
04:15:41  <isaacs>brucem: :)
04:16:03  * kazuponjoined
04:28:12  <MI6>joyent/node: Maciej Małecki v0.8 * c2e71dd : build: allow to specify custom tags When building custom `node` versions - http://git.io/3TTOFA
04:28:13  <isaacs>mmalecki[zzz]: thanks ^
04:35:48  <MI6>joyent/node: isaacs master * 4be9c69 : build: Add hyphen to custom build tags so that ./configure --tag=foo mak - http://git.io/79ZPwA
05:12:27  * mikealquit (Quit: Leaving.)
05:20:44  * kazuponquit (Read error: Connection reset by peer)
05:21:30  * kazuponjoined
06:02:11  * felixgejoined
06:02:11  * felixgequit (Changing host)
06:02:11  * felixgejoined
06:04:02  * felixgequit (Client Quit)
06:06:56  * wolfeida_quit (Remote host closed the connection)
06:27:34  * AvianFluquit
06:34:31  * qmxjoined
06:48:08  * qmxchanged nick to qmx|away
06:49:10  * mjr_joined
06:56:15  * mjr_quit (Quit: mjr_)
06:59:52  * stagasjoined
07:39:08  * rendarjoined
07:47:01  * mikealjoined
07:49:26  * deoxxaquit (Quit: Linkinus - http://linkinus.com)
07:57:08  * `3rdEdenjoined
08:38:02  * xaqjoined
08:54:50  * hzjoined
09:04:16  * xaqquit (Remote host closed the connection)
09:14:23  * loladirojoined
09:27:04  * bentkus_joined
09:27:05  <bentkus_>hooray
09:38:45  * kazuponquit (Remote host closed the connection)
09:41:44  * kazuponjoined
09:44:12  * kazuponquit (Remote host closed the connection)
10:10:51  * mmalecki[zzz]changed nick to mmalecki
10:11:20  * stagasquit (Ping timeout: 255 seconds)
10:12:48  <indutny>isaacs: hehe
10:14:57  * Raltjoined
10:27:59  * bentkus_quit (Ping timeout: 256 seconds)
10:58:23  * kazuponjoined
11:00:25  * `3rdEdenquit (Remote host closed the connection)
11:10:09  * kazupon_joined
11:11:05  * Raltquit (Remote host closed the connection)
11:12:38  * kazuponquit (Ping timeout: 255 seconds)
11:19:35  * Raltjoined
11:29:50  * loladiroquit (Quit: loladiro)
11:39:27  * kazupon_quit (Remote host closed the connection)
11:43:05  * TheJHjoined
11:49:07  * bnoordhuisjoined
11:56:23  * felixgejoined
11:56:23  * felixgequit (Changing host)
11:56:23  * felixgejoined
12:00:04  * travis-cijoined
12:00:04  <travis-ci>[travis-ci] wwwouter/node#5 (master - c1ed72d : wwwouter): The build is still failing.
12:00:04  <travis-ci>[travis-ci] Change view : https://github.com/wwwouter/node/compare/737f34315ed1...c1ed72d5d8c1
12:00:04  <travis-ci>[travis-ci] Build details : http://travis-ci.org/wwwouter/node/builds/3839185
12:00:04  * travis-cipart
12:47:46  * Raltquit (Remote host closed the connection)
13:01:19  * Raltjoined
13:14:37  * piscisaureus_joined
13:15:20  <piscisaureus_>'lo
13:18:23  * felixgequit (Quit: http://www.debuggable.com/)
13:26:54  * Raltquit (Remote host closed the connection)
13:33:11  <bnoordhuis>piscisaureus_: sup bertje
13:33:24  <piscisaureus_>good times bnoordhuis
13:33:32  <bnoordhuis>i'm about to break just about everything but the linux libuv build
13:33:33  <piscisaureus_>'sup met jou bennetje?
13:33:44  <piscisaureus_>bnoordhuis: oh. why?
13:33:47  <bnoordhuis>yeah, i'm fine. survived christmas
13:33:56  <bnoordhuis>cleaning up uv.gyp
13:34:05  <piscisaureus_>bnoordhuis: uhhh .... creepy :-)
13:34:19  <piscisaureus_>bnoordhuis: are you sure all that turkey didnt mess with your head?
13:34:56  <bnoordhuis>you forget my family-in-law are all 70s style vegan hippies
13:35:02  <bnoordhuis>no turkey for poor ben :(
13:35:23  <piscisaureus_>hahaha. You only saw your family-in-law?
13:35:52  <piscisaureus_>No proper compensation for this at your mum's ?
13:36:30  <bnoordhuis>ar: illegal option -- T <- bloody solaris
13:36:36  <bnoordhuis>that's been broken for a while now though
13:36:53  <bnoordhuis>piscisaureus_: no, i only visited my girlfriend's family
13:37:13  <piscisaureus_>ah
13:37:35  <bnoordhuis>the worst part is i lost at koehandel
13:38:11  <bnoordhuis>betting everything on one or two high-ranking animals is not a winning strategy, it turns out
13:40:30  <piscisaureus_>bnoordhuis: the trick is to acknowledge the hyperinflation
13:40:40  <piscisaureus_>bnoordhuis: spend your money as soon as you can
13:41:25  <bnoordhuis>piscisaureus_: and then? you need money for the endgame. or do you mean the topups that are handed out with every donkey?
13:41:42  <piscisaureus_>bnoordhuis: those topups create massive inflation
13:41:46  <bnoordhuis>hah, i wonder how this conversation reads for people who don't know koehandel
13:41:59  <bnoordhuis>yeah, that it does
13:42:10  <bnoordhuis>it was my first game, next time i'm going for diversification
13:42:11  <piscisaureus_>bnoordhuis: usually I try to make as much as money as I can in the one-but-last turn
13:44:26  <piscisaureus_>I wonder if strip koehandel could be a game you play in vegas
13:45:12  <bnoordhuis>piscisaureus_: hm. i don't think i'll invite my parents-in-law in that case
13:45:35  <piscisaureus_>ehh no for the christmas days you'll want to stick to the original :-)
13:45:46  <piscisaureus_>family version
13:47:46  <bnoordhuis>i should mention the girl next door participated as well
13:47:57  <bnoordhuis>she could join me in the vegas trip
13:48:01  <bnoordhuis>well, once she turns 18 that is
13:54:33  <piscisaureus_>shhh this is a public forum
13:54:48  <piscisaureus_>someone will be smashing your windows tonight
13:55:43  <bnoordhuis>ah well, i'm insured
13:56:46  <bnoordhuis>piscisaureus_: so bertje, what are you working on?
13:56:57  <bnoordhuis>besides personal hygiene, i mean
13:57:23  <piscisaureus_>bnoordhuis: I am doing the udp cluster thing again. Serious, this time, without distractions
13:57:44  <piscisaureus_>bnoordhuis: although I am fascinated by the mess that is net.js :-)
13:57:53  <piscisaureus_>and i have to replicate that in dgram.js
13:58:07  <bnoordhuis>yeah, no kidding
13:58:14  <piscisaureus_>and I see many things that I think could be bugs but I am not sure
13:58:41  <bnoordhuis>we should never have let those javascripters near our beautiful code
13:58:52  <piscisaureus_>indeed
13:59:08  <bnoordhuis>regarding dgram.js, it's bug-for-bug compatible with v0.4, for better or worse
13:59:10  <bnoordhuis>probably worse
13:59:14  <piscisaureus_>hahaha
13:59:22  <piscisaureus_>it emits "listening"
13:59:29  <piscisaureus_>and does that *synchronously* :-(
13:59:37  <bnoordhuis>yeah, i know
13:59:45  <bnoordhuis>i can live with changing that
13:59:50  <piscisaureus_>we should yes
13:59:53  <piscisaureus_>in 0.10
14:00:21  <piscisaureus_>net.js has support for cluster-listening to a pre-specified fd
14:00:22  <piscisaureus_>...
14:00:51  <bnoordhuis>yes. i don't know why that was added, actually
14:00:56  <piscisaureus_>but it doesn't always seem to create a proper connectionKey so I think if you would try to do that twice it would fail
14:01:30  <piscisaureus_>twice -> two different fds
14:17:06  * TheJHquit (Ping timeout: 245 seconds)
14:17:54  * qmx|awaychanged nick to qmx
14:20:56  * Raltjoined
14:23:07  <qmx>I'm playing with libuv here, trying to do a more sophisticated version of ryah's webserver gist - do you people have a RTFM wrt allocation patterns with libuv? I'm kinda lost on how can I pump the data I'm getting from an iterator (another lib)
14:25:45  * stagasjoined
14:28:14  <tjfontaine>hey I tried to get dgram listening to be async before, and got rebuffed :)
14:28:30  <bnoordhuis>tjfontaine: by me? i am/was open to the idea
14:28:42  <bnoordhuis>provided it really fixes something, of course
14:28:45  <tjfontaine>I think we just weren't thrilled with how I did it :)
14:29:00  <tjfontaine>this was the close before bind issue I think is where I made the change
14:30:00  * stagas_joined
14:32:12  * stagasquit (Ping timeout: 250 seconds)
14:32:23  * stagas_changed nick to stagas
14:37:12  * Raltquit (Remote host closed the connection)
14:37:32  <bnoordhuis>tjfontaine: my age is showing, i don't remember that issue
14:37:51  <bnoordhuis>age or korsakov's syndrome
14:38:08  <bnoordhuis>qmx: what do you mean by 'allocation patterns'?
14:38:12  <bnoordhuis>memory allocation
14:38:16  <bnoordhuis>or something else?
14:38:58  <qmx>bnoordhuis: yup - when to alloc memory
14:39:42  * TheJHjoined
14:39:47  <bnoordhuis>qmx: that's easy. you give libuv a on_alloc callback and it'll call that when it needs memory
14:40:07  <bnoordhuis>qmx: realistically, that happens whenever libuv needs to read incoming network data
14:41:29  <piscisaureus_>the on_alloc callback is only there for reading data. Just make sure that uv_write buffers remain valid until you get the callback
14:42:03  <piscisaureus_>brb
14:42:05  <qmx>bnoordhuis: now it makes sense
14:42:06  <qmx>piscisaureus_: yeah, I'm getting lost on uv_write semantics
14:42:31  <piscisaureus_>brb
14:42:34  <qmx>kk
14:42:52  <bnoordhuis>^ he needs to find a working power socket
14:43:30  <bnoordhuis>qmx: re on_alloc, libuv always asks for a 64k buffer but in reality it will use maybe 1-2k of that 64k
14:43:42  <qmx>my lame example to try to get something done with libuv is to do a gitweb clone using libuv and libgit2
14:43:48  * Raltjoined
14:44:16  <qmx>allocating 64k helps with alignment, right?
14:44:28  * qmxis spoiled by GC'd languages
14:44:47  <bnoordhuis>qmx: well, it's the largest chunk of network data you can expect to read in one go
14:45:01  <bnoordhuis>qmx: but only if it's data sent over a loopback device, i.e. localhost traffic
14:45:02  <qmx>oh, that's true
14:45:47  <bnoordhuis>if your application is reading network data (real, external network data), you can return a 2-4k buffer instead
14:45:57  * c4milojoined
14:46:08  <bnoordhuis>alternatively, you can use a slab allocator like node.js does
14:46:54  <bnoordhuis>the slab allocator slices off a 64k chunk, libuv reads the incoming data, then the slab allocator downsizes the chunk
14:46:57  * piscisaureus_quit (Ping timeout: 256 seconds)
14:46:58  <qmx>nah, I'm just calling libgit2 and getting an iterator back - now I'm lost on how to write the chunks I'm getting from that iterator to the response
14:47:28  <bnoordhuis>ah, like that
14:47:35  <bnoordhuis>just call uv_write() with the chunk
14:47:47  <bnoordhuis>just make sure the chunk isn't freed until write_cb is called
14:47:50  <qmx>so there will be several uv_write() calls?
14:47:54  <bnoordhuis>yep
14:48:21  <qmx>the buf[] signature gave me the impression I was supposed to pre-fit the contents on memory
14:48:31  <qmx>and just spit it all at once
14:48:42  <bnoordhuis>not at all. buf[] is an optimization, nothing more
14:49:08  <bnoordhuis>if you pass multiple buffers to uv_write(), it'll use writev() instead of plain write(), that's all
14:49:59  <bnoordhuis>it's convenient if you're doing scatter/gather i/o. if you do, great. else, don't worry about it
14:49:59  <qmx>about making sure about the chunk not being freed, any tips?
14:50:12  <qmx>now it totally makes sense ;)
14:50:49  <qmx>while we're at this, it's been a blast playing with libuv - kudos
14:50:54  <bnoordhuis>thanks :)
14:51:16  <bnoordhuis>re freeing chunks, i don't know libgit2's internals well enough to comment on that
14:51:27  <bnoordhuis>though i did submit some patches years ago
14:51:28  <qmx>nah, it's giving me strings
14:51:40  <qmx>I can strdup if needed
14:51:46  <bnoordhuis>right, that will certainly work
14:51:59  <qmx>my question is where should I free them?
14:52:05  <qmx>provide my own write_cb?
14:52:08  <bnoordhuis>yes
14:52:44  <qmx>k
14:52:51  * indexzerojoined
14:59:52  <indutny>ho
15:00:09  <indutny>bnoordhuis: wanna look at WIP dtrace ustack helper for x64?
15:00:25  <bnoordhuis>indutny: what platform?
15:00:33  <indutny>bnoordhuis: smartos
15:00:33  <bnoordhuis>if it's os x or sunos, no thanks :)
15:00:37  <indutny>haha
15:00:43  <indutny>well, ustack helper doesn't work anywhere else
15:00:48  <indutny>unfortunatelly
15:00:52  <indutny>anyway
15:00:53  <indutny>just FYI
15:00:54  <indutny>https://github.com/indutny/node/compare/feature-dtrace-64
15:00:59  * indutnyreturns to watching Fifth Element
15:01:02  <indutny>brb
15:01:19  <bnoordhuis>milla javovich is pretty hot in the fifth element
15:01:33  * bnoordhuishas got a soft spot for redheads
15:02:01  <qmx>it's always redheads ;)
15:02:55  <qmx>my_write_cb(uv_write_t *req, …) -> I'm not sure how to access the *resbuf from here
15:03:36  <bnoordhuis>qmx: you can stuff it in req->data or embed the uv_write_t in another struct
15:03:44  <bnoordhuis>look at how libuv uses container_of
15:07:28  * indexzeroquit (Quit: indexzero)
15:11:08  <tjfontaine>bnoordhuis: it's also possible I'm misremembering what all I changed when addressing the issue https://github.com/joyent/node/pull/3655
15:11:59  * bradleymeckjoined
15:22:24  * piscisaureus_joined
15:22:36  <piscisaureus_>fuck seriously why does node work at all :-/
15:23:08  <tjfontaine>a lick and a promise
15:27:08  <piscisaureus_>cluster also doesn't forward errors
15:28:53  <mmalecki>piscisaureus_: javascript basically
15:29:20  * bradleymeck_joined
15:29:32  * indutnydone
15:29:57  <bnoordhuis>indutny: was the universe saved?
15:31:43  * bradleymeckquit (Ping timeout: 256 seconds)
15:31:44  * bradleymeck_changed nick to bradleymeck
15:31:55  <indutny>bnoordhuis: I'm afraid it was
15:32:12  * ericktjoined
15:32:24  <bnoordhuis>indutny: good thing. he-man took the day day off
15:32:34  <bnoordhuis>hm, i stutter
15:33:03  <indutny>it's never the right time to install update
15:33:09  <indutny>bnoordhuis: patch yourself
15:34:00  <bnoordhuis>that sounds so dirty when you put it like that
15:34:42  <indutny>bnoordhuis: are you going to thaijs?
15:34:45  <bnoordhuis>indutny: re openssl graceful shutdown, how should i invoke ab again?
15:34:51  <bnoordhuis>indutny: no
15:34:57  <indutny>bnoordhuis: -v 3, or -v 999
15:35:02  <mmalecki>bnoordhuis: you should
15:35:11  <mmalecki>it's going to be super fun
15:35:16  <indutny>yeah
15:35:17  <indutny>ladyguys
15:35:23  <mmalecki>indutny: you going?
15:35:23  <indutny>and massage
15:35:29  <bnoordhuis>fedor's got his priorities straight
15:35:33  <indutny>mmalecki: not in my plan
15:35:34  <bnoordhuis>well, maybe not 'straight'
15:35:49  <mmalecki>lol
15:36:08  <indutny>bnoordhuis: I'm not interested, sorry
15:36:18  * loladirojoined
15:36:27  * bradleymeckquit (Read error: Connection reset by peer)
15:36:46  * bradleymeckjoined
15:36:58  <piscisaureus_>indutny: are you going to thaijs?
15:37:09  <bnoordhuis>i was going to make a bad joke like 'funny, that's what your wife said at first too'
15:37:15  <bnoordhuis>but i'll refrain from doing that
15:37:38  <piscisaureus_>beautiful praeteritio bnoordhuis
15:37:57  <mmalecki>I'd probably make a 'surprise sex' joke if bnoordhuis made that joke
15:39:53  * tristrampart ("WeeChat 0.3.7")
15:40:34  <bnoordhuis>mmalecki: at my age, there's no such thing as 'surprise sex' anymore. you schedule it three weeks in advance
15:41:36  <mmalecki>bnoordhuis: there is, it's called rape
15:41:37  <qmx>true story bro
15:41:39  <piscisaureus_>bnoordhuis: it's never a surprise when you had to pay for it first
15:41:43  <mmalecki>(I'm going to hell for this)
15:41:46  <qmx>lol
15:41:55  <bnoordhuis>^ the voice of experience speaking
15:42:03  <bnoordhuis>test/test-platform-output.c:43:3: warning: ISO C90 does not support the ‘ll’ gnu_printf length modifier [-Wformat] <- sad face :(
15:42:06  <piscisaureus_>bnoordhuis: I will never be your age fortunately
15:42:50  <bnoordhuis>piscisaureus_: like everything else, you eventually catch up
15:43:08  <bnoordhuis>eventually
15:43:31  <piscisaureus_>#libuv us slowly devolving into an R-rated channel
15:44:55  <bnoordhuis>indeed. let's get back to work
15:45:08  <bnoordhuis>mmalecki: did you test out the remove-idle-gc patch?
15:45:43  * TheJHquit (Ping timeout: 265 seconds)
15:53:28  <bnoordhuis>call in 8?
15:53:44  <mmalecki>bnoordhuis: damn, totally forgot about it. can do today, on two or 3 VMs
15:53:49  <isaacs>any interest in doing a call today?
15:53:50  <mmalecki>(LBs)
15:53:51  <isaacs>bnoordhuis: i'm down
15:53:56  <bnoordhuis>isaacs: me too
15:54:03  <bnoordhuis>mmalecki: sweet
15:54:16  <bnoordhuis>no rush, i'm just curious how it works out in the real world
15:54:23  <indutny>piscisaureus_: nope, are you?
15:54:28  <piscisaureus_>indutny: yes
15:54:49  <isaacs>i'm going to be a little bit late
15:54:54  <isaacs>5 minutes or so
15:55:07  <bnoordhuis>last one in buys the beers
15:55:11  <isaacs>there was hardly any water in the kettle, so it boiled really fast, but uselessly
15:55:20  <isaacs>you don't want a call with me and no caffeine
15:56:00  <indutny>isaacs: I'm still under effect of doomsday
15:56:12  <indutny>isaacs: going to be available next week
15:56:16  <isaacs>indutny: oh, did that happen in russia?
15:56:21  <indutny>I think yes
15:56:26  <indutny>it's pretty cold and dark here now
15:56:31  <mmalecki>I managed to lower my caffeine intake to 0 mg recently, except some coffee
15:56:33  <isaacs>next week i'll be lazing about on a tropical beach
15:56:42  <indutny>isaacs: glad for you?
15:56:42  <mmalecki>down from drinking 8 redbulls a day
15:56:43  <indutny>hawaii?
15:56:51  <isaacs>indutny: cancun, mexico
15:56:57  <indutny>isaacs: oooh, mexico
15:57:09  <isaacs>like hawaii but they speak spanish, and it's cheaper, and the water is less lethal
15:57:11  <indutny>cool
15:57:27  <isaacs>and there's pyramids
15:57:29  <mmalecki>isaacs: going to ThaiJS?
15:57:31  <indutny>and hash is better
15:57:36  <isaacs>where they used to cut people up to keep the sun coming up
15:57:49  <isaacs>mmalecki: no, i'm skipping that one, sadly
15:57:54  <mmalecki>isaacs: I've heard they still do the cut people part
15:58:13  <isaacs>mmalecki: but now it's just when reporters or politicians cross the drug cartels
15:58:15  <bnoordhuis>the sun is important
15:58:33  <mmalecki>isaacs: sounds safe.
15:58:35  <isaacs>it's not a solar power thing
15:58:52  <isaacs>and mostly that's northern mexico
15:58:56  <indutny>isaacs: have you thought about staying it Iran?
15:58:56  <isaacs>the US is a terrible influence
15:59:00  <indutny>it's pretty warm here too
15:59:05  <isaacs>indutny: you're in iran?
15:59:12  <indutny>isaacs: no, I'm in Moscow
15:59:18  <isaacs>oh, ok, you said "here"
15:59:23  <mmalecki>my tropical vaction is in few months, in Seychelles
15:59:25  <mmalecki>can't wait.
15:59:25  <indutny>ah
15:59:31  <indutny>mmalecki: long flight
15:59:42  <indutny>mmalecki: nice beaches
15:59:46  <isaacs>indutny: yeah, i'm afraid of the middle east
15:59:54  <indutny>isaacs: np :)
15:59:58  <mmalecki>indutny: Qatar Airlines, I'm not afraid about it, somehow :)
16:00:00  <indutny>isaacs: they've good carpets though
16:00:00  <isaacs>indutny: they're very conservative there
16:00:07  <indutny>mmalecki: you better choose Emirates
16:00:11  <indutny>mmalecki: I really recommend it
16:00:39  <mmalecki>hmm, I think there's an option to fly Emirates actually. I'd have to fly from Frankfurt
16:00:56  <indutny>mmalecki: choose Emirates
16:01:10  <mmalecki>then me and AvianFlu are buying a boat and sailing to India
16:01:11  <indutny>mmalecki: I flew with Qatar, and Emirates are much better
16:01:24  <indutny>mmalecki: say hi to Marak :)
16:01:31  <indutny>mmalecki: though, he's probably far from you
16:01:35  * indutnyopens map
16:01:39  * bradleymeckquit (Quit: bradleymeck)
16:01:48  <mmalecki>indutny: well, that's the point
16:01:55  <mmalecki>Avian is scared of pirates tho
16:02:13  <mmalecki>Seychelles -> India route appears to go straight through their teritories
16:02:22  <mmalecki>might need a gun or two.
16:02:33  <indutny>mmalecki: guns... meh
16:02:37  <indutny>mmalecki: better take some vodka with you
16:02:49  <mmalecki>you think that'll do it?
16:03:17  <qmx>indutny: I miss moscow and all that cold weather
16:04:27  <indutny>mmalecki: yes, just share and enjoy
16:04:34  <indutny>qmx: whoa, you been here?
16:04:50  <qmx>indutny: yup, speaking at toster.ru (ruby)
16:05:01  <indutny>ah, they've invited me to speak too
16:05:29  <indutny>not on ruby conference though
16:05:42  <qmx>if I forget jsconf, the even was really nice
16:05:48  <qmx>event*
16:05:52  <indutny>hehe
16:05:54  <qmx>overall
16:06:02  <indutny>I suppose it was
16:06:03  <qmx>that's the shit with jsconf, it blows all the other events
16:06:10  <indutny>it's the only one event with english-only speakers in russia
16:06:19  <qmx>oh I didn't knew this
16:06:21  <qmx>nice
16:06:42  <indutny>qmx: yeah, though nodeconf and jsconf are much better
16:06:45  <isaacs>ok, skype
16:06:47  <indutny>haven't been on jsconf
16:06:53  <indutny>but nodeconf was really cool
16:07:12  <qmx>indutny: that's what I'm talking about, you need to ignore jsconf family events while evaluating other events
16:07:25  <qmx>otherwise they will get really low notes (undeserved)
16:07:41  <indutny>I still think that developer community in russia is pretty lame
16:07:42  <bnoordhuis>isaacs: can't hear me?
16:07:46  <isaacs>bnoordhuis: nope
16:07:49  <indutny>they ain't doing much meetings
16:07:55  <isaacs>piscisaureus_: call?
16:07:57  <indutny>and discussing mostly odd topics
16:08:06  <indutny>like how to make php+mysql scale
16:08:16  <mmalecki>indutny: Russia is a state of mind
16:08:17  <qmx>indutny: yeah, the digital october guys gave us a nice overview of moscow tech scene
16:08:18  * piscisaureus_quit (Read error: Connection reset by peer)
16:08:34  <indutny>mmalecki: have you played that game?
16:08:37  <indutny>mmalecki: "Dementia"
16:08:46  * piscisaureus_joined
16:08:49  <indutny>my favourite one from 90's
16:09:07  <isaacs>hmmm
16:09:07  <bnoordhuis>isaacs: one sec, i probably need to reboot to get my line-in to come up again
16:09:18  <indutny>http://www.adventurepoint.co.uk/#/dementia/4525583627
16:10:15  <mmalecki>indutny: I haven't. should I?
16:10:22  <indutny>dunno
16:10:26  <indutny>I enjoyed it
16:10:26  <bnoordhuis>man, i forgot how slow my laptop is
16:10:29  <indutny>at that time
16:10:32  <indutny>:)
16:10:50  <mmalecki>"Windows 95"
16:10:59  <mmalecki>wondering if it'll work on 7
16:11:17  <bnoordhuis>isaacs: retry?
16:11:27  <isaacs>sure
16:11:43  <isaacs>now we lost bert
16:12:41  * stagasquit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner])
16:12:48  <bnoordhuis>piscisaureus_: bertje, schiet es op
16:13:12  <mmalecki>http://www.youtube.com/watch?v=oO8arwpH2q8 - found this. this game could be interesting if it had better graphics.
16:13:32  <indutny>mmalecki: you should account it's release date
16:13:43  <indutny>mmalecki: err
16:13:46  <indutny>that's another game
16:13:49  * piscisaureus_quit (Ping timeout: 252 seconds)
16:13:50  <mmalecki>at any rate, back to work. need to earn cash to pay ransom for myself
16:13:57  <mmalecki>indutny: yeah, I know
16:14:10  <indutny>ah
16:14:11  <indutny>I see now
16:14:13  <indutny>your message
16:14:14  <indutny>ok
16:14:16  <indutny>time to work for me too
16:15:48  <bnoordhuis>indutny: shouldn't you be at the call?
16:15:57  <indutny>bnoordhuis: doomsday, sorry
16:16:12  <indutny>isaacs: bnoordhuis: my status update is short
16:16:23  <indutny>isaacs: bnoordhuis: working on dtrace ustack helper support for x64
16:16:30  <indutny>isaacs: bnoordhuis: and it's almost working
16:18:35  <indutny>hooray
16:18:38  <indutny>it's working :)
16:18:43  <indutny>only one frame isn't parsed
16:19:00  <isaacs>indutny: i've seen that a few times, as well
16:19:11  <indutny>isaacs: in 32bit version?
16:19:15  <isaacs>indutny: yeah
16:19:24  <indutny>isaacs: wanna try x64 bit?
16:19:24  <isaacs>you know how sockets to timers.enroll(this)?
16:19:40  <isaacs>indutny: i see a date.now() call in net.js, which is actually a date.now() call in timers.js
16:19:53  <isaacs>it misses the timers.enroll() frame
16:19:57  <isaacs>haven't dug into it
16:19:58  <indutny>hm...
16:20:03  <indutny>I may look into it
16:20:13  <indutny>though it's not really that important to me right now
16:20:29  <indutny>isaacs: can you please try applying this stuff and testing on some smartos machine: https://github.com/indutny/node/compare/feature-dtrace-64
16:24:12  <indutny>mmalecki: and you too, if you have time
16:24:22  <indutny>mmalecki: there're two things to check
16:24:24  <indutny>mmalecki: it builds
16:24:37  <indutny>mmalecki: and there're correct stack traces when doing jstack()
16:24:59  <mmalecki>will do. we have plenty of those smartos vms :)
16:25:07  <mmalecki>indutny: I owe you a beer
16:25:19  <indutny>I know... I know...
16:25:24  <indutny>first lets check it's working
16:25:33  <indutny>so lets count
16:25:42  <indutny>one beer from Nathan for something...
16:25:46  <indutny>and one from Maciej...
16:25:55  <indutny>who else owes me a beer here? :)
16:29:17  <bnoordhuis>indutny: how many beers do you owe me by now?
16:29:25  <indutny>bnoordhuis: 0?
16:29:29  <indutny>:)
16:29:30  <indutny>haha
16:29:35  <indutny>just kidding
16:29:38  <indutny>I owe you a couple
16:29:46  <indutny>you helped me a lot with many things
16:29:48  <tjfontaine>I'm sure bnoordhuis has reviewed enough of your pullreqs to warrant a couple cases :P
16:30:02  <indutny>reading my shit-code definitely counts
16:30:48  <indutny>the only thing I'm really unsure about is this line : https://github.com/indutny/node/compare/feature-dtrace-64#L3R22
16:31:11  <indutny>oh, it's definitely incorrect
16:31:12  <indutny>shit
16:31:26  <tjfontaine>the rest of the whitespace changes in that commit distract me :)
16:31:40  <indutny>well
16:31:41  <indutny>it's required
16:31:44  <indutny>tab vs spaces
16:34:07  <mmalecki>indutny: could've done a separate commit
16:34:15  <tjfontaine>i concur
16:34:53  <mmalecki>but yeah, lookin' good
16:36:37  * felixgejoined
16:36:52  * bradleymeckjoined
16:37:32  <bnoordhuis>you know, i think github really ate my gists
16:38:12  <bnoordhuis>ah no, it's just not being listed anywhere...
16:38:14  <bnoordhuis>isaacs: https://gist.github.com/0b07785a3562de5ff6bb
16:38:36  <bnoordhuis>not being listed because i apparently wasn't signed in...
16:39:00  * indexzerojoined
16:39:12  <bnoordhuis>isaacs: right, so the good thing is that the c/c++ side of things seems to have improved
16:39:42  <bnoordhuis>but socket.ondata has become rather more expensive
16:40:24  <isaacs>oh, nice, i haven't been using the v8.log tick stuf
16:40:29  <isaacs>just been doing dtrace flamegraphs
16:41:16  <isaacs>this is a somewhat different view, though
16:41:37  <isaacs>bnoordhuis: i like the `sudo gem install gist` utility
16:41:56  <isaacs>bnoordhuis: there's a few in npm as well, but i haven't found them to be as complete
16:41:58  <bnoordhuis>isaacs: yeah, i have it installed but i didn't use it for this
16:42:42  <isaacs>it's nice to pipe things to
16:43:00  <isaacs>and on a mac at least, it shoves the git url into your paste buffer
16:43:08  <isaacs>so you can cmd-V it into irc
16:44:13  <isaacs>bnoordhuis: so... part of this is actually what i was saying as well: when streams2 switch into streams1 mode unnecessarily, it's a bit slow.
16:44:34  <isaacs>bnoordhuis: and http is doing that with every socket
16:44:46  <bnoordhuis>isaacs: how does one make it stop doing that?
16:44:59  <isaacs>well, i need to rework the socket/parser interaction so that it's using the new api
16:45:18  <isaacs>what i did instead was just use the code as-is, and switch the socket into old mode so that it would Just Work
16:45:26  <isaacs>because i wanted to get a 0.9 out the door and get people using it asap
16:45:35  <isaacs>trade-offs
16:46:18  * bradleymeckquit (Quit: bradleymeck)
16:47:13  <isaacs>bnoordhuis: also, when did you run this? the line numbers in http.js dont' quite match up.
16:47:23  <bnoordhuis>isaacs: this weekend
16:47:24  <isaacs>bnoordhuis: i'm sure it probably hasn't changed significantly, but i'll run it again to be sure.
16:47:27  <isaacs>oh, ok
16:47:40  <isaacs>oh, right, i landed a patch from shigeki, then another from me to fix what it broke.
16:47:46  <isaacs>(tests passed, but benchmarks didn't)
16:48:58  <qmx>bnoordhuis: can I use ngx_queue_t? from what I read it's private to libuv...
16:49:09  <mmalecki>I'm wondering what'd happen if we moved socket <-> parser integration to C land
16:49:12  <bnoordhuis>qmx: it's private. you can copy the header file though
16:49:36  <bnoordhuis>qmx: there's also sys/queue.h on most posix platforms but it's not as convenient as ngx-queue.h
16:49:54  <mmalecki>it might speed things up, but that needs uv's pipes to work with node streams
16:51:42  <MI6>joyent/libuv: bnoordhuis created branch cleanup-gyp-build - http://git.io/WBsKgA
16:52:08  <bnoordhuis>indutny, piscisaureus_: ^ review? testing on windows and os x might not hurt
16:52:26  <qmx>bnoordhuis: do you know what license governs it? there's only copyright to igor
16:52:36  <bnoordhuis>qmx: same license as nginx
16:52:37  * qmxis googling
16:53:07  <bnoordhuis>qmx: bsd, in case you're wondering
16:53:34  * travis-cijoined
16:53:35  <travis-ci>[travis-ci] joyent/libuv#981 (cleanup-gyp-build - afc993c : Ben Noordhuis): The build passed.
16:53:35  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/3ac89ffbdabb^...afc993c816cd
16:53:35  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/3842939
16:53:35  * travis-cipart
16:54:06  <bnoordhuis>okay, off to dinner
16:56:20  <indutny>bnoordhuis: ../../src/unix/fs.c:723: warning: incompatible implicit declaration of built-in function ‘strdup’
16:56:46  <mmalecki>that's string.h I think
16:57:32  <indutny>that's not the only thing
16:57:38  <indutny>there're a lot of other headers missing
16:57:39  <indutny>hm...
16:58:09  <mmalecki>include path mangled somehow?
17:04:48  <indutny>ttyl
17:04:55  * TheJHjoined
17:05:43  * indexzeroquit (Quit: indexzero)
17:07:35  <isaacs>bnoordhuis: replacing all the "in" operators with "dest[field] === undefined" is a pretty significant improvement, it looks like
17:08:07  <isaacs>indutny: any idea why test-debugger-client is halting a lot again?
17:11:05  <mmalecki>isaacs: .hasOwnProperty was faster in some cases too
17:11:33  <mmalecki>no, wait, I got it backwards
17:11:36  <mmalecki>ignore me
17:12:00  <isaacs>mmalecki: it can be, but only if you have a proto chain, and it changes semantics
17:14:13  * AvianFlujoined
17:16:25  <isaacs>mmalecki: though... maybe we ought to be using Object.create(null) instead of {}
17:19:16  <isaacs>hahahhahah!!!
17:19:22  <isaacs>we have this fancy "dateCache" thing in http.js, right
17:19:31  <isaacs>but it calls setTimeout, which calls date.now anyway
17:19:46  <isaacs>i guess it
17:20:03  <isaacs>i guess it's still only calling it 1ce/second that way... but it's calling it 2 times instead of one
17:20:35  <isaacs>and we do timers.enroll(this) on sockets like its going out of style (for every read, write, and end) which also calls date.now
17:21:58  * philips_quit (Excess Flood)
17:24:51  * philips_joined
17:25:21  <mmalecki>isaacs: yeah, when we were getting hammered we noticed lots of syscalls to time
17:26:21  <mmalecki>AvianFlu probably remembers more, I was pretty drunk
17:27:09  <AvianFlu>mmalecki: it didn't have much effect on the overall load though
17:27:29  <AvianFlu>that particular day it was spending 46% of its time in openssl, remember?
17:27:39  <mmalecki>I do remember that day too well
17:28:10  <mmalecki>...as much as the booze let me remember
17:31:32  <AvianFlu>lol weren't you in italy drinking jack daniels when that happened?
17:32:19  <mmalecki>I was
17:33:32  <isaacs>mmalecki: yeah, i am noticing a lot of syscalls to gettimeofday
17:34:03  <mmalecki>yeah, that was the function XD
17:35:09  * bradleymeckjoined
17:44:37  * sblomjoined
17:45:23  <sblom>What does the uv mean in libuv?
17:46:19  * indexzerojoined
17:47:05  <isaacs>sblom: check the /topic
17:48:37  <isaacs>bnoordhuis: got any time to take a look at https://github.com/joyent/node/pull/4468?
17:48:48  <isaacs>bnoordhuis: (another look, that is, since i found some problems and fixed them)
17:51:55  <sblom>isaacs: Is that for real? The topic is actually what made me wonder. That sounds like a humorous backronym and not the actual etymology. I also poked around on the github site and in Nikhil's book.
17:52:42  * Raltquit (Remote host closed the connection)
17:53:14  <isaacs>sblom: the original name for it was liboio
17:53:24  <isaacs>sblom: but that was deemed to be 33% too long of a name
17:53:35  <isaacs>and libio and liboi were both already taken
17:53:49  <sblom>heh
17:54:00  <isaacs>sblom: if you ask ryah, he'll say, "You'll have to ask bert about that."
17:54:11  <isaacs>sblom: if you ask bert, he'll say, "You'll have to ask ryan about that"
17:55:03  * mikealquit (Quit: Leaving.)
17:55:26  <isaacs>sblom: i think of it as "unix for vindows"
17:56:44  <sblom>It also makes me think of that feels-like-its-based-on-a-graphic-novel movie, Ultraviolet.
17:57:25  <sblom>At any rate, sounds like the world will never know. :-/
17:58:54  * Raltjoined
17:59:44  * Raltquit (Read error: Connection reset by peer)
17:59:57  <qmx>unix for vindows sounds cool
18:00:11  * Raltjoined
18:02:56  <isaacs>sblom: i also think of it as the beef library
18:03:27  <isaacs>sblom: ever since i heard someone pronounce it as "le boeuf"
18:04:36  * loladiroquit (Quit: loladiro)
18:04:52  * piscisaureus_joined
18:17:21  * joshthecoderjoined
18:18:07  * c4miloquit (Remote host closed the connection)
18:22:40  * mikealjoined
18:28:54  * indexzerochanged nick to indexzero[brb]
18:28:59  * indexzero[brb]quit (Quit: indexzero[brb])
18:30:49  <isaacs>hmmm... something's very wrong with our timer linkedlist usage, i think
18:30:58  <isaacs>bnoordhuis: ping ^
18:32:42  <tjfontaine>in what regard?
18:33:15  * bradleymeckquit (Quit: bradleymeck)
18:33:19  * piscisaureus_quit (Ping timeout: 244 seconds)
18:33:19  <isaacs>tjfontaine: oh, no, iwait, i think my test might be a little wrong..
18:33:27  <tjfontaine>k
18:33:51  * indexzerojoined
18:35:53  <isaacs>so, our actual timeout grows and grows, until you're around 100ms off
18:36:09  <isaacs>but it doens't actually get *smaller* when using lots of idfferent timer values, so that's good.
18:36:13  <isaacs>bnoordhuis: false alarm
18:36:32  <isaacs>just trying to see if i can reduce the number of calls to gettimeofday
18:36:38  <isaacs>it's quite costly, actually
18:37:14  <tjfontaine>that guy who did a thousand timers.js pull reqs had something similar
18:37:28  <tjfontaine>to reduce date.now's
18:38:17  <tjfontaine>https://github.com/joyent/node/pull/4193
18:39:09  * davispquit (Excess Flood)
18:41:59  * c4milojoined
18:44:30  * davisp-joined
18:44:30  * davisp-quit (Excess Flood)
18:45:14  <isaacs>in http_simple, i'm seeing a difference between ~7000q/s and ~7700
18:45:22  <isaacs>around a 10% bump
18:45:38  <isaacs>just by not doing socket.setTimeout(2minutes) in http.js
18:46:03  * indexzeroquit (Quit: indexzero)
18:50:15  * Raltquit (Remote host closed the connection)
19:01:00  * davisp-joined
19:01:01  * davisp-quit (Excess Flood)
19:02:01  * davisp-joined
19:02:01  * davisp-quit (Excess Flood)
19:02:30  * davisp-joined
19:02:31  * davisp-quit (Excess Flood)
19:04:30  * davisp-joined
19:04:31  * davisp-quit (Excess Flood)
19:07:31  * davisp-joined
19:07:31  * davisp-quit (Excess Flood)
19:08:30  * davisp-joined
19:08:30  * davisp-quit (Excess Flood)
19:10:30  * davisp-joined
19:10:30  * davisp-quit (Excess Flood)
19:11:30  * davisp-joined
19:11:30  * davisp-quit (Excess Flood)
19:12:28  <isaacs>waaaaauuu... just moved the switch statement in Socket._write into a separate function, and got a huge speed increase.
19:12:30  * davisp-joined
19:12:31  * davisp-quit (Excess Flood)
19:12:31  <isaacs>V8 does love small functions
19:13:00  * davisp-joined
19:13:01  * davisp-quit (Excess Flood)
19:14:00  * davisp-joined
19:14:00  * davisp-quit (Excess Flood)
19:15:03  * davisp-joined
19:15:09  * davisp-part
19:15:32  * indexzerojoined
19:17:35  * qmxchanged nick to qmx|away
19:26:36  * piscisaureus_joined
19:29:16  * qmx|awaychanged nick to qmx
19:37:05  * bradleymeckjoined
19:41:21  * indexzeroquit (Quit: indexzero)
19:44:22  * indexzerojoined
19:52:51  * wolfeidaujoined
20:10:05  * bradleymeckquit (Quit: bradleymeck)
20:12:18  * loladirojoined
20:15:54  * stephankquit (Ping timeout: 240 seconds)
20:16:43  * Raltjoined
20:22:29  <isaacs>hmm.... 10% bump is fading. benchmarks are hard.
20:22:38  <isaacs>these micro optimizations are truly micro. like 2$.
20:22:40  <isaacs>2%
20:29:09  * indexzeroquit (Quit: indexzero)
20:33:27  * stephankjoined
20:35:25  * indexzerojoined
20:44:55  * ericktquit (Quit: erickt)
20:45:50  * indexzeroquit (Quit: indexzero)
20:52:29  * indexzerojoined
20:53:45  * indexzeroquit (Client Quit)
21:04:22  <isaacs>alright, within 10% now. https://docs.google.com/spreadsheet/ccc?key=0AganzoeqkiHddE9uRlA5WS0xSF9NTGN1QS0zZ3FRSWc#gid=1
21:04:31  * qmxchanged nick to qmx|away
21:07:26  * pooyajoined
21:38:27  * indexzerojoined
22:06:37  * wolfeidauquit (Remote host closed the connection)
22:12:03  * indexzeroquit (Quit: indexzero)
22:12:36  * rendarquit
22:21:13  * loladiroquit (Quit: loladiro)
22:24:29  * wolfeidaujoined
22:28:41  * bradleymeckjoined
22:33:35  * AvianFlu_joined
22:33:43  * AvianFluquit (Ping timeout: 260 seconds)
22:33:47  * AvianFlu_changed nick to AvianFlu
22:40:02  * c4miloquit (Remote host closed the connection)
22:57:07  * Raltquit (Remote host closed the connection)
22:59:58  * Raltjoined
23:09:24  <MI6>joyent/node: Ryunosuke SATO master * 8936868 : http: remove unused variable The module variable `END_OF_FILE` was no lo - http://git.io/yWPL_w
23:52:31  * TheJHquit (Ping timeout: 252 seconds)
23:53:05  * Raltquit (Remote host closed the connection)
23:58:08  * Raltjoined