00:00:54  * thr4shjoined
00:04:32  * dvv-androidquit (Remote host closed the connection)
00:04:49  * dvv-androidjoined
00:05:22  <CIA-108>node: Bert Belder v0.8 * r74872b0 / (5 files in 5 dirs): v8: upgrade to version 3.11.10.12 - http://git.io/n2gIrg
00:05:22  <CIA-108>node: Bert Belder v0.8 * rf60def5 / deps/v8/build/common.gypi : v8: reapply floating patches - http://git.io/Nq-ZsQ
00:06:57  * thr4shquit (Quit: Leaving...)
00:13:17  * dvv-androidquit (Remote host closed the connection)
00:13:34  * dvv-androidjoined
00:13:52  * c4milojoined
00:17:04  <bnoordhuis>admittedly this is a little weird
00:17:04  <bnoordhuis>$ out/Release/node -pe process.env.hasOwnProperty
00:17:05  <bnoordhuis>[Function: hasOwnProperty]
00:17:11  <bnoordhuis>$ hasOwnProperty=BAM out/Release/node -pe process.env.hasOwnProperty
00:17:11  <bnoordhuis>BAM
00:17:29  <piscisaureus_>yesa
00:17:35  <piscisaureus_>that was to be expected right
00:17:46  <bnoordhuis>i guess
00:18:09  <bnoordhuis>but then, the fact that 'hasOwnProperty' in {} is always true never ceases to amaze me either
00:19:33  <bnoordhuis>piscisaureus_, isaacs: i think we need to set v8_no_strict_aliasing=1
00:19:41  <bnoordhuis>people are reporting crashes
00:19:52  <piscisaureus_>bnoordhuis: I think this is this gcc 4.5 bug again
00:20:05  <piscisaureus_>bnoordhuis: where we need -fno-builtin-memcpy or something
00:20:17  <piscisaureus_>I don't remember what the chant was again
00:20:26  <bnoordhuis>maybe -fno-tree-sink?
00:20:27  <piscisaureus_>require('querystring').parse("hasOwnProperty=42")
00:20:29  <piscisaureus_>^-- same issue
00:20:51  <piscisaureus_>bnoordhuis: that was one of the reasons I was opposed to making process.env a normal object :-)
00:20:52  * dvv-androidquit (Remote host closed the connection)
00:21:07  <piscisaureus_>bnoordhuis: imho these things should become ES6 maps at some point
00:21:08  * dvv-androidjoined
00:21:24  <bnoordhuis>piscisaureus_: what do es6 maps do that regular objects don't?
00:21:27  <bnoordhuis>(or vice versa)
00:21:35  <piscisaureus_>bnoordhuis: they have no prototype methods :-)
00:21:44  <bnoordhuis>oh, they're like real hashes?
00:21:49  <piscisaureus_>bnoordhuis: yes
00:21:57  <bnoordhuis>good
00:21:57  <piscisaureus_>bnoordhuis: I think they can also have any type of object as a key
00:22:02  <bnoordhuis>even better
00:23:58  <piscisaureus_>bnoordhuis: process.env is beyond repair anyway:
00:23:58  <piscisaureus_>> process.env['=hello'] = 42; process.env['=hello']
00:23:58  <piscisaureus_>undefined
00:23:58  <piscisaureus_>> process.env['hello'] = undefined; process.env['hello']
00:23:58  <piscisaureus_>'undefined'
00:24:21  <bnoordhuis>hah, that's awesome
00:24:36  <bnoordhuis>piscisaureus_: btw, why do you filter out =keys on windows?
00:24:51  <piscisaureus_>bnoordhuis: I don't really. But I make them hidden because that's what windows itself does
00:24:56  <piscisaureus_>bnoordhuis: = keys are magic
00:25:02  <piscisaureus_>bnoordhuis: look at this:
00:25:04  <bnoordhuis>piscisaureus_: black or white?
00:25:25  <piscisaureus_>> process.env['=c:']
00:25:25  <piscisaureus_>'C:\\Users\\Bert Belder'
00:25:25  <piscisaureus_>> process.chdir('c:\\')
00:25:25  <piscisaureus_>undefined
00:25:25  <piscisaureus_>> process.env['=c:']
00:25:26  <piscisaureus_>'c:\\'
00:25:28  <piscisaureus_>^-- bnoordhuis
00:25:43  <mmalecki>it's always black magic when it comes to windows
00:25:51  <bnoordhuis>interesting
00:25:59  <piscisaureus_>bnoordhuis: but I need these keys to implement path.resolve() correctly
00:26:08  <piscisaureus_>e.g. to resolve "d:../here"
00:26:48  * dvv-androidquit (Remote host closed the connection)
00:27:05  * dvv-androidjoined
00:27:49  <piscisaureus_>bnoordhuis: but = keys are not filtered out on unix. But env keys just cannot have "=" in them on unix
00:28:14  <bnoordhuis>piscisaureus_: that is by and large correct
00:28:27  <piscisaureus_>bnoordhuis: if you would you would actually set another key
00:28:30  <piscisaureus_>maybe that actually happens
00:28:56  <bnoordhuis>the setenv() library function checks for = characters in the key
00:29:02  <piscisaureus_>right, ok
00:29:13  <bnoordhuis>but if you hack th environ directly, you can get away with it, of course
00:29:18  <piscisaureus_>yes
00:29:28  * xaqquit (Remote host closed the connection)
00:29:35  <piscisaureus_>but then you would have this effect:
00:29:35  <piscisaureus_>> process.env['hello=hello'] = "ben"; process.env['hello']
00:29:35  <piscisaureus_>'hello=ben'
00:29:48  <bnoordhuis>ho ho
00:30:01  <piscisaureus_>dikke lol
00:30:54  * dshaw_changed nick to dshaw
00:36:10  <piscisaureus_>bnoordhuis: I am pretty certain that we had detection for gcc 4.5 at some point
00:37:26  <piscisaureus_>bnoordhuis: ah, crap
00:37:35  <piscisaureus_>bnoordhuis: I added that to the scons build for v8
00:37:50  * dvv-androidquit (Remote host closed the connection)
00:38:07  * dvv-androidjoined
00:38:24  <piscisaureus_>bnoordhuis: https://github.com/joyent/node/blob/master/deps/v8/SConstruct#L979-992
00:39:40  <bnoordhuis>piscisaureus_: yeah. there's a check in configure too
00:40:03  * toothrchanged nick to toothrot
00:40:12  * toothrotquit (Changing host)
00:40:13  * toothrotjoined
00:40:24  <bnoordhuis>but it doesn't set v8_no_strict_aliasing
00:40:30  <piscisaureus_>bnoordhuis: aah
00:40:32  <piscisaureus_>bnoordhuis: it should :-)
00:40:59  <piscisaureus_>bnoordhuis: this user would have gotten away with it then
00:41:00  <piscisaureus_>https://groups.google.com/forum/?fromgroups#!topic/nodejs/VDx3Of7ObFU
00:45:48  * TooTallNatejoined
00:46:47  * dvv-androidquit (Remote host closed the connection)
00:47:03  * dvv-androidjoined
00:52:52  * dapquit (Quit: Leaving.)
00:56:16  <bnoordhuis>piscisaureus_: https://github.com/bnoordhuis/node/commit/5a2cc62
00:56:45  <piscisaureus_>you speak python, bnoordhuis
00:56:47  <piscisaureus_>dangerous
00:56:54  <bnoordhuis>i speak python very well
00:56:59  <bnoordhuis>hisssss hissss hissssss
00:57:10  <piscisaureus_>a bash.org classic
00:57:19  <bnoordhuis>an oldie but a goodie :)
00:58:59  <piscisaureus_>bnoordhuis: I wonder why we have different logic for strict_aliasing and v8_no_strict_aliasing
00:59:08  <piscisaureus_>bnoordhuis: but functionally, it looks good to me :-)
01:00:18  <piscisaureus_>bnoordhuis: but honestly, I think strict_aliasing can also be enabled when gcc < 4.5.0
01:00:19  * dvv-androidquit (Remote host closed the connection)
01:00:35  * dvv-androidjoined
01:01:09  <bnoordhuis>piscisaureus_: yes, maybe. that means i'll have to recompile and run make test-all
01:01:16  <bnoordhuis>so i'm going to push this commit first :)
01:02:44  <CIA-108>node: Ben Noordhuis v0.8 * r07e5877 / configure : build: disable strict aliasing in v8 with gcc 4.5.x - http://git.io/J3JxIQ
01:08:31  * thr4shjoined
01:11:42  * thr4shquit (Client Quit)
01:12:27  <piscisaureus_>oh my
01:12:29  <piscisaureus_>gpg is big
01:12:31  <piscisaureus_>:-(
01:15:44  * dvv-androidquit (Remote host closed the connection)
01:16:00  * dvv-androidjoined
01:17:48  <piscisaureus_>bnoordhuis: help me out here
01:17:54  <piscisaureus_>bnoordhuis: what type of key do I want?
01:17:57  <piscisaureus_>(1) DSA and Elgamal (default)
01:17:57  <piscisaureus_> (2) DSA (sign only)
01:17:57  <piscisaureus_> (5) RSA (sign only)
01:19:48  <bnoordhuis>piscisaureus_: i think my keys are all rsa
01:20:39  * pieternquit (Quit: pietern)
01:20:49  <bnoordhuis>piscisaureus_: apparently i'm quite outdated though
01:21:20  * thr4shjoined
01:21:47  * thr4shquit (Client Quit)
01:23:18  <bnoordhuis>piscisaureus_: or maybe i was a trend setter: http://lists.gnupg.org/pipermail/gnupg-users/2009-June/036794.html
01:23:45  <piscisaureus_>yeah, I just read it here: http://security.stackexchange.com/questions/5096/rsa-vs-dsa-for-ssh-authentication-keys
01:24:07  * dvv-androidquit (Remote host closed the connection)
01:24:24  * dvv-androidjoined
01:29:24  * dshawquit (Disconnected by services)
01:29:45  * dshaw_joined
01:33:10  <bnoordhuis>anonymous structs and unions have been adopted in c11. heresy!
01:33:21  <piscisaureus_>woooo
01:33:23  <piscisaureus_>finally
01:34:17  <bnoordhuis>it doesn't matter though, we can't use it
01:34:23  <piscisaureus_>yeah I know
01:34:25  <piscisaureus_>too bad
01:34:30  <piscisaureus_>auto_ptr ftw!
01:35:48  <piscisaureus_>oeh
01:35:56  <piscisaureus_>4096 bit key is long
01:36:32  * dvv-androidquit (Remote host closed the connection)
01:36:49  * dvv-androidjoined
01:43:29  * abraxasjoined
01:44:04  <piscisaureus_>bnoordhuis: help me out here ... how does a gpg key server work?
01:44:04  <piscisaureus_>bnoordhuis: what's stopping anyone from uploading a key that carries my name?
01:47:31  * dvv-androidquit (Remote host closed the connection)
01:47:47  * dvv-androidjoined
01:48:41  <bnoordhuis>piscisaureus_: it's public/private key encryption
01:48:50  <bnoordhuis>what you upload is the public key
01:49:00  <piscisaureus_>bnoordhuis: ok, I know
01:49:32  <piscisaureus_>bnoordhuis: what's stopping me from generating a key for info@bnoordhuis.nl ?
01:49:38  <piscisaureus_>bnoordhuis: and uploading that
01:49:43  <piscisaureus_>so other people use it :-)
01:51:11  <bnoordhuis>piscisaureus_: nothing is stopping you
01:51:28  <bnoordhuis>well, some key servers ask you to verify the key
01:51:51  <bnoordhuis>i.e. they send you an email with a 'did you just upload a key? if yes, click here' link in it
01:53:11  <bnoordhuis>piscisaureus_: https://github.com/bnoordhuis/node/commit/master
01:58:11  * mmaleckiquit (Ping timeout: 245 seconds)
01:59:17  <piscisaureus_>bnoordhuis: are you going to update libuv as well ?
01:59:21  <piscisaureus_>bnoordhuis: lgtm
01:59:21  * dvv-androidquit (Remote host closed the connection)
01:59:37  * dvv-androidjoined
01:59:43  <piscisaureus_>bnoordhuis: but you renamed the setting so it no longer propagates to libuv
02:01:01  <bnoordhuis>piscisaureus_: libuv doesn't set or unset -fstrict-aliasing
02:01:16  <piscisaureus_>oh
02:01:18  <bnoordhuis>well, maybe on mac it does - but that's unconditionally
02:02:41  <CIA-108>node: Ben Noordhuis master * r57276ae / (common.gypi configure): build: enable strict aliasing if gcc < 4.5.0 (+21 more commits...) - http://git.io/zETjhw
02:11:21  * dvv-androidquit (Remote host closed the connection)
02:11:38  * dvv-androidjoined
02:16:37  <piscisaureus_>it's time to go
02:16:39  <piscisaureus_>very much
02:17:33  <piscisaureus_>goodbye, libuv people
02:17:39  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
02:24:11  * dvv-androidquit (Remote host closed the connection)
02:24:28  * dvv-androidjoined
02:36:22  * brsonquit (Ping timeout: 246 seconds)
02:37:08  * dvv-androidquit (Remote host closed the connection)
02:37:25  * dvv-androidjoined
02:47:37  * bnoordhuisquit (Ping timeout: 245 seconds)
02:50:54  * dvv-androidquit (Remote host closed the connection)
02:51:11  * dvv-androidjoined
03:00:49  * brsonjoined
03:02:41  * dvv-androidquit (Remote host closed the connection)
03:02:58  * dvv-androidjoined
03:15:38  * dvv-androidquit (Remote host closed the connection)
03:15:55  * dvv-androidjoined
03:17:44  <isaacs>TooTallNate: you around?
03:18:15  <isaacs>TooTallNate: how hard do you think it'd be to drop a node-gyp'd addon into node core? like, if osmeone wanted to build a node bin with some stuff already in it.
03:24:53  * dvv-androidquit (Remote host closed the connection)
03:25:09  * dvv-androidjoined
03:27:27  * piscisaureus_joined
03:27:32  * piscisaureus_quit (Client Quit)
03:33:29  * dvv-androidquit (Remote host closed the connection)
03:33:46  * dvv-androidjoined
03:37:28  * isufyquit
03:38:49  * benviequit
03:39:13  * isufyjoined
03:46:49  * dvv-androidquit (Remote host closed the connection)
03:47:06  * dvv-androidjoined
03:52:39  * c4miloquit (Remote host closed the connection)
04:04:08  * dvv-androidquit (Remote host closed the connection)
04:04:24  * dvv-androidjoined
04:22:01  * dvv-androidquit (Remote host closed the connection)
04:22:18  * dvv-androidjoined
04:42:39  * dvv-androidquit (Remote host closed the connection)
04:42:55  * dvv-androidjoined
04:59:50  * mikealquit (Quit: Leaving.)
05:03:22  * mikealjoined
05:03:22  * dvv-androidquit (Remote host closed the connection)
05:03:39  * dvv-androidjoined
05:22:06  * dvv-androidquit (Remote host closed the connection)
05:22:23  * dvv-androidjoined
05:23:47  * paddybyersjoined
05:34:56  * dvv-androidquit (Remote host closed the connection)
05:35:13  * dvv-androidjoined
05:48:34  * dvv-androidquit (Remote host closed the connection)
05:48:51  * dvv-androidjoined
05:59:26  * dvv-androidquit (Remote host closed the connection)
05:59:43  * dvv-androidjoined
06:12:23  * dvv-androidquit (Remote host closed the connection)
06:12:40  * dvv-androidjoined
06:30:05  * dvv-androidquit (Remote host closed the connection)
06:30:21  * dvv-androidjoined
06:36:18  * ^3rdEdenjoined
06:43:18  * dvv-androidquit (Remote host closed the connection)
06:43:34  * dvv-androidjoined
06:49:02  * paddybyersquit (Quit: paddybyers)
06:49:16  * TooTallNatequit (Quit: Textual IRC Client: www.textualapp.com)
06:49:27  * brsonquit (Quit: leaving)
06:50:12  <indutny>isaacs: heya
06:50:29  <indutny>why isn't ReqWrap derived from ObjectWrap?
06:55:40  * dvv-androidquit (Remote host closed the connection)
06:55:56  * dvv-androidjoined
06:59:56  * stephankquit (Quit: *Poof!*)
07:12:47  * dvv-androidquit (Remote host closed the connection)
07:13:03  * dvv-androidjoined
07:13:32  * mmaleckijoined
07:18:26  <saghul>ircretary tell bnoordhuis if this: https://github.com/joyent/libuv/blob/master/include/uv.h#L1605 still applies after uv_fs_poll_t
07:18:27  <ircretary>saghul: I'll be sure to tell bnoordhuis
07:18:31  <saghul>ircretary thanks
07:18:31  <ircretary>saghul: You're welcome :)
07:22:12  * dvv-androidquit (Remote host closed the connection)
07:22:28  * dvv-androidjoined
07:34:59  * dvv-androidquit (Remote host closed the connection)
07:35:16  * dvv-androidjoined
07:45:50  * dvv-androidquit (Remote host closed the connection)
07:46:07  * dvv-androidjoined
07:57:28  * dvv-androidquit (Remote host closed the connection)
07:57:45  * dvv-androidjoined
08:02:02  * rendarjoined
08:07:45  * dvv-androidquit (Remote host closed the connection)
08:08:02  * dvv-androidjoined
08:16:02  * dvv-androidquit (Remote host closed the connection)
08:16:18  * dvv-androidjoined
08:24:26  * hz|pc2joined
08:25:11  * dvv-androidquit (Remote host closed the connection)
08:25:28  * dvv-androidjoined
08:34:22  * dshaw_quit (Quit: Leaving.)
08:35:14  * dvv-androidquit (Remote host closed the connection)
08:35:31  * dvv-androidjoined
08:40:55  * hz|pc2quit (Quit: Leaving.)
08:46:18  * dvv-androidquit (Remote host closed the connection)
08:46:34  * dvv-androidjoined
08:55:30  * dvv-androidquit (Remote host closed the connection)
08:55:42  * dvv-androidjoined
09:02:53  * dvv-androidquit (Remote host closed the connection)
09:03:10  * dvv-androidjoined
09:07:52  * hzjoined
09:10:56  * dvv-androidquit (Remote host closed the connection)
09:11:12  * dvv-androidjoined
09:25:11  * dvv-androidquit (Remote host closed the connection)
09:25:28  * dvv-androidjoined
09:37:03  * theColejoined
09:41:12  * dvv-androidquit (Remote host closed the connection)
09:41:29  * dvv-androidjoined
09:51:50  * dvv-androidquit (Remote host closed the connection)
09:52:05  * dvv-androidjoined
10:02:36  * dvv-androidquit (Remote host closed the connection)
10:02:53  * dvv-androidjoined
10:18:52  * dvv-androidquit (Remote host closed the connection)
10:19:09  * dvv-androidjoined
10:25:44  * c4milojoined
10:33:38  * dvv-androidquit (Remote host closed the connection)
10:33:54  * dvv-androidjoined
10:35:47  * mmaleckiquit (Ping timeout: 265 seconds)
10:45:09  * dvv-androidquit (Remote host closed the connection)
10:45:25  * dvv-androidjoined
10:58:33  * dvv-androidquit (Remote host closed the connection)
10:58:50  * dvv-androidjoined
11:06:56  * mmaleckijoined
11:14:56  * dvv-androidquit (Remote host closed the connection)
11:15:13  * dvv-androidjoined
11:29:48  * dvv-androidquit (Remote host closed the connection)
11:30:04  * dvv-androidjoined
11:42:09  * paddybyersjoined
11:49:02  * dvv-androidquit (Remote host closed the connection)
11:49:19  * dvv-androidjoined
11:51:56  * toothrotquit (Ping timeout: 240 seconds)
11:52:40  * toothrjoined
11:53:39  * abraxasquit (Remote host closed the connection)
12:02:02  * dvv-androidquit (Remote host closed the connection)
12:02:19  * dvv-androidjoined
12:02:45  * toothrquit (Ping timeout: 248 seconds)
12:06:10  * toothrjoined
12:07:25  * philipsquit (Excess Flood)
12:10:41  * philipsjoined
12:21:17  * dvv-androidquit (Remote host closed the connection)
12:21:34  * dvv-androidjoined
12:23:56  * toothrquit (Ping timeout: 240 seconds)
12:24:40  * toothrjoined
12:35:56  * dvv-androidquit (Remote host closed the connection)
12:36:13  * dvv-androidjoined
12:51:11  * dvv-androidquit (Remote host closed the connection)
12:51:27  * dvv-androidjoined
12:51:39  * c4miloquit (Remote host closed the connection)
13:03:59  * dvv-androidquit (Remote host closed the connection)
13:04:16  * dvv-androidjoined
13:19:02  * dvv-androidquit (Remote host closed the connection)
13:19:19  * dvv-androidjoined
13:27:56  * toothrquit (Ping timeout: 240 seconds)
13:31:10  * toothrjoined
13:34:54  * dvv-androidquit (Remote host closed the connection)
13:35:11  * dvv-androidjoined
13:36:19  * bnoordhuisjoined
13:38:40  <bnoordhuis>saghul: re https://github.com/joyent/libuv/blob/master/include/uv.h#L1605 - we may fold uv_fs_poll into uv_fs_event someday
13:39:01  <saghul>bnoordhuis I see, thanks :-)
13:39:18  <indutny>bnoordhuis: net.connect is buggy
13:39:22  <indutny>bnoordhuis: it segfaults
13:39:27  <indutny>bnoordhuis: in some cases
13:39:31  <bnoordhuis>indutny: thank you for this very precise bug report :)
13:39:46  <indutny>bnoordhuis: hahaha
13:39:56  <indutny>bnoordhuis: well, I tracked it down to ReqWrap
13:40:12  <bnoordhuis>indutny: do you have a test case i can try?
13:40:19  <indutny>and it seems that we're throwing exception somewhere after which ReqWrap instance is garbage collected
13:40:29  <indutny>bnoordhuis: yeah, you can run spdyproxy
13:40:41  <indutny>and after GC uv__close is called
13:40:45  <indutny>or some other uv stuff
13:41:08  <indutny>brb
13:41:19  <bnoordhuis>indutny: how do you know it's not a bug in spdyproxy? is that a js-only module?
13:41:36  <indutny>bnoordhuis: yes
13:41:51  <bnoordhuis>indutny: does it depend on native add-ons?
13:42:04  <indutny>nope
13:42:09  <indutny>https://gist.github.com/923ca7c40e098b4dbb82
13:42:16  <indutny>I think I may fix that
13:42:23  <indutny>but it requires some refactoring in req_wrap
13:42:56  <indutny>oh, nice
13:42:59  <indutny>gdb crashes on 'bt full'
13:43:00  <indutny>hahah
13:45:21  <indutny>or another case
13:45:36  <indutny> int r = uv_tcp_connect(&req_wrap->req_, &wrap->handle_, address,
13:45:36  <indutny> AfterConnect);
13:45:43  <indutny>bnoordhuis: should I close request in AfterConnect?
13:45:59  <indutny>uv_close((uv_handle_t*)&req->wrap->req_, NULL)
13:46:02  <bnoordhuis>indutny: yes. not before
13:46:03  * dvv-androidquit (Remote host closed the connection)
13:46:16  <bnoordhuis>indutny: oh wait, you mean in node?
13:46:19  * dvv-androidjoined
13:46:41  <indutny>bnoordhuis: haha
13:46:42  <indutny>indeed
13:46:44  <indutny>ok, bug found
13:47:57  <indutny>brb
13:48:46  <indutny>bnoordhuis: after adding uv_close https://gist.github.com/b47c1ef632552e5423ca
13:49:31  <bnoordhuis>indutny: let's get back to that in a bit, i've got 10,000 emails to reply to first
13:49:42  <indutny>ok
13:52:06  * c4milojoined
13:55:30  * piscisaureus_joined
13:58:24  * xaqjoined
13:58:26  * philipsquit (Excess Flood)
13:58:56  * dvv-androidquit (Remote host closed the connection)
13:59:13  * dvv-androidjoined
14:01:11  * philipsjoined
14:09:47  * dvv-androidquit (Remote host closed the connection)
14:10:04  * dvv-androidjoined
14:19:26  <piscisaureus_>https://github.com/joyent/node/issues/3542
14:19:41  <piscisaureus_>^-- I wonder what caused this regression. I thought module was locked :-)
14:22:13  * dvv-androidquit (Remote host closed the connection)
14:22:29  * wankdankerjoined
14:22:29  * dvv-androidjoined
14:25:02  <indutny>back
14:25:21  <bnoordhuis>forth
14:25:38  <CIA-108>libuv: Shigeki Ohtsu master * rc6f2ef2 / include/uv.h : uv.h: add members to any-union of handle and req - http://git.io/x3UeLw
14:27:37  * travis-cijoined
14:27:37  <travis-ci>[travis-ci] joyent/libuv#462 (master - c6f2ef2 : Shigeki Ohtsu): The build passed.
14:27:37  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/f3fd8e3c1bf9...c6f2ef25c62b
14:27:37  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/1711539
14:27:37  * travis-cipart
14:30:12  * ^3rdEdenquit (Quit: Linkinus - http://linkinus.com)
14:31:28  * dvv-androidquit (Remote host closed the connection)
14:31:45  * dvv-androidjoined
14:33:19  <piscisaureus_>ahaa
14:33:20  <piscisaureus_>> require('fs').realpathSync('\\\\piscisaureus\\e$\\a.js')
14:33:21  <piscisaureus_>Error: ENOENT, no such file or directory 'C:\piscisaureus'
14:35:32  * milanijoined
14:35:53  <milani>can we create threads with libuv?
14:36:32  <bnoordhuis>milani: yes
14:36:38  <bnoordhuis>check out uv_thread_create()
14:36:53  <milani>bnoordhuis, ok thx. is it in node v0.8.0 ?
14:36:58  <bnoordhuis>milani: yes
14:37:14  <bnoordhuis>milani: check out deps/uv/include/uv.h to see what's included
14:37:39  <CIA-108>node: Ben Noordhuis v0.8 * r06c82c5 / configure : build: expand ~ in `./configure --prefix=~/a/b/c` - http://git.io/IHtHCQ
14:37:49  <milani>bnoordhuis, yeah I know, I just heard that threading in libuv is experimental.
14:37:57  <milani>bnoordhuis, I wanted to make sure that it is ready for use.
14:38:06  <milani>thx.
14:39:16  * paddybyersquit (Quit: paddybyers)
14:40:33  <milani>bnoordhuis, sorry, was this threading stuff available in v0.6 of node?
14:40:59  <milani>I have a module, if I use uv_thread_create, then can people use it on older versions of node?
14:40:59  * dvv-androidquit (Remote host closed the connection)
14:41:15  * dvv-androidjoined
14:41:36  <bnoordhuis>milani: no, it got introduced in 0.7
14:41:59  <milani>ok.thx.
14:44:00  * mmaleckiquit (Ping timeout: 250 seconds)
14:46:43  * ljacksonquit (Ping timeout: 260 seconds)
14:47:16  * milanipart ("Ex-Chat")
14:47:38  * ljacksonjoined
14:50:52  * hzquit
14:51:21  * TheJHjoined
14:51:35  <piscisaureus_>One thing that was lost in the transition from 0.4 to 0.6 and libuv was the ability to listen to file descriptors. This allowed applications to listen to sockets or ports but went away in 0.6, with the most common use case, listening for other node.js processes, being handled by the cluster module. But many other use cases were not handled; now in 0.8, this functionality has returned with a new server.listen(fd) call. It is also possible to
14:51:47  * dvv-androidquit (Remote host closed the connection)
14:52:01  * dvv-androidjoined
14:52:35  <piscisaureus_>^-- The Dutch would say something about bell and clapper
15:00:42  * dvv-androidquit (Remote host closed the connection)
15:00:58  * dvv-androidjoined
15:01:38  * pieternjoined
15:05:01  <bnoordhuis>haha
15:05:25  <tjfontaine>I don't know this colloquialism
15:06:26  * dvv-androidquit (Remote host closed the connection)
15:06:43  * dvv-androidjoined
15:06:50  <deoxxa>it's something about building a bell because you have a clapper
15:07:08  <deoxxa>basically constructing purpose for something that had none beforehand (or something)
15:07:12  <bnoordhuis>tjfontaine: it's what the dutch say when they perceive that someone is speaking with more authority than they should
15:07:15  <deoxxa>(if it's the same saying i'm thinking of)
15:07:41  <tjfontaine>bnoordhuis: ah
15:14:36  * dvv-androidquit (Remote host closed the connection)
15:14:53  * dvv-androidjoined
15:21:11  * dvv-androidquit (Remote host closed the connection)
15:21:28  * dvv-androidjoined
15:21:45  <bnoordhuis>dvv-android: you go on- and offline a lot...
15:23:31  * mikealquit (Quit: Leaving.)
15:27:13  * dvv-androidquit (Remote host closed the connection)
15:27:30  * dvv-androidjoined
15:31:19  <CIA-108>node: Andreas Madsen v0.8 * r401ff10 / doc/api/child_process.markdown : doc: `detached` is a boolean - http://git.io/wcoe9w
15:35:59  <bnoordhuis>piscisaureus_: are there windows error codes similar to ENODEV on unix?
15:36:00  * dvv-androidquit (Remote host closed the connection)
15:36:17  * dvv-androidjoined
15:36:33  * piscisaureus_quit (Ping timeout: 272 seconds)
15:36:42  <CIA-108>libuv: Roman Neuhauser v0.8 * r5a0f341 / (include/uv.h src/unix/error.c): unix: map ENODEV to UV_ENODEV - http://git.io/3mr_Tw
15:36:55  <tjfontaine>bnoordhuis: dvv-android is a misbehaving bot?
15:37:11  * txdvquit (Read error: Connection reset by peer)
15:37:14  <bnoordhuis>tjfontaine: i guess it's dvv + his android irc client
15:37:19  * txdvjoined
15:37:52  <tjfontaine>bnoordhuis: whois information lists the ircname as "logger", and it doesn't respond to ctcp version, I guess my ircop senses say suspicious :)
15:38:37  <bnoordhuis>hah, so it does
15:38:46  * travis-cijoined
15:38:47  <travis-ci>[travis-ci] joyent/libuv#463 (v0.8 - 5a0f341 : Roman Neuhauser): The build passed.
15:38:47  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/d0816aae5267...5a0f3411fcce
15:38:47  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/1712131
15:38:47  * travis-cipart
15:38:59  <bnoordhuis>the problem is that this channel has no ops :/
15:39:17  <tjfontaine>moment, lemme take care of that
15:40:59  <indutny>bnoordhuis: make me an op
15:41:04  <indutny>I will kick everyone
15:41:07  * dvv-androidquit (Remote host closed the connection)
15:41:10  <indutny>everyone not related
15:41:23  * dvv-androidjoined
15:41:26  <bnoordhuis>indutny: i would if i were an op myself :)
15:42:06  <indutny>em...
15:42:11  <indutny>that's quite interesting
15:42:17  <indutny>ChanServ tells me that libuv isn't registered
15:42:37  <tjfontaine>it isn't, to register it we need to +o someone first, the 3 ops I know are idle +1 hour, I'm going to have to brave #freenode
15:42:53  <indutny>haha
15:42:55  <indutny>nice
15:43:13  <indutny>bnoordhuis: I found the source of that connect problem
15:43:41  <bnoordhuis>indutny: what is it?
15:44:59  <indutny>bnoordhuis: uv_connect calls cb
15:45:03  <indutny>bnoordhuis: even if it returns error
15:45:45  <indutny>bnoordhuis: or even more interesting
15:45:51  <indutny>bnoordhuis: it doesn't cleanup if connect has failed
15:45:57  <bnoordhuis>indutny: uv_connect or uv__connect?
15:46:19  <indutny>bnoordhuis: uv__connect
15:46:38  <indutny>bnoordhuis: yeah, stream.c:856
15:47:05  <bnoordhuis>indutny: at what version of libuv are you looking?
15:47:12  <indutny>bnoordhuis: the one that is in node 0.8.0
15:47:23  <indutny>let me paste a link here
15:47:40  <indutny>bnoordhuis: https://github.com/joyent/libuv/blob/master/src/unix/stream.c#L857
15:47:47  * dvv-androidquit (Remote host closed the connection)
15:48:00  <indutny>shouldn't we cleanup anything there?
15:48:03  <bnoordhuis>indutny: okay, we're talking about the same thing.
15:48:04  * dvv-androidjoined
15:48:15  * mikealjoined
15:48:20  <bnoordhuis>indutny: no, the caller is supposed to close the handle
15:48:44  <indutny>bnoordhuis: hm...
15:48:54  <indutny>bnoordhuis: what about request that was initiated?
15:49:00  <indutny>with uv__req_init
15:49:05  <indutny>will it be closed too?
15:49:39  <bnoordhuis>indutny: yes, it should
15:49:44  * piscisaureus_joined
15:49:51  * piscisaureus_quit (Remote host closed the connection)
15:49:53  <indutny>bnoordhuis: ok, let me try
15:50:29  <bnoordhuis>though it may arguably be better to create the req after the connect() syscall
15:51:03  <indutny>yeah
15:51:05  <bnoordhuis>yeah... there's at least one bug in there
15:51:08  <indutny>how can I close req?
15:51:28  <bnoordhuis>if you call uv_tcp_connect() when it's already busy connecting, you end up with a stray / orphaned req
15:51:32  <indutny>bnoordhuis: or should I close uv_stream_t?
15:51:38  <indutny>bnoordhuis: heh
15:51:47  <indutny>bnoordhuis: you can't do it from the same thread, right?
15:53:14  * piscisaureus_joined
15:53:14  * dvv-androidquit (Remote host closed the connection)
15:53:27  <bnoordhuis>indutny: one sec, i'll write up a patch
15:53:30  * dvv-androidjoined
15:53:57  <indutny>bnoordhuis: I want to do it too :)
15:54:06  * stephankjoined
15:54:08  <indutny>bnoordhuis: I think node is incorrectly handling bad return value
15:55:08  <piscisaureus_>bnoordhuis: what does ENODEV mean?
15:55:23  <piscisaureus_>indutny: nobody is OP here. Is it possible to register the channel somehow?
15:55:49  * brsonjoined
15:55:49  <creationix>did we never have ops?
15:56:05  <indutny>piscisaureus_: right now no
15:56:13  <tjfontaine>creationix: no
15:56:38  <tjfontaine>right now I'm trying to call in favors, because of the ridiculous red tape around registering channels in the # "namespace"
15:56:55  <creationix>yeah, it took me a week to get ops for #luvit
15:57:19  <piscisaureus_>I will try too :-)
15:57:30  <tjfontaine>GCF/GRF is closed for now, and apparently no one ever filed one for #node.js
15:58:55  <bnoordhuis>piscisaureus_: ENODEV - no such device
15:59:05  <indutny>bnoordhuis: CO
15:59:10  * piscisaureus_changed nick to piscisaureus
15:59:19  <bnoordhuis>piscisaureus_: happens when you e.g. try to bind to a non-existing interface
15:59:30  * dvv-androidquit (Remote host closed the connection)
15:59:34  <bnoordhuis>there's probably fs ops that return that error too
15:59:45  * dvv-androidjoined
16:00:26  <piscisaureus>bnoordhuis: I get EADDRNOTAVAIL :-)
16:01:22  <bnoordhuis>piscisaureus: sorry, i mean if you bind to a non-existing device, not when you bind to a non-existing / non-local address
16:01:36  <piscisaureus>bnoordhuis: how does one "bind" to a device? open it?
16:01:49  <bnoordhuis>piscisaureus: setsockopt(SO_BINDTODEVICE)
16:02:16  <piscisaureus>I don't think that exists on windows
16:02:17  * c4miloquit (Read error: Connection reset by peer)
16:02:39  <indutny>bnoordhuis: looks like in my bug stack gets borked
16:03:19  <indutny>bnoordhuis: https://gist.github.com/bbd037e3e24e2f1ac386
16:06:20  * mikealquit (Quit: Leaving.)
16:07:48  * dvv-androidquit (Remote host closed the connection)
16:08:05  * dvv-androidjoined
16:09:10  <isaacs>good morning heroes
16:09:18  <bnoordhuis>indutny: it's calling connect_req->cb which apparently is NULL or something close to it
16:09:20  <bnoordhuis>hey isaasc
16:09:33  * piscisaureuschanged nick to isaasc
16:09:36  <isaasc>hello bnoordhuis
16:09:37  <bnoordhuis>ho ho
16:09:42  * isaascchanged nick to piscisaureus
16:09:53  <tjfontaine>piscisaureus: the issue is their group registration stuff, and an enormous amount of redtape
16:09:59  <tjfontaine>(might I suggest OFTC) :/
16:10:10  * c4milojoined
16:10:14  <indutny>bnoordhuis: 0x7
16:10:18  <indutny>that's because req object was freed
16:10:26  <piscisaureus>tjfontaine: so what's the procedure?
16:10:52  <tjfontaine>piscisaureus: there isn't one right now, new registrations are closed until they come out with the new webform version
16:10:53  <piscisaureus>tjfontaine: we have done without OPs for a long time, I am sure we can wait for anopther couple of week
16:11:00  <bnoordhuis>it's a good thing we let ryah go, that guy was such a slacker
16:11:21  <indutny>bnoordhuis: yes, I just checked - connect req was freed
16:11:27  <tjfontaine>piscisaureus: http://blog.freenode.net/2012/06/group-registration-closure/ is the related information
16:11:44  <bnoordhuis>indutny: yeah, i've spotted a couple of lifecycle issues. i'll address them today
16:11:47  <indutny>bnoordhuis: odd, because I removed all 'delete' stuff in tcp-wrap.cc
16:11:57  <indutny>bnoordhuis: so you think the problem is only on libuv's side?
16:12:00  <isaacs>bnoordhuis: https://github.com/isaacs/node/commit/e307468 lgty?
16:12:11  <bnoordhuis>indutny: maybe, maybe not. but let's start with libuv first :)
16:12:30  <bnoordhuis>isaacs: yes
16:12:54  <CIA-108>node: isaacs master * re307468 / (src/node.cc test/simple/test-process-env.js): Fix #3521 Use an object as the process.env proto - http://git.io/aRBqiQ
16:14:57  <CIA-108>node: isaacs master * r42ea37a / src/node_version.h : Now working on 0.9.0 - http://git.io/hOhjLQ
16:15:07  * dvv-androidquit (Remote host closed the connection)
16:15:24  * dvv-androidjoined
16:16:20  <bnoordhuis>^ magic happens
16:16:24  <tjfontaine>isaacs: please register the channel :)
16:17:21  <isaacs>ohhh, the power
16:17:37  <bnoordhuis>twss
16:19:26  <piscisaureus>very good
16:20:19  <indutny>ooooh
16:20:22  <indutny>is that permament?
16:20:33  <isaacs>yes
16:20:34  <tjfontaine>until you do something wrong :)
16:20:37  <indutny>hahahaha
16:20:42  <indutny>like kicking you? :)
16:20:46  <indutny>moar power
16:20:59  <tjfontaine>well, I dont' count, I won't have any power :)
16:21:37  * dvv-androidquit (Remote host closed the connection)
16:21:39  <isaacs>tjfontaine: thanks :)
16:21:46  <tjfontaine>my pleasure
16:21:54  * dvv-androidjoined
16:22:35  <isaacs>i was thinking, simpler is better wrt policies. committers are ops. if someone does a good job keeping the peace, then op them as well.
16:22:37  * brsonquit (Ping timeout: 245 seconds)
16:22:59  <creationix>I never knew this room has issues
16:23:01  <isaacs>that's how it goes in #node.js, but of course, that's a bigger and more social room.
16:23:09  <creationix>indeed
16:23:14  <isaacs>creationix: it hasn't. this is preventative :)
16:23:23  <tjfontaine>right now the only issue is the single person join/part flood that is dvv-android
16:23:36  <piscisaureus>he's probably just not aware
16:23:38  <creationix>yeah, he's in my channels too
16:23:52  <tjfontaine>I think it's a logbot personally, based on the whois
16:23:57  <isaacs>creationix: but, when someone with a little @ next to their name tells you to stop being noisy, people listen more often :)
16:24:21  <piscisaureus>in the end, if we would really have issues in this channel we could just move to some other private hangout
16:24:26  <isaacs>yep
16:24:30  <isaacs>but that would be unfortunate.
16:24:34  <creationix>written in node!
16:24:34  <piscisaureus>I know
16:24:36  <piscisaureus>hehe
16:24:45  <piscisaureus>no, prolly just an irc channel
16:24:49  <creationix>or candor.io to be super hipster
16:26:15  * theColequit (Quit: theCole)
16:27:21  <indutny>hahaha
16:28:02  * dvv-androidquit (Remote host closed the connection)
16:28:19  * dvv-androidjoined
16:28:53  <bnoordhuis>who broke github?
16:29:01  <piscisaureus>sorry
16:29:21  <bnoordhuis>https://github.com/bnoordhuis/libuv/commit/v0.8 <- blank page
16:29:26  <bnoordhuis>https://github.com/bnoordhuis/libuv/commits/v0.8 <- works
16:30:14  <bnoordhuis>indutny: https://github.com/bnoordhuis/libuv/commit/f0b01ec
16:30:44  * dapjoined
16:30:49  * brsonjoined
16:30:54  <indutny>bnoordhuis: I'll try applying it
16:31:19  <bnoordhuis>indutny: i was hoping for a review, actually :)
16:31:51  <indutny>hahahaha
16:32:03  <indutny>bnoordhuis: I'll review by applying it
16:32:04  * theColejoined
16:32:07  <indutny>bnoordhuis: hehe :)
16:32:12  <indutny>ok, it compiles
16:32:40  <indutny>bnoordhuis: yeah, it fixes that problem
16:32:47  <bnoordhuis>cool
16:32:50  <indutny>thanks man, now I can use spdyproxy
16:32:57  <indutny>haha
16:32:58  <indutny>not really
16:33:10  <indutny>bnoordhuis: https://gist.github.com/5425409479c482af9f02
16:33:51  <indutny>ok, let me review it first
16:34:32  <bnoordhuis>indutny: try to inspect frame 1
16:34:41  * dvv-androidquit (Remote host closed the connection)
16:34:56  * dvv-androidjoined
16:35:16  <indutny>err
16:35:17  <indutny>can't reproduce it
16:35:48  <indutny>ok
16:35:48  <indutny>got it
16:35:56  <indutny>bnoordhuis: https://gist.github.com/62344b62065c83216515
16:36:24  <indutny>though it's not always reproducible
16:36:28  <indutny>I'll try uv_closing stream
16:37:25  <bnoordhuis>indutny: give me a test case
16:37:49  <bnoordhuis>i mean, pretty please
16:38:06  <indutny>bnoordhuis: well, install `npm install -g spdyproxy`
16:38:15  <bnoordhuis>indutny: yes, but then what?
16:38:16  <indutny>http://www.igvita.com/2012/06/25/spdy-and-secure-proxy-support-in-google-chrome/
16:38:17  <indutny>bnoordhuis: ^
16:38:22  <indutny>setup everything in chrome
16:38:26  <indutny>start proxy
16:38:30  <indutny>and visit pages: "www.yandex.ru"
16:38:34  <indutny>"www.habrahabr.ru"
16:38:37  <indutny>try refreshing them
16:38:41  <indutny>may be other pages work too
16:38:52  <bnoordhuis>ugh, i like my test cases shorter and simpler...
16:38:56  <indutny>hahaha
16:38:58  <indutny>bnoordhuis: me too
16:40:11  <indutny>bnoordhuis: consider adding braces here, please: https://github.com/bnoordhuis/libuv/commit/f0b01ec#L0R831?
16:40:18  <indutny>and in other places
16:40:22  <indutny>or is it our new style?
16:40:28  <bnoordhuis>indutny: yes
16:40:29  * dvv-androidquit (Remote host closed the connection)
16:40:35  <bnoordhuis>braces are for the weak
16:40:35  <indutny>I don't like it anyway
16:40:47  * dvv-androidjoined
16:40:52  <indutny>bnoordhuis: "BRACES ARE FOR THE WEAK, THIS IS SPARTA"
16:40:57  <bnoordhuis>exactly :)
16:41:29  <indutny>bnoordhuis: otherwise lgtm
16:41:33  <isaacs>bnoordhuis: why the auto-op isn't auto-opping you?
16:41:44  <bnoordhuis>isaacs: i haven't logged in
16:41:52  <isaacs>oh, you're fake, I see :)
16:41:56  <indutny>bnoordhuis: as I can see you just swapped things
16:41:56  <bnoordhuis>i have now though :)
16:42:01  <indutny>and changed order
16:42:10  <bnoordhuis>indutny: yes, that's correct
16:42:14  <indutny>if not new code style - suppose diff would be much more readable
16:42:29  <bnoordhuis>indutny: and - and i know this may surprise you - order in programming matters
16:42:37  <indutny>bnoordhuis: haha
16:42:42  <indutny>bnoordhuis: trolling all the way
16:42:47  <bnoordhuis>hehe, yeah
16:42:53  <indutny>bnoordhuis: that depends on programming language you're using
16:43:20  <bnoordhuis>indutny: i know you're referring to function languages
16:43:27  <indutny>bnoordhuis: not really
16:43:34  <indutny>order matter here too
16:43:47  <bnoordhuis>quantum programming?
16:43:48  <indutny>assembler, actually
16:43:55  <indutny>you can swap some instructions
16:43:58  <indutny>because of pipelining
16:44:05  <indutny>and other stuff
16:44:12  <bnoordhuis>yeah, you can
16:44:17  <indutny>they'll be executed in order that's more comfortable for processor
16:44:19  <bnoordhuis>'you should' is another story though
16:44:24  <indutny>yeah
16:44:33  <indutny>but quantum programming works too
16:45:03  <bnoordhuis>indutny: well, it doesn't in 99.999999% of all cases
16:45:13  <indutny>indeed
16:45:28  <bnoordhuis>but that other 0.0000001% is what you see as the result so who cares, eh?
16:45:37  <indutny>bnoordhuis: ok, back to wrk
16:45:37  * dvv-androidquit (Remote host closed the connection)
16:45:38  <bnoordhuis>okay, enough friendly banter - i'm off to dinner
16:45:47  <indutny>bnoordhuis: why can't I call uv_close from connect callback
16:45:53  * dvv-androidjoined
16:45:54  <indutny>bnoordhuis: oh, ok
16:45:56  <bnoordhuis>indutny: you can / should
16:45:59  <indutny>bnoordhuis: I can't
16:46:16  <indutny>bnoordhuis: https://gist.github.com/6567d9cda288a8d026f1
16:46:20  <bnoordhuis>indutny: you can tell me all about it in an hour or two :)
16:46:21  <bnoordhuis>biab
16:46:44  <indutny>bnoordhuis: sybbat
16:49:47  <indutny>oh, it think it is UV_ASYNC
16:55:39  * dvv-androidquit (Remote host closed the connection)
16:55:56  * dvv-androidjoined
16:57:31  <indutny>bnoordhuis: nvm, figured that out
16:57:33  <indutny>my fault
16:59:21  <indutny>bnoordhuis: another one https://gist.github.com/65b301ee16c57e24f955
17:02:47  <indutny>oh crap
17:02:53  <indutny>I had incorrectly applied your patch
17:02:54  <indutny>bnoordhuis: ^
17:02:58  <indutny>it seems to be working now
17:03:06  * dvv-androidquit (Remote host closed the connection)
17:03:23  * dvv-androidjoined
17:08:37  * brsonquit (Ping timeout: 255 seconds)
17:11:14  <indutny>bnoordhuis: yeah, it works just fine
17:11:59  * dvv-androidquit (Remote host closed the connection)
17:12:44  * dvv-androidjoined
17:13:07  * hz|pc2joined
17:23:42  * dvv-androidquit (Remote host closed the connection)
17:23:59  * dvv-androidjoined
17:24:22  <CIA-108>node: Bert Belder v0.8 * r1044848 / configure : configure: don't fail if compiler_version() doesn't work - http://git.io/qV7TxQ
17:25:56  <piscisaureus>isaacs: can you remove the +c flag from #libuv, or allow me to do it?
17:29:17  * TooTallNatejoined
17:29:20  * dvv-androidquit (Remote host closed the connection)
17:29:36  * dvv-androidjoined
17:35:02  * theColequit (Quit: theCole)
17:35:33  * dvv-androidquit (Remote host closed the connection)
17:35:50  * dvv-androidjoined
17:41:56  <isaacs>piscisaureus: what's +c?
17:42:07  <piscisaureus>isaacs: filter out colors
17:42:08  <tjfontaine>removing irc colors
17:42:14  <tjfontaine>so cia isn't as pretty
17:42:21  <piscisaureus>it no longer stands out
17:42:28  <isaacs>oh, yeah, that bites.
17:42:29  <isaacs>one sec
17:43:33  * dvv-androidquit (Remote host closed the connection)
17:43:49  * dvv-androidjoined
17:47:22  <piscisaureus>creationix: rphilips: you know that the node http module is also slated for refactor, right?
17:47:45  <creationix>yep
17:48:11  * brsonjoined
17:48:14  <creationix>piscisaureus: and we can help in developing the new API, but the current node API is better than what we had
17:48:16  <isaacs>piscisaureus: i'm not sure how to do that...
17:48:26  <isaacs>piscisaureus: chanserv help is not being very helpful :)
17:48:29  <piscisaureus>isaacs: /mode #libuv +nt
17:49:01  <piscisaureus>isaacs: maybe, /mode #libuv -c
17:49:23  <indutny>err
17:49:28  <isaacs>there we go
17:49:31  <creationix>changing APIs is still fairly painless in luvit unlike in node
17:49:31  <isaacs>just removed the mlock
17:49:33  <isaacs>just removed the mlock/
17:49:36  <isaacs>we good now?
17:49:39  <indutny>yeah
17:49:42  <piscisaureus>kewl
17:49:47  * dvv-androidquit (Remote host closed the connection)
17:49:52  <piscisaureus>lemme try if I can change bits now
17:49:56  <piscisaureus>not that it matters btw
17:50:04  * dvv-androidjoined
17:50:14  <piscisaureus>yep
17:50:16  <piscisaureus>kewl
17:51:16  <isaacs>hm... how do i get the current mode?
17:51:23  <isaacs>i want to set a mlock so that it doesn't get turned off
17:51:29  <isaacs>right now anyone can break it
17:51:31  <tjfontaine>isaacs: /mode #libuv
17:52:03  <isaacs>awesome.
17:52:04  <isaacs>17:51 -ChanServ(ChanServ@services.)- The MLOCK for #libuv has been set to +nt.
17:52:19  <tjfontaine>isaacs: you want +nt-c
17:52:28  <piscisaureus>this is fine, right
17:52:36  <tjfontaine>that way if someone tries to set +c chanserv will remove it
17:52:43  * hz|pc2quit (Ping timeout: 272 seconds)
17:52:47  <isaacs>ok, +nt-c done
17:52:52  <isaacs>tjfontaine: but doens't matter, since you can't set mode now
17:52:59  <tjfontaine>not me, but a +o can
17:52:59  <isaacs>piscisaureus: you have access to the SET command, though
17:53:02  <tjfontaine>accidentally
17:53:09  <tjfontaine>so now if someone in channel does +c
17:53:19  <piscisaureus>I don't think that works tjfontaine
17:53:19  <tjfontaine>chanserv will unset it
17:53:26  <tjfontaine>that's what mlock is supposed to do
17:53:27  <isaacs>tjfontaine: i can't do it, and I'm +F in here
17:53:31  <isaacs>17:52 -!- #libuv c ntc MODE cannot be set due to channel having an active MLOCK restriction policy
17:53:35  <piscisaureus>yes
17:53:37  <piscisaureus>I get the same
17:53:38  <isaacs>you have to remove the mlock to use the /mode command
17:53:41  <tjfontaine>oh well taht's another way to do it
17:53:47  <tjfontaine>their bastard ircd
17:53:51  <isaacs>:)
17:54:00  <piscisaureus>this is all very complicated :-)
17:54:00  * dvv-androidquit (Remote host closed the connection)
17:54:17  * dvv-androidjoined
17:55:00  <tjfontaine>I've been working with ircd and related services for considerable years now
17:55:19  <CIA-108>node: Tim Oxley v0.8 * r69f594d / doc/blog/release/node-v0.8.0.md : Added % difference for perf benchmarks in 0.8 post - http://git.io/56GEjQ
17:55:26  * brsonquit (Ping timeout: 240 seconds)
17:55:45  <isaacs>we have colors!
17:55:47  <isaacs>hooray!
17:55:49  <piscisaureus>hurray
17:55:50  <piscisaureus>haha
17:56:00  <piscisaureus>I saw that PR that Tim did
17:56:14  <piscisaureus>but my feeling was, wut, 5 significant digits?
17:56:20  <isaacs>haha
17:56:25  <isaacs>more precision!!
17:56:25  * brsonjoined
17:56:28  <isaacs>it's more precise!
17:56:32  <piscisaureus>ghe
17:56:59  <isaacs>the precision in some of our benchmark output is really absurd.
17:57:01  <piscisaureus>I think the statistical error far exceeds 10 percent point
17:57:07  <isaacs>61.236987140232706 mB/s? really?
17:57:10  <piscisaureus>yeah
17:57:13  <piscisaureus>super lame
17:57:16  <isaacs>is that somehow different from 61.236987140232705 mB/s?
17:57:25  <piscisaureus>hehe
17:57:34  <piscisaureus>that's like 1/100th of a bit or so
17:57:35  <isaacs>so, that reminds me, i think we ought to clean up our `make bench` output
17:58:13  * perezdjoined
17:58:20  * dvv-androidquit (Remote host closed the connection)
17:58:22  <isaacs>it'd be really nice to have them all output something consistent, like a set of left-aligned numbers where bigger = better
17:58:37  * dvv-androidjoined
17:58:41  <isaacs>that'd set the stage for tracking perf regressions more easily in an automated way
17:58:50  <piscisaureus>hmm
17:59:28  <piscisaureus>I wouldn't mind - but I think we oughta make the bench faster and more easy to run
17:59:35  <piscisaureus>like, in libuv :-)
17:59:36  <isaacs>piscisaureus: yes, that as well
17:59:49  <isaacs>piscisaureus: also, while we're dreaming...
17:59:58  <isaacs>piscisaureus: it'd be great to have a node bench, libuv bench, and v8 bench
18:00:07  <isaacs>so we could see where performance regressions or improvements come from
18:00:24  <isaacs>right now, we're sort of flying blind in some cases. "We upgraded v8, and now it sucks/got better"
18:00:37  <piscisaureus>I suppose we should make bench after every major v8 upgrade
18:00:47  <isaacs>right
18:00:58  <piscisaureus>But first I have to fix #3542 :-)
18:01:13  <isaacs>but the key is that the output of our benchmarks is pretty much a mess, and `make bench` doesn't run most of them
18:01:19  * hz|pc2joined
18:01:20  <piscisaureus>yeah
18:01:27  <piscisaureus>the problem is also that it is quite slow
18:01:31  <isaacs>yep
18:01:34  <piscisaureus>running the io bench takes ages for me
18:01:40  <isaacs>it does take quite a while
18:01:48  <piscisaureus>well, you're not on windows
18:02:04  <isaacs>i'd be ok with it being slow, if it was run by a bot somewhere
18:02:11  <piscisaureus>yes
18:02:17  <piscisaureus>for that, we need CI :-)
18:02:35  * dvv-androidquit (Remote host closed the connection)
18:02:52  * dvv-androidjoined
18:04:26  <creationix>hmm, and "make bundle" still doesn't work for OSX
18:04:33  <creationix>oops, wrong channel
18:06:34  <indutny>any good web-designer here?
18:06:44  <indutny>who can spend some time on opensource stuff
18:06:45  <indutny>:)
18:07:45  * brsonquit (Remote host closed the connection)
18:08:11  * sh1mmerquit (Quit: sh1mmer)
18:10:05  <isaacs>indutny: ask in #Node.js maybe?
18:10:15  <indutny>isaacs: hahaha
18:10:17  <isaacs>indutny: it's all systems programmers and fs bufs in here.
18:10:30  * dvv-androidquit (Remote host closed the connection)
18:10:47  * dvv-androidjoined
18:11:12  * mmaleckijoined
18:11:30  * isufyquit
18:12:17  * brsonjoined
18:12:28  <creationix>indutny: you've seen my "skills" right?
18:12:40  <indutny>creationix: nope
18:12:42  <indutny>creationix: where?
18:12:42  <creationix>remember the old howtonode.org theme
18:13:01  <indutny>oh, right
18:13:09  <indutny>isaacs: you see! I knew it was a correct place to ask!
18:13:24  <indutny>creationix: though I'm not sure that you have enough time to help me
18:13:34  <indutny>and I don't want to bother you with such things
18:13:39  <isaacs>ahha
18:13:43  <creationix>most people don't seem to like my style anyway.
18:13:55  <creationix>I know the technical bits well, but design is not my strength
18:17:01  * dap1joined
18:18:45  * dapquit (Ping timeout: 248 seconds)
18:19:08  * hz|pc21joined
18:19:30  * dvv-androidquit (Remote host closed the connection)
18:19:47  * dvv-androidjoined
18:20:52  * dshaw_joined
18:20:53  * hz|pc2quit (Ping timeout: 248 seconds)
18:23:55  * hz|pc21quit (Client Quit)
18:29:42  * dvv-androidquit (Remote host closed the connection)
18:29:59  * dvv-androidjoined
18:38:22  * dvv-androidquit (Remote host closed the connection)
18:38:39  * dvv-androidjoined
18:48:13  * dvv-androidquit (Remote host closed the connection)
18:48:30  * dvv-androidjoined
18:55:00  * hzjoined
18:56:21  * dvv-androidquit (Remote host closed the connection)
18:56:38  * dvv-androidjoined
19:01:29  <piscisaureus>isaacs: is realpath supposed to fail when the target does not exist?
19:01:48  <piscisaureus>isaacs: that is, should "realpathSync('x:\\')" throw when x:\ does not exist
19:02:03  <isaacs>piscisaureus: yes.
19:02:28  <isaacs>it's like "what is it really, and does it exist?"
19:03:03  * isaacscommiting, bbiab
19:03:39  <piscisaureus>wut
19:03:44  <piscisaureus>committing unreviewed code
19:03:49  <piscisaureus>heresy
19:06:43  * dvv-androidquit (Remote host closed the connection)
19:06:59  * dvv-androidjoined
19:19:32  * dvv-androidquit (Remote host closed the connection)
19:19:36  * hzquit (Disconnected by services)
19:19:39  * hzjoined
19:19:49  * dvv-androidjoined
19:22:07  <piscisaureus>indutny have you been looking into issues where net.connect fucks up?
19:22:11  <piscisaureus>indutny: https://github.com/joyent/node/issues/3554 <-- just saw this
19:22:15  <piscisaureus>indutny: or was that something else/
19:22:32  <indutny>yes
19:22:37  <indutny>bnoordhuis fixed that
19:22:48  <piscisaureus>in libuv?
19:22:58  <indutny>piscisaureus: https://github.com/bnoordhuis/libuv/commit/f0b01ec
19:22:58  <indutny>yes
19:23:10  <piscisaureus>kewl
19:23:15  <piscisaureus>Now it has to land :-)
19:24:00  <indutny>hahaha
19:24:33  * hzquit (Disconnected by services)
19:24:36  * hzjoined
19:30:23  * dvv-androidquit (Remote host closed the connection)
19:30:40  * dvv-androidjoined
19:31:01  * indexzerojoined
19:31:45  * indexzeroquit (Client Quit)
19:32:06  * indexzerojoined
19:35:07  * hz|pc2joined
19:36:27  * isufyjoined
19:36:33  * piscisaureusquit (Quit: ~ Trillian Astra - www.trillian.im ~)
19:44:01  * dvv-androidquit (Remote host closed the connection)
19:44:17  * dvv-androidjoined
19:48:54  * hz|pc21joined
19:51:26  * indexzeroquit (Quit: indexzero)
19:51:38  * hz|pc21quit (Client Quit)
19:51:50  * sh1mmerjoined
19:51:54  * hz|pc2quit (Ping timeout: 264 seconds)
19:57:04  * CoverSlidejoined
19:58:30  * dvv-androidquit (Remote host closed the connection)
19:58:47  * dvv-androidjoined
19:59:35  * piscisaureus_joined
20:02:53  * isufyquit
20:03:45  * paddybyers_joined
20:10:11  * pieternquit (Quit: pietern)
20:15:49  * dvv-androidquit (Remote host closed the connection)
20:16:06  * dvv-androidjoined
20:24:52  * dvv-androidquit (Remote host closed the connection)
20:25:08  * dvv-androidjoined
20:26:15  * hij1nxjoined
20:28:53  <indutny>creationix: yt?
20:29:15  <creationix>yes
20:31:42  * hzquit (Disconnected by services)
20:31:45  * hzjoined
20:33:31  <hij1nx>has anyone tried to run libpcap on smartos?
20:34:22  <txdv>is it possible to manipulate stackframes with v8?
20:34:27  * dvv-androidquit (Remote host closed the connection)
20:34:44  * dvv-androidjoined
20:36:38  * paddybyers_quit (Quit: paddybyers_)
20:36:39  <piscisaureus_>txdv: I don't exactly what you mean, but I think the answer is no
20:37:16  * perezdpart
20:37:22  * indexzerojoined
20:37:30  <txdv>Ill showcase that in C# with an obvious example
20:37:48  * russell_hquit (Changing host)
20:37:49  * russell_hjoined
20:41:58  * dvv-androidquit (Remote host closed the connection)
20:42:14  * dvv-androidjoined
20:42:21  <txdv>piscisaureus_: http://paste.ubuntu.com/1061503/
20:42:47  * sh1mmerquit (Quit: sh1mmer)
20:43:12  <piscisaureus_>txdv: ah, setjmp / longjmp :-)
20:43:19  <piscisaureus_>txdv: nope, that's not possible
20:43:24  <txdv>too bad
20:43:57  <indutny>hij1nx: what do you experiencing?
20:43:58  <piscisaureus_>txdv: node-fibers uses a different approach (it switches the entire stack). That works.
20:44:00  <indutny>s/do/are
20:44:08  <indutny>hij1nx: segfault?
20:44:12  <indutny>hij1nx: or compilation error?
20:44:20  <hij1nx>https://gist.github.com/825e1c37192cc0218bad
20:44:46  <piscisaureus_>maybe try without the "bad" part :-p
20:44:58  <indutny>hij1nx: ah, even so :)
20:45:08  <txdv>but basically the same functionality
20:45:41  <piscisaureus_>txdv: I don't know the details. You should look at https://github.com/laverdet/node-fibers
20:45:50  <piscisaureus_>txdv: but yes, I think so
20:46:16  <hij1nx>piscisaureus_: lol ;) awesome gist name right?
20:46:28  <txdv>hmm doesn't seem that they exposed networking api in that way
20:46:45  <piscisaureus_>hij1nx: the right cutoff point for sure :-0
20:46:57  <piscisaureus_>txdv: well, node-fibers is supposed to be low level
20:47:14  <hij1nx>anyone running smartos in here?
20:47:23  <indutny>hij1nx: I think mjr__ may help you
20:47:27  <piscisaureus_>txdv: you can implement networking on top of it, for sure. I think fibers does have it for files.
20:47:34  <indutny>hij1nx: he's definitely running a lot of smartos servers
20:47:37  <hij1nx>mjr__: yt?
20:47:40  <indutny>hij1nx: and should be using pcap
20:47:52  <hij1nx>indutny: yeah he write it ;) i hope so
20:47:58  <indutny>hij1nx: indeed :)
20:48:00  <mjr__>The beeps, they summon me.
20:48:10  * indutnywaves
20:48:10  <hij1nx>s/write/wrote/
20:48:10  * dvv-androidquit (Remote host closed the connection)
20:48:16  <hij1nx>mjr__: yay!
20:48:27  * dvv-androidjoined
20:48:28  <hij1nx>mjr__: I'm trying to run node-pcap, but having some issues
20:48:29  <indutny>hij1nx: btw, have you tried installing from source?
20:48:39  <mjr__>oh man, I'll bet pcap doesn't work on 0.8
20:48:47  <hij1nx>mjr__: here is the latest: https://gist.github.com/afaba28371281c980021
20:48:53  <indutny>hij1nx: http://www.tcpdump.org/release/libpcap-1.3.0.tar.gz
20:48:57  <mjr__>I tried to get it going on smartos, and I couldn't tame waf.
20:49:20  <hij1nx>mjr__: ok, then we are thinking of patching it. we need it. can't live without it.
20:49:26  <mjr__>Yeah, that's the issue I ran into as well. You need to pass another libpath to was.
20:49:32  <mjr__>damn autocorrect
20:49:36  <mjr__>I think there's a PR to do this
20:50:01  <mjr__>https://github.com/mranney/node_pcap/pull/47
20:50:10  <txdv>yeah it is basically coroutines, so seemingly blocking api is possible on nodejs
20:50:40  <piscisaureus_>txdv: yes, although I would not recommend it :-)
20:50:44  <indutny>mjr__: it just removes check
20:50:46  <mjr__>hij1nx: the lib checking issue is just a nice to have. I couldn't figure out the right way to handle it. The real tricky bit is that on smartos you have to build your addons the same way you built node.
20:50:54  <txdv>why?
20:51:10  <mjr__>hij1nx: so like -m32 or -m64 are required. It won't figure it out for you.
20:51:14  <piscisaureus_>txdv: this is like, an unsupported addon, that works by the grace of v8 not doing too crazy stuff to the stack
20:51:46  <txdv>it doesn't make sense on node.js since everything is written anyway in an async way
20:51:57  <txdv>i mean using the async api
20:52:18  <mjr__>hij1nx: if you have a better way to deal with waf / smartos on 0.6, I'd love to add that.
20:52:19  <piscisaureus_>txdv: yep, that too. Although sometimes having a "sync-looking" api is really miuch nicer.
20:52:24  <TooTallNate>piscisaureus_: question about node.lib:
20:52:30  <indutny>mjr__: I think I did some patches to wscript one day
20:52:37  <mmalecki>mjr__: use node-gyp?
20:52:41  <indutny>mjr__: to check node's platform and build using the same platform
20:52:43  <piscisaureus_>TooTallNate: fire
20:52:45  <mjr__>hij1nx: but right now I'm planning on going to 0.8 and fixing these issues with gyp.
20:52:55  <indutny>mmalecki: capitan obvious
20:52:59  <indutny>;)
20:53:06  <mmalecki>:)
20:53:11  <mmalecki>http://www.youtube.com/watch?v=rp8hvyjZWHs
20:53:11  <TooTallNate>piscisaureus_: since openssl is being statically compiled into node, does the node.lib contains all the openssl stubs, or is there another openssl.lib that gets generated somewhere?
20:53:12  <hij1nx>mjr__: yeah def
20:53:16  <TooTallNate>(i believe it's the former)
20:53:24  <hij1nx>mjr__: screw waf all together
20:53:35  <mmalecki>we're all engineers, RIGHT?!
20:53:47  <txdv>I just got the same thing done on C# with my C# wrapper for libuv
20:53:53  <piscisaureus_>TooTallNate: it may be - depending on whether openssl exports were decorated with __declspec(dllexport)
20:53:53  * dvv-androidquit (Remote host closed the connection)
20:54:06  <piscisaureus_>TooTallNate: they are either in node.lib or nowhere :-)
20:54:09  * dvv-androidjoined
20:54:13  <piscisaureus_>TooTallNate: I'll look it up
20:54:21  <TooTallNate>piscisaureus_: makes sense, thanks :)
20:55:08  <indutny>piscisaureus_: nowhere
20:55:13  <indutny>I suppose
20:55:37  <piscisaureus_>https://gist.github.com/2998890
20:55:43  <piscisaureus_>^-- that's node.lib's contents
20:56:04  <piscisaureus_>doesn't look like it has ssl stuff in there
20:56:38  <TooTallNate>piscisaureus_: what's the preferred way for native addons that interact with openssl to do it?
20:56:39  * pieternjoined
20:56:44  <TooTallNate>use their own copy?
20:57:09  <piscisaureus_>TooTallNate: umm, never really thought about that. But I believe using their own copy is their only option atm
20:57:22  <tjfontaine>clearly ssl is moving to libuv :P
20:57:23  <indutny>piscisaureus_: this's definitely a build bug
20:57:29  <TooTallNate>ok, that's what i'll tell 'em
20:57:38  <piscisaureus_>indutny: ok, I take patches :-p
20:58:05  <indutny>piscisaureus_: meh, windows is not my hobby
20:58:06  <indutny>:P
20:58:20  <indutny>piscisaureus_: probably, I'll fix unixes
20:58:23  <indutny>but no more :D
20:58:24  <indutny>hahaha
20:58:27  <indutny>just kidding
20:58:27  * paddybyersjoined
20:58:32  <piscisaureus_>indutny: haha
20:58:33  <indutny>piscisaureus_: ok, I'll look at it tomorrow
20:58:35  * sh1mmerjoined
20:58:47  <piscisaureus_>indutny: I think that unixes already export this stuff, right?
20:58:47  * dvv-androidquit (Remote host closed the connection)
20:58:57  <indutny>piscisaureus_: lemme check
20:59:04  * dvv-androidjoined
20:59:09  <indutny>piscisaureus_: ah, yes they're
20:59:11  <piscisaureus_>I would be okay with fixing this on the 0.8 branch
20:59:28  <TooTallNate>ya, i've been able to link to the bundled openssl in unix pretty easily
20:59:55  <txdv>did 0.8 become faster because of v8 optimizations?
21:00:07  <piscisaureus_>partly
21:00:48  <piscisaureus_>and some of the v8 optimizations were done because node needed them
21:01:54  <pquerna>TooTallNate: what do you mean 'interact'?
21:02:16  <TooTallNate>pquerna: access symbols/funtions from the bundled openssl
21:02:31  <pquerna>mmm, right see more backlog, works on *nix, less likely on win32. oops.
21:03:07  <TooTallNate>not the end of the world IMO
21:03:23  <mjr__>hij1nx: what are your plans to move to 0.8?
21:05:07  <hij1nx>mjr__: we are almost done, surprisingly a lot of the software worked on 0.8, node-forever was a major problem, AvianFlu did some kick ass work to get that working properly
21:06:34  <AvianFlu>it's only been working for half an hour, as a matter of fact :D
21:06:35  * dvv-androidquit (Remote host closed the connection)
21:06:51  * dvv-androidjoined
21:07:10  <mjr__>We may start trying it in production this week.
21:09:24  <mmalecki>mjr__: it's pretty easy
21:09:36  <mmalecki>0.4 -> 0.6 was pretty much a hell
21:09:53  <mmalecki>we've got like one project left to port
21:09:55  <indutny>well, 0.8 is pretty much API compatible with 0.6
21:10:01  <indutny>except some small differencies
21:10:16  <mjr__>Oh, it all "works". I just wonder how well it actually "works", if you know what I mean.
21:10:38  <indutny>mjr__: well, it contains all bugfixes for bugs you've discovered in 0.6 ;)
21:10:45  <mjr__>Certainly this will introduce some subtle differences in behavior that seem inconsequential but end up causing all sorts of problems.
21:10:53  <indutny>mjr__: so it either will introduce new ones, or old ones will show up
21:15:23  * dvv-androidquit (Remote host closed the connection)
21:15:38  * dvv-androidjoined
21:19:53  * stephankquit (Quit: *Poof!*)
21:20:43  <piscisaureus_>saghul: are you aware of any actual users of pyuv?
21:21:20  * stephankjoined
21:21:31  <saghul>piscisaureus_ a guy maintaining stackless told me he was using it to create some async standard library for it
21:21:52  <tjfontaine>it was on the table to potentially use for a project this week, but sadly we went in another direction
21:21:59  <saghul>I created a core for Twisted and Tornado (based on the poll handle) and it runs faster on top of pyuv :-)
21:22:02  * dvv-androidquit (Remote host closed the connection)
21:22:14  <piscisaureus_>haha
21:22:17  <piscisaureus_>twisted--
21:22:18  <kohai>twisted has -1 beer
21:22:20  * dvv-androidjoined
21:22:21  <tjfontaine>twisted makes me cry
21:22:29  <tjfontaine>some java nerd threw up on my python :/
21:22:54  <saghul>xD
21:23:31  <piscisaureus_>maybe we should do that for node
21:23:50  <piscisaureus_>make the binding layer a 1:1 mapping to libuv
21:24:00  <piscisaureus_>and implement all the sugar on top
21:24:14  <tjfontaine>I'm sold :)
21:24:18  <piscisaureus_>that's basically what it is already, except it isn't :-)
21:24:20  <saghul>for me it's much easier, as I don't need to all sorts of things in C
21:24:34  <saghul>s/to all/to do all/
21:24:41  <piscisaureus_>yeah
21:25:08  * AvianFluquit (Quit: Leaving)
21:25:12  <isaacs>mjr__: I'm told that you may want to wait for 0.8.1
21:25:20  <isaacs>mjr__: which should be this week
21:25:33  <saghul>I also found some way to avoid memcpy-ing every python string when you do a TCP write, for example, so there is not much of a penalty in doing it like this
21:25:46  <piscisaureus_>that's better than js
21:25:52  <piscisaureus_>in js we always copy
21:25:58  <piscisaureus_>except when you use bufers
21:26:01  <piscisaureus_>*buffers
21:26:07  <piscisaureus_>so that's probably the difference here
21:26:34  <saghul>well, but the VM is much faster, with my uv-ized Tornado I can push ~2500 reqs/s on OSX (no tuning)
21:26:44  * AvianFlujoined
21:26:48  <saghul>so v8 kicks ass here
21:27:22  <TooTallNate>mjr__: i haven't tried this since v0.7.7 or something like that: https://gist.github.com/2209310
21:27:34  <saghul>but pyuv shines on Windows, where everyone else uses select (Twisted has some IOCP, but that aside)
21:28:25  <piscisaureus_>haha, undocumented APIs ftw :-p
21:28:41  * dvv-androidquit (Remote host closed the connection)
21:28:45  <TooTallNate>piscisaureus_: which one?
21:28:58  * dvv-androidjoined
21:28:59  <piscisaureus_>TooTallNate: I would paste you a link, but the API is undocumented
21:29:11  <piscisaureus_>TooTallNate: AFD_POLL
21:29:19  <TooTallNate>piscisaureus_: oh, i thought you meant in my gist :p
21:29:24  <TooTallNate>which there is one ;)
21:29:28  <TooTallNate>but i'm removing it now
21:31:06  <TooTallNate>mjr__: the only problem with that gist is that it doesn't relay the client window size
21:31:22  <TooTallNate>mjr__: which is one reason why the telnet version is better in that case
21:31:50  <bnoordhuis>indutny: still up?
21:32:56  <indutny>bnoordhuis: yes
21:33:17  <bnoordhuis>indutny: that libuv patch fixed the net.connect issue, didn't it?
21:33:27  <indutny>bnoordhuis: yes
21:33:35  <bnoordhuis>cool
21:35:25  <indutny>bnoordhuis: consider pushing?
21:37:11  * sh1mmerquit (Read error: Connection reset by peer)
21:37:22  <bnoordhuis>indutny: yeah. running the tests one more time
21:37:43  * sh1mmerjoined
21:37:56  * dvv-androidquit (Remote host closed the connection)
21:38:08  * dvv-androidjoined
21:38:36  <CIA-108>libuv: Ben Noordhuis v0.8 * r4d42af2 / src/unix/stream.c : unix: don't create connect req when connect() fails - http://git.io/KlvZ3w
21:39:37  <indutny>bnoordhuis: one day, I'll create a diff utility that can understand style changes
21:40:01  <indutny>bnoordhuis: right now diff's output is borked on commits with mixed style changes/fixes (like yours)
21:40:23  <bnoordhuis>indutny: semantic diff tools already exist
21:40:30  <indutny>bnoordhuis: link?
21:40:37  * travis-cijoined
21:40:37  <travis-ci>[travis-ci] joyent/libuv#464 (v0.8 - 4d42af2 : Ben Noordhuis): The build passed.
21:40:37  <travis-ci>[travis-ci] Change view : https://github.com/joyent/libuv/compare/5a0f3411fcce...4d42af20e389
21:40:37  <travis-ci>[travis-ci] Build details : http://travis-ci.org/joyent/libuv/builds/1715344
21:40:37  * travis-cipart
21:40:43  <indutny>http://stackoverflow.com/questions/523307/semantic-diff-utilities
21:46:42  <mmalecki>I tend to close the page I'm on when I see Eclipse
21:47:26  * dvv-androidquit (Remote host closed the connection)
21:47:44  * dvv-androidjoined
21:48:12  * paddybyersquit (Quit: paddybyers)
21:48:14  <CIA-108>node: Ben Noordhuis v0.8 * r1e50282 / (6 files in 4 dirs): deps: upgrade libuv to 4d42af2 - http://git.io/ycnviA
21:48:45  <indutny>mmalecki: http://www.semanticdesigns.com/Products/SmartDifferencer/index.html
21:50:15  <mmalecki>I tend to not open a page when I see "Products"
21:50:20  <indutny>hahahaha
21:50:28  <indutny>mmalecki: I tend to not open a page when I see page
21:50:47  <mmalecki>I only open a page when I see "github.com"
21:53:08  * dvv-androidquit (Remote host closed the connection)
21:53:21  * dvv-androidjoined
21:56:02  * c4miloquit (Remote host closed the connection)
21:57:12  * sh1mmerquit (Quit: sh1mmer)
21:57:14  * c4milojoined
22:00:05  <piscisaureus_>isaacs: https://github.com/joyent/node/blob/master/lib/fs.js#L1073 <-- I don't approve of that
22:00:33  <isaacs>piscisaureus_: having a cache at all?
22:00:42  <piscisaureus_>isaacs: calling a callback in sync
22:01:11  <isaacs>oh, hm. well, since that will generally never be hit the first time, it's probably not too hazardous.
22:01:14  <isaacs>but youer' right
22:01:18  <isaacs>we should guard against that
22:01:35  * dvv-androidquit (Remote host closed the connection)
22:01:35  <isaacs>oh, wait, no, it will
22:01:51  * dvv-androidjoined
22:01:55  <isaacs>if you use the same cache object over and over
22:02:11  <isaacs>should be a return process.nextTick(cb.bind(null, null, cache[p]))
22:03:20  <piscisaureus_>yes
22:05:26  * sh1mmerjoined
22:07:40  * paddybyersjoined
22:10:10  * sh1mmerquit (Client Quit)
22:11:21  * hij1nxquit (Quit: hij1nx)
22:12:05  * dvv-androidquit (Remote host closed the connection)
22:12:19  * dvv-androidjoined
22:12:31  * hij1nxjoined
22:14:16  * hij1nxquit (Client Quit)
22:18:39  <isaacs>piscisaureus_: the LOOP() on 1091, same thing
22:18:43  <isaacs>piscisaureus_: patch coming, one sec
22:18:50  <piscisaureus_>isaacs: ok
22:19:14  <piscisaureus_>isaacs: after that, I will send you one :-)
22:19:50  <piscisaureus_>isaacs: how does that LOOP() hurt?
22:20:08  <piscisaureus_>isaacs: nvm, I see
22:20:20  * dvv-androidquit (Remote host closed the connection)
22:20:37  * dvv-androidjoined
22:20:43  <piscisaureus_>isaacs: btw, I have the feeling that this realpath implementation must be really slow()
22:20:59  <piscisaureus_>...what's up with the () after slow...
22:21:06  <piscisaureus_>isaacs: eventually, libuv should do this
22:21:36  <CIA-108>node: isaacs reviewme * r21aa0df / (lib/fs.js test/simple/test-fs-realpath.js): realpath: No sync cb() calling allowed. - http://git.io/-Wy2cw
22:21:54  <isaacs>piscisaureus_: every realpath implementation is slow.
22:22:08  <piscisaureus_>isaacs: is it?
22:22:10  <isaacs>but the cache isn't as smart as it could be.
22:22:13  <piscisaureus_>isaacs: lgtm btw
22:22:13  <isaacs>piscisaureus_: generally, yes.
22:22:25  * TheJHquit (Ping timeout: 265 seconds)
22:22:29  <isaacs>the cache should be based on dev+inode, probably
22:22:35  <piscisaureus_>it is already
22:22:42  <isaacs>no, it's based on path
22:22:59  <piscisaureus_>ah, the symlink-iness of a path is based on dev+ino
22:23:04  <piscisaureus_>hmm
22:23:12  <piscisaureus_>yeah
22:23:14  <CIA-108>node: isaacs v0.8 * r21aa0df / (lib/fs.js test/simple/test-fs-realpath.js): realpath: No sync cb() calling allowed. - http://git.io/-Wy2cw
22:23:16  * rendarquit
22:23:36  <isaacs>so, if we stat, and find that it's a known dev+ino, we could just return that right away
22:23:50  <isaacs>it caches the knownHard set, though
22:23:59  <isaacs>ie, things that are known to not be symlinks
22:24:03  <piscisaureus_>yeah
22:24:11  <piscisaureus_>I wonder if linux realpath is really slow tho
22:24:17  <isaacs>meh. no one's really complaining about it
22:24:23  <piscisaureus_>I know :-0
22:24:25  <piscisaureus_>true
22:24:29  <isaacs>piscisaureus_: linux realpath(2) is not so slow, but it's also unsafe.
22:25:54  <piscisaureus_>isaacs: probably you would want to use dev+ino for the module.js cache, instead of the realpath :-)
22:25:54  * dvv-androidquit (Remote host closed the connection)
22:26:09  <piscisaureus_>(except, windows has no dev+ino support... yet)
22:26:10  * dvv-androidjoined
22:33:00  * paddybyersquit (Quit: paddybyers)
22:35:54  * theColejoined
22:36:13  <CIA-108>node: Ben Noordhuis v0.8 * rf00c8bc / (configure node.gyp): build: fix --shared-v8 option - http://git.io/q-0mTg
22:37:02  * dvv-androidquit (Remote host closed the connection)
22:37:17  * dvv-androidjoined
22:39:12  * sh1mmerjoined
22:39:17  * sh1mmerquit (Client Quit)
22:40:52  * hij1nxjoined
22:41:22  * toothrchanged nick to toothrot
22:41:27  * toothrotquit (Changing host)
22:41:27  * toothrotjoined
22:44:16  * dvv-androidquit (Remote host closed the connection)
22:44:30  * dvv-androidjoined
22:47:21  * hzquit
22:51:20  <isaacs>piscisaureus_: yes, that might've been it
22:51:43  <isaacs>piscisaureus_: oh, wait, no. we actually care about the fake path in the module system
22:52:16  <piscisaureus_>isaacs: true, but we realpath() all the modules
22:52:26  <piscisaureus_>isaacs: an they are cached based upon their realpath
22:52:29  <isaacs>yes
22:52:37  <isaacs>oic, they could be cached by dev/ino
22:52:44  <isaacs>if windows would share that info
22:52:49  <piscisaureus_>I can add that
22:53:01  * dvv-androidquit (Remote host closed the connection)
22:53:02  <piscisaureus_>unfortunately, not in .8
22:53:14  * dvv-androidjoined
22:53:26  <isaacs>true
22:53:35  <isaacs>but we must project our minds into the distant future
22:53:48  <isaacs>even though our hands are stuck in teh present
22:54:06  <bnoordhuis>i'm already contemplating the heat death of the universe
22:54:33  <bnoordhuis>i going to make sure i'm stocked up on marshmallows
22:56:46  * dvv-androidquit (Remote host closed the connection)
22:56:59  * dvv-androidjoined
22:57:36  <isaacs>wise words.
23:03:07  * c4miloquit (Remote host closed the connection)
23:05:17  * dvv-androidquit (Remote host closed the connection)
23:05:32  * dvv-androidjoined
23:20:00  * dvv-androidquit (Remote host closed the connection)
23:20:17  * dvv-androidjoined
23:23:31  * theColequit (Quit: theCole)
23:32:56  * dvv-androidquit (Remote host closed the connection)
23:33:10  * dvv-androidjoined
23:33:50  <isaacs>bnoordhuis: do you know of some way that i can create a lock file in node, such that it'll be definitely removed on process exit?
23:41:06  <piscisaureus_>isaacs: that's not possible on unix
23:43:04  * dvv-androidquit (Remote host closed the connection)
23:43:18  <isaacs>k
23:43:18  * dvv-androidjoined
23:43:25  <isaacs>i'll just check for staleness if i find one there already
23:44:11  <CIA-108>node: Ben Noordhuis reviewme * rf00c8bc / (configure node.gyp): build: fix --shared-v8 option - http://git.io/q-0mTg
23:44:11  <CIA-108>node: Bert Belder reviewme * r1f04249 / (lib/fs.js test/simple/test-regress-GH-3542.js): windows: make fs.realpath(Sync) work with UNC paths - http://git.io/_1wzgA
23:44:18  <piscisaureus_>isaacs: also, pls review ^
23:49:06  <isaacs>piscisaureus_: that's so that fs.realpath('x:\\') will fail if x:\ doens't exist?
23:49:15  <isaacs>piscisaureus_: or \\nothing\here\ will fail?
23:49:19  <piscisaureus_>isaacs: yes
23:50:04  <piscisaureus_>isaacs: well, maybe I misunderstood your question
23:50:10  <piscisaureus_>isaacs: there is code that makes that fail
23:50:29  <piscisaureus_>isaacs: but this is to make realpath(\\\\something\\definitely\\here') work
23:50:55  <piscisaureus_>isaacs: because the old realpath implementation would get stuck at "\\something"
23:51:55  * dvv-androidquit (Remote host closed the connection)
23:52:12  * dvv-androidjoined
23:52:35  <isaacs>poic
23:53:23  <isaacs>piscisaureus_: i haven't run the test, but if it works on windows as well as unix, then lgtm
23:53:30  <isaacs>nothing outrageous in there.
23:53:45  <isaacs>piscisaureus_: the test should include ../common.js though
23:54:00  * mikealjoined
23:55:03  * c4milojoined
23:57:54  <isaacs>bnoordhuis: I am not following this: https://github.com/joyent/node/commit/f00c8bcef856d7ff7da40eb67a3c74f13f086256
23:58:29  <bnoordhuis>isaacs: how so?
23:58:58  <bnoordhuis>oh, there's no commit log
23:58:59  * dvv-androidquit (Remote host closed the connection)
23:59:12  * dvv-androidjoined
23:59:21  <bnoordhuis>the idea is that --shared-v8 shouldn't assume that --shared-v8-includes is also set
23:59:31  <bnoordhuis>it was making gyp fail with a KeyError