00:00:54  <bnoordhuis>Specifies that the Default Authentication Verification Policy is used. If the /pa option is not specified, SignTool uses the Windows Driver Verification Policy.
00:01:08  <bnoordhuis>why then does signtool complain that /pa is not a recognized option?
00:01:42  <bnoordhuis>i can sign binaries without /pa btw
00:02:22  <igorzi>bnoordhuis: i think that how's ryah did it.. he just ran "signtool path_to_exe"
00:02:34  <piscisaureus_>bnoordhuis: the /pa option is only for `signtool verify`
00:03:04  <piscisaureus_>it doesn't matter for `signtool sign`
00:03:31  <bnoordhuis>piscisaureus_: ah right, in that case everything's working
00:03:34  <piscisaureus_>bnoordhuis: also, vcbuild.bat auto-signs
00:03:44  <piscisaureus_>you don't need to do anything yourself
00:03:53  <bnoordhuis>still, it's nice to know how it works
00:03:56  <piscisaureus_>(but you need to have the cert)
00:03:56  <igorzi>bnoordhuis: you got the cert?
00:04:04  <bnoordhuis>igorzi: yes
00:04:07  <igorzi>nice
00:04:20  <piscisaureus_>bnoordhuis: I'm still waiting for review and I really need to go to bed
00:04:26  <piscisaureus_>bnoordhuis: also: http://msdn.microsoft.com/en-us/library/8s9b9yaz%28v=vs.80%29.aspxhttp://msdn.microsoft.com/en-us/library/8s9b9yaz%28v=vs.80%29.aspx
00:04:29  <piscisaureus_>er, http://msdn.microsoft.com/en-us/library/8s9b9yaz%28v=vs.80%29.aspx
00:05:52  <bnoordhuis>piscisaureus_: lgtm
00:06:32  <CIA-95>node: Bert Belder v0.6 * 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
00:06:32  <CIA-95>node: Bert Belder v0.6 * r7a9b4c9 / (src/node.cc test/simple/test-chdir.js):
00:06:33  <CIA-95>node: Win: make process.cwd and chdir support non-ansi characters
00:06:33  <CIA-95>node: Closes GH-2215 - http://git.io/PJAUhg
00:06:33  <CIA-95>node: Bert Belder v0.6 * r21ba485 / src/node.cc :
00:06:33  <CIA-95>node: Exclude getbuf from the windows build
00:06:33  <CIA-95>node: It's not used. - http://git.io/ywqSFQ
00:08:51  <piscisaureus_>btw, " `make install` is not implemented yet. Bug bnoordhuis about it in #node.js" is getting really ineffective due to MakeInstallBot. I suggest
00:09:22  <piscisaureus_>to change that to "Bug bnoordhuis about, call +31 20 1369746
00:09:23  <piscisaureus_>"
00:09:47  <bnoordhuis>that sounds like a great plan
00:10:17  <bnoordhuis>piscisaureus_: you want to be off to bed? igorzi, can you test some of the windows builds?
00:10:20  <mmalecki>bnoordhuis: want a phone bot?
00:10:35  <bnoordhuis>mmalecki: i want a beer bot
00:11:00  <bnoordhuis>well, actually i have one - my girlfriend!
00:11:09  <igorzi>bnoordhuis: yep
00:11:16  <bnoordhuis>igorzi: cool, i only have xp
00:11:33  <bnoordhuis>another question, is it legal to distribute msvc express builds?
00:11:36  <igorzi>bnoordhuis: though i will need to go offline for a while in about 2 hour
00:11:39  <igorzi>*hours
00:12:12  <bnoordhuis>no worries, i'm rolling the rc1 tarball now
00:14:37  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
00:14:41  * paddybyersquit (Ping timeout: 248 seconds)
00:17:45  * piscisaureus_joined
00:18:58  * paddybyersjoined
00:22:38  * mralephquit (Quit: Leaving.)
00:27:29  <dap>bnoordhuis (or anyone else): have you run current node master on SmartOS?
00:27:57  <dap>I'm seeing a segfault at v8::internal::Deoptimizer::PatchStackCheckCodeAt+0xa
00:29:01  <bnoordhuis>rc1 is up -> http://nodejs.org/dist/v0.6.4/
00:29:09  <bnoordhuis>dap: haven't seen that (yet)
00:29:58  <benvie>I had wondered that too
00:30:05  <benvie>if you could distribute msbuild
00:30:09  <benvie>and cl
00:30:37  <igorzi>bnoordhuis: windows msi coming?
00:31:26  <isaacs>igorzi: i've got nothing on that npm-debug.log file
00:31:33  <isaacs>i really need to get a vm where i can reproduce this.
00:32:09  <bnoordhuis>https://gist.github.com/59b5c0a67ab06677145a <- changelog looking good to everyone?
00:32:27  <bnoordhuis>igorzi: yes - but building in my windows xp vm is really, really slow
00:32:44  <bnoordhuis>if you can whip up an executable and send it over, i'll sign that instead
00:32:50  <bnoordhuis>what could possibly go wrong right?
00:32:59  <isaacs>bnoordhuis: lgtm
00:33:09  <isaacs>igorzi: i can guarantee that this is an invalid error code, though: 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'
00:33:18  <isaacs>if you actually didn't have permission, it wouldn't have gotten that far
00:33:34  <igorzi>isaacs: it might be that it's locked
00:35:11  <isaacs>igorzi: hm. can you reproduce it reliably on that vm every time?
00:35:57  <igorzi>isaacs: i'll let you know once i have the new msi
00:36:04  <isaacs>kk
00:36:25  <isaacs>igorzi: also, if you could test *just* installing formidable with -g, and not as part of connect, then that might tell us more info.
00:36:33  <isaacs>i wonder if it's that there's multiple things going on in parallel
00:37:06  <isaacs>but, it doesn't appear to be worse than 0.6.3, so we may as well move forward.
00:43:25  <bnoordhuis>igorzi: hope you're in no rush, it's still busy compiling openssl...
00:44:42  <igorzi>bnoordhuis: here are binaries https://skydrive.live.com/?cid=37297fe11832254c&id=37297FE11832254C%211109
00:45:14  <piscisaureus_>isaacs: I think this is actually the error that I reported the other day
00:46:49  <ryah>yo guys
00:47:19  <ryah>i've got like 5 minutes - anything urgent?
00:47:41  <piscisaureus_>not that I know
00:47:53  <rmustacc>ryah: They need the private key to sign stuff, unless that's been solved.
00:47:56  <piscisaureus_>I think ben got the certificate eventually, that why you were'summoned
00:48:24  <bnoordhuis>yep, i have the cert
00:48:26  <piscisaureus_>ryah: so you can go back fishing
00:48:41  <ryah>ok :)
00:48:59  <ryah>im in LA giving a talk
00:49:23  <piscisaureus_>About 19th century abstract clay art I suppose?
00:50:28  <bnoordhuis>igorzi: This item might have been deleted, expired, or you might not have permission to access it. Contact the owner of this item for more information.
00:51:17  <igorzi>bnoordhuis: sorry.. try this https://skydrive.live.com/redir.aspx?cid=37297fe11832254c&resid=37297FE11832254C!1109&parid=37297FE11832254C!109&authkey=!AEdXizTy9leeEHo
00:57:26  <ryah>bnoordhuis: is the RC bad?
00:57:36  <bnoordhuis>ryah: looks like it
00:57:44  * ryahaborts
00:57:47  <bnoordhuis>but apparently it's mostly os x that's affected
00:58:37  <isaacs>igorzi: you didn't merge in my v0.6 branch, did you?
00:58:57  <isaacs>igorzi: i still see npm alpha-5 on the v0.5
00:59:01  <isaacs>*v0.6 branch
00:59:33  <igorzi>isaacs: no i didn't
00:59:42  <isaacs>ah, ok
00:59:54  <bnoordhuis>oh, so that's it?
01:00:58  <isaacs>nono, that's not what's causing the invalid error codes.
01:01:04  <isaacs>i'm bisecting that now
01:01:52  <igorzi>isaacs: you're going to land it? (your change for env var expansion is not in v0.6 branch yet, right?)
01:02:28  <isaacs>igorzi: not in joyent's no,
01:02:33  <isaacs>sure i can land it
01:02:41  <isaacs>lemme finish this bisect first
01:03:29  <bnoordhuis>it's piscisaureus_'s commits
01:03:34  <bnoordhuis>i'm going to force-push them away
01:03:45  <isaacs>ok
01:03:47  <benvie>hmm
01:03:58  <isaacs>bnoordhuis: any reason not to just revert them?
01:04:00  <benvie>what problems from his stuff?
01:04:09  <benvie>I merged them in the build I'm using now
01:04:11  <piscisaureus_>bnoordhuis: what's the issue?
01:04:15  <benvie>no problems
01:04:28  <bnoordhuis>isaacs: well... they're the last three commits
01:04:52  <bnoordhuis>this saves piscisaureus_ from eternal shame in the commit logs
01:05:06  <isaacs>i guess, but it also means that i need to be super careful when i pull that i don't put them back
01:05:12  <isaacs>since i typically do a pull --rebase
01:05:14  <bnoordhuis>piscisaureus_: that chdir / getcwd stuff breaks a lot of tests
01:05:14  <benvie>hah it's probably npm though even though we all love the poor troublemaker
01:05:31  <isaacs>but that's fine
01:05:36  <piscisaureus_>bnoordhuis: ok so what about we fix it quickly?
01:05:50  <bnoordhuis>isaacs: i always do a `git reset --hard` after pulling
01:05:57  <isaacs>cf6cd5e4c4d34f555d6b7ef5f173c478253f8efd is the first bad commit
01:06:07  <isaacs>so sayeth bisect
01:06:32  <isaacs>so, confirms what you already know, i guess :)
01:06:42  <bnoordhuis>piscisaureus_: i don't want to be here till 5 am
01:06:50  <isaacs>bnoordhuis/piscisaureus_: lemme know when i should land this npm thing
01:06:57  <bnoordhuis>isaacs: land it now
01:07:02  <isaacs>ok, on sec
01:07:10  <bnoordhuis>if piscisaureus_ is quick he can add his work
01:07:27  <CIA-95>node: Bert Belder v0.6 * 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
01:07:28  <CIA-95>node: Bert Belder v0.6 * r7a9b4c9 / (src/node.cc test/simple/test-chdir.js):
01:07:28  <CIA-95>node: Win: make process.cwd and chdir support non-ansi characters
01:07:28  <CIA-95>node: Closes GH-2215 - http://git.io/PJAUhg
01:07:28  <CIA-95>node: Bert Belder v0.6 * r21ba485 / src/node.cc :
01:07:28  <CIA-95>node: Exclude getbuf from the windows build
01:07:29  <CIA-95>node: It's not used. - http://git.io/ywqSFQ
01:07:29  <CIA-95>node: isaacs v0.6 * r5f96477 / (95 files in 6 dirs): npm 1.1.0-alpha-6 - http://git.io/qJXwZQ
01:07:42  <isaacs>wait… you'd already forced them out?
01:08:14  <isaacs>did i just put back what you were trying to delete?
01:08:28  <piscisaureus_>I think so
01:08:38  <piscisaureus_>but I wonder what test this breaks
01:08:40  <piscisaureus_>isaacs: ?
01:08:47  <isaacs>piscisaureus_: it breaks npm completely
01:08:54  <isaacs>piscisaureus_: i get the wrong error codes for everything from the filesystem
01:09:03  <piscisaureus_>it's probably a off-by-1 error
01:09:03  <isaacs>EAFNOSUPPORT instead of EEXIST and so on
01:09:06  <isaacs>yeah
01:09:24  <piscisaureus_>uh
01:09:24  <piscisaureus_>oh
01:09:28  <piscisaureus_>that can't be
01:09:30  <piscisaureus_>it's the error patch
01:09:32  <isaacs>sorry, ERANGE instead of EEXIST
01:09:45  <isaacs>EAFNOSUPPORT instead of something else
01:09:52  <isaacs>er, ERANGE --> ENOENT
01:09:54  <piscisaureus_>let me fix this quickly
01:09:55  <isaacs>very confusing
01:10:45  <piscisaureus_>aah
01:10:48  <piscisaureus_>I know what it is
01:10:52  <bnoordhuis>isaacs: rebase them out and push again, git can take a beating
01:11:00  <isaacs>k, doing that now, hold on
01:11:26  <isaacs>confirm, these are the ones to remove?
01:11:35  <bnoordhuis>bert's three commits
01:11:48  <piscisaureus_>bnoordhuis: hold on!
01:11:53  <isaacs> 2 pick cf6cd5e Rename FSError to UVException and move to node.cc
01:11:54  <piscisaureus_>bnoordhuis: it's just a 2lines
01:11:54  <isaacs> 3 pick 7a9b4c9 Win: make process.cwd and chdir support non-ansi characters
01:11:54  <isaacs> 4 pick 21ba485 Exclude getbuf from the windows build
01:12:12  <bnoordhuis>piscisaureus_: just rebase after isaacs is done
01:12:47  <CIA-95>node: isaacs master * ra386753 / (139 files in 50 dirs): Update npm to 1.1.0-alpha-2 - http://git.io/D2jcoQ
01:13:07  <isaacs>ack… bnoordhuis can you please force-push whatever was on master?
01:13:20  <isaacs>and v0.4?
01:13:25  <isaacs>grrrrrrrrr hate git push --f
01:13:30  <CIA-95>node: isaacs v0.6 * r1ad30a2 / (95 files in 6 dirs): npm 1.1.0-alpha-6 - http://git.io/QI-QXg
01:13:50  <bnoordhuis>isaacs: you don't use `git push origin +branch`?
01:13:56  <isaacs>i did
01:14:10  <isaacs>i did git push ry-push v0.6 --force
01:14:12  * creationixquit (Ping timeout: 244 seconds)
01:14:20  <isaacs>but it pushed all 3 branches for some reason.
01:14:37  <isaacs>oh, i did git push ry-push --force, not git push ry-push branch
01:16:30  <CIA-95>node: Bert Belder bugfix * 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
01:16:30  <CIA-95>node: Bert Belder bugfix * r7a9b4c9 / (src/node.cc test/simple/test-chdir.js):
01:16:30  <CIA-95>node: Win: make process.cwd and chdir support non-ansi characters
01:16:30  <CIA-95>node: Closes GH-2215 - http://git.io/PJAUhg
01:16:32  <CIA-95>node: Bert Belder bugfix * r21ba485 / src/node.cc :
01:16:32  <CIA-95>node: Exclude getbuf from the windows build
01:16:32  <CIA-95>node: It's not used. - http://git.io/ywqSFQ
01:16:32  <CIA-95>node: Bert Belder bugfix * r984880f / src/node.cc : Fix UVException errno bug - http://git.io/YeX4sA
01:16:42  <bnoordhuis>isaacs: i'll fix it
01:16:45  <isaacs>k
01:16:52  * isaacshands in his git push --force card
01:17:02  * isaacsin so doing, accidentally deletes every card ever.
01:18:00  <piscisaureus_>bnoordhuis: it's done - the last commit from the bugfix branch
01:18:56  <CIA-95>node: Ben Noordhuis master * rbbd976b / (common.gypi deps/uv/uv.gyp node.gyp):
01:18:56  <CIA-95>node: build: always compile with large file support
01:18:56  <CIA-95>node: Fixes a nasty sizeof(struct stat) mismatch bug that caused random crashes and
01:18:56  <CIA-95>node: silent memory corruption. - http://git.io/YA3ERw
01:18:57  <CIA-95>node: Ben Noordhuis master * rf44d0b9 / (src/node_crypto.cc test/simple/test-crypto.js):
01:18:57  <CIA-95>node: crypto: throw exception on unknown digest method
01:18:58  <CIA-95>node: Fixes #2227. - http://git.io/nGSTvA
01:20:42  <bnoordhuis>isaacs: don't worry, happens to the best of us
01:22:33  <isaacs>bnoordhuis: looks fixed now?
01:22:36  <CIA-95>node: Bert Belder bugfix * r823a443 / (src/node.cc src/node.h src/node_file.cc): Rename FSError to UVException and move to node.cc - http://git.io/kisa_w
01:22:36  <CIA-95>node: Bert Belder bugfix * re84edd2 / (src/node.cc test/simple/test-chdir.js):
01:22:37  <CIA-95>node: Win: make process.cwd and chdir support non-ansi characters
01:22:37  <CIA-95>node: Closes GH-2215 - http://git.io/HNesuw
01:22:37  <CIA-95>node: Bert Belder bugfix * rded97eb / src/node.cc :
01:22:37  <CIA-95>node: Exclude getbuf from the windows build
01:22:38  <CIA-95>node: It's not used. - http://git.io/Bp8_KQ
01:22:38  <CIA-95>node: Bert Belder bugfix * r641f2be / src/node.cc : Fix UVException errno bug - http://git.io/bA1UxQ
01:22:44  <bnoordhuis>isaacs: yes
01:22:47  <isaacs>great
01:24:25  <benvie>chromium's had a bad day on the build tree
01:24:35  <benvie>all day
01:24:37  <isaacs>piscisaureus_, bnoordhuis: bugfix branch works here.
01:24:52  <benvie>and they have terminator 9000's doing their dirty work
01:25:28  <bnoordhuis>yes, works here too
01:26:05  <bnoordhuis>piscisaureus_: land it
01:26:39  <CIA-95>node: Bert Belder v0.6 * r823a443 / (src/node.cc src/node.h src/node_file.cc): Rename FSError to UVException and move to node.cc - http://git.io/kisa_w
01:26:40  <CIA-95>node: Bert Belder v0.6 * re84edd2 / (src/node.cc test/simple/test-chdir.js):
01:26:40  <CIA-95>node: Win: make process.cwd and chdir support non-ansi characters
01:26:40  <CIA-95>node: Closes GH-2215 - http://git.io/HNesuw
01:26:40  <CIA-95>node: Bert Belder v0.6 * rded97eb / src/node.cc :
01:26:40  <CIA-95>node: Exclude getbuf from the windows build
01:26:41  <CIA-95>node: It's not used. - http://git.io/Bp8_KQ
01:26:41  <CIA-95>node: Bert Belder v0.6 * r641f2be / src/node.cc : Fix UVException errno bug - http://git.io/bA1UxQ
01:27:09  <bnoordhuis>piscisaureus_: what was the fix?
01:27:38  <piscisaureus_>bnoordhuis: http://git.io/bA1UxQ
01:27:58  <piscisaureus_>bnoordhuis: had to rename a static function, but forgot to rename it in a call
01:28:34  <bnoordhuis>ah
01:28:40  <bnoordhuis>okay, rc2 coming up
01:34:44  * piscisaureujoined
01:34:57  <piscisaureu>[04:42|% 100|+ 325|- 6]: Done <— lion
01:35:23  * piscisaureuquit (Client Quit)
01:35:52  <piscisaureus_>that is the latest v0.6 after a fresh checkout btw
01:38:17  <bnoordhuis>okay, new rc is up: http://nodejs.org/dist/v0.6.4/
01:38:24  * piscisaureus__joined
01:39:27  <piscisaureus_>[04:25|% 100|+ 322|- 9]: Done <-- win 7
01:46:50  <isaacs>ship it
01:47:34  <bnoordhuis>i'm waiting for the sunos tests to complete
01:47:44  <bnoordhuis>and waiting for xp to build the windows binary...
01:48:00  * AvianFluquit (Quit: Leaving)
01:48:02  * ericktquit (Ping timeout: 244 seconds)
01:48:05  <piscisaureus__>bnoordhuis: you are building with msvs 2010 right?
01:48:09  <bnoordhuis>piscisaureus_: yes
01:48:27  <piscisaureus__>ok good
01:49:05  <bnoordhuis>it's amazingly slow though
01:49:20  * mikealquit (Quit: Leaving.)
01:51:42  * sh1mmerquit (Quit: sh1mmer)
01:52:16  <igorzi>[09:45|% 100|+ 319|- 12]: Done <-- win2k8
01:53:19  <igorzi>going offline.. will check back later.
01:53:23  <bnoordhuis>igorzi: can you upload your binary again? if i have to wait for the build to finish, we'll still be here tomorrow
01:54:44  <igorzi>bnoordhuis: yep
01:55:12  * piscisaureus__quit (Quit: ~ Trillian Astra - www.trillian.im ~)
01:55:51  <igorzi>bnoordhuis: https://skydrive.live.com/redir.aspx?cid=37297fe11832254c&resid=37297FE11832254C!1112&parid=37297FE11832254C!109&authkey=!ALaaXVC02NIjA5E
01:56:27  <bnoordhuis>igorzi: thanks, you're an angel
01:59:12  <piscisaureus_>bnoordhuis: funny that you will have to tweet v0.6.4
01:59:27  <bnoordhuis>piscisaureus_: oh, i never tweet
02:00:20  <bnoordhuis>[18:25|% 100|+ 655|- 7]: Done <- sunos
02:00:54  <isaacs>we can have nodejs tweet it
02:01:04  <isaacs>is it ready?
02:01:37  <bnoordhuis>i suppose so
02:01:57  <bnoordhuis>`make test` on linux hung for over 4 minutes on a debugger test here
02:02:29  <isaacs>who wants to post the release notes?
02:02:34  <isaacs>i guess i can
02:02:55  <bnoordhuis>isaacs: you mean on the ML?
02:03:04  <isaacs>no, on the blog
02:03:17  <isaacs>blog.nodejs.org
02:03:29  <bnoordhuis>isaacs: i will, i have the draft ready
02:03:39  <isaacs>ok, great
02:03:47  <isaacs>https://gist.github.com/59b5c0a67ab06677145a lgtm
02:04:32  <piscisaureus_>you forgot #2215 ;-)
02:06:01  <bnoordhuis>piscisaureus_: do you really really really want it included in the changelog?
02:06:07  <piscisaureus_>bnoordhuis: nope
02:09:22  <bnoordhuis>[23:41|% 100|+ 652|- 10]: Done <- lion
02:11:13  * ericktjoined
02:12:35  <bnoordhuis>[23:58|% 100|+ 653|- 9]: Done <- linux
02:12:44  <bnoordhuis>and something's very fucked with simple/test-debugger-client
02:14:21  <piscisaureus_>yes, here too
02:16:53  <CIA-95>node: Ben Noordhuis v0.6 * r9170077 / (doc/index.html doc/template.html src/node_version.h): Bump version to v0.6.4 - http://git.io/rGEF0g
02:16:53  <CIA-95>node: Ben Noordhuis v0.6 * ra29a7c7 / src/node_version.h : Now working on v0.6.5 - http://git.io/DsC9Tw
02:18:01  <isaacs>w00t
02:18:03  <isaacs>that looks good
02:22:19  <piscisaureus_>bnoordhuis: you must tweet. it's in your contract
02:23:20  * ericktquit (Ping timeout: 244 seconds)
02:23:21  <piscisaureus_>bnoordhuis: http://nodejs.org/dist/v0.6.4/node-v0.6.4.msi <-- not working
02:23:46  <piscisaureus_>(teh l1nk)
02:23:50  <bnoordhuis>yeah
02:24:03  <bnoordhuis>i just noticed the msi build didn't work
02:24:10  <piscisaureus_>rly?
02:24:27  * dapquit (Quit: Leaving.)
02:24:55  <isaacs>bnoordhuis: when you've got the link, we can tweet it from @nodejs
02:25:08  <isaacs>you can retain your anti-tweet status
02:25:10  <piscisaureus_>isaacs: no bnoordhuis needs to do it hehe
02:25:26  <bnoordhuis>i'll go with isaacs's suggestion :)
02:25:38  <isaacs>dude, i've got the password for @nodejs
02:25:41  <isaacs>it can tweet anything
02:25:59  <piscisaureus_>I know
02:26:01  <bnoordhuis>seriously, i don't understand msvc - it's building everything again from scratch
02:26:08  <isaacs>i should have it start getting into a fight with @rails or something ;0
02:26:10  <piscisaureus_>bnoordhuis: it shouldn't
02:26:27  <bnoordhuis>well, it is - it's compiling openssl again
02:26:36  <piscisaureus_>crap
02:34:13  <benvie>so when i build with vcbuild it tells me I successfully signed it
02:34:28  <benvie>never really noticed before
02:35:01  <benvie>nevermind it says it's not trusted, good to go
02:35:18  <benvie>just don't let that fool you
02:35:29  * piscisaureus__joined
02:45:06  * brsonquit (Quit: leaving)
02:47:49  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
02:50:40  * mikealjoined
02:51:21  * mikealquit (Client Quit)
02:52:31  * sh1mmerjoined
03:05:24  * pieternquit (Quit: pietern)
03:33:42  * sh1mmerquit (Quit: sh1mmer)
03:48:06  * creationixjoined
04:09:40  * bnoordhuisquit (Ping timeout: 255 seconds)
04:11:43  * sh1mmerjoined
04:40:57  * isaacsquit (Quit: isaacs)
04:46:07  * ericktjoined
05:02:28  * indexzerojoined
05:48:30  * mikealjoined
05:55:05  * ericktquit (Quit: erickt)
06:00:00  * sh1mmerquit (Quit: sh1mmer)
06:57:34  * mikealquit (Quit: Leaving.)
07:05:02  * mikealjoined
07:21:18  * mikealquit (Quit: Leaving.)
07:23:55  * indexzeroquit (Quit: indexzero)
07:24:30  * indexzerojoined
07:28:52  * indexzeroquit (Client Quit)
07:38:37  * _eddyb_changed nick to eddyb
07:38:49  * mikealjoined
07:43:06  * sh1mmerjoined
07:54:25  <indutny>heya
07:54:28  <indutny>anyone around?
07:56:10  <eddyb>me :)
07:56:50  <indutny>great :)
07:56:54  <indutny>are you in core team? :)
07:57:40  <eddyb>nope
07:58:41  <indutny>eddyb: anyway, can you take a look at this: https://github.com/joyent/node/pull/2244 ?
08:00:31  <eddyb>I can't accept it
08:00:37  <eddyb>but it looks good
08:01:26  <eddyb>(my only connection to the node.js repo is a 2-line patch from a few days ago)
08:05:14  <indutny>ah
08:05:19  <indutny>anyway it's great :)
08:05:21  <indutny>commit more!
08:05:25  <indutny>eddyb: ^
08:06:33  <indutny>sorry, gtg
08:06:34  <eddyb>yeah, well
08:06:40  <indutny>ttyl
08:06:43  <eddyb>I'm trying to create a lib
08:06:46  <eddyb>around v8
08:06:51  <eddyb>for easy bindings
08:06:59  <eddyb>v8's being a bitch right now
08:12:33  <indutny>eddyb: what are you trying to implement?
08:12:59  <eddyb>the perfect v8 bindings platform
08:13:04  <eddyb>I already have the concept
08:13:10  <eddyb>I'm trying to improve it
08:13:15  <eddyb>and rewrite node on top of it
08:13:41  <eddyb>that happens because I haven't been paying attention to node.js while it emerged
08:14:26  <eddyb>YEEEEES
08:14:28  <eddyb>YES
08:14:29  <eddyb>FUCK YEAH
08:14:31  <eddyb>I BEAT NODE
08:15:07  <eddyb>actually, it's about the same value
08:15:14  <eddyb>600ms for me and the real node
08:15:32  <eddyb>all I had to do is provide a special case for arguments
08:15:56  <eddyb>for which I am not required to do anything with the Handle<Value>, but store it
08:18:58  <indutny>Ж)
08:19:00  <indutny>:)
08:19:15  <indutny>sounds interesting
08:19:23  <indutny>do you have it hosted somewhere publically?
08:20:19  <eddyb>well
08:20:28  <eddyb>it's not updated or completely functional
08:20:41  <eddyb>https://github.com/eddyb/gearbox-node
08:20:48  <eddyb>.gear files are magical bindings
08:21:24  * mikealquit (Quit: Leaving.)
08:21:35  <indutny>wow
08:21:38  <indutny>looks interesting
08:21:42  <eddyb>HAHAHAHAHAHAHA
08:21:45  <indutny>going to take a deeper look at it later
08:21:45  <eddyb>ryah: I win
08:21:51  <eddyb>fast_buffer2_creation
08:21:55  <eddyb>is faster for me
08:22:08  <benvie>yeah but do you have stickers
08:22:14  <indutny>while I'm completely unsure if that should be used to replace node's .cc files
08:22:16  * mikealjoined
08:22:20  <indutny>:)
08:22:32  <indutny>anyway this can be good for modules with native parts
08:22:39  <eddyb>yeah, well
08:22:48  <eddyb>it'd be hell to integrate it with node
08:22:49  <eddyb>so...
08:22:53  <benvie>oh my don't do the same thing node's doing with the sandbox
08:22:54  <eddyb>why not just rewrite node :)
08:23:03  <benvie>get isolates working, that's the real magic
08:23:09  <benvie>it's harder for node with all it's existing stuff
08:23:27  <eddyb>so I should get isolates
08:23:30  <benvie>v7 3.8
08:23:33  <benvie>v8
08:23:38  <eddyb>in parallel with node?
08:23:43  <eddyb>added bonus :)
08:23:53  <benvie>isolates are important for anything that wants to use v8 for anything
08:23:54  <indutny>heh
08:23:57  <indutny>really, gtg
08:24:00  <indutny>ttyl
08:24:02  <benvie>very important
08:24:03  <benvie>adios
08:24:36  <eddyb>benvie: https://github.com/eddyb/gearbox-node/blob/master/src/modules/buffer.gear#L207
08:24:43  <eddyb>see how clean that is?
08:24:49  <eddyb>at least I hope its clean
08:25:17  <benvie>yeah that puts you ahead, get isolates working and I'll make chromium bindings for it
08:25:26  <benvie>then it'll be a web browser too
08:25:38  <eddyb>and it gets converted to https://github.com/eddyb/gearbox-node/blob/master/src/modules/buffer.cc
08:25:50  <eddyb>benvie: I hate how google just spend time writing bindings
08:25:55  <eddyb>*spends
08:25:58  <benvie>to be fair
08:26:02  <benvie>this looks familiar
08:26:19  <eddyb>there's code copied from node.js
08:26:31  <eddyb>the JS is mostly identical
08:26:36  <benvie>SO YOU ADMIT IT
08:26:40  <eddyb>what?
08:26:45  <benvie>kidding
08:26:56  <eddyb>yeah, look at the top
08:27:03  <eddyb>copyright node + me
08:27:25  <eddyb>as for google, now they're doing DartVM's API all by themselves
08:27:32  <benvie>do youi have a specific set of usages you're targeting for it?
08:27:33  <eddyb>I fear it will look worse than node.js code
08:27:41  <benvie>like guiding purpose for the api to implement
08:27:54  <benvie>there's a whole world of things that could be made
08:27:59  <eddyb>uhm... that sounds complicated
08:28:01  <benvie>deciding is hard
08:28:16  <eddyb>yeah, I start giving up when I have to make decisions
08:28:21  <rmustacc>Doesn't really look cleaner, imho.
08:28:58  <eddyb>rmustacc: tell that to github, they don't have syntax highlighting for .gear
08:29:04  <eddyb>or are you looking at the .cc?
08:29:12  <rmustacc>I don't need syntax highlighting.
08:29:27  <rmustacc>I'm looking at the file you linked.
08:29:59  <eddyb>I linked two files
08:30:16  <rmustacc>I'm just looking at this .gear stuff.
08:30:45  <eddyb>TBH, I had to take node.js code
08:30:49  <eddyb>and make it smaller
08:31:13  <eddyb>there are things which can be improved on, but it's better already
08:32:05  <eddyb>actually, I should start commiting
08:32:06  <rmustacc>Huh, you'll have to help me out here a bit. What exactly is the goal of this?
08:33:51  <eddyb>rmustacc: something like this: https://github.com/eddyb/v8-gearbox/blob/master/src/modules/Elm.gear#L35
08:34:11  <eddyb>that's what someone wrote using the original project, v8-gearbox
08:34:14  * paddybyersquit (Quit: paddybyers)
08:34:50  <eddyb>it's ~1150 lines
08:35:01  <eddyb>look at what it's being converted into: https://github.com/eddyb/v8-gearbox/blob/master/src/modules/Elm.cc
08:35:07  <eddyb>5870 lines
08:35:46  <eddyb>ok, there's some redundancy...
08:35:53  <rmustacc>The raw number of lines of code doesn't really matter to me.
08:36:08  <rmustacc>Maintainability, debugability, etc.
08:36:19  <rmustacc>What does this new meta-language offer for that?
08:36:41  <eddyb>ffs
08:37:28  <eddyb>I should just give up and do something serious
08:37:33  <eddyb>like study for school
08:37:36  * eddybpart ("Konversation terminated!")
08:41:41  * f00barzjoined
08:42:51  * f00barzquit (Client Quit)
08:45:04  * creationixquit (Ping timeout: 255 seconds)
08:50:46  * kuebkjoined
08:55:32  * kuebk1joined
08:57:59  * sh1mmerquit (Quit: sh1mmer)
08:59:23  * kuebkquit (Ping timeout: 260 seconds)
09:06:32  * eddybjoined
09:06:56  <eddyb>rmustacc: I thought it would make writing structured bindings easy
09:07:14  <eddyb>but if you it's crap, you're most likely right
09:08:13  <benvie>school is terrible
09:08:15  <benvie>agree
09:09:01  <eddyb>rmustacc: about the framework, allowing me to do `this["onread"](buffer, pos, size);`, do you have any thoughts?
09:09:22  <eddyb>benvie: I was just ragequitting
09:09:41  <eddyb>I have to leave (for school. what a pleasure. :|) anyway now
09:10:00  <eddyb>benvie: btw, did he say anything after I left? that was all I was curios about TBH
09:13:26  <benvie>don't think so
09:14:13  * mralephjoined
09:18:33  <rmustacc>Don't assume it's crap just because I dislike it.
09:19:53  * rmustaccpart
09:26:28  * paddybyersjoined
09:54:53  * mralephquit (Quit: Leaving.)
09:54:55  * kuebk1quit (Ping timeout: 260 seconds)
10:02:13  * kuebkjoined
10:07:32  * piscisaureus_joined
10:11:16  * piscisaureus__quit (Ping timeout: 244 seconds)
10:17:54  * kuebk1joined
10:20:42  * kuebkquit (Ping timeout: 260 seconds)
10:27:33  * mralephjoined
10:31:27  * eddyb_joined
10:32:39  <eddyb_>benvie: sup?
10:33:32  * mralephquit (Quit: Leaving.)
10:34:08  <benvie>my brain is tired
10:40:46  <eddyb_>my home sftp decided to fail...
10:41:28  * eddyb_quit (Changing host)
10:41:28  * eddyb_joined
10:41:28  * eddyb_quit (Changing host)
10:41:28  * eddyb_joined
10:41:40  * eddybquit (Disconnected by services)
10:42:02  * eddybjoined
10:42:28  <eddyb_>no coding from school for me
11:04:03  <eddyb_>also windows is so bullshit it won't properly write to my usb drive
11:21:53  * eddyb_quit (Quit: Page closed)
12:54:06  * creationixjoined
13:47:22  * bnoordhuisjoined
13:48:48  <indutny>bnoordhuis: heya!
13:48:51  <indutny>how is it going?
13:49:08  <bnoordhuis>indutny: hey
13:49:28  <bnoordhuis>is that an american 'how are you?' or an european 'how are you?'
13:56:38  <indutny>I think american
13:56:42  <indutny>:)
13:56:50  <indutny>bnoordhuis: %
13:56:52  <indutny>^
13:57:16  <bnoordhuis>indutny: in that case: how are *you*?
13:57:33  <indutny>bnoordhuis: hehe :) thanks, almost fine
13:57:51  <indutny>returning back to Omsk at sunday
13:58:07  <indutny>well
13:58:17  <indutny>have you seen this: https://github.com/joyent/node/pull/2244 ?
13:58:31  <indutny>do you think it's possible to land this in 0.6.x ?
13:58:41  <bnoordhuis>api changes? no
13:58:56  <indutny>:(
13:59:04  <indutny>useless zlib module! :)
13:59:12  <indutny>I can't even replace my bindings in node-spdy
13:59:45  <bnoordhuis>a new function could be considered but changing existing functions is out of the question
14:00:30  <bnoordhuis>in this case it's a maybe, i'd need to review the patch
14:02:29  <indutny>ok
14:02:51  <indutny>it isn't changing anything existing
14:02:58  <indutny>only adds dictionary option
14:36:56  * creationixquit (Remote host closed the connection)
14:42:57  * piscisaureus___joined
14:46:11  <piscisaureus___>I wonder why in v8 integers a
14:46:19  <piscisaureus___>re slower than doubles
14:46:26  <indutny>piscisaureus___: huh?
14:47:09  <indutny>how are you benchmarking?
14:47:33  <piscisaureus___>indutny: https://gist.github.com/1423488
14:48:30  <piscisaureus___>I am even careful to not overflow the SMI limit
14:49:24  * creationixjoined
14:52:08  <bnoordhuis>indutny: reviewed
14:53:40  <indutny>bnoordhuis: thanks
14:54:09  <bnoordhuis>piscisaureus___: hah, that's pretty odd
14:56:47  <indutny>piscisaureus___: hm, let me test it on d8
14:57:03  <indutny>are you sure it's using smis in first case?
14:58:02  <bnoordhuis>indutny: i think piscisaureus___ is right, i see almost no malloc'ing
14:58:36  <indutny>ok, I'll take a look at asm code
14:58:40  <indutny>it's quite interesting
14:58:41  <indutny>:)
15:00:33  <indutny>ah
15:00:37  <indutny>your doing it wrong
15:00:44  <indutny>piscisaureus___: wrap your code into a function
15:01:18  <indutny>piscisaureus___: but doubles are still faster... hm...
15:02:57  <piscisaureus___>indutny: can you get the asm code out with v8
15:03:03  <piscisaureus___>can you paste it in a gist?
15:03:10  <indutny>piscisaureus___: yep
15:03:13  <indutny>piscisaureus___: one sec
15:04:50  <indutny>piscisaureus___:
15:04:52  <indutny>fck
15:04:59  <indutny>piscisaureus___: https://gist.github.com/2042d54cf4117fc7399e
15:09:31  * ericktjoined
15:16:27  * piscisaureus___quit (Read error: Connection reset by peer)
15:21:09  * piscisaureus__joined
15:23:14  <indutny>bnoordhuis: just memcpy ? and free in destructor?
15:23:43  <CIA-95>node: koichik v0.6 * r3ebbdc6 / ChangeLog : Update ChangeLog - http://git.io/Egg0qw
15:23:47  <bnoordhuis>indutny: yes
15:23:52  <indutny>I think it's simplier to store persistent handle
15:23:55  <bnoordhuis>oops, forgot about the changelog
15:24:13  <indutny>bnoordhuis: because otherwise I'll need to handle memcpy failures
15:24:28  <bnoordhuis>indutny: memcpy can't fail, you're thinking of malloc
15:25:03  <bnoordhuis>use new char[size], it always returns non-NULL
15:28:04  <indutny>bnoordhuis: ah
15:28:09  <indutny>bnoordhuis: sorry :)
15:28:43  <indutny>piscisaureus__: updated gist https://gist.github.com/2042d54cf4117fc7399e
15:29:01  * ericktquit (Quit: erickt)
15:33:57  <piscisaureus__>indutny: thnx
15:34:48  <indutny>piscisaureus__: told mraleph about that
15:35:23  <piscisaureus__>omg so much asm
15:35:36  <piscisaureus__>in c i6 5 instructions :-/
15:35:46  <piscisaureus__>s/i6/it's/
15:35:57  <indutny>hehe
15:40:47  <bnoordhuis>indutny: what's the best way to see the generated asm?
15:41:08  <bnoordhuis>preferably of just the section that you're interested in
15:41:13  <indutny>bnoordhuis: scons objectprint=on disassembler=on
15:41:22  <indutny>bnoordhuis: scons ... d8
15:41:37  <indutny>bnoordhuis: ./d8 --print-opt-code --code-comments --hydrogen-filter=fnname test.js
15:41:41  <bnoordhuis>ah cool
15:41:48  <bnoordhuis>i always did it in gdb - painful!
15:41:51  <indutny>... = objectprint, etc
15:41:54  <indutny>bnoordhuis: haha :)
15:42:01  <indutny>bnoordhuis: hardboiled debugging
15:43:42  <indutny>piscisaureus__: replace new Array with [] in your file
15:43:52  <indutny>piscisaureus__: (all credits to mraleph)
15:43:56  <indutny>and that's definitely a v8 bug
15:48:10  <piscisaureus__>indutny: if i do that ints get faster but doubles become slower
15:48:39  * mralephjoined
15:50:51  <indutny>piscisaureus__: yeah :)
15:51:02  <indutny>piscisaureus__: have you wrapped everything in function
15:51:08  <indutny>piscisaureus__: see this https://gist.github.com/2042d54cf4117fc7399e
15:51:17  <indutny>ah, node.js does this
15:51:25  <indutny>probably that won't affect you
15:56:10  <indutny>bnoordhuis: I limited dictionary with 1024 bytes
15:56:15  <indutny>s/with/to
15:56:22  <indutny>bnoordhuis: but that doesn't looks good to me
15:56:43  <indutny>What if SPDY guys will add more data to dictionary?
15:57:00  <bnoordhuis>indutny: then we'll revisit it
15:57:16  <indutny>great
15:57:25  <indutny>if you want to support latest spdy - please update node
15:57:25  <indutny>:D
15:57:59  <mraleph>piscisaureus_: I saw you test case. This is the cause: http://code.google.com/p/v8/issues/detail?id=1849 (at least on the bleeding edge).
15:58:15  <indutny>while limiting dictionary size is consistent to node_zlib design, it's inconsistent to overall node design
15:58:30  <bnoordhuis>indutny: all kidding aside, worst case is that you copy some more data
15:58:30  <indutny>bnoordhuis: we ain't memcpy'ing data, we're storing persistent handles and releasing them
15:58:44  <indutny>bnoordhuis: I'm cropping it
15:58:46  <piscisaureus__>mraleph: cool!
15:58:53  <indutny>mraleph++
15:58:56  <bnoordhuis>indutny: cropping? you mean hard-limiting?
15:59:14  <indutny>bnoordhuis: yes
15:59:18  <bnoordhuis>indutny: don't do that
15:59:37  <indutny>bnoordhuis: what should I do in this case?
15:59:42  <indutny>bnoordhuis: I'm doing new char[1024]
16:00:15  <bnoordhuis>indutny: user passes in buffer, copy buffer contents, pass to Init()
16:00:37  <indutny>bnoordhuis: heh, so I'll need to malloc space for buffer?
16:00:53  <indutny>bnoordhuis: and handle malloc fails and throw exceptions
16:00:57  <bnoordhuis>indutny: just do new char[bufsize]
16:01:05  <indutny>bnoordhuis: wow, really? :D
16:01:07  <bnoordhuis>like i said, new always returns non-NULL
16:01:17  <indutny>bnoordhuis: sorry
16:01:22  <indutny>bnoordhuis: returning back
16:01:41  <bnoordhuis>indutny: ?
16:01:50  <indutny>bnoordhuis: returning back to coding
16:01:51  <indutny>:)
16:01:53  <bnoordhuis>oh, hah
16:03:21  <indutny>bnoordhuis: sorry, one more stupid C++ question
16:03:48  <indutny>bnoordhuis: if I've pointer as private class property, will be automatically set to NULL or should I do it in constructor?
16:04:06  <bnoordhuis>indutny: do it in the constructor
16:04:39  <indutny>bnoordhuis: ok, thanks
16:07:27  <indutny>bnoordhuis: done, https://github.com/joyent/node/pull/2244
16:10:15  <bnoordhuis>there are some who say that `if (p) free(p)` is an anti-pattern
16:10:22  <bnoordhuis>but meh, i don't care - saves a function call
16:10:38  <indutny>bnoordhuis: hehe :)
16:10:47  <indutny>bnoordhuis: yep, I know free(NULL) works just fine
16:11:03  <bnoordhuis>ah but
16:11:08  * bnoordhuisleaves comment
16:11:19  <indutny>bnoordhuis: but good news, my C++ is much better then it was year ago! :)
16:12:12  <bnoordhuis>indutny: in that vein of self-improvement, don't mix malloc/free and new/delete
16:13:24  <indutny>bnoordhuis: ah, yeah
16:14:59  <indutny>bnoordhuis: thank you my master :)
16:15:15  <indutny>bnoordhuis: updated my pull request
16:15:49  <indutny>bbiab, going to eat soup and sushi
16:24:31  <indutny>back
16:26:57  * kuebk1part
16:26:59  <indutny>btw, are we going to update v8 on 0.6.x ?
16:27:25  <bnoordhuis>indutny: no
16:30:13  <indutny>k
16:48:53  * dapjoined
16:53:24  <indutny>bnoordhuis: any luck with my request?
16:54:41  * creationixquit (Ping timeout: 245 seconds)
16:54:49  * creationixjoined
16:55:27  <bnoordhuis>indutny: lgtm but i want isaacs to review it too
16:55:56  * isaacsjoined
16:57:53  * piscisaureus__quit (Ping timeout: 244 seconds)
16:58:19  <indutny>bnoordhuis: ok
16:58:22  <indutny>ttyl
17:03:12  * creationixquit (Quit: creationix)
17:15:01  * creationix_joined
17:18:00  <igorzi>isaacs: hey, yt?
17:18:05  <isaacs>yeah
17:18:07  <isaacs>what's up?
17:18:13  * mralephquit (Quit: Leaving)
17:19:12  <igorzi>isaacs: i keep running into that EACCESS issue on one of my vms.. and someone from azure is running into it as well
17:19:33  <igorzi>isaacs: are there extra logging that we could enable to spit out more info?
17:19:54  <isaacs>igorzi: the thing to do would be to add extra logging into the fstream and tar packages.
17:20:10  <isaacs>igorzi: there's no easy way to do that, though. i just have a bunch of commented-out console.error calls
17:21:18  <igorzi>isaacs: can you send me the npm files with those console.error calls? and i'll try to reproduce
17:21:38  * creation-joined
17:21:41  <isaacs>igorzi: it's all the stuff in npm/node_modules/tar and npm/node_modules/fstream
17:21:53  <isaacs>igorzi: i don't know what's going wrong, so i'd just have to dig in and start tracing through.
17:22:02  <isaacs>really, it would be best if i had access to a machine that has this issue.
17:22:15  <isaacs>is there any way to do a remote desktop or something?
17:22:40  <isaacs>or maybe i could just use whatever OS it is that youer' seeing this? is there some other common factor?
17:23:20  <igorzi>isaacs: yeah, i think we can set something up.. let get it into a reproduceable state, and i'll let you know
17:23:30  <isaacs>k, that would be great
17:23:58  <isaacs>i suspect that it's not properly done closing a file in a dir before trying to move it. is it always at that __package.npm action?
17:24:38  * creation-changed nick to creationix
17:26:41  <isaacs>if so, the only think i could think is that maybe fs.readdir isn't closing properly before calling the cb
17:31:08  * creationixquit (Quit: ZNC - http://znc.sourceforge.net)
17:31:38  * creationix_quit (Quit: ZNC - http://znc.sourceforge.net)
17:32:54  * creationixjoined
17:33:17  <igorzi>isaacs: yes, it always seems to be __package.npm action
17:34:25  <CIA-95>libuv: Ben Noordhuis master * rf5c2a4a / (34 files in 6 dirs):
17:34:26  <CIA-95>libuv: Merge branch 'v0.6'
17:34:26  <CIA-95>libuv: Conflicts:
17:34:26  <CIA-95>libuv: src/unix/core.c
17:34:26  <CIA-95>libuv: src/win/winapi.h (+6 more commits...) - http://git.io/Ij-ZFQ
17:34:47  * ericktjoined
17:34:51  <CIA-95>node: Ben Noordhuis isolates * r6c41c5d / (src/node.cc src/node.h): core: isolate-ify (+6 more commits...) - http://git.io/swHulA
17:34:52  <CIA-95>node: Ben Noordhuis master * r49ba55b / (345 files in 36 dirs):
17:34:53  <CIA-95>node: Merge branch 'v0.6'
17:34:53  <CIA-95>node: Conflicts:
17:34:53  <CIA-95>node: src/node_version.h (+22 more commits...) - http://git.io/tQFY9Q
17:35:39  <isaacs>igorzi: can you try this test? https://gist.github.com/1424110
17:38:07  <isaacs>looking at the code, it seems like the dir reader should be closed, at least, unless FindClose(dir); takes some time to complete asynchronously or something
17:38:26  <isaacs>but if it's a locking issue, then that's what it would be
17:39:06  <igorzi>isaacs: yes! it reproduced on the 3rd try
17:39:12  <isaacs>awesome
17:39:21  <isaacs>this is a node/libuv bug, then
17:39:31  <isaacs>fs.readdir should not keep the dir handle open once the callback fires.
17:39:55  <isaacs>maybe we can tweak the test to reproduce every time, and land it as a node test.
17:40:33  <igorzi>isaacs: thanks.. there seems to be some type of race going on.. i could never reproduce this with a debug build
17:40:53  <isaacs>awesome
17:41:08  <isaacs>in the meantime, knowing that's what it is, maybe i can work around it somehow in npm to unblock azure
17:42:00  <igorzi>thanks
17:42:23  <isaacs>igorzi: can you reproduce with this? https://gist.github.com/1424137
17:46:39  <igorzi>isaacs: ran 10 times without reproducing
17:46:58  <isaacs>ok, great
17:47:00  <igorzi>btw, i can also reproduce with readdirSync
17:47:06  <isaacs>k
17:47:23  <isaacs>so, it's root-caused. that's good. i'll land a workaround in npm today for the next version
17:50:01  <igorzi>isaacs: can you point me to a file that people can update on their machines to get the workaround?
17:54:47  * mikealquit (Quit: Leaving.)
18:05:43  * brsonjoined
18:13:28  <isaacs>igorzi: yeah, will do
18:15:44  * isaacsquit (Quit: isaacs)
18:20:59  * pieternjoined
18:32:21  * mikealjoined
18:41:09  <igorzi>isaacs bnoordhuis: any chance we could re-release the MSI with isaacs'
18:41:14  <igorzi>workaround?
18:41:42  <igorzi>the 0.6.4 MSI that is
18:42:16  * AvianFlujoined
18:46:17  * mikealquit (Quit: Leaving.)
18:48:40  <bnoordhuis>igorzi: how important is it to you / MS?
18:53:36  <igorzi>bnoordhuis: pretty important
18:53:52  <igorzi>bnoordhuis: node.exe wouldn't need to change at all.. just the MSI
18:57:09  <bnoordhuis>igorzi: is there a reason it cannot wait for 0.6.5?
19:02:06  * isaacsjoined
19:07:32  <igorzi>isaacs: can you please put this workaround into node v0.6? so that we could do v0.6.4.1 today?
19:07:43  <isaacs>yes
19:07:58  <isaacs>that's kind of an odd version number for node.
19:08:09  <isaacs>could it stick with the semver style v0.6.4-1?
19:08:24  <isaacs>ie, build number isntead of breaking the pattern
19:09:17  <bnoordhuis>isaacs: sure
19:09:34  <bnoordhuis>isaacs: i'm also okay with v0.6.4.1-ms-special-edition
19:09:45  <bnoordhuis>without the .1 :)
19:09:46  <isaacs>that'd be even better.
19:10:00  <igorzi>isaacs: btw, i don't think it's a fs.readdir issue.. it seems to be that it's the a/v software that's locking the directory
19:10:01  <isaacs>0.6.4-1-ms-readdir-fix
19:10:09  <isaacs>a/v software? that's odd.
19:10:41  <igorzi>yeah. if i disable the a/v i don't reproduce anymore..
19:10:47  <isaacs>ah, interestnig
19:11:28  <igorzi>isaacs: maybe your workaround should be more robust than setTimeout(50)? you should probably wait/retry several times?
19:12:04  <isaacs>igorzi: hm. i hear what you'er saying, but it's very difficult to detect.
19:12:28  <isaacs>it only happens if you try to remove a directory directly after reading it, and it doesn't affect the read, it affects the *next* thing you do
19:13:01  <isaacs>so, to work around this robustly, any readdir operation would have to set some kind of flag to say that now we're in this "possibly busted" state, and to retry on EACCES for a few ms
19:13:07  * sh1mmerjoined
19:13:29  <isaacs>which would mean wrapping rename, rmdir, or anything else that could potentially collide with that lock
19:13:30  <igorzi>isaacs: i don't think reading has any impact here... these are newly downloaded files, right? so a/v starts scanning that directory, which causes fs.rename to fail
19:13:51  <igorzi>i bet i could reproduce this without fs.readdir
19:13:56  <isaacs>interesting
19:14:01  <isaacs>so the issue is just that it's a *new* directory?
19:14:08  <igorzi>i think so
19:14:21  <isaacs>igorzi: the robust fix is not to unpack stuff in these freaking temp folders all over the place.
19:14:43  <isaacs>npm should just unpack directly into place, and filter what it needs to filter as it's unpacking, which can be done now that i own tar.
19:15:00  <isaacs>maybe the short-term fix should be "if you get this, disable your AV"
19:15:09  <isaacs>or, a 50ms timeout
19:15:35  <bnoordhuis>sounds like a new release is not really needed...
19:15:58  <isaacs>doing this right is just going to take a bit more time, like a week or two.
19:16:18  <isaacs>is there a way to tell the A/V not to scan a dir, because i'm about to delete it?
19:17:55  <bnoordhuis>isaacs: pass F_REALLY_NOT_A_VIRUS to FileOpenEx
19:18:01  <isaacs>hahahah
19:18:09  <isaacs>F_NO_SRSLY_ITS_OK_JUST_TRUST_ME
19:18:33  <igorzi>i think that depends with each A/V vendor
19:18:57  <isaacs>hm.
19:19:27  <isaacs>so, i think a 50ms timeout is probably fine for now, and for the folks that doesn't help, tell them to disable A/V, and meanwhile, work on a proper solution that's going to be a bigger refactor.
19:20:52  <igorzi>isaacs: ok
19:23:03  <isaacs>igorzi: here's the patch:
19:23:04  <isaacs>https://github.com/isaacs/node/commit/58027fa13ba8e632dfa480471bcd83714e195027
19:23:41  <indutny>isaacs: heya!
19:23:46  <isaacs>hi
19:23:56  <indutny>have you seen my PR ?
19:25:55  * bnoordhuisis afk for a bit
19:28:34  <isaacs>indutny: no, link?
19:29:29  <isaacs>indutny: oh, the zlib dictionary thing
19:39:36  * sh1mmerquit (Ping timeout: 244 seconds)
19:57:53  * sh1mmerjoined
20:09:26  * sh1mmerquit (Read error: Connection reset by peer)
20:15:06  * AvianFluquit (Read error: Connection reset by peer)
20:15:30  * AvianFlujoined
20:50:41  <igorzi>isaacs: the timeout shouldn't probably be applied after readdir? it should be before rename?
21:12:45  * sh1mmerjoined
21:22:06  * dapquit (Quit: Leaving.)
21:22:35  * dapjoined
21:33:05  * ryahquit (Ping timeout: 248 seconds)
21:33:47  * ryahjoined
21:41:13  * dapquit (Quit: Leaving.)
21:47:49  * mralephjoined
21:58:07  <piscisaureus_>igorzi: hey, yt
21:58:12  <piscisaureus_>igorzi: I don't think it's AV
21:58:22  <piscisaureus_>because I always have all my antivirus off
21:58:36  <piscisaureus_>igorzi: it's more likely to be the indexing service I think
21:59:19  <igorzi>piscisaureus_: yep.. AV or indexing service
21:59:36  <igorzi>for me it's av, i'm running win2k8 (where the indexing service is off by default)
22:00:55  <igorzi>piscisaureus_: you're running on win7, right?
22:01:02  <piscisaureus_>igorzi: yeah
22:01:17  * sh1mmerquit (Quit: sh1mmer)
22:02:21  * sh1mmerjoined
22:02:58  <piscisaureus_>igorzi: what is the syscall that is failing? MoveFile? RemoveDirectory?
22:05:04  <igorzi>piscisaureus_: i don't know.. it never fails under the debugger or with any extra tracing
22:05:17  <igorzi>piscisaureus_: it doesn't even fail with the debug build
22:05:24  <piscisaureus_>ha, I had the same
22:06:33  <igorzi>piscisaureus_: FYI - here's the fix that isaacs is doing https://github.com/isaacs/node/commit/ffc8110659854179cd002d8859668deb59c19a30
22:06:44  <igorzi>piscisaureus_: i'm testing it now
22:07:49  <piscisaureus_>that fix is terrible :-)
22:08:13  <igorzi>piscisaureus_: fix is the wrong word :).. hack/workaround
22:08:50  <piscisaureus_>If many people hit this we could also do it in libuv
22:10:14  <igorzi>isaacs is going to fix it properly by not using a temp dir and then rename
22:10:38  <isaacs>piscisaureus_: it's not a fix :)
22:10:47  <isaacs>piscisaureus_: that file needs to be rewritten entirely.
22:10:49  <isaacs>lib/cache.js, too
22:10:58  <isaacs>it's not taking advantage of what node-tar can do.
22:11:02  <piscisaureus_>igorzi, isaacs: ok - so that makes me happy
22:11:13  <piscisaureus_>but still it's terrible that rename fails this way
22:11:42  <isaacs>piscisaureus_: it's just that you basically can't create a directory, fill it with files, and then immediately move it, if you have an AV program active
22:16:16  <piscisaureus_>well, I can't really reproduce the issue with a standalone test
22:23:32  * piscisaureus__joined
22:23:44  <igorzi>piscisaureus_: can you reproduce with this? https://gist.github.com/1424110 (this was still back when we thought it was readdir problem).. but this reproduced for me about 1 out or 3 times
22:26:55  <indutny>isaacs: fixed ;)
22:27:12  <piscisaureus__>igorzi: I can reproduce but I have to try very often
22:27:22  <piscisaureus__>igorzi: also, if I remove the readdir call it never fails
22:27:23  <isaacs>indutny: kewl. basically all the other thoughts i had were covered by bnoordhuis
22:27:46  <isaacs>indutny: all that i'd add is to add some tests, and docs, and make sure that the existing zlib tests don't fail.
22:28:09  <igorzi>piscisaureus__: my thinking on readdir is that it introduces a long enough pause to give AV to kick in
22:28:18  <igorzi>can you repro when you disable the indexing service?
22:28:53  <piscisaureus__>I'm having a hart time reproducing it anyway
22:28:59  <piscisaureus__>takes 1000s of tries
22:29:01  <benvie>windows indexing is responsible for so many random things breaking in Windows, it's really annoying
22:33:57  <piscisaureus__>It is kind of nice to run this test in a loop and see my ssd pull 520 MB /s :-)
22:34:17  <piscisaureus__>although it's sad that I'm thrashing my ssd with it
22:36:17  * mikealjoined
22:36:30  <piscisaureus__>Its almost impossible to reproduce now
22:36:49  <piscisaureus__>igorzi: But I can confirm that SearchIndexer is indexing the files
22:36:53  <benvie>I disabled indexing a while back because windows loses its mind when I try to do stuff like compile Chromium or even worse the webkit repo, even with an SSD. I think what it does is infinitely queues all these requests and it doesn't seem to have any sanity check on dumping its queue or something
22:37:04  <benvie>so it'll sit there for hours trying to work through its backlog of updating
22:37:25  <piscisaureus__>well I kind of like the indexing service
22:37:36  <piscisaureus__>it's quite practical
22:37:46  <benvie>yeah its fine in most cases
22:38:02  <piscisaureus__>The implementation could use some love sometimes indeed
22:38:19  <benvie>definitely is not friendly for compiling due to the massive amount of changes that occur, because it essentially multiplies every action against the disk by 3 or 4 times
22:38:28  <piscisaureus__>sometimes there are these random occasions where it uses 100% cpu for a while
22:39:02  <benvie>its too eager I think
22:39:36  <benvie>it should always be in background but it tries very hard to stay real time
22:43:18  <isaacs>piscisaureus_, igorzi: so, +1 on this then?
22:44:59  <piscisaureus__>isaacs: yeah I guess
22:45:09  <piscisaureus__>it's better to fix it than to not fix it :-)
22:50:21  <igorzi>isaacs: yep, +1
22:51:15  <indutny>isaacs: ok, sounds good, I'll do that tomorrow
22:51:16  <indutny>thank you
22:51:24  <isaacs>indutny: k
22:53:26  * mikeal1joined
22:54:57  * mikealquit (Ping timeout: 260 seconds)
22:56:02  <CIA-95>node: isaacs v0.6 * rffc8110 / deps/npm/lib/utils/tar.js : Workaround: A/V software prevents folder rename - http://git.io/vrjCjA
23:00:54  <bnoordhuis>isaacs: that's the commit? ^
23:01:13  <isaacs>yep
23:01:33  * bnoordhuisbuilds a new msi
23:01:36  <isaacs>thanks
23:01:40  <bnoordhuis>so what do we want the tag to be?
23:01:55  <piscisaureus__>0.6.4-1?
23:01:58  <isaacs>0.6.4-1-ms-patch
23:02:13  <isaacs>we can do 0.6.4-2-ms-patch for a newer one if necessary (hopefully won't be)
23:03:05  <bnoordhuis>0.6.4-1 is less typing...
23:13:09  <isaacs>bnoordhuis: yeah, but patches should have names.
23:13:09  * Nohrybjoined
23:13:16  <isaacs>hotfixes
23:14:25  <bnoordhuis>i suppose you're right
23:14:29  <bnoordhuis>more typing it is
23:26:55  <bnoordhuis>igorzi: https://gist.github.com/41d98e71f8dc494d4693 <- can i ignore those warnings?
23:32:39  * Nohrybquit (Quit: Nohryb)
23:36:33  * indexzerojoined
23:39:07  <igorzi>bnoordhuis: yes, ignore
23:40:10  <bnoordhuis>igorzi: cool, can you double-check the msi? http://nodejs.org/dist/v0.6.4/node-v0.6.4-1-msav.msi
23:40:33  <bnoordhuis>it installs cleanly here and node.exe and npm.cmd work
23:40:49  <isaacs>awesome
23:41:14  <igorzi>one sec
23:43:33  * mikeal1quit (Quit: Leaving.)
23:43:52  <igorzi>bnoordhuis: the msi says it's v0.6.5
23:44:23  <igorzi>i guess it's because you built it with latest v0.6 branch?
23:44:53  <bnoordhuis>igorzi: yes, but from the existing node.exe and node.pdb
23:44:54  <isaacs>hm.. that seems wrong
23:44:59  <bnoordhuis>where does it say that btw?
23:45:07  <isaacs>it'd be better for it to say 0.6.4-1-msav
23:45:25  <bnoordhuis>isaacs: i don't want to rebuild the exe
23:45:34  <igorzi>after you install, goto control panel/uninstall, and find nodejs
23:46:01  <isaacs>ok. it's only going to live for one week anyway :)
23:46:03  * AvianFluquit (Ping timeout: 244 seconds)
23:46:05  <bnoordhuis>oh right
23:46:11  <bnoordhuis>does it look at the git tag?
23:46:24  <igorzi>no, it's using node_version.h
23:46:57  <igorzi>i don't really have an issue with it.. as long as node.exe is the same as v0.6.4
23:47:23  <bnoordhuis>it is, you can check the sha1 sums
23:47:56  <bnoordhuis>i suppose i could hack vcbuild.bat and patch in the right version
23:48:15  <bnoordhuis>igorzi: how much do you care about it on a scale of 1 to 10?
23:48:29  <igorzi>probably around 3
23:48:44  <bnoordhuis>okay, i'll leave it as it is then :)
23:49:01  <igorzi>ok :)
23:49:19  * mikealjoined
23:49:52  <igorzi>can we point the link on nodejs.org to point to that one?
23:52:07  <bnoordhuis>igorzi: yes
23:52:08  <bnoordhuis>error CNDL0108: The Product/@Version attribute's value, '0.6.4-1-msav', is not a valid version. Legal version values should look like 'x.x.x.x' where x is an integer from 0 to 65534.
23:52:16  <bnoordhuis>^ it doesn't even work
23:53:26  <ryah>hey
23:53:35  <piscisaureus__>hey
23:53:36  <ryah>if you're going to bump the version release v0.6.5
23:55:19  <bnoordhuis>that means i have to do a rebuild and takes that more than an hour here, i don't have that much time tonight
23:55:27  <ryah>then it will wait
23:55:39  <ryah>i can to it tomorrow night (PST)
23:55:51  <bnoordhuis>igorzi: you heard the man
23:56:40  <ryah>im not up to date on what's going on, still traveling - but i'll catch up tomorrow
23:56:48  <ryah>presumably there's a good reason for the patch
23:57:04  <bnoordhuis>yes, it's a npm fix to work around A/V software
23:57:22  <igorzi>ryah: yeah, "npm install" breaks sometimes if you have A/V software running
23:57:32  <ryah>this can't wait until next friday?
23:58:23  <ryah>btw - good job on the v0.6.4 release everyone
23:58:32  <ryah>very happy to see a release go out without my involvement
23:59:59  <ryah>okay! going back to vacation. see you tomorrow or monday