00:04:51  * mjr_quit (Quit: mjr_)
00:05:42  * loladiroquit (Quit: loladiro)
00:11:55  * CoverSlidequit (Ping timeout: 272 seconds)
00:13:38  * loladirojoined
00:17:10  * c4miloquit (Remote host closed the connection)
00:28:35  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
00:31:22  * kazuponquit (Remote host closed the connection)
00:38:30  * kazuponjoined
00:40:00  * c4milojoined
00:49:22  * lohkeyquit (Ping timeout: 248 seconds)
00:53:23  * dapquit (Quit: Leaving.)
00:56:39  * kazuponquit (Remote host closed the connection)
00:58:53  * kazuponjoined
01:01:40  * AvianFlujoined
01:06:24  * hzquit
01:06:53  * benoitcquit (Excess Flood)
01:09:47  * benoitcjoined
01:10:44  * EhevuTovquit (Quit: This computer has gone to sleep)
01:18:15  * saghulquit (Ping timeout: 245 seconds)
01:18:24  * loladiroquit (Quit: loladiro)
01:20:30  * saghuljoined
01:21:26  * voodootikigodquit (*.net *.split)
01:21:26  * chrisdickinsonquit (*.net *.split)
01:22:48  * voodootikigodjoined
01:22:48  * chrisdickinsonjoined
01:23:56  * kazuponquit (Remote host closed the connection)
01:26:29  * loladirojoined
01:26:29  * loladiroquit (Client Quit)
01:35:31  * saghulquit (Ping timeout: 272 seconds)
01:36:04  * saghuljoined
01:37:37  * abraxasjoined
01:38:27  * xaqquit (Remote host closed the connection)
01:48:31  * TooTallNatequit (Quit: Computer has gone to sleep.)
01:48:38  * AvianFluquit (Remote host closed the connection)
01:54:53  * mmaleckichanged nick to mmalecki[zzz]
02:07:34  * CoverSlidejoined
02:10:03  * xaqjoined
02:11:43  * benoitcquit (Excess Flood)
02:12:01  * CoverSlidequit (Ping timeout: 252 seconds)
02:16:18  * benoitcjoined
02:18:12  * `3rdEdenjoined
02:18:33  * jmar777joined
02:19:04  * EhevuTovjoined
02:21:11  * xaqquit (Remote host closed the connection)
02:22:38  * xaqjoined
02:22:42  * `3rdEdenquit (Ping timeout: 246 seconds)
02:23:18  * indexzerojoined
02:25:46  * EhevuTovquit (Quit: This computer has gone to sleep)
02:28:09  * indexzeroquit (Client Quit)
02:32:15  * indexzerojoined
02:35:27  * brsonquit (Ping timeout: 246 seconds)
02:39:34  * c4milo_joined
02:40:33  * indexzeroquit (Quit: indexzero)
02:41:39  * EhevuTovjoined
02:43:42  * c4milo_quit (Ping timeout: 246 seconds)
02:55:41  * TooTallNatejoined
02:55:45  * kazuponjoined
03:03:57  * xaqquit (Remote host closed the connection)
03:07:00  * ericktjoined
03:12:11  * benoitcquit (Excess Flood)
03:14:19  * benoitcjoined
03:17:05  * brsonjoined
03:23:42  * joshthecoderquit (Quit: Leaving...)
03:32:40  * indexzerojoined
03:34:51  * indexzeroquit (Client Quit)
03:35:26  * indexzerojoined
03:39:07  * indexzeroquit (Client Quit)
03:44:38  * jmar777quit (Remote host closed the connection)
03:45:13  * jmar777joined
03:47:04  * jmar777quit (Read error: Connection reset by peer)
03:47:09  * jmar777_joined
03:51:41  * jmar777_quit (Ping timeout: 260 seconds)
03:51:42  * TooTallNatequit (Quit: ["Textual IRC Client: www.textualapp.com"])
03:54:58  * indexzerojoined
04:12:39  * benoitcquit (Excess Flood)
04:21:20  * benoitcjoined
04:22:07  * c4miloquit (Remote host closed the connection)
04:26:05  * xaqjoined
04:34:05  * xaqquit (Remote host closed the connection)
04:39:49  * xaqjoined
04:42:20  * mikealjoined
04:47:12  * xaqquit (Remote host closed the connection)
04:48:52  * indexzeroquit (Quit: indexzero)
04:50:32  * ericktquit (Quit: erickt)
04:51:47  * Ariaquit (Remote host closed the connection)
04:52:15  * Ariajoined
04:59:14  * xaqjoined
05:07:21  * joshthecoderjoined
05:08:43  * mikealquit (Quit: Leaving.)
05:13:04  * benoitcquit (Excess Flood)
05:21:51  * benoitcjoined
05:24:06  * paddybyersjoined
05:31:27  * orlandovftwjoined
05:31:40  * orlandovftwquit (Client Quit)
05:36:51  * CoverSlidejoined
05:45:10  * xaqquit (Remote host closed the connection)
05:53:59  * brsonquit (Quit: leaving)
06:07:13  * xaqjoined
06:20:12  * paddybyersquit (Ping timeout: 246 seconds)
06:24:51  * EhevuTovquit (Quit: This computer has gone to sleep)
07:04:17  * rendarjoined
07:10:09  * joshthecoderquit (Quit: Leaving...)
07:22:36  * xaqquit (Remote host closed the connection)
07:30:47  * paddybyersjoined
07:35:18  * paddybyersquit (Ping timeout: 260 seconds)
07:43:07  * paddybyersjoined
07:50:50  * AvianFlujoined
07:55:47  * mikealjoined
08:47:12  * kazuponquit (Remote host closed the connection)
08:47:46  * kazuponjoined
08:51:41  * kazuponquit (Read error: Connection reset by peer)
08:52:51  * AvianFluquit (Remote host closed the connection)
08:55:00  * mikealquit (Quit: Leaving.)
09:14:45  * bnoordhuisjoined
09:17:11  * V1joined
09:17:37  * V1changed nick to `3rdEden
09:58:16  * c4milojoined
09:59:28  * bnoordhuisquit (Quit: leaving)
10:26:56  * piscisaureus_joined
10:29:30  * piscisaureus__joined
10:31:05  * c4miloquit (Remote host closed the connection)
10:31:09  * piscisaureus_quit (Read error: Connection reset by peer)
10:45:51  * Ariaquit (Remote host closed the connection)
10:45:59  * Ariajoined
10:46:13  * mitsuhikoquit (Excess Flood)
10:56:19  * mitsuhikojoined
11:00:00  * hzjoined
11:14:33  * c4milojoined
11:31:12  * Raltjoined
11:32:33  * Raltquit (Client Quit)
11:32:47  * Raltjoined
11:35:29  * piscisaureus_joined
11:35:29  * piscisaureus__quit (Read error: Connection reset by peer)
11:48:29  * Raltquit (Quit: leaving)
11:49:40  * mmalecki[zzz]changed nick to mmalecki
11:52:07  <c4milo>hey guys, I'm writing a C/C++ addon and I can't get it to receive SIGINT signals. Do I have to do something special using libuv in order to handle signals in C/C++ land?
11:52:36  <c4milo>node v0.8.12 BTW
11:53:29  * AvianFlujoined
11:54:56  <c4milo>piscisaureus_: any idea?
11:55:17  * Ariaquit (Remote host closed the connection)
11:57:18  * Raltjoined
11:59:58  * hzquit (Ping timeout: 272 seconds)
12:06:47  <piscisaureus_>c4milo: ehm, are you using uv_signal or sigaction?
12:07:03  <c4milo>nop
12:07:11  <c4milo>I'm finishing fuse low level bindings
12:07:26  <piscisaureus_>c4milo:
12:07:45  <c4milo>and using fuse_set_signal_handlers()
12:07:50  <piscisaureus_>ah
12:08:30  <piscisaureus_>c4milo: libuv doesn't do anything with signals by default
12:08:45  <piscisaureus_>c4milo: but it could be that the node repl also installs a SIGINT handler
12:08:54  <piscisaureus_>c4milo: which would "replace" yours in that case
12:09:00  <c4milo>I see, I'm not using repl though
12:09:33  <c4milo>it's weird, I don't understand fuse signal handlers don't get called :/
12:09:39  <c4milo>why*
12:10:28  <c4milo>if I use process.on() on js land, the process doesn't handle SIGINT anymore
12:11:05  <piscisaureus_>c4milo: you're doing process.on('SIGINT', ...) ?
12:11:35  * jmar777joined
12:11:35  <c4milo>ohh, I think nodejs is handling SIGINT somewhere, because the process finishes but fuse signal handlers don't get called (without using process.on())
12:11:48  <c4milo>piscisaureus_: I only did it to test, but I'm not using it
12:12:00  <piscisaureus_>c4milo: the default action for SIGINT is to exit
12:12:10  <c4milo>indeed
12:12:19  <piscisaureus_>c4milo: so you don't know whether it is handled :-)
12:12:32  <piscisaureus_>c4milo: I think you should just run your thing in gdb
12:12:34  <c4milo>well in fuse I know
12:12:42  <piscisaureus_>and then use kill -INT to send a sigint
12:12:46  <c4milo>because it doesn't call my cleanup functions
12:12:52  <c4milo>gotcha
12:13:32  <c4milo>yeah, I think I need to dig deeper now because I got stuck. So gdb will be. thanks piscisaureus_
12:18:05  * hzjoined
12:45:51  * c4miloquit (Remote host closed the connection)
12:51:36  * mikealjoined
12:52:16  * mikealquit (Read error: Connection reset by peer)
12:52:45  * mikealjoined
13:03:50  * mikealquit (Quit: Leaving.)
13:07:36  * piscisaureus_quit (Ping timeout: 246 seconds)
13:22:19  * piscisaureus_joined
13:22:36  * piscisaureus_quit (Client Quit)
13:23:49  * piscisaureus_joined
13:30:06  * Raltquit (Quit: WeeChat 0.3.9)
13:30:23  * Raltjoined
13:41:10  * c4milojoined
13:55:00  * mmaleckichanged nick to mmalecki[slides]
14:08:18  * ericktjoined
14:35:23  * brsonjoined
14:49:13  * xaqjoined
15:01:12  * V1joined
15:06:08  * indexzerojoined
15:06:27  * EhevuTovjoined
15:07:17  * brsonquit (Ping timeout: 256 seconds)
15:07:34  * brsonjoined
15:09:42  * Raltquit (Ping timeout: 246 seconds)
15:12:12  * brsonquit (Ping timeout: 255 seconds)
15:12:55  * stagasquit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204])
15:20:24  * V1quit (Remote host closed the connection)
15:24:59  * xaqquit (Remote host closed the connection)
15:25:56  * AndreasMadsenjoined
15:26:19  * ericktquit (Quit: erickt)
15:27:46  * ericktjoined
15:27:49  * ericktquit (Client Quit)
15:31:53  * brsonjoined
15:33:15  * xaqjoined
15:45:18  * bradleymeckjoined
15:58:30  * mmalecki[slides]changed nick to mmalecki
16:00:37  * xaqquit (Remote host closed the connection)
16:08:49  * c4miloquit (Read error: Connection reset by peer)
16:08:54  * c4milo_joined
16:09:43  * dapjoined
16:18:53  <piscisaureus_>hey sblom
16:19:00  <piscisaureus_>you might find it a little silent here
16:19:08  <piscisaureus_>that's because isaacs and bnoordhuis are off to a conference
16:19:37  <indutny>:)
16:19:46  <piscisaureus_>hey, indutny is alive?
16:19:50  <piscisaureus_>s/?/!/
16:19:51  <indutny>yes, I am
16:19:56  <indutny>hi
16:20:19  <piscisaureus_>indutny: sblom is the new node guy from msft
16:20:28  <indutny>sblom: o hai!
16:20:35  <indutny>his name is claudio?
16:20:41  <piscisaureus_>:-)
16:20:42  <piscisaureus_>no
16:20:45  <piscisaureus_>it's Scott
16:20:54  <indutny>oh
16:20:57  <indutny>good
16:21:11  <indutny>piscisaureus_: review https://github.com/joyent/node/pull/4156 ?
16:21:21  <piscisaureus_>indutny: have you never spoken to Claudio? He is the program manager at msft (igorzi's boss)
16:21:23  <indutny>seems to be working fine on osx
16:21:32  <indutny>piscisaureus_: aah, nope I hadn't
16:22:11  <piscisaureus_>indutny: I don't see how this change makes child processes close...
16:22:45  <indutny>well it won't make it close
16:22:45  <piscisaureus_>indutny: I just seen that it always emits SIGINT on the readling object (instead of only when it's not a terminal)
16:23:03  <indutny>I don't follow last sentence
16:23:24  <piscisaureus_>s/readling/readline/
16:23:35  <indutny>aah
16:23:54  <indutny>well
16:23:59  <indutny>that's a cool thing
16:24:15  <indutny>other way
16:24:21  <indutny>is handling SIGHUP in child process
16:24:50  <indutny>ok, I'll try it
16:25:15  <piscisaureus_>indutny: I'm really confused now. The commit message says "Receing SIGINT signal should not just close process, but close child process too."
16:25:27  <indutny>indeed
16:25:30  <indutny>that's what it is doing
16:25:31  <piscisaureus_>indutny: the typo aside
16:25:39  <piscisaureus_>indutny: so how does it work?
16:25:55  <indutny>by default, master process isn't watching any signals
16:26:06  <indutny>SIGINT on readline is not really a signal, but ^C listener
16:26:12  <piscisaureus_>yeah
16:26:17  * AndreasMadsenquit (Remote host closed the connection)
16:26:29  <piscisaureus_>that's because when you put the tty in raw mode, ^C doesnt trigger sigint
16:26:57  <indutny>yes
16:27:00  <indutny>so
16:27:17  <indutny>when some "grand-parent" process will send signal to master
16:27:26  <indutny>it won't handle it and exit, leaving child process running
16:27:39  <indutny>and SIGINT is apparently default signal for killing process
16:27:45  <piscisaureus_>indutny: no that's SIGTERM
16:27:48  <indutny>no
16:27:54  <indutny>SIGTERM is a bad bad thing
16:28:05  <piscisaureus_>indutny: ?
16:28:31  <indutny>aah
16:28:37  <indutny>that's SIGKILL
16:28:40  <piscisaureus_>hmm
16:28:42  <indutny>yeah, SIGTERM is fine
16:30:00  <piscisaureus_>indutny: dude, you're the unix guy here, you're supposed to know this stuff :-)
16:31:28  <indutny>haha
16:31:57  <piscisaureus_>indutny: anyway, I can review your patch but you have to explain to me how it is supposed to work :-)
16:32:07  <piscisaureus_>indutny: because it's not very obvious here
16:32:10  <indutny>well, I need to explain this to myself first
16:32:13  <indutny>:)
16:32:16  <indutny>for example
16:32:17  <piscisaureus_>ok
16:32:18  <piscisaureus_>good
16:32:29  <indutny>child process should receive SIGHUP when parent disconnects
16:32:37  <piscisaureus_>yes
16:32:41  <indutny>we could probably add --debug-child-process flag
16:32:47  <piscisaureus_>unless they have disconnected from the session leader
16:32:53  <indutny>oh
16:32:58  <indutny>it'll propagate?
16:33:05  <piscisaureus_>but that only happens when {detached: true} is set
16:33:08  <indutny>well, debugger repl will exit on SIGHUP anyway
16:33:29  <piscisaureus_>yeah, but the child processes wont receive that when they have setsid'ed
16:33:40  <indutny>ok
16:34:08  * tomshredsjoined
16:34:39  <indutny>ok
16:34:42  <indutny>so...
16:34:49  <indutny>lets try listening to SIGHUP in child
16:34:54  <indutny>it seems to be more correct
16:36:16  <MI6>joyent/node: piscisaureus created branch upgrade-uv - http://git.io/KHqn2w
16:39:47  <piscisaureus_>why does test-debugger-wait hang?
16:44:06  <indutny>idk
16:44:19  <indutny>where is it?
16:47:06  <indutny>piscisaureus_: http://www.google.com/patents/US7028023
16:47:08  <indutny>linked list patent
16:47:57  * joshthecoderjoined
16:54:53  <piscisaureus_>indutny: haha
16:55:09  <piscisaureus_>indutny: luckily there isn't an abundance of prior art
16:55:10  * TooTallNatejoined
16:55:48  <piscisaureus_>indutny: but the ptrAux thing is somewhat funky, I don't think this is really useful except in really particular circumstances
17:00:56  <indutny>:)
17:01:02  <indutny>so
17:01:11  <indutny>both my patch and SIGHUP doesn't help here
17:01:13  <indutny>unfortunatelly
17:01:39  * c4milo_quit (Remote host closed the connection)
17:05:00  <indutny>and I don't understand why...
17:05:17  <indutny>ah
17:05:20  <indutny>all because of SIGKILL
17:08:59  <indutny>piscisaureus_: https://github.com/joyent/node/pull/4156/files
17:09:12  <indutny>does this version need comments?
17:10:56  <piscisaureus_>indutny: I still don't get why the debuggee doesn't get SIGHUP when the parent is killed
17:11:01  <piscisaureus_>will take a look myself
17:11:04  <indutny>with SIGKILL?
17:11:10  <piscisaureus_>yes
17:11:56  <indutny>dunno :)
17:11:58  <indutny>we need ben for this
17:13:20  * mmaleckichanged nick to mmalecki[slides]
17:13:22  * paddybyersquit (Ping timeout: 248 seconds)
17:14:35  * hzquit (Disconnected by services)
17:14:38  * hzjoined
17:14:53  * kazuponjoined
17:20:32  * hzquit (Disconnected by services)
17:20:35  * hzjoined
17:23:10  <TooTallNate>what's best way to overwrite n bytes at the beginning of a file with a Buffer in node?
17:23:32  <ryah>pretty sure ref counting is broken somehow
17:23:34  <TooTallNate>i don't think writeFile() would work in this case
17:23:37  <ryah>but not sure yet how...
17:24:01  <ryah>how did it become so complex? what happened to loop->active_cnt ?
17:24:06  <indutny>ryah: where?
17:24:10  <ryah>in libuv
17:24:10  <indutny>in uv
17:24:20  <indutny>well, active_cnt is gone
17:24:24  <indutny>ref count is per handle now
17:24:41  <ryah>ill try to get a test case...
17:24:42  <tjfontaine>there's always uv_walk
17:27:25  <ryah>it's still possible to have a uv_prepare_t be referenced?
17:28:38  <piscisaureus_>ryah: uv_prepare_t should reference when it is started
17:29:35  <piscisaureus_>ryah: uv_loop_t.active_handles is the reference count
17:31:11  <ryah>im unrefing it right after uv_prepare_init and then refing it occasionally
17:31:37  <piscisaureus_>ryah: what do you want to achieve. You should probably never unref it
17:31:44  <piscisaureus_>ryah: semantics changed here
17:32:04  <piscisaureus_>ryah: the mere presence of the handle doesn't keep the loop alive. It keep the loop alive only when it is started.
17:33:26  <ryah>what happens if i unref a handle before it's started?
17:33:57  <ryah>does that prevent it from adding to the active_handles when it is started?
17:34:04  <ryah>or is it ignored?
17:34:05  <indutny>piscisaureus_: apparently there're no new assembly files for 586 and x86_64 in master, other than rc4-md5
17:34:05  <piscisaureus_>ryah: yes
17:34:15  <indutny>piscisaureus_: updated PR https://github.com/joyent/node/pull/4139
17:34:22  <piscisaureus_>indutny: ok, will take a look
17:34:25  <indutny>though there're one warning
17:34:37  * indutnyld: warning: _OPENSSL_ia32cap_P has different visibility (hidden) in libopenssl.a(openssl.x86_64cpuid.o) and (default) in libopenssl.a(openssl.cryptlib.o)
17:35:04  <piscisaureus_>ryah: you can also ref() a handle that is already started and then it will keep the loop alive again
17:35:40  * mikealjoined
17:36:08  <indutny>nvm
17:36:08  <piscisaureus_>indutny: you are probably forgetting to set some preprocessor definbe
17:36:09  <indutny>just fixed it
17:36:33  <indutny>though, I've monkey-patched openssl
17:36:40  <indutny>assembly file was incorrect
17:36:55  <indutny>oh wait
17:36:57  <indutny>no it wasn't
17:37:09  <indutny>ah
17:37:11  <indutny>no it was
17:37:33  <indutny>OPENSSL_ia32cap_P is a two item integer array
17:37:46  <piscisaureus_>huh
17:37:48  <indutny>so it should have default visibility
17:37:53  <piscisaureus_>indutny: no it is a pointer
17:37:56  <piscisaureus_>indutny: to that
17:38:03  <indutny>unsigned int OPENSSL_ia32cap_P[2];
17:38:08  <indutny>well
17:38:10  <indutny>it's both
17:38:11  <indutny>;)
17:38:51  <indutny>how can I hide it in .c file?
17:39:16  <indutny>meh, it's simplier to remove ".hidden" prefix in assembly
17:39:35  <ryah>is ref handling cross platform?
17:39:37  <ryah>seems like it
17:40:09  <indutny>indeed it is
17:41:22  <piscisaureus_>ryah: yes, it is
17:41:37  <piscisaureus_>ryah: there are some rough edges :-) But you will not run into them and I will fix it soon.
17:41:54  <piscisaureus_>(but for correctness sake they will be fixed anyway)
17:42:49  <indutny>wut?
17:43:21  <indutny>:)
17:43:56  <ryah>#ifndef _WIN32
17:43:57  <ryah>enum { UV__HANDLE_INTERNAL = 0x8000, UV__HANDLE_ACTIVE = 0x4000, UV__HANDLE_REF = 0x2000, UV__HANDLE_CLOSING = 0 /* no-op on unix */
17:43:59  <ryah>};
17:44:02  <ryah>#else
17:44:04  <ryah># define UV__HANDLE_INTERNAL 0x80
17:44:07  <ryah># define UV__HANDLE_ACTIVE 0x40
17:44:09  <ryah># define UV__HANDLE_REF 0x20
17:44:12  <ryah># define UV__HANDLE_CLOSING 0x01
17:44:14  <ryah>#endif
17:44:17  <ryah>^-- really? -_-
17:44:21  * kazuponquit (Remote host closed the connection)
17:44:40  <piscisaureus_>ryah: yeah we have to go over that with sed :-)
17:44:51  <indutny>ahahah
17:44:57  <piscisaureus_>ryah: the problem is that all the handle flags are platform specific except these
17:44:58  <indutny>piscisaureus_: ++
17:44:58  <kohai>piscisaureus_ has 17 beers
17:45:15  <indutny>lets start by this
17:45:19  <piscisaureus_>ryah: I think UV__HANDLE_CLOSING will also be on unix
17:45:21  <indutny>UV__HANDLE_INTERAL = 0x8080
17:45:31  <indutny>just duplicate bytes ;)
17:45:35  <indutny>on all platforms
17:45:35  <piscisaureus_>indutny: that looks like a crappy value for flags :-)
17:45:35  <indutny>:D
17:45:43  <indutny>haha
17:45:43  <piscisaureus_>indutny--
17:45:44  <kohai>indutny has 33 beers
17:46:00  <indutny>good enough
17:46:06  <piscisaureus_>indutny---
17:46:07  <kohai>indutny has 32 beers
17:46:07  <indutny>0x8080, 0x4040, 0x2020, 0x0101
17:46:15  <indutny>and it'll work on all plaforms
17:46:19  <indutny>without sed
17:46:30  <piscisaureus_>indutny: sigh
17:46:38  <piscisaureus_>indutny: you're wrong
17:46:47  <piscisaureus_>indutny: and indexzero is squatting ind<tab> :-(
17:47:15  <indexzero>VICTORY!
17:48:00  <indexzero>[off topic] ryah: Dean McNamee is speaking at EmpireJS on Monday in NYC. If you're around I could hook you up with a ticket
17:48:14  <indutny>hahah
17:48:24  * indutnychanged nick to inddutny
17:48:29  <inddutny>piscisaureus_: try it now
17:48:35  <inddutny>;)
17:48:39  <piscisaureus_>hmm
17:48:40  <inddutny>oh
17:48:40  <piscisaureus_>no
17:48:41  <inddutny>still
17:48:47  * inddutnychanged nick to indautny
17:48:50  <indautny>haha
17:48:57  <piscisaureus_>yay
17:49:12  <indautny>still doesn't work
17:49:16  <indautny>may be just
17:49:18  <piscisaureus_>wfm
17:49:19  * indautnychanged nick to ind
17:49:23  <ind>ok
17:49:38  <piscisaureus_>ryah: we also take patches btw :_)
17:49:53  <ind>ryah isn't sending patches anymore
17:50:04  <piscisaureus_>never say never
17:50:07  <ind>he feels like github became alexander sphere for him
17:50:57  <ind>piscisaureus_: while two main guys are on conference
17:51:03  <ind>lets refactor all C++ parts of node
17:51:07  <ind>silently
17:51:20  <piscisaureus_>ind: you have good ideas for that?
17:51:25  <ind>yes
17:51:31  <piscisaureus_>ind: sure, go ahead
17:51:31  <ind>lets rewrite them in C#
17:51:40  <piscisaureus_>...
17:51:41  <ind>we'll loose some users
17:51:47  <rendar>lol
17:51:52  <ind>but that's so good
17:52:14  <ind>await and everything
17:52:18  <ind>strong type system
17:52:22  <ind>and garbage collection
17:52:28  <piscisaureus_>well, I'd like to have await in node
17:52:36  <ind>see ^^^
17:52:39  <ind>that's the point
17:52:49  <tjfontaine>I like the sugar in c#
17:53:29  * c4milojoined
17:53:38  * `3rdEdenquit (Quit: brb, switching machines)
17:53:48  <rendar>await can be doable with std::async in C++ maybe?
17:54:31  <piscisaureus_>no
17:54:36  <ind>it can be done in JS
17:54:38  <ind>;)
17:54:46  <piscisaureus_>yes
17:55:10  <rendar>yes, directly in js, interesting
17:55:19  * stagasjoined
17:55:38  <ind>has anyone tested tlsnappy?
17:55:58  <ind>I haven't really got a chance to test it on other systems than ubuntu and osx
17:56:18  <ind>also we need to bundle latest node-gyp in node
17:56:26  * `3rdEdenjoined
17:58:50  <ryah>ok nevermind just a bad reinterpret_cast
17:59:12  <piscisaureus_>ryah: haha
17:59:49  <ryah>:)
17:59:51  <piscisaureus_>ryah: I was sad that you disliked the new refcounting, because I'm really happy with it. And it basically solved all the issues in node
17:59:56  <piscisaureus_>ryah: good to hear that :-)
18:00:30  <ryah>i just don't like having to change my mental model of how things work :)
18:00:36  <ind>:)
18:00:47  <piscisaureus_>ryah: you're getting old ;-)
18:00:52  <ryah>would be nice if those handle->flags weren't differnt cross platform
18:01:01  <piscisaureus_>ryah: we want to fix this indeed.
18:01:06  <ryah>got confused which was which for a while
18:01:11  <piscisaureus_>ryah: some flags will always be platform-specific
18:01:27  <piscisaureus_>ryah: but the "shared" flags should just be 0x1, 0x2, 0x4, 0x8
18:02:00  * V1joined
18:05:38  * `3rdEdenquit (Ping timeout: 248 seconds)
18:13:34  * indexzeroquit (Quit: indexzero)
18:14:04  <MI6>joyent/node: Bert Belder master * c11c19b : uv: upgrade to 1e32cb0 - http://git.io/WPQBRA
18:14:45  * kazuponjoined
18:19:26  * jmar777quit (Remote host closed the connection)
18:20:02  * jmar777joined
18:20:45  * lohkeyjoined
18:22:47  * paddybyersjoined
18:23:46  * kazuponquit (Ping timeout: 245 seconds)
18:23:50  * jmar777_joined
18:24:21  * jmar777quit (Ping timeout: 260 seconds)
18:25:24  <piscisaureus_>ryah: are you trying to troll the functional guys?
18:25:26  * mikealquit (Quit: Leaving.)
18:26:58  * AvianFluquit (Remote host closed the connection)
18:27:15  <txdv>why no c#
18:28:08  <ryah>i just think most people don't think about this stuff much, and i do - so thought i should give my opinion :)
18:29:07  <ryah>txdv: why c# ?
18:29:14  <ryah>there is no reason
18:29:24  <ryah>therefore death
18:30:03  <txdv>big pusher of features compared to other languages
18:30:18  <piscisaureus_>let's just make 1 language
18:30:21  <piscisaureus_>that has all the features
18:30:25  <ryah>yes
18:30:29  <piscisaureus_>whaha
18:30:33  <ryah>let's go back to the 1980s with C and unix
18:30:35  <ryah>seriously
18:30:48  <ryah>back when syscalls were 10 lines of code
18:33:27  <txdv>People create languages because they don't like camelCase and would like to see a version of the BCL in CamelCase
18:34:29  * perezdjoined
18:36:10  <piscisaureus_>the good old days
18:36:19  <piscisaureus_>when the air was clean and sex was dirty
18:37:21  <CoverSlide>let's make a js engine in pascal
18:38:21  <txdv>libuv is naked C, though it is designed for node, which uses v8 c++
18:38:23  <txdv>why
18:38:46  <CoverSlide>mode of node is in C
18:39:00  <CoverSlide>mostly just the stuff that touches v8 is in C++
18:39:32  <txdv>em, yeah, because most of node is libuv
18:40:05  * jmar777_quit (Remote host closed the connection)
18:40:12  <CoverSlide>even before libuv
18:40:21  <txdv>before libuv there was libev
18:40:42  * jmar777joined
18:42:10  <CoverSlide>libev was in c, libeio was in c, ares was in c
18:42:24  <txdv>they still all are
18:42:30  <ryah>txdv: to not upset the c people
18:42:30  * c4miloquit (Remote host closed the connection)
18:42:50  <txdv>I c ppl
18:42:51  <ryah>also symbol mangling is really annoying
18:43:15  <txdv>O yeah, that one really sucks
18:43:33  <piscisaureus_>it would be okay if it was standardized
18:44:09  <ryah>it would be okay if i never had to see mangled symbols
18:44:18  <ryah>but unfortuantely you spend all day staring at them
18:44:23  <txdv>it will never be
18:44:56  * jmar777quit (Ping timeout: 246 seconds)
18:45:01  <txdv>this is one of those things which technology could solve easily
18:45:14  * jmar777joined
18:45:17  <txdv>but people just don't want for some reason to agree upon a standard
18:45:42  <piscisaureus_>sunk cost
18:45:53  <piscisaureus_>if you change it then all compiled libraries stop working
18:46:13  <piscisaureus_>ok, that's not really sunk cost -- path dependency
18:46:24  <txdv>the gcc people didn't have a problem with breaking it once already
18:46:27  <ryah>we're going to fix this whole "computer problem"
18:46:49  <piscisaureus_>we're going back to steam engines?
18:47:15  <txdv>in what ways did the computer replace the steam engine
18:47:16  <ryah>we're going back to a simple proceedural interafce that is fast and works
18:47:33  <ryah>*procedural
18:48:30  <piscisaureus_>txdv: in the times of the industial revolution, people worked in factories and what they'd do was dictated by what the steam engine could drive.
18:48:42  <piscisaureus_>txdv: nowadays it's the computer
18:48:52  <txdv>we all now work in front of computers
18:49:07  <txdv>but that's where you are wrong, I live in front of my computer
18:51:22  * c4milojoined
18:55:56  * V1quit (Remote host closed the connection)
18:56:51  <piscisaureus_>I wonder if I should expose uv_loop_new() to js in node
18:57:06  <tjfontaine>to what end?
18:57:12  <piscisaureus_>it'd make spawnSync very easy
18:57:24  <tjfontaine>ah
18:57:43  <txdv>spawnSync?
18:57:59  <txdv>o the sync variant of spawn
18:58:16  <piscisaureus_>var loop = new process.binding('loop').Loop()
18:58:34  <tjfontaine>I have a use case where I use uv via ffi, it would be interesting if we exposed the whole damn thing :P
18:58:50  <txdv>ffi?
18:58:52  <txdv>what ffi?
18:59:00  <tjfontaine>node-ffi
18:59:13  <txdv>ffi in node exposing the libuv API?
18:59:17  <piscisaureus_>exec('echo ola', function(err, stdout, stderr) {
18:59:18  <piscisaureus_> saved_stout = stdout;
18:59:18  <piscisaureus_>}, {loop: loop} );
18:59:26  <piscisaureus_>process.binding('loop').run(loop);
18:59:32  <piscisaureus_>process.binding('loop').delete(loop);
18:59:37  <tjfontaine>txdv: well I just have to use the process it doesn't actually rely on libuv.so
18:59:40  <piscisaureus_>return { stdout: saved_stdout, ... }
18:59:46  <piscisaureus_>^-- so nice :-)
19:00:09  <tjfontaine>piscisaureus_: make it so then :)
19:00:19  <piscisaureus_>I am afraid that people will abuse it
19:00:26  <piscisaureus_>to make sync networking etc
19:00:37  <tjfontaine>caveat emptor
19:01:03  <piscisaureus_>isaacs: ryah: TooTallNate: opinions on that?
19:01:36  <tjfontaine>it's not going to be a true module, just internal, I don't see a reason why not that's how you handle timers right now as well
19:03:02  <piscisaureus_>it'd be really nice to have a low-level uv binding like in luvit
19:03:37  <tjfontaine>it makes sense to have thin wrappers and to do as much plumbing in the js side as possible, in my estimation
19:03:57  <piscisaureus_>well, from a maintainability perspectve, yes
19:04:08  <tjfontaine>balancing the number of times you cross the barrier of course
19:04:09  <piscisaureus_>but not from a performance perspective unfortunately
19:04:31  * EhevuTovquit (Quit: This computer has gone to sleep)
19:08:47  <txdv>so you want to write a libuv binding with node-ffi?
19:09:05  <piscisaureus_>txdv: over my dead body :-)
19:09:08  <tjfontaine>I don't think anyone is really advocating that
19:09:26  <piscisaureus_>txdv: I just (maybe) want libuv bindings the good old fashion hard-work way
19:09:28  <tjfontaine>I have a small use case where I plumb uv_poll though
19:09:59  <txdv>that would be even more work
19:10:40  <txdv>without threads in node I don't see many applicable scenarios
19:12:11  <txdv>node has no built in threads
19:12:14  <txdv>i mean v8
19:13:52  <piscisaureus_>I'm gonna go home
19:14:01  <piscisaureus_>big party tonight
19:14:06  <piscisaureus_>see you all later
19:14:07  <txdv>no, you code
19:14:10  <tjfontaine>enjoy
19:14:23  <piscisaureus_>hopefully
19:14:32  <txdv>no, you code
19:15:09  * c4miloquit (Remote host closed the connection)
19:16:33  * indexzerojoined
19:18:03  * c4milojoined
19:18:53  * paddybyersquit (Read error: No route to host)
19:19:13  * paddybyersjoined
19:20:17  * kazuponjoined
19:25:02  * kazuponquit (Ping timeout: 252 seconds)
19:25:17  * paddybyersquit (Ping timeout: 252 seconds)
19:26:29  * jmar777quit (Remote host closed the connection)
19:27:05  * jmar777joined
19:29:22  * c4miloquit (Remote host closed the connection)
19:31:29  * jmar777quit (Ping timeout: 256 seconds)
19:34:26  * c4milojoined
19:46:57  <bradleymeck>piscisaureus_: do you know cli stuff on windows? how to spawn something with `runas` and have pipes connected for .fork to work?
19:49:49  * TooTallNatequit (Ping timeout: 255 seconds)
19:52:01  * TooTallNatejoined
19:52:20  * brsonquit (Ping timeout: 265 seconds)
19:52:33  * jmar777joined
19:53:33  * lohkeyquit (Quit: lohkey)
19:57:31  * bradleymeckquit (Quit: bradleymeck)
20:11:36  * brsonjoined
20:14:27  * lohkeyjoined
20:21:10  * kazuponjoined
20:22:12  * hzquit (Ping timeout: 272 seconds)
20:26:27  * kazuponquit (Ping timeout: 246 seconds)
20:27:21  * hzjoined
20:37:18  * jmar777quit (Remote host closed the connection)
20:37:52  * jmar777joined
20:40:56  * c4miloquit (Remote host closed the connection)
20:42:36  * jmar777quit (Ping timeout: 260 seconds)
20:44:20  * mmalecki[slides]changed nick to mmalecki
20:44:36  <piscisaureus_>bradleymeck: don't know. CreateProcessAsUser I think
20:45:06  * paddybyersjoined
20:49:35  * c4milojoined
20:50:39  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
20:58:31  * bnoordhuisjoined
21:05:19  <bnoordhuis>i'm away for one day and already bert is slacking off
21:06:31  <mmalecki>lol
21:19:22  * pooyajoined
21:22:38  * kazuponjoined
21:27:31  * kazuponquit (Ping timeout: 260 seconds)
21:28:45  * indexzeroquit (Quit: indexzero)
21:31:17  * mmaleckichanged nick to mmalecki[party]
21:31:38  <mmalecki[party]>bnoordhuis: boat didn't leave, soooo
21:37:16  * EhevuTovjoined
21:43:50  <TooTallNate>isaacs: are we gonna offer like a Tee stream or something? the lack of being able to pipe to multiple writables is hurting me right now
21:46:45  * indexzerojoined
21:47:26  * rendarquit
21:48:50  <txdv>are there bindings for dart?
21:52:48  <CoverSlide>i dont think so
21:57:58  * c4miloquit (Remote host closed the connection)
22:00:55  <txdv>all their apis are async anyway
22:02:24  <txdv>no async keyword
22:02:45  * bnoordhuisquit (Ping timeout: 246 seconds)
22:07:17  <CoverSlide>dart has futures
22:11:14  * seebeesjoined
22:13:34  <rphillips>does anyone know why uv_tcp_connect might be throwing an unknown error?
22:14:09  * stagasquit (Ping timeout: 240 seconds)
22:16:04  * stagasjoined
22:23:31  * kazuponjoined
22:25:17  * tommybergeronjoined
22:25:19  * tommybergeronquit (Client Quit)
22:27:49  * kazuponquit (Ping timeout: 240 seconds)
22:28:06  * tomshredsquit (Ping timeout: 246 seconds)
22:35:31  <seebees>has anyone used v8::Object::GetHiddenValue and v8::Object::SetHiddenValue in node?
22:36:21  <TooTallNate>ircretary: tell isaacs here's a quick POC Tee stream class. What do you think? I think it will be necessary for core. https://gist.github.com/3908775
22:36:21  <ircretary>TooTallNate: I'll be sure to tell isaacs
22:46:52  <TooTallNate>ircretary: tell isaacs also, it's probably too late now, but having a "readable" event implies "multiple listeners" to me, which is a false assumption now since readable streams can only be read by one consumer. Maybe an _readable() function would have been better *shrug*
22:46:52  <ircretary>TooTallNate: I'll be sure to tell isaacs
22:47:27  <TooTallNate>ircretary: tell isaacs it might be nice if .pipe() threw if it's already being piped to somewhere else (it might already do that, haven't checked yet)
22:47:27  <ircretary>TooTallNate: I'll be sure to tell isaacs
23:07:50  <txdv>saghul: nice amount of tests
23:08:08  <saghul>txdv where?
23:08:39  <txdv>in pyuv
23:08:56  <saghul>oh, thanks! :-)
23:15:18  * indexzeroquit (Quit: indexzero)
23:18:01  * hzquit
23:19:31  * paddybyersquit (Ping timeout: 260 seconds)
23:24:20  * kazuponjoined
23:26:38  * perezdquit (Quit: perezd)
23:29:11  * kazuponquit (Ping timeout: 255 seconds)
23:36:57  * EhevuTovquit (Quit: This computer has gone to sleep)
23:49:06  * kazuponjoined