00:09:08  <CIA-155>libuv: Bert Belder master * r0c32087 / common.gypi :
00:09:08  <CIA-155>libuv: Windows: disable minimal rebuild (/Gm)
00:09:08  <CIA-155>libuv: If enabled multicore compile doesn't work. - http://git.io/mHo_lg
00:09:25  <tjfontaine>bnoordhuis: sure, but I didn't think I made any change that would have done that, I am doing it again, this time hopefully right :)
00:12:36  * travis-cijoined
00:12:36  <travis-ci>[travis-ci] joyent/libuv#240 (master - 0c32087 : Bert Belder): The build is still failing.
00:12:36  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/e2cae34...0c32087
00:12:36  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/1200403
00:12:36  * travis-cipart
00:19:07  <CIA-155>libuv: Bert Belder master * rb386c44 / common.gypi : Windows: always enable multicore compile - http://git.io/TAgU1Q
00:21:04  * travis-cijoined
00:21:04  <travis-ci>[travis-ci] joyent/libuv#241 (master - b386c44 : Bert Belder): The build is still failing.
00:21:04  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/0c32087...b386c44
00:21:04  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/1200416
00:21:04  * travis-cipart
00:24:29  * bnoordhuis_joined
00:24:55  <mmalecki>anyone going to webrebels?
00:25:31  <bnoordhuis>what's a webrebel?
00:25:49  <mmalecki>http://webrebels.org/
00:25:51  <bnoordhuis>are they pro or anti web?
00:26:14  <mmalecki>pro i guess
00:27:14  <mmalecki>at this point tickets are pretty expensive tho
00:27:27  <bnoordhuis>then i can't go
00:27:34  <bnoordhuis>i'm a poor open source programmer
00:27:34  <mmalecki>512 euro
00:27:45  <bnoordhuis>yeah, that's pretty expensive
00:27:53  <bnoordhuis>and oslo is a pretty expensive city too
00:28:10  <bnoordhuis>a man could go bankrupt getting drunk in oslo
00:28:29  <mmalecki>I mean, they weren't that expensive for me
00:28:31  <mmalecki>really?
00:28:41  * mmaleckistarts saving money
00:29:22  <bnoordhuis>yeah, you won't dig it - any kind of alcohol is stupidly expensive
00:29:29  <bnoordhuis>except moonshine
00:29:45  <mmalecki>I can drink moonshine, unless it's french moonshine
00:31:15  <bnoordhuis>mmalecki: pro tip, take the ferry - tax free booze!
00:31:29  <mmalecki>but really, no cheap vodka?
00:31:33  <bnoordhuis>nope
00:31:46  <mmalecki>oh well.
00:32:05  <bnoordhuis>i wasn't kidding about that ferry btw, half of oslo's population spends its time on the ferry for exactly that reason
00:32:15  <mmalecki>I guess I should bring shitload of mine vodka
00:32:18  <mmalecki>lol
00:32:58  <mmalecki>I can always try duty free on airport
00:34:00  <CIA-155>libuv: Keno Fischer master * rd13b1e0 / (src/win/fs.c src/win/winapi.h):
00:34:00  <CIA-155>libuv: Windows: fix uv_fs_ftruncate to compile with Mingw32
00:34:00  <CIA-155>libuv: Close: #382, #397
00:34:00  <CIA-155>libuv: Ref: #381 - http://git.io/Ka7Xcg
00:35:49  * travis-cijoined
00:35:49  <travis-ci>[travis-ci] joyent/libuv#242 (master - d13b1e0 : Keno Fischer): The build is still failing.
00:35:49  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/b386c44...d13b1e0
00:35:49  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/1200447
00:35:49  * travis-cipart
00:36:17  <mmalecki>I hope I'll make it to my flight tomorrow
00:37:35  <bnoordhuis>that's entirely under your control, isn't it?
00:37:40  <mmalecki>I might or might not be drinking in my horel room
00:38:13  <mmalecki>and deploying some code in the meantime
00:39:17  <piscisaureus>hey loladiro
00:39:24  <loladiro>hey
00:39:33  <piscisaureus>this libuv work for julia that you are doing, is that going to make it in to the mainline?
00:40:01  <loladiro>yes
00:40:23  <loladiro>It tocuhes a lot of stuff though, so we're doing it slowly
00:40:53  <piscisaureus>loladiro: right ok
00:40:55  <piscisaureus>makes sense
00:41:08  * bnoordhuis_quit (Ping timeout: 256 seconds)
00:41:30  <piscisaureus>loladiro: what is the status of julia anyway? Are people very committed to it, or is it just a side project for people with a real job?
00:43:08  <loladiro>We have 1 person working on it full time (he's a researcher at MIT) and two people who are working on it almost fulltime (also affiliated with MIT). And then there's around 10 people like me, who do it as a side project, but do contribute quite a lot
00:43:25  <loladiro>And people that just work with it tend to contribute new features too
00:43:35  <piscisaureus>ah, ok
00:43:40  <piscisaureus>that's not bad, actually
00:44:10  <piscisaureus>is it like, seeing good response? Are people using it outside of MIT?
00:44:50  <loladiro>Oh, yeah, the response has been amazing. There's quite a lot of people using it
00:45:28  <loladiro>(at least a lot of people considering it's not been public until 2 months ago)
00:46:21  <piscisaureus>oh, wow
00:46:48  <piscisaureus>was it hard to make it use libuv?
00:47:12  <piscisaureus>like, how inconvenient is libuv anyway, when you're not node? :-)
00:48:12  <loladiro>I had to rewrite most of the IO types, but that was not too bad as julia is completly written in itself. The only thing that could be a bit tricky is getting it integrated properly with the Julia GC
00:49:06  <loladiro>but other than that using libuv was really nice
00:50:39  <loladiro>the only thing that was a bit tricky is finding out exactly how the libuv API is to be used. The comments in uv.h were helpful, but it could certainly use some examples and/or more extensive documentation
00:51:40  <bnoordhuis>piscisaureus: https://github.com/bnoordhuis/libuv/compare/cares-1.8.0 <- can you test this on windows?
00:52:03  <benvie>it's pretty awesome and kind of mind boggling that libuv has already been used in the building of two new languages, and that wasn't even the main thing it was originally built for
00:53:24  <creationix>wait julia uses libuv?
00:53:59  <loladiro>not yet. But soon. The windows version uses it and we will merge it into master soon to use on other platforms
00:55:13  * bnoordhuis_joined
00:55:17  <piscisaureus>loladiro: let me know when it merges :-)
00:55:27  <benvie>it's nice to see that the new things of today that may be the important things of tomorrow have the ability to be platform independent almost from the ground up
00:56:02  <loladiro>piscisaureus: will do
00:56:04  <piscisaureus>bnoordhuis_: I f I told you that we could make uv_close synchronous (with the caveat that it might not allow graceful tcp close on windows) - would you go for it?
00:56:07  <piscisaureus>loladiro: thanks!
00:56:58  <bnoordhuis>piscisaureus: no. why?
00:57:09  <piscisaureus>bnoordhuis_: ok. Because I just realized we can
00:58:22  <piscisaureus>bnoordhuis: https://gist.github.com/2522995
00:58:49  <bnoordhuis>hmm
00:59:10  <tjfontaine>they changed "" to <> on that one
00:59:35  * bnoordhuis_quit (Ping timeout: 252 seconds)
01:01:59  <piscisaureus>bnoordhuis: btw - just curious - why would you not want uv_close to be sync ?
01:02:36  <bnoordhuis>piscisaureus: because we'll regret doing that if later on we add something that takes a while to close
01:02:44  <piscisaureus>bnoordhuis: like files
01:02:49  <piscisaureus>bnoordhuis: hmmm... good point
01:03:17  <bnoordhuis>curious, i can build c-ares standalone but not from inside the libuv tree (on windows)
01:03:33  <piscisaureus>bnoordhuis: maybe missing some includes?
01:03:33  <tjfontaine>the include paths?
01:03:57  <piscisaureus>bnoordhuis: I am pretty confident that ENOENT *is* defined on windows so somehow it's not including the right header
01:04:07  <bnoordhuis>yeah, i guess that's it
01:22:54  * mikealjoined
01:25:55  * mikealquit (Client Quit)
01:31:10  <bnoordhuis>piscisaureus: can you refetch? it compiles for me
01:35:49  <piscisaureus>bnoordhuis: compiles
01:35:57  <piscisaureus>bnoordhuis: but gethostbyname times out
01:36:24  <bnoordhuis>computers... i should've become a lawyer or something
01:37:06  <piscisaureus>yeah
01:37:10  <piscisaureus>makes much more money
01:37:25  <piscisaureus>[% 0|+ 85|- 0]: gethostbyname
01:37:25  <piscisaureus>`gethostbyname` failed: timeout
01:37:25  <piscisaureus>Output from process `tcp4_echo_server`: (no output)
01:37:25  <piscisaureus>Output from process `gethostbyname`:
01:37:25  <piscisaureus>Start basic gethostbyname test
01:37:26  <piscisaureus>aresbynamecallback 0
01:37:26  <piscisaureus>Done basic gethostbyname test
01:37:26  <piscisaureus>Start gethostbyname and gethostbyaddr sequential test
01:37:27  <piscisaureus>aresbynamecallback 0
01:37:28  <piscisaureus>=============================================================
01:39:35  <bnoordhuis>why does test-gethostbyname.c start tcp4_echo_server? it doesn't need it
01:39:44  <bnoordhuis>i should say: doesn't use it
01:39:53  <piscisaureus>who knows
01:39:56  <piscisaureus>remove the helper
01:40:41  <piscisaureus>bnoordhuis: it could be that cares changed the way it deals with sockets a little bit
01:40:48  <piscisaureus>(if that test still passes on unix0
01:40:55  <bnoordhuis>piscisaureus: done
01:41:03  <piscisaureus>bnoordhuis: ok, nice
01:41:10  <piscisaureus>bnoordhuis: pull & test again?
01:41:18  <bnoordhuis>piscisaureus: yes please
01:42:01  <bnoordhuis>for the record:
01:42:02  <bnoordhuis>$ out/Debug/run-tests gethostbyname gethostbyname
01:42:03  <bnoordhuis>Start basic gethostbyname test
01:42:03  <bnoordhuis>aresbynamecallback 0
01:42:03  <bnoordhuis>Done basic gethostbyname test
01:42:03  <bnoordhuis>Start gethostbyname and gethostbyaddr sequential test
01:42:04  <bnoordhuis>aresbynamecallback 0
01:42:06  <bnoordhuis>aresbyaddrcallback 0
01:42:08  <bnoordhuis>Done gethostbyname and gethostbyaddr sequential test
01:42:10  <bnoordhuis>Start gethostbyname and gethostbyaddr concurrent test
01:42:12  <bnoordhuis>aresbynamecallback 0
01:42:14  <bnoordhuis>aresbyaddrcallback 0
01:42:16  <bnoordhuis>Done gethostbyname and gethostbyaddr concurrent test
01:42:18  * bnoordhuisapologizes for the channel spam
01:42:27  <piscisaureus>yeah still failing
01:42:43  <bnoordhuis>*sigh*
01:42:47  <bnoordhuis>any idea why?
01:44:52  * Ariajoined
01:45:25  <piscisaureus>bnoordhuis: no
01:45:31  <piscisaureus>bnoordhuis: not going to track it down now
01:45:38  <bnoordhuis>me neither
01:45:46  <bnoordhuis>gdb can wait another day
01:45:54  <piscisaureus>bnoordhuis: but the test seems to hang genuinely ... not just too slow
01:46:23  <piscisaureus>bnoordhuis: but it could be that cares' sockstate callbacks follow a slightly different pattern
01:46:37  <piscisaureus>bnoordhuis: since the windows-cares integration is pretty tied to that
01:46:51  <piscisaureus>bnoordhuis: so I guess I should land uv_poll_t and see if that works
01:47:02  <piscisaureus>uv_poll_t is made to be correct always
01:47:02  <bnoordhuis>that's not a bad idea actually
01:47:41  <piscisaureus>bnoordhuis: but another day
01:47:54  <piscisaureus>bnoordhuis: first to enjoy a drink and some rest
01:48:10  <bnoordhuis>what happened to ora et labora?
01:49:08  <piscisaureus>I will have some oral intake now.
01:49:08  <piscisaureus>(a drink, that's all)
01:49:33  <piscisaureus>what happened to iam repleatur denuo?
01:50:14  <piscisaureus>bnoordhuis: you should stop pretending you know latin!
01:51:21  <bnoordhuis>i had some in high school
01:51:27  <bnoordhuis>latin, that is, not a drink
01:51:39  <piscisaureus>it makes more sense when you're drunk
01:51:45  <bnoordhuis>i wouldn't call the drinks i had in high school 'some'
01:52:36  <bnoordhuis>isn't repleatur denuo "fill it up again"?
01:52:57  <piscisaureus>yeah
01:53:02  <piscisaureus>well
01:53:47  <bnoordhuis>i think the corpsballen in enschede used to sing that
01:53:48  <piscisaureus>"immediately fill it up again"
01:54:36  <piscisaureus>let me see if you can recognize this one:
01:54:37  <piscisaureus>Passer, deliciae meae puellae,
01:54:37  <piscisaureus>quicum ludere, quem in sinu tenere,
01:54:37  <piscisaureus>cui primum digitum dare appetenti
01:54:37  <piscisaureus>et acris solet incitare morsus,
01:54:37  <piscisaureus>cum desiderio meo nitenti
01:54:38  <piscisaureus>carum nescio quid lubet iocari
01:54:38  <piscisaureus>et solaciolum sui doloris,
01:54:38  <piscisaureus>credo ut tum gravis acquiescat ardor:
01:54:39  <piscisaureus>tecum ludere sicut ipsa possem
01:54:39  <piscisaureus>et tristis animi levare curas!
01:54:57  <piscisaureus>you must have had that in high school
01:56:03  <bnoordhuis>no
01:56:14  <bnoordhuis>but i recognize the credo ut tum gravis acquiescat ardor
01:56:52  <piscisaureus>hmm
01:56:55  <piscisaureus>I don't
01:57:11  <bnoordhuis>"i think his or her love is done"?
01:57:19  <piscisaureus>let me try to translate that without google
01:57:30  <piscisaureus>ardor, isn't that fire?
01:57:48  <bnoordhuis>yes, but it's probably something poetical in this context
01:58:06  <piscisaureus>No I think it means something like
01:58:55  <piscisaureus>well it's a little out of context here
01:59:32  <bnoordhuis>okay, enough language analysis for tonight
01:59:34  <piscisaureus>et solaciolum sui doloris, credo ut tum gravis acquiescat ardor:
01:59:40  <bnoordhuis>i'm off to bed :)
01:59:58  <bnoordhuis>sleep tight, bertje
02:00:06  <tjfontaine>drink deeply
02:00:12  <piscisaureus>ok
02:00:15  <piscisaureus>that makes sense
02:00:26  <piscisaureus>hmm
02:02:21  <piscisaureus>ok bye all
02:02:42  * piscisaureusquit (Quit: ~ Trillian Astra - www.trillian.im ~)
02:05:48  * bnoordhuisquit (Ping timeout: 246 seconds)
02:05:55  * Ariaquit (Remote host closed the connection)
02:07:46  <creationix>hmm, bert and ben just left
02:07:55  <creationix>I'm having a C insanity moment
02:08:12  <creationix>seems that (38 > 38) is true
02:08:36  <tjfontaine>heh, can you be more specific?
02:09:36  <creationix>sure
02:09:46  <creationix>size_t length = 38
02:09:59  <creationix>size_t chunk_len =38
02:10:02  <creationix>int offset = 0
02:10:12  <creationix>and (length > chunk_len - offset) is true
02:10:30  <creationix>I can printf all the values and verify that chunk_len - offset is still 38
02:11:07  <creationix>here is more context https://gist.github.com/a10e81a4d4cff32e2093
02:12:15  <creationix>seems there is some funny business when size_t numbers interact with int numbers
02:12:38  <creationix>earlier I had to change offset to int from size_t because when I added offset to my const char* I got a huge number and segfaulted
02:12:57  <loladiro>Might be a signed v. unsigned thing
02:13:26  <tjfontaine>in my small test it works as expected
02:15:34  <creationix>I should learn how to do breakpoints in gdb
02:16:10  <creationix>but even if I typecast the size_t numbers to ints it still comes back true in the conditional
02:16:35  <tjfontaine>b file.cc:<linenumber>
02:16:40  <tjfontaine>or b method
02:16:47  <creationix>tjfontaine, if you have time, I can push my changes to github and see if the full code reproduces
02:17:00  <creationix>it builds pretty fast on a good machine. faster than node
02:17:11  <creationix>but if not, I understand
02:17:15  <tjfontaine>sure I'll give it a try
02:17:51  <creationix>tjfontaine, https://github.com/creationix/luvmonkey
02:17:58  <creationix>build with ./configure and make
02:18:11  <creationix>I'm on Linux, I think it works on osx too, not sure
02:19:32  <creationix>once it's built, run the script with `./out/Debug/luvmonkey test-http.js`
02:20:50  <tjfontaine>smjs is noisey when building
02:20:51  <tjfontaine>:)
02:20:56  <creationix>yeah
02:21:05  <creationix>there be dragons in that old code
02:23:24  <tjfontaine>ok what do you see for chunklen output?
02:28:06  <tjfontaine>Breakpoint 1, lhttp_parser_execute (cx=0xcf1590, argc=3, vp=0x7ffff687c388) at src/lhttp_parser.c:109
02:28:09  <tjfontaine>109 if (length > (chunk_len - offset)) printf("(length > (chunk_len - offset))\n");
02:28:12  <tjfontaine>(gdb) n
02:28:14  <tjfontaine>110 if ((length < 0) || (length > (chunk_len - offset))) {
02:28:17  <tjfontaine>(gdb) n
02:28:19  <tjfontaine>116 nparsed = http_parser_execute(parser, &lhttp_parser_settings, chunk + offset, length);
02:28:22  <tjfontaine>creationix: seems like it works to me
02:28:45  <creationix>hmm
02:30:02  <creationix>how do I inspect a variable?
02:30:16  <creationix>I'm stopped in the JS_ReportError line
02:30:40  <tjfontaine>if oyu want to print it "p <var name>"
02:30:50  <tjfontaine>if it's a pointer p *ptr
02:31:18  <creationix>interesting
02:31:24  <creationix>Breakpoint 1, lhttp_parser_execute (cx=0xcf1590, argc=3, vp=0x7ffff6a75388) at src/lhttp_parser.c:109
02:31:24  <creationix>109 if (length > (chunk_len - offset)) printf("(length > (chunk_len - offset))\n");
02:31:24  <creationix>(gdb) n
02:31:24  <creationix>(length > (chunk_len - offset))
02:31:24  <creationix>110 if ((length < 0) || (length > (chunk_len - offset))) {
02:31:25  <creationix>(gdb) n
02:31:26  <creationix>111 JS_ReportError(cx, "Invalid length or length extends beyond end of chunk");
02:31:28  <creationix>(gdb) p length
02:31:30  <creationix>$1 = 140733193388070
02:31:32  <creationix>(gdb) p chunk_len
02:31:34  <creationix>$2 = 38
02:31:36  <creationix>(gdb) p offset
02:31:38  <creationix>$3 = 0
02:31:40  <creationix>why is length such a large number?
02:32:04  <creationix>and my printf for length did say "38"
02:32:50  <tjfontaine>well, (int)size_t probably
02:33:08  <creationix>I guess size_t and int don't interact well
02:33:19  <creationix>I need a better understanding of numbers in C
02:33:26  <creationix>int is signed, size_t is not I assume
02:33:30  <tjfontaine>you should change the printf to not print %d but something that can hold size_t
02:33:56  <tjfontaine>%lu I think might work for testing
02:34:49  <creationix>yep, length 140733193388070, chunk_len 38, offset 0
02:35:15  <creationix>can you not mix types in an > operation ?
02:35:24  <creationix>I thought C handled all that internally
02:35:25  <tjfontaine>does JS_ConvertArguments actually take a size_t?
02:35:46  <creationix>ahh, JS_ConvertArguments is where I messed up
02:35:55  <tjfontaine>I have a feeling this is uninitialized memory
02:36:13  <creationix>no, just bad encoding
02:36:17  <tjfontaine>k
02:36:21  <creationix>when I typecast it to (int) it has the right number
02:36:36  <tjfontaine>right because it's lopping off the upper 32bit :)
02:36:36  <creationix>anyway, using int instead of size_t helps
02:36:46  <creationix>ahh, could be
02:36:51  <creationix>thanks for the help!
02:37:01  <tjfontaine>no problem
02:37:09  <creationix>I thought I was going insane and 38 was indeed greater than 38
02:37:39  <tjfontaine>:)
02:38:13  <creationix>yay, my http parser works now
02:38:28  <creationix>now to fix the tcp server and then combine the two for http server :)
02:49:07  * theColejoined
03:53:31  * c4milojoined
04:18:55  * c4miloquit (Ping timeout: 260 seconds)
04:28:01  * iraquit (Quit: Leaving...)
04:57:33  * loladiroquit (Read error: Connection reset by peer)
05:42:57  <indutny>heya
05:43:05  <indutny>back online now
06:46:35  * mikealjoined
07:45:29  * rendarjoined
10:55:46  * paddybyersjoined
11:17:02  * paddybyersquit (Quit: paddybyers)
11:21:42  * paddybyersjoined
11:32:12  * paddybyersquit (Quit: paddybyers)
11:51:23  * `3rdEdenjoined
11:55:04  * irajoined
11:59:20  * `3rdEdenquit (Quit: Leaving...)
12:18:39  * theColequit (Read error: Connection reset by peer)
12:19:14  * theColejoined
12:22:01  * theColequit (Client Quit)
12:47:25  * felixgejoined
12:47:25  * felixgequit (Changing host)
12:47:25  * felixgejoined
12:47:47  * felixgequit (Client Quit)
12:48:03  * felixgejoined
12:48:03  * felixgequit (Changing host)
12:48:03  * felixgejoined
12:55:18  * felixgequit (Quit: felixge)
13:08:39  * c4milojoined
13:46:37  * felixgejoined
14:12:30  * piscisaureus_joined
14:13:14  <piscisaureus_>felixge: hey, are you going to come to amsterdam for queens day this year?
14:13:40  <felixge>piscisaureus_: I'm already here!
14:13:48  <felixge>are you going to amsterdam? :)
14:13:55  <piscisaureus_>I live there nowadays
14:13:56  <piscisaureus_>so, yes
14:14:03  <felixge>sweeet
14:14:07  <felixge>lets meet up
14:14:12  <piscisaureus_>yeah
14:14:20  <felixge>do you know where you'll be going?
14:14:39  <piscisaureus_>no, I have no concrete plans atm
14:15:06  <piscisaureus_>my gf is in france so I'm all alone
14:15:13  <piscisaureus_>I might hang out with Rik a little bit
14:15:16  <felixge>well, then join us!
14:15:20  <felixge>we'll be a small group
14:15:26  <felixge>~5-6 good men
14:15:34  <felixge>doing responsible drinking
14:15:35  <felixge>: )
14:15:37  <piscisaureus_>hahaha
14:15:38  <piscisaureus_>ok
14:15:43  <piscisaureus_>sounds fun
14:15:54  <piscisaureus_>where are you going, or are you just walking around the city?
14:16:06  <felixge>I think we're planning to go to one party
14:16:16  <felixge>https://www.facebook.com/events/179170595534617/
14:16:20  <felixge>but also lots of walking around
14:17:00  <piscisaureus_>today or tomorrow?
14:17:04  <felixge>tomorrow
14:17:14  <felixge>♕ QDAY @ Singel/van Zuylen: 12.00-20.00 (gratis entree)
14:17:14  <piscisaureus_>ah, kewl
14:17:15  <felixge>this one
14:17:22  <felixge>where are you in the city?
14:17:57  <felixge>http://maps.google.com/?ll=52.349879,4.84686&spn=0.012832,0.033023&t=m&z=16 <- this is where we are right now
14:18:01  <felixge>and where we'll start out from
14:18:20  <felixge>so if you want to join us around noon, that's when we leave there
14:18:25  <piscisaureus_>http://maps.google.com/maps?oe=utf-8&rls=org.mozilla:nl:official&client=firefox-a&q=bloemstraat+amsterdam&um=1&ie=UTF-8&hq=&hnear=0x47c609db72feb57b:0x6eecb9fbe2aacfc9,Bloemstraat,+Binnenstad,+The+Netherlands&ei=aE2dT_LzHYOaOvmq6PsB&sa=X&oi=geocode_result&ct=title&resnum=1&ved=0CCgQ8gEwAA
14:18:28  <felixge>otherwise we can meet at the party anytime
14:19:05  <piscisaureus_>ok
14:19:16  <piscisaureus_>I think I'll join you at the party
14:19:26  <felixge>yeah
14:19:40  <felixge>piscisaureus_: +49 151 14967823 is my cell
14:19:58  <felixge>just call me on that when you're there and then we'll figure out how to find each other
14:20:13  <piscisaureus_>kewl
14:20:53  <felixge>so we'll probably be there around 1pm, so anytime after that should be fine. Call me if in doubt ;)
14:20:56  <felixge>what's your number?
14:21:20  <piscisaureus_>You should be receiving a call now
14:21:27  <felixge>yeah
14:21:28  <felixge>got it!
14:21:33  <piscisaureus_>That was me :-)
14:21:41  <felixge>hah
14:21:47  <felixge>awesome
14:21:48  <felixge>that will work
14:21:59  <felixge>so the people who are coming are my co-founders tim and kevin
14:22:03  <felixge>I think you met tim before
14:22:06  <felixge>at nodecamp.eu
14:22:23  <felixge>and the other's are friends of kevin, but mostly not computer people
14:22:27  <piscisaureus_>He was at the sunday night "party" right?
14:22:55  <piscisaureus_>Oh noes now I have to engage with ordinary people :-p
14:22:59  <felixge>yeah, where we sat outside and they went to a strip club
14:23:03  <felixge>hahaha
14:23:12  <felixge>you can abstract that problem away using alcohol!
14:24:40  <felixge>piscisaureus_: anyway, looking forward to see you. And please bring rik or anybody else along if they want to hang out
14:25:15  <piscisaureus_>Will do
14:25:18  <piscisaureus_>Rik might come
14:25:31  <piscisaureus_>Don't know about the rest, I think they have plans
14:26:36  <felixge>piscisaureus_: this is the exact event location: http://maps.google.com/maps?q=Cafe+van+Zuylen,+amsterdam&hl=en&sll=37.0625,-95.677068&sspn=66.574603,135.263672&hq=Cafe+van+Zuylen,&hnear=Amsterdam,+North+Holland,+The+Netherlands&t=m&z=16
14:26:44  <felixge>http://maps.google.com/maps?q=Cafe+van+Zuylen,+amsterdam&hl=en&sll=37.0625,-95.677068&sspn=66.574603,135.263672&hq=Cafe+van+Zuylen,&hnear=Amsterdam,+North+Holland,+The+Netherlands&t=m&z=16
14:26:46  <felixge>Cafe van Zuylen
14:26:52  <piscisaureus_>Ah
14:26:54  <felixge>outside
14:26:58  <piscisaureus_>that's 2 blocks away from where I live :-)
14:27:01  <felixge>hah
14:27:05  <felixge>that's convenient
14:27:05  <felixge>:)
14:27:10  <piscisaureus_>and from our office btw
14:27:17  <piscisaureus_>which is where we keep the beer stash
14:27:27  * c4miloquit (Ping timeout: 246 seconds)
14:28:15  <felixge>should we stop by and check out the office?
14:28:25  <felixge>and steal secret plans?
14:28:38  <piscisaureus_>well... you could try
14:28:53  <piscisaureus_>I don't promise I'll be there early morning :-)
14:28:57  <piscisaureus_>Rik probably will
14:28:58  <felixge>piscisaureus_: hah
14:29:02  * paddybyersjoined
14:29:08  <felixge>piscisaureus_: I thought you'll be there before you meet up with us
14:29:11  * sj26quit (Ping timeout: 260 seconds)
14:29:11  <felixge>if not then nvm
14:30:02  <piscisaureus_>It's there
14:30:10  <piscisaureus_>felixge: yeah I think I will
14:30:12  <piscisaureus_>http://maps.google.com/
14:30:18  <piscisaureus_>umm
14:30:20  <felixge>^-- cool website
14:30:25  <felixge>:)
14:30:48  <felixge>I'll just give you a call before we leave and see where you are
14:30:53  <piscisaureus_>cool
14:30:59  <piscisaureus_>http://maps.google.com/maps?q=Ajax.org+B.V.,+Keizersgracht,+Amsterdam,+Nederland&hl=en&sll=37.0625,-95.677068&sspn=48.555061,93.076172&oq=ajax.org,+kei&hq=ajax-org&hnear=Keizersgracht,+Amsterdam,+Noord-Holland,+The+Netherlands&t=m&z=16
14:31:03  <piscisaureus_>That's where our office is
14:31:07  <felixge>continuous planning
14:31:09  <piscisaureus_>Top floor
14:31:10  <felixge>:)
14:31:22  <piscisaureus_>so if you happen to pass by, ring the bell :-)
14:31:25  <felixge>awesome, yeah, that'd be on our way
14:31:27  <felixge>will do
14:31:32  <piscisaureus_>otherwise we'll call
14:33:08  * sj26joined
14:39:06  * russell_hquit (Ping timeout: 260 seconds)
14:44:16  * russell_hjoined
14:53:28  * iraquit (Quit: Leaving...)
16:15:48  * mikealquit (Quit: Leaving.)
16:35:06  <mmalecki>oh wow, I'm in Poznan
16:35:15  <mmalecki>doesn't happen often :)
16:39:53  * felixgequit (Read error: Connection reset by peer)
16:40:15  * felixgejoined
16:40:15  * felixgequit (Changing host)
16:40:15  * felixgejoined
16:42:54  * felixgequit (Read error: Connection reset by peer)
16:44:00  * paddybyersquit (Ping timeout: 276 seconds)
16:44:30  * felixgejoined
16:44:30  * felixgequit (Changing host)
16:44:30  * felixgejoined
16:45:21  * stephankjoined
16:48:38  * stephankquit (Client Quit)
16:51:39  * stephankjoined
16:53:09  * mikealjoined
17:17:38  * loladirojoined
17:37:48  * felixgequit (Quit: felixge)
18:00:47  * irajoined
18:05:20  * isaacsjoined
18:08:43  * mikealquit (Quit: Leaving.)
18:08:44  * iraquit (Quit: Leaving...)
18:08:59  * pfox___joined
18:09:26  <pfox___>piscisaureus_: ping
18:13:04  <pfox___>so im starting work on a high-level tcp/socket API for rust (using libuv, naturally)
18:13:09  <pfox___>and thinking about how to model the API..
18:13:23  <pfox___>kind of turn between modelling it as closer to the libuv api
18:13:54  <pfox___>w/ connect, read_start/stop, write, etc ..
18:14:18  <pfox___>would avoid callbacks and make the respective functions return results equiv. to what you'd get in a callback..
18:15:05  <pfox___>like you would call read_start and get back a port that you can receive on (repeatedly if you wish).. and each time you recv on the port, you can make a decision as to whether you should continue to recv or break out the loop
18:15:32  <pfox___>as you would in a uv_read_cb where you can decide to call uv_read_stop()
18:15:48  <pfox___>.. or, optionally, doing something closer to node's API
18:16:18  <pfox___>but instead of raising events w/ callbacks.. just let the user get a port associated with the event that they can block on, as desired..
18:16:40  <pfox___>i guess sunday isn't the best day to have these deep thoughts, heh.
18:21:29  <piscisaureus_>pfox___: I am here.
18:21:44  <piscisaureus_>pfox___: well, go ahead :-)
18:22:01  <piscisaureus_>pfox___: I think luvit and pyuv use a similar approach
18:22:18  <loladiro>prof___: I am implementing the same API for julia based on libuv. I might be able to give some insight into my experience using it if you have questions
18:22:31  <pfox___>piscisaureus_: hey.. i actually wanted to ping you about something else
18:22:36  <piscisaureus_>pfox___: although, node's api was designed for convenience of the javascript programmer... I think libuv's api is slightly more difficult to deal with
18:22:42  <pfox___>1) is the refcount refactor branch available anywhere?
18:22:59  <pfox___>2) can i hack on it to add uv_walk (with your guidance?)
18:23:13  <piscisaureus_>pfox___: node's api made some mistakes that we have to live with though (such as, automatically starting read)
18:23:26  <pfox___>yeah.. i was curious about that..
18:23:36  <pfox___>it kind of makes sense to me..
18:23:43  <piscisaureus_>pfox___: I think it's in bnoordhuis' branch
18:23:47  <piscisaureus_>lemme see
18:23:57  <pfox___>ok.. yeah. i checked your repo and joyent's and didnt see anything
18:24:44  <piscisaureus_>pfox___: https://github.com/bnoordhuis/libuv/branches
18:25:11  <piscisaureus_>I think the latest refcount branch is refcounts_again (but it's not yet done for windows - so you should probably not try :-))
18:25:31  * pfox___nods
18:25:36  <piscisaureus_>pfox___: I think the walk_handles branch has an implementation for uv_walk - unix only
18:25:40  <pfox___>well we won't update our submodule in rust until it lands in master
18:25:47  <piscisaureus_>pfox___: yeah, that seems wise
18:25:49  <pfox___>i just wanted to scope it out.. and i work in 64bit linux
18:26:13  <pfox___>ok, cool!
18:26:16  <piscisaureus_>pfox___: I don't think that the refcount refactor will cause great pains though... You probably should just remove all mentions of uv_ref and uv_unref and you should be fine
18:26:40  <pfox___>i think we're good, in that case.
18:27:01  <piscisaureus_>pfox___: and then you only unref all handles that you don't want to keep the loop alive, but I don't think that really happens in rust
18:27:27  <pfox___>yeah, it's tricky
18:27:33  <piscisaureus_>pfox___: I am not completely set on the uv_walk api yet
18:27:34  <pfox___>we're actually exposing multiple levels of API in rust
18:28:07  <piscisaureus_>pfox___: it would be nice to have some sort of filter so you can enumerate only handles that are active, or only those that are unrefed, or everything except the closing handles
18:28:35  <piscisaureus_>pfox___: that would allow people to clean up a loop properly even in the presence of unrefed handles
18:28:50  * pfox___nods
18:29:15  <pfox___>so node 0.8 is june 1st'ish.. right?
18:29:20  <pfox___>and this is going to land prior to that
18:29:32  <piscisaureus_>like:
18:29:32  <piscisaureus_>uv_run();
18:29:32  <piscisaureus_>// The loop exited. Now enumerate all the leftover (unrefed) handles that are not being closed and close them
18:29:52  <pfox___>yeah. that's be useful, for sure.
18:29:52  <piscisaureus_>uv_walk(loop, xxx, yyy, walk_cb);
18:30:10  <piscisaureus_>pfox___: yeah
18:30:14  <piscisaureus_>pfox___: I hope so...
18:30:49  <piscisaureus_>pfox___: we're all very busy atm with various stuff that *has* to be done for node
18:31:00  * pfox___nods
18:31:07  <piscisaureus_>uv_walk is not really in that list, for us it's only a nice to have (for debugging purposes)
18:31:32  <pfox___>seems like it'd be (almost) neccesary for users, given how the behavior of uv_run() is going to change
18:31:46  <piscisaureus_>I think it always was :p
18:32:10  <piscisaureus_>Right cleaning up your event loop properly is virtually impossible
18:32:35  <piscisaureus_>it just doesn't matter for programs that just create one loop and exit immediately after falling offl uv_run()
18:32:37  <pfox___>well theoretically if the main thread has a tight reign on what's alloc'd or everything's on the stack before uv_run, it'd not be strictly neccesary.
18:32:43  <loladiro>We need uv_walk in Julia for the GC. I was almost gonna write something myself, but if it's already planned that's even better
18:32:59  <pfox___>yeah creationix was harping on wanting something like that, too
18:33:10  <pfox___>loladiro: so you're a julia dev, huh? that's cool.
18:33:12  <piscisaureus_>yeah creationix' demands are slightly different I think
18:33:16  <pfox___>you guys are doing good stuff w/ the llvm jit
18:33:25  <loladiro>thank you
18:33:42  <pfox___>we have a repo w/ a (in its infancy) version of rustc with llvm jit support
18:33:59  <pfox___>it'd be righteous if it gets built out and lands in master
18:34:10  <piscisaureus_>It would be nice if you guys knew the libuv internals a little better :-)
18:34:37  <piscisaureus_>(or do you already)
18:34:46  <pfox___>piscisaureus_: hey thats why i was asking after helping w/ uv_walk
18:34:49  <pfox___>learn by doing :)
18:35:04  <piscisaureus_>pfox___: yeah... I would not mind to have you do it. Actually, it would be welcome.
18:35:10  <pfox___>it'll become a blocker, for us, if refcount refactor lands w/o uv_walk
18:35:26  * pfox___nods
18:35:54  <piscisaureus_>pfox___: so the only thing is that your first patch is going to be a little painful, since we will have a discussion on the api afterwards etc.
18:37:30  * mikealjoined
18:37:33  <pfox___>yeah... id probably start by hewing to whats in ev_walk
18:37:48  <piscisaureus_>yeah, I think ev_walk is dirt simple
18:38:03  <pfox___>so you're saying ev_walk + filters?
18:38:16  <piscisaureus_>yes, I think that's it
18:38:29  <pfox___>but none of the infrastructure is in place on windows
18:38:39  <piscisaureus_>yep... that's one of the issues :-)
18:38:40  <pfox___>also.. what does ev_walk return, as is? everything?
18:38:51  <pfox___>yeah.. and im so totally *not* a win32 dev :)
18:38:58  <pfox___>well im actually a .net dev
18:39:02  <pfox___>but that's not a win32 dev, heh
18:39:05  <piscisaureus_>pfox___: yeah... luckily it won't be hard
18:39:18  <piscisaureus_>you'd probably have to add a linked list to every handle
18:39:35  <piscisaureus_>and just insert into that list when a handle is created and remove it upon destruction
18:39:45  <loladiro>I might be able to help out with win32
18:39:54  <piscisaureus_>some types are already in lists, e.g. timers and check/prepare/idle
18:40:18  <piscisaureus_>so you can just make another list for other types
18:40:24  <pfox___>so every handle holds a linked list of every other handle../
18:40:26  <pfox___>?
18:40:37  <piscisaureus_>um, no, the loop has that
18:40:38  <pfox___>or did you mean loop when you said "every handle" ?
18:40:50  <pfox___>oh, gotcha gotcha
18:40:53  <piscisaureus_>oh I mean
18:40:55  <pfox___>the loop has a linked list to every handle.
18:41:00  <piscisaureus_>yeah
18:41:31  <piscisaureus_>so you have to add some fields to every handle (that does not already have it) to be able to be in that list :-)
18:41:34  <piscisaureus_>that's what I meant
18:41:45  <piscisaureus_>but I am not completely sure about how to do it
18:41:58  <piscisaureus_>we could also split up the list by refed/unrefed or active/inactive
18:43:03  <piscisaureus_>pfox___: btw - it makes sense to get to know libuv-win :-)
18:43:22  <piscisaureus_>pfox___: the new linux backend Ben is working on will look very similar to uv-win
18:44:15  * pfox___nods
18:44:46  <piscisaureus_>Maybe you can write a proposal or something in a github issues
18:44:48  <piscisaureus_>*issue
18:44:55  <pfox___>well can the loop figure a handle's state just looking at it?
18:45:06  <piscisaureus_>yeah pretty much
18:45:14  <pfox___>seems like one list would be simplest
18:45:15  <piscisaureus_>not active/inactive atm
18:45:26  <pfox___>at most a uv_walk operation is still O(n)
18:45:32  <pfox___>oh
18:45:33  <piscisaureus_>yeah
18:45:44  <piscisaureus_>maybe we don't really need the filters
18:45:57  <piscisaureus_>that only makes sense when the loop can optimize the walk using the filter
18:46:17  <piscisaureus_>otherwise the user could just ignore the handles that it is not interested in
18:46:59  <pfox___>add some predcaite functions for handles
18:47:04  <pfox___>uv_handle_is_active()
18:48:10  <piscisaureus_>yeah I think we have uv_is_closing, _is_readable, _is_writable now
18:48:23  <piscisaureus_>is_active() is what creationix needs
18:49:15  <piscisaureus_>oh wait we have uv_is_active already
18:49:33  <piscisaureus_>only it doesn't return anything meaningful for many handle types
18:50:14  <piscisaureus_>ah #nodeup is starting
18:50:48  <piscisaureus_>pfox___: it seems best if you talk to bnoordhuis a little about uv_walk, since he already did some work.
18:51:00  * mralephjoined
18:51:38  <pfox___>k will do
18:51:43  <piscisaureus_>pfox___: kewl
18:52:09  <piscisaureus_>pfox___: thanks for helping out btw - it'd be nice if we could have some non-node contributors :-)
18:53:30  <pfox___>thank me when my commits land :)
18:53:40  <piscisaureus_>pfox___: sure
18:55:22  <pfox___>anways.. ill ping bnoordhuis tomorrow, i guess.
18:55:51  <pfox___>and i still have these tcp bindings, hehe
18:56:02  <piscisaureus_>pfox___: I don't know if he'll be here. It's a holiday here tomorrow.
18:56:05  <pfox___>so you think the decision to read after opening the socket was a mistake?
18:56:10  <piscisaureus_>pfox___: but you can try. bnoordhuis often works
18:56:15  <pfox___>ah that's right!
18:56:19  <pfox___>queen's day, right?
18:56:24  <piscisaureus_>yup
18:56:32  <pfox___>i have a friend who's in amsterdam right now
18:56:55  <pfox___>i think they fled to bruges
18:57:09  <pfox___>because transportation is shutting down, or whatever
18:57:11  <piscisaureus_>you better
18:57:24  <piscisaureus_>well, on the contrary
18:57:34  * bnoordhuisjoined
18:57:34  <piscisaureus_>but trains will be super crowded etc
18:57:38  <piscisaureus_>no fun to travel tomorrow
18:58:10  <piscisaureus_>pfox___: re read after open: yes, I think that was a mistake.
18:58:37  <pfox___>why?
18:58:42  <piscisaureus_>pfox___: sometimes you just don't want to read yet (because you have to wait for another event before you want to accept data)
18:58:51  * pfox___nods
18:58:54  <piscisaureus_>also, suppose you want to offload a socket to another process
18:59:12  <piscisaureus_>you better not accidentally read any data from the socket
19:00:21  <piscisaureus_>pfox___: but I suppose this is your own artistic freedom ;_0
19:02:54  <pfox___>im trying to find something that's the right fit for rust
19:04:19  <pfox___>it's much uncharted territory
19:04:29  <pfox___>except: umm.. somethingsomething ports and chans
19:05:17  <pfox___>i socket will probably be chained to a single task .. maybe there'll be some kind of move semantics.. like how you mention..
19:05:37  <pfox___>like in a http server scenario, it'd be nice to offland a client stream onto another task
19:05:46  <piscisaureus_>pfox___: well, api design is hard. My advice would be to just do something.
19:06:01  <piscisaureus_>pfox___: you will discover edge cases and gotchas along the way
19:06:10  <piscisaureus_>you never get it right the first time anyway
19:06:31  <pfox___>so true
19:06:51  <piscisaureus_>pfox___: unfortunately I don't know the rust language, so I am afraid I can't be of much help with that
19:07:46  <pfox___>yeah.. i asked the question in #rust, but it's even slower there hehe
19:07:57  <pfox___>of course, the best answer is to, whever possible, just steal/adapt someone else's API
19:08:32  <isaacs>piscisaureus_: thanks for catching the memleak thing. i'm going to cut a new 0.6.16 on Monday morning.
19:08:35  <pfox___>anyways, i gotta jet. thanks for listening.
19:10:45  * piscisaureus__joined
19:10:49  * piscisaureus_quit (Read error: Connection reset by peer)
19:10:55  <piscisaureus__>pfox___: np. ttyl
19:11:01  <piscisaureus__>isaacs: yeah. I feel kinda bad about it.
19:16:14  <isaacs>piscisaureus__: no worries, totally normal :) that's why we usually don't add stuff in a stable branch.
19:17:08  <mmalecki>console.timeEnd should throw when there's no such label, I think
19:17:32  <mmalecki>I just got mindfucked when it told me that my code took NaN ms
19:17:42  <mmalecki>opinions?
19:19:18  * dshaw_joined
19:19:56  <bnoordhuis>do people actually use console.timeEnd?
19:21:01  <mmalecki>benchmarks, yeah
19:21:13  <mmalecki>we can even remove it, I guess
19:21:25  <mmalecki>it can be easily implemented as a module
19:22:51  * arlolrajoined
19:24:06  <bnoordhuis>remove, remove... deprecate first
19:24:18  <mmalecki>be a man, Ben.
19:24:54  <bnoordhuis>the last time i did that, i had to come to court
19:25:28  * loladiroquit (Ping timeout: 246 seconds)
19:25:50  <bnoordhuis>i guess throwing is the right thing to do if the label doesn't exist
19:27:03  <mmalecki>cool
19:27:19  <mmalecki>do we have any commits from height of 10 000 meters already, btw?
19:28:32  <bnoordhuis>actually, i think we do
19:28:55  <mmalecki>bummer!
19:29:03  <mmalecki>so now I need to go to the outer space?
19:31:03  * txdvquit (Read error: Connection reset by peer)
19:34:21  * Ariajoined
19:39:54  * loladirojoined
19:43:14  * pfox___quit (Ping timeout: 245 seconds)
19:44:52  <bnoordhuis>piscisaureus__: what happens if you call uv_dlerror() twice in a row?
19:45:20  <bnoordhuis>i guess it returns the same error message
19:45:37  <piscisaureus__>bnoordhuis: yeah
19:45:39  <piscisaureus__>it does
19:45:44  <bnoordhuis>which means uv-unix needs some extra smarts
19:45:53  <bnoordhuis>because the second call returns NULL
19:45:56  <piscisaureus__>bnoordhuis: or we just say that people should not do it
19:46:07  <piscisaureus__>bnoordhuis: this is a thread local btw
19:46:16  <bnoordhuis>yeah, i can't do that portably
19:46:26  <bnoordhuis>but i can hack something up with pthreads
19:46:51  <piscisaureus__>bnoordhuis: are there no TLS slots?
19:46:58  <piscisaureus__>on windows you have those
19:47:03  <bnoordhuis>no
19:47:11  <bnoordhuis>gcc has __thread but that doesn't work on os x
19:47:51  <bnoordhuis>i'll fix it in uv-unix, it's not complicated
19:47:56  <piscisaureus__>bnoordhuis: no I mean: windows has TLSAlloc() and TLSGet()
19:48:23  <bnoordhuis>that's what i mean with pthreads, pthread_getspecific() and pthread_setspecific()
19:48:37  <piscisaureus__>ah
19:48:38  <piscisaureus__>ok
19:48:40  <bnoordhuis>which are awfully non-descript function names if you ask me
19:48:56  <piscisaureus__>do you also have pthread_getsomething?
19:49:02  <piscisaureus__>pthread_getunspecified?
19:49:20  <piscisaureus__>pthread_whatever()
19:49:22  <piscisaureus__>that would be nice
19:53:17  <bnoordhuis>pthread_getrandom()
19:53:23  <bnoordhuis>(i kid)
19:53:52  <bnoordhuis>are you going koninginnenachten?
19:54:20  <bnoordhuis>the streets are positively crowded here
19:54:33  <piscisaureus__>bnoordhuis: no, I am going to *dag
19:54:39  <piscisaureus__>bnoordhuis: in amsterdam
19:54:50  <piscisaureus__>nach is only interesting in the hague
19:55:48  <bnoordhuis>and gouda, apparently
19:56:30  * felixgejoined
20:04:08  * pfox___joined
20:04:53  <bnoordhuis>piscisaureus__: i think we should store dlopen error messages in uv_lib_t
20:05:20  <piscisaureus__>bnoordhuis, ah, that works
20:05:36  <piscisaureus__>bnoordhuis: kinda nice, actually
20:05:41  <piscisaureus__>bnoordhuis: or in uv_err_t :-)
20:05:41  <bnoordhuis>i know, right?
20:05:52  <bnoordhuis>i'll work on that
20:06:11  <bnoordhuis>that means we can also do away with uv_dlerror_free()
20:06:25  <piscisaureus__>bnoordhuis: uhhh, how?
20:06:27  * mralephquit (Quit: Leaving.)
20:06:48  <piscisaureus__>bnoordhuis: I don't think we can detect uv_lib_t going out of scope
20:07:01  <bnoordhuis>piscisaureus__: people need to call uv_dlclose() right?
20:07:11  <piscisaureus__>bnoordhuis: uhh, do they?
20:07:26  <bnoordhuis>piscisaureus__: if they don't, there's a potential minor memory leak
20:07:41  <piscisaureus__>bnoordhuis: make up something nice. I trust you can do it
20:07:48  <bnoordhuis>why, thanks :)
20:10:29  <mmalecki>gl
20:10:35  <mmalecki>ugh
20:12:33  * arlolraquit (Quit: Linkinus - http://linkinus.com)
20:15:23  <mmalecki>bnoordhuis: I keep forgetting, test in a seperate commit?
20:23:15  <bnoordhuis>mmalecki: no, same commit
20:23:21  <bnoordhuis>makes it easy to revert changes
20:26:44  <mmalecki>there you go https://github.com/joyent/node/pull/3188
20:27:05  <bnoordhuis>can you review it yourself?
20:27:21  <mmalecki>sure, give me commit rights
20:27:25  <mmalecki>lgtm
20:27:48  <bnoordhuis>cool, merging
20:28:03  <mmalecki>great, thanks
20:29:33  <CIA-155>node: Maciej Małecki master * r77c18d1 / (lib/console.js test/simple/test-console.js):
20:29:33  <CIA-155>node: console: throw when no such label exists in `console.timeEnd`
20:29:33  <CIA-155>node: Test included. - http://git.io/5SV3UA
20:30:58  <mmalecki>this could go into v0.6, if you still care about v0.6
20:32:13  <bnoordhuis>it's a change in behavior so no
20:32:46  <bnoordhuis>that reminds me, can you add a blurb to the v0.6 -> v0.8 wiki page documenting that console.timeEnd now throws
20:33:10  <bnoordhuis>i doubt anyone really cares but that way i can at least say it's documented :)
20:33:21  <mmalecki>sure
20:33:37  <mmalecki>oh, this page evolved nicely :)
20:36:08  * c4milojoined
20:42:04  * brsonjoined
20:44:38  * arlolrajoined
20:45:29  * piscisaureus__quit (Quit: ~ Trillian Astra - www.trillian.im ~)
20:59:43  * c4miloquit (Ping timeout: 244 seconds)
21:00:31  * pfox___quit (Ping timeout: 265 seconds)
21:01:44  * arlolraquit (Quit: Linkinus - http://linkinus.com)
21:04:27  <mmalecki>https://github.com/joyent/node/issues/3189 what do you guys think?
21:15:20  <bnoordhuis>yes, it's a shortcoming in the current api
21:16:06  <mmalecki>fix ALL the APIs!
21:16:25  <mmalecki>right now I'll just socket.write('HTTP ...')
21:17:18  <mmalecki>so, let's talk about actually fixing it
21:17:45  <mmalecki>making Upgrade request go to the request handler would get messy
21:18:47  <bnoordhuis>what are you proposing?
21:20:14  <mmalecki>yeah, that's the problem, not sure how to fix it. on('upgradeRequest') ?
21:20:43  <bnoordhuis>and then what?
21:20:55  * theColejoined
21:21:27  <mmalecki>dunno, we dance and cherish node?
21:21:41  <mmalecki>this event is a bad idea actually
21:42:11  * mikealquit (Quit: Leaving.)
21:48:38  <bnoordhuis>ircretary: tell piscisaureus https://github.com/bnoordhuis/libuv/compare/dlopen
21:48:38  <ircretary>bnoordhuis: I'll be sure to tell piscisaureus
21:55:06  * pieternjoined
21:55:26  * pieternquit (Client Quit)
21:55:40  * pieternjoined
21:57:00  * rendarquit
22:11:31  * isaacsquit (Remote host closed the connection)
22:18:03  * felixgequit (Quit: felixge)
22:22:19  * mmaleckichanged nick to mmalecki[zzz]
22:26:32  * mikealjoined
22:30:05  * mikealquit (Client Quit)
22:35:28  * dshaw_quit (Quit: Leaving.)
22:51:48  * isaacs_mobilejoined
23:06:26  * isaacsjoined
23:06:47  * isaacs_mobilequit (Remote host closed the connection)
23:53:38  * isaacsquit (Remote host closed the connection)