00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:05  <isaacs>bnoordhuis: i though we were upgrading libuv to specific versinos now
00:00:08  * ircretaryjoined
00:00:28  <bnoordhuis>isaacs: i was going to ask about that
00:00:53  <bnoordhuis>if i fix something in libuv, should i hold off landing it in node until the next release?
00:01:00  <isaacs>hm.
00:01:05  <isaacs>yeah, you know, i'm kind of torn there.
00:01:47  * brsonquit (Ping timeout: 246 seconds)
00:05:33  * luxigoquit (Ping timeout: 240 seconds)
00:06:44  * kazuponjoined
00:09:34  * mikealjoined
00:09:48  * mikealquit (Client Quit)
00:10:04  <isaacs>bnoordhuis: on the one hand, it's kind of nice that npm and v8 etc all have a very predictable thing you can point at, and say "that's the version we're using"
00:10:14  <isaacs>and now that libuv has those, it kind of seems reaosnable to do the same thing
00:10:32  <isaacs>of course, i usually just cut an npm build right before building node, so it's rather arbitrary
00:13:34  * AvianFluquit (Remote host closed the connection)
00:14:34  * luxigojoined
00:15:53  <TooTallNate>bnoordhuis: if it's not a huge pain it's probably more *proper* to do a quick release each time
00:16:03  <TooTallNate>if we wanna strictly follow semver and all that jazz
00:16:13  * paddybyersquit (Ping timeout: 240 seconds)
00:16:49  <bnoordhuis>TooTallNate: well, i don't really care either way
00:16:57  <bnoordhuis>i imagine it's inconvenient for users though
00:17:07  <bnoordhuis>now you can tell them "upgrade to HEAD, it's fixed there"
00:18:56  * luxigoquit (Ping timeout: 246 seconds)
00:21:04  * bradleymeckjoined
00:21:35  * trevnorrisquit (Quit: Leaving)
00:21:41  * mikealjoined
00:33:01  * dapquit (Quit: Leaving.)
00:43:22  * kazuponquit (Remote host closed the connection)
00:52:05  * mikealquit (Quit: Leaving.)
01:03:51  * qmx|awaychanged nick to qmx
01:35:37  * wavded__quit
01:46:30  * abraxas_joined
01:51:23  * loladiroquit (Quit: loladiro)
01:56:06  * bradleymeckquit (Quit: bradleymeck)
01:58:36  * dominictarrjoined
02:00:06  * sblomquit (Ping timeout: 240 seconds)
02:03:13  * bnoordhuisquit (Ping timeout: 240 seconds)
02:04:02  * TooTallNatequit (Quit: ["Textual IRC Client: www.textualapp.com"])
02:05:10  * loladirojoined
02:09:35  * bradleymeckjoined
02:12:40  * bradleymeckquit (Client Quit)
02:19:20  * hzquit
02:24:43  * AvianFlujoined
02:55:30  * kazuponjoined
03:03:29  * defunctzombiequit (Ping timeout: 255 seconds)
03:04:32  * defunctzombiejoined
03:09:57  * bnoordhuisjoined
03:14:35  * bnoordhuisquit (Ping timeout: 258 seconds)
03:15:41  * mikealjoined
03:17:23  * dominictarrquit (Quit: dominictarr)
03:20:15  * brson_quit (Quit: leaving)
03:23:21  * loladiroquit (Quit: loladiro)
03:23:56  * loladirojoined
03:25:48  * benoitcquit (Excess Flood)
03:33:55  * benoitcjoined
04:04:36  * creationixquit (Ping timeout: 256 seconds)
04:05:02  * creationixjoined
04:14:53  * TooTallNatejoined
04:20:13  * mmaleckichanged nick to mmalecki[zzz]
04:22:19  * brsonjoined
04:27:42  <tjfontaine>I wonder how I convinced it to do this
04:27:43  <tjfontaine>Error: ld.so.1: node: fatal: /home/jenkins/.jenkins/workspace/downstream-modules/DESTCPU/x64/label/smartos/test_modules/ffi/node_modules/ref/build/Release/binding.node: wrong ELF class: ELFCLASS32
04:30:39  * benoitcquit (Excess Flood)
04:31:26  * benoitcjoined
04:38:29  * TooTallNatequit (Quit: Computer has gone to sleep.)
04:46:37  * qmxchanged nick to qmx|away
05:29:19  * mikealquit (Quit: Leaving.)
05:31:02  * benoitcquit (Excess Flood)
05:40:28  * benoitcjoined
05:48:22  * mikealjoined
06:08:47  * wolfeidauquit (Remote host closed the connection)
06:15:07  * toothrotquit (Ping timeout: 260 seconds)
06:18:48  * brsonquit (Quit: leaving)
06:30:42  * defunctzombiechanged nick to defunctzombie_zz
06:30:57  * toothrjoined
06:31:23  * benoitcquit (Excess Flood)
06:32:06  * paddybyersjoined
06:34:28  * benoitcjoined
06:49:29  * brsonjoined
06:53:43  * brsonquit (Ping timeout: 246 seconds)
06:55:45  * brsonjoined
07:13:19  * benoitcquit (Excess Flood)
07:16:01  * brson_joined
07:16:36  * brsonquit (Ping timeout: 252 seconds)
07:18:27  * benoitcjoined
07:22:01  * kazupon_joined
07:24:32  * kazuponquit (Ping timeout: 246 seconds)
07:32:34  * brson_quit (Quit: leaving)
07:36:52  * `3rdEdenjoined
07:39:55  * dominictarrjoined
07:42:24  * rendarjoined
07:45:16  * dominictarrquit (Quit: dominictarr)
08:07:29  * csaohjoined
08:08:37  * loladiroquit (Quit: loladiro)
08:10:51  * csaohquit (Client Quit)
08:31:59  * csaohjoined
08:41:19  <indutny>morning
08:48:34  * kazupon_quit (Remote host closed the connection)
09:43:32  * mmalecki[zzz]changed nick to mmalecki
09:52:37  * karupanerurajoined
09:52:45  * mmaleckichanged nick to mmalecki[out]
09:53:15  * jez0990joined
10:01:11  * kazuponjoined
10:56:25  * Kakerajoined
11:04:06  * wolfeidaujoined
11:05:03  * `3rdEdenchanged nick to `3E|BRB
11:23:44  * qmx|awayquit (Ping timeout: 255 seconds)
11:23:45  * isaacsquit (Ping timeout: 255 seconds)
11:23:46  * ryahquit (Ping timeout: 255 seconds)
11:23:46  * joclekquit (Ping timeout: 260 seconds)
11:23:46  * chiltsquit (Ping timeout: 255 seconds)
11:23:47  * hij1nxquit (Ping timeout: 255 seconds)
11:23:47  * LOUDBOTquit (Ping timeout: 255 seconds)
11:23:48  * SomeoneWeirdquit (Ping timeout: 260 seconds)
11:23:48  * ryahjoined
11:23:50  * isaacs_joined
11:23:53  * hij1nxjoined
11:24:01  * isaacs_changed nick to Guest93631
11:24:21  * chiltsjoined
11:24:33  * jcejoined
11:24:35  * SomeoneWeirdjoined
11:24:55  * SomeoneWeirdchanged nick to Guest3815
11:26:14  * Guest3815quit (Changing host)
11:26:15  * Guest3815joined
11:26:33  * Guest3815changed nick to SomeoneWeird
11:27:05  * qmxzjoined
11:28:31  * DrPizzaquit (*.net *.split)
11:28:32  * niskaquit (*.net *.split)
11:28:33  * tjfontainequit (*.net *.split)
11:31:42  * DrPizzajoined
11:31:42  * niskajoined
11:31:42  * tjfontainejoined
11:32:07  * c4milojoined
11:36:32  * c4miloquit (Remote host closed the connection)
11:37:35  * sgallaghjoined
11:40:26  * `3E|BRBchanged nick to `3rdEden
11:49:13  * luxigojoined
11:49:26  * csaohquit (Quit: csaoh)
11:50:48  * piscisaureus_joined
12:04:35  * csaohjoined
12:32:54  * qmxzchanged nick to qmx
12:32:56  * qmxquit (Changing host)
12:32:56  * qmxjoined
12:42:10  * bnoordhuisjoined
12:50:33  * c4milojoined
12:55:13  * abraxas_quit (Remote host closed the connection)
12:59:20  <MI6>joyent/node: Marcin Kostrzewa master * 1f55704 : util: fix util.inspect() line width calculation Have the formatter filte - http://git.io/v6XGVA
13:01:54  * c4miloquit (Remote host closed the connection)
13:05:35  * dominictarrjoined
13:13:04  * kazuponquit (Remote host closed the connection)
13:13:17  * AvianFluquit (Remote host closed the connection)
13:14:18  * AvianFlujoined
13:20:19  <MI6>nodejs-master: #122 UNSTABLE osx-x64 (1/569) linux-x64 (1/569) windows-ia32 (4/569) osx-ia32 (4/569) windows-x64 (5/569) smartos-ia32 (1/569) smartos-x64 (1/569) http://jenkins.nodejs.org/job/nodejs-master/122/
13:22:36  <MI6>nodejs-review: #1 FAILURE osx-x64 (7/543) smartos-ia32 (6/543) windows-x64 (16/543) osx-ia32 (10/543) linux-ia32 (6/543) linux-x64 (5/543) smartos-x64 (5/543) http://jenkins.nodejs.org/job/nodejs-review/1/
13:22:48  * benoitcquit (Excess Flood)
13:25:03  * benoitcjoined
13:34:05  * bradleymeckjoined
13:37:15  <MI6>nodejs-review: #2 FAILURE windows-x64 (11/546) osx-ia32 (2/546) linux-x64 (1/546) http://jenkins.nodejs.org/job/nodejs-review/2/
13:39:16  <bnoordhuis>Chrome OS Laptop (CHROMEOS_LAPTOP) [N/m/y/?] (NEW) <- nice, mainline support for chromeos hw
13:39:20  * c4milojoined
13:44:14  <indutny>bnoordhuis: ?
13:44:25  <indutny>where?
13:46:32  <bnoordhuis>indutny: the linux kernel
13:46:38  <indutny>ah, that
13:46:46  <indutny>ok
13:52:40  <MI6>nodejs-review: #3 UNSTABLE windows-ia32 (4/557) windows-x64 (5/557) osx-ia32 (2/557) linux-x64 (1/557) http://jenkins.nodejs.org/job/nodejs-review/3/
14:13:45  <tjfontaine>hmm wtf was the review branch doing
14:14:02  <tjfontaine>oh I see, well that's stupid.
14:21:08  * `3rdEdenchanged nick to `3E|BRB
14:31:35  * mikealquit (Quit: Leaving.)
14:35:30  * benoitcquit (Excess Flood)
14:40:08  * piscisaureus_quit (Ping timeout: 245 seconds)
14:40:21  * `3E|BRBchanged nick to `3rdEden
14:42:03  * benoitcjoined
14:54:36  <saghul>wow, mr jerkins is crazy fast with checking pull requests for formatting issues :-O
14:54:40  * defunctzombie_zzchanged nick to defunctzombie
14:55:37  * kazuponjoined
14:55:42  <saghul>bnoordhuis a one liner https://github.com/joyent/libuv/pull/756
14:56:00  * piscisaureus_joined
14:56:58  * benoitcquit (Excess Flood)
15:00:40  <piscisaureus_>hello
15:03:33  * benoitcjoined
15:08:24  <bnoordhuis>sup bertje?
15:09:48  <MI6>joyent/libuv: Saúl Ibarra Corretgé v0.10 * a9a23dc : unix: don't clear flags after closing UDP handle - http://git.io/yJag6Q
15:09:52  * kazuponquit (Remote host closed the connection)
15:10:18  <bnoordhuis>saghul: btw, i saw your pyuv udp commits from last night
15:10:26  <piscisaureus_>nice: https://github.com/joyent/libuv/pull/756#issuecomment-15592727
15:10:32  <bnoordhuis>looks like aprime candidate for container_of
15:10:36  <piscisaureus_>Will it also check if someone signed the CLA ?
15:10:36  <bnoordhuis>*a prime
15:10:42  <bnoordhuis>that'd be sweet
15:10:55  <saghul>bnoordhuis I know, that's what real men use, right? :-)
15:11:42  <saghul>I have a major change in the pipeline, it's on the todo list :-) btw, is container_of exposed by libuv?
15:12:03  <piscisaureus_>uv_container_of
15:12:08  <MI6>libuv-v0.10: #22 UNSTABLE windows (7/187) linux (2/186) osx (1/186) smartos (4/186) http://jenkins.nodejs.org/job/libuv-v0.10/22/
15:12:08  <piscisaureus_>actually, I'd dig that
15:12:24  <saghul>will do, thanks!
15:15:40  <bnoordhuis>saghul: you can steal the QUEUE_DATA definition from src/queue.h
15:15:56  <bnoordhuis>doesn't depend on any headers
15:16:04  <saghul>sweet
15:16:13  * mikealjoined
15:20:25  * mikealquit (Client Quit)
15:24:06  * qmxchanged nick to qmx|afk
15:32:43  * qmx|afkchanged nick to qmx
15:35:21  * dostoyevskyjoined
15:35:52  <piscisaureus_>Windows is confusing me
15:35:55  <dostoyevsky>Somehow I am not deleting my timers correctly...
15:41:34  * kazuponjoined
15:45:29  <MI6>joyent/node: Suwon Chae master * 120e5a2 : os: use %SystemRoot% or %windir% in os.tmpdir() On Windows, respect the - http://git.io/cmolKg
15:47:35  * mikealjoined
15:48:49  * mmalecki[out]changed nick to mmalecki
15:49:50  <MI6>joyent/node: bruston v0.10 * e103778 : doc: debugger, dns, http: fix grammar - http://git.io/dqj3Dg
15:49:55  * mikealquit (Client Quit)
15:50:19  <bnoordhuis>aww
15:50:56  <MI6>joyent/node: Benjamin Ruston v0.10 * 024a8b0 : doc: debugger, dns, http: fix grammar - http://git.io/SBKISw
15:53:26  * stagasjoined
15:55:35  <tjfontaine>piscisaureus_, bnoordhuis yes it also checks the cla
15:56:14  <piscisaureus_>tjfontaine: remind me to buy you a sea of beer if we ever meet
15:56:21  <tjfontaine>heh sounds good
15:57:44  <tjfontaine>https://github.com/tjfontaine/jankins/blob/master/pullrequests.js#L70 the start of the checks it does
15:58:20  <piscisaureus_>well, it could be that you were a teetotal. In which cae it would be even more fun :-p
15:58:37  <bnoordhuis>tjfontaine: that's piscisaureus_'s strategy for getting you to buy for the rest of the evening
15:58:48  <tjfontaine>haha
16:02:25  * kazuponquit (Remote host closed the connection)
16:04:08  <MI6>nodejs-master: #123 UNSTABLE windows-ia32 (6/569) osx-ia32 (2/569) windows-x64 (7/569) http://jenkins.nodejs.org/job/nodejs-master/123/
16:04:41  <piscisaureus_>Hey bnoordhuis
16:04:52  <bnoordhuis>piscisaureus_: ho piscisaureus_
16:05:02  <piscisaureus_>Did you configure git to use a specific editor? Or just kept the default?
16:05:21  <tjfontaine>hmm +1 on the windows failures, lets see what those are
16:05:24  * piscisaureus_part
16:05:24  * `3rdEdenquit (Remote host closed the connection)
16:05:25  <bnoordhuis>it uses $EDITOR which is set to the One True Editor on my system
16:05:42  <indutny>bnoordhuis: ed?
16:05:49  * piscisaureus_joined
16:06:06  <bnoordhuis>indutny: i've actually had to use ed in the past
16:06:10  <tjfontaine>http://jenkins.nodejs.org//job/nodejs-master/123/DESTCPU=x64,label=windows//tapTestReport/test.tap-359/
16:06:14  <piscisaureus_>bnoordhuis: what do you get if you do `git config --get core.editor` ?
16:06:18  <tjfontaine>which I'm guessing is from os.tmpdir
16:06:19  <bnoordhuis>on a solaris 9 system where vim wouldn't compile and the terminal was fubar'd
16:06:25  * dapjoined
16:06:34  <bnoordhuis>piscisaureus_: vim
16:06:49  <piscisaureus_>It's unfortunate that there is no `git run-editor` plumbing
16:06:57  <bnoordhuis>oh, apparently i actually configured that in $HOME/.gitconfig
16:07:00  <bnoordhuis>go me
16:07:06  <piscisaureus_>scheisse
16:07:34  <tjfontaine>unconfigured is no output btw
16:07:38  <piscisaureus_>ah
16:07:44  <piscisaureus_>meh :(
16:07:44  <bnoordhuis>piscisaureus_: GIT_EDITOR=vim
16:21:36  * indexzerojoined
16:22:25  <tjfontaine>assert.equal(os.tmpdir(), '/tmpdir');
16:22:46  <tjfontaine>before tweaking any env vars, is no longer valid on windows
16:23:03  <Guest93631>good morning
16:23:07  <Guest93631>ack
16:23:15  * Guest93631changed nick to isaacs
16:23:26  <isaacs>there, that's better.
16:23:32  <bnoordhuis>tjfontaine: ah, interesting
16:23:50  <tjfontaine>this is all kinds of borked, the only one that passes is L38
16:23:52  <bnoordhuis>piscisaureus_: ^
16:24:29  <isaacs>tjfontaine, bnoordhuis: Is this the os.tmpdir change that just got sent our way?
16:24:37  <tjfontaine>yes
16:25:34  <MI6>nodejs-v0.10: #80 UNSTABLE osx-x64 (1/569) windows-x64 (4/569) smartos-ia32 (1/569) windows-ia32 (4/569) http://jenkins.nodejs.org/job/nodejs-v0.10/80/
16:26:21  <tjfontaine>the order is wrong in the clause, at least for the test to pass
16:26:38  <tjfontaine>https://github.com/joyent/node/commit/120e5a24df76deb5019abec9744ace94f0f3746a#L0R46
16:26:54  <tjfontaine>the test relies on TMPDIR, TMP, TEMP being the order
16:27:11  * mikealjoined
16:29:27  <tjfontaine>isaacs: btw don't forget to send me your notes
16:29:44  <bnoordhuis>isaacs: yes
16:29:55  <bnoordhuis>oh, tjfontaine already answered
16:30:23  <tjfontaine>I have a fix that as soon as the build finishes should satisfy the test and thus preserve hwo it used to work
16:30:45  <csaoh>hello ! i have a question that might be somewhat tricky, but still… does anyone know where the uv_timer_t callback are free when uv_timer_stop is called ?
16:30:53  <tjfontaine>linking on windows is stupidly slow, at least through vcbuild.bat since it can't assume incrementals
16:31:34  <isaacs>yep
16:31:51  <bnoordhuis>csaoh: come again?
16:32:00  <isaacs>tjfontaine: you on jabber?
16:32:15  <tjfontaine>I should be
16:32:30  <tjfontaine>I just cycled it
16:32:30  <isaacs>oh, my joyent login was being slow
16:32:57  * kazuponjoined
16:33:16  <csaoh>bnoordhuis: when uv_timer_start is called, there is a callback associated to that timer. is there any place it's deleted or set to null when the timer is stopped ?
16:34:04  <bnoordhuis>csaoh: you mean the function pointer to the callback? does it matter?
16:34:30  <csaoh>hm, actually, maybe not… sorry for the stupid question.
16:34:56  <bnoordhuis>indutny: you should probably merge the patch for #5004
16:35:02  <indutny>zero return?
16:35:14  <bnoordhuis>yes
16:35:15  <indutny>I've another idea about it
16:35:21  <indutny>what if we'd just report this error?
16:35:26  <indutny>as this.pair.ssl.error
16:35:33  <bnoordhuis>hm. why?
16:35:36  <indutny>and all existing logic will be preserved
16:35:48  <indutny>well, because it really looks like handling the same thing
16:35:54  <indutny>and behaviour in case of zero return is the same too
16:37:07  <bnoordhuis>is a zero return something the user can reasonably be expected to avoid?
16:37:12  <bnoordhuis>i'm guessing the answer is no
16:37:36  <indutny>surely no
16:37:40  <indutny>but its error
16:37:48  <indutny>you disagree?
16:38:42  <bnoordhuis>not really
16:39:00  <bnoordhuis>but if the user can't avoid it and the connection is dead anyway, there may not be much point in reporting it
16:39:11  <bnoordhuis>you're thinking of emitting it as a ECONNRESET kind of error or ?
16:39:21  <indutny>yes, sort of
16:39:25  <indutny>well
16:39:26  <indutny>I mean
16:39:26  <indutny>yes
16:39:29  <indutny>I could do it
16:40:08  <bnoordhuis>i don't really have a strong opinion
16:40:20  <bnoordhuis>on this particular subject anyway
16:41:11  <indutny>ok
16:41:14  <indutny>I'll do ECONNRESET
16:41:31  <tjfontaine>bnoordhuis, piscisaureus_: https://gist.github.com/tjfontaine/5264773
16:41:40  * kazuponquit (Ping timeout: 256 seconds)
16:44:17  <bnoordhuis>tjfontaine: piscisaureus_ should sign off on that
16:44:27  <bnoordhuis>and maybe run the test suite this time :)
16:44:35  <tjfontaine>yes, I did :)
16:44:41  <bnoordhuis>oh, i mean bertje
16:44:44  <tjfontaine>nod
16:44:55  <tjfontaine>yes I agree that those who sign off on patches should have run the test suite :P
16:45:10  <piscisaureus_>you guys will have to wait a lot more then :)
16:45:32  <piscisaureus_>tjfontaine: do you have a real commit for that, instead of a diff?
16:45:43  <tjfontaine>no I can make one if you'd like
16:45:51  * kazuponjoined
16:45:54  <piscisaureus_>tjfontaine: please.
16:46:09  <piscisaureus_>You can still gist it but I prefer to run it through git am
16:47:16  <piscisaureus_>tjfontaine: the problem of this is of course that now you're assuming windows is in c:\windows
16:47:34  <piscisaureus_>oh wait no nvm
16:47:38  * piscisaureus_facepalms
16:48:00  <piscisaureus_>bnoordhuis: btw - I did run the tests...
16:48:17  <MI6>nodejs-v0.10: #81 UNSTABLE windows-x64 (5/569) smartos-ia32 (1/569) windows-ia32 (4/569) linux-ia32 (1/569) http://jenkins.nodejs.org/job/nodejs-v0.10/81/
16:49:19  <tjfontaine>piscisaureus_: https://github.com/tjfontaine/node/compare/osfix
16:49:25  * qmxchanged nick to qmx|lunch
16:49:39  <tjfontaine>wiat
16:49:41  <tjfontaine>wait
16:49:55  <piscisaureus_>tjfontaine: why is the old order better?
16:50:17  * bnoordhuisis off to dinner
16:51:03  <tjfontaine>piscisaureus_: I'm not saying it's better, just that we had an order and were testing for it
16:51:25  <piscisaureus_>tjfontaine: ah. The order windows specifies is: http://msdn.microsoft.com/en-us/library/windows/desktop/aa364992(v=vs.85).aspx
16:51:26  <tjfontaine>I force pushed so as not to break unix as well
16:52:06  <tjfontaine>piscisaureus_: then the proper thing to do would be to write a new test :)
16:53:03  <piscisaureus_>Yeah that's probably better
16:53:32  <dostoyevsky>Is there an easy way to dump uv__timers ?
16:54:48  * bnoordhuisquit (Ping timeout: 264 seconds)
16:56:04  <isaacs>piscisaureus_: what are your thoughts on this? https://gist.github.com/isaacs/5264897
16:56:31  <indutny>https://gist.github.com/indutny/77c6145f86f272cf705a
16:56:33  <indutny>review anyone?
16:57:04  <piscisaureus_>tjfontaine: I will update the patch and the test.
16:57:12  <tjfontaine>piscisaureus_: ok
16:57:13  <piscisaureus_>isaacs: reviewing now
16:57:20  * bnoordhuisjoined
16:57:25  <isaacs>piscisaureus_: i just posted this example script to gist, and a bunch of people all immediately responded with how helpful it is.
16:57:29  <isaacs>figured it should just go in the docs.
16:58:13  <isaacs>rather than always telling people "you can do this" we should probably just tell htem HOW to do it
16:58:38  <piscisaureus_>isaacs: so - I though the promise of domains that you could actually automatic cleanup?
16:58:41  <indutny>bnoordhuis: review https://gist.github.com/indutny/77c6145f86f272cf705a
16:58:45  <piscisaureus_>as long as you're not carrying global state, that is
16:59:10  <isaacs>piscisaureus_: in practice, that does not work reliably, and in fact, i'd like to deprecate the whole "dispose()" concept entirely
16:59:11  <piscisaureus_>isaacs: I mean, if it doesn't work reliably then we should definitely not pretend it's all great.
16:59:19  <isaacs>piscisaureus_: ^ yes, gmta :)
16:59:25  <isaacs>piscisaureus_: it's a lovely idea, like socialism.
16:59:28  <indutny>brb
16:59:48  <isaacs>but if you have a stateful side-effecty language, you can't pretend that you can reliably clean up from arbitrary GOTO jumps into lala land
17:00:00  <piscisaureus_>isaacs: ok, so lgtm for now. But dropping dispose() makes me really sad.
17:00:31  <piscisaureus_>isaacs: are there any issues about it not working?
17:00:39  * kazuponquit (Remote host closed the connection)
17:00:56  <piscisaureus_>https://github.com/joyent/node/issues/search?q=domain+dispose
17:04:14  * loladirojoined
17:04:15  <isaacs>piscisaureus_: it's more like there's constant confusion about what it actually does, and whether or not it's required that you call it
17:04:35  <isaacs>a lot of people seem to think that it's like a malloc/free kind of situation, and you'll leak resources if you don't dispose the domain
17:05:00  <piscisaureus_>isaacs: aah. So we should just document that .dispose() clears up all the resources that are associated with the domain
17:05:07  <isaacs>and there's been mailing list threads complaining about how it's impossible to know when you should dispose the domain
17:05:14  <isaacs>it actually doesn't, though
17:05:34  <isaacs>it just walks around with a rubber mallet trying to smash all the things it knows about, and causes it to stop doing MakeCallback or emitting errors
17:05:47  <piscisaureus_>isaacs: It does, right? You just have to add streams etc. explicitly to the domain.
17:05:52  * kazuponjoined
17:05:58  <isaacs>well, so, it does 2 things.
17:06:07  <piscisaureus_>isaacs: implicit addition seems much nicer if it wasn't so slow
17:06:14  <isaacs>1. Anything explicitly added gets .close() .end() .destroy() .destroySoon(), etc.
17:06:19  <isaacs>which is kinda dumb.
17:06:47  <isaacs>2. the _disposed flag gets set, which means that anything in that domain will be noop'ed in MakeCallback and errors will be ignored.
17:07:05  <isaacs>in the hopes that it'll kinda... go away.
17:07:16  <isaacs>but you will quite easily leak resources.
17:07:20  <isaacs>memory, objects, etc.
17:07:32  <isaacs>and throwing in some cases, even if you're using domains, can cause quite oddball stuff to happen.
17:07:51  <piscisaureus_>well ... you can't leak memory unless your domain created global state that it was supposed to clean up
17:08:11  <isaacs>it doesn't have to be global, it only has to be shared.
17:08:12  <piscisaureus_>the only thing you can really leak is FDs, sockets etc
17:08:18  <piscisaureus_>yes, that
17:08:22  <isaacs>in JS, there's no way for you to know who might have a reference to your thing
17:08:35  <isaacs>so, let's say, you have a situation where you have some kind of "Agent" that's doing a bad job of pooling sockets.
17:08:45  <piscisaureus_>oh. never heard of. :-p
17:08:48  <isaacs>sound familiar?
17:09:00  <piscisaureus_>what are you talking about :)
17:09:12  <isaacs>so, if you get 5 errors, now it's just hanging there doing nothig.
17:09:31  <piscisaureus_>isaacs: yeah. this isn't great I agree
17:09:47  <piscisaureus_>The only question left is: what's the purpose of domains at all then, except being an error sink.
17:10:02  <piscisaureus_>isaacs: but, ok, lgtm then. Let's atleast not confuse our users.
17:10:08  <isaacs>the purpose of domains is to be an error sink
17:10:13  <isaacs>that's actually really useful.
17:10:40  <isaacs>the problem was that we originally envisioned it as doing the work of process isolation, which is not actually feasible in a stateful, mutable, GC'ed language.
17:10:57  <piscisaureus_>yes. So we need better isolation :)
17:11:02  <piscisaureus_>yes - that
17:11:06  <piscisaureus_>isaacs: ok, go for it
17:11:29  <piscisaureus_>And now someone kicks my butt, I'm being thrown out of this building again.
17:12:09  <isaacs>aah
17:12:13  <isaacs>haha
17:12:25  <isaacs>i think "better isolation" will not come with JavaScript.
17:12:28  <isaacs>the answer there ought to be OS processes
17:12:41  <isaacs>or, perhaps, cheap isolates, but the "cheap" is very important.
17:12:57  <isaacs>piscisaureus_: in the short term, it's all about child_process, though
17:15:55  * piscisaureus_quit (Ping timeout: 260 seconds)
17:19:00  * TooTallNatejoined
17:19:00  <MI6>joyent/node: isaacs v0.10 * 5ae26f3 : doc: Add 'don't ignore errors' section to domain Also, an example progra - http://git.io/jKVHMw
17:19:03  <dostoyevsky>uv_timer_start() uses loop->time + timeout
17:19:07  <dostoyevsky>is this is a bug?
17:19:20  <dostoyevsky>loop->time might be out of date
17:19:36  <dostoyevsky>At least it's in my code
17:20:03  <tjfontaine>it should be reasonably close, unless you're taking too long in callbacks
17:20:20  <dostoyevsky>http://ideone.com/j23gRn
17:20:41  <dostoyevsky>Should I update loop->time somehow after my sleep before I do uv_timer_start?
17:20:53  <tjfontaine>ya putting a sleep there is a good way to ruin it
17:21:01  * trevnorrisjoined
17:21:15  <dostoyevsky>in practice I am just idling in a shell...
17:21:26  <tjfontaine>trevnorris: we need to convince you to screen+irssi or somethign
17:21:43  <trevnorris>tjfontaine: why's t that?
17:21:51  <tjfontaine>dostoyevsky: sleep is one of those blocking things you should be avoiding in your mainloop
17:21:58  <tjfontaine>trevnorris: because it's the irc way
17:22:22  <dostoyevsky>tjfontaine: That may not be always possible...
17:22:38  <tjfontaine>dostoyevsky: things block should be in a uv_queue_work sequence
17:22:41  <dostoyevsky>I am just looking for a way to update loop->time
17:22:46  <tjfontaine>*things that block
17:23:01  <dostoyevsky>tjfontaine: I can't rewrite Ruby...
17:23:53  <isaacs>Does anyone have opinions about https://github.com/joyent/node/pull/5148?
17:24:02  <isaacs>TooTallNate: especially interested in what you think of that.
17:24:19  <TooTallNate>isaacs: oh i'm very +1 for that
17:24:21  <isaacs>TooTallNate: basically, it's the "do read(0) automatically when you do on('readable')"
17:24:28  <isaacs>but covers more territory that was missed.
17:24:32  <isaacs>ok, kewl
17:24:33  <TooTallNate>isaacs: oh, i thought we already had that?
17:24:41  <isaacs>well... we do, but, you an still miss it
17:24:54  * dscapequit (Ping timeout: 256 seconds)
17:24:57  <dostoyevsky>If I call uv_run(l, UV_RUN_NOWAIT); l->time seems to have been updated...
17:24:58  <TooTallNate>ya, missing "readable" events is bad…
17:25:01  <isaacs>if something else *already* caused it to get some data added, or if it was already ended, then read(0) won't necessary trigger a 'readable'
17:25:20  <isaacs>we should try to guarantee that the first addition of a 'readable' handler will *always* get a readable event, even if it already passed.
17:25:35  <isaacs>TooTallNate: another relevant change here is that the *second* addition of a 'readable' handler might still miss it.
17:25:50  <isaacs>TooTallNate: basically, if it's *your* stream, you won't miss the data. that's kind of the pattern that's been emerging.
17:25:57  <isaacs>TooTallNate: if you're sharing, well... who knows.
17:25:58  * dscapejoined
17:26:01  <dostoyevsky>uv_update_time() seems to be what I want
17:26:05  <TooTallNate>isaacs: right, ya that sounds good to me, otherwise is the same as "data"
17:26:09  <isaacs>right
17:26:14  <TooTallNate>wrt missing it :p
17:26:18  <isaacs>yeah
17:26:45  <isaacs>you can still miss it if someone else takes it, but i mean, be reasonable people, we can't magically go back in time without buffering everything always forever.
17:26:51  * hzjoined
17:27:03  <isaacs>k, landing it
17:27:28  <MI6>joyent/node: isaacs v0.10 * 929e4d9 : stream: Emit readable on ended streams via read(0) cc: @mjijackson (+1 more commits) - http://git.io/Xb3Rfw
17:29:00  * bnoordhuisquit (Ping timeout: 264 seconds)
17:29:03  <tjfontaine>isaacs: btw did you see that the bot is now commenting on new pull requests?
17:31:00  <isaacs>ORLY?
17:31:04  <isaacs>no, i didn't catch that
17:31:33  <tjfontaine>https://github.com/joyent/node/pull/5159#issuecomment-15591012 for node
17:31:55  <tjfontaine>also on libuv https://github.com/joyent/libuv/pull/756#issuecomment-15592727
17:32:52  <tjfontaine>it checks for the lib/src test/benchmark that you wanted, and also the CLA
17:33:24  * kazuponquit (Remote host closed the connection)
17:33:29  * dominictarrquit (Quit: dominictarr)
17:34:07  <tjfontaine>and it should only comment if the pullrequest doesn't validate, good pull requests don't get harassed
17:34:22  * dscapequit (Ping timeout: 256 seconds)
17:34:27  * pfox___joined
17:36:36  <MI6>nodejs-v0.10: #82 UNSTABLE windows-x64 (6/569) smartos-x64 (1/569) smartos-ia32 (1/569) windows-ia32 (4/569) http://jenkins.nodejs.org/job/nodejs-v0.10/82/
17:36:47  * dominictarrjoined
17:42:06  <MI6>joyent/node: wicked v0.10 * 39058be : setTimeout: do not calculate Timeout._when property Dramatically improve - http://git.io/yC_7mA
17:42:30  <tjfontaine>wicked?
17:42:42  <isaacs>alexy kuperstokh
17:42:49  <isaacs>i guess he's wicked :)
17:43:11  <tjfontaine>heh I guess
17:43:39  <indutny>haha
17:43:56  <indutny>isaacs: https://github.com/wicked
17:44:48  <isaacs>https://github.com/AlexeyKupershtokh/node/commit/63b38760c25f15b65421766fca635543382d1556
17:45:01  <isaacs>i guess his git name config is "wicked"? i don't know
17:45:09  <tjfontaine>ya, that's git indeed
17:46:18  * piscisaureus_joined
17:46:24  <piscisaureus_>back
17:46:44  <isaacs>wb
17:48:40  <indutny>any objections https://gist.github.com/indutny/77c6145f86f272cf705a
17:48:41  <indutny>?
17:48:52  <indutny>will merge in 5 minutes, because ben generally agreed with me on this
17:49:29  <isaacs>one sec, reviewing
17:49:51  <isaacs>yes, +1 lgtm
17:49:57  <indutny>ok
17:50:03  <isaacs>DONT WAIT 5 MINUTES THAT IS 5 MINUTES YOU COULD HAVE BEEN NOT WAITING INSTEAD!
17:50:04  <indutny>nks
17:50:17  * isaacs...? no louds?
17:50:19  <indutny>I never actually wait
17:50:22  <indutny>:)
17:50:28  <indutny>its called multi-tasking
17:50:36  <indutny>btw, I've just realized
17:50:54  <indutny>how processes and IPC are similar to general relativity theory
17:50:57  <isaacs>indutny: can you add a error.sslErrorString = err or something?
17:51:14  <isaacs>indutny: it'd be nice for debugging to know that it actually WAS a zero_return rather than an ECONNRESET
17:51:14  <indutny>isaacs: I'll create exception
17:51:21  <indutny>ah, ok
17:51:23  <indutny>ok
17:51:24  * dscapejoined
17:51:24  <isaacs>even if they get handled the same, semantically
17:51:26  <indutny>it'll be it
17:51:31  <indutny>well
17:51:41  <indutny>you want it to be ECONNRESET, but zero_return?
17:51:52  <isaacs>er, ZERO_RETURN, whatever.
17:52:04  <isaacs>just something so that you can see the actual string that came out of openssl
17:52:35  <isaacs>throwing away data sets off my danger sense.
17:52:44  <indutny>ok
17:53:45  <MI6>nodejs-v0.10: #83 UNSTABLE osx-x64 (1/570) windows-x64 (5/570) smartos-ia32 (1/570) windows-ia32 (4/570) linux-ia32 (1/570) http://jenkins.nodejs.org/job/nodejs-v0.10/83/
17:54:02  <isaacs>you never know. just the other day, i tracked down a problem in my code using the new _handle.fd field.
17:54:17  <isaacs>i thought it was kind of a weird nice-to-have feature. now that i have it, i'ts goddamn essential.
17:54:55  <indutny>heh
17:55:17  <indutny>eird
17:55:19  <indutny>weird*
17:55:19  <indutny>AssertionError: 12345 == 8068
17:55:19  <indutny> at /Users/indutny/Code/indutny/node/test/simple/test-http-full-response.js:69:12
17:55:24  <indutny>isaacs: have you ever seen this ^
17:55:34  <indutny>I've got a lot of (node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
17:55:59  <isaacs>hmmmm.....
17:56:02  <isaacs>no
17:56:04  <isaacs>what os?
17:56:14  * dominictarrquit (Quit: dominictarr)
17:56:20  <indutny>isaacs: osx
17:56:31  <indutny>isaacs: its happening from lib/http.js:30
17:56:32  <indutny>err
17:56:34  <indutny>s/30/530
17:56:57  <indutny>aah
17:57:00  <indutny>apache benchmark
17:57:12  <indutny>ok, anyway... listener leak is not a good thing
17:57:28  <isaacs>what?
17:57:47  <indutny>https://gist.github.com/indutny/77c6145f86f272cf705a
17:57:50  <indutny>ZERO_RETURN ^
17:58:12  <indutny>isaacs: eventemitter leak is happening when apache benchmark is starting to behave incorrectly on osx
17:58:23  <isaacs>oh, ok
17:59:04  <isaacs> // In v0.10 and later, this isn't a problem, since ECONNRESET isn't
17:59:04  <isaacs> // ignored in the first place. We'll probably emit 'close' on the
17:59:04  <isaacs> // next tick, but just in case it's not coming, set a timeout that
17:59:04  <isaacs> // will emit it for us.
17:59:07  <isaacs>indutny: ^??
17:59:11  <indutny>idk
17:59:20  <isaacs>indutny: it looks like i said that we can just ignore that whole bit of functionality in 0.10
17:59:28  <isaacs>indutny: what happens if you yank out that ugly kludge?
17:59:30  <indutny>well, it happens
17:59:39  <isaacs>right, i mean, remove the .once(), that whole thing
17:59:40  <isaacs>that whole path
17:59:43  <indutny>I'm not sure that I'll be able to reproduce it
17:59:52  <indutny>it wasn't happening like 10-20 times before
17:59:56  <indutny>but let me try
18:00:22  <MI6>joyent/node: Fedor Indutny v0.10 * 4580be0 : tls: handle SSL_ERROR_ZERO_RETURN see #5004 - http://git.io/Mb93AQ
18:00:38  * c4miloquit (Remote host closed the connection)
18:01:05  * c4milojoined
18:01:05  <isaacs>indutny: try this: https://gist.github.com/5265427
18:01:10  <isaacs>indutny: does that make the problem go away?
18:01:14  <indutny>one sec
18:01:37  <tjfontaine>TooTallNate: please don't make me get an xp vm :/
18:01:51  <TooTallNate>tjfontaine: hahaha
18:02:02  <trevnorris>indutny: i'm seeing v8 gc hits a wall on external mem allocation, where it exponentially slows down execution.
18:02:03  <indutny>can't make it run
18:02:04  <TooTallNate>tjfontaine: i'd figure sblom or piscisaureus_ would take a look
18:02:11  <TooTallNate>or isaacs maybe :p
18:02:17  <trevnorris>indutny: know of a way to tell v8, it's ok. just use a little extra memory.
18:02:20  <TooTallNate>idk what that error code means though
18:02:24  <tjfontaine>http://stackoverflow.com/a/10535555 seems helpful
18:02:40  <indutny>trevnorris: I don't understand what you are saying in last few days
18:02:45  <indutny>I just can't :)
18:02:45  <TooTallNate>ughh
18:02:52  <TooTallNate>supporting XP is a PITA is seems
18:02:52  <indutny>you're somewhere behind my understanding
18:02:55  <piscisaureus_>TooTallNate: tjfontaine: ?
18:03:00  <indutny>TooTallNate: why XP?
18:03:07  <indutny>we should stick to Millenium
18:03:11  <indutny>it was the only real WINDOWS
18:03:15  <indutny>OH YEAH
18:03:18  <TooTallNate>indutny: it reminds me of my childhood :)
18:03:22  <tjfontaine>piscisaureus_: he's having problems with 0.10.1 on xp
18:03:30  <piscisaureus_>aah. ipv6?
18:03:33  <TooTallNate>piscisaureus_: https://github.com/joyent/node/issues/5162
18:03:40  <indutny>isaacs: I can't run test :(
18:03:52  * bradleymeckquit (Quit: bradleymeck)
18:03:52  <indutny>isaacs: problem spawning ab - skipping test.
18:04:00  <isaacs>indutny: oh, wild
18:04:06  <isaacs>that's strange
18:04:07  * kazuponjoined
18:04:09  <indutny>so it was like the only time when it was running
18:04:13  <indutny>and it gave us this thingy
18:04:20  <piscisaureus_>tjfontaine: ah.
18:04:32  <indutny>anyway
18:04:35  <indutny>lets remove this code
18:04:38  <indutny>ah, wait
18:04:40  <isaacs>well, not just yet
18:04:44  <indutny>no... lets think about it
18:04:46  <isaacs>i wanna be careful about it :)
18:04:46  <piscisaureus_>tjfontaine: can you try to deselect the 'Event Tracing (ETW)' feature before attempting install?
18:04:48  <isaacs>yeah
18:04:58  <tjfontaine>piscisaureus_: TooTallNate ^
18:05:09  <trevnorris>indutny: that, or I've just exasperated your patience with all the questions. ;-)
18:05:17  <indutny>trevnorris: who knows
18:05:20  <indutny>I don't
18:05:21  <piscisaureus_>Ah, *tootallnate
18:05:25  * c4miloquit (Ping timeout: 248 seconds)
18:05:39  <indutny>isaacs: it seems to be pretty harmless leak
18:05:43  <indutny>since we're using `once` here
18:06:31  * SomeoneWeirdpart ("Leaving")
18:06:44  <TooTallNate>piscisaureus_: new error https://dsz91cxz97a03.cloudfront.net/_eeoFfLMg3.png
18:06:52  <TooTallNate>that's with ETW disabled
18:06:54  <isaacs>indutny: yeah, probably just need a better guard.
18:07:07  <isaacs>indutny: like, guard on teh socket, not on the request object.
18:07:27  <piscisaureus_>TooTallNate: huh that's very weird.....
18:07:34  <isaacs>indutny: also, need a test that reproduces the EE leak, which probably can happen by just connecting a whole bunch of times, and then killing the socket.
18:08:07  <isaacs>indutny: like, conn = net.connect(...); conn.write(lots of http requests); conn.on('drain', conn.destroy)
18:08:09  <indutny>isaacs: I can reproduce it :)
18:08:12  <isaacs>kk
18:08:21  <indutny>while true; do ./node test/simple/test-http-full-response.js; done
18:08:21  <isaacs>then we should fix it in 0.8, also
18:08:36  <isaacs>indutny: i've been running that since we started talking about it
18:08:52  <isaacs>actually, while ./node test/simple/test-http-full-response.js; do true; done; say "Failed"
18:08:57  <isaacs>still running
18:09:07  <indutny>well it happens on my machine
18:09:10  <indutny>eventemitter leak
18:09:34  <isaacs>yeah, i mean, we need to reproduce the ee leak deterministically
18:09:46  <isaacs>not by running AB in a loop, on your machine, in russia, on a thursday.
18:09:47  <isaacs>;P
18:09:49  <indutny>haha :)
18:09:55  <indutny>right
18:10:00  <indutny>but we need to know what causes it
18:10:03  <isaacs>yes
18:10:11  <indutny>for now it seems that all that writeRaw are happening from res.end() call
18:10:15  <isaacs>i suspect that it's simply a matter of having a bunch of reqests, none of which are responded to yet, adn then killing the socket.
18:10:16  <piscisaureus_>TooTallNate: is that box healthy otherwise?
18:10:16  <indutny>`res.end(body)`
18:10:28  <TooTallNate>piscisaureus_: healthy?
18:10:32  <TooTallNate>oh
18:10:37  <TooTallNate>ya it's pretty barebones
18:10:41  <isaacs>indutny: which could happen if you pipelined a bunch of http reqs and then killed the socket as soon as they were written.
18:10:42  <piscisaureus_>ok...
18:10:55  <piscisaureus_>TooTallNate: you see, that registry key is something that windows installer adds, and not us.
18:11:05  <isaacs>indutny: so then we get a hangup error, but not until nextTick, so there's the timeout thing, and the .once() to kill thetimeout.
18:11:17  <TooTallNate>piscisaureus_: is it not an XP thing maybe?
18:11:18  <isaacs>starting to sound like that childrens' song about the lady who swallowed a fly
18:11:27  <isaacs>then she swallowed a spider to get the fly, and a bird to get the spider, and a cat to get the bird, etc..
18:11:38  <indutny>oh god
18:11:41  <indutny>that's a thriller
18:11:44  <piscisaureus_>TooTallNate: I will check, but I thought they hadn't broken xp compatibility get...
18:11:44  <isaacs>yeah
18:11:47  <isaacs>goes up to a horse or somethign
18:11:49  <tjfontaine>isaacs: the song is a perfect analogy for NIH syndrome
18:11:54  <TooTallNate>isaacs: i don't know why she swallowed a fly
18:11:59  <TooTallNate>perhaps she'll die
18:12:02  <isaacs>SUPER MORBID for a kid's song, too, right!?
18:12:05  * kazuponquit (Ping timeout: 240 seconds)
18:12:10  <TooTallNate>ya, hahahah
18:12:27  <isaacs>basically i think it's a way to scare your kids into not eating bugs.
18:12:47  <isaacs>anyway... running npm tests. then i'm gonna put it in node, and package up 0.10.2
18:12:58  <isaacs>should've done this a while ago, but got distracted by dumb things.
18:13:04  <tjfontaine>basically all traditional kids songs are morbid or come from very morbid things
18:13:06  <TooTallNate>isaacs: can you update node-gyp in npm please?
18:13:08  <isaacs>("a while" = 2 days, i guess)
18:13:10  <MI6>nodejs-v0.10: #84 UNSTABLE osx-x64 (1/570) windows-x64 (4/570) smartos-ia32 (1/570) windows-ia32 (4/570) http://jenkins.nodejs.org/job/nodejs-v0.10/84/
18:13:10  <isaacs>TooTallNate: done, yes.
18:13:13  <isaacs>0.9.3
18:13:17  <TooTallNate>awesome
18:13:51  * Raynosquit (Ping timeout: 258 seconds)
18:15:58  * brsonjoined
18:16:40  <isaacs>the npm tests are such trash. i sort of hate them a lot.
18:16:45  <isaacs>sooooooo slow.
18:18:20  <isaacs>omg, every time john roderick goes out in the daytime, it's the most awesome twitter day
18:20:06  * bnoordhuisjoined
18:20:13  <indutny>who is he?
18:20:43  <bnoordhuis>saghul: self->fspoll_h.data = (void *)self; <- is that still necessary?
18:20:48  <bnoordhuis>is it used in the weakref code?
18:21:05  <bnoordhuis>als, superfluous cast :)
18:21:08  <bnoordhuis>*also
18:21:18  <indutny>heh
18:21:36  <indutny>I think compiler should throw errors when we're doing superfluous casts
18:23:31  <isaacs>indutny: a musician and internet person who very rarely leaves his house, apparently
18:23:40  <indutny>good for him :)
18:23:49  <indutny>I wouldn't leave my house either
18:23:53  <indutny>its just need to eat
18:23:59  <indutny>and some other cultural needs
18:24:05  <indutny>and banks
18:25:43  * dscapequit (Ping timeout: 264 seconds)
18:25:56  <bnoordhuis>don't you have supermarkets that deliver at your doorstep?
18:26:24  * `3rdEdenjoined
18:28:37  * loladiroquit (Quit: loladiro)
18:29:24  <saghul>bnoordhuis it's needed for walk
18:29:39  <saghul>but i need to work on that code a bit more :-)
18:30:11  <bnoordhuis>noted
18:30:48  <MI6>nodejs-v0.10: #85 UNSTABLE windows-x64 (5/570) smartos-ia32 (1/570) windows-ia32 (5/570) http://jenkins.nodejs.org/job/nodejs-v0.10/85/
18:31:14  <indutny>bnoordhuis: I've
18:31:19  <indutny>bnoordhuis: but they're too close for me
18:31:29  <indutny>and delivery isn't free
18:36:31  <MI6>joyent/node: isaacs v0.10 * dea0634 : npm: Upgrade to v1.2.15 - http://git.io/dI3E6A
18:36:33  <isaacs>TooTallNate: ^ gyp update.
18:36:53  <TooTallNate>kewl :)
18:37:55  * csaohquit (Quit: csaoh)
18:37:58  * qmx|lunchchanged nick to qmx
18:39:24  <indutny>isaacs: could you wait for a few hours with 0.10.3
18:39:33  <indutny>isaacs: I want to fix https://github.com/joyent/node/issues/5145 first
18:40:13  <isaacs>0.10.2
18:40:16  <isaacs>and no
18:40:22  <isaacs>i'll wait for next week for 0.10.3 :);
18:40:27  <indutny>ok :)
18:40:38  <isaacs>it'll be quick, though
18:40:43  <isaacs>i want to get back on the mondya release schedule
18:40:51  <isaacs>so it'll be good to have a nice juicy fix for it :)
18:41:14  <indutny>yeah
18:41:19  <indutny>well
18:41:22  <indutny>I've no objections
18:43:14  <MI6>joyent/libuv: isaacs created tag node-v0.10.2 - http://git.io/1-0ASg
18:46:37  <MI6>joyent/node: isaacs created branch v0.10.2-release - http://git.io/s7NoCg
18:46:39  <isaacs>review changelog? ^
18:46:58  <isaacs>bnoordhuis: we should start doing libuv releases for node import, i think. having slept on it, i think this is a good idea.
18:47:08  <isaacs>bnoordhuis: at least, each node release should be a specific libuv tagged release.
18:47:18  <isaacs>bnoordhuis: we can start with node 0.10.3, though. no rush at the moment.
18:47:28  <isaacs>bnoordhuis: how does that strike you? seem reasonable?
18:47:49  <piscisaureus_>isaacs: https://github.com/joyent/libuv/compare/v0.10.2...node-v0.10.2 <-- that's not really what we're supposed to be doing right?
18:47:55  <isaacs>piscisaureus_: yeah, yeah...
18:48:05  <isaacs>piscisaureus_: see my note there to bnoordhuis ^
18:48:27  <isaacs>piscisaureus_: it's not important that node v0.10.2 === libuv v0.10.2
18:48:33  <isaacs>in fact, we'll probably get out of sync pretty quick.
18:48:46  <isaacs>i expect that libuv will advance faster if we say "every node import from libuv must be a tagged release"
18:48:50  <piscisaureus_>isaacs: I totally agree
18:49:06  <piscisaureus_>isaacs: the only thing is that in v0.10.2 libuv is not a tagged release
18:49:07  <isaacs>but then we can have a changelog bullet like "uv: Upgrade to 0.10.32"
18:49:07  <bnoordhuis>isaacs: sure
18:49:21  <isaacs>let's start this moving forward.
18:49:46  <isaacs>the only thing that was kind of confusing the issue was that i was feeling like they should either be in sync, or way out, but not close. but really, i mean, whatever. no one cares.
18:50:11  <piscisaureus_>isaacs: Let's not keep in sync.
18:50:40  <piscisaureus_>isaacs: but... I can make a libuv release for you if you want?
18:50:52  <isaacs>piscisaureus_: hrm. ok, sure.
18:51:07  <isaacs>can you land it in v0.10 right now?
18:51:27  <isaacs>then i'll just rebase onto that and update the changelog.
18:51:28  <piscisaureus_>isaacs: I have to do a release first, but it should take no more than 15 minutes.
18:51:31  <isaacs>kk
18:51:41  <isaacs>i'll eat some eggs :)
18:51:46  <piscisaureus_>isaacs: if it takes longer we can punt on it. Making the process real quick was a goal
18:52:07  <isaacs>yeah
18:53:24  <trevnorris>my allocator is having a strange issue where it executes quickly, until some seemingly random threshold. where it begins to operate really slow.
18:53:44  * brson_joined
18:53:49  <indutny>isaacs: oh, my name in changelog
18:53:50  <indutny>finally
18:54:01  <isaacs>indutny: ;P
18:54:02  <indutny>my work is worth it
18:54:15  <trevnorris>for example, a for loop with N iterations, execute in "1183.92 ns/op", but N + 1 iterations executes in "172681.28 ns/op"
18:54:29  <MI6>nodejs-v0.10: #86 UNSTABLE windows-x64 (4/570) smartos-ia32 (1/570) windows-ia32 (4/570) linux-ia32 (1/570) http://jenkins.nodejs.org/job/nodejs-v0.10/86/
18:55:24  * brsonquit (Ping timeout: 264 seconds)
18:57:12  <bnoordhuis>trevnorris: profile it?
18:57:22  <isaacs>this is weird... http://jenkins.nodejs.org//job/nodejs-v0.10/86/DESTCPU=ia32,label=smartos//tapTestReport/test.tap-319/
18:58:11  * luxigoquit (Remote host closed the connection)
18:58:17  <isaacs>bnoordhuis, trevnorris: I really think it's worth at least taking a serious look at libumem. it's been around the block quite a bit. even if we don't actually use it, it's probably worth understanding why they do the things they do.
18:58:21  <MI6>joyent/libuv: Bert Belder v0.10 * 31ebe23 : 2013.02.04, Version 0.10.3 (Stable) Changes since version 0.10.2: * inc - http://git.io/uySG1Q
18:58:40  <MI6>joyent/libuv: piscisaureus created tag v0.10.3 - http://git.io/Qsjs3w
18:58:42  <bnoordhuis>isaacs: sure, but show me the numbers first
18:59:15  <isaacs>bnoordhuis: you mean, show you that it's faster than what we're doing?
18:59:52  <bnoordhuis>isaacs: well, yes
19:00:16  <MI6>joyent/libuv: Bert Belder v0.10 * 9e90cde : Now working on v0.10.4 - http://git.io/PyhjoQ
19:00:45  <MI6>libuv-v0.10: #23 UNSTABLE windows (6/187) linux (2/186) osx (1/186) smartos (4/186) http://jenkins.nodejs.org/job/libuv-v0.10/23/
19:01:08  <isaacs>i'll put it on my todo list. but we should be able to justify why we're NIHing a slab allocator in the first place, i think, when there's already a portable one that's used by illumos and riak, and supported by the same people who are sponsoring node.
19:01:40  <isaacs>we should get those numbers, and if using libumem is bad, we should make a big angry noise about it to joyent.
19:01:45  <isaacs>and get them to fix it.
19:02:11  <TooTallNate>piscisaureus_: so well it's possible that something on this box is screwy, haha
19:02:18  <TooTallNate>cause now I can't install any of the node msi's
19:02:37  <piscisaureus_>TooTallNate: haha. Maybe attemping to install ETW screwed it up...
19:02:43  <piscisaureus_>TooTallNate: better reboot first :)
19:02:44  <piscisaureus_>it's xp
19:02:48  <TooTallNate>ok
19:03:02  <isaacs>piscisaureus_: wanna land it in node v0.10, as well?
19:03:09  <bnoordhuis>isaacs: it's not that i think that libumem is bad
19:03:14  <piscisaureus_>isaacs: Yeah, why not?
19:03:22  <MI6>libuv-v0.10: #24 UNSTABLE windows (7/187) linux (2/186) osx (1/186) smartos (4/186) http://jenkins.nodejs.org/job/libuv-v0.10/24/
19:03:22  <piscisaureus_>isaacs: Should I do it or you?
19:03:24  <isaacs>piscisaureus_: i mean, do you wnat to do it, or should i?
19:03:31  <piscisaureus_>isaacs: I don't care.
19:03:31  <isaacs>piscisaureus_: be my guest :);
19:03:33  <bnoordhuis>it's that it's a general purpuse allocator while what we have is a tailor-made allocator
19:03:37  <piscisaureus_>ok
19:03:55  <TooTallNate>tailor-made
19:04:00  <TooTallNate>that reminded me
19:04:04  <TooTallNate>of a very bad tv show
19:05:07  <bnoordhuis>btw, the reason we have these slab buffers is to avoid creating too many persistent handles
19:05:15  <bnoordhuis>libumem isn't going to help with that
19:05:52  <MI6>joyent/node: Bert Belder v0.10 * 1b5ec03 : deps: upgrade libuv to v0.10.3 - http://git.io/PQ4sRw
19:06:02  <trevnorris>bnoordhuis: do you run perf as root to get past the kptr_restrict error?
19:06:10  <piscisaureus_>isaacs: done
19:06:24  <bnoordhuis>it's a trade-off: the more persistent handles we create, the more precise memory management can be - but the slower it gets
19:06:33  <isaacs>right
19:06:36  <isaacs>piscisaureus_: thanks!
19:06:49  <bnoordhuis>trevnorris: no, you can turn it off with sysctl
19:07:05  <isaacs>piscisaureus_: should process.versions.uv be reporting 0.10.3, or just 0.10?
19:07:06  <isaacs>$ ./node -p process.versions.uv
19:07:06  <isaacs>0.10
19:07:26  <piscisaureus_>isaacs: let's do that for v0.10.3 :)
19:07:31  <trevnorris>bnoordhuis: thanks. google failed me there.
19:07:40  <isaacs>kk
19:07:46  <piscisaureus_>isaacs: because it requires some changes to the way node picks up the libuv version.
19:08:10  <isaacs>right
19:08:20  <MI6>joyent/node: isaacs v0.10.2-release * 1e0de9c : 2013.03.28, Version 0.10.2 (Stable) * npm: Upgrade to 1.2.15 * uv: Upgr - http://git.io/65yFmA
19:08:22  * AvianFluquit (Remote host closed the connection)
19:08:33  * c4milojoined
19:09:09  * kazuponjoined
19:09:57  * AvianFlujoined
19:11:32  <bnoordhuis>$ out/Release/node -p process.versions.uv
19:11:33  <bnoordhuis>0.10.3
19:13:21  * bradleymeckjoined
19:13:21  <MI6>joyent/node: bnoordhuis created branch process-versions-uv-review - http://git.io/Tcs7ow
19:13:27  <bnoordhuis>^ isaacs, piscisaureus_
19:13:51  <piscisaureus_>bnoordhuis: lgtm
19:13:59  * kazuponquit (Ping timeout: 260 seconds)
19:14:04  <piscisaureus_>bnoordhuis: the question is, is this okay for v0.10 ?
19:15:26  <bnoordhuis>you're afraid it's going to break addons that parse process.versions.uv in their package.json or something like that?
19:15:26  <trevnorris>bnoordhuis: thanks for the perf reminder. i kinda get tunnel vision when a problem's been bugging me for a while.
19:15:48  <piscisaureus_>bnoordhuis: well, I don't really think people look at the version ever
19:16:14  <piscisaureus_>bnoordhuis: which is why I wouldn't mind landing it. But in a way it's an api change.
19:16:20  <trevnorris>bnoordhuis: interesting results. will help. here're them for reference: https://gist.github.com/trevnorris/5265967
19:16:46  <bnoordhuis>ah well, if it breaks someone's code, s/he gets what s/he deserves for using a sloppy version number parser
19:17:44  <bnoordhuis>trevnorris: seems you're hitting a major GC run
19:19:53  <isaacs>i think it's perfectly safe to update version numbers ina stable branch.
19:19:55  <isaacs>we do that all the itme
19:20:14  <isaacs>bnoordhuis: wait until after the release, though
19:20:26  <isaacs>i mean, you can land now, but it won't go in the release.
19:20:29  <trevnorris>bnoordhuis: yeah. i'm trying to isolate if there's a something in my code that's triggering it.
19:20:32  <isaacs>i already built some of the binaries, it's a pita to do it again :)
19:25:06  <MI6>nodejs-v0.10: #87 UNSTABLE linux-x64 (1/570) windows-x64 (4/570) smartos-ia32 (1/570) windows-ia32 (4/570) http://jenkins.nodejs.org/job/nodejs-v0.10/87/
19:32:24  <bnoordhuis>oh sure, i'll just land it in v0.10
19:33:23  <MI6>joyent/node: Ben Noordhuis v0.10 * 902d6cb : src: tie process.versions.uv to uv_version_string() - http://git.io/mcQejw
19:35:13  * AvianFluquit (Remote host closed the connection)
19:41:18  * trevnorrisquit (Quit: Leaving)
19:44:34  * trevnorrisjoined
19:45:59  * benoitcquit (Excess Flood)
19:50:16  * cjdjoined
19:52:20  <MI6>nodejs-v0.10: #88 UNSTABLE windows-x64 (4/570) smartos-ia32 (1/570) windows-ia32 (5/570) linux-ia32 (1/570) http://jenkins.nodejs.org/job/nodejs-v0.10/88/
19:52:25  <trevnorris>bnoordhuis: yeah. so the gc is going nuts. --trace_gc tell me "11002 ms: Mark-sweep 2.0".
19:52:33  * benoitcjoined
19:52:34  <trevnorris>ok. time to figure out why it's flipping out.
20:00:04  * sgallaghquit (Remote host closed the connection)
20:00:10  <trevnorris>bnoordhuis: what was that self referencing struct trick so i don't need to do an alloc for mem, and an alloc for the struct?
20:01:02  <MI6>joyent/node: isaacs created tag v0.10.2 - http://git.io/MuyK6g
20:02:13  <bnoordhuis>trevnorris: you mean container_of?
20:06:35  <MI6>joyent/node: isaacs v0.10 * 708e858 : blog: Post about v0.10.2 (+3 more commits) - http://git.io/4gRISQ
20:08:38  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
20:09:47  * kazuponjoined
20:11:14  * piscisaureus_joined
20:11:24  <MI6>joyent/node: isaacs master * 97c70a6 : Merge remote-tracking branch 'ry/v0.10' Conflicts: src/node.cc src/nod (+21 more commits) - http://git.io/1H9tPQ
20:11:28  * Raynosjoined
20:14:19  * kazuponquit (Ping timeout: 264 seconds)
20:16:18  <trevnorris>bnoordhuis: nm.
20:18:15  <creationix>isn't there a diagram of the libuv / node event loop somewhere in the wiki?
20:18:18  <creationix>I can't seem to find it
20:19:26  <MI6>joyent/node: isaacs master * 9100dd4 : lint Fixes lint errors introduced in 120e5a24df76deb5019abec9744ace94f0f - http://git.io/2FYp5g
20:23:32  * dscapejoined
20:26:38  <MI6>nodejs-v0.10: #89 UNSTABLE windows-x64 (4/570) smartos-x64 (3/570) smartos-ia32 (1/570) windows-ia32 (4/570) linux-ia32 (1/570) http://jenkins.nodejs.org/job/nodejs-v0.10/89/
20:27:19  <mmalecki>creationix: there was one in issues about process.nextTick
20:27:26  <mmalecki>creationix: not in the wiki tho, no
20:27:44  <creationix>that's explains why I can't find it, do you happen to know which issue?
20:27:57  <tjfontaine>it's probably setImmediate
20:28:08  <mmalecki>creationix: actually, I need it for my next talk so I'll go ahead and search
20:28:23  <tjfontaine>creationix: https://github.com/joyent/node/pull/3872#issuecomment-7804775
20:28:28  <tjfontaine>mmalecki: ^
20:28:43  <mmalecki>there we go :)
20:28:51  <creationix>and that diagram is correct right?
20:29:32  <mmalecki>creationix: it looks correct to me
20:29:38  <tjfontaine>it was at the time, I am only sketchy to know if any process.nextTick tweaked afterthat, trevnorris woudl be the best to say so
20:29:52  <creationix>now if only I could make sense of this diagram
20:29:59  <tjfontaine>I can't think of a reason why it would have changed
20:30:08  <creationix>the way I understand nextTick is it's run at the end of every js event source
20:30:24  <creationix>and keeps consuming nextTick callbacks till there are none left
20:30:41  <trevnorris>creationix: http://logs.nodejs.org/libuv/2013-03-27#22:17:52.557
20:31:08  * AvianFlujoined
20:31:20  * LOUDBOTjoined
20:31:23  * CAPSLOCKBOTjoined
20:31:46  <tjfontaine>also potentially helpful in context of https://github.com/joyent/libuv/blob/master/src/unix/core.c#L301-319
20:32:05  <creationix>trevnorris: would you have time to help book publisher make sure a diagram they are working on is correct?
20:32:14  <creationix>I don't think I'm expert enough on the internal details
20:32:15  <piscisaureus_>creationix: that diagram is not terribly up to date
20:32:16  <trevnorris>publisher?
20:32:21  <piscisaureus_>and idle is at the wrong place
20:32:34  <creationix>for the manning book I started, but TJ ended up finishing
20:32:57  <trevnorris>piscisaureus_: idle is?
20:32:59  <tjfontaine>piscisaureus_: idle is in the right spot on unix
20:33:28  <piscisaureus_>no idle should be run *after* check or closing but before timers
20:34:25  <trevnorris>eh? am I reading uv_run incorrectly in uv/src/unix/core.c?
20:34:51  <piscisaureus_>unix/core may be incorrect :)
20:36:24  <trevnorris>piscisaureus_: still don't see it. in win/core.c: "uv_update_time(loop); uv_process_timers(loop); if() { uv_idle_invoke(loop); }"
20:37:47  <isaacs>ok, 0.11.0 time
20:38:01  <indutny>isaacs: finally
20:38:05  <isaacs>:D
20:38:19  <isaacs>oh, i should eat more first. this is no good right now...
20:38:51  <piscisaureus_>trevnorris: yes, you're right I think.
20:40:07  <piscisaureus_>trevnorris: the fact that it's so close to the start of the event loop got me confused. In my mental model "idle" is always last.
20:40:16  <piscisaureus_>But heh, it's a loop, you can start anywhere
20:40:18  <bnoordhuis>unix/core is the source of all that's truthful and just. you know that, bertje
20:40:30  <piscisaureus_>bnoordhuis: no. libev is in this case :)
20:40:44  <MI6>nodejs-master: #124 UNSTABLE windows-ia32 (5/572) osx-ia32 (1/572) windows-x64 (6/572) smartos-ia32 (1/572) smartos-x64 (1/572) http://jenkins.nodejs.org/job/nodejs-master/124/
20:41:52  <piscisaureus_>isaacs: v0.11.0 time -> like, can we start on new features now?
20:42:02  <isaacs>piscisaureus_: well, i'm gonna do a v0.11.0 releae
20:42:06  <isaacs>then we start on new features :)
20:42:07  <piscisaureus_>Aah
20:42:25  <isaacs>i don't wanna get a dozen things in and then do the first release, like we did for 0.9
20:42:29  <isaacs>kinda sucks that way
20:43:05  <piscisaureus_>isaacs: ah, right
20:43:44  <bnoordhuis>but but
20:44:07  <indutny>isaacs: tlsnappy time? :)
20:44:15  <indutny>muhahaha
20:49:14  * inolenjoined
20:49:25  <bnoordhuis>all hail inolen
20:50:29  <inolen>:) not so sure about that
20:53:23  <MI6>joyent/node: isaacs created branch v0.11.0-release - http://git.io/oOAcwg
20:53:25  <isaacs>changelog comments? ^
20:53:41  <isaacs>bnoordhuis, piscisaureus_: any major changes in libuv that you think ought to be highlighted?
20:54:39  <piscisaureus_>isaacs: unix, windows: nanosecond resolution for uv_fs_[fl]stat ?
20:54:40  <trevnorris>v8 you are a whore that bleeds me dry.
20:54:49  <piscisaureus_>isaacs: or did that not bubble up to node yet?
20:55:12  * sblomjoined
20:55:18  <isaacs>piscisaureus_: it's in there :)
20:55:26  <isaacs>piscisaureus_: in teh changelog i mean, for 0.11
20:56:02  <bnoordhuis>isaacs: maybe that ngx-queue.h is gone from uv.h now?
20:56:43  <isaacs>bnoordhuis: meh. internal.
20:56:57  <isaacs>i don't think people really used that directly anyway
20:57:12  <bnoordhuis>maybe
20:57:18  <isaacs>(should certainly go on uv's changelog, though :)
20:57:30  <bnoordhuis>it's still in that version of libuv btw
20:57:41  <isaacs>ok
20:58:24  <MI6>nodejs-master: #125 UNSTABLE windows-ia32 (5/572) windows-x64 (6/572) smartos-x64 (2/572) http://jenkins.nodejs.org/job/nodejs-master/125/
20:58:51  <bnoordhuis>lgtm
21:02:27  <isaacs>alright, binaries a-buildin
21:08:31  <trevnorris>wtf v8!?! "gc_count=8203 mark_sweep_count=8203 max_gc_pause=11080.7 total_gc_time=46096005.3"
21:09:59  <bnoordhuis>trevnorris: what are you doing?
21:10:26  * kazuponjoined
21:11:19  <trevnorris>bnoordhuis: basically "for (var i = 0; i < N; i++) AllocSlow({}, 1024 * 32);"
21:11:22  <trevnorris>bnoordhuis: the code is https://github.com/trevnorris/node/blob/buffer-buffet/src/node_smalloc.cc
21:12:36  <trevnorris>it runs 2x's faster than SlowBuffer for sizes like 1024. but at large values of N it completely blows up.
21:14:45  * kazuponquit (Ping timeout: 248 seconds)
21:15:15  <trevnorris>and it's at a very very specific value of N. Then at N + 1 it takes over 130x's longer.
21:16:12  <bnoordhuis>oh? what value of N?
21:16:31  <bnoordhuis>also, what build? ia32 or x64?
21:16:35  <tjfontaine>unaligned?
21:17:00  * qmxchanged nick to qmx|away
21:17:18  <trevnorris>ok, when the size allocated is "1024 * 32" then it dies at 64390 iterations.
21:17:39  <trevnorris>x64
21:18:05  * bradleymeckquit (Quit: bradleymeck)
21:18:06  <trevnorris>tjfontaine: sorry, what?
21:18:13  <tjfontaine>never mind
21:19:21  <trevnorris>one thing I have noticed is that v8 won't allow maxresident to exceed around 56MB
21:19:33  * bradleymeckjoined
21:19:45  <trevnorris>because if I AdjustAmountOfExternalAllocatedMemory at a value lower than the actual size, then it runs fine.
21:20:30  * bradleymeckquit (Client Quit)
21:23:25  * indexzeroquit (Quit: indexzero)
21:26:12  <trevnorris>bnoordhuis: if I let the gc run long enough in that state the program crashes with "Command terminated by signal 11"
21:27:52  <bnoordhuis>ah, a segfault
21:28:14  <bnoordhuis>that suggests that either v8 is doing something wrong or you are :)
21:29:20  <trevnorris>heh. i'm trying to run through it using gdb.
21:29:20  <tjfontaine>https://github.com/joyent/node/pull/5163 if anyone is interested, I'm double checking I didn't break anything on smartos atm
21:31:04  <tjfontaine>incidentally, https://github.com/davepacheco/nhttpsnoop is indeed a pretty fun little utility
21:31:14  <trevnorris>bnoordhuis: um. gdb bt looks like this: https://gist.github.com/trevnorris/5266975
21:31:33  <trevnorris>and they just keep going. it's turtles all the way down.
21:31:43  <tjfontaine>you made a cycle!
21:32:18  <tjfontaine>or something
21:32:53  <bnoordhuis>looks like it
21:33:07  <trevnorris>wtf. this bt doesn't end. i'm almost at 100k
21:33:13  <trevnorris>is there a way to jump to the bottom?
21:34:21  <bnoordhuis>trevnorris: bt -10
21:34:46  <bnoordhuis>or however many bottom stack frames you want
21:34:51  <trevnorris>awesome. thanks
21:34:52  <tjfontaine>does gdb just use more/less or does it have its own pager?
21:35:19  <trevnorris>so it goes down to #96320. hm. now to figure out how I created a cycle...
21:36:14  <bnoordhuis>tjfontaine: i think it's built in
21:36:40  <tjfontaine>k
21:40:05  <MI6>joyent/node: isaacs v0.10 * f1fa756 : blog: Update linux binary tarball shasums I just accidentally the binary - http://git.io/uFp8nA
21:46:08  <trevnorris>wtf...
21:46:24  <trevnorris>bnoordhuis: ok. so just fixed it. check the following two lines: http://git.io/Mb7ZRA
21:46:37  <trevnorris>i replaced "Object::New()" with the "obj" that was passed in.
21:46:45  <trevnorris>and some how that magically fixed the problem.
21:49:30  <bnoordhuis>odd
21:49:44  <trevnorris>sort of fixed it. now if the allocation is like ALLOC_SIZE - 1 then it will still die.
21:49:57  <MI6>joyent/node: isaacs created tag v0.11.0 - http://git.io/ntY5wQ
21:50:32  <MI6>joyent/node: isaacs master * caacc19 : Merge branch 'v0.11.0-release' (+1 more commits) - http://git.io/2gxivA
21:50:57  <MI6>joyent/node: isaacs master * 46da8c2 : Now working on 0.11.1 - http://git.io/_pLe-A
21:53:40  <MI6>joyent/node: isaacs v0.10 * 1d17ced : blog: v0.11.0 release - http://git.io/nagWdg
21:57:01  <MI6>nodejs-v0.10: #90 UNSTABLE windows-x64 (4/570) osx-ia32 (2/570) smartos-ia32 (1/570) windows-ia32 (4/570) http://jenkins.nodejs.org/job/nodejs-v0.10/90/
22:01:08  * `3rdEdenquit (Remote host closed the connection)
22:02:00  * `3rdEdenjoined
22:03:42  <bnoordhuis>indutny: ping (though i bet you're asleep)
22:10:41  <bnoordhuis>isaacs: weren't you going to remove NODE_MODULE_CONTEXTS?
22:10:56  * kazuponjoined
22:10:59  <isaacs>bnoordhuis: oh, meh. proably not
22:11:16  <isaacs>bnoordhuis: there's no compelling reason to. it's not hurting anyone.
22:11:30  <isaacs>we can deprecate it, i guess.
22:11:53  <bnoordhuis>seems kind of pointless
22:12:01  <bnoordhuis>it's the only place we use global.root
22:12:07  <bnoordhuis>which is another pointless thing
22:12:09  <bnoordhuis>as is GLOBAL
22:12:21  <bnoordhuis>i forgot they existed but they're still there
22:12:23  * benoitcquit (Excess Flood)
22:12:39  <tjfontaine>ok #5163 doesn't seem to break smartos
22:12:57  <trevnorris>bnoordhuis: just backported those changes to v0.10 branch and still blows up.
22:13:06  <trevnorris>so i'll say it's something w/ my code (though I don't know what)
22:15:33  * kazuponquit (Ping timeout: 248 seconds)
22:15:34  * benoitcjoined
22:29:13  <MI6>nodejs-v0.10: #91 UNSTABLE windows-x64 (5/570) osx-ia32 (1/570) smartos-ia32 (1/570) windows-ia32 (5/570) http://jenkins.nodejs.org/job/nodejs-v0.10/91/
22:33:10  * bradleymeckjoined
22:33:23  * bradleymeckquit (Client Quit)
22:34:09  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
22:35:52  * bradleymeckjoined
22:38:40  <trevnorris>bnoordhuis: hm. very perplexing. in comparing SlowBuffer to AllocSlow, the later is 2x's faster. but the pooling allocator is all over the place.
22:40:20  * paddybyersquit (Remote host closed the connection)
22:40:31  * paddybyersjoined
22:42:05  <trevnorris>bnoordhuis: oh shit. I see what it is.
22:42:33  <trevnorris>I was using GetIndexedPropertiesExternalArrayDataLength to get the length, when I wasn't setting SetIndexedPropertiesToExternalArrayData to the Object::New()
22:42:46  <trevnorris>so v8 only saw the memory grow indefinitely.
22:44:37  <trevnorris>bnoordhuis: lol. yup. that fixed it.
22:44:49  <trevnorris>only took me 4 hours to see that dumb ass mistake.
22:45:44  * rendarquit
22:45:47  <MI6>nodejs-v0.10: #92 UNSTABLE windows-x64 (4/570) smartos-ia32 (1/570) windows-ia32 (6/570) http://jenkins.nodejs.org/job/nodejs-v0.10/92/
22:48:30  * bradleymeckquit (Quit: bradleymeck)
22:50:05  * c4miloquit (Remote host closed the connection)
22:50:28  * defunctzombiechanged nick to defunctzombie_zz
22:50:30  * c4milojoined
22:55:01  * c4miloquit (Ping timeout: 248 seconds)
22:55:29  <bnoordhuis>trevnorris: hah :) well, glad you found it
22:56:30  <trevnorris>bnoordhuis: you still have moments like that, or have you transcended missing the small things?
23:00:57  <bnoordhuis>trevnorris: doesn't happen often anymore, usually only when i'm tired
23:01:20  <trevnorris>awesome. there's hope for me yet. =)
23:11:30  * kazuponjoined
23:12:20  <bnoordhuis>hrm. seems --expose-debug-as is broken in master
23:12:43  <bnoordhuis>or rather, it works but Debug.setBreakPoint() fails to actually set a breakpoint
23:13:06  <bnoordhuis>same in v0.10. but v0.8 works :-/
23:13:55  * mralephquit (Read error: Connection reset by peer)
23:16:11  * kazuponquit (Ping timeout: 260 seconds)
23:19:10  * Kakeraquit (Ping timeout: 256 seconds)
23:31:18  * mikealquit (Quit: Leaving.)
23:46:15  <MI6>nodejs-master: #126 ABORTED linux-x64 (1/572) windows-ia32 (8/572) windows-x64 (5/572) smartos-ia32 (1/572) smartos-x64 (3/572) http://jenkins.nodejs.org/job/nodejs-master/126/
23:46:26  <tjfontaine>hmm windows ia32 was hanging
23:49:07  * paddybyersquit (Ping timeout: 264 seconds)
23:50:49  * `3rdEdenquit (Quit: Zzzz)
23:53:33  * indexzerojoined