00:00:15  <paddybyers>txdv: why?
00:00:16  <txdv>this is madness
00:01:06  <txdv>node-ncurses uses ev_ functionality, specifically the read_watcher functionality of ev which indicates that a filedescriptor(stdin in this case) has something to read so that node-ncurses can use getch from the ncurses library to actually get the data
00:02:56  * pieternjoined
00:03:29  <bnoordhuis>txdv: let's discuss it tomorrow, i'm afk
00:03:57  <txdv>k
00:04:56  * isaacsquit (Remote host closed the connection)
00:05:24  <piscisaureus__>txdv: it is for master right, we will not break ncurses on 0.6
00:05:47  <piscisaureus__>txdv: eventually we want to make all libev stuff private and extensions should only use libuv
00:06:05  <piscisaureus__>txdv: so probably we should add something to libuv that caters for whatever node-ncurses needs
00:06:32  <txdv>piscisaureus__: in that case read_watcher functionality should be made available for libuv
00:06:42  <paddybyers>piscisaureus__: then you're into the murky business of patching libev
00:06:59  <paddybyers>unless you unconditionally extern everything in ev.c
00:07:23  <piscisaureus__>paddybyers: what do you mean?
00:07:49  <txdv>https://github.com/txdv/libuv/commit/409c9419d6c7f82f4f416a6a766c675588b43fd6 // this is a quick hack of what the node-curses lib needs, but i am working on a nicer solution
00:08:03  <piscisaureus__>paddybyers: if the visibility patch is applied to master then ncurses won't be affected
00:08:14  <paddybyers>I understand that node is very reluctant to maintain patches to libev, and getting them upstreamed is hard
00:09:01  <paddybyers>piscisaureus__: yes, understood, I can do the PR for node/master and libuv/master and then leave it to you lot to sort out :)
00:10:11  * pieternquit (Quit: pietern)
00:14:22  <txdv>paddybyers: why do you need that visibility stuff for the android node build?
00:14:56  <paddybyers>txdv: because the toolchain sets visibility=hidden by default
00:15:57  <txdv>awesome toolchain
00:17:21  <txdv>so the visibility affects static libraries too?
00:22:58  <paddybyers>txdv: yes
00:30:37  * piscisaureus__quit (Quit: ~ Trillian Astra - www.trillian.im ~)
00:33:58  * piscisaureus_joined
00:34:24  * piscisaureus_quit (Client Quit)
00:44:49  * bnoordhuisquit (Ping timeout: 252 seconds)
00:48:44  * isaacsjoined
00:50:34  * isaacsquit (Remote host closed the connection)
00:51:29  * isaacsjoined
00:51:54  * mikealquit (Quit: Leaving.)
00:54:30  * mikealjoined
01:11:46  * paddybyersquit (Ping timeout: 240 seconds)
01:15:44  * mikealquit (Quit: Leaving.)
01:36:18  * piscisaureus_joined
01:36:31  * piscisaureus_quit (Client Quit)
01:38:25  * isaacsquit (Remote host closed the connection)
02:11:19  * paddybyersjoined
02:13:39  <CIA-115>libuv: Igor Zinkovsky master * r94a5c7b / (3 files in 2 dirs): fix warnings in windows build - http://git.io/XWSNoQ
02:15:16  * travis-cijoined
02:15:16  <travis-ci>[travis-ci] joyent/libuv#26 (master - 94a5c7b : Igor Zinkovsky): The build is still failing.
02:15:16  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/e8494dd...94a5c7b
02:15:16  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/509907
02:15:16  * travis-cipart
02:22:51  * logicalp_joined
02:22:51  * logicalp_quit (Client Quit)
02:27:05  * mikealjoined
02:29:07  * dshaw_quit (Ping timeout: 240 seconds)
02:39:31  * mikealquit (Quit: Leaving.)
03:03:55  * benviequit
03:04:43  * mattstevensjoined
03:08:56  * dapquit (Quit: Leaving.)
03:24:28  * dapjoined
03:26:07  <CIA-115>libuv: Igor Zinkovsky v0.6 * r8557644 / (src/win/fs.c src/win/internal.h src/win/util.c): windows: improve uv_fs_stat performance (by about 60%) - http://git.io/tPBLtA
03:27:30  * travis-cijoined
03:27:30  <travis-ci>[travis-ci] joyent/libuv#27 (v0.6 - 8557644 : Igor Zinkovsky): The build is still failing.
03:27:30  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/803f5a0...8557644
03:27:30  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/510044
03:27:30  * travis-cipart
03:45:08  <CIA-115>node: Igor Zinkovsky v0.6 * r247d0da / (3 files):
03:45:09  <CIA-115>node: update libuv to 855764406e
03:45:09  <CIA-115>node: fixes #2521 - http://git.io/BWzRDg
03:52:41  * travis-cijoined
03:52:41  <travis-ci>[travis-ci] joyent/node#229 (v0.6 - 247d0da : Igor Zinkovsky): The build passed.
03:52:41  <travis-ci>[travis-ci] Change view : https://github.com/joyent/node/compare/07701e7...247d0da
03:52:41  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/node/builds/510076
03:52:41  * travis-cipart
03:54:29  * mattstevensquit (Quit: mattstevens)
03:54:35  * benviejoined
03:55:40  * bradleymeckjoined
04:10:34  * TooTallNatequit (Quit: Linkinus - http://linkinus.com)
05:21:51  * dshaw_joined
05:30:33  * isaacsjoined
05:32:23  <CIA-115>node: koichik master * r7dffbaf / (3 files in 2 dirs): (log message trimmed)
05:32:23  <CIA-115>node: http: Upgrade/CONNECT request should detach its socket earlier
05:32:23  <CIA-115>node: With Upgrade or CONNECT request, http.ClientRequest emits 'close' event
05:32:23  <CIA-115>node: after its socket is closed. However, after receiving a response, the socket
05:32:23  <CIA-115>node: is not under management by the request.
05:32:23  <CIA-115>node: http.ClientRequest should detach the socket before 'upgrade'/'connect'
05:32:24  <CIA-115>node: event is emitted to pass the socket to a user. After that, it should
05:38:06  * bradleymeckquit (Ping timeout: 240 seconds)
05:44:16  * travis-cijoined
05:44:16  <travis-ci>[travis-ci] joyent/node#230 (master - 7dffbaf : koichik): The build is still failing.
05:44:16  <travis-ci>[travis-ci] Change view : https://github.com/joyent/node/compare/71ae175...7dffbaf
05:44:16  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/node/builds/510363
05:44:16  * travis-cipart
06:19:16  * indutnyjoined
06:19:30  <indutny>ryah: yt?
06:23:30  <isaacs>indutny: what's the status of http://codereview.chromium.org/9148006/?
06:23:42  <isaacs>any idea when it'll land?
06:23:46  <indutny>isaacs: pulled in master
06:23:53  <isaacs>orly!
06:23:54  <isaacs>great.
06:23:55  <indutny>isaacs: bleeding_edge actually
06:24:01  <isaacs>can we port into 3.6?
06:24:07  <indutny>isaacs: I already ported
06:24:17  <isaacs>ok, cool
06:24:20  <indutny>isaacs: http://codereview.chromium.org/9190001/
06:24:23  <isaacs>is that gonna land in v8 e.6?
06:24:54  <isaacs>oic, ec lgtm'ed it with 2 minor issues, looks like
06:24:58  <isaacs>great, glad to see that's moving
06:25:27  <indutny>isaacs: yeah, I fixed that issues. waiting for ErikCorry2 to pull it
06:25:59  <indutny>Irssi has crushed while I was sleeping
06:26:12  <indutny>was ryah online this evening?
06:26:18  <isaacs>i dunno
06:26:23  * isaacshas been at heroku waza
06:26:56  <indutny>k, anyway thank you!
06:29:18  * dshaw_quit (Quit: Leaving.)
06:31:45  <indutny>isaacs: Erik said he'll commit it today
06:39:33  * mikealjoined
06:42:19  <isaacs>bam.
06:42:27  <isaacs>indutny: you rock, man. thanks.
06:58:14  * paddybyersquit (Quit: paddybyers)
06:58:15  * mikealquit (Quit: Leaving.)
06:58:58  * paddybyersjoined
07:14:08  * isaacsquit (Remote host closed the connection)
07:39:20  * mikealjoined
08:22:29  * slaskisjoined
09:15:03  * piscisaureus_joined
09:31:49  * piscisaureus_quit (Ping timeout: 240 seconds)
10:12:05  <txdv>how does that queue_data macro work :/
10:39:03  <txdv>what does a exit code 11 mean?
10:39:06  <txdv>in the tests
10:39:34  <indutny>hm...
10:39:38  <indutny>how do you get it?
10:40:39  <indutny>txdv: looks like it is used here https://github.com/joyent/node/blob/master/src/node.cc#L2182
10:41:09  <indutny>txdv: prob happens when src/node.js throw
11:02:45  <indutny>s/throw/throws
11:17:28  * CoverSlidequit (Read error: Connection reset by peer)
11:21:33  * igorziquit (Ping timeout: 258 seconds)
12:02:01  <indutny>ryah: yt?
13:16:29  * bnoordhuisjoined
13:37:31  * piscisaureus_joined
13:37:38  <piscisaureus_>bnoordhuis: hey
13:38:16  * piscisaureus_changed nick to piscisaureus
13:45:04  <CIA-115>node: Ben Noordhuis v0.6 * r465e22e / doc/api/vm.markdown : docs: clarify filename argument of vm.* functions - http://git.io/80dyvQ
13:50:25  * ErikCorryV8joined
13:52:55  * travis-cijoined
13:52:55  <travis-ci>[travis-ci] joyent/node#231 (v0.6 - 465e22e : Ben Noordhuis): The build passed.
13:52:55  <travis-ci>[travis-ci] Change view : https://github.com/joyent/node/compare/247d0da...465e22e
13:52:55  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/node/builds/511583
13:52:55  * travis-cipart
13:54:36  <bnoordhuis>piscisaureus: ho
13:55:19  * AndreasMadsenjoined
14:04:25  * cryptixjoined
14:06:54  <cryptix>hi, im trying to build node 0.6.7 with buildroot for our arm devices. i get an error during the deps/uv part.
14:08:13  <cryptix>here is a log of the build http://paste.pocoo.org/show/533775
14:09:15  <cryptix>i thought i might have to pass the proper include path but it's not passed onto the libuv compilation.. that's why i came here
14:12:16  <CIA-115>node: Nathan Rajlich master * r9ff86a2 / node.gyp :
14:12:16  <CIA-115>node: build: set `process.platform` to "darwin" on OS X
14:12:16  <CIA-115>node: This is consistent with the old waf build system, and doesn't break old scripts
14:12:16  <CIA-115>node: that are expecting the value to be "darwin".
14:12:16  <CIA-115>node: Fixes #2518. - http://git.io/0fAYZA
14:12:17  <CIA-115>node: Nathan Rajlich master * rf2ba4ce / node.gyp :
14:12:18  <CIA-115>node: build: remove the old -DPLATFORM="mac" define
14:12:18  <CIA-115>node: To prevent redefinition warnings. - http://git.io/xlY9SQ
14:23:57  * travis-cijoined
14:23:57  <travis-ci>[travis-ci] joyent/node#232 (master - f2ba4ce : Nathan Rajlich): The build is still failing.
14:23:57  <travis-ci>[travis-ci] Change view : https://github.com/joyent/node/compare/7dffbaf...f2ba4ce
14:23:57  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/node/builds/511652
14:23:57  * travis-cipart
14:29:09  <cryptix>oh well.. might also be the fact that UCLIBC_HAS_IPV6 is not set
14:39:34  <cryptix>nop.. still failing :<
14:48:40  <indutny>hi everyone
14:49:10  <cryptix>hi indutny
14:51:53  <bnoordhuis>cryptix: what version of linux is that?
14:52:27  <cryptix>bnoordhuis: linux kernel is 2.6.35
14:53:11  <bnoordhuis>cryptix: the problem seems to be that your kernel headers don't have ipv6 support
15:04:25  <bnoordhuis>cryptix: what does `grep -r in6addr_any /usr/include` print on that system?
15:05:49  <cryptix>usr/include/netinet/in.h:extern const struct in6_addr in6addr_any; /* :: */
15:07:18  <cryptix>that's from the cross compiling 'root', though
15:07:25  <CIA-115>libuv: Ben Noordhuis v0.6 * r52fba1a / src/unix/udp.c : unix: fix compiler warning - http://git.io/bhB3kw
15:08:49  * travis-cijoined
15:08:49  <travis-ci>[travis-ci] joyent/libuv#28 (v0.6 - 52fba1a : Ben Noordhuis): The build is still failing.
15:08:49  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/8557644...52fba1a
15:08:49  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/511902
15:08:49  * travis-cipart
15:12:29  <bnoordhuis>cryptix: hmm, we include that file
15:12:53  <bnoordhuis>cryptix: are there #ifdef guards around in6addr_any?
15:18:58  <cryptix>bnoordhuis: indeed... (#ifdef __UCLIBC_HAS_IPV6__) but i enabled ipv6 in uclibc... i'll double check and rebuild
15:19:35  * einarosjoined
15:27:01  * isaacsjoined
15:30:29  <mrb_bk>bnoordhuis: hey hey here's that PR for the udp stuff https://github.com/joyent/node/pull/2522
15:35:45  <cryptix>no success yet but i need to quit now. thanks for the suggestions bnoordhuis
15:35:48  * cryptixquit (Quit: leaving)
15:35:58  <piscisaureus>ErikCorryV8: are globals slow in v8?
15:38:45  <indutny>piscisaureus: that depends
15:39:19  <indutny>piscisaureus: accessing globals is done by dictionary lookup
15:39:40  <indutny>piscisaureus: slower than context
15:39:52  <indutny>piscisaureus: and a way slower than in current context or arguments
15:41:37  * bnoordhuisquit (Quit: leaving)
15:43:17  * bnoordhuisjoined
15:53:28  <bnoordhuis>mrb_bk: i'd be happier if stream_wrap and udp_wrap share the slab allocator code
15:54:28  <bnoordhuis>mrb_bk: wait, i'll reply on the PR
16:01:49  <ErikCorryV8>piscisaureus: Crankshaft makes globals access pretty fast.
16:02:09  <ErikCorryV8>If for some reason you can't crankshaft a function (eg try catch) then it's quite slow.
16:02:32  <indutny>ErikCorryV8: how does it do?
16:02:46  <indutny>ErikCorryV8: it should be a dictionary access anyway, right?
16:03:09  <ErikCorryV8>The globals are done as a dictionary.
16:03:20  <ErikCorryV8>The keys in the dict are strings (symbols)
16:03:37  <indutny>:)
16:03:45  <ErikCorryV8>The values in the dict are little 'cells' which are boxed with one object pointer in them.
16:03:58  <ErikCorryV8>Crankshaft will inline a reference to the cell in the code.
16:04:08  <ErikCorryV8>Unoptimized code can't do that'
16:04:19  <indutny>ErikCorryV8: ok, so that's just inline cache
16:04:28  <ErikCorryV8>So it does a read from the cell, which is a mov insn from memory.
16:04:47  <ErikCorryV8>Then compares the obtained value with the_hole in case the global was deleted (yay JS)
16:04:56  <ErikCorryV8>then that's it.
16:05:08  <ErikCorryV8>For a write you read, check for the hole, then write.
16:05:19  <indutny>ErikCorryV8: write barrier
16:05:20  <ErikCorryV8>If you see the hole you deoptimize.
16:05:22  <indutny>ErikCorryV8: right?
16:05:26  <ErikCorryV8>No write barrier any more.
16:05:41  <ErikCorryV8>That was removed in December. The cells are all scanned at GC time.
16:05:46  <ErikCorryV8>There are normally not a lot of them.
16:05:50  <indutny>ErikCorryV8: oh, cool!
16:06:00  <indutny>ErikCorryV8: I thought that was partial remova
16:06:01  <ErikCorryV8>But in node there are no globals, right?
16:06:03  <indutny>s/remova/removal
16:06:07  <indutny>ErikCorryV8: there're few
16:06:10  <ErikCorryV8>They are all in a function?
16:06:12  <indutny>ErikCorryV8: process
16:06:38  <indutny>setTimeout, setInterval,...
16:06:59  <ErikCorryV8>Unoptimized code has to work for more than one context (iFrame, set of builtins)
16:07:19  <ErikCorryV8>So it can't inline a reference to the cell, because it doesn't know which global object it is working with.
16:07:33  <ErikCorryV8>But Crankshafted code is per-context (iFrame, global) so it doesn't care.
16:07:48  <ErikCorryV8>We just generate it again if the function is used heavily in a different context.'
16:09:03  <indutny>ErikCorryV8: anyway it'll require relocation lookup
16:09:23  <indutny>ErikCorryV8: while local variables will be put in registers
16:09:43  <indutny>ErikCorryV8: or am I wrong?
16:09:54  <ErikCorryV8>On GC you have to traverse the relocation stuff. There will be a reloc entry for the cell so that its liveness can be tracked.
16:10:25  <ErikCorryV8>There may be a reloc entry for the hole value, too, though it's a waste, since it's immortal and immovable and so the GC doesn't have to care.
16:10:35  <ErikCorryV8>I don't think we can register alloc globals.
16:10:48  <indutny>ErikCorryV8: yeah, that's what I meant
16:10:54  <ErikCorryV8>MrAleph would know.
16:10:55  <indutny>ok, cool
16:11:19  <ErikCorryV8>But I'm not sure that we register alloc outer vars from enclosing functions either.
16:11:44  <ErikCorryV8>And of course the branch and compare against the hole is not needed of rlocals.
16:11:48  <mrb_bk>bnoordhuis: thanks! replied
16:11:55  <ErikCorryV8>Because you can't delete those.
16:12:16  <ErikCorryV8>Unless they decide to add that at some point :-)
16:12:26  <indutny>ErikCorryV8: even more if variables from outer function are used inside inner one
16:12:49  <indutny>ErikCorryV8: they'll be moved into context for both outer and inner
16:12:55  <indutny>ErikCorryV8: AFAIK
16:14:07  <ErikCorryV8>Yes.
16:14:52  <ErikCorryV8>Note that this is a completely different use of the word 'context' to the one I used above, where it meant global-object-and-its-associated-intrinsics-like-Array-and-Object.
16:14:58  <ErikCorryV8>We like to reuse words.
16:15:11  <ErikCorryV8>I think context is used in 4 different ways in the V8 code base.
16:15:20  <ErikCorryV8>You have to know the context to understand it...
16:15:54  <indutny>ErikCorryV8: yeah, term definitions are so vague
16:16:54  <indutny>and every software engineer likes introducing a new one
16:17:08  <indutny>and often picking up name of used one by occasion
16:17:12  <indutny>or intentionally
16:17:14  <indutny>:)
16:18:00  <ErikCorryV8>Over 1000 line diff for the templatization of NumberDictionary so far.
16:18:07  <indutny>ErikCorryV8: ohhh
16:18:12  <indutny>ErikCorryV8: I expected that
16:29:28  * CoverSlidejoined
16:33:44  * AndreasMadsenquit (Remote host closed the connection)
16:35:26  <CIA-115>node: mrb v0.6 * rbd9fa2e / src/udp_wrap.cc :
16:35:26  <CIA-115>node: dgram: use slab memory allocator
16:35:26  <CIA-115>node: Change udp memory allocation scheme from uv_buf_init to slab allocation. Takes
16:35:26  <CIA-115>node: slab allocation scheme from stream_wrap. - http://git.io/DUrgmg
16:37:55  <ErikCorryV8>Got to love linker error messages:
16:38:04  <ErikCorryV8>code-stubs.cc:(.text._ZN2v88internal8CodeStub7GetCodeEv+0x313): undefined reference to `v8::internal::Handle<v8::internal::NumberDictionary<(v8::internal::IsSeeded)0> > v8::internal::Factory::DictionaryAtNumberPut<(v8::internal::IsSeeded)0>(v8::internal::Handle<v8::internal::NumberDictionary<(v8::internal::IsSeeded)0> >, unsigned int, v8::internal::Handle<v8::internal::Object>)'
16:38:22  <ErikCorryV8>Simple and clear, tells you exactly what you need to know
16:39:56  <isaacs>ErikCorryV8: what part of "_ZN2v88internal8CodeStub7GetCodeEv+0x313" don't you understand?
16:40:03  <isaacs>i'm not sure how it could be more specific.
16:43:02  * travis-cijoined
16:43:02  <travis-ci>[travis-ci] joyent/node#233 (v0.6 - bd9fa2e : mrb): The build passed.
16:43:02  <travis-ci>[travis-ci] Change view : https://github.com/joyent/node/compare/465e22e...bd9fa2e
16:43:02  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/node/builds/512350
16:43:02  * travis-cipart
16:48:48  <indutny>isaacs: linker + templates = hell of C++
16:52:14  * mikealquit (Quit: Leaving.)
16:52:41  <indutny>ryah: yt?
16:55:33  * mikealjoined
17:06:57  * slaskisquit (Quit: slaskis)
17:11:09  * bradleymeckjoined
17:17:15  * bnoordhuisquit (Quit: leaving)
17:24:26  * piscisaureusquit (Ping timeout: 240 seconds)
17:26:20  * dshaw_joined
17:40:45  * mikealquit (Quit: Leaving.)
17:40:57  * mikealjoined
17:41:07  * mikealquit (Client Quit)
17:41:46  * isaacschanged nick to dshaw__
17:41:59  * dshaw__changed nick to isaacs
17:43:24  * isaacsquit (Remote host closed the connection)
17:55:39  * mikealjoined
17:55:43  * AndreasMadsenjoined
17:59:58  * mikealquit (Ping timeout: 252 seconds)
18:06:46  * slaskisjoined
18:13:39  * AndreasMadsenquit (Remote host closed the connection)
18:20:31  * dshaw_quit (Ping timeout: 252 seconds)
18:21:59  * dshaw_joined
18:24:07  * `3rdEdenjoined
18:27:07  * isaacsjoined
18:29:50  * AndreasMadsenjoined
18:35:09  * AndreasMadsenquit (Remote host closed the connection)
18:37:40  * AndreasMadsenjoined
18:37:42  <isaacs> good morning
18:38:25  <indutny>monring
18:38:30  <indutny>s/monring/morning
18:39:46  <isaacs>ErikCorryV8: what's the status of 9190001?
18:40:05  <isaacs>ErikCorryV8: http://codereview.chromium.org/9190001/
18:41:18  <isaacs>ErikCorryV8, indutny: is that going to land in 3.6, or would you recommend we just float it?
18:41:46  <indutny>isaacs: it'll land, but it needs to be fixed
18:41:59  <indutny>isaacs: tests are not passing in debug mode ( assertion fails)
18:42:05  <isaacs>indutny: tests in v8, or in node?
18:42:07  <indutny>isaacs: ErikCorryV8 is reworking that patch currently
18:42:09  <indutny>isaacs: v8
18:42:14  <isaacs>ah, ok.
18:42:25  <isaacs>kewl, thanks for the update.
18:42:29  <indutny>np
18:42:58  <isaacs>i don't mean to be a pest, but people are pestering me about it, so i'm eager to release a build which can have the dos fixed.
18:44:16  <indutny>isaacs: this patch may cause bugs, better wait for it's final version
18:44:32  <isaacs>yeah
18:44:33  <isaacs>agreed
18:44:56  <isaacs>i wouldn't float without v8 core-team blessing. using the official v8 is always better.
18:47:34  <txdv>we role only with the core people
19:07:51  * TooTallNatejoined
19:10:36  * dshaw_quit (Quit: Leaving.)
19:18:55  * dshaw_joined
19:20:53  * sh1mmerquit (Quit: sh1mmer)
19:31:22  <indutny>ryah: yt?
19:31:28  <AndreasMadsen>hi
19:31:41  <indutny>hi
19:32:07  <AndreasMadsen>indutny: when will sendHandle support be added to isolates?
19:32:59  <indutny>AndreasMadsen: better ask bnoordhuis or ryah, they're responsible for isolates stuff
19:33:07  <indutny>AndreasMadsen: I hope soon :)
19:33:12  <AndreasMadsen>Oh
19:35:58  <mrb_bk>woot https://github.com/joyent/node/commit/bd9fa2e
19:37:47  <indutny>mrb_bk: congrats! :)
19:38:20  <mrb_bk>thanks! wondering if it will make it to the next 0.6x release
19:39:08  * slaskisquit (Quit: slaskis)
19:43:41  <isaacs>mrb_bk: yes, it will
19:43:44  <isaacs>mrb_bk: it's in the v0.6
19:43:46  <isaacs> branch
19:47:57  <mrb_bk>isaacs: awesome, thank you!
19:48:08  <mrb_bk>makes it easy for people using statsd to upgrade to v0.6
20:30:54  * dshaw_1joined
20:30:54  * dshaw_quit (Read error: Connection reset by peer)
21:03:05  * piscisaureus_joined
21:07:28  * kohaiquit (Remote host closed the connection)
21:07:44  * AndreasMadsenquit (Remote host closed the connection)
21:10:07  * dshaw_1quit (Ping timeout: 240 seconds)
21:12:20  * dshaw_joined
21:37:31  * mjr_joined
21:40:19  * bradleymeckquit (Ping timeout: 240 seconds)
22:01:46  <dap>I'm seeing some surprising behavior while looking for memory leaks in node v0.6.7. Running ab (just to create load) against these programs: https://gist.github.com/3a4c0a97077274c0f921. After a little while parent.js bails out with "Connection refused". I don't seem to see these under 0.4. Does this sound familiar?
22:04:21  <dap>ryah: ^
22:06:17  <dannycoates>is there a quick explanation for this? ... https://gist.github.com/1603428
22:19:22  <isaacs>dannycoates: what happens if you make it new Buffer(5), and set b[4] = 0?
22:19:36  <isaacs>not that that's correct behavior, just curious.
22:20:15  <isaacs>dannycoates: oh, wait, nvm, it actually changes the data.
22:20:29  <isaacs>that's odd.
22:21:00  <dannycoates>yes, adding 0 just adds a null byte to both
22:21:37  <isaacs>yeah
22:21:38  <isaacs>weird
22:21:54  <dannycoates>ok, so I'm not just doing something stupid then
22:22:15  <isaacs>oh, i didn't say that, necessarily ;)
22:22:19  <isaacs>but yeha, something is weird htere.
22:22:27  <isaacs>could be that utf is weird.
22:22:34  <isaacs>and we're both interpreting it wrong
22:22:55  * sh1mmerjoined
22:22:56  <rmustacc>It's probably grabbing the length incorrectly.
22:23:55  <piscisaureus_>isaacs: rmustacc: that looks like a non-bmp character to me
22:24:07  <piscisaureus_>(and dannycoates)
22:24:33  <piscisaureus_>javascript does not support non-bmp characters as it uses UCS-2
22:25:22  <isaacs>oh, right
22:25:26  <isaacs>it's utf, not UCS?
22:25:33  <piscisaureus_>it's UCS
22:25:35  <isaacs>oh, ok
22:25:46  <piscisaureus_>UTF16 *does* support non-bmp characters
22:26:00  <piscisaureus_>actually we could support it too
22:26:31  <piscisaureus_>we would have to convert it to surrogate pairs, so in javascript decoding that sequence of byte would result in a 2-character string
22:26:44  <piscisaureus_>but v8 does not support that and we never added it ourselves
22:28:24  <dannycoates>so is there a proper way to pass these characters through a JSON.parse (for instance) cleanly?
22:28:26  <isaacs>anyone have any objection to this? https://skitch.com/isaacschlueter/g2kbg/docs-button
22:29:15  <piscisaureus_>dannycoates: Unfortunately, there is not I am afraid
22:29:16  <mmalecki>hrm. I proposed that a while ago
22:29:46  <mmalecki>isaacs: ++, anyway
22:30:07  <piscisaureus_>dannycoates: unless you write your own JSON decoder utf8 decoder :-/
22:30:21  <isaacs>mmalecki: a few people asked for it. guillermo rauch sent me a patch for it, though :)
22:31:31  <CIA-115>node: Guillermo Rauch v0.6 * r766f609 / (doc/index.html doc/pipe.css):
22:31:31  <CIA-115>node: website: Add "Api Docs" button next to "Download"
22:31:31  <CIA-115>node: * Added Docs button and `button` class.
22:31:31  <CIA-115>node: * Refactored download button style into `.button`
22:31:31  <CIA-115>node: * Applied color overrides for download/docs buttons.
22:31:32  <CIA-115>node: * Pointed docs link to latest available docs. - http://git.io/dNekcQ
22:31:38  <piscisaureus_>isaacs: can't you make that button equally wide as the download button?
22:31:46  <isaacs>piscisaureus_: shrug.
22:32:05  <isaacs>piscisaureus_: it's kind of nice having download be a bigger target, i think
22:32:08  <isaacs>since that's the main thin
22:32:09  <isaacs>thing
22:32:36  <dannycoates>piscisaureus_: thanks :)
22:33:13  <isaacs>ErikCorryV8: ping
22:39:03  <dap>actually, this simpler program reproduces my problem on both 0.4.9 and 0.6.7: https://gist.github.com/b2a997b02f26cb3e2dde
22:40:52  * mjr_quit (Quit: mjr_)
22:41:12  * sh1mmerquit (Quit: sh1mmer)
22:42:15  <piscisaureus_>dap: the problem is that you make the connections in a for loop
22:42:52  <piscisaureus_>dap: at least that is what my gut feeling says :-)
22:43:42  <piscisaureus_>dap: because the outgoing and incoming connections share one event loop, so as long as you are making connections node won't accept any
22:43:56  <piscisaureus_>dap: so you're basically just filling up the backlog for the listening socket
22:46:00  * dappart
22:46:11  * dapjoined
22:46:41  <dap>piscisaureus_: it takes several minutes to hit the problem, so it works for a while.
22:47:00  <dap>I shouldn't be making more than "concurrency" connections at a time; after that, I wait for them to complete before starting a new one.
22:50:41  <txdv>the .listen(_, callback) gets called only once?
22:56:22  <piscisaureus_>hmm
22:56:22  <piscisaureus_>finished 1951807 requests so far
22:56:30  <piscisaureus_>this is on windows btw
22:56:50  <dap>txdv: it should only get called "when the server has been bound". I would *hope* that's only once.
22:56:53  <piscisaureus_>no sign of any issues
22:56:57  <piscisaureus_>(for me)
22:57:36  <dap>piscisaureus_: good data point. maybe an OS issue.
22:57:42  <dap>trying on MacOS now.
22:59:20  <dap>you could try my previous example (https://gist.github.com/3a4c0a97077274c0f921). was hitting it with that too.
23:00:15  <piscisaureus_>dap: btw, you are effectively making only 5 simulataneous requests
23:00:24  <mmalecki>this might sound stupid, but how should I write node.js? "Node.js" or "node.js"?
23:00:27  <piscisaureus_>dap: because you didn't bump maxSockets
23:09:11  <txdv>dap: on what operating system did you try it out?
23:12:00  <dap>txdv: illumos
23:12:12  <txdv>what is that
23:12:19  <dap>sunos
23:12:32  <dap>Son of Solaris
23:12:54  <txdv>joyent supports it
23:12:59  <txdv>and node doesnt work on it properly
23:13:00  <txdv>what a shame
23:13:00  <txdv>xD
23:13:25  <dap>I work for Joyent :) That's partly why I'm looking into this.
23:14:46  * sh1mmerjoined
23:46:30  <isaacs>txdv: yeah, actually what you're seeing is a joyent employee who works on the operating system finding issues with node on that operating system, and trying to investigate and fix them.
23:54:54  * bradleymeckjoined