00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:08  * ircretaryjoined
00:00:57  <MI6>libuv-master-gyp: #100 UNSTABLE windows-x64 (3/193) smartos-x64 (2/192) smartos-ia32 (2/192) linux-x64 (1/192) windows-ia32 (3/193) linux-ia32 (1/192) http://jenkins.nodejs.org/job/libuv-master-gyp/100/
00:02:19  * leonvvquit (Remote host closed the connection)
00:06:13  * perezdquit (Quit: perezd)
00:07:18  * perezdjoined
00:09:02  * amartensquit (Quit: Leaving.)
00:21:11  * icarotjoined
00:22:41  * dapquit (Quit: Leaving.)
00:28:14  * icarotquit (Remote host closed the connection)
00:29:12  * bnoordhuisquit (Ping timeout: 260 seconds)
00:32:38  * julianduquequit (Ping timeout: 264 seconds)
00:33:25  * mikealquit (Quit: Leaving.)
00:34:21  * mikealjoined
00:34:37  * mikealquit (Client Quit)
00:35:28  * mikealjoined
00:36:43  * TooTallNatequit (Quit: Computer has gone to sleep.)
00:38:55  * julianduquejoined
00:38:57  * julianduquequit (Changing host)
00:38:58  * julianduquejoined
00:50:53  * indexzerojoined
00:54:05  * TooTallNatejoined
00:54:25  <Domenic_>so when should I be using templates for these JS-exposed functions? What does that buy me anyway?
01:00:06  * stagasquit (Ping timeout: 264 seconds)
01:07:41  * jmar777joined
01:08:25  <Domenic_>OK it's the return value
01:08:33  <Domenic_>when will the return value not be just Value?
01:08:39  <Domenic_>Maybe exceptions...
01:09:11  <tjfontaine>I'm confused about your conversation
01:09:24  <tjfontaine>in the case of an exception you don't need to worry about return value in that case
01:09:30  <tjfontaine>*question
01:09:43  <Domenic_>yeah it looks like exceptions return v8::Undefined < v8::Primitive < v8::Value
01:10:04  <tjfontaine>right, by default you don't need to SetReturnValue or whatever it is
01:10:16  <Domenic_>the question is, why is the original code I am copying doing template <typename TypeName> static void whatever(const FunctionCallbackInfo<TypeName>& args)
01:10:27  <Domenic_>instead of just static void whatever(const FunctionCallbackInfo<Value>& args)
01:11:09  <tjfontaine>the latter seems perfectly fine for me :)
01:11:23  * mikealquit (Quit: Leaving.)
01:11:34  <tjfontaine>it's helpful if you're trying to make sure you always return a specific type though, at compile time
01:12:23  <Domenic_>ah i see, so it constraints it to just one TypeName (although that TypeName might be something very generic like Value, so, not so useful).
01:14:10  * mikealjoined
01:14:30  * mikealquit (Client Quit)
01:20:10  * TooTallNatequit (Quit: Computer has gone to sleep.)
01:26:00  * felixgequit (Quit: felixge)
01:29:47  * abraxasjoined
01:32:03  * jmar777quit (Remote host closed the connection)
01:33:27  * st_lukequit (Remote host closed the connection)
01:35:14  * bnoordhuisjoined
01:39:37  * bnoordhuisquit (Ping timeout: 246 seconds)
01:58:36  * paulfryzelquit (Remote host closed the connection)
01:59:10  * paulfryzeljoined
02:03:26  * paulfryzelquit (Ping timeout: 240 seconds)
02:07:13  <isaacs>tjfontaine: OutgoingMessage refactor status: [00:36|% 100|+ 125|- 9]: Done
02:13:57  * brsonquit (Ping timeout: 248 seconds)
02:17:38  * sblomquit (Ping timeout: 264 seconds)
02:20:53  * st_lukejoined
02:21:22  * swajquit (Quit: leaving)
02:21:44  * swajjoined
02:29:43  * paulfryzeljoined
02:37:53  * paulfryzelquit (Ping timeout: 240 seconds)
03:16:29  * indexzeroquit (Quit: indexzero)
03:20:19  * amartensjoined
03:31:37  * st_lukequit (Remote host closed the connection)
03:33:11  * amartensquit (Quit: Leaving.)
03:40:08  * st_lukejoined
03:43:20  * brsonjoined
03:48:28  * amartensjoined
03:56:09  * kazuponjoined
03:57:40  * kazuponquit (Remote host closed the connection)
03:57:47  * kazuponjoined
04:04:22  * groundwaterjoined
04:05:12  * st_lukequit (Remote host closed the connection)
04:06:44  * mikealjoined
04:07:07  * mikealquit (Client Quit)
04:09:05  * mikealjoined
04:16:06  * mikealquit (Quit: Leaving.)
04:34:28  * mikealjoined
04:43:05  * bajtosjoined
04:50:35  * brsonquit (Quit: Lost terminal)
04:51:15  * brsonjoined
04:52:52  * brsonquit (Client Quit)
04:53:36  * brsonjoined
05:05:27  * kazupon_joined
05:06:13  * kazuponquit (Ping timeout: 248 seconds)
05:23:39  * mikealquit (Quit: Leaving.)
05:30:24  * groundwaterquit (Quit: groundwater)
05:30:26  * st_lukejoined
05:41:01  * st_lukequit (Remote host closed the connection)
05:53:08  * perezdquit (Quit: perezd)
05:53:48  * mikealjoined
05:56:52  * groundwaterjoined
06:04:13  * mikealquit (Ping timeout: 246 seconds)
06:07:47  * amartensquit (Quit: Leaving.)
06:25:39  * felixgejoined
06:30:19  * mikealjoined
06:31:00  * leonvvjoined
06:42:05  <MI6>nodejs-v0.10-windows: #141 UNSTABLE windows-ia32 (6/594) windows-x64 (7/594) http://jenkins.nodejs.org/job/nodejs-v0.10-windows/141/
06:42:49  * brsonquit (Quit: leaving)
06:51:34  * st_lukejoined
06:55:29  * bnoordhuisjoined
06:56:02  * st_lukequit (Ping timeout: 264 seconds)
07:03:24  * abraxasquit (Read error: Connection reset by peer)
07:03:56  * abraxasjoined
07:13:56  * AvianFluquit (Remote host closed the connection)
07:16:40  * kenperkinsquit (Ping timeout: 246 seconds)
07:16:43  * kenperkins_joined
07:17:25  * hzjoined
07:58:27  * dominictarrjoined
08:00:57  * wolfeidaujoined
08:03:04  * dominictarrquit (Client Quit)
08:17:03  * bnoordhuisquit (Ping timeout: 256 seconds)
08:22:30  * leonvvquit (Remote host closed the connection)
08:26:07  * dominictarrjoined
08:29:27  * rendarjoined
08:37:48  * csaohjoined
09:14:58  * bajtosquit (Quit: bajtos)
09:23:49  * bnoordhuisjoined
09:31:27  * wolfeidauquit (Ping timeout: 260 seconds)
09:40:10  <MI6>joyent/libuv: Ben Noordhuis master * 3399d7b : darwin: reduce fsevents thread stack size (+2 more commits) - http://git.io/wdBVIw
09:40:17  * stagasjoined
09:42:31  <MI6>joyent/libuv: Ben Noordhuis master * c82e703 : darwin: reduce fsevents thread stack size (+1 more commits) - http://git.io/yUPVWA
09:42:37  <bnoordhuis>^ better commit log
09:49:58  <MI6>joyent/node: Matthias BartelmeƟ master * 4ac6912 : crypto: add TLS 1.1 and 1.2 to secureProtocol list - http://git.io/GEJaTA
09:53:22  * defunctzombiechanged nick to defunctzombie_zz
10:00:24  * pfox__quit (Ping timeout: 260 seconds)
10:00:52  * pfox__joined
10:02:07  * kazupon_quit (Remote host closed the connection)
10:05:48  * wolfeidaujoined
10:14:49  <MI6>joyent/node: Ben Noordhuis master * d2b80b8 : src: clean up FSReqWrap (+1 more commits) - http://git.io/v6Hm2A
10:31:49  * stagas_joined
10:33:39  * hzquit (Disconnected by services)
10:33:43  * hzjoined
10:35:28  * pfox___joined
10:36:03  * mordy___joined
10:36:12  * einaros_joined
10:37:02  * emilsedgh_joined
10:40:33  * pfox__quit (*.net *.split)
10:40:33  * stagasquit (*.net *.split)
10:40:33  * csaohquit (*.net *.split)
10:40:33  * groundwaterquit (*.net *.split)
10:40:33  * ircretaryquit (*.net *.split)
10:40:34  * mordy__quit (*.net *.split)
10:40:34  * DrPizzaquit (*.net *.split)
10:40:34  * emilsedghquit (*.net *.split)
10:40:34  * `3rdEdenquit (*.net *.split)
10:40:35  * hij1nxquit (*.net *.split)
10:40:35  * chobie4quit (*.net *.split)
10:40:35  * einarosquit (*.net *.split)
10:45:18  * rendarpart ("Leaving")
10:46:33  * csaohjoined
10:46:33  * groundwaterjoined
10:46:33  * ircretaryjoined
10:46:33  * DrPizzajoined
10:47:04  * chobie4joined
10:47:28  * `3rdEdenjoined
10:47:40  * hij1nxjoined
10:47:55  * csaohquit (Ping timeout: 248 seconds)
11:29:40  * kazuponjoined
11:52:36  * kazuponquit (Remote host closed the connection)
11:56:34  * wolfeidauquit (Remote host closed the connection)
12:29:27  * jmar777joined
12:32:02  * pachetjoined
12:36:44  * piscisaureus_joined
12:42:47  * hzquit
12:43:32  * bradleymeckjoined
13:01:47  <piscisaureus_>damn, rebasing stuff is hard
13:01:53  <piscisaureus_>with all the v8 changes :(
13:12:45  * bradleymeckquit (Quit: bradleymeck)
13:15:54  <piscisaureus_>I find that rebasing in small steps is much easier
13:16:07  <piscisaureus_>Is there no way to combine rebase with bisect? :-/
13:22:51  * AvianFlujoined
13:28:33  * EhevuTovjoined
13:28:34  * EhevuTovquit (Remote host closed the connection)
13:30:34  * AvianFluquit (Remote host closed the connection)
13:31:10  * AvianFlujoined
13:46:41  <piscisaureus_>bnoordhuis: hey, the value I'm supposed to return to js-land is negative right
13:46:57  <piscisaureus_>like -UV_ENOMEM
13:46:58  <piscisaureus_>?
13:51:10  * mikealquit (Quit: Leaving.)
13:57:30  * indexzerojoined
14:01:52  <bnoordhuis>piscisaureus_: correct
14:02:21  <piscisaureus_>bnoordhuis: how do I throw? Just throw and then don't touch the return value?
14:02:31  <piscisaureus_>no more return ThrowException()
14:10:35  * mikealjoined
14:10:57  * mikealquit (Client Quit)
14:12:04  <bnoordhuis>piscisaureus_: yeah. `return ThrowException()` works actually, it returns void now just like native callbacks
14:12:17  <piscisaureus_>bnoordhuis: thanks. Sorry, lazyirc and all that
14:12:23  <piscisaureus_>trevnorris: this comment:
14:12:23  <piscisaureus_> // this is safe b/c Undefined and length fits in an SMI, so there's no risk
14:12:23  <piscisaureus_> // of GC reclaiming the values prematurely.
14:12:28  <bnoordhuis>np :)
14:12:33  <piscisaureus_>trevnorris: I can't figure why it would even be an issue...
14:12:43  <piscisaureus_>trevnorris: and technically, Undefined is not an SMI :)
14:13:20  <bnoordhuis>i wager it's to avoid creating a new handlescope?
14:16:33  <piscisaureus_>handlescope creation is 2 lines above...
14:17:31  <piscisaureus_>offending code: https://github.com/joyent/node/blob/d2b80b8a60bf1e966a4091e62bb603fb825a6ada/src/node_buffer.cc#L135
14:18:45  <piscisaureus_>bnoordhuis: btw, what's up?
14:20:23  <bnoordhuis>piscisaureus_: nothing much. just chillin'
14:20:35  <piscisaureus_>bnoordhuis: really?
14:20:40  <bnoordhuis>come to think of it, i may have steered trevor in that direction
14:21:28  <bnoordhuis>Handle vs. Local HandleScope safety
14:21:31  <bnoordhuis>but here it doesn't matter
14:21:34  * `3rdEdenchanged nick to `3E|GONE
14:21:43  <piscisaureus_>That's what I thought :)
14:22:41  <bnoordhuis>piscisaureus_: btw, what are you doing working on node all of a sudden again?
14:22:50  <bnoordhuis>trying to read up for today's status call?
14:22:53  <piscisaureus_>bnoordhuis: well I started planning last week
14:23:06  <bnoordhuis>what? parenthood?
14:23:11  <piscisaureus_>bnoordhuis: so I figured that I have ~ 3 hours for actual programming every day
14:23:23  <bnoordhuis>oh, that kind of planning
14:23:35  <piscisaureus_>yes. hour by hour planning
14:23:48  <piscisaureus_>so yesterday and today I was planning to do execSync
14:23:52  <bnoordhuis>and?
14:24:03  <piscisaureus_>unfortunately yesterday an emergency happened
14:24:12  <piscisaureus_>but now it's even more almost ready
14:24:14  <piscisaureus_>I just rebased
14:24:30  <piscisaureus_>Now I have to write the stuff in lib/child_process.js
14:25:18  <piscisaureus_>unfortunately I won't make it for the status call b/c sprint planning
14:25:50  <bnoordhuis>hrm, did the sprint call move?
14:26:01  <piscisaureus_>it's every 2 weeks tuesday @ 5
14:26:25  * bradleymeckjoined
14:26:29  <piscisaureus_>8am PST if you're that much into PST :)
14:27:24  <bnoordhuis>yeah
14:27:35  <bnoordhuis>but the node status call is at 1800
14:27:37  <piscisaureus_>yes
14:27:55  <bnoordhuis>i should hope people can get their sprint planning done in < 1h
14:28:04  <piscisaureus_>yes that generally works
14:28:13  <piscisaureus_>what you're thinking about is demo on monday
14:28:17  <piscisaureus_>which is way too long
14:28:25  <piscisaureus_>and I think we'll break it up soon
14:28:43  <bnoordhuis>okay, good
14:29:05  <bnoordhuis>but getting back on topic, that means there's no excuse for you not to join the status call, bertje :)
14:29:16  <piscisaureus_>nope, I will join
14:29:23  <piscisaureus_>but thinking about it...
14:29:31  <bnoordhuis>yes?
14:29:34  <piscisaureus_>I'm going to move to another place where they have beer
14:29:40  <piscisaureus_>:)
14:29:51  <bnoordhuis>heh
14:31:00  <piscisaureus_>b/c the OBA doesn't unfortunately except at the laplace terrace but the wifi coverage sucks there
14:31:14  <piscisaureus_>ok - bbiab
14:33:53  * julianduquequit (Quit: leaving)
14:34:53  * julianduquejoined
14:35:23  * piscisaureus_quit (Ping timeout: 240 seconds)
14:36:04  * AndreasMadsenjoined
14:37:54  * julianduquequit (Read error: Connection reset by peer)
14:40:16  * julianduquejoined
14:41:10  * mikealjoined
14:43:03  * jmar777quit (Remote host closed the connection)
14:47:55  * paulfryzeljoined
14:50:03  * kazuponjoined
14:52:54  * mikealquit (Ping timeout: 264 seconds)
15:00:54  * stagas_changed nick to stagas
15:01:11  * bajtosjoined
15:02:01  <mordy___>hrm, does uv do anything globally funky on Windows?
15:02:26  <mordy___>i'm trying to figure out why 'recv' isn't working properly anymore when loading libufv
15:03:08  <mordy___>it's probably a bug in my application, but it seems to happen only when uv is loaded
15:10:15  * pachetquit (Ping timeout: 260 seconds)
15:11:53  * julianduquequit (Quit: leaving)
15:15:02  * c4milojoined
15:21:23  * bradleymeckquit (Remote host closed the connection)
15:22:05  * bradleymeckjoined
15:23:48  * bradleymeckquit (Client Quit)
15:27:52  * mikealjoined
15:28:56  * piscisaureusjoined
15:30:01  <piscisaureus>is ircretary confused?
15:30:12  <piscisaureus>it started rehashing all my all notes
15:32:39  * piscisaureusquit (Client Quit)
15:32:56  * piscisaureusjoined
15:33:16  * pachetjoined
15:34:22  * bnoordhuisquit (Ping timeout: 246 seconds)
15:36:22  * mikealquit (Quit: Leaving.)
15:36:59  * mikealjoined
15:38:17  * mikealquit (Client Quit)
15:54:27  * sblomjoined
15:54:33  <trevnorris>morning
15:56:08  <piscisaureus>talkie talkie coming up?
15:56:14  * bnoordhuisjoined
15:56:57  <bnoordhuis>call?
15:57:34  <piscisaureus>I'm the only one in the hangout so far :)
15:57:39  <piscisaureus>but then we have 3 minutes left
15:57:45  <trevnorris>link?
15:57:47  <piscisaureus>so isaacs has time to get dressed
15:58:00  <piscisaureus>https://plus.google.com/hangouts/_/5b6b53fce8c09512b15a7e7d5c2fbb51d9557288
15:58:42  * isaacsjust walked in
15:59:48  <isaacs>tjfontaine: i'm in 7
16:07:29  * brsonjoined
16:07:41  * saghulchanged nick to saghul[afk]
16:13:52  * AvianFlu_joined
16:17:03  * TooTallNatejoined
16:17:37  <piscisaureus>sblom: I planned to be around until atleast 11am pst on thursday
16:17:51  * dapjoined
16:18:08  <piscisaureus>sblom: if you need more time we can decide on the spot. If you need a different time please drop me an email.
16:18:54  * julianduquejoined
16:18:58  * julianduquequit (Changing host)
16:18:58  * julianduquejoined
16:20:30  * bnoordhuisquit (Ping timeout: 264 seconds)
16:20:40  * piscisaureusquit (Quit: Leaving.)
16:24:15  * perezdjoined
16:39:20  * amartensjoined
16:39:23  * austojoined
16:42:38  * rendarjoined
16:43:11  * spolujoined
16:43:35  * julianduquequit (Quit: leaving)
16:56:30  * AvianFlu_quit (Ping timeout: 264 seconds)
16:57:15  * Benviequit (Ping timeout: 256 seconds)
17:04:39  * c4miloquit (Remote host closed the connection)
17:06:06  * st_lukejoined
17:09:30  * c4milojoined
17:11:41  * Benviejoined
17:20:31  <mordy___>hrrm...
17:20:31  <mordy___>Error #2: UNINITIALIZED READ: reading 0x0031f40c-0x0031f410 4 byte(s)
17:20:33  <mordy___># 0 libuv.dll!uv_poll_ex [c:\libuv\src\win\core.c:238]
17:21:28  <mordy___>that happens in my own iocp code as well (basically the ulCount parameter)
17:26:03  * mikealjoined
17:26:38  * bnoordhuisjoined
17:30:43  <trevnorris>bnoordhuis: i'm impressed. other than a minor regression in nextTick there's no discernible performance difference w/ your context patch. now, if I can just figure out how to read those define's in env.h i'll be good :)
17:31:15  <bnoordhuis>trevnorris: yeah, it's been relatively painless so far
17:33:36  * defunctzombie_zzchanged nick to defunctzombie
17:36:34  * c4miloquit (Remote host closed the connection)
17:43:44  * spoluquit (Ping timeout: 256 seconds)
17:48:42  * bnoordhuisquit (Ping timeout: 264 seconds)
17:50:25  * indexzeroquit (Quit: indexzero)
18:00:42  * kazuponquit (Remote host closed the connection)
18:05:09  * mikealquit (Quit: Leaving.)
18:05:12  * st_lukequit (Read error: Connection reset by peer)
18:05:39  * st_lukejoined
18:09:10  * mikealjoined
18:09:28  * mikealquit (Client Quit)
18:12:42  * c4milojoined
18:12:43  * mikealjoined
18:15:22  * bnoordhuisjoined
18:22:47  * hzjoined
18:24:09  * bnoordhuisquit (Ping timeout: 276 seconds)
18:37:58  <trevnorris>isaacs: if there was another name for "domain", what would you call it?
18:39:24  <ik>range transpose
18:40:08  <trevnorris>oh, for the domain module
18:43:38  <tjfontaine>GITHUB RAGE
18:43:38  <LOUDBOT>DISSEMINATION OF INFORMATION IS FUTILE !! COMMUNISM WILL OWN YOU ALL !!
18:45:18  * hzquit
18:46:35  * piscisaureus_joined
18:55:33  * indexzerojoined
19:00:42  <groundwater>@tjfontaine: so i ended up using External
19:05:37  <tjfontaine>groundwater: did it work out ok?
19:05:50  <groundwater>i haven't segfaulted anything yet
19:07:01  <groundwater>i realize having some sort of library to wrap/free pointers would be extremely helpful
19:07:07  <groundwater>i may take a peak at your lib
19:09:02  <trevnorris>ircretary: tell bnoordhuis is it necessary to have the "assert(context stuff)" in every MakeCallback instead of just the one that'll be calling the callback?
19:09:02  <ircretary>trevnorris: I'll be sure to tell bnoordhuis
19:09:12  * bajtosquit (Quit: bajtos)
19:12:31  * pachetquit (Quit: leaving)
19:23:41  * `3E|GONEchanged nick to `3rdEden
19:24:19  * mikealquit (Quit: Leaving.)
19:43:35  * dominictarrquit (Quit: dominictarr)
19:49:04  * spolujoined
19:51:26  * AvianFluquit (Remote host closed the connection)
19:51:28  <mordy___>hrm; how do i get that vcbuild script to generate the correct PlatformToolset
19:51:33  * perezdquit (Quit: perezd)
19:51:55  <mordy___>i'm in the VS2010 shell but the project generated keeps saying v110 for PlatformToolset
19:52:04  <mordy___>presumably because i have VS 2012 installed as wlel
19:52:28  * julianduquejoined
19:52:28  * perezdjoined
19:53:11  * mikealjoined
20:00:36  * wolfeidaujoined
20:02:28  * wolfeidauquit (Read error: Connection reset by peer)
20:06:28  * AndreasMadsenquit (Remote host closed the connection)
20:07:07  * bnoordhuisjoined
20:12:14  <bnoordhuis>trevnorris: re: those asserts in MakeCallback, they're not terribly expensive checks
20:12:26  <bnoordhuis>but yeah, i may hoist them more
20:16:54  * piscisaureus_quit (Ping timeout: 264 seconds)
20:19:42  * mikealquit (Quit: Leaving.)
20:25:36  * mikealjoined
20:27:04  * kellabytequit (Remote host closed the connection)
20:56:25  <bnoordhuis>god, going through bug reports is depressing
20:57:03  <bnoordhuis>if programmers - supposedly smart people - can be that stupid, what does that say about the general population?
20:57:04  * mikealquit (Quit: Leaving.)
20:58:11  * mikealjoined
20:58:47  <bnoordhuis>pfox___: is https://github.com/joyent/libuv/issues/328 still an issue for rust?
20:58:54  * brsonquit (Ping timeout: 264 seconds)
21:14:05  * pachetjoined
21:35:13  * `3rdEdenchanged nick to `3E|Zzz
21:36:07  <Raynos>Why is cluster considered experimental ?
21:38:11  * TooTallNatequit (Quit: Computer has gone to sleep.)
21:38:17  <bnoordhuis>Raynos: because the api and the implementation aren't frozen yet
21:38:25  <Raynos>I understand that
21:38:37  <Raynos>I guess the question is better phrased as would it be bad to use in production
21:38:42  * c4miloquit (Remote host closed the connection)
21:38:49  <Raynos>in terms of bugs rather then forward breaking changes
21:38:57  <Raynos>I can deal with breaking changes
21:39:19  * piscisaureus_joined
21:39:46  <bnoordhuis>Raynos: oh, like that. no, it's perfectly okay to use in production
21:39:56  * piscisaureus_quit (Client Quit)
21:40:03  <bnoordhuis>Raynos: and the 'experimental' bit means 'between major releases'
21:40:14  <Raynos>understand
21:40:19  <bnoordhuis>i.e. we won't break the api in a v0.10 release
21:40:20  <Raynos>is the api changing significantly in 0.12 so far?
21:40:40  <bnoordhuis>no. the implementation however has
21:40:46  <bnoordhuis>it's pretty much a full rewrite
21:41:08  <bnoordhuis>and it does round-robin load balancing now rather than leaving it to the operating system
21:47:19  * indexzeroquit (Quit: indexzero)
21:56:18  * kellabytejoined
21:56:18  * kellabytequit (Changing host)
21:56:18  * kellabytejoined
22:01:53  <trevnorris>bnoordhuis: sounds good
22:04:13  <bnoordhuis>apropos nothing, some of those debug statements in lib/_http_common.js and lib/_http_server.js appear to be pretty expensive
22:04:36  <bnoordhuis>just removing the one debug statement in lib/_http_common.js seems to give a 2-3% speedup on bench-http
22:04:41  <trevnorris>imho, then they go.
22:05:27  <bnoordhuis>maybe a little more testing to see what's costly and what's not
22:09:26  <bnoordhuis>mailing list's busy tonight. i get posts from new members in the moderation queue about every 5-10 minutes
22:14:45  <bnoordhuis>hrm, i suspect our belief in v8's inlining capabilities is a little misguided
22:15:02  <bnoordhuis>that debug function is an empty function when logging is disabled
22:15:19  <bnoordhuis>but try as i might, i can't get v8 to actually optimize it away
22:15:54  <bnoordhuis>it's still a 88 byte function that calls StackCheckStub and InterruptStub :-/
22:16:10  <trevnorris>bnoordhuis: afaik it won't. it has to double check since the function might have been reassigned
22:16:25  <trevnorris>i was analyzing that a couple weeks ago
22:17:21  <bnoordhuis>well, i'm sad panda
22:17:29  <bnoordhuis>a module is basically a big function
22:17:49  <bnoordhuis>v8's analyzer should (or at least could) be clever enough to figure out debug is never reassigned
22:18:33  <bnoordhuis>oh, interesting - when lithium kicks in, it gets optimized to a 58 byte function that only calls StackCheckStub
22:18:57  <bnoordhuis>only it never kicks in unless i call %OptimzeFunctionOnNextCall() manually :)
22:19:06  <trevnorris>hah
22:19:25  <trevnorris>people keep telling me those empty functions will be optimized away, but apparently not in practice.
22:19:33  <bnoordhuis>no, doesn't seem like it
22:20:20  <trevnorris>also the module loading system seems to have some affect, since like you mentioned each module is basically a function call.
22:21:23  <bnoordhuis>btw, thoughts on this? https://github.com/bnoordhuis/node/compare/joyent:master...http-numeric-properties
22:21:29  <bnoordhuis>it's what we discussed a while ago
22:21:42  <bnoordhuis>i'm not going to land it right away, i'll open a pr first
22:22:29  <bnoordhuis>also, i need to run some proper benchmarks first - os x on a laptop is not great for benchmarking :)
22:23:08  * mikealquit (Quit: Leaving.)
22:23:55  <trevnorris>bnoordhuis: test-http-parser L114 forgot to use kOnHeadersComplete?
22:25:28  <bnoordhuis>so i did
22:25:36  <trevnorris>bnoordhuis: +1 from me.
22:25:48  <trevnorris>and preliminary lgtm
22:26:10  <bnoordhuis>thanks :)
22:26:40  <trevnorris>yup
22:26:51  <trevnorris>that'll be nice to have out of the way
22:27:02  <bnoordhuis>btw, i'm tempted to cheat and use e.g. v8::internal::FixedArray for our backing objects
22:27:15  <trevnorris>heh, must faster?
22:27:19  <bnoordhuis>yeah
22:27:34  <bnoordhuis>v8::Object::Set(uint32_t) is faster than the named property version but it still does a ton of checks we don't need / care about
22:27:47  <trevnorris>awesome, let's do it!!!
22:27:47  <bnoordhuis>observers, getter checks, access checks, etc.
22:28:11  <trevnorris>create a wrapper for it in node_internals
22:28:11  <bnoordhuis>yeah, so FixedArray is of course internal - it might go away at any time :)
22:28:25  <bnoordhuis>but yes, that's kind of what i had in mind
22:28:34  <trevnorris>awesome. i like the idea.
22:28:56  * c4milojoined
22:29:05  <trevnorris>i was examining how they're v8::ArrayBuffer could be so fast, and yeah. all that internal magic allows them to cheat.
22:30:03  <bnoordhuis>okay, i'll see if i can brew up something
22:30:19  * trevnorriswaits patiently
22:30:25  <bnoordhuis>but for now, cereal and CS research papers!
22:30:29  * c4miloquit (Remote host closed the connection)
22:30:36  <bnoordhuis>light bedtime reading, you understand
22:30:49  <trevnorris>hah, sure
22:31:04  <trevnorris>as always, enjoy your cereal
22:31:30  * TooTallNatejoined
22:33:04  <bnoordhuis>thanks trevor, have a good night
22:33:12  <trevnorris>night
22:36:43  * c4milojoined
22:41:23  * felixgequit (Quit: felixge)
22:46:45  * austoquit (Read error: Connection reset by peer)
23:10:50  * spoluquit (Ping timeout: 245 seconds)
23:14:34  * rendarquit
23:25:51  <mordy___>hrm; what do you folks use to debug node memory leaks on windows
23:25:52  <mordy___>?
23:26:39  <tjfontaine>what sorts of "node memory leaks"
23:27:09  <mordy___>my extension seems to be leaking.. i mean the usage just grows and grows and grows
23:27:26  <tjfontaine>use VS
23:27:34  <mordy___>hrm; does that do leak checking?
23:28:22  <tjfontaine>it can
23:29:05  <mordy___>this stuff? http://msdn.microsoft.com/en-us/library/e5ewb1h3(v=vs.90).aspx
23:30:52  <mordy___>hrm maybe it's not really leaking
23:34:24  * TooTallNatequit (Quit: ["Textual IRC Client: www.textualapp.com"])
23:34:29  <mordy___>on linux the extension (running in a loop and doing the same thing over and over) stabilizes at 50M
23:34:57  <mordy___>but it reaches that number very quickly and then stops allocating
23:36:06  * kazuponjoined
23:38:33  * st_lukequit (Remote host closed the connection)
23:39:14  * kazuponquit (Read error: Connection reset by peer)
23:39:37  * kazuponjoined
23:40:44  * pachetquit (Quit: leaving)
23:41:42  * kazuponquit (Remote host closed the connection)
23:44:52  <tjfontaine>could be gc objects
23:49:52  * st_lukejoined
23:50:38  * c4miloquit (Remote host closed the connection)
23:57:01  * c4milojoined
23:57:58  * brsonjoined
23:59:05  * paulfryzelquit (Remote host closed the connection)
23:59:18  * st_lukequit (Remote host closed the connection)
23:59:41  * paulfryzeljoined