00:45:36  <dap>is anyone using 64-bit node? how does one build it these days?
00:52:29  * mikealjoined
01:43:01  <igorzi>isaacs: hey, yt?
01:43:06  <isaacs>yessir
01:43:08  <isaacs>what's up?
01:48:44  <igorzi>issacs: sorry.. for https://github.com/joyent/node/issues/2207.. npm\npmrc file needs to have prefix =<whatever>, where <whatever> must be the expanded path?
01:48:52  <igorzi>isaacs: --^
01:49:25  <igorzi>isaacs: it can't literally be %APPDATA%\npm?
01:49:39  <isaacs>igorzi: yes, that is correct
01:49:55  <isaacs>i mean, i could add support for expanding env vars in the config somehow
01:50:03  <isaacs>but that seems odd
01:50:18  * mikealquit (Quit: Leaving.)
01:50:38  <igorzi>isaacs: the issue is that this will most likely make the msi much more complex, requiring custom actions
01:50:55  <isaacs>hm. i see.
01:51:12  <isaacs>if we do make it support configs, i'd prefer $STYLE
01:51:19  <isaacs>or even {BLAH}
01:51:27  <isaacs>er, ${BLAH}
01:51:36  <igorzi>isaacs: plus, if for some reason APPDATA ever changes, npm will just continue to work if npmrc has %APPDATA%\npm
01:51:38  <isaacs>it does alreayd expand ~ to the home directory.
01:51:53  <isaacs>well, but we'll still need to add that to the path, i guess
01:51:54  <isaacs>but yeah
01:52:00  <isaacs>i changed the default cache location already
01:52:10  <igorzi>yep, ${BLAH} or $BLAH is fine
01:52:37  <isaacs>ok, that's pretty easy. i can probably land that tomorrow before ben builds the new msi version.
01:53:00  <isaacs>do you know how to change the %Path% to add %APPDATA%\npm to it?
01:53:42  <igorzi>ok cool.. then we just need to include npmrc file somewhere in the repo, and add a wix entry to install it to node_modules\npm\
01:53:56  <igorzi>isaacs: yes i think so.. i'll play with that and let you know
01:54:14  <isaacs>yeah, we can put it right in deps/npm/npmrc i guess
01:54:36  <isaacs>oh, actually, no, that's not so great… since we don't want to have it do that for unix
01:54:55  <isaacs>i'll put it in the repo somewhere, though
01:55:12  <igorzi>isaacs: right.. so maybe we can include it somewhere in tools/msvs/msi
01:55:36  * ericktquit (Quit: erickt)
01:55:47  * dapquit (Quit: Leaving.)
01:55:56  <isaacs>k
01:56:59  * dapjoined
01:57:52  * dapquit (Client Quit)
02:12:15  * AvianFluquit (Quit: Leaving)
02:24:59  * pieternquit (Quit: pietern)
02:45:29  * piscisaureus_joined
02:48:51  * brsonquit (Quit: leaving)
03:21:28  * isaacsquit (Quit: isaacs)
03:34:09  * piscisaureus_quit (Ping timeout: 248 seconds)
04:11:41  * DrPizzajoined
04:38:17  * isaacsjoined
05:04:44  * paddybyersjoined
05:05:39  * paddybyersquit (Client Quit)
05:05:51  <pquerna>isaacs: why the kafka hate?
05:07:22  * isaacsquit (Quit: isaacs)
05:18:12  * mikealjoined
05:25:16  * felixgejoined
05:30:31  * mikealquit (Quit: Leaving.)
05:31:24  * felixgequit (Quit: felixge)
05:36:16  * mikealjoined
05:55:25  * felixgejoined
05:55:26  * felixgequit (Changing host)
05:55:26  * felixgejoined
05:55:36  <igorzi>piscisaureus_: yt?
06:01:02  * felixgequit (Quit: felixge)
06:15:20  * felixgejoined
06:15:20  * felixgequit (Changing host)
06:15:20  * felixgejoined
06:56:53  * eddybjoined
06:58:14  <eddyb>I'm a bit stuck... how do you manage to make stdin not ref the loop while it's not reading?
07:15:03  * ljacksonquit (Ping timeout: 240 seconds)
07:16:49  * ljacksonjoined
07:28:04  * eddybquit (Read error: Connection reset by peer)
07:34:04  * _eddyb_joined
07:56:23  <igorzi>isaacs: https://github.com/igorzi/node/commit/e50c477fc8c7801f7aa47247ee86fc044279db76
08:00:27  * paddybyersjoined
08:08:03  * _eddyb_changed nick to eddyb
08:10:30  * mralephjoined
08:15:13  * kuebkjoined
08:34:54  <eddyb>v8
08:35:04  <eddyb>stop building twice DAMMIT
08:35:38  <eddyb>mraleph: hi :)
08:36:12  <mraleph>hi
08:36:39  <eddyb>you may be very well aware of the fact that node uses static symbols everywhere
08:37:05  <eddyb>apart from not having to compute the string hash each time, are there any other performance benefits?
08:38:15  <eddyb>because, I thought on providing a C++11-based optional extension to v8
08:38:59  <mraleph>symbols are better for lookups
08:39:06  <mraleph>because they are symbols
08:39:11  <eddyb>I can very easily write a constexpr version of the hash v8 is using
08:39:30  <eddyb>I only need an option argument to v8::String::NewSymbol
08:39:41  <mraleph>thats not going to happen
08:39:46  <mraleph>:-)
08:39:47  <eddyb>to provide the hash that's been computed at compile-time
08:40:06  <mraleph>hash is an internal property.
08:40:14  <mraleph>also it's not about hashing at all
08:40:17  <benvie>are you trying to bind to bind some other v8 context or someething?
08:40:42  <eddyb>mraleph: wouldn't it be better than just calling NewSymbol?
08:40:47  <mraleph>NewSymbol is about doing lookup in the symbol table
08:41:01  <mraleph>you should cache it's return value usually
08:41:14  <eddyb>and from what I know, that lookup is hash-based
08:41:20  <eddyb>I may be wrong, tho
08:41:23  <mraleph>yes
08:41:37  <benvie>been trying to figure out all these little thing about v8's finnickyness trying to integrate other bindings
08:41:51  <benvie>isolates is coming at the right time for me
08:42:02  <mraleph>in any case: there will never be an optinional hash argument.
08:42:15  <eddyb>mraleph: so no shiny cool compile-time precomputation?
08:42:25  <mraleph>indeed
08:42:44  <eddyb>I don't want to have ten gazillion static symbols
08:43:00  <eddyb>just for some extra CPU cycles
08:44:03  <mraleph>I understand
08:44:21  <mraleph>but there is nothing that can be done
08:44:30  <mraleph>hash is an implementation detail
08:44:45  <mraleph>it will stay implementation detail
08:45:13  <mraleph>Imagine we tweak hash function
08:45:25  <mraleph>how are you going to catch that?
08:45:27  <eddyb>mraleph: why not provide the constexpr version?
08:45:40  <eddyb>I can write it for you, just call me when it's changed
08:45:54  <mraleph>because v8.h is written not in C++11
08:46:34  <eddyb>don't tell me there's no way to check if C++11 is present
08:46:56  <eddyb>like #if __CXX_VERSION__ > 2011
08:47:02  <mraleph>there is definitely one.
08:47:04  <eddyb>or something of the sorts
08:47:15  <rmustacc>You also need to make sure your compiler actually supports it.
08:47:26  <rmustacc>No compiler supports all of C++11.
08:47:45  <rmustacc>I wouldn't be surprised if most of the big ones missed C++98 features.
08:48:34  <eddyb>https://wiki.apache.org/stdcxx/C%2B%2B0xCompilerSupport
08:48:47  <eddyb>yeah, uhm... you can then check C++11 + gcc
08:49:22  <mraleph>in any case: I don't see any benefit of leaking internal abstractions.
08:49:32  <mraleph>I see some, but not much
08:49:45  <eddyb>mraleph: uhm, okay
08:49:54  <rmustacc>It certainly doesn't seem like something you'd ever want to commit to a public API.
08:50:10  <mraleph>Either cache your symbols or don't cache them. There is not third choice
08:50:17  <eddyb>I'll try to test how bad is it without those static symbols
08:50:22  <mraleph>rmustacc: indeed.
08:50:59  <eddyb>I wish there was a way to cache them without involving v8 and without having them staticly
08:51:06  <eddyb>hihihihihiihihihi
08:51:39  <eddyb>/facepalm: why not do it like v8 does it, but with constexpr support?
08:52:21  <mraleph>you can't completely cache them even with constexpr
08:52:33  <mraleph>you just manage to avoid hash recomputation
08:53:05  <mraleph>you still have to perform table lookup
08:53:20  <eddyb>I'm trying to think this to be as fast as possible
08:53:40  <mraleph>I think you care about wrong things
08:53:46  <rmustacc>eddyb: Have you actually measured that this is actually your bottleneck?
08:53:51  <eddyb>yeah, I should profile first
08:54:06  <benvie>oh sweet v8 3.8 is in the works as of today
08:54:07  <eddyb>but at least I can do it outside of v8 if I feel like I need it
08:54:10  <rmustacc>No, get absolute numbers, don't just profile.
08:56:46  * mikealquit (Quit: Leaving.)
08:59:54  <eddyb>what's ab?
09:01:51  * mikealjoined
09:06:19  <eddyb>heh, someone failed
09:06:23  <eddyb>it's ab2, not ab
09:06:31  <eddyb>and it's in /usr/sbin
09:08:13  <eddyb>which ab 2>&1 > /dev/null || alias ab=/usr/sbin/ab2
09:10:22  <eddyb>I definitely forgot how to pipe stderr into stdout
09:13:27  * mralephquit (Quit: Leaving.)
09:35:12  * sh1mmerquit (Quit: sh1mmer)
09:36:51  * sh1mmerjoined
09:46:41  * mralephjoined
09:53:57  * mralephquit (Quit: Leaving.)
10:03:25  * sh1mmerquit (Quit: sh1mmer)
10:37:55  <benvie>I guess windows already has SLIST...
11:43:57  * felixgequit (Quit: felixge)
11:50:14  * piscisaureus_joined
12:13:53  * bnoordhuisjoined
12:17:26  <piscisaureus_>bnoordhuis: igor's cwd-chdir patch *does* include the test. The only issue I have with it is that it doesn't solve the MAX_PATH problem
12:17:41  <piscisaureus_>but we can punt on that
12:18:38  <bnoordhuis>i found out that the test was there 2 seconds after clicking 'send'
12:18:39  <piscisaureus_>windows' CWD can't be long anyway (tested it yesterday). It's max 260 chars and < 520 utf8 bytes long
12:19:46  <bnoordhuis>piscisaureus_: it can be pretty long on linux + ext3, 4K tops
12:20:14  <piscisaureus_>bnoordhuis: yeah ok but nothing you wouldn't allocate on the stack
12:20:45  <piscisaureus_>bnoordhuis: windows "really long paths" are generally limited to 32k WCHARs
12:20:53  <piscisaureus_>it's not something you'd stack alloc
12:28:36  <piscisaureus_>bnoordhuis: http://stackoverflow.com/a/833308
12:28:39  <piscisaureus_>hehe
12:29:19  <bnoordhuis>yes, 'tis true
12:32:02  <eddyb>syscalls suck
12:32:34  <eddyb>and we're stuck with this stupid API
12:33:05  <eddyb>because even if we write a better os, there won't be enough people using it to justify a better API
12:33:17  <eddyb>the chicken and the egg...
12:51:49  * felixgejoined
12:53:28  <bnoordhuis>i like syscalls
12:53:35  <bnoordhuis>i like 'em so much i even add my own
12:54:41  <eddyb>bnoordhuis: even the ones that write a string into a given char array?
12:54:53  <eddyb>I managed to write a proxy for arguments
12:55:04  * felixgequit (Read error: Connection reset by peer)
12:55:39  <eddyb>but I couldn't manage to have an elegant return strategy
12:55:50  <eddyb>I mean, how do you return a string to userspace?
12:56:02  <bnoordhuis>copy_to_user()
12:56:08  <bnoordhuis>on linux anyway
12:56:52  <bnoordhuis>with 'a proxy' you mean 'something that patches the syscall table'?
12:57:08  <eddyb>uhm, no
12:57:14  <eddyb>this was done in a hobby os
12:57:24  <bnoordhuis>oh right, nm then
12:57:32  <eddyb>it was a neat C++ interface to the kernel-space
12:58:04  <eddyb>so you were doing syscall(number, param1, param2, .....); (even strings if you want)
12:59:16  <eddyb>then the C++ handler in the kernel could do actualFunction(args.get<int>(), args.get<String>(), args.get<char>());
12:59:51  <bnoordhuis>kernels in c++, what will these young 'uns think of next?
13:00:13  <eddyb>say what you want, but USB in C++ is nice
13:00:24  <eddyb>compared to the uberfuglyfuck linux driver code is
13:00:45  <bnoordhuis>which revision? usb core has been rewritten three times already :)
13:01:07  <eddyb>there are things that can't be done nicely in C
13:02:13  <eddyb>also, with the new constexpr (and other cool features of C++11), you could have extreme optimizations while keeping a clean look
13:02:25  <bnoordhuis>hmm, the one thing that c++ has going for it are templates
13:02:38  <bnoordhuis>templates are also one of the big drawbacks...
13:02:48  <eddyb>uhm, why?
13:02:55  <bnoordhuis>boost
13:03:05  <bnoordhuis>4 pages of error messages because you forgot a space
13:03:09  <eddyb>I never used boost
13:03:14  <bnoordhuis>oh, i have
13:03:16  <eddyb>I think I'll never will
13:03:19  <bnoordhuis>have i ever...
13:03:40  <eddyb>I've seen a big chunk of a template boost error
13:04:13  <eddyb>but, thankfully, the victim wasn't me
13:04:27  <eddyb>I should really get back to finding my latest bug
13:04:46  <eddyb>apparently I have a leak/over-deletion going on
13:05:25  <bnoordhuis>double frees! my favourite exploit!
13:05:56  <bnoordhuis>piscisaureus_: https://github.com/joyent/libuv/pull/267 <- shouldn't bumping the api version to 0x600 fix that?
13:06:08  <eddyb>bnoordhuis: as a side note, if I never manage to rewrite node.js entirely, you'll get a free v8 wrapper header-only lib
13:06:24  <eddyb>with included pseudolanguage for bindings
13:06:29  <bnoordhuis>eddyb: why are you rewriting node anyway?
13:06:38  <eddyb>that's the reason
13:06:58  <eddyb>different base for v8-related code
13:07:54  <eddyb>the fact that I couldn't do this["onClick"](event.x, event.y, event.button); bugged me
13:08:16  <eddyb>so much that I actually wrote the code required to make that possible
13:08:29  <eddyb>but while my code was chillin' on my harddrive
13:08:45  <eddyb>node.js became huge news
13:09:02  <eddyb>I don't think node 2 was out when I started this
13:09:36  <eddyb>now I have to rewrite node6 just so I won't have to rm -Rf ~/Projects/gearbox
13:09:44  <eddyb>true story
13:09:52  <bnoordhuis>heh
13:10:02  <bnoordhuis>make it run with ionmonkey while you're at it :)
13:10:53  <eddyb>https://wiki.mozilla.org/Platform/Features/IonMonkey
13:11:16  <eddyb>bnoordhuis: as the basis of this is a framework
13:11:42  <eddyb>and there's no v8:: apart from src/modules/Buffer.gear
13:11:46  <bnoordhuis>you missed the spidernode thing?
13:11:57  <bnoordhuis>couple of guys tried to port node to spidermonkey
13:12:14  <eddyb>XD
13:12:23  <eddyb>I could rewrite the framework
13:12:31  <eddyb>to work with any number of engines
13:12:35  <eddyb>as long as its v8
13:12:41  <eddyb>err
13:12:45  <eddyb>JS not v8 :P
13:13:52  <eddyb>bnoordhuis: https://groups.google.com/a/dartlang.org/group/misc/browse_thread/thread/937b945b81c98166
13:15:37  <bnoordhuis>ah, dart
13:16:02  <bnoordhuis>they should have called it 'stillborn'
13:16:14  <eddyb>bnoordhuis: yeah, well
13:16:21  <eddyb>my post matters
13:21:36  <eddyb>bnoordhuis: https://github.com/eddyb/gearbox-node/blob/master/src/modules/vm.gear#L25
13:21:43  <eddyb>I don't have too much code already there
13:22:12  <eddyb>but if you say it's a bad idea
13:22:35  <eddyb>I'll stop trying
13:24:37  <CIA-95>libuv: Bruce Mitchener v0.6 * rc69ccfa / include/uv.h :
13:24:37  <CIA-95>libuv: Remove incorrect documentation comment.
13:24:37  <CIA-95>libuv: The callback for uv_close does not have a status parameter. - http://git.io/ax84HA
13:24:37  <CIA-95>libuv: Ben Noordhuis v0.6 * rfadfd0f / (.mailmap AUTHORS): Update AUTHORS and .mailmap - http://git.io/Ipdesw
13:31:08  <piscisaureus_>bnoordhuis: re 0x0600 - the mingw headers just lack the definition
13:31:12  <piscisaureus_>so this patch is good
13:40:14  <bnoordhuis>okay, one 'plz sign cla kthxbye' comment it is
13:41:19  <bnoordhuis>hey, i have 100 followers on github - go me!
13:46:28  <bnoordhuis>ffs, test/simple/test-regress-GH-1697.js is still race-y
13:53:22  <eddyb>uhm
13:53:29  <eddyb>I haven't signed the cla yet
13:53:34  <eddyb>do I need to?
13:55:01  <eddyb>(mom had to remind me that I'm a loser and my life isn't going nowhere. I'll try to no rant on that)
13:59:36  <piscisaureus_>bnoordhuis: let me just land GH-267
13:59:40  <piscisaureus_>cuz I need it
13:59:45  <piscisaureus_>this patch doesn't require cla
13:59:56  <piscisaureus_>bit it'd be nice if he could sign it
14:00:14  <eddyb>piscisaureus_: and my Makefile one?
14:00:41  <piscisaureus_>eddyb: which?
14:00:48  <piscisaureus_>eddyb: although you should just sign the CLA
14:00:49  <eddyb>2222
14:00:58  <eddyb>how do I do that :) ?
14:01:12  <piscisaureus_>eddyb: fill out http://nodejs.org/cla.html
14:01:20  <eddyb>also, does it require me to be 18?
14:01:22  <piscisaureus_>there's an electronic form at the bottom
14:01:36  <piscisaureus_>eddyb: not that I know
14:02:17  <piscisaureus_>eddyb: although ... I don't want to be sued for child labor :-)
14:02:28  <piscisaureus_>eddyb: if you're not yet 18, aren't you supposed to go to school
14:02:36  <eddyb>national day
14:02:40  <bnoordhuis>piscisaureus_: signed cla always, you know that >:(
14:03:02  <eddyb>also I've been sick for the last week
14:03:16  <eddyb>AFAIK, I can work part-time :P
14:03:51  <bnoordhuis>i don't know how it works with minors
14:04:04  <eddyb>ffs, do I have to type in all that data?
14:04:09  <bnoordhuis>but maciej was 17 when he signed it, i think
14:04:26  <eddyb>it will take me a while even to figure the right address format
14:05:04  <bnoordhuis>eddyb: by hand, and then we want a scanned picture of the form on a wooden table
14:05:38  <bnoordhuis>test/simple/test-dgram-pingpong.js is race-y too, same old
14:05:49  <eddyb>woot?
14:05:53  <eddyb>wooden table?
14:06:01  <bnoordhuis>or rather, udp can fail
14:06:05  <eddyb>dammit, can't you consider it a gift?
14:06:06  <bnoordhuis>eddyb: it's a dailywtf meme
14:06:29  <bnoordhuis>eddyb: also, lawyers
14:06:29  <eddyb>oh, that's why I had a vague memory of it :P
14:06:55  <eddyb>bnoordhuis: I wish Gibbs was real
14:07:07  <eddyb>I wouldn't be afraid of lawyers then
14:07:15  <bnoordhuis>and test/simple/test-child-process-fork2.js sometimes fails too...
14:07:30  <eddyb>how do I get test-uv to print errors?
14:07:44  <eddyb>173 tests failed but no errors
14:08:39  <eddyb>lol, I almost forgot the reason I'm here
14:08:57  <bnoordhuis>make test-uv? that's old
14:09:03  <eddyb>bnoordhuis: how do you manage to not ref the loop after process.stdin has been lazy-loaded
14:09:15  <bnoordhuis>eddyb: magic
14:09:25  <bnoordhuis>also, there's an uv_unref binding
14:09:36  <eddyb>HandleWrap::Unref
14:09:38  <eddyb>I know that
14:09:43  <eddyb>but it's not called from anywhere
14:09:57  <bnoordhuis>actually, it doesn't work right now
14:10:05  <eddyb>bnoordhuis: woot?
14:10:08  <bnoordhuis>there's an issue or two about that, a test case too
14:10:50  <CIA-95>node: Ben Noordhuis v0.6 * r03eb41c / (lib/net.js test/simple/test-net-socket-destroy-twice.js):
14:10:50  <CIA-95>node: net: don't emit 'close' event twice
14:10:50  <CIA-95>node: Don't allow `socket.destroy()` to run twice. The self-destruct sequence itself
14:10:50  <CIA-95>node: is idempotent but it makes the 'close' and 'error' events fire more than once,
14:10:50  <CIA-95>node: which may confuse listeners.
14:10:50  <CIA-95>node: Fixes #2223. - http://git.io/OVSJPA
14:11:02  <eddyb>so node test/simple/test-stdin-resume-pause isn't supposed to work?
14:11:08  <eddyb>wtf?
14:11:35  <eddyb>and all this time I tried to find where I'm not doing things the node way
14:11:52  <piscisaureus_>eddyb: huh why is it not supposed to work?
14:12:07  <bnoordhuis>piscisaureus_: it makes the event loop not quit
14:12:18  <eddyb>piscisaureus_: test case: echo process.stdin > test.js && node test.js
14:12:30  <eddyb>I thought it was supposed to work in node, too
14:12:36  <eddyb>blame me for not trying it
14:12:39  <bnoordhuis>but simply unref'ing the handle makes other tests fail
14:13:22  <eddyb>bnoordhuis: I would've expected startWrite to ref the loop and stopWrite to unref it
14:13:31  <piscisaureus_>bnoordhuis: instead of 222 we should take 267
14:13:35  <eddyb>also, uv_ref/uv_unref suck
14:13:41  <piscisaureus_>agreed
14:14:00  <piscisaureus_>it'll be reworked
14:14:02  <eddyb>what were you guys thinking when you didn't use C++ for libuv?
14:14:30  <bnoordhuis>we were thinking "c++ sucks"
14:14:48  <eddyb>write smart ctor/dtor for working with refs. don't have to fix everything later. profit
14:14:58  <eddyb>bnoordhuis: you were thinking wrong
14:15:09  <eddyb>C++ sucks if the coder doesn't use it the right way
14:15:09  <bnoordhuis>eddyb: nuh-uh
14:15:18  <bnoordhuis>piscisaureus_: because 267 is smaller / less intrusive
14:15:22  <bnoordhuis>+ question mark
14:15:41  <piscisaureus_>bnoordhuis: but 267 fixes the mingw-w64 case too
14:15:50  <bnoordhuis>eddyb: with c++, there is no one right way, that's one of its problems
14:16:00  <piscisaureus_>bnoordhuis: if we land only 267 we can expect a new w64 patch to appear
14:16:08  <eddyb>because there's not a proper standard library
14:16:20  <eddyb>you still could've used some features
14:16:29  <bnoordhuis>piscisaureus_: you mean 222 fixes the mingw-w64 case?
14:16:35  <piscisaureus_>eddyb: yeah
14:16:48  <piscisaureus_>bnoordhuis: it fixes mingw-w64 *too*
14:17:01  <bnoordhuis>piscisaureus_: wut? it checks for __MINGW32__
14:17:19  <bnoordhuis>wait, confusion
14:17:23  <bnoordhuis>i quote: <piscisaureus_> bnoordhuis: but 267 fixes the mingw-w64 case too
14:17:26  <eddyb>like, structs+ref/unref methods+ctors/dtors to ensure proper refcount
14:17:36  <bnoordhuis>piscisaureus_: i assume you meant 222 there
14:17:39  <piscisaureus_>bnoordhuis: yeah
14:17:47  <piscisaureus_>bnoordhuis: but there's a problem with 222
14:17:47  <bnoordhuis>piscisaureus_: okay, we're on the same page again
14:18:13  <piscisaureus_>bnoordhuis: let me do that patch, I will add a thanks mention to the other guys
14:18:30  <bnoordhuis>piscisaureus_: sure
14:18:53  <bnoordhuis>eddyb: oh, that's one other good thing about c++, RAII
14:21:05  <eddyb>I asked for optional C++11 support in v8
14:21:19  <bnoordhuis>https://github.com/joyent/node/issues/2238 <- windows users <sigh>
14:21:34  <eddyb>compile-time computation of String hashes for NewSymbol
14:21:51  <eddyb>was denied because the hash is an implementation detail
14:22:53  <eddyb>https://github.com/jsjohnst/ndns
14:22:55  <eddyb>omg
14:22:57  <eddyb>that is old
14:22:59  <eddyb>and fail
14:23:06  <eddyb>first commit, second commit
14:24:00  <CIA-95>libuv: Bert Belder master * rb471b33 / config-mingw.mk :
14:24:00  <CIA-95>libuv: Bump required windows headers to Vista
14:24:00  <CIA-95>libuv: This does not mean that XP/2k3 is no longer supported - we just need the
14:24:00  <CIA-95>libuv: headers so we can use newer APIs on later windows versions. - http://git.io/LOBGCg
14:26:32  <eddyb>bnoordhuis: you should've added that ndns is old and just an uglier version of dns
14:29:25  <CIA-95>libuv: Yuki Okumura master * r7c50415 / src/win/util.c : Win: lower case tlhelp32.h to support cross compilation - http://git.io/-ntILg
14:31:57  <eddyb>LOL
14:32:00  <eddyb>the latest bug
14:32:12  <eddyb>wasn't in the code
14:32:17  <eddyb>nope... it was in the darn parser
14:32:45  <eddyb>apparently JS doesn't have #line -_-
14:46:30  <benvie>hmm this isn't werror right ? "src\node_file.cc(564): error C2039: 'IsUInt32' : is not a member of 'v8::Value'"
14:46:43  <benvie>think this new v8 stuff did some crazy stuff
14:47:08  <eddyb>benvie: MSVC fail?
14:47:15  <benvie>3.7.10 was fine but 3.7.12 is not happy
14:47:16  <benvie>yeah
14:48:16  <CIA-95>libuv: Bert Belder master * ree49c7a / (include/uv-private/uv-win.h src/win/winapi.h):
14:48:16  <CIA-95>libuv: Fix MinGW and MinGW-w64 builds
14:48:16  <CIA-95>libuv: Closes GH-222 and GH-267.
14:48:16  <CIA-95>libuv: Thanks Yuki Okumura and Yasuhiro Matsumoto for providing fixes. - http://git.io/PT3KvA
14:48:18  <benvie>there's a ton of changes to how v8 interacts with native/implementer objects I'm seeing
14:51:44  <benvie>looks like they've finished off routing everything through the the regular JS checks. So that Proxy traps are respected by native stuff
14:53:30  <eddyb>I hope that doesn't become another performance problem
14:56:14  <eddyb>bnoordhuis: how can I run the test-uv tests (which look as a good starting point) and get some errors?
14:56:24  <eddyb>I've spent enough time with pointless shit
14:57:54  <eddyb>also, I'd like your opinion on me what I'm trying to do
15:00:44  <eddyb>YES
15:00:48  <eddyb>I'm faster than node
15:01:01  <eddyb>funny thing, test_buffer_creation reports I'm slower
15:01:13  <eddyb>while test2_buffer reports I'm faster
15:01:41  <eddyb>wait, does that do anything?
15:02:09  <eddyb>guess I've started a monologue for nothing
15:04:38  <benvie>static inline int32_t DoubleToInt32(double x);
15:04:42  <benvie>is no longer static
15:05:40  <benvie>nor are any of the conversions
15:06:22  <eddyb>?
15:07:05  <benvie>bool SubStringEquals, bool AdvanceToNonspace, double InternalStringToIntDouble, etc.
15:07:20  <benvie>they were all static methods until the last version or two of V8
15:07:25  <eddyb>where are these?
15:07:43  <benvie>conversions-inl.h and conversions.h
15:08:09  <eddyb>ah
15:08:15  <eddyb>you're browsing the changes?
15:08:28  <benvie>yeah looking to fix this so I can build it
15:08:44  <benvie>extensive changes though
15:09:04  <benvie>if I'm lucky it's just this math stuff
15:09:59  <benvie>but there's so many other things touched that will have effects at the node internal level I have to imagine
15:11:18  <benvie>changes to api.h
15:23:16  <eddyb>I guess coding is boring: http://www.youtube.com/user/machinima?feature=grec_index#p/u/39/Zw684xM2cUo
15:31:57  * creationixjoined
15:56:55  <benvie>it's pretty cool what they're doing with this. They're using the proxy API to be even lazier about allocation
15:57:17  <benvie>where a lot/most "objects" won't even exist until you try to interact with them
15:57:25  <benvie>and they're using that for shared memory stuff too
15:58:03  <benvie>everything is a weak reference, but can come back to life easier
15:58:14  <benvie>well not weak but similar
15:58:34  <benvie>non-existant so kind of the inversion
15:59:26  <benvie>comes to life when you want to cuddle, instead of dying when you don't touch it anymore
16:01:19  <benvie>if you were annoyed about that hash issue before...they have upped the anti. Because now the hash identity of the object is the only thing that will exist until the object is referenced, so it's that much more important that it's secure
16:03:19  <benvie>they're not in the JS memory heap at all
16:06:57  <eddyb>wow
16:07:01  <eddyb>that sounds interesting
16:07:17  <eddyb>Harmony may be better than I expected
16:07:46  * kuebkquit (Quit: Leaving.)
16:08:18  <eddyb>even if I only ever wanted
16:08:37  <eddyb>(x)->x*x;
16:15:04  <benvie>ok cool these will be useful
16:15:06  <benvie>static bool CompileLazy(Handle<JSFunction> function, ClearExceptionFlag flag);
16:15:07  <benvie>static bool CompileOptimized(Handle<JSFunction> function, int osr_ast_id, ClearExceptionFlag flag);
16:16:43  <eddyb>:O
16:16:44  * isaacsjoined
16:22:41  <piscisaureus_>bnoordhuis: yt?
16:23:07  <piscisaureus_>bnoordhuis: I want to do this as part of a makefile step:
16:23:07  <piscisaureus_>foo: deps/luajit/lib/*
16:23:07  <piscisaureus_> if [ "\$(readlink foo)" == "" ]; then
16:23:07  <piscisaureus_> rm -rf jit
16:23:07  <piscisaureus_> ln -s bar foo
16:23:07  <piscisaureus_> fi
16:23:09  <isaacs>pquerna: want, apache kafka is a real thing?
16:23:22  <isaacs>i thought the joke was just that it was kafkaesque
16:24:05  <piscisaureus_>bnoordhuis: but I think I am mixing up unix scripting languages
16:24:33  <pquerna>isaacs: http://incubator.apache.org/kafka/
16:24:49  <bnoordhuis>isaacs: also, https://github.com/apache/kafka
16:24:57  <isaacs>what do you know
16:24:59  <pquerna>isaacs: yes, its an interesting approach for high volume queuing systems (not much like a traditional MQ at all)
16:25:08  <bnoordhuis>piscisaureus_: you want to check if something is a link or not?
16:25:17  <eddyb>luajit??
16:25:19  <bnoordhuis>or if a link exists?
16:25:19  <pquerna>(linkedin wrote it)
16:25:37  <piscisaureus_>bnoordhuis: I want to check if something is a symlink
16:25:47  <piscisaureus_>bnoordhuis: and if it is a file, I want to remove it and make it a symlink
16:26:18  <bnoordhuis>piscisaureus_: just do `ln -fs bar foo`
16:26:39  <piscisaureus_>bnoordhuis: will that work if the symlink already exists
16:26:48  <piscisaureus_>bnoordhuis: btw - no it has to be done this way
16:26:55  <piscisaureus_>cuz windowz
16:27:05  <bnoordhuis>piscisaureus_: windows has `ln`?
16:27:18  <piscisaureus_>bnoordhuis: no
16:27:28  <piscisaureus_>bnoordhuis: but mingw's ln just clones the target
16:27:33  <piscisaureus_>bnoordhuis: (ususally)
16:27:38  <piscisaureus_>which is fine in this case
16:27:40  <bnoordhuis>so what's the problem?
16:27:59  <bnoordhuis>`ln -fs bar foo` symlink bar regardless of what foo is
16:28:07  <bnoordhuis>*symlinks (or clones)
16:28:18  <isaacs>bnoordhuis: i have to go to the dentist in a few minutes, but i'll have a new npm alpha-4 for you to land in 0.6.4, with the msi changes
16:29:17  <piscisaureus_>bnoordhuis: er, no
16:29:49  <bnoordhuis>isaacs: cool (and good luck at the dentist)
16:30:02  <isaacs>they're very nice, i'm sure i'll be fine :)
16:30:10  <piscisaureus_>bnoordhuis:
16:30:10  <piscisaureus_>$ echo 123 > foo
16:30:10  <piscisaureus_>$ ln -s bar foo
16:30:10  <piscisaureus_>ln: creating symbolic link `jit' to `deps': File exists
16:30:23  <isaacs>piscisaureus_: why not just remove it and then create it?
16:30:24  <bnoordhuis>piscisaureus_: ln -fs
16:30:29  <isaacs>or -f
16:30:32  <isaacs>:)
16:30:53  <piscisaureus_>hmm
16:30:57  <piscisaureus_>that worked :-)
16:30:59  <piscisaureus_>-fs
16:31:09  <piscisaureus_>mingw's symlink is smarter that I thought
16:31:09  <bnoordhuis>piscisaureus_: i've only typed it like two times
16:31:42  <piscisaureus_>bnoordhuis: Yeah, you're right. Now let's forget about this now.
16:32:03  <bnoordhuis>piscisaureus_: so what are you doing with luajit? confess!
16:32:20  <piscisaureus_>I thorougly underestimated mingw's ln :-)
16:32:41  <piscisaureus_>bnoordhuis: nothing, I wanted to try it
16:33:00  <piscisaureus_>but it doesn't compile on windows
16:34:07  * isaacsquit (Quit: isaacs)
16:34:10  <eddyb>is it my fault?
16:34:17  <eddyb>or that thing is already mainstream news?
16:34:34  <benvie>yeah months behind
16:36:02  <benvie>actually it hasn't been around for months =/
16:49:56  <eddyb>so... what can I see from my profile
16:52:11  <eddyb>my version calls Thread::GetThreadLocal 6M times while node calls it 1M times
17:03:08  <CIA-95>node: Ben Noordhuis v0.6 * r3d22dbf / (src/node.cc src/node.js test/simple/test-cli-eval.js): cli: add -p switch, print result of --eval - http://git.io/XJC_Iw
17:03:29  * bnoordhuisis off to dinner
17:04:15  * sh1mmerjoined
17:07:36  * pieternjoined
17:22:00  <eddyb>yeah, too many calls to v8::Value::IsX()
17:26:14  <piscisaureus_>creationix: yt?
17:26:33  <creationix>yeah, but on call
17:27:04  <piscisaureus_>creationix: I have a couple of questions but no hurry
17:27:28  <piscisaureus_>creationix: http://145.94.50.9:8080 <-- that's luvit's http server example - is it supposed to look like that?
17:28:14  <piscisaureus_>creationix: I also ported it to windows. It mostly works but apparently luvit makes the refcount drop to -3 so luvit immediately exists unless I cripple luv_unref.
17:28:34  <piscisaureus_>creationix: and it writes garbage to stdout
17:28:41  <piscisaureus_>are these known issues?
17:31:54  <creationix>it writes ansi colored output
17:32:01  <creationix>probably not good for browsers or windows terminals
17:32:12  <creationix>makes curl on command line pretty though
17:33:10  <piscisaureus_>creationix: ansi colors should work on windows
17:33:16  <piscisaureus_>maybe it's a uv bug
17:33:26  <creationix>could be, not sure
17:33:40  <piscisaureus_>creationix: but http://145.94.50.9:8080 is what it should look like?
17:34:50  <benvie>v8 3.8 is ridiculous
17:35:16  <benvie>they must have been coding 24/7 for the last 2 weeks
17:37:07  <benvie>functions and their context serializable and transportable to foreign contexts
17:38:12  * isaacsjoined
17:38:28  <benvie>it uses isolates for like everything too
17:39:09  <benvie>every Proxy is an isolate
17:41:51  <eddyb>I wished the pthread_get_specific thing was inlined
17:42:36  <eddyb>or at least some way to remove those million calls to it
17:47:11  * mikealquit (Quit: Leaving.)
18:00:43  * AvianFlujoined
18:06:21  <eddyb>now I'm confused
18:06:34  <eddyb>is there a way to check if v8::Value holds a primitive?
18:07:21  <eddyb>Undefined/Null/Boolean/Int32/UInt32/Number
18:07:37  <eddyb>actually, for boolean, there's True and False
18:09:53  * ericktjoined
18:24:07  * brsonjoined
18:33:58  * brsonquit (Quit: Lost terminal)
18:35:10  * brsonjoined
18:37:12  * dapjoined
18:40:44  <CIA-95>libuv: Bert Belder master * reb6d754 / src/win/tty.c : Win: utf-8 decoder bug when compiling with gcc - http://git.io/9Pcftg
18:45:42  <eddyb>niiice
18:45:58  <paddybyers>eddyb: !IsObject() ?
18:46:23  <eddyb>I can actually mark a function settings a v8 Object property as const
18:46:36  <paddybyers>eddyb: I don't think there's a single (positive) test you can do for IsPrimitive()
18:46:39  <eddyb>because of the isolation v8 offers for the API
18:46:58  <eddyb>paddybyers: IsObject failed to return true for some important stuff
18:47:04  <eddyb>I got an undefined error
18:47:08  <eddyb>when I tried it
18:47:49  <paddybyers>eddyb: there's confusion also with String vs StringObject, Number vs NumberObject
18:48:20  <eddyb>I wish Harmony solves these
18:48:45  <eddyb>maybe there can't be a Boolean/Number/String Object :)
18:49:14  * mikealjoined
18:50:50  <isaacs>bnoordhuis: you around?
18:55:00  <isaacs>bnoordhuis: three commits to make the npm in the msi do the right thing: https://github.com/isaacs/node/commits/v0.6
18:55:44  * pieternpart
18:56:04  * pieternjoined
18:59:07  <bnoordhuis>isaacs: thanks, i'll merge them
18:59:52  * mikealquit (Quit: Leaving.)
19:01:49  <isaacs>bnoordhuis: oh, wait, this looks suspect..
19:01:52  <isaacs> <Environment Id="npm_env"
19:01:52  <isaacs> Action="set"
19:01:53  <isaacs> Name="PATH"
19:01:53  <isaacs> Part="last"
19:01:53  <isaacs> System="yes"
19:01:53  <isaacs> Value="[AppDataFolder]npm" />
19:02:06  <isaacs>igorzi: should there be a \ between [AppDataFolder] and "npm"?
19:02:20  <isaacs>igorzi: or does [AppDataFolder] include the \?
19:02:26  <igorzi>isaacs: MSI adds \
19:02:33  <isaacs>oh, ok, great, then
19:02:47  <bnoordhuis>good to merge?
19:03:07  * mikealjoined
19:03:12  <isaacs>igorzi: and those two statements get done in sequence, right, so %APPDATA%\npm will be in front of %ProgFiles%\nodejs?
19:03:24  <igorzi>isaacs: yep
19:03:28  <isaacs>kewl
19:03:29  <isaacs>then lgtm
19:03:35  <isaacs>bnoordhuis: full speed ahead
19:13:37  <igorzi>piscisaureus_ bnoordhuis: call today?
19:13:56  <bnoordhuis>igorzi: yes
19:15:32  <igorzi>i guess piscisaureus_ is away..
19:15:37  <igorzi>bnoordhuis: is release still on for today?
19:15:48  <bnoordhuis>igorzi: yes
19:28:21  * mikealquit (Quit: Leaving.)
19:31:33  * mikealjoined
19:31:38  <piscisaureus_>we can call in 10 minutes
19:32:04  <isaacs>ok, i'm ready when you guys are
19:37:55  <igorzi>bnoordhuis: https://github.com/igorzi/libuv/commit/ae827759e893795ab2bba6dfa6f7079a49acad58
19:38:07  <igorzi>bnoordhuis: updated cwd + chdir patch --^
19:38:25  <igorzi>bnoordhuis: can you please review + test on unix?
19:38:48  <bnoordhuis>igorzi: yes
19:39:28  <igorzi>bnoordhuis: nothing but a 'yes' from you today :)
19:39:53  <bnoordhuis>igorzi: hmm indeed
19:41:45  <piscisaureus_>bnoordhuis: igorzi: isaacs: I can call now
19:42:02  <bnoordhuis>piscisaureus_: start the call
19:42:15  * isaacsis waiting eagerly by the skype, staring at it...
19:42:25  <piscisaureus_>it crashed
19:42:39  * isaacsstarting to feel rejected
19:42:45  <isaacs>oh hooray!
19:44:49  <igorzi>damn it.. crashed
19:45:27  <eddyb>I hate const-correctness
19:45:40  <eddyb>some times it just causes weird errors
19:46:04  <eddyb>like, ambiguous overload
19:47:48  * _eddyb_joined
19:47:48  * _eddyb_quit (Changing host)
19:47:48  * _eddyb_joined
19:50:35  * eddybquit (Ping timeout: 258 seconds)
19:54:05  <benvie>welp
19:54:07  * mikealquit (Quit: Leaving.)
19:54:26  <benvie>that's going to be a lot of fun
19:55:26  <CIA-95>libuv: Ben Noordhuis v0.6 * re5a50c4 / (config-unix.mk uv.gyp):
19:55:27  <CIA-95>libuv: build: don't build with __DARWIN_64_BIT_INO_T=1
19:55:27  <CIA-95>libuv: Said define does more harm than good across OS X releases. - http://git.io/5Jjxyw
19:55:27  * _eddyb_changed nick to eddyb
19:56:15  <benvie>the code gen does a full blown harmony strict check if you want to opt in for that stuff, and since everything in v8 behind the scenes is now implemented using them...
19:57:50  * _eddyb_joined
19:58:19  * eddybquit (Read error: Connection reset by peer)
19:58:21  <benvie>part of harmony strict is careful control of access to the true global object
19:59:56  <igorzi>piscisaureus_: https://github.com/igorzi/libuv/commit/6b3b9b08d1da0cf14fce503e469edd6251112580
20:00:16  <benvie>so right now Fdatasync in node_file tries to do args[0]->Int32Value() before the context considers itself ready
20:00:30  <benvie>and the code gen slaps you and dies
20:03:58  <CIA-95>node: Ben Noordhuis v0.6 * rd5feb1c / wscript :
20:03:58  <CIA-95>node: Revert "build: compile with -D__DARWIN_64_BIT_INO_T on OS X"
20:03:58  <CIA-95>node: This reverts commit f004d5aeac0a91a1731575d3ac9a80d710a1f48a.
20:03:58  <CIA-95>node: __DARWIN_64_BIT_INO_T is a no-op in most cases and might be actively harmful in
20:03:59  <CIA-95>node: some others. - http://git.io/eDKFBA
20:06:50  <CIA-95>libuv: Ben Noordhuis v0.6 * rec37d05 / (config-unix.mk uv.gyp):
20:06:51  <CIA-95>libuv: Revert "build: compile with -D__DARWIN_64_BIT_INO_T on OS X"
20:06:51  <CIA-95>libuv: This reverts commit 01fbe7bf37909736b4ba99d30c34378f561d6761.
20:06:51  <CIA-95>libuv: __DARWIN_64_BIT_INO_T is a no-op in most cases and might be actively harmful in
20:06:51  <CIA-95>libuv: some others. - http://git.io/E5cR1w
20:14:00  <benvie>reading the codegen log is pretty funny. You can see node trying to reinitialize over and over, and then v8 flipping out and erroring and comaplining about how much stuff it dumped on the global object, and then it kills everything and does it like 4 times before giving up for good
20:14:49  <CIA-95>node: isaacs v0.6 * r6176461 / (253 files in 19 dirs):
20:14:49  <CIA-95>node: npm 1.1.0-alpha-5
20:14:49  <CIA-95>node: Fix #2186
20:14:49  <CIA-95>node: First part of #2207 - http://git.io/hEnLEA
20:14:50  <CIA-95>node: isaacs v0.6 * rd5f4011 / tools/msvs/msi/npmrc : Re #2207 Add default npmrc for MSI install - http://git.io/tMAwJw
20:14:50  <CIA-95>node: Igor Zinkovsky v0.6 * r3e7f4b0 / (tools/msvs/msi/product.wxs tools/msvs/npm/npmrc): npm msi changes - http://git.io/5LeGKA
20:21:26  <igorzi>isaacs: i just noticed that we ended up with 2 npmrc files. 1 in tools/msvs/msi and 1 in tools/msvs/npm..
20:21:36  <bnoordhuis>igorzi: chdir / getcwd patch lgtm
20:21:48  <isaacs>igorzi: oh, whoops
20:22:02  <isaacs>igorzi: which one does the msi build use? let's just remove the other
20:22:06  <isaacs>they should be the same
20:22:42  <isaacs>tools/msvs/msi/product.wxs: <File Id="filenpmrc" KeyPath="yes" Source="$(var.repoDir)\tools\msvs\npm\npmrc" />
20:22:58  <isaacs>so, i'll remove tools/msvs/msi/npmrc
20:23:14  <igorzi>isaacs: k, sounds good
20:24:20  <CIA-95>node: isaacs v0.6 * r0f6d3e2 / tools/msvs/msi/npmrc : Remove duplicate npmrc file - http://git.io/TNpbxw
20:30:52  <CIA-95>libuv: Igor Zinkovsky v0.6 * rdceb3e6 / (6 files in 5 dirs): uv_cwd + uv_chdir - http://git.io/v32hDw
20:32:34  * mralephjoined
20:35:27  * mralephquit (Read error: Connection reset by peer)
20:47:10  <bnoordhuis>igorzi piscisaureus_: can i upgrade libuv?
20:50:18  <igorzi>bnoordhuis: sure.. we'll need to upgrade again (waiting for piscisaureus_ to review the pending pipe instances patch)
20:50:49  <bnoordhuis>igorzi: oh okay, i'll wait
21:00:38  <bnoordhuis>https://github.com/v8/v8/compare/3.6.4...3.6.6 <- worth upgrading?
21:02:05  <bnoordhuis>igorzi: is the cluster available?
21:03:22  <igorzi>bnoordhuis: yep.. rebooting into linux now
21:03:30  <bnoordhuis>igorzi: cool, thanks
21:07:10  <igorzi>bnoordhuis: should be available now
21:07:19  * bnoordhuislogs in
21:08:41  * mikealjoined
21:12:24  * paddybyersquit (Ping timeout: 244 seconds)
21:13:34  <bnoordhuis>piscisaureus_: how are the chdir / getcwd bindings coming along?
21:17:47  <bnoordhuis>igorzi: i'm getting a wcat error at the end of the run
21:18:05  <bnoordhuis>i can't copy/paste it from my remote desktop...
21:18:32  <bnoordhuis>wcat.wsf(939, 18): SWbemObjectEx: Not found
21:18:44  <bnoordhuis>The system cannot find the file specified
21:18:56  <bnoordhuis>Error: insufficient files to drop high/low
21:19:52  <benvie>wow
21:20:09  <benvie>you know what's not a function? IsUInt32 and UInt32Value
21:20:15  <benvie>they have lower case I's
21:20:30  <benvie>hah
21:20:40  <benvie>no fucking wonder
21:20:46  <igorzi>bnoordhuis: can i bump you off ndjs-win3?
21:20:53  <bnoordhuis>igorzi: sure
21:21:35  <benvie>how the hell were those mispelled functions in node_file.cc for so long without causing anyone else problems
21:22:39  <bnoordhuis>benvie: they're used in macros that themselves are not used
21:22:45  <bnoordhuis>i suppose we should clean it up
21:23:10  <benvie>yeah cause it kills the fun police in the new v8 build
21:24:16  <benvie>I guess one should believe the red letters saying something doesn't exist
21:29:16  <igorzi>bnoordhuis: https://github.com/igorzi/node/commit/6f3086689849c1a6f0a8e58b385380f9a488479d
21:29:27  <bnoordhuis>benvie: are you talking about that newfangled syntax highlighting thing?
21:29:35  <benvie>er
21:29:43  <benvie>no that was from before, I'm doing a pull now
21:29:44  <igorzi>bnoordhuis: binding for windows pipe instances.. pls review
21:29:48  <piscisaureus_>bnoordhuis: haven't started
21:30:03  <piscisaureus_>bnoordhuis: I am going to do it now
21:30:14  <bnoordhuis>igorzi: SetPendingInstances?
21:30:28  <igorzi>bnoordhuis: k
21:30:39  <CIA-95>node: Ben Noordhuis v0.6 * r9b4e8e0 / src/node_file.cc :
21:30:39  <CIA-95>node: fs: fix typo in function names
21:30:39  <CIA-95>node: The build was not affected: the typos were in macros that only come into effect
21:30:39  <CIA-95>node: when _LARGEFILE_SOURCE is not defined - which is never. - http://git.io/lAmYYg
21:30:59  <benvie>beat me to it
21:31:42  <bnoordhuis>igorzi: otherwise lgtm
21:31:48  <bnoordhuis>benvie: oh, sorry :)
21:32:28  <benvie>Hah no problem but that one need to be merged sometime too. It's as much of a problem if you ever try to use Proxies
21:33:04  <bnoordhuis>i only use proxies when visiting 4chan
21:33:11  <benvie>kept it minimal to just that bug fix
21:34:51  <benvie>but that's an overhaul I'm going to put some time into. ES6 strict became important way quicker than I thought. They had that TC39 meeting less than two weeks ago and made a few big decisions and those are what landed in Chromium already
21:35:08  <bnoordhuis>i think i saw the v8 commit
21:35:15  <benvie>er
21:35:17  <benvie>V8 yeah
21:35:21  <igorzi>bnoordhuis: i'm not getting that wcat error (i ran wcat several times).. can you try again?
21:35:55  <bnoordhuis>igorzi: yes
21:36:48  <benvie>A pretty big refactoring of the Proxy spec and more final decisions on security contexts and what ES6 strict is going to be.
21:37:24  <benvie>and they went the extra mile in V8 by using it as a chance to make everything a proxy at the global level and to turn everything into an isolate/proxy
21:38:13  <igorzi>piscisaureus_: pls review the pending pipe instances patch: https://github.com/igorzi/libuv/commit/6b3b9b08d1da0cf14fce503e469edd6251112580
21:39:05  <bnoordhuis>igorzi: i now get this -> Error: insufficient input files to drop high/low
21:40:52  <piscisaureus_>igorzi: lgtm
21:41:15  <igorzi>bnoordhuis: can you try again? i see this sometimes when one of the iterations fails.. wcat needs at least 3 iterations to drop low & high results
21:41:51  <bnoordhuis>igorzi: yes, will do
21:47:22  <CIA-95>libuv: Yuki Okumura v0.6 * rf71f5a0 / src/win/util.c : Win: lower case tlhelp32.h to support cross compilation - http://git.io/MPONlw
21:47:24  <CIA-95>libuv: Bert Belder v0.6 * r2a6a4a0 / src/win/winapi.h : Fix MinGW and MinGW-w64 builds - http://git.io/BuIOuQ
21:47:24  <CIA-95>libuv: Bert Belder v0.6 * r9c064fb / src/win/tty.c : Win: utf-8 decoder bug when compiling with gcc - http://git.io/wrvVkg
21:50:46  <CIA-95>node: Bert Belder v0.6 * rae648a4 / (31 files in 5 dirs): Upgrade libuv to 9c064fb - http://git.io/l3RySg
21:52:20  <CIA-95>libuv: Igor Zinkovsky v0.6 * r60630da / (4 files in 4 dirs): windows: enable pending pipe instances knob - http://git.io/xDIdcA
21:53:15  <igorzi>need to upgrade libuv again.. can i do it now?
21:55:16  * mralephjoined
21:57:02  <CIA-95>node: Igor Zinkovsky v0.6 * rdd4b280 / (4 files in 4 dirs): upgrade libuv to 60630dab0f - http://git.io/Gi6agA
22:05:08  * brsonquit (Ping timeout: 258 seconds)
22:06:20  * paddybyersjoined
22:08:16  <piscisaureus_>creationix: ha! I see pquerna also attempted to make that thing run on windows
22:08:43  <creationix>right, I hope I'm not making a mess of it
22:08:50  <creationix>but most your changes seemed safe
22:09:12  <piscisaureus_>creationix: did you try if it still works on your system?
22:09:16  <piscisaureus_>that's what I am mostly concerned about
22:09:19  <creationix>yeah, it's still fine on linux
22:09:23  <creationix>I checked
22:09:24  <piscisaureus_>ah, good
22:09:30  <creationix>now to fix it for osx
22:09:35  <creationix>should be easier
22:09:39  <piscisaureus_>I guess so
22:09:41  <creationix>I think the main issue is sed is different
22:09:48  <creationix>I'm using -i
22:10:08  <piscisaureus_>Configuring luajit is strange
22:10:08  <creationix>perhaps patch would be more portable?
22:10:24  <creationix>I wish I could just send in environment variables
22:10:29  <piscisaureus_>creationix: I guess but then you have to update the patch all the time
22:12:28  <isaacs>bnoordhuis, igorzi: how are things looking? travis guys are asking when they can try out the update.
22:12:40  <isaacs>(0.6.3 pretty much broke every node travis test)
22:13:19  <creationix>piscisaureus_: you're not a mac user are you?
22:13:26  <bnoordhuis>isaacs: i'm waiting for piscisaureus_ to land his chdir / getcwd patch
22:13:32  <piscisaureus_>creationix: today I am not
22:13:43  * brsonjoined
22:13:48  <piscisaureus_>creationix: besides, I have some node work to get done, 0.6.4 is waiting
22:13:53  <piscisaureus_>bnoordhuis: almost
22:13:56  <isaacs>oh, ok
22:14:01  <creationix>piscisaureus_: ok, good luck
22:14:02  <isaacs>great
22:14:25  <piscisaureus_>bnoordhuis: do we have a way to throw libuv errors from the binding layer? I guess not, eh?
22:14:27  <isaacs>thanks
22:15:03  <bnoordhuis>piscisaureus_: no, set errno
22:15:36  <piscisaureus_>bnoordhuis: yeah, but that means I need to wrap them in js
22:15:49  <piscisaureus_>bnoordhuis: right now process.chdir goes straight to the binding layer
22:17:02  <bnoordhuis>piscisaureus_: you can use ThrowException(FSError(...)) in node_file.cc
22:20:34  <piscisaureus_>bnoordhuis: it's a node_fs static :-/
22:21:36  <bnoordhuis>piscisaureus_: sounds like a good place for chdir and getcwd, no?
22:22:34  <piscisaureus_>bnoordhuis: yeah I guess
22:24:11  * sh1mmerquit (Quit: sh1mmer)
22:27:13  * mikealquit (Quit: Leaving.)
22:27:44  * sh1mmerjoined
22:36:12  <CIA-95>node: Igor Zinkovsky v0.6 * r99c9d19 / (lib/net.js src/pipe_wrap.cc src/pipe_wrap.h): binding for uv_pipe_pending_instances - http://git.io/5LeQFw
22:42:01  <piscisaureus_>bnoordhuis: I think I'm done but I'm still comiling node
22:42:28  <piscisaureus_>node.cc could use a cleanup
22:42:35  <bnoordhuis>piscisaureus_: don't forget tests, obviously i expect 100% code coverage
22:42:47  <bnoordhuis>not just node.cc...
22:50:07  <igorzi>isaacs: npm ERR! Error: ENOENT, no such file or directory 'C:\Users\igorzi\loc\${APPDATA}\npm'
22:50:38  <igorzi>isaacs: is this expected? (did you get the env. var expansion code in?)
22:50:44  <isaacs>igorzi: i did, yeah
22:50:47  <isaacs>wth...
22:51:41  <igorzi>isaacs: this is without --global
22:51:55  <isaacs>hm.. apparently it's only working when it's in the user or global config, not in teh builtin config.
22:51:59  <isaacs>that's strange. debugging now.
22:52:15  <isaacs>igorzi: oh, is APPDATA the environment var?
22:52:36  <isaacs>oh, ok, nvm… i get it with HOME, too
22:53:38  <igorzi>isaacs: with --global i get:
22:53:39  <igorzi>Error: UNKNOWN, unknown error 'C:\Users\igorzi\loc\C:'
22:53:46  <isaacs>yeah, i see it
22:53:57  <isaacs>k, i can move that translation to a different spot, and it'll work
22:54:05  <isaacs>the problem is that it's validating before expanding
22:54:10  <isaacs>it needs to expand first.
22:54:13  <igorzi>ahh
22:54:32  <isaacs>otherwise, it's first saying, "this needs to be a path, and ${BLAH} in't a path, so do path.resolve on it"
22:54:36  <isaacs>and obviously that breaks stuff.
22:55:03  <isaacs>the downside of the change will be that it'll not keep the ${ENV} setting in the npmrc file, if you do `npm config set blah ${ENV}/foo"
22:55:08  <isaacs>it'll write the expanded value
22:55:12  <isaacs>but, meh. that's fine, probably.
22:55:32  <isaacs>it's not like people move %APPDATA% to somewhere else ever.
22:58:01  <isaacs>fixed on 124f9668eab3e1fff77095aab7b7bd7ad258d283
22:58:05  <isaacs>merging into node now
23:04:00  <bnoordhuis>isaacs: is Trevor Orsztynowicz a guy from the SF office?
23:04:10  <isaacs>not from sf, no.
23:04:13  <isaacs>i think he's in vancouver
23:04:13  <bnoordhuis>damn
23:04:17  <rmustacc>Out of Vancouver.
23:04:23  <bnoordhuis>okay, thanks
23:04:59  <rmustacc>bnoordhuis: I chat with him often enough, so if you need me to ping him or do something for you, let me know.
23:05:13  <CIA-95>node: Bert Belder reviewme * r2876ef3 / (src/node.cc src/node.h src/node_file.cc): Rename FSError to UVException and move to node.cc - http://git.io/e9ymdg
23:05:14  <CIA-95>node: Bert Belder reviewme * rb0eb54f / (src/node.cc test/simple/test-chdir.js):
23:05:14  <CIA-95>node: Win: make process.cwd and chdir support non-ansi characters
23:05:14  <CIA-95>node: Closes GH-2215 - http://git.io/4KfpFQ
23:05:16  <piscisaureus_>bnoordhuis: ^-- review
23:05:22  <bnoordhuis>rmustacc: yes, please - i need to sign the MSI tonight and he has the certificate
23:05:22  <isaacs>bnoordhuis: yeah, rmustacc probably only sees trevor just slightly less than he sees me.
23:05:50  <isaacs>igorzi: can you pull from my 0.6 branch?
23:05:56  <rmustacc>bnoordhuis: Roger, on it.
23:05:56  <isaacs>igorzi: see if that fixes the issue in the msi?
23:06:28  <igorzi>isaacs: yep
23:07:21  <bnoordhuis>piscisaureus_: why do you need to const_cast a string to const char*?
23:07:31  <bnoordhuis>const_cast is for casting *away* constness
23:07:59  * mmaleckijoined
23:08:09  <bnoordhuis>i should annotate the commit of course...
23:08:13  <piscisaureus_>bnoordhuis: oops. vc complained about a conversion, I though that was it
23:08:17  <piscisaureus_>bnoordhuis: no do it here
23:08:23  * bnoordhuisdoes it here
23:08:46  <bnoordhuis>last time i did with other people around, police got involved
23:09:15  <piscisaureus_>bnoordhuis: the police with the beard and the earring?
23:09:32  <bnoordhuis>yeah, there was an indian and a construction worker too
23:10:06  <piscisaureus_>that's not what I was suggesting, but funny nontheless
23:10:14  <rmustacc>bnoordhuis: It looks like he's on vacation. So I guess shoot him an e-mail and hopefully he'll get to it. Though supposdly ryah also has some access.
23:10:29  <piscisaureus_>yeah but ryah is also on vacation :-)
23:10:45  <bnoordhuis>damnit, that sucks
23:11:26  <rmustacc>Unfortunately there isn't an internal place with the private key that I have access to.
23:11:35  <rmustacc>I guess just e-mail him and ryah, do you have his address?
23:11:43  <piscisaureus_>I have some certificates lying around
23:11:51  <bnoordhuis>rmustacc: yeah - i already said him an email but he's not responding
23:11:55  <bnoordhuis>*sent
23:12:10  <rmustacc>I only have a url to the public cert, not the private key unfortunately.
23:12:11  <piscisaureus_>We could sign it with "Hot Caves Adult Entertainment Inc."
23:12:19  <bnoordhuis>^ this guy...
23:12:31  <bnoordhuis>how much does windows complain if an msi is unsigned?
23:12:36  <bnoordhuis>piscisaureus_ igorzi: ^
23:12:42  <piscisaureus_>depends
23:12:49  <piscisaureus_>It doesn't complain much to me
23:13:03  <piscisaureus_>but Internet Explorer complains loudly
23:14:37  <piscisaureus_>bnoordhuis: no other comments?
23:14:46  <bnoordhuis>piscisaureus_: one sec
23:14:49  <piscisaureus_>(about moving/renaming FSError for instance)
23:15:34  <bnoordhuis>piscisaureus_: ../src/node.cc:1161: error: ‘UVException’ was not declared in this scope
23:15:47  <bnoordhuis>(had to do a full rebuild)
23:15:57  <piscisaureus_>huh
23:16:49  <bnoordhuis>you probably forgot to commit something
23:16:58  <piscisaureus_>I guess
23:17:05  <bnoordhuis>also, can you split the #ifdef __POSIX__ into a separate commit?
23:17:50  <piscisaureus_>bnoordhuis: which?
23:18:10  <piscisaureus_>oh
23:18:11  <piscisaureus_>sure
23:18:59  <igorzi>bnoordhuis: no signing happening for this release?
23:19:10  <igorzi>isaacs: looks like that issue is resolved
23:19:19  <piscisaureus_>amateurs
23:19:29  <bnoordhuis>igorzi: i suppose not
23:20:12  <igorzi>isaacs: i'm getting this now:
23:20:15  <igorzi>npm ERR! Could not unpack C:\Users\igorzi\AppData\Roaming\npm-cache\formidable\1.0.8\package.tgz to C:\Users\igorzi\AppData\Roaming\npm-cache\formidable\1.0.8npm ERR! error installing connect@1.8.1 Error: EACCES, permission denied 'C:\Users\igorzi\AppData\Roaming\npm-cache\formidable\1.0.8\___package.npm\package'
23:20:51  <bnoordhuis>ryah: ping
23:21:00  <bnoordhuis>i know you're there
23:21:10  <piscisaureus_>bnoordhuis: what's at ../src/node.cc:1161 ?
23:21:39  <bnoordhuis>piscisaureus_: Chdir()
23:21:42  <piscisaureus_>bnoordhuis: it's too weird - this error is totally unexpected and also 1161 is totally away from any UVException here
23:21:51  * luxigoquit (Ping timeout: 240 seconds)
23:23:31  <igorzi>bnoordhuis: do you know when ryah is back?
23:23:37  * luxigojoined
23:23:37  <bnoordhuis>igorzi: next week
23:26:03  <piscisaureus_>bnoordhuis: sorry, can you debug it for me? I can't possibly tell what could be wrong
23:26:04  <CIA-95>node: Bert Belder reviewme * rcf6cd5e / (src/node.cc src/node.h src/node_file.cc): Rename FSError to UVException and move to node.cc - http://git.io/rO_FgQ
23:26:04  <CIA-95>node: Bert Belder reviewme * r7a9b4c9 / (src/node.cc test/simple/test-chdir.js):
23:26:04  <CIA-95>node: Win: make process.cwd and chdir support non-ansi characters
23:26:04  <CIA-95>node: Closes GH-2215 - http://git.io/PJAUhg
23:26:05  <CIA-95>node: Bert Belder reviewme * r21ba485 / src/node.cc :
23:26:05  <CIA-95>node: Exclude getbuf from the windows build
23:26:05  <CIA-95>node: It's not used. - http://git.io/ywqSFQ
23:26:09  <piscisaureus_>bnoordhuis: I think something is wrong on your side
23:26:24  <isaacs>igorzi: hm… trying it now
23:26:30  <isaacs>i hadn't tested with formidable.
23:27:02  * dapquit (Quit: Leaving.)
23:27:17  <bnoordhuis>isaacs: is there someone at the office you / I can bother about that signing cert?
23:27:31  <isaacs>bnoordhuis: i'm not at the office today
23:27:45  * mikealjoined
23:28:48  <isaacs>rmustacc: you emailed trevor already?
23:28:58  <rmustacc>I have not, since bnoordhuis already did.
23:29:05  <isaacs>i see
23:29:14  <bnoordhuis>piscisaureus_: i think you forgot this commit: https://github.com/joyent/node/commit/2876ef38d9011d2d44b414a9d78af0f3557bf53d
23:29:19  <rmustacc>But, you can as an extra polk. He might not recognize bnoordhuis.
23:31:28  <piscisaureus_>bnoordhuis: I didn't forget. Look up, it's listed
23:31:55  <bnoordhuis>piscisaureus_: you originally linked me to a single commit
23:36:31  <isaacs>igorzi: i can't seem to reproduce this
23:36:37  <isaacs>igorzi: do you have the npm-debug.log file?
23:37:05  <isaacs>igorzi: and are you sure that you're using the new copy of npm that's in the node source tree?
23:37:47  <igorzi>isaacs: i can't reproduce on another vm.. i'll paste the log from the vm where this repros
23:37:57  <isaacs>k
23:38:11  <isaacs>at least we're down from "broken everywhere" to "broken only in rare exclusive places"
23:38:24  <igorzi>isaacs: https://gist.github.com/1420724
23:39:44  <isaacs>gotta head out for a sec. be back in a few minutes.
23:42:28  <igorzi>bnoordhuis: you still using the cluster?
23:42:44  <bnoordhuis>igorzi: no, go ahead
23:46:37  <piscisaureus_>bnoordhuis: review?
23:49:30  * dapjoined