[00:00] piscisaureus: mraleph: I guess just suspending the thread then calling GetThreadContext could work though [00:00] piscisaureus: I don't think cygwin remaps registers :-) [00:00] mraleph: hehe [00:00] piscisaureus: only you end up with a some posix win32 bastard code [00:01] mraleph: well just remove signals and use the same approach win32 is using. [00:01] mraleph: I am offline, going home to sleep [00:05] piscisaureus: mraleph: good nigh [00:05] piscisaureus: t [00:06] unomi has joined the channel [00:06] at133 has joined the channel [00:06] btipling has joined the channel [00:06] btipling has joined the channel [00:07] bartt has joined the channel [00:08] orospakr has joined the channel [00:09] warz has joined the channel [00:09] Remoun has joined the channel [00:10] piscisaureus: NuckingFuts: I added nameservers to the cygwin buildbot [00:10] piscisaureus: will ask about openssl when arlolra is around [00:11] Jaye__ has joined the channel [00:14] Jourkey has joined the channel [00:14] Jourkey: what's the best way to handle file uploads? [00:15] Jourkey: do i use this? [00:15] Jourkey: https://github.com/felixge/node-formidable [00:15] micheil: node formidable, iirc [00:15] Jourkey: that's the one that everyone uses? ok :) [00:16] bentruyman has joined the channel [00:16] stagas has joined the channel [00:16] Me1000 has joined the channel [00:18] dstik has joined the channel [00:18] svenlito_ has joined the channel [00:19] ngwe has joined the channel [00:19] SwiftLayer has joined the channel [00:21] jpstrikesback has joined the channel [00:22] fairwinds: curious what folks are doing with camel case vs underscore keys in mongo or couch. How does mongoose handle? [00:22] Jourkey: what ajax upload lib do people use with formidable? [00:23] stagas has joined the channel [00:23] easternbloc_: fairwinds: think mongoose lowercases [00:23] easternbloc_: but it may have changed since i last looked [00:23] aconran_ has joined the channel [00:24] micheil: Jourkey: persoanlly, I don't, and I haven't heard of a specific one to be honest [00:24] easternbloc_: and i may just be plain wrong [00:24] Jourkey: ok :) thanks [00:25] fairwinds: easternblock_: how are you writing your schemas out to start? camel case vars? [00:25] fairwinds: sorry attributes [00:25] zomgbie has joined the channel [00:26] galaxywatcher has joined the channel [00:26] fairwinds: ie firstName or first_name [00:26] postwait has joined the channel [00:27] beta_ has joined the channel [00:27] EyePulp has joined the channel [00:28] netrealm has joined the channel [00:28] brapse has joined the channel [00:28] jacobolus has joined the channel [00:28] dshaw has joined the channel [00:29] EyePulp: yo ho ho... [00:30] hunterloftis: conundrum: Just converted a node app to use fugue + redis sessions. However, each "worker" seems to have its own redis session, rather than sharing the one from the single cookie or whatever. Suggestions to work around this? [00:31] nonnikcam has joined the channel [00:31] jdrannbauer has joined the channel [00:32] netrealm: Hey, I'm having trouble building Node. It fails on step 51, libv8.a. Scons says: scons: *** [obj/release/snapshot.cc] Error -11. Any pointers on what to check for? [00:32] fairwinds: seems lowercase with underscores might be used for properties/attributes as seen in blog post at http://blog.learnboost.com/blog/mongoose/ ie. user.new_property = 'test'; [00:33] easternbloc_: fairwinds: that blog post is _old_ so don't trust it [00:33] fairwinds: heh [00:33] tjholowaychuk: hunterloftis: hmm should be irrelevant how many workers [00:33] tjholowaychuk: ill check [00:33] hunterloftis: tjholowaychuk: I just thought of something stupid I may be doing. Also checking. [00:34] lukegalea has joined the channel [00:34] fairwinds: tjholowaychuk: hey, curious about format of properties for mongoose. use lowercase with underscores or camelcase [00:34] fairwinds: in models [00:35] tjholowaychuk: fairwinds: I would suggest camel-case like anything else in js [00:35] Nevtus has joined the channel [00:35] Nevtus has joined the channel [00:35] hunterloftis: tjholowaychuk: one of our guys added a random number to express.session.secret, which was generated by each worker, I think leaving them with "separate" sessions [00:36] softdrink has joined the channel [00:36] tjholowaychuk: hunterloftis: ah [00:36] tjholowaychuk: yeah [00:36] tjholowaychuk: that will do it [00:36] hunterloftis: tjholowaychuk: how would you recommend generating secret? I guess I could make it a constant, or I could generate it in the "main" fugue server and pass it to the "children" [00:36] jamund has joined the channel [00:36] tjholowaychuk: hunterloftis: no reason to randomly generate it really [00:36] tjholowaychuk: 'keyboard cat' [00:36] tjholowaychuk: will do [00:36] tjholowaychuk: haha [00:36] Jourkey: anyone know how to make valums jquery upload plugin work with formidable? [00:36] hunterloftis: tjholowaychuk: That's pretty much what I thought. one of our guys takes security a little too seriously ;) [00:37] ChrisPartridge has joined the channel [00:37] CIA-39: node: 03Tj Holowaychuk 07v0.4 * r42a3696 10/ (src/node.js test/simple/test-process-kill-null.js): [00:37] CIA-39: node: Fixed null signal preservation [00:37] CIA-39: node: Closes GH-674. - http://bit.ly/if34qA [00:38] tjholowaychuk: YAY [00:38] EyePulp: maybe a silly question, but when I do new Date(); the value isn't offset to my locale's GMT [00:39] EyePulp: do I need to explicitly account for this or is there a way for it to self-detect from it's environment? [00:40] lukegalea: EyePulp: I've had a lot of problems with that. [00:40] Nevtus has joined the channel [00:40] Nevtus has joined the channel [00:40] MikhX has joined the channel [00:40] ryah: tjholowaychuk: thanks [00:41] lukegalea: EyePulp: On my osx laptop it's offset from GMT properly, on the server it's UTC because the server is set to use UTC for the system clock (or at least that's my guess).. [00:41] mscdex: EyePulp: lukegalea: (new Date()).toLocaleString() [00:41] tjholowaychuk: ryah: np, I can patch for 0.2.x as well if you want [00:41] tjholowaychuk: would be nice to get into both [00:41] ryah: tjholowaychuk: sure [00:41] EyePulp: lukegalea: interesting [00:41] lukegalea: mscdex: I found I had to keep track of the client's offset, the server's offset and the database's offset and convert back and forth. [00:41] micheil: tjholowaychuk: we aren't maintain 0.2.X anymore, are we? [00:42] dspree has joined the channel [00:42] micheil: I thought all efforts were now on 0.4 and 0.5 [00:42] tjholowaychuk: micheil: figured easy stuff would be ported [00:42] mraleph has joined the channel [00:42] tjholowaychuk: maybe not [00:42] tjholowaychuk: i dont know [00:42] tjholowaychuk: micheil: I cant verify that a process is alive without this [00:42] micheil: up to ryah and what he's willing to support. [00:42] tjholowaychuk: not a huuuge deal [00:43] bingomanatee: ACTION thinks keyboard cat webcams are the new captcha [00:43] arnorhs has joined the channel [00:43] Vertice has joined the channel [00:44] techwraith1 has joined the channel [00:44] micheil: tjholowaychuk: oh, yeah, I guess I should really add validators into the doctool, but it's format is so loose in many ways [00:44] mscdex: lukegalea: the server's offset can always be obtained with getTimezoneOffset() [00:45] mscdex: or more specifically: -d.getTimezoneOffset()/60 [00:45] lukegalea: yep.. I use that. and I have a bunch of horrid methods like: dbTimeToClientTime.. and serverTimetoClientTime.. and every variation thereof. [00:46] lukegalea: so when I get a date from the user I might convert to mongodb's time so I can do a filter, or store something.. [00:46] lukegalea: It's a real pain ;) [00:47] samcday has joined the channel [00:48] EyePulp: hrm - that means all of my db storage with timestamps is recorded without my utc offset. nuts. [00:49] lukegalea: EyePulp: Ya.. :( I just make a point to store everything in the DB in UTC anyway. [00:49] possibilities has joined the channel [00:49] andrewfff has joined the channel [00:50] mikeal has joined the channel [00:51] micheil: UTC in databases and logs is best. [00:51] stagas_ has joined the channel [00:51] piscisaureus: ryah: apparently there were still issues with that cygwin patch I sent you [00:51] piscisaureus: I'm gonna let mraleph look at it first before getting it into node [00:52] EyePulp: am I safe in assuming it will behave like this on all servers, e.g. no utc offset? [00:52] piscisaureus: hopefully next time it will come via a v8 update :-) [00:52] eee_c has joined the channel [00:52] piscisaureus: oh, i skipped the fact that I think I fixed them [00:53] lukegalea: EyePulp: Not sure. I've noticed differences between osx and linux.. but who knows. Sorry I'm no help there. I can say that I have *not* made that assumption. I check the timezoneoffset like mscdex recommended. [00:54] aheckmann has joined the channel [00:54] mscdex: there's also always the getUTC* methods [00:55] felixge has joined the channel [00:55] felixge has joined the channel [00:56] andrewfff has joined the channel [01:01] broofa_ has joined the channel [01:02] MikhX has joined the channel [01:04] Sebmaster: piscisaureus: You sent your cygwin patch to v8? [01:04] piscisaureus: yeah but there was still an issue with it [01:04] dspree has joined the channel [01:04] dspree has joined the channel [01:04] piscisaureus: im cooking a new one now [01:05] Sebmaster: nice [01:05] mischief has joined the channel [01:05] piscisaureus: be happy when it's landed, no sooner :-) [01:05] Sebmaster: they already commented on it? [01:06] piscisaureus: no but mraleph was here with me on the ir [01:06] piscisaureus: c [01:06] mischief__ has joined the channel [01:06] Sebmaster: oh ok [01:07] Sebmaster: hopefully theyll land it [01:07] stagas has joined the channel [01:07] piscisaureus: It will not make all cygwin issues go away automagically [01:08] pl-6: I'm installing node.js on Windows (sorry folks if anyone chokes on a pretzel upon reading that)- I was following instructions from here : https://github.com/ry/node/wiki/Building-node.js-on-Cygwin-%28Windows%29 I noticed some 'not found's on the ./Configure - it said finished successfully 37.067% [01:08] pl-6: Checking for sendfile(2) : no then checking for header sys/inotify.h : not found [01:08] piscisaureus: pl-6. yeah. just ignore that [01:08] pl-6: should I be concerned ? [01:08] pl-6: ok [01:08] pl-6: oh wait- I'm sorry, it's not % - it's 's' [01:08] pl-6: phew - thought it meant finished 37% successfully - whoops. [01:08] Ratty_: It'll use it if it's there, if not it'll work around it [01:09] balaa has joined the channel [01:10] pl-6: I really really really need to start using linux here on out I think - I used to use this DEC unix, but it's been so long. I think the time has come for me to cross this bridge ! rather than see Cygwin attempt to emulate - I guess it emulates the *nix kernel on Win... ok thanks. [01:10] Sebmaster: piscisaureus:Nah, but i guess we/you dont have to redo the platform_cygwin.cc if they change the interface(s) [01:11] softdrink has joined the channel [01:11] TheCowboy has joined the channel [01:11] Twelve-60 has joined the channel [01:12] pl-6: one thing on node.js as I am exploring it for a web server solution - firewall wise, as I'm not quite sure just what 'application' node.js will run under, I'm guessing it runs using V8 ? Google's javascript engine... I can just block port 80 for incoming other than this machine, but general question here - what will node.js be running under as a process ? [01:12] Sebmaster: pl-6: if you run it with cygwin it will be node.exe [01:13] pl-6: oh, ok. [01:14] zentoooo has joined the channel [01:15] yozgrahame1 has joined the channel [01:15] mraleph: ryah: yeah I know that assertion. will try to fix it [01:16] balaa has joined the channel [01:16] felixge has joined the channel [01:16] felixge has joined the channel [01:16] mraleph: ryah: I think it was broken by the recent storm of changes in x64 backend. [01:18] mscdex: any crankshaft love for x64 yet? [01:18] pl-6: ooooh, I'm so excited - BIG learning curve, from what I read, and the enthusiasm I detect on node.js -I MAY just get a static IP - drop my outsourced windows hosting solutions and use node.js if this all works out ! I wonder if node.js will be crippled or set back in any way if I'm using cygwin ? Not that I'm seeking to benchmark it's performance etc. in this setup. [01:18] sprout has joined the channel [01:20] orospakr: Hey, what is the kosher way to write JS docstrings these days? [01:20] mscdex: pl-6: imho it's best to have a real *nix system for node. cygwin is best for local debugging and testing [01:20] orospakr: I'd like to make the adhoc comments decorating my functions and blocks into something a little more... normalized [01:20] mscdex: if you have to use windows [01:20] jashkenas: orospakr: JSDoc? [01:21] orospakr: jashkenas, after a quick google, that looks about right [01:22] tmzt: pl-6: you can make it listen on localhost only if you want, even on windows I think [01:22] mraleph: mscdex: already some love, in active development. [01:22] mscdex: :p [01:23] mscdex: cygwin will always be emulation though [01:24] zomgbie has joined the channel [01:24] CIA-39: node: 03Ryan Dahl 07v0.4 * rc365f56 10/ (lib/http.js lib/tls.js test/simple/test-https-eof-for-eom.js): [01:24] CIA-39: node: https was missing 'end' event sometimes [01:24] CIA-39: node: Closes GH-671. - http://bit.ly/hffxby [01:25] stagas_ has joined the channel [01:25] samcday has joined the channel [01:26] zachsmith has joined the channel [01:27] bcardarella has joined the channel [01:27] samcday has joined the channel [01:29] kuhrt has joined the channel [01:30] Utkarsh has joined the channel [01:30] skm has joined the channel [01:33] losing has joined the channel [01:33] piscisaureus: mraleph: not to bed still? [01:34] felixge has joined the channel [01:34] felixge has joined the channel [01:34] mscdex: maybe he took a power nap [01:34] mscdex: :p [01:34] piscisaureus: I used the sampler from win32 and aside from some minor changes it just works nicely [01:34] piscisaureus: mscdex: yeah I have the same always :-) [01:34] tmpvar: piscisaureus, hello there [01:34] piscisaureus: hi tmpvar [01:36] bbttxu has joined the channel [01:36] piscisaureus: what's up? [01:37] Coal has joined the channel [01:38] ryah: so, i felt like there was another https bug... [01:38] aurynn has joined the channel [01:39] squeeks: When you get that feeling, maybe it's time to go get a cold beer. [01:39] NuckingFuts has joined the channel [01:40] boaz has joined the channel [01:40] pauls: squeeks++ [01:40] v8bot: pauls has given a beer to squeeks. squeeks now has 1 beers. [01:41] jacksonmills has joined the channel [01:41] kawaz_air has joined the channel [01:41] marcab: win 11 [01:41] marcab: fail [01:42] tmpvar: piscisaureus, not a ton. working on docs/last minute fixes for jsdom 0.2.0 [01:42] piscisaureus: nice. [01:42] samcday has joined the channel [01:42] piscisaureus: i had to use it last week, worked like a charm [01:42] squeeks: pauls: I have a litre of Chartreuse in my cupboard. Beer is not a good thing to be giving me. [01:42] piscisaureus: only needed to apply a minor fix to node-query (was not using jquerify ... should have I guess) [01:44] piscisaureus: mraleph: if you're interested, git://github.com/piscisaureus/node.git has the win32 sampler [01:45] alek_br has joined the channel [01:45] piscisaureus: ryah: you know when arlolra is usally around? [01:45] jamund has joined the channel [01:46] ryah: piscisaureus: sporatically [01:46] ryah: he's west coast [01:46] sandymahalo has joined the channel [01:47] piscisaureus: so, that's like you right? [01:47] ryah: yeah [01:47] piscisaureus: yeah I'm west coast too [01:47] piscisaureus: ugh [01:47] halfhalo: socal FTW [01:48] dstik1 has joined the channel [01:48] tjholowaychuk: new spark / fugue replacement http://bit.ly/f0iOR3 [01:49] ChrisPartridge: tjholowaychuk: oh yeah! [01:49] aurynn: tjholowaychuk, Woo! [01:50] squeeks: fugue? someone needs to do a crazy version called "centrifuge". Hopefully there isn't a class called SCADA, and some attacker finds a fault with it and gets stux.... [01:50] bcardarella: Is this the right place to ask Socket.IO questions? [01:51] squeeks: tjholowaychuk: yikes I might have a use for this. [01:51] mscdex: bcardarella: pretty much [01:51] tjholowaychuk: squeeks: :) [01:52] ChrisPartridge: tjholowaychuk++ [01:52] v8bot: ChrisPartridge has given a beer to tjholowaychuk. tjholowaychuk now has 14 beers. [01:52] tmpvar: piscisaureus, do you know what the issue was? [01:52] bcardarella: So pretty noobish question, when I'm calling new io.Socket() there seems to a src added dynamically that guesses what port my node server is on. It keeps guessing port 80 [01:53] piscisaureus: tmpvar: no? See no issue hear no issue [01:53] bcardarella: Any way to change that? I'm not seeing any documentation on the API anywhere [01:53] unomi has joined the channel [01:53] piscisaureus: so, what was it? [01:53] piscisaureus: oh with jquery you mean [01:53] piscisaureus: yeah I think that it complained about navigator not being defined [01:54] squeeks: tjholowaychuk: the only catch is that I want to handle logging myself, for a few reasons. [01:54] tjholowaychuk: squeeks: you can [01:54] tjholowaychuk: create a plugin :) [01:54] tjholowaychuk: its all optional thanks to that architecture [01:54] bingomanatee: Hey SubStack - got Flash plugins for Browserling.com? [01:55] tjholowaychuk: squeeks: by default stdout/stderr are used, then logger() sets master.customFds to [-1, -1] so you can redirect to other streams [01:55] tjholowaychuk: take a look at the logger() plugin's implementation if you need reference [01:56] SubStack: bingomanatee: what? [01:56] bingomanatee: On your virtual machine browsers - have you loaded the Flash plugin? [01:56] SubStack: socket.io does something with it [01:56] squeeks: tjholowaychuk: tl;dr I want to be able to output syslog compliant messages, not the ones that log puts out [01:56] bingomanatee: I was showing my boss his home page on Browserling.com - not seeing flash playing. [01:56] squeeks: preferably RFC5424. [01:56] jesusabdullah: SubStack: Can you test flash stuff on browserling yet? [01:56] SubStack: jesusabdullah: probably [01:56] pkrumins: flash doesn't work on ec2 [01:57] pkrumins: ec2 problem, everyone is very frustrated about that [01:57] SubStack: oh right just on rackspace that works [01:57] jesusabdullah: In the past, the flash plugins weren't installed on the VMs [01:57] pkrumins: right [01:57] jesusabdullah: Ah [01:57] tjholowaychuk: squeeks: yeah that is fine, like i said you can do whatever you want [01:57] pkrumins: flash as a vm [01:57] jesusabdullah: Why doesn't flash work on ec2? [01:58] bingomanatee: You might want to think about that - people who like X-platform testing browsers are likely to depend on having flash on the page. [01:58] bingomanatee: esp. ad people. [01:58] pkrumins: custom ec2 windowses with some crazy patches [01:58] aurynn: tjholowaychuk, Found a typo [01:58] pkrumins: crashes flash [01:58] tjholowaychuk: aurynn: where at? [01:58] aurynn: line 254: if (user) rocess.setuid(user); [01:58] aurynn: should probably be process.setuid [01:58] pkrumins: flash will work when ec2 fixes their windowses [01:58] aurynn: in master.js [01:58] pkrumins: maybe i can fix that too [01:59] pkrumins: but then it will require a lot of time [01:59] tjholowaychuk: aurynn: ahaha rocess [01:59] tjholowaychuk: awesome [02:00] felixge has joined the channel [02:00] felixge has joined the channel [02:00] skm has joined the channel [02:00] aurynn: :) [02:01] piscisaureus: tmpvar: ping [02:02] piscisaureus: tmpvar: the issue was that I had to move these lines outside of the `if` [02:02] piscisaureus: https://github.com/coolaj86/node-jquery/blob/master/lib/jquery-1.5.js#L11-13 [02:02] Jourkey: does knox have any handling for same file names? [02:03] piscisaureus: anyone here knows a startup named bitlev? [02:04] piscisaureus: supposed to be in SF [02:04] tmpvar: piscisaureus, ah [02:05] tmzt: SubStack: dnode initialization, since it uses a callback is slowing down my jquery event handlers I can switch this stuff to an ajax POST but that kind of defeats the purpose of using dnode [02:05] tmzt: or if there's a way to make it not try multipart [02:06] tmzt: it's disabled on the server side explicitly since it doesn't work with nginx (I think) but not on the client [02:06] trotter has joined the channel [02:07] felixge has joined the channel [02:07] felixge has joined the channel [02:14] piscisaureus: now if I want to use ngist win node-mingw I should really get openssl going [02:15] micheil has joined the channel [02:15] jacksonmills has joined the channel [02:16] bentruyman has joined the channel [02:17] dstik has joined the channel [02:17] samsonjs has joined the channel [02:19] piscisaureus: ryah: you know if node supports openssl 1.0 or will it only work with 0.9? [02:24] aurynn: hm [02:24] piscisaureus: ACTION in good company, shaking fist at openssl [02:26] amerine has joined the channel [02:28] eyesUnclouded has joined the channel [02:29] unomi has joined the channel [02:29] vnguyen has joined the channel [02:31] SubStack: tmzt: you can pass a socket.io handle to dnode too [02:31] sirkitree has joined the channel [02:31] SubStack: from that you can mess with socket.io's transport list [02:31] SubStack: or dnode forwards along its options hash to socket.io too [02:31] mscdex: piscisaureus: i use 0.9.8k without any issues so far [02:31] mscdex: on node 0.4.0 [02:32] piscisaureus: mscdex yeah but I'd like to use 1.0c if I can choose freely [02:32] mscdex: oh [02:32] sprout has joined the channel [02:32] mscdex: i would think it works just as good [02:32] mscdex: i think it's been tested with 1.0 because i saw it mentioned in one of the tls tests [02:33] bentruyman has joined the channel [02:35] piscisaureus: does the openssl license prevent me from static-linking openssl? [02:38] balaa has joined the channel [02:38] Lorentz: piscisaureus: Doesn't look like it [02:38] Lorentz: It's a very long bsd 4-clause like thing. [02:38] piscisaureus: Lorentz: I read that both the bsd and apache license apply at the same time [02:38] Lorentz: Just gotta remember to mention them properly in your software. [02:38] Lorentz: I think you can pick either. [02:38] piscisaureus: not or-or but and-and [02:39] piscisaureus: according to http://en.wikipedia.org/wiki/OpenSSL#Licensing [02:39] piscisaureus: fwiw [02:40] Lorentz: Hmm, both, eh [02:40] Lorentz: Well, then gotta list both "softare developed by openssl" and "eric young" then. [02:42] luke` has joined the channel [02:44] Lorentz: If uncertain, get a lawyer etc [02:50] strmpnk has joined the channel [02:51] bcardarella has joined the channel [02:53] hij1nx has joined the channel [02:53] trotter has joined the channel [02:54] isaacs has joined the channel [02:56] kiddphunk_ has joined the channel [02:58] visnup has joined the channel [03:00] piscisaureus: lawyer: ping := [03:01] mscdex: * lawyer :No such nick/channel [03:01] mscdex: * [lawyer] End of WHOIS list. [03:01] mscdex: :p [03:01] lawyer: /bill piscisaureus [03:02] skm has joined the channel [03:07] jtsnow has joined the channel [03:08] malkomalko has joined the channel [03:09] tilgovi has joined the channel [03:09] bbn has joined the channel [03:09] bbn: hi all [03:10] bbn: problem with connect sessions and connect-redis [03:10] bbn: http://pastie.org/1569114 [03:11] bbn: Redis server version 1.3.15 [03:11] bbn: any ideas? [03:14] visnup: according to https://github.com/visionmedia/node-querystring am I really able to replace require('querystring') with the qs npm module? [03:15] visnup: or is it really require('qs') ? [03:16] tk has joined the channel [03:19] hornairs has joined the channel [03:19] codehero1 has joined the channel [03:20] codehero1: hi all, question about Date and local time [03:20] codehero1: how come when I do [03:20] codehero1: sys.debug(new Date()) [03:20] codehero1: DEBUG: Tue Feb 15 2011 22:19:12 GMT-0500 (EST) [03:20] codehero1: on linux [03:20] codehero1: but on cygwin I get [03:21] codehero1: DEBUG: Tue Feb 15 2011 03:19:12 GMT-0000 (EST) [03:21] boaz has joined the channel [03:21] Lorentz: cygwin env is set to GMT 0 by default? [03:22] w0rse has joined the channel [03:22] codehero1: you mean GMT is an env? [03:22] codehero1: mine is not set [03:22] codehero1: What's strange is that they both have the same day (Feb 15) but the hour is incorrect [03:22] Jourkey: how do i send html to as the response [03:22] Jourkey: response.end('
'+req.url+'
'); [03:23] Jourkey: i want the html to be html, not output as string [03:23] Jourkey: what do I do? [03:24] alek_br has joined the channel [03:24] aurynn: what? [03:25] Ratty_: Jourkey: Content type maybe? [03:25] Ratty_: text/html [03:25] Ond: res.writeHead(200, {'content-type':'text/html'}) [03:26] Ratty_: Yeah, that one. [03:26] Jourkey: yep thanks [03:26] Jourkey: brain fart, i dunno y i [03:26] Jourkey: eh [03:27] noahcampbell has joined the channel [03:28] broofa has joined the channel [03:28] samsonjs has joined the channel [03:29] marcello3d has joined the channel [03:29] marcello3d: good mooooooooooooooooorning #node.js! [03:30] piscisaureus: woohoo. openssl on windows [03:30] marcello3d: sounds like a false sense of security ;D [03:32] mattly has joined the channel [03:33] hunterloftis: Guys, anybody know why express's server.set('env') would give 'development' even of NODE_ENV = 'staging' ? [03:33] Ratty_: is ECMA pronounced ehk-ma or ee ce em ay? [03:33] Utkarsh has joined the channel [03:34] marcello3d: I say the former [03:36] arpegius has joined the channel [03:36] codehero1 has left the channel [03:38] mscdex: morning? it's night here [03:38] mscdex: :p [03:40] mw_ has joined the channel [03:40] mw_ has joined the channel [03:41] marcello3d: it's night here, too [03:41] marcello3d: but but good niiiiiiiiiiight #node.js doesn't have the same ring [03:41] marcello3d: -but [03:41] marcello3d: I think I've had a bit too much to drink [03:41] marcello3d: balmers peak and all [03:43] flippyhead has joined the channel [03:44] samcday has joined the channel [03:44] langworthy has joined the channel [03:47] stagas_ has joined the channel [03:50] torvalamo has joined the channel [03:50] hunterloftis: anybody know why NODE_ENV='staging' works but sudo NODE_ENV='staging' doesn't? [03:52] kiddphunk has joined the channel [03:52] zentoooo has joined the channel [03:52] fairwinds: anyone using underscore commonjs lib in their work? looks pretty solid for some utility type methods [03:55] abraham has joined the channel [03:55] vnguyen has joined the channel [03:56] meck has joined the channel [03:58] marcello3d: is there a way to disable the X-Powered-By: express thing? [03:58] marcello3d: fairwinds: I've looked at it, but not using it [03:59] jtsnow has joined the channel [03:59] hunterloftis: fairwinds: I agree, solid, but haven't used extensively [04:00] mikeal has joined the channel [04:00] marcello3d: hunterloftis: the code for express.js says this.set('env', process.env.NODE_ENV || 'development'); [04:00] hunterloftis: marcello3d: Yeah it was defaulting to 'dev' because it couldn't find the environment [04:00] hunterloftis: turns out to keep your environment in sudo you have to run sudo -E server.js [04:00] marcello3d: ah [04:01] marcello3d: probably run it with sudo NODE_ENV=staging server.js ? [04:01] beta_ has joined the channel [04:01] hunterloftis: sudo NODE_ENV='staging' node server.js [04:01] hunterloftis: Yep, thanks! [04:03] marcello3d: laaame [04:03] marcello3d: have to exit google chrome to install ms office patch [04:03] marcello3d: who writes this shit [04:03] hunterloftis: lol [04:03] marcello3d: and installing 2011 doesn't remove 2008 [04:04] dspree has joined the channel [04:04] dspree has joined the channel [04:04] kieren has joined the channel [04:06] aceking5 has joined the channel [04:06] yhahn has joined the channel [04:08] torvalamo has joined the channel [04:08] Yuffster_work has joined the channel [04:08] mike5w3c has joined the channel [04:09] dspree has joined the channel [04:09] dspree has joined the channel [04:10] ryah: piscisaureus: i use openssl 1.0 [04:10] ryah: 1.0.0a [04:10] ryah: piscisaureus: clearly you need to move to the US so you don't have to stay up all night. [04:11] piscisaureus: ryah: :-) [04:11] piscisaureus: indeed [04:11] piscisaureus: get a life [04:11] ryah: pot's illegal and food is expensive, though. [04:11] piscisaureus: oww pot illegal [04:11] piscisaureus: i don't know if I can node without it hehe [04:11] piscisaureus: :p [04:11] aceking5: pot's pretty much legal in california though [04:11] piscisaureus: ryah: can you review this: https://github.com/piscisaureus/node/commit/e3e8e3082144c3cd743c1e87e363b0f97289c40d [04:12] piscisaureus: especially check if it doesn't break openssl on linux [04:12] ryah: piscisaureus: hm [04:12] piscisaureus: I take that as a no? [04:13] ryah: piscisaureus: is it necessary to have both an include path and a lib path? [04:13] ryah: or are you just following the convention? [04:13] piscisaureus: ryah: following convention basically [04:14] piscisaureus: ryah: although people may try to "install" openssl on windows and then the includes location is not fixed relative to the lib [04:14] ossareh has joined the channel [04:14] aceking5: node on windows? ew [04:15] piscisaureus: ryah: we could do just openssl_path if you want to [04:15] piscisaureus: or openssl-dir [04:15] ossareh has joined the channel [04:15] ryah: piscisaureus: no, i was just curious [04:16] piscisaureus: ryah: i tried to give it sensible defaults. If you have node in c:\mystuff\node then it looks for openssl in c:\mystuff\openssl [04:16] marcello3d: or were you... piscurious? [04:18] piscisaureus: ryah: if you're ok with it you can land it. the buildslave is ready for it, just need to prod arlo to disable that --without-ssl thingie [04:22] luke` has joined the channel [04:23] SubStack: that issacs, making all kinds of work for me with this `modules field update to npm [04:23] zorzar_ has joined the channel [04:23] Yuffster has joined the channel [04:24] chapel: heh [04:24] Aikar: modules field update? [04:24] SubStack: piscisaureus: you might like https://github.com/substack/node-hashish [04:24] SubStack: Aikar: in package.json, doesn't work anymore [04:25] Aikar: the directories.lib setting? [04:25] SubStack: different [04:25] fabrizim has joined the channel [04:25] CIA-39: node: 03Bert Belder 07v0.4 * r3ef6433 10/ wscript : MinGW: OpenSSL support - http://bit.ly/fGGnpb [04:25] piscisaureus: SubStack: I like Synedrella nodiflora [04:25] brapse has joined the channel [04:25] Aikar: SubStack: what setting is "removed" ? [04:25] Aikar: got a link? [04:28] fabrizim has joined the channel [04:28] SubStack: Aikar: https://github.com/isaacs/npm/commit/a12ead34615bf62eae106010c8b27069e98e5f63 [04:28] Aikar: oh right that [04:29] Aikar: kinda glad, that made 'things installed with npm' be able to behave differently than the package folder itself. ie express use to rely on connect/middleware/blah paths that was created by npm modules [04:33] SubStack: Aikar: well it's making more work for me tonight [04:33] Aikar: lol [04:33] SubStack: but at least now I have a good reason to finish up browserify [04:37] pl-6: I was finishing this step by step with cygwin - on the last step 'make file' I got this error "Build failed: -> task failed (err #2) libv8.a> [04:37] colinclark has joined the channel [04:37] rpflo has joined the channel [04:38] pl-6: make: *** [program] Error 1 [04:38] pl-6: any ideas ? [04:39] marcello3d: :D https://gist.github.com/828878 [04:39] marcello3d: mini library [04:41] dnyy has joined the channel [04:41] unomi has joined the channel [04:41] Ratty_: npm needs download stats [04:42] rpflo: Anybody know how to access the Model constructor in mongoose? I thought `var Model = mongoose.Model` would work, but it's undefined [04:45] josephhitchens has joined the channel [04:50] isaacs has joined the channel [04:55] meck has joined the channel [04:56] jpld has joined the channel [04:57] jacobolus has joined the channel [04:59] mikeal has joined the channel [04:59] fission6 has joined the channel [05:00] jetienne has joined the channel [05:00] fission6: is it possible for my console.log to take ot long to dump a large object that its cutting off because my program finishes before it does? [05:01] davidascher has joined the channel [05:01] piscisaureus: Gute Nacht Freunde, es ist Zeit für mich zu gehn [05:02] Ratty_: Stupid cia.vc bot. I can't get it to do colour. [05:02] rpflo has joined the channel [05:05] tmzt: res.send is (data, {headers}, resultcode) ? [05:05] tmzt: my json is coming back {} even though it prints correctly in console.log [05:06] atmos has joined the channel [05:06] isaacs: fission6: i've seen stuff like that [05:06] isaacs: fission6: what version of node? [05:07] fission6: .4 [05:07] isaacs: fission6: in some cases, it's the terminal client screwing up. you could try piping it to a file or to cat [05:07] fission6: pringint out a large window variable using jsdom [05:07] isaacs: fission6: node dump-big-thing.js | cat [05:07] fission6: isaacs: ill try that [05:07] isaacs: fission6: or node dump-big-thing.js > output.txt [05:07] fission6: that worked [05:07] isaacs: kewl [05:07] fission6: thanks [05:08] isaacs: fission6: you can also use console.error rather than console.log, since .error is sync [05:08] isaacs: np [05:08] fission6: ah ok very ncie [05:08] fission6: what you working on [05:10] wao has joined the channel [05:10] isaacs: fission6: npm, as usual :) [05:10] isaacs: fission6: and, today, v8 :) [05:11] andrewfff has joined the channel [05:11] fission6: what within v8 [05:12] isaacs: fission6: this: http://code.google.com/p/v8/issues/detail?id=1162%20%20 [05:12] inky_ has joined the channel [05:12] isaacs: fission6: ryah basically led me through it [05:13] fission6: nice, are you trying to get involved in v8 [05:13] eck has joined the channel [05:13] pyrotechnic has joined the channel [05:13] eck has joined the channel [05:13] isaacs: meh. it's a part of node. [05:14] lianj has joined the channel [05:14] pyrotechnick has joined the channel [05:14] pyrotechnick: ryah: are you around? [05:15] isaacs: fission6: what do you work on? [05:16] fission6: well i am trying to find the fastest way to execute web app tests, like html/js/dom tests, i am currently reviewing some options within node.js [05:17] Aria has joined the channel [05:17] fission6: my ultimate goal is to create a tool around executing web app tests which are described through a serialized format, and are verrry quick to run for CI reasons [05:19] hunterloftis: I hate git. Is bitbucket as good as github? [05:19] Utkarsh_ has joined the channel [05:19] mscdex: why the hate? [05:20] Margh has joined the channel [05:20] hunterloftis: simple things are hard [05:20] mscdex: like? [05:20] ajsie has joined the channel [05:20] hunterloftis: removing a submodule [05:20] mscdex: hmm never dealt with submodules [05:20] hunterloftis: I don't recommend it [05:20] hunterloftis: There's no system in place for removing them [05:21] hunterloftis: So they get all in your cache and make it very hard to add files that were once submoduled [05:21] mscdex: i use Git Extensions mostly [05:21] mscdex: it has a submodules menu, but like i said never used it [05:22] mscdex: the one thing i wish github would do is automatically pull in submodules when generating zip/tarballs [05:22] felixge has joined the channel [05:22] felixge has joined the channel [05:27] hunterloftis: I'm just tired of spending hours trying to debug cryptic git issues [05:27] hunterloftis: In the end I usually just copy paste some shit from some backup [05:28] mscdex: i admit i don't use the cli client directly, the Git Extensions GUI works really well though [05:29] Nexxy: don't hate git :( [05:30] mscdex: oh neat, i didn't know they had Git Extensions for linux too [05:30] mscdex: :-D [05:31] Nexxy: what's wrong with cli? [05:31] Nexxy: so much faster than clicking [05:31] mscdex: probably nothing, but it's one less thing to memorize [05:31] mscdex: :p [05:31] fission6: what ext do you use mscdex that offers a nice GUI [05:31] mscdex: well it's more than just clicking, it has other nice visual features [05:32] mscdex: fission6: http://code.google.com/p/gitextensions/ [05:32] fission6: thanks [05:32] fission6: mscdex: better thank gitk [05:34] hellp has joined the channel [05:36] jacobolus has joined the channel [05:36] Nexxy: can I thank gitk too? [05:37] fission6: i meant better than, haha sorry [05:37] fission6: but yeah you can thank it [05:37] felixge_ has joined the channel [05:37] felixge_ has joined the channel [05:39] felixge_: ryah: I hit an https bug today where a DNS resolution error would cause a runtime exception when issuing another https client request (this was the https client only, no https server involved) [05:40] felixge_: ryah: the error was in http.js line 1250, req.res = res; complained about req not being an object [05:40] inkybro has joined the channel [05:40] felixge_: tried to come up with a test case, but couldn't get one going right sway [05:40] felixge_: * away [05:42] fission6: felix where do you live [05:42] fission6: what part of the world [05:42] fission6: your handle seems familar [05:44] meck: i believe he is in germany: http://debuggable.com/ [05:46] fission6: ah yes [05:47] Vertice has joined the channel [05:48] mscdex: so weird.... filtering manually in js with node_pcap is faster than providing the binding with a filter [05:48] mscdex: in cygwin [05:48] mscdex: :S [05:52] muk_mb has joined the channel [05:53] tmzt: API docs link on v0.4.0 is going back to /docs anybody know where it's supposed to go? [05:53] mscdex: tmzt: 0.4.0 docs: http://nodejs.org/docs/v0.4.0/api/ [05:54] tmzt: here? http://nodejs.org/docs/v0.4.0/api/index.html [05:54] samsonjs has joined the channel [05:55] tmzt: is response.send documented? I saw it mentioned earlier trying to figure out what's going on [05:55] tmzt: I'm using 0.4.0 now [05:55] mscdex: there is no response.send in node [05:55] mscdex: maybe something like express or connect though [05:55] mikeal has joined the channel [05:55] tmzt: ah, ok [05:55] mscdex: there's .write() and .end() for response streams [05:56] tmzt: yeah, I'm using express [05:57] andrewfff has joined the channel [05:57] tmzt: res.send(JSON.stringify({html: result.html}), {'Content-Type': 'application/json'}, 200); [05:57] tmzt: that's not working, curl is reporting {} [05:58] tmzt: even if result.html was undefined I would think the json would be valid [05:58] dnolen has joined the channel [06:02] chapel: tmzt: have a code snippet? [06:02] chapel: preferably the whole req.get or whatever block [06:03] mikeal has joined the channel [06:04] tmzt: sure, hold on [06:05] yozgrahame has joined the channel [06:07] zikes has joined the channel [06:07] tmzt: https://gist.github.com/828945 [06:08] w0rse_ has joined the channel [06:08] chapel: are the console.logs outputting? [06:09] chapel: oh I see [06:09] chapel: haha [06:09] chapel: sorry [06:09] tmzt: yes [06:11] chapel: that id looks odd [06:12] chapel: have you tried with using res.writeHead and res.send? [06:12] ChrisPartridge: isaacs: ping [06:12] tmzt: yeah, same thing but I'll try it again [06:14] zemanel has joined the channel [06:16] tmzt: got it to return true with text/plain [06:17] chapel: hmm [06:18] tmzt: so it looks like it's the escaping [06:18] tmzt: wow [06:18] herbySk has joined the channel [06:18] tmzt: {html: true} works [06:18] felixge has joined the channel [06:18] felixge has joined the channel [06:18] chapel: with json? [06:18] tmzt: yeah \" [06:18] chapel: without the stringify? [06:18] chapel: or with? [06:18] tmzt: oh, JSON.stringify({'html': true}) [06:19] chapel: hmm [06:19] chapel: interesting [06:20] chapel: is this something you are building for an ajax backend? [06:20] tmzt: yeah [06:21] ziro` has joined the channel [06:25] NuckingFuts has joined the channel [06:25] sholmes has joined the channel [06:26] sechrist has joined the channel [06:26] mike5w3c has joined the channel [06:34] marcello3d: how to get the name of a folder a file is in? [06:34] marcello3d: like php's basename() [06:34] marcello3d: ooh, path [06:34] marcello3d: was looking at fs [06:35] chapel: well there is __dirname [06:36] chapel: which is the directory up to the script [06:36] chapel: http://nodejs.org/docs/v0.4.0/api/path.html#path.dirname << that gets you another files directory name [06:37] wilmoore has joined the channel [06:39] yhahn has left the channel [06:44] aceking5 has joined the channel [06:44] clarkfischer has joined the channel [06:44] hunterloftis: Anybody ever seen a "ENOTFOUND, Domain name not found" error from IOWatcher? [06:45] jeromegn has joined the channel [06:45] netrealm has joined the channel [06:46] matyr has joined the channel [06:48] admc has joined the channel [06:50] Vertice has joined the channel [06:52] marcello3d: does anyone know a way to upload a canvas canvas as a binary png file upload? (as opposed to base64) [06:52] Validatorian has joined the channel [06:52] marcello3d: chapel: cheers, that worked :) [06:54] mikeal has joined the channel [06:57] galaxywatcher has joined the channel [07:00] sholmes: Anyone here using cygwin/node? [07:01] sholmes: Could someone help me test out this app on cygwin. I'm using cygwin and it's not working, Idk if that's because I'm using cygwin [07:02] tmzt: chapel: it's async problem like every other time [07:02] chapel: ah [07:02] tmzt: though how it's possible for console to work I don't know [07:02] chapel: hmm, so if you stringify it before sending it, does it work? [07:02] tmzt: I moved the callbacks where they were supposed to be in the actaul function (I didn't gist that) [07:03] tmzt: hold on [07:04] sholmes: why not run npm as root? [07:05] chapel: sholmes: because that means any module could run as root [07:05] bronson has joined the channel [07:05] SubStack: marcello3d: what are doing with canvas? [07:05] chapel: modules when you install them can run scripts to install [07:05] sholmes: how can I view a list of installed modules? [07:05] chapel: so if you run as root, someone could just have a script that rm -rf / in it [07:06] chapel: npm ls installed [07:06] sholmes: okay, so I already installed express as root [07:06] sholmes: does that mean anything in express can run as root? [07:07] sholmes: root is the only user account on my VPS. [07:07] mies has joined the channel [07:07] inkybro has joined the channel [07:07] sholmes: should I create another user on my VPS? [07:07] chapel: that would be a good thing [07:08] zentoooo has joined the channel [07:09] sholmes: I don't know how, haha. I guess it's useradd [07:09] warz has joined the channel [07:09] tmzt: adduser [07:10] tmzt: for the interactive one (which you want) [07:12] tmzt: chapel: sweet, it's working ,try test@test.tld [07:12] sholmes: can I just do useradd -m username -p mypass and the rest will be "autofilled"? [07:12] chapel: cool tmzt [07:13] tmzt: sholmes: that won't even create the home directory and has the nice side effect of dumping the password in your history [07:13] sholmes: or must I specify -d -G -s and -g params? [07:13] razvandimescu has joined the channel [07:13] sholmes: tmzt: Ah. What history? [07:14] jakehow has joined the channel [07:14] tmzt: type 'history' [07:14] jakehow_ has joined the channel [07:14] sholmes: tmzt: O.o. I can I clear this up? [07:14] springify has joined the channel [07:16] sholmes: more importantly, how can I prevent my password from going into the history? [07:18] Utkarsh has joined the channel [07:23] inkybro has joined the channel [07:25] tbassetto has joined the channel [07:25] mikedeboer has joined the channel [07:25] chicmome has joined the channel [07:26] marcello3d has joined the channel [07:26] chicmome: Is there a stable version of jsdom? I've tried about 10 different require('...') incarnations and nothing. [07:27] SamuraiJack has joined the channel [07:27] chicmome: not bugfree even, just something I can jam together with sizzle and do a mad raindance. [07:29] abraham has joined the channel [07:29] rchavik has joined the channel [07:29] mjr has joined the channel [07:29] hunterloftis has joined the channel [07:29] EyePulp has joined the channel [07:32] Greg has joined the channel [07:34] tmzt: sholmes: if you use a program like passwd that reads from the terminal (in a special way) it doesn't go into the history [07:35] isaacs: chapel, sholmes: no, installing express as root doesn't mean that express can run as root later on. but installing anything as root means that (prior to npm 0.3.0) it can run any of its install/etc scripts as root. [07:36] chapel: isaacs: well I was basing it off of what you had said before [07:37] chapel: I didn't know what was coming down the pipe [07:37] isaacs: chapel: suresure [07:37] isaacs: chapel: you were mostly right :) [07:37] chapel: best not to install as root anyways [07:37] isaacs: chapel: in npm 0.3.0, using root is recommended. [07:37] chapel: oh? [07:37] isaacs: chapel: because it allows npm to run scripts as "nobody" [07:37] chapel: ah, thats good [07:37] isaacs: which is significantly safer than running them as your user account [07:38] isaacs: so, root/.npm/foo/1.2.3/package will be owned by "nobody" [07:38] chapel: cant wait [07:38] chapel: eta? [07:38] isaacs: but anything else will be owned by root [07:38] isaacs: chapel: this week. [07:38] chapel: sweet [07:38] chapel: I had my first experience putting up a module on npm [07:38] chapel: was simple and easy [07:38] isaacs: great :) [07:38] chapel: so thank you for it [07:38] isaacs: bug reports are nice, but so are "it worked" reports [07:38] chapel: heh [07:39] chapel: do you keep usage statistics? [07:39] chapel: like downloads? [07:39] FireFly has joined the channel [07:40] sholmes: isaacs: I'm using 0.4.0, so am I good? [07:40] ph^ has joined the channel [07:40] isaacs: sholmes: sorry, 0.3.0 = npm version [07:41] isaacs: 0.4.0 is the node version that npm 0.3.0 requires [07:41] larsemil: anyone have an idea on how to get clientId in the client when using node + socket.io? [07:41] larsemil: socket.on('clientConnect', function(client){ [07:41] larsemil: console.log(client.sessionId); [07:42] larsemil: that does not work [07:42] sholmes: Oh, why didn't the install.sh file install the latest, is it not stable yet? [07:46] sholmes: that is, the install.sh hosted at http://npmjs.org/install.sh [07:48] tbassetto has joined the channel [07:49] narayan82 has joined the channel [07:49] ajsie_ has joined the channel [07:53] prinzdezibel has joined the channel [07:53] andrewfff has joined the channel [07:56] tmzt: is there a safe encoding of a mongo id to use in a session or a cookie? [07:57] jimt_ has joined the channel [07:57] superjudge has joined the channel [07:58] Jourkey has joined the channel [07:58] muhqu has joined the channel [07:59] ivanfi has joined the channel [08:03] matyr_ has joined the channel [08:07] swistak has joined the channel [08:10] Sebmaster has joined the channel [08:17] MikhX has joined the channel [08:18] mbrochh has joined the channel [08:18] sechrist has joined the channel [08:19] TomY_ has joined the channel [08:20] MikeMakesIt has joined the channel [08:20] kristsk has joined the channel [08:22] mikedeboer has joined the channel [08:23] saikat has joined the channel [08:24] clarkfischer has joined the channel [08:26] dspree_ has joined the channel [08:26] dspree_ has joined the channel [08:26] abraham has joined the channel [08:27] sveimac has joined the channel [08:31] foobarfighter has left the channel [08:31] foobarfighter has joined the channel [08:33] abrahamwilliams has joined the channel [08:34] daglees has joined the channel [08:34] daglees has joined the channel [08:34] aabt has joined the channel [08:35] kal-EL_ has joined the channel [08:35] groom has joined the channel [08:37] [AD]Turbo has joined the channel [08:37] [AD]Turbo: yo all [08:39] Jourkey: hey [08:39] Jourkey: how do we benchmark node code? [08:39] ph^ has joined the channel [08:39] tc77 has joined the channel [08:40] benburkert has joined the channel [08:41] ROBOd has joined the channel [08:42] SubStack: somebody sent me a sweet patch for browserify that compiles coffee-script in an awesome way: https://github.com/substack/node-browserify [08:42] FireFly|n900 has joined the channel [08:43] Druid_ has joined the channel [08:44] chapel: hmm [08:44] chapel: how does it handle coffeescript SubStack ? [08:44] SubStack: if it finds a .coffee file, then it compiles it to javascript [08:44] SubStack: check out the first example on the readme [08:44] mr_daniel has joined the channel [08:46] chapel: you just mean it compiles it on the fly before sending it? [08:46] SubStack: no, it compiles it when you fire up the server [08:46] pietern has joined the channel [08:46] SubStack: everything gets compiled into /browserify.js or whatever [08:48] chapel: oh [08:48] chapel: sweet [08:49] chapel: could you use that in tandem with dnode? [08:49] foobarfighter: mikeal: yt? [08:49] SubStack: chapel: working on that [08:49] SubStack: I also want to get socket.io working with it so dnode can just require('socketio') [08:50] chapel: nice [08:50] chapel: that would be sweet [08:50] Ond: You mean browserify? [08:50] ph^ has joined the channel [08:50] stalled has joined the channel [08:52] foobarfighter: what is browserify? [08:52] andrewfff has joined the channel [08:52] adambeynon has joined the channel [08:52] Ond: https://github.com/substack/node-browserify [08:53] foobarfighter: is it just client side require()? [08:53] SubStack: yes but done correctly [08:53] SubStack: none of this xhr crap [08:54] SubStack: and it gets compiled at runtime when the server starts up [08:54] SubStack: and you can include coffee script files now and it just figures out how to make that work [08:54] SubStack: and it includes es5-shim for browsers that suck [08:55] SubStack: oh right and you can use npm modules from the browser too [08:55] foobarfighter: so this is done server side? [08:55] SubStack: and it bundles npm module dependencies recursively too [08:55] SubStack: yes all server-side [08:56] foobarfighter: so you run some node server parses the JS for requires? [08:56] SubStack: no [08:58] weepy has joined the channel [08:58] foobarfighter: does the require do some xhr call that bundles the dependencies? [08:58] foobarfighter: and the evals them or something? [08:58] foobarfighter: how does it wokr [08:58] foobarfighter: work* [08:58] weepy: anyone know what the roadmap for node v0.5.0 is ? [08:59] SubStack: foobarfighter: 08:53:46 < SubStack> none of this xhr crap [08:59] SubStack: it just bundles them [08:59] SubStack: damn I don't even understand why anyone would use xhr for this [08:59] foobarfighter: SubStack: im just having a hard time understanding how this thing helps me [09:00] foobarfighter: the docs show some code examples [09:00] SubStack: it's really simple: it takes all of your javascript and bundles it up in /browserify.js [09:00] SubStack: and then you can do require() [09:00] foobarfighter: ok.... so the browserify.js is special [09:00] aklt has joined the channel [09:00] SubStack: yes [09:00] foobarfighter: its not the browserify api [09:00] foobarfighter: i see [09:01] foobarfighter: and what does it do? wraps stuff in a functional scope? [09:01] SubStack: yes pretty much [09:01] SubStack: and it sets module.exports and exports [09:01] polyrhythmic has joined the channel [09:01] foobarfighter: ok... are you familiar with sprockets? [09:01] SubStack: and defines a require() in module scope that is smart about directories so you can require('./foo') or require('../bar') [09:02] foobarfighter: i see [09:02] foobarfighter: interesting approach [09:02] chapel: its all about not duplicating code [09:02] chapel: SubStack really is making the ssjs dream a reality [09:02] foobarfighter: but you have to know what your dependencies are ahead of time right? [09:03] foobarfighter: for the client i mean [09:03] SubStack: yes [09:03] foobarfighter: sounds like the beginning of a pretty sweet loader :) [09:03] SubStack: so you just pass require : [ 'traverse' ] or whatever when you call the middleware constructor [09:03] skm has joined the channel [09:03] mmso has joined the channel [09:04] foobarfighter: but it would be cool if the browserify.js file knew what dependencies you needed on the page somehow [09:04] SubStack: next I think I'll have it support package.json for dependency management [09:04] SubStack: foobarfighter: that's too hard [09:04] foobarfighter: :) [09:04] SubStack: just minify it [09:04] chapel: SubStack: imagine having it work with dnode, where you could do a require, and a lot of the stuff would be serverside [09:04] SubStack: bandwidth is cheap [09:05] foobarfighter: we have weird requirements [09:05] foobarfighter: gotcha [09:05] SubStack: well you can sort of do that right now by having different mount points [09:06] foobarfighter: SubStack: dig your website [09:06] mraleph has joined the channel [09:06] jetienne has joined the channel [09:07] SubStack: actually doing dependency analysis in not computable in all cases [09:07] SubStack: because require() is just a function and you can call it from anywhere [09:07] Qbix2: what's new in the latest Node.js? [09:07] Qbix2: is the api stable yet? [09:08] SubStack: and you can't do much static analysis because it's freaking javascript [09:09] foobarfighter: SubStack: you know of anybody/projects trying to load deps via synchronous json-p in functional scope? [09:09] SubStack: ew gross [09:09] Qbix2: what is the point of browserify.js ? [09:09] SubStack: and I can't think of anything [09:10] Qbix2: foobarfighter: what do you mean [09:10] SubStack: Qbix2: so I can require() in client-side code [09:10] Qbix2: oh, I see [09:10] SubStack: and also so I can use my npm modules on the client-side [09:10] Qbix2: are you trying to build some sort of transparency layer beteen node.js and browsers? [09:10] Qbix2: wait isn't dnode already like that? [09:10] Qbix2: "just use javascript and dnode no matter where you are"? [09:11] SubStack: I don't want to make an rpc call for stuff like object traversal [09:11] Qbix2: well if you just want to make something like node's require() [09:11] foobarfighter: well... im working on a project. i need to implement require on the client [09:11] SubStack: you can't even do some stuff cleanly like what seq does because dnode mandates continuation-passing style [09:11] Qbix2: then you'd have to use xhr and then manipulate the stuff you get back and eval that [09:12] Qbix2: because you'd have to wrap what you get back in an anonymous function [09:12] SubStack: false [09:12] Qbix2: well, or you can use the server of course, to do it for ya [09:12] SubStack: why does everybody think you have to use xhr‽ [09:12] Qbix2: substack: because most people think it's either