00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:09  * ircretaryjoined
00:09:35  * kazuponquit (Remote host closed the connection)
00:09:42  * HenryRquit (Ping timeout: 264 seconds)
00:10:16  * kazuponjoined
00:18:27  * mikealquit (Quit: Leaving.)
00:19:43  * qardquit (Quit: Leaving.)
00:24:36  * inolenjoined
00:30:40  * wmiljoined
00:32:49  * TooTallNatequit (Quit: Computer has gone to sleep.)
00:43:46  * abraxasjoined
00:44:58  * theColejoined
00:47:24  * theColequit (Client Quit)
00:47:39  * wmilquit (Remote host closed the connection)
00:48:41  * qardjoined
00:48:48  * mikealjoined
00:57:12  * TooTallNatejoined
00:57:45  * mikealquit (Ping timeout: 256 seconds)
01:05:14  * kazuponquit (Remote host closed the connection)
01:06:42  * dapquit (Ping timeout: 264 seconds)
01:09:30  * pooyaquit (Quit: pooya)
01:13:23  * dapjoined
01:26:14  * TooTallNatequit (Quit: Computer has gone to sleep.)
01:28:19  * c4milojoined
01:35:30  * kazuponjoined
01:45:06  * kazuponquit (Ping timeout: 264 seconds)
02:03:42  * abraxasquit (Remote host closed the connection)
02:07:16  * abraxasjoined
02:07:42  * dapquit (Quit: Leaving.)
02:15:33  * defunctzombie_zzchanged nick to defunctzombie
02:28:06  * defunctzombiechanged nick to defunctzombie_zz
02:30:02  * defunctzombie_zzchanged nick to defunctzombie
02:40:52  * kazuponjoined
02:46:12  * TooTallNatejoined
02:50:15  * kazuponquit (Ping timeout: 252 seconds)
02:54:10  * defunctzombiechanged nick to defunctzombie_zz
02:55:09  * kazuponjoined
03:00:21  * kazuponquit (Ping timeout: 248 seconds)
03:01:33  * mikealjoined
03:04:14  * mikealquit (Client Quit)
03:53:08  * defunctzombie_zzchanged nick to defunctzombie
03:55:34  * kazuponjoined
04:04:16  * kazupon_joined
04:04:28  * kazuponquit (Ping timeout: 276 seconds)
04:37:02  * TooTallNatequit (Quit: Computer has gone to sleep.)
04:47:38  * TooTallNatejoined
05:01:42  * defunctzombiechanged nick to defunctzombie_zz
05:03:48  * defunctzombie_zzchanged nick to defunctzombie
05:05:09  * defunctzombiechanged nick to defunctzombie_zz
05:09:20  * defunctzombie_zzchanged nick to defunctzombie
05:18:06  * defunctzombiechanged nick to defunctzombie_zz
05:20:20  <trevnorris>isaacs: whoot. binary encoding is now faster than ascii!
05:20:29  * qardquit (Quit: Leaving.)
05:26:04  * loladiroquit (Quit: loladiro)
05:46:08  * pooyajoined
05:47:31  * loladirojoined
05:54:19  * kazupon_quit (Ping timeout: 276 seconds)
06:10:11  * TooTallNatequit (Quit: Computer has gone to sleep.)
06:20:44  * loladiroquit (Quit: loladiro)
06:22:41  * paddybyersjoined
06:23:14  <trevnorris>tjfontaine: thanks to #c++, figured out the problem. forgot to "length * sizeof(uint16_t)" in the memcopy.
06:23:23  <trevnorris>tjfontaine: makes sense now that I see it. oh the little things.
06:47:47  * c4miloquit (Remote host closed the connection)
06:51:53  * kazuponjoined
06:52:13  <trevnorris>isaacs: fyi, just noticed that String::New() and String::NewSymbol() are both being deprecated. don't know if you're aware, but wanted to throw it out just in case.
07:00:28  * mikealjoined
07:15:10  * kazuponquit (Ping timeout: 256 seconds)
07:23:35  * hueniverse1quit (Quit: Leaving.)
07:27:52  * kazuponjoined
07:44:48  * rendarjoined
08:02:11  * dscape__quit (Quit: Connection closed for inactivity)
08:04:59  <indutny>isaacs: is it like you've stopped mentioning me as a core team member?
08:05:27  <indutny>that's very interesting
08:06:09  <brucem>indutny: I'd be happy to have you as a core team member.
08:19:51  * amartensquit (Quit: Leaving.)
08:21:21  * kenperkinsquit (Read error: Connection reset by peer)
08:22:08  * kenperkinsjoined
08:32:11  * abraxasquit (Remote host closed the connection)
08:50:10  * amartensjoined
08:55:07  * hzjoined
08:57:59  * amartensquit (Ping timeout: 252 seconds)
08:59:26  * kazuponquit (Remote host closed the connection)
09:05:04  * leonvvjoined
09:18:51  * leonvvquit (Remote host closed the connection)
09:21:42  * paddybyersquit (Ping timeout: 264 seconds)
09:50:03  * bnoordhuisjoined
09:53:58  <indutny>bnoordhuis: hey ben
09:54:08  <indutny>how are you doing?
09:54:44  * amartensjoined
09:59:22  * amartensquit (Ping timeout: 276 seconds)
10:10:05  * kazuponjoined
10:11:42  * dominictarrjoined
10:15:37  * kazuponquit (Ping timeout: 276 seconds)
10:24:08  * kazuponjoined
10:31:38  <bnoordhuis>indutny: hey fedor, i'm fine. what about you?
10:39:57  * mralephjoined
10:44:51  * kazuponquit (Remote host closed the connection)
10:45:51  * kazuponjoined
10:47:57  * kazuponquit (Remote host closed the connection)
10:55:04  * amartensjoined
10:59:30  * amartensquit (Ping timeout: 264 seconds)
11:01:54  * udpquit (Quit: udp)
11:14:06  <indutny>bnoordhuis: fine too
11:14:56  <indutny>want to review some PR?
11:15:09  <indutny>https://github.com/joyent/node/pull/5638
11:24:32  <bnoordhuis>ah, that explains some things
11:34:33  * dominictarrquit (Quit: dominictarr)
11:40:11  <indutny>thanks
11:41:05  <MI6>joyent/node: Fedor Indutny master * 9ae1d18 : crypto: free excessive memory in NodeBIO - http://git.io/R3lamA
11:50:29  * bnoordhuisquit (Ping timeout: 248 seconds)
11:54:28  <MI6>nodejs-master: #252 UNSTABLE smartos-ia32 (2/604) smartos-x64 (6/604) osx-x64 (1/604) http://jenkins.nodejs.org/job/nodejs-master/252/
11:55:24  * amartensjoined
11:59:55  * amartensquit (Ping timeout: 260 seconds)
12:18:39  * kazuponjoined
12:22:16  <MI6>nodejs-master-windows: #60 UNSTABLE windows-x64 (25/604) windows-ia32 (21/604) http://jenkins.nodejs.org/job/nodejs-master-windows/60/
12:23:25  * kazuponquit (Ping timeout: 256 seconds)
12:55:49  * amartensjoined
12:56:16  * bnoordhuisjoined
13:00:43  * amartensquit (Ping timeout: 276 seconds)
13:00:50  * bnoordhuisquit (Ping timeout: 256 seconds)
13:12:04  * piscisaureus_joined
13:19:27  * kazuponjoined
13:23:07  * olalondejoined
13:23:45  <olalonde>noob question: how does node know it should not terminate the process? it happens mostly when you are listening on a port
13:24:24  * kazuponquit (Ping timeout: 260 seconds)
13:26:40  <piscisaureus_>olalonde: because uv_run() doesn't return
13:27:59  <olalonde>ok but why it doesn't return? is there a flag somewhere that says that there is at least one opened connection or something?
13:28:06  <piscisaureus_>olalonde: uv_run doesn't return until it figures that no events can possibly happen in the future. In case of a listening server, incoming connections can happen.
13:28:26  <olalonde>ok thanks
13:29:40  <olalonde>is there an api to close all connections? or is that specific to httpServer or whichever library opened the connection?
13:30:24  <piscisaureus_>olalonde: this is controllable with uv_ref() and uv_unref() btw if you need it (e.g. you can create a timer or a server that doesn
13:30:47  <piscisaureus_>'t keep node going when it is the only event source left)
13:31:21  <olalonde>actually the problem I have is I am testing my http server and some middleware (redis) opens a redis connection and the process never exits. I was wondering if I could safely close all connections
13:31:42  <olalonde>ok I willl look into that
13:32:07  <piscisaureus_>olalonde: if you are on a recent version of node, you could patch the redis client to unref() the connection.
13:32:39  <olalonde>cool thanks a lot for the help
13:33:04  <olalonde>I think it'd be nice if Node would expose that api.
13:33:10  <piscisaureus_>it does
13:33:21  <olalonde>would help debugging when you have a process that doesn't terminate and you aren't sure why
13:34:02  <piscisaureus_>you don't have to tell my why because the api is already exposed
13:34:26  <olalonde>I meant expose it to non-native module programmers.
13:34:36  <olalonde>directly from javascript
13:35:21  <piscisaureus_>olalonde: dude. I'm telling you it does.
13:35:28  <piscisaureus_>try this in the repl
13:35:29  <piscisaureus_>setTimeout(function(){console.log('hello')},1000); process.stdin.unref();
13:35:43  <olalonde>ah ok I guess I was waiting for you to tell me this :)
13:35:53  <olalonde>couldn't find it in http://nodejs.org/api/all.html
13:36:09  <olalonde>damn, its there
13:36:10  <olalonde>nvm
13:36:17  <olalonde>thanks
13:43:08  * AvianFlujoined
13:43:37  * AvianFluquit (Remote host closed the connection)
13:54:23  * loladirojoined
13:56:06  * amartensjoined
13:57:40  * dominictarrjoined
13:58:10  <olalonde>is there a "isref" api?
13:58:15  <olalonde>would be nice for testing
13:58:39  <olalonde>it would return true by default and false if unref was called
14:00:49  * amartensquit (Ping timeout: 261 seconds)
14:12:06  * loladiroquit (Quit: loladiro)
14:12:11  * kazuponjoined
14:25:36  * loladirojoined
14:30:40  * c4milojoined
14:40:12  * c4miloquit (Remote host closed the connection)
14:56:25  * amartensjoined
15:01:00  * amartensquit (Ping timeout: 257 seconds)
15:14:15  * amartensjoined
15:17:09  * dominictarrquit (Quit: dominictarr)
15:20:11  * dominictarrjoined
15:21:25  <piscisaureus_>olalonde: there isn't in node
15:27:56  * amartensquit (Quit: Leaving.)
15:29:26  <olalonde>ok
15:38:36  * defunctzombie_zzchanged nick to defunctzombie
15:46:10  * defunctzombiechanged nick to defunctzombie_zz
15:47:44  * bnoordhuisjoined
15:50:11  * paddybyersjoined
15:52:25  * defunctzombie_zzchanged nick to defunctzombie
15:55:43  <tjfontaine>olalonde, piscisaureus_: well at least not in v0.10, and not public api anyway
15:56:11  <olalonde>ok
15:56:16  <olalonde>would be useful for testing
15:56:27  <tjfontaine>olalonde: there are two options to know if something is ref'd, process._getActive{Request,Handles} is the most public of the options
15:56:44  <olalonde>ok
15:56:54  <tjfontaine>olalonde: in master there's also an internal flag, something._handle.hasref
15:57:30  <olalonde>ah, nice
16:03:34  * paddybyersquit (Ping timeout: 256 seconds)
16:12:51  * bnoordhuisquit (Ping timeout: 260 seconds)
16:15:39  * paddybyersjoined
16:24:28  <indutny>isaacs: so while you've considered me not a core team member anymore
16:24:37  <indutny>I decided to at least push stuff that I was working on https://github.com/joyent/node/pull/5645
16:24:49  <indutny>hope you'll be interested
16:28:18  * amartensjoined
16:29:46  <tjfontaine>ah interesting, I was doing something similar
16:30:20  <tjfontaine>except I had added virtual BeforeWrite and AfterRead methods
16:31:33  * piscisaureus_quit (Ping timeout: 248 seconds)
16:33:16  * amartensquit (Ping timeout: 276 seconds)
16:36:48  * dominictarrquit (Quit: dominictarr)
16:42:39  <indutny>tjfontaine: huh?
16:42:43  <indutny>you was working on tlswrap?
16:50:50  * loladiroquit (Quit: loladiro)
17:04:27  <tjfontaine>indutny: not too seriously, I was looking at something that trevnorris had mentioned, he wanted a way to "short circuit" the js jump for streams, tls was merely an example of that, so I was trying to see how we could accomodate that in core without too much hackery
17:05:04  <indutny>ah
17:05:10  <indutny>well, nice idea
17:05:30  <indutny>it seems that the most performance comes from writing/reading directly to openssl's memory
17:05:38  <indutny>its 2x faster than raw tls
17:05:40  <tjfontaine>so I abstracted Alloc, Shrink, BeforeWrite, AfterRead into virtuals that descendent classes could override do to the transform work
17:05:53  <indutny>I see
17:06:16  * defunctzombiechanged nick to defunctzombie_zz
17:07:02  <indutny>tjfontaine: have you got anything working?
17:07:33  <tjfontaine>just stubs compiling really, I'm going to commit this stuff, and then push to a branch so you can laugh at my openssl newbness :P
17:10:07  * c4milojoined
17:10:46  * defunctzombie_zzchanged nick to defunctzombie
17:11:36  <tjfontaine>indutny: https://github.com/tjfontaine/node/compare/tls-wrap
17:11:49  * kazuponquit (Remote host closed the connection)
17:13:52  <tjfontaine>one fatal flaw of course is that 1 clear text write, doesn't necessarily equate to 1 ssl write, and then of course handshaking and all the other good stuff that would need to be done
17:18:36  * bnoordhuisjoined
17:23:19  * bnoordhuisquit (Ping timeout: 276 seconds)
17:25:29  <indutny>ok, I think we can try using my solution now
17:25:32  <indutny>because its working :)
17:25:42  <indutny>it only needs .shutdown() to be implemented
17:25:46  <indutny>and some error handling
17:25:57  <indutny>tjfontaine: btw, why was you working on it?
17:26:03  <indutny>I thought that was on my list
17:26:18  <indutny>no offense, just curious if I missed something
17:26:34  <tjfontaine>indutny: it was, I was just curious about how to do the short circuit that trevor wanted, and I get bored working on the tests at times
17:26:41  <indutny>ah
17:26:42  <indutny>k
17:28:17  <tjfontaine>indutny: does it need to inherit from tcpwrap though? it what if I wanted to do tls over a pipe or stdin? :P
17:28:39  <indutny>well
17:28:39  * amartensjoined
17:28:48  <indutny>it doesn't
17:29:00  <indutny>and I somewhat like your approach here
17:29:05  <indutny>its just to stub out things
17:29:10  <tjfontaine>nod
17:29:15  <indutny>and figure out if there's any performance improvement
17:29:29  <indutny>tjfontaine: if you like my solution - we can possibly integrate your changes and mine
17:29:38  <indutny>does it sounds interesting to you?
17:29:46  <indutny>I can open you push access to my indutny/node repo
17:30:25  <tjfontaine>well there's not much to merge from mine :)
17:30:50  * defunctzombiechanged nick to defunctzombie_zz
17:31:35  <indutny>ahha
17:31:36  <tjfontaine>I like how there is some overlap between these, at least I know I'm not crazy :)
17:31:37  <indutny>ok
17:31:44  <indutny>yeah
17:31:46  <indutny>same on my side
17:31:54  <indutny>ok
17:31:56  <indutny>movie time
17:31:57  <indutny>ttyl
17:32:01  <tjfontaine>enjoy!
17:32:01  <indutny>say hi to isaacs
17:32:04  <indutny>thanks
17:33:06  * amartensquit (Ping timeout: 256 seconds)
17:36:58  * paddybyersquit (Ping timeout: 276 seconds)
17:53:28  * defunctzombie_zzchanged nick to defunctzombie
17:55:06  * defunctzombiechanged nick to defunctzombie_zz
18:14:25  * kazuponjoined
18:24:06  * kazuponquit (Ping timeout: 256 seconds)
18:28:46  * mikealquit (Quit: Leaving.)
18:35:52  * loladirojoined
18:36:04  * paddybyersjoined
18:36:56  * piscisaureus_joined
18:42:05  * hz_joined
18:42:05  * hz_quit (Changing host)
18:42:05  * hz_joined
18:42:05  * hzquit (Disconnected by services)
18:42:10  * hz_changed nick to hz
18:49:12  * paddybyersquit (Ping timeout: 260 seconds)
18:52:57  * defunctzombie_zzchanged nick to defunctzombie
18:58:53  * qardjoined
18:58:57  * qardquit (Client Quit)
19:08:29  * defunctzombiechanged nick to defunctzombie_zz
19:19:49  * kazuponjoined
19:24:17  * kazuponquit (Ping timeout: 248 seconds)
19:28:54  * amartensjoined
19:33:19  * brsonjoined
19:33:22  * amartensquit (Ping timeout: 246 seconds)
19:34:17  * hzquit (Read error: No buffer space available)
19:34:40  * hzjoined
19:52:27  * paddybyersjoined
19:57:59  * piscisaureus_quit (Read error: Connection reset by peer)
19:59:03  * piscisaureus_joined
20:02:38  * ik_joined
20:05:10  * tjfontainequit (Ping timeout: 276 seconds)
20:06:02  * rvagg_joined
20:06:16  * toothrjoined
20:07:59  * rvaggquit (Ping timeout: 246 seconds)
20:08:00  * ikquit (Ping timeout: 246 seconds)
20:08:00  * toothrotquit (Ping timeout: 246 seconds)
20:08:01  * rvagg_changed nick to rvagg
20:09:16  * loladiroquit (Quit: loladiro)
20:09:45  * tjfontainejoined
20:10:02  * tjfontainechanged nick to Guest72097
20:12:03  * brsonquit (Ping timeout: 269 seconds)
20:12:03  * brson_joined
20:20:26  * kazuponjoined
20:25:18  * kazuponquit (Ping timeout: 264 seconds)
20:29:15  * amartensjoined
20:33:52  * amartensquit (Ping timeout: 256 seconds)
20:42:22  * loladirojoined
20:47:35  * Guest72097changed nick to tjfontaine
20:47:44  * tjfontainequit (Changing host)
20:47:44  * tjfontainejoined
20:56:09  * bnoordhuisjoined
21:03:54  * paddybyersquit (Ping timeout: 256 seconds)
21:14:34  * kenperkinsquit (Quit: Textual IRC Client: http://www.textualapp.com/)
21:18:23  * kenperkinsjoined
21:18:54  * kenperkinsquit (Client Quit)
21:19:12  * toothrchanged nick to toothrot
21:20:30  <tjfontaine>bnoordhuis: I liked that in fedors tls work I saw some similar abstractions for what I had been doing as well https://github.com/tjfontaine/node/commit/a7b88e691a4961611ca45013d0a67b5ce639d4e3
21:21:03  * kazuponjoined
21:25:54  * kazuponquit (Ping timeout: 264 seconds)
21:26:39  <bnoordhuis>tjfontaine: great minds :)
21:27:58  <bnoordhuis>tjfontaine: btw, did i ever send you those .spec files?
21:28:09  <tjfontaine>no, but if you would that'd be great
21:28:37  <bnoordhuis>okay. adding to my todo list
21:29:33  * amartensjoined
21:29:34  <tjfontaine>thanks
21:33:53  * amartensquit (Ping timeout: 240 seconds)
21:34:06  * mikealjoined
21:38:10  * paddybyersjoined
21:58:00  * rendarquit
22:03:04  * hzquit
22:14:44  <MI6>joyent/node: Ben Noordhuis v0.8 * 8a3d0c8 : child_process: fix handle delivery - http://git.io/3VxDTQ
22:15:29  <tjfontaine>oh did someone get bit by that?
22:16:47  <tjfontaine>oh right, bnoordhuis did you know we're leaking an ECHO symbol from termios?
22:18:02  <tjfontaine>makes for interesting fun if you have uv and flex/yacc stuff happening as it uses ECHO and not YY_ECHO
22:21:40  * kazuponjoined
22:21:50  <bnoordhuis>tjfontaine: you mean uv.h leaks that?
22:22:07  <tjfontaine>ya
22:22:35  <bnoordhuis>ah...
22:22:47  <bnoordhuis>that's unfortunate but i don't know how to fix that
22:23:05  <bnoordhuis>uv-unix.h includes termios.h to get the definition of struct termios
22:23:10  <tjfontaine>nod
22:23:20  <tjfontaine>for now we're just undef'ing it
22:23:45  <tjfontaine>the fact that this config parser needs to know structs from uv is arguably a bug anyway
22:24:08  <tjfontaine>but ancient code is full of annoying decisions
22:24:09  <bnoordhuis>what is it doing with them?
22:25:14  <tjfontaine>bnoordhuis: well, it's a fork of ircd-hybrid replacing the event mechanism, the conf parser needs to tweak client stuff, which has a handle on it
22:26:30  * kazuponquit (Ping timeout: 264 seconds)
22:26:44  <bnoordhuis>ah okay. interesting
22:28:20  <MI6>nodejs-v0.8: #46 UNSTABLE osx-x64 (1/472) linux-x64 (2/472) osx-ia32 (1/472) linux-ia32 (1/472) smartos-ia32 (1/472) smartos-x64 (1/472) http://jenkins.nodejs.org/job/nodejs-v0.8/46/
22:29:48  * kenperkinsjoined
22:29:54  * amartensjoined
22:34:07  * amartensquit (Ping timeout: 245 seconds)
22:51:58  <olalonde>bnoordhuis: hey, have a look at https://github.com/joyent/node/issues/5644#issuecomment-19150905 when you have time
22:52:26  <olalonde>if its not a bug, its really weird behavior
22:53:06  <tjfontaine>I just commented, that's working as expected
22:53:23  <tjfontaine>you're telling the event loop its ok to exit if the only handle left is that socket
22:56:01  <olalonde>right
22:56:04  <olalonde>i must be tired
22:56:10  <tjfontaine>heh
22:56:12  <olalonde>i sweared it was returning 8 a few mins ago
22:56:15  <olalonde>haha
22:56:29  <tjfontaine>0 can look an awful lot like 8 depending on your font :)
22:57:23  <olalonde>ah, I think it returns 8 if I throw an error, is that expected?
22:58:48  <tjfontaine>there are a few defined exit codes yes
22:58:58  <olalonde>yeah I guess so. anyways sorry for wasting your time
22:59:40  <tjfontaine>olalonde: https://github.com/joyent/node/blob/master/src/node.cc#L1898-1901
22:59:44  <tjfontaine>there are others there
23:00:10  <olalonde>thanks
23:11:11  * AvianFlujoined
23:15:37  * paddybyersquit (Ping timeout: 276 seconds)
23:21:40  * brson_quit (Quit: leaving)
23:22:46  * kazuponjoined
23:27:13  * kazuponquit (Ping timeout: 245 seconds)
23:30:15  * amartensjoined
23:31:47  <bnoordhuis>olalonde: see comment on #5644 :)
23:31:52  <tjfontaine>er what
23:32:12  <tjfontaine>oh yes
23:32:16  <tjfontaine>anyway
23:32:28  <olalonde>haha
23:32:36  <olalonde>right
23:33:28  <olalonde>when this happened i think it was returning 8 when i was using a spawn and 0 when running from bash
23:33:57  <olalonde>I think the problem was that my parent process was causing some sort of state change that caused the child to fail connecting to redis
23:34:16  <olalonde>took me a while to figure
23:34:43  * amartensquit (Ping timeout: 245 seconds)
23:42:31  * joshthecoder_changed nick to joshthecoder
23:44:47  * paddybyersjoined