[00:01] ParadoxQuine has joined the channel [00:02] industrial has joined the channel [00:02] industrial: Getting this error when making node from git on archlinux: https://gist.github.com/ff14d54e946f81823908 [00:02] killfill has joined the channel [00:03] Nuck has joined the channel [00:04] bnoordhuis: industrial: you're trying to build an unstable release of node [00:04] bnoordhuis: try 0.4.8 or 0.4.9 [00:05] industrial: oki [00:08] mrryanjohnston has joined the channel [00:10] Murvin: hmm a question.. what is the benefit of using those node.js hosting rather than normal cloud or dedicate server? [00:11] ggg has joined the channel [00:11] industrial: Why does npm install modules into ./node_modules ? Is there no systemwide? I don't remember having this before. [00:11] isaacs: industrial: npm help folders [00:11] mikey_p: industrial: that's new with npm > 1.0 [00:11] jerrysv: new and awesome [00:12] mikey_p: use -g for global, but for most apps you probably want to use node_modules [00:12] industrial: right [00:12] sethetter has joined the channel [00:12] mikey_p: makes managing dependencies soo much easier [00:12] ggg: there seems to be good oauth client modules, but how do i get a oauth server / producer unique for my app ? [00:12] industrial: mikey_p: yeah, i love virtualenv/rvm too so :) [00:14] jerrysv: ggg: if you find an answer for that, there are a lot of others looking as well [00:14] jerrysv: ggg: so please share [00:15] ggg: so how do you get a authentication service with nodejs??? [00:15] ggg: without using thirdparty websites [00:15] eyesUnclouded has joined the channel [00:15] electricEmu has joined the channel [00:17] AAA_awright_ has joined the channel [00:18] jerrysv: ggg: if you write one, you are sure to get many others saying thank you [00:19] ggg: i dont want to sound arrogant or anything, why is node so popular if there is nothing to provide such a basic need for a web application? [00:19] industrial: I used to use node-supervisor, but I see that it keeps restarting my app if it crashes. I'd rather have it restart after crashes only when the file is saved again. I don't see that possible with supervisor --help. Is there another module that can do it? I wonder what people are using :) [00:19] maushu has joined the channel [00:20] industrial: This would be only for development. [00:20] jashkenas has joined the channel [00:21] konung has joined the channel [00:21] Murvin: ggg: u need authentication? like going to admin page and require login/password? [00:22] ggg: authentication and session [00:22] GriffenJBS has joined the channel [00:22] Murvin: ggg: i learn it and did it yesterday. very straight forward. :) [00:22] ggg: pthe only thing i have seen is facebook or oauth or openid based... [00:22] ggg: any good links? [00:22] Murvin: ggg: nono. this is very simple. let me get u a link [00:23] GriffenJBS: I'm trying socket.io, but I don't see socket.io.js that seems to be used on the client side, where is that? [00:23] Lorentz: GriffenJBS: It is served as part of the server [00:24] ParadoxQuine has joined the channel [00:25] GriffenJBS: So it is not a static file I can place on a http server? [00:25] nightshift has joined the channel [00:25] Murvin: ggg: two sources that can give u a good idea: github.com/visionmedia/express/blob/master/examples/auth/app.js [00:25] gavin_huang has joined the channel [00:25] Murvin: ggg: and this one: github.com/senchalabs/connect/blob/master/examples/basicAuth.js [00:26] jerrysv: ggg: do you specifically need to be an oauth provider? [00:26] mikeal has joined the channel [00:26] AntelopeSalad_: griffen, i believe you can put it where ever you want because they have a cdn for the latest stable version [00:26] Murvin: and these examples use login & password inside the code.. you can make it connect to DB (.e.g redis or mongo). [00:26] jerrysv: ggg: there are oauth consumers written for node [00:26] ggg: nooo ... something i can run on my server, without any thrid party [00:27] Murvin: ggg: u just need some basic authentication, right? look at these two links. [00:27] ggg: perfect, thank you very much [00:28] GriffenJBS: AntelopeSalad_: I haven't seen a live example so I've missed that [00:28] nornagon has joined the channel [00:28] ggg: and yes, i only want basic authentication, where I dont need any other third party in process such as openid or oauth based providers (twitter, facebook, google...etC) [00:28] Murvin: ggg: u welcome. i have created one that get user login & password from database, and set different privilege. let me know if you need help. [00:29] ggg: does it include session handling...? [00:29] Murvin: ggg: yes. [00:29] mcluskydodallas has joined the channel [00:29] ggg: ok, thx, ill give it a shot :P [00:30] Murvin: ggg: when you create the server: express.createServer( ..... express.session({secret:'any string [00:30] Murvin: '}); [00:31] Murvin: ggg: then u will have the session management. [00:31] ggg: i guess ill have to intgrate express :P [00:31] perlmonkey2 has joined the channel [00:31] ggg: should be interesting [00:32] Murvin: ggg: it is good to use express. simplify and organize the code. :) and easy for plug-i middleware. [00:32] thedjinn has joined the channel [00:32] Murvin: ggg: if you need more info, i can post up a simple example [00:33] samsonjs has joined the channel [00:33] ParadoxQuine has joined the channel [00:35] SubStack: beer dot jay essssss [00:37] sethetter has joined the channel [00:37] vineethkashyap has left the channel [00:40] leahculver has joined the channel [00:40] leahculver has joined the channel [00:43] kmiyashiro has joined the channel [00:43] jameson has joined the channel [00:44] xandrews has joined the channel [00:45] xeodox has joined the channel [00:46] catphive: mscdex: really? is there an rtp library for node already? [00:46] catphive: mscdex: I actually need to send/receive video as well [00:47] pt_tr has joined the channel [00:55] Nexxy has joined the channel [00:55] CarterA has joined the channel [00:55] Nexxy: calm yourselves [00:56] mscdex: nou [00:56] sfragis has joined the channel [00:56] Nexxy: yo listen bro [00:56] CarterA: Is anyone working on a Node analytics system (other than hummingbird)? [00:56] mapleman has joined the channel [00:56] Nexxy: hru? ^-^ [00:56] mscdex: catphive: i did, but it's more of an rtp packet sending module kind of [00:56] mscdex: catphive: i just needed something to send audio to a cisco phone :) [00:56] Nexxy: you need something to send video to a browser [00:57] Nexxy: w/o gstreamer or vlc [00:57] mscdex: you need something that makes dinner for you [00:57] Nexxy: I uhm... [00:57] mscdex: :-D [00:57] Nexxy: I just made garlic basil spaghetti [00:57] Nexxy: with sauteed onions and bell peppers [00:57] mscdex: i can haz serving? [00:57] Nexxy: sure! [00:58] Nexxy: the plates are in the cupboard to the left [00:58] Nexxy: but please [00:58] Nexxy: use the tongs [00:58] mscdex: how do i know this isn't a trick? [00:58] Nexxy: cuz it's actually a trap! [00:58] Nexxy: ... wait [00:59] mscdex: http://bit.ly/hF3sNm [00:59] Nexxy: ;P [00:59] Poetro has joined the channel [01:00] mscdex: hah, "it's a tarp!" [01:00] Nexxy: http://bit.ly/j4uQet [01:02] mscdex: http://bit.ly/guL3bK [01:02] niftylettuce has joined the channel [01:02] cafesofie has joined the channel [01:02] k1ttty has joined the channel [01:02] abraxas has joined the channel [01:05] abraxas: A new NodeJS has been released.. .always nice to wake up to that in the morning. [01:05] jaket has joined the channel [01:06] ryanj has joined the channel [01:08] ryanj: I'm not getting a response from http://admin.npmjs.org/ when attempting to follow through with a password reset. any ideas? [01:08] seivan has joined the channel [01:11] isaacs: anyone know about partials in express 2.0? [01:11] kmiyashiro has joined the channel [01:12] Nexxy: no but now I'd like to [01:12] dguttman has joined the channel [01:13] isaacs: gr. [01:13] ryanj: isaacs, are there any known issues with npm password reset at the moment? [01:13] ryanj: I'm not able to reset [01:13] isaacs: it used to return the string that the partial returned. now it's trying to send it, resulting in sending the headers twice. [01:14] ryanj: no response from the server when I click on the reset link... [01:14] Murvin: just ntoice connect-mongodb doesn't work with 0.4.9 [01:14] lstoll has left the channel [01:15] ryanj: I'll try updating my npm version [01:15] saikat has joined the channel [01:15] isaacs: ryanj: i see the reset emails going out to you [01:16] ryanj: yep. I get those just fine. the link doesn't work [01:17] jacter has joined the channel [01:18] gtramont1na has joined the channel [01:19] JoshC1 has joined the channel [01:21] Murvin: anyone knows the meaning of this error message? "Cannot call method 'findOne' of null? [01:21] Murvin: it is from connect-mongodb [01:21] Murvin: does it mean, i call findOne on a null object? [01:21] CarterA: yes [01:21] Murvin: hmmmmmmmmmmmmmmmmm [01:21] bentruyman has joined the channel [01:23] jackhq_ has joined the channel [01:23] isaacs: v8: var foo = null; foo.findOne() [01:23] v8bot: isaacs: TypeError: Cannot call method 'findOne' of null [01:23] dipser has joined the channel [01:23] gtramont1na: Hi all. Question I have related to NPM ( maybe isaacs can help ) - I'm building a webapp and in my CI environment I need some of the dependencies to be installed as global (the module 'Jake', for instance). Can I inform something to npm so it installs whatever needed as global? [01:24] isaacs: gtramont1na: why do you need your dependency to be global? [01:24] fr0stbyte has joined the channel [01:25] gtramont1na: isaacs: so, in my CI enviroment, I want to run the unit tests. So I have Jake as a dependency and I have to call 'jake test:unit' [01:25] clifton has joined the channel [01:25] isaacs: gtramont1na: put this in your package.json file: "scripts" : { "test" : "jake test:unit" } [01:25] isaacs: gtramont1na: then have your CI thingie run `npm test1` [01:25] isaacs: *npm test [01:25] isaacs: (no "1") [01:26] gtramont1na: isaacs: : Right, but then it fails, because there is no such command 'jake' [01:26] isaacs: gtramont1na: yeah there is :) [01:26] KUHRT_: does anyone know of a sweet strategy to tackle front-end form generation/validation in a backbone/express context? [01:27] isaacs: gtramont1na: jake is installed in ./node_modules/.bin/jake, which is the first item in the PATH when running npm scripts [01:27] JoshC1 has joined the channel [01:27] clifton: anyone know of someone with experience with LDAP authentication over nodejs? https://github.com/joewalnes/node-ldapauth is all i can find. [01:27] isaacs: gtramont1na: you could also have your CI thingie do `./node_modules/.bin/jake test:unit` if you prefer [01:27] eyesUnclouded has joined the channel [01:28] CarterA: isaacs: I may be extraordinarily dense, but is there a way to update npm itself using npm? Or do I just run the curl thing again? [01:29] gtramont1na has joined the channel [01:29] isaacs: CarterA: you can run the curl thing again. but it's also possible to `npm update npm -g` or `npm install npm -g`. that breaks with npm 1.0 <=1.0.13 or so [01:29] CarterA: Cool. [01:32] onr: which module you use for message passing over tcp? [01:32] edude03 has joined the channel [01:32] KellyM has joined the channel [01:32] kitedawg has joined the channel [01:32] isaacs: onr: dnode [01:33] onr: isaacs: thanks [01:33] isaacs: onr: or just require("net").server/connect [01:33] kitedawg: anyone use calipso [01:33] MikhX has joined the channel [01:33] isaacs: onr: but dnode is nice [01:33] onr: isaacs: is dnode capable to pub/sub? [01:33] gtramont1na: isaacs: you rock! :-) it worked! [01:34] isaacs: onr: you can implement pub/sub with it pretty trivially [01:35] clifton: onr: http://substack.net/posts/9bac3e [01:37] tim_smart: onr: There is a thing called pubsub.io that I heard is pretty awesome [01:37] tim_smart: onr: http://www.pubsub.io/s/docs.html [01:38] nrajlich: omg, why won't FreeNode let me change my nick? [01:38] mobius- has joined the channel [01:39] socketio\test\93 has joined the channel [01:39] jacobolus has joined the channel [01:39] jackhq has joined the channel [01:40] gtramont1na: isaacs: My next two questions are: Can I pass a parameter in to a script (e.g 'npm test testResults.xml')? I need to capture what the script prints and pipe it to a test results file. [01:41] JJMalina has joined the channel [01:41] Emmanuel__ has joined the channel [01:41] isaacs: gtramont1na: you can just pipe it with normal shell piping [01:41] gtramont1na: isaacs: If I just do: 'npm test > testResults.xml', I get npm's initialization outputs [01:42] gtramont1na: isaacs: or even 'npm test | cat > testResults.xml' [01:42] pifantastic has joined the channel [01:42] gtramont1na: isaacs: which breaks the xml [01:43] isaacs: gtramont1na: oic [01:43] siculars has joined the channel [01:45] mcluskydodallas has joined the channel [01:45] langworthy has joined the channel [01:46] fr0stbyte has joined the channel [01:47] azeroth_ has joined the channel [01:48] sub_pop has joined the channel [01:49] ryanmcgrath has joined the channel [01:50] ngs has joined the channel [01:51] meso has joined the channel [01:51] Nican has joined the channel [01:53] KellyM has joined the channel [01:55] hornairs has joined the channel [01:55] jacter1 has joined the channel [01:56] tk has joined the channel [01:57] fr0stbyte_ has joined the channel [01:58] jerrysv has joined the channel [01:59] perlmonkey2 has joined the channel [02:03] jacter has joined the channel [02:07] xandrews has joined the channel [02:08] mcluskydodallas has joined the channel [02:08] ryanj: isaacs, you rock! thanks again! :) [02:09] kmiyashiro has joined the channel [02:11] sethetter has joined the channel [02:11] jtsnow has joined the channel [02:11] Aria has joined the channel [02:13] bibabot has joined the channel [02:17] k1ttty_ has joined the channel [02:18] jacobolus has joined the channel [02:19] postwait has joined the channel [02:21] sourcode has joined the channel [02:21] jacter1 has joined the channel [02:22] kawaz_home has joined the channel [02:23] MarcinM has joined the channel [02:24] bartt has joined the channel [02:30] nightshift has left the channel [02:31] dgathright_ has joined the channel [02:31] jerrysv has joined the channel [02:31] brolin has joined the channel [02:32] jackhq has joined the channel [02:33] gtramont1na: isaacs: A workaroud would be to have a shell variable being defined [02:34] isaacs: gtramont1na: oh, yeah, you could set an environment var [02:34] gtramont1na: isaacs: with the file name [02:34] isaacs: gtramont1na: or an npm config [02:34] isaacs: gtramont1na: yeah, do that. [02:34] gtramont1na: isaacs: ;-) Cool! Thx [02:35] isaacs: gtramont1na: np [02:35] niftylettuce has joined the channel [02:35] isaacs: gtramont1na: in npm itself, i use a config to determine whether or not to do the publish/unpublish tests, since they're slow [02:36] broofa has joined the channel [02:36] nannto has joined the channel [02:36] gtramont1na: isaacs: ohh. I totally forgot about npm config! That might be the best way to go [02:37] isaacs: gtramont1na: yeah, that's available in the env [02:37] isaacs: npm config set my-package:testoutputfile output.xml [02:37] eyesUnclouded has joined the channel [02:37] isaacs: and then in teh test script, check for "npm_package_config_testoutputfile" in the environment [02:38] isaacs: you can also put a default value in your package.json file: "config" : { "testoutputfile" : "" } [02:39] gtramont1na: isaacs: absolutelly! thanks again. [02:39] isaacs: np [02:40] MikhX has joined the channel [02:42] mike5w3c has joined the channel [02:45] jzacsh: i'm using jade templating with express. if i have p My Text here is a(href="/some/path")linked, for this paragarph - how can i get jade to interpret the tag in the middle of that plain-text paragraph? [02:45] ph^ has joined the channel [02:45] sethetter has joined the channel [02:46] sethetter: What kind of projects are you all working on in node? Just out of curiosity. [02:47] jerrysv: sethetter: my freezer, network security/forensics, and use a bunch of misc tools like stylus for management [02:48] jacobolus has joined the channel [02:48] sethetter: jerrysv: awesome, I'm trying to come up with some new things to do with it. I've just been following tutorials but I need more real world application and experience to really get better [02:49] jerrysv: sethetter: we've introduced it into our build stack at work, i like to use it personally for all sorts of projects [02:50] sethetter: I'm a bit of an amateur developer and node is where i decided to start digging in, so I'm just trying to find some more things to do with it. [02:51] jerrysv: lots to do with it, but don't think of it as a hammer [02:51] sethetter: right [02:51] jerrysv: i think of it as my perl replacement [02:51] harth has joined the channel [02:51] jerrysv: even things i was using perl as a goto for (shell level math, etc), i've switched to node for [02:53] sethetter: very cool, so far I've just done http stuff with it, and worked a bit with mongodb. [02:53] zwittar has joined the channel [02:53] sethetter: but my background is in web design, so that's the type of programming i'm familiar with. [02:54] jerrysv: sounds like you have quite an adventure ahead of you then :) [02:54] sethetter: I sure do, haha. [02:54] sethetter: I want to get more into the server side of things but not entirely sure where to start. [02:54] wookiehangover has joined the channel [02:57] k1ttty has joined the channel [03:01] dipser_ has joined the channel [03:02] nick_ has joined the channel [03:02] AvianFlu has joined the channel [03:02] xDROPx has joined the channel [03:04] amerine has joined the channel [03:05] blueadept: anyone use zappa? https://github.com/mauricemach/zappa [03:05] nick_: I keep getting: [03:05] nick_: 2 [main] python 3448 C:\cygwin\bin\python.exe: *** fatal error - unable to remap \\?\C:\cygwin\lib\python2.6\lib-dynload\_functools.dll to same address as parent: 0x360000 != 0x410000 [03:06] nick_: when trying to get node to work on windows 7 [03:06] jacter has joined the channel [03:07] wadey has joined the channel [03:08] jacter1 has joined the channel [03:10] Emmanuel__: huh ? [03:10] Emmanuel__: node on windows require python ? [03:11] nick_: https://github.com/joyent/node/wiki/Building-node.js-on-Cygwin-(Windows) [03:11] asobrasil has joined the channel [03:17] jerrysv: v8: var a = undefined || { }; console.log(a); [03:17] v8bot: jerrysv: {} [03:17] sethetter has joined the channel [03:18] jgautier has joined the channel [03:19] jgautier: voodootikigod when are you going to update node-serialport on npm? [03:20] elpinguino has joined the channel [03:24] rchavik has joined the channel [03:24] rchavik has joined the channel [03:27] jmoyers has joined the channel [03:28] populuxe has joined the channel [03:30] bingomanatee has joined the channel [03:30] bingomanatee: hey does anyone have a library for generating images (png, gif,jpg) with node? [03:31] drefined has joined the channel [03:32] tbranyen: bbilook at node-gd [03:32] tbranyen: wow lag [03:32] MikhX has joined the channel [03:33] kuhrt has joined the channel [03:34] vid_ has joined the channel [03:37] felipellrocha has joined the channel [03:38] ngs has joined the channel [03:39] aguynamedben has joined the channel [03:40] marcello3d has joined the channel [03:41] vid_ has joined the channel [03:47] temp01 has joined the channel [03:49] ekryski has joined the channel [03:49] zined has joined the channel [03:51] raja has joined the channel [03:52] zined: is it by design that on a http request, the sin_addr is saved to request.connection.remoteAddress, and on https requests to request.connection.socket.remoteAddress? if yes, i'll have to put the "which protocol is used" logic into my own logic, but i'd rather like to leave that to the underlying layer.. [03:52] zined: hi btw ;-) [03:54] MikhX has joined the channel [03:54] zined: var remoteAddress = request.connection.remoteAddress ? request.connection.remoteAddress : request.connection.socket.remoteAddress; // <--- not soooo sexy :) [03:55] jslatts_ has joined the channel [03:55] avalanche123 has joined the channel [03:57] BulletBobM has joined the channel [03:57] BulletBobM has left the channel [03:58] isaacs has joined the channel [04:00] boehm has joined the channel [04:00] BulletBobM has joined the channel [04:05] jacter has joined the channel [04:05] tk has joined the channel [04:07] bingomanatee: thanks [04:09] vaal_ has joined the channel [04:10] vaal_: hi, guys [04:12] vaal_: how do i fix this error : Build failed: -> task failed (err #2): {task: uv uv.h -> uv.a} [04:13] blueadept: anyone use zappa? https://github.com/mauricemach/zappa [04:16] blkcat has joined the channel [04:17] blkcat: hey guys, what's the best xml library for node at the moment? [04:17] samsonjs has joined the channel [04:18] kmiyashiro has joined the channel [04:18] dandean has joined the channel [04:20] boehm has joined the channel [04:20] dgathright has joined the channel [04:20] JasonSmith has joined the channel [04:21] dandean: anybody know how to go about using a debugger while running expresso tests? [04:25] KellyM has joined the channel [04:26] dandean: I'm currently just changing the first line of the expresso executable to "#!/usr/bin/env node debug", but was hoping there was a better way which didn't involve changing the source files. [04:28] rick_h_ has joined the channel [04:30] GriffenJBS has joined the channel [04:32] bingomanatee: tjholowaychuk: ping [04:32] slloyd_ has joined the channel [04:32] febits has joined the channel [04:33] jacter has joined the channel [04:34] azeroth_ has joined the channel [04:37] Bonuspunkt has joined the channel [04:37] anatoo has joined the channel [04:42] jakehow has joined the channel [04:46] felipellrocha: any one know of a good npm package for doing facebook logins w node? [04:49] puffpio has joined the channel [04:51] jslatts has joined the channel [04:53] ChrisPartridge has joined the channel [04:53] carmony has joined the channel [04:54] ditesh|cassini has joined the channel [04:57] neurone-1337 has joined the channel [05:00] MarcinM: https://github.com/bnoguchi/everyauth [05:01] tk has joined the channel [05:06] RickardL has joined the channel [05:11] charleyd has joined the channel [05:17] seivan has joined the channel [05:18] tilgovi has joined the channel [05:18] tilgovi has joined the channel [05:19] AAA_awright_ has joined the channel [05:21] Swizec has joined the channel [05:22] mange has joined the channel [05:22] LSU_JBob has joined the channel [05:24] mykul has joined the channel [05:24] felipellrocha: MarcinM: thz :] [05:26] jacobolus has joined the channel [05:29] jacobolus has joined the channel [05:34] wilmoore has joined the channel [05:34] xixi has joined the channel [05:39] kbni has joined the channel [05:40] tom__ has joined the channel [05:42] meso_ has joined the channel [05:43] meso__ has joined the channel [05:44] tom__ has left the channel [05:45] tmpvar has joined the channel [05:45] jspiros has joined the channel [05:47] tmpvar: Bah, that is annoying [05:49] cachemoney has joined the channel [05:52] stephank has joined the channel [06:02] bingomanatee: fellpellroca: as far as I know there really isn't one; since the FB login is itself a javascript library I think most people are simply using that on the client side. [06:03] Jakwac has joined the channel [06:03] jameson has joined the channel [06:08] josephboyle has joined the channel [06:08] dilvie has joined the channel [06:12] amerine has joined the channel [06:12] josephboyle has joined the channel [06:13] MrTopf has joined the channel [06:13] muhqu has joined the channel [06:15] ryanmcgrath has joined the channel [06:17] unlink has joined the channel [06:17] unlink has joined the channel [06:19] euforic has joined the channel [06:20] SamuraiJack has joined the channel [06:21] gde33 has joined the channel [06:22] squeese has joined the channel [06:22] Bj_o_rn has joined the channel [06:23] sreeix has joined the channel [06:23] Corren has joined the channel [06:24] svenlito has joined the channel [06:26] squeese has joined the channel [06:29] dshaw_ has joined the channel [06:31] sgimeno has joined the channel [06:32] matyr has joined the channel [06:33] mscdex: blkcat: libxmljs or this for a pure-js solution for simple parsing: https://github.com/isaacs/sax-js [06:35] `3rdEden has joined the channel [06:35] Bj_o_rn has left the channel [06:36] jacobolus has joined the channel [06:36] blkcat: mscdex: thank you! :) [06:36] Emmanuel__: anbody tried the socketstream example socketchat ? [06:36] Emmanuel__: I can't even have it run :) [06:37] Emmanuel__: (ok, I'm a moron) [06:38] baio has joined the channel [06:38] baio: HI!!!! [06:38] baio: Somebody have installed graphic magic on ubuntu? [06:39] baio: When I work with png files in node and gm I have this freakin message - Command failed: gm identify: No decode delegate for this image format (/tmp/logo.png). [06:40] deoxxa: baio: what exactly does this have to do with node.js? [06:40] baio: And I've installed the pngliob addon but it seems not working [06:40] baio: please help [06:40] baio: see pervious message [06:40] jeroen| has joined the channel [06:40] baio: I actually not sure [06:40] deoxxa: i think you need to go talk to whoever maintains "graphic magic" [06:40] Me1000 has joined the channel [06:40] baio: but maby I should reinstall node after I install gm [06:41] baio: or something like this [06:41] baio: I actually not sure there is problem and maby people with similar experience are her [06:41] baio: her [06:41] baio: here [06:42] fille has joined the channel [06:42] fille: hello [06:43] anoop has joined the channel [06:44] fille: just wondering im seeing this in node.js example code var test = require('module1'), var test = require('module2'), etc .. [06:44] fille: anyone know why there is a , after each require [06:44] tauren has joined the channel [06:44] purple has joined the channel [06:45] ghost has joined the channel [06:45] shirro: fille: https://developer.mozilla.org/en/JavaScript/Reference/Operators/Special/Comma_Operator [06:45] fille: thanks! [06:47] maushu_ has joined the channel [06:48] jackhq has joined the channel [06:50] pigmej has joined the channel [06:50] saurabhverma has joined the channel [06:52] dshaw_ has joined the channel [06:53] dshaw_ has joined the channel [06:58] simenbrekken has joined the channel [06:58] groom has joined the channel [06:59] sreeix has joined the channel [07:00] JoESanche_z has joined the channel [07:02] jvduf has joined the channel [07:03] Corren has joined the channel [07:03] mlu has joined the channel [07:03] zomgbie has joined the channel [07:03] mlu: it's been a great day; can't believe that I actually got to use node.js for a serious project at work [07:04] fangel has joined the channel [07:05] petrjanda has joined the channel [07:07] jacobolus has joined the channel [07:08] ekryski has joined the channel [07:08] ekryski has left the channel [07:09] dgathright has joined the channel [07:13] fille: mlu im soo jelouse [07:13] bergie has joined the channel [07:16] mlu: only issue is that it's a startup that possibly doesn't pay well [07:16] thalll has joined the channel [07:16] mlu: all I know is that my boss is making everyone get a basic understanding of node.js :P [07:17] asabil has joined the channel [07:17] fille: thats a good boss :D [07:17] mlu: it's really fun; node.js happened to be the perfect solution when I needed to synchronously coordinate a couple of requests submitted over HTTP [07:19] fille: heheh, im trying to promote node.js but people just dont want to believe in it [07:20] fille: nodekohai down? [07:20] mlu: I sold the idea when I shortened what seemed to be an impractical week-long project into a 30min thing [07:20] fille: heheh [07:20] mlu: yeah, polling a MongoDB backend with PHP is just plain ugly [07:21] aliem has joined the channel [07:23] catphive has joined the channel [07:23] mobius-: hello everyone, can you send an audio stream to an node.js http server and node to handle the binary data? [07:23] fille: just open a socket i guess [07:24] mobius-: i was thinking over http [07:24] hwinkel has joined the channel [07:24] fille: but it wont be streamin i guess [07:25] MrTopf has joined the channel [07:25] mobius-: why not? [07:25] fille: because the http server will shut down at once [07:25] fille: the data been transfered [07:26] coreb has joined the channel [07:26] mlu: mobius-: I'd imagine as long as you have functions to process the data upon receipt, etc. [07:26] mobius-: well I was thinking in the concept of chunk-encoded [07:26] mobius-: maybe i am well off here [07:27] mobius-: mlu: well yes ok definately, you need to have the functions :) [07:27] Murugaratham has joined the channel [07:28] mobius-: but I was mostly asking if this can be done over http [07:28] mobius-: if http 1.1 supports it? [07:28] mlu: I think chunk-encoded is possible over HTTP [07:28] mobius-: etc [07:28] mlu: but you'll ahve to send multiple packets [07:28] hackband has joined the channel [07:28] mobius-: node.js supports chunk-encoded http but I haven't heard them being used for uploading [07:28] mlu: i.e. have a chunk queue and you just send chunks of, say, 1MB, at a time [07:29] mlu: well, if you can upload a file via HTTP, why can't you accept such an upload via node.js? [07:29] markwubben has joined the channel [07:29] mlu: maybe I'd add a separate "page" to be used as a control channel to determine what should be sent, etc. [07:29] rauchg has joined the channel [07:29] mendel_ has joined the channel [07:29] tk has joined the channel [07:30] seivan has joined the channel [07:30] sppericat has joined the channel [07:30] konobi: mobius-: sure, there's a bunch of nodejs audio apps out there [07:30] sppericat: hello [07:31] mobius-: hmm [07:31] mobius-: konobi: could you name a couple? [07:31] konobi: voxer is the big one offhand [07:32] ablomen has joined the channel [07:32] mendel_ has joined the channel [07:32] djcoin has joined the channel [07:32] mobius-: hmm thanks konobi, I am gonna go check it out [07:33] k1ttty has joined the channel [07:33] zomgbie has joined the channel [07:33] adambeynon has joined the channel [07:33] topaxi has joined the channel [07:33] andree has joined the channel [07:35] gozala has joined the channel [07:36] shinuza has joined the channel [07:36] JasonSmith has joined the channel [07:37] [AD]Turbo has joined the channel [07:37] [AD]Turbo: hi there [07:39] littlebiged has joined the channel [07:39] fille: i need more real time data [07:39] fille: its sad thats the stock quots is copyrighted [07:40] fille: and cost a lot of money [07:44] herbySk has joined the channel [07:44] svenlito has joined the channel [07:44] svenlito has joined the channel [07:46] MikhX_ has joined the channel [07:46] AAA_awright: fille: Stock quotes can't be copyrighted [07:46] niftylettuce: ACTION lurks with over 100 tabs open... reading furiously [07:46] neshaug has joined the channel [07:46] AAA_awright: Data can't be copyrighted period [07:46] AAA_awright: It's not creative [07:47] flasomm has joined the channel [07:48] Yoric has joined the channel [07:49] sreeix has joined the channel [07:50] mange has joined the channel [07:51] fille: AAA_awright but still the market owns them [07:51] uchuff has joined the channel [07:51] fly-away has joined the channel [07:52] seivan has joined the channel [07:55] seivan has joined the channel [07:55] hij1nx has joined the channel [07:57] Murugaratham has joined the channel [07:58] TomY has joined the channel [07:59] AAA_awright: fille: True [08:00] AAA_awright: Well, they own their feed at least, not the data [08:00] fille: but if i would harvest all the data with a spider, i would be theft [08:00] fille: it would be theft [08:00] AAA_awright: Uh, what's being stolen? [08:01] AAA_awright: Theft would be going in and taking their harddrives/computers with data on it for yourself [08:01] Druide_ has joined the channel [08:01] AAA_awright: fille: If you just need random data just to do stuff with Twitter can deliver a metric shitton of it [08:02] mikeal has joined the channel [08:02] fille: but to download a movie from piratebay is theft? [08:03] Benjie: Legally yes, sensibly no. [08:04] Murugaratham has joined the channel [08:04] svnlto_ has joined the channel [08:06] sreeix has joined the channel [08:06] chjj has joined the channel [08:07] tokumine has joined the channel [08:08] seivan has joined the channel [08:08] jameson has joined the channel [08:08] jbpros has joined the channel [08:11] darshanshankar has joined the channel [08:12] saurabhverma has joined the channel [08:13] confoocious has joined the channel [08:13] confoocious has joined the channel [08:14] unlink has joined the channel [08:14] unlink has joined the channel [08:19] sylvinus has joined the channel [08:19] pTa_armi has joined the channel [08:19] pTa_armi has left the channel [08:21] fangel has joined the channel [08:21] Arenstar has joined the channel [08:21] mange has joined the channel [08:22] path[l] has joined the channel [08:22] markwubben has joined the channel [08:22] rook2pawn has joined the channel [08:23] coreb has left the channel [08:24] kulor-uk has joined the channel [08:25] adrianmg has joined the channel [08:25] asabil has joined the channel [08:26] adrianmg: hi [08:29] kixxauth has joined the channel [08:29] hellp has joined the channel [08:31] djcoin has joined the channel [08:32] sfoster has joined the channel [08:33] d0k has joined the channel [08:37] MrTopf has joined the channel [08:37] blup has joined the channel [08:40] sppericat has left the channel [08:42] saschagehlich has joined the channel [08:42] dsirijus has joined the channel [08:45] ph^ has joined the channel [08:45] jeremyselier has joined the channel [08:46] tokumine has joined the channel [08:47] bzinger has joined the channel [08:47] jacter1 has joined the channel [08:47] hybsch has joined the channel [08:50] mc_greeny has joined the channel [08:51] CoinOpeBoy has joined the channel [08:51] __doc__ has joined the channel [08:59] cosmincx has joined the channel [09:01] MattJ has joined the channel [09:04] k1ttty has joined the channel [09:05] ChrisPartridge has joined the channel [09:05] GriffenJBS: what is recommended server side for websockets? [09:06] tuhoojabotti: Supercomputer. [09:06] GriffenJBS: node.js is now making Supercomputers? [09:06] tuhoojabotti: No, but you need one! [09:06] tuhoojabotti: ;) [09:06] tuhoojabotti: I want one too. [09:07] GriffenJBS: any simple modules for websocket? [09:07] tuhoojabotti: socket.io? [09:07] fangel has joined the channel [09:07] tuhoojabotti: Just a guess. [09:07] GriffenJBS: so far I really hating socket.io [09:07] stagas: GriffenJBS: https://github.com/miksago/node-websocket-server [09:08] sylvinus has joined the channel [09:08] GriffenJBS: stagas thanks [09:08] `3rdEden: GriffenJBS what do you hate about it? [09:08] `3rdEden: If I might ask [09:08] GriffenJBS: oh let me count the ways ... [09:09] GriffenJBS: lack of documentation, fallback I don't need/can't use, layered over other modules, so the errors are buried in them and harder to debug [09:10] `3rdEden: Yes the documention is a sore point [09:10] tuhoojabotti: Indeed. [09:10] `3rdEden: But I'm working on that atm [09:10] tuhoojabotti: https://gist.github.com/1045566 <- example of good documentation. :P [09:10] GriffenJBS: maybe I'm using it wrong, but I can't check the API to verify [09:11] `3rdEden: GriffenJBS thanks for your input, now I know what we should work on :) [09:11] GriffenJBS: cute pig, bacon makes me hungry [09:11] tuhoojabotti: :O) [09:11] tuhoojabotti: It's part of the documentation. [09:12] GriffenJBS: Pascal/Delphi? [09:12] GriffenJBS: wait basic [09:12] tuhoojabotti: That's CoolBasic ;D The language I learned when I was 10, must not let the skills go away. :P [09:13] GriffenJBS: it's been ... decades since I last read those [09:13] tuhoojabotti: It's so nice, and slow. :) [09:13] GriffenJBS: lol [09:13] robi42 has joined the channel [09:13] tuhoojabotti: I have met the developer of that language twice and played left 4 dead with him. ;D [09:14] GriffenJBS: I'm not sure I've ever used CoolBasic, but GWBasic, Basic, QBasic, VBasic, etc [09:15] tuhoojabotti: It's quite unknown, finnish and nice finnish community. :P [09:15] Benjie: GriffenJBS, I just rolled my own. I now have a single socket that serves a custom protocol but also handles HTTP/WebSockets if necessary to wrap the custom protocol. (e.g. switch *\n for \x00*\xff and add the relevant headers) [09:16] GriffenJBS: Benjie: I'm trying hard not to roll my own, I'm starting to feel like RMS [09:17] Benjie: What I really want to do is get the first line of the request and if it's HTTP hand it off to the http module, otherwise handle it myself. But I can't see how to do that [09:18] GriffenJBS: Benjie: socket.io does that with express, but I didn't dig into it too much [09:19] `3rdEden: tuhoojabotti socket.io's code is also annoted with JSDoc :) [09:19] tuhoojabotti: I don't think my doc is any standard. :P [09:19] `3rdEden: but we don't have pigs :( [09:19] tuhoojabotti: That's a clear minus. [09:21] jonaslund has joined the channel [09:22] Murugaratham has joined the channel [09:22] jvduf has joined the channel [09:24] blup: does anyone know what are the differences between mobile couchbase (ios/android couchbase), and regular couchdb? [09:24] jvduf has joined the channel [09:24] GriffenJBS: Idk, I'd guess it's trading memory for speed [09:25] thalll has joined the channel [09:27] aliem has joined the channel [09:30] devuo has joined the channel [09:32] _jgr has joined the channel [09:33] radiodario has joined the channel [09:33] FireFly|n900 has joined the channel [09:33] fangel has joined the channel [09:34] Renegade001 has joined the channel [09:34] tbassetto has joined the channel [09:36] seyz has joined the channel [09:37] Skola: I'm pretty ashamed to admit it :D, but how is one supposed to write lists and objects properly, style-wise? ie. [1, 2, 3] vs [1,2,3] and { lulz : boat } vs {lulz: boat}, etc. I'm seeing different styles all over the place, even by respected programmers [09:38] Skola: to ask* [09:38] SubStack: however you like [09:38] SubStack: javascript won't judge you [09:38] shachaf: Shame won't do you any good. [09:38] shachaf: You're seeing different styles because there are different styles. [09:38] tuhoojabotti: Skola: Use JSLint. :P [09:38] SubStack: fuck jslint [09:38] shachaf: No style is wrong (except for anything different from how I like it :-) ). [09:38] tuhoojabotti: SubStack: I do that too! Mind me. [09:39] Skola: alright, good to know [09:39] tuhoojabotti: Everyone should have their own coding style. :) [09:39] tuhoojabotti: I approve that. [09:39] tuhoojabotti: but something should be banned like commas before ;D [09:39] tuhoojabotti: it's just eww. [09:40] shachaf: Commas before? [09:40] tuhoojabotti: [ lol [09:40] tuhoojabotti: , lul] [09:40] shachaf: Oh, Haskell-style. [09:40] shachaf: That's a great style for multi-line arrays. [09:40] Skola: yep [09:40] Skola: I'll stick to Haskell style in general then [09:41] tuhoojabotti: Eww you guys. ;) [09:41] jonaslund: there should be a strict list mode [09:41] SubStack: I don't do leading commas in haskell [09:41] jonaslund: or something like that [09:41] SubStack: not that I feel strongly or anything [09:41] tuhoojabotti: You don't do Haskell, it's JS :u [09:41] shachaf: Of course when I say Haskell-style, I just mean that it's somewhat popular among Haskell programmers. :-) [09:41] jonaslund: ACTION has written bugs being like [ [{objA},{objB}] [{objC}]] < can anyone see the bug _ [09:41] jonaslund: ? [09:42] Skola: ie. in CoffeeScript: arr.reduce = (xs:x) -> //something & [1, 2, 3] etc [09:42] tuhoojabotti: jonaslund: Yes. [09:42] jonaslund: granted the ways of JS makes it hard to disallow things like that but it can be annoying when it happens :( [09:42] shachaf: jonaslund: The missing comma is would presumably cause a parse error? [09:42] jonaslund: shachaf: nope. runtime error [09:42] jonaslund: what happens is that the array [{objA},{objB}] gets an array access with the {objC} as index [09:43] Skola: lol [09:43] jonaslund: actually [09:43] shachaf: Oh, I guess there's that. [09:43] altamic has joined the channel [09:43] jonaslund: that gives your list an undefined entry [09:43] jonaslund: not even an direct runtime error [09:43] shachaf: Right. [09:43] jonaslund: so that bug will creep down into your code [09:43] shachaf: Just use a sane language and you'll be fine. :-) [09:43] tuhoojabotti: Better use jshint ;) [09:43] jonaslund: tuhoojabotti: jshint catches things like that _ [09:43] jonaslund: ? [09:43] tuhoojabotti: Dunno. [09:44] tuhoojabotti: But I like it anyways. :P [09:44] kbni: Skola: I'm of the opinion that "predefined" objects/dicts are usually useful to be read in an easy way, so I usually align mine [09:44] Ezku\: Skola: (xs:x)? [09:44] kbni: stylesDir: __dirname+'/stylesheets', [09:44] kbni: templatesDir: __dirname+'/templates', [09:44] kbni: for example [09:44] Ezku\: Skola: should that really work in coffeescript? haven't seen it anywhere before [09:45] Skola: oops, I'm too brainwashed with Haskell [09:45] Skola: I mean (xs,x) [09:45] Skola: normally one would probably use spaces after the comma there [09:45] aliem has joined the channel [09:46] Skola: but with a lot of functional programming I don't care for my argument names [09:46] Ezku\: my haskell fu isn't very strong at all, but doesn't xs:x mean the argument is a list with xs its head and x the tail? [09:46] Ezku\: so the coffeescript equivalent would be ([xs, x...]) :) [09:46] Skola: yeah that's right [09:47] Ezku\: wow, seems I do know at least something. [09:47] Skola: I wish coffeescript would allow for [1,5..20] [09:47] Skola: instead of x for x in [1..20] by 5 [09:48] ditesh|cassini has joined the channel [09:48] Wizek has joined the channel [09:49] Skola: for now I use https://gist.github.com/1055942 [09:49] Ezku\: I have developed a serious aversion to syntactic peculiarities in several FP languages such as Haskell, which tends to hinder my studies of them... [09:50] Skola: once you 'get' them, you'll be thankful : P [09:51] Ezku\: i think i'm familiar with the concepts and could readily apply them at least to a degree, were it not for the syntax [09:52] Skola: you mean the [1,3..20] syntax? [09:52] Ezku\: no, I mean FP [09:53] Skola: which syntactic peculiarities do you mean though [09:53] Skola: most of it is pretty straightforward [09:53] sreeix has joined the channel [09:53] Skola: Haskell syntax is beautiful and simple [09:54] Skola: just ignore arrows and monads etc in the beginning ^^ [09:54] jakehow has joined the channel [09:55] Wizek has joined the channel [09:56] Skola: is there a builtin sortListOfListsByNthListItem function in JS? [09:56] SuMarDi has joined the channel [09:58] micheil has joined the channel [10:01] adambeynon has joined the channel [10:01] cachemoney has joined the channel [10:03] robhawkes has joined the channel [10:04] dilvie: Skola: totally. [10:04] hij1nx has joined the channel [10:05] Wa has joined the channel [10:06] Skola: : D [10:11] fangel has joined the channel [10:12] dilvie: Skola - you can pass any compare function you want into the [].sort() method. [10:12] level09 has joined the channel [10:13] Skola: yeah, I have array.sort (x,y) -> x[i] - y[i] now [10:13] Skola: excuse the coffee [10:13] okuryu has joined the channel [10:14] bnoordhuis has joined the channel [10:14] asabil has joined the channel [10:15] Skola: so just: sortArrays: (array, i) -> array.sort (x,y) -> x[i] - y[i] [10:15] zomgbie has joined the channel [10:15] dilvie: Coffee is for Ruby programmers who don't know JavaScript. =P~ [10:15] Skola: maybe [10:15] squeese has joined the channel [10:15] pomodoro has joined the channel [10:16] dilvie: Maybe I'm biassed because I don't know Coffee. [10:16] dilvie: =) [10:16] Lorentz: Coffee is for weak people [10:16] Lorentz: who doesn't know of caffeine pills [10:16] Skola: : [] [10:17] sourcode has joined the channel [10:17] dilvie: I don't know how to do robust scoping with Coffee. [10:18] tuhoojabotti: OMG 1.7 today! [10:18] tuhoojabotti: (Minecraft) [10:18] dilvie: anyway.. goodnight... hope you get it sorted. [10:19] tuhoojabotti: Pistons! [10:19] Skola: haha thanks, gn [10:19] dilvie: see what I did there? [10:19] Skola: ofc! [10:19] Skola: :[] [10:19] Skola: I'm pretty alert from all the coffee [10:19] Skola: see what I did there? [10:19] dilvie: I did. [10:19] dilvie: But you really should use console.log instead of alert. [10:20] dilvie: ok.. I'm done. [10:20] Prism has joined the channel [10:20] Skola: haha [10:20] Skola: :D gnight [10:20] tuhoojabotti: Noo [10:20] tuhoojabotti: alert<3 [10:20] dilvie: got love for the little modal box, eh? [10:24] dilvie: <-- sleeping. [10:26] ananamoose has joined the channel [10:26] secoif has joined the channel [10:28] bpierre has joined the channel [10:28] nyholt has joined the channel [10:28] zmbmartin has joined the channel [10:29] pen has joined the channel [10:36] materialdesigner has joined the channel [10:38] zorzar: hey, does anybody know of a module that evaluates a downloaded webpage including all js and that let's me click on links and evaluates the resulting js? [10:38] seivan has joined the channel [10:38] zorzar: something linke selenium, but without the browser [10:38] [AD]Turbo: what is the equivalent of AssertException inside nodejs? [10:39] [AD]Turbo: in a browser console throw new AssertException('msg') works fine, but not inside nodejs console [10:44] stalled has joined the channel [10:46] piscisaureus has joined the channel [10:46] mike5w3c has joined the channel [10:47] framlin: zorzar: where do you want toklick, if there is no browser? [10:47] path[l]_ has joined the channel [10:48] neoesque has joined the channel [10:49] cosmincx has joined the channel [10:57] jbpros has joined the channel [10:58] Emmanuel__ has joined the channel [11:03] bogomips2_ has joined the channel [11:03] raja has joined the channel [11:04] zorzar: framlin: i want to send a click event [11:04] pen has joined the channel [11:07] Jubb has joined the channel [11:07] maushu has joined the channel [11:08] Bonuspunk has joined the channel [11:19] skm has joined the channel [11:22] level09 has joined the channel [11:27] Bwen has joined the channel [11:29] Bwen: let's push things forward? As in... javascript push to frontends? :D [11:30] Lorentz: nodeos [11:30] Lorentz: It's like rodeo [11:31] altamic has joined the channel [11:31] altamic has joined the channel [11:31] phpnode has joined the channel [11:31] dexter_e has joined the channel [11:31] JasonSmith has joined the channel [11:33] ChrisPartridge has joined the channel [11:33] framlin: nodeOS sounds good ;) [11:36] cryptix: anyone playing with node-browserify? im getting strange behavior from the watch: option [11:37] phpnode: how can i tell which redis library i'm using? :) [11:38] cjm has joined the channel [11:42] sreeix has joined the channel [11:43] sergej222 has joined the channel [11:43] adrianmg has joined the channel [11:45] thejh has joined the channel [11:46] mahna has joined the channel [11:48] brianseeders has joined the channel [11:48] sergej222: hi, is the mingw port incomplete? I thought its 'only' unstable, but my compiled binary throws exeptions by trying to run the helloworld example. node.js:180 throw e; // process.nextTick error, or 'error' event on first tick Error: No such module at dns.js:22:19 [11:49] level09_ has joined the channel [11:51] cryptix: sergej222: if you have some time, wait until libuv is fully integrated and you wont need mingw if i understood correctly [11:52] cryptix: i guess it will be the 0.5 release but who knows... [11:52] sreeix has joined the channel [11:52] sergej222: Thanks [11:53] necrodearia has joined the channel [11:55] TechCel has joined the channel [11:59] ph^ has joined the channel [11:59] Mrfloyd has joined the channel [11:59] MacDiva has joined the channel [11:59] unlink has joined the channel [11:59] unlink has joined the channel [11:59] phpnode: can anyone recommend a redis client that supports ZUNION etc? [11:59] adambeynon has joined the channel [12:01] ChrisPartridge has joined the channel [12:03] mendel_ has joined the channel [12:04] jbpros has joined the channel [12:06] shinuza has joined the channel [12:07] mendel_ has joined the channel [12:08] brolin has joined the channel [12:08] mendel__ has joined the channel [12:11] rio{ has joined the channel [12:12] tbassett has joined the channel [12:13] thomblake has joined the channel [12:13] Mrfloyd has joined the channel [12:15] Aria has joined the channel [12:16] boehm has joined the channel [12:16] eldar has joined the channel [12:17] stalled has joined the channel [12:21] Plouj has left the channel [12:21] hdon has joined the channel [12:23] Charuru has joined the channel [12:23] ChrisPartridge1 has joined the channel [12:27] F1LT3R has joined the channel [12:28] JoshC1 has joined the channel [12:28] FireFly|n900 has joined the channel [12:29] fumanchu182 has joined the channel [12:30] davidwalsh has joined the channel [12:30] MacDiva has joined the channel [12:33] MacDiva has joined the channel [12:33] jvduf has joined the channel [12:34] pTa_armi has joined the channel [12:36] pifantastic has joined the channel [12:36] MacDiva_ has joined the channel [12:36] dall has joined the channel [12:36] dall: hello [12:36] sylvinus has joined the channel [12:37] dall: guys when we do res.redirect('http://www.google.com', 301) the script will continue the execution... [12:37] dall: how to understand if a redirect has been set? [12:37] dall: because if doesn't i have to call next() if does....ends [12:38] dall: (i'm talking about EXPRESS) [12:38] elpinguino has joined the channel [12:38] edude03 has joined the channel [12:38] fermion has joined the channel [12:42] svenlito has joined the channel [12:42] Bwen: dall: Federal Express? O.o [12:42] gtramont1na has joined the channel [12:43] dall: :D [12:43] dall: Bwen, EXPRESS JS --> WEB FRAMEWORK :-p [12:44] stepheneb has joined the channel [12:44] Bwen: ohhh right right... That... thing -.- [12:45] ChrisPartridge has joined the channel [12:45] level09 has joined the channel [12:45] Bwen: they dont have a channel yet? :P [12:46] jameson has joined the channel [12:49] cafesofie has joined the channel [12:49] dall: Bwen, no yet [12:49] dall: :D [12:49] dall: ahah [12:50] storrgie has joined the channel [12:51] sourcode has joined the channel [12:51] sonnym has joined the channel [12:53] mrryanjohnston has joined the channel [12:53] davidsklar has joined the channel [12:54] AaronMT has joined the channel [12:55] mrryanjohnston: I'm trying to push out an app to nodester. How do I do this with socket.io v.7: var socket = new io.Socket(null, {port: 80, rememberTransport: false}); [12:55] `3E: mrryanjohnston wrong api [12:55] `3E: did you read: https://github.com/LearnBoost/Socket.IO/wiki/Migrating-0.6-to-0.7 [12:58] nornagon has joined the channel [13:01] maushu has joined the channel [13:02] broofa has joined the channel [13:03] aheckmann has joined the channel [13:03] kriszyp has joined the channel [13:04] liar has joined the channel [13:09] Bwen: anyone has any idea how to debug "Write failed: Broken pipe" I start my nodejs server and after awhile, with very lil (close to none) traffic, it dies with that error... [13:10] jlecker has joined the channel [13:10] Bwen: its not a throw or anything.. just that 1 line... no trace [13:12] CoinOpeBoy has joined the channel [13:16] jscheel has joined the channel [13:16] jscheel has joined the channel [13:16] naragon has joined the channel [13:17] xandrews has joined the channel [13:18] dtan has joined the channel [13:18] Badababuba has joined the channel [13:18] colinclark has joined the channel [13:19] coyo has joined the channel [13:19] m1ke_wallace has joined the channel [13:21] Vertice has joined the channel [13:22] cjm has joined the channel [13:22] iori has joined the channel [13:23] bbrandon has joined the channel [13:25] balaa has joined the channel [13:26] FireFly|n900 has joined the channel [13:26] voodootikigod: !logs [13:28] bpierre has joined the channel [13:29] tuhoojabotti: :O [13:31] niftylettuce has joined the channel [13:31] dexter_e has joined the channel [13:32] yhahn has joined the channel [13:32] coyo has joined the channel [13:32] unomi has joined the channel [13:32] adrianmg has joined the channel [13:32] tjholowaychuk has joined the channel [13:32] Benjie: Bwen, are you doing "node | head" or similar? [13:33] powerj has joined the channel [13:35] Bwen: Benjie: actualy, its my bad. That message is from my Shell. i'm going to put some process.on('uncaughtexception) and log to a file... [13:35] pomodoro has joined the channel [13:36] Bwen: Benjie: i'm starting the app: node server.js& [13:37] rfay has joined the channel [13:37] pigmej has joined the channel [13:37] pigmej: what's the best way to shutdown nicely the connect server from itself? [13:39] powerj: Hello all :), when i use sockets in node, i create one, then i do, var buf=""; socket.on("data", function(data) { buf += data;});, then on socket.on("close", i use all the data in the buffer, this is done over and over again, cant you use anything like var buf = socket.readFully(); instead? [13:40] Sebastien-L has joined the channel [13:40] pen has joined the channel [13:41] powerj: pigmej, dont follow you, whats a "connect server"? [13:42] LSU_JBob has joined the channel [13:42] LSU_JBob has left the channel [13:42] Poetro has joined the channel [13:44] pigmej: powerj: http://senchalabs.github.com/connect/ [13:44] pigmej: ;-) [13:44] ksheurs has joined the channel [13:44] tjholowaychuk: pigmej: same as http.Server (in node) #close() [13:45] karlmarx has joined the channel [13:47] mrryanjohnston has joined the channel [13:47] mrryanjohnston: eep [13:47] mrryanjohnston: i got dropped [13:48] pigmej: tjholowaychuk: ah right... [13:48] mrryanjohnston: and yes I know that's the wrong api, that's why I was asking ;_; [13:48] mrryanjohnston: I will ask my question again differently this time :) [13:49] mrryanjohnston: The nodester howtos have this listed as how to set up a socket.io connection: var socket = new io.Socket(null, {port: 80, rememberTransport: false}); however, this is not the v.7 api. Can anyone point me in the direction of the info to find out how to do something like this in v.7? [13:50] jslatts_ has joined the channel [13:51] V1: mrryanjohnston io.connect('http://yourhosthere:80'); [13:51] V1: there is no rememberTransport anymore [13:51] V1: but io.connect(':80'); should also work [13:52] mrryanjohnston: ah [13:52] mrryanjohnston: guess I should have thought of that one [13:52] mrryanjohnston: V1: thanks :) [13:52] postwait has joined the channel [13:55] boaz has joined the channel [13:55] shanez has joined the channel [13:56] Skola has joined the channel [13:58] kawaz_home has joined the channel [13:58] migimunz has joined the channel [13:58] brianc has joined the channel [13:59] nibblebot has joined the channel [13:59] febits has joined the channel [14:01] sourcode has joined the channel [14:05] Mrfloyd has joined the channel [14:06] JJMalina has joined the channel [14:08] jtsnow has joined the channel [14:08] criswell has joined the channel [14:09] squaretone has joined the channel [14:09] nibblebo_ has joined the channel [14:10] gustavowt has joined the channel [14:10] hebz0rl has joined the channel [14:11] hij1nx has joined the channel [14:12] catshirt has joined the channel [14:14] jomoho has joined the channel [14:15] robhawkes has joined the channel [14:15] swearos has joined the channel [14:15] lvjunqi_ has joined the channel [14:18] fermion has joined the channel [14:20] jslatts has joined the channel [14:20] EyePulp has joined the channel [14:22] thejh has joined the channel [14:23] thejh: hello [14:23] bradleymeck has joined the channel [14:23] thejh: is there any good solution for doing GUIs with node? something like a gtk binding? [14:24] Epeli: html5 :] [14:24] MarcinM has joined the channel [14:24] cryptix: i could swear i saw x11 bindings once [14:24] Epeli: but I think there is gtk bindings [14:25] cryptix: thejh: github.com/sidorares/node-x11 but i dunno how complete it is [14:26] Swizec has joined the channel [14:26] bbrandon has joined the channel [14:26] thejh: cryptix, thanks [14:26] systemfault: That's insanity though :/ [14:26] cryptix: and Epeli is right too [14:26] systemfault: Nobody sane would use Xlibs nowadays [14:26] cryptix: node-gtk and node-ui-gtk [14:27] systemfault: gtk is a good bet :) [14:27] madness has joined the channel [14:27] systemfault: gtk 3.0 would be the best but perhaps it's too recent :/ [14:27] madness: hi [14:27] c4milo has joined the channel [14:28] hybsch has joined the channel [14:28] madness has left the channel [14:28] cryptix: sadly those three dont seem to be that well maintained [14:28] squaretone has left the channel [14:29] Corren has joined the channel [14:29] bergie has joined the channel [14:30] deedubs has joined the channel [14:30] sirganya: how woul a node ninja emulate the proxypass directive in apache? [14:30] unvamp has joined the channel [14:31] stepheneb has joined the channel [14:32] jlecker has joined the channel [14:32] robhawkes has joined the channel [14:33] cafesofie has joined the channel [14:34] Gigawatt has joined the channel [14:36] patrickgamer has joined the channel [14:37] antlong has joined the channel [14:37] mandric has joined the channel [14:38] patrickgamer has left the channel [14:38] nibblebot has joined the channel [14:38] patcoll has joined the channel [14:39] jerrysv has joined the channel [14:39] Gigawatt: hey guys, whats up [14:39] bradleymeck: sirganya, have a proxy in front of your server to balance them, like nginx, or node-http-proxy [14:40] bradleymeck: nm, fixing bugs [14:40] cryptix: hunting bugs here :) [14:41] clifton has joined the channel [14:41] sirganya: I've been experimenting with http-proxy but I'm not sure if it's a good fit when everything is in the same domain. [14:41] pen has joined the channel [14:42] Tobsn has joined the channel [14:42] bradleymeck: sirganya why not? [14:43] felixge has joined the channel [14:43] felixge has joined the channel [14:43] Tobsn has joined the channel [14:43] cafesofie has joined the channel [14:43] tjholowaychuk has joined the channel [14:44] mandric has joined the channel [14:44] adrianmg has joined the channel [14:45] MrTopf_ has joined the channel [14:46] LowValueTarget has joined the channel [14:47] BillyBreen has joined the channel [14:48] kmiyashiro has joined the channel [14:48] sirganya: bradleymeck: well I'm on day 2 of playing with express and http-proxy and I'm just begining to grok them. I'd previously built an app that deals with a couchdb and reverse proxies couchdb reqs as I wanted to understand node before using the frameworks, but they look like such timesavers I'd be crazy not to. So to redirect a request from port 80 to couch db I have an express app.get with a httpproxy req inside it but when I hit it couc [14:48] sirganya: gives an error, and I'm not really sure what's goin on. So I'll have to go digging, but before I do that I thought I'd see what you guys would use, might save me some time.... [14:48] vipaca has joined the channel [14:48] vipaca has joined the channel [14:48] kmiyashiro has joined the channel [14:49] RORgasm has joined the channel [14:51] pjacobs has joined the channel [14:51] gazumps has joined the channel [14:51] bermi has joined the channel [14:52] swilson06 has joined the channel [14:52] mkrecny has joined the channel [14:53] avalanche123 has joined the channel [14:54] mkrecny: having weird issues w/ JSON.parse on 0.4.5 anyone have XP? [14:56] nibblebot has joined the channel [14:56] hunterloftis has joined the channel [14:57] omes: trunk failes to build on *nix boxes. does this look sane? (https://github.com/omes/node/commit/fa1c6918c7464ac82fb9784873c4f63d6d2ca426#deps/uv/uv.h) [14:57] bradleymeck: is there a way to make require.main true for a module instead of the main one if we want to bootstrap one? [14:58] bradleymeck: omes trunk is on an unstable version number odd versions are unstable, so its not too uncommon [14:58] Aikar: omes: 'm,aster' is not in a usable state for .5 [14:58] sub_pop has joined the channel [14:58] omes: bradleymeck: hence the patch [14:59] bradleymeck: im just saying, dont expect it to run right even if it compiles [14:59] sethetter has joined the channel [14:59] omes: bradleymeck: ah, okay :) [15:00] lukstr: omes: not sure libuv gets mucked with like that? [15:00] charleyd has joined the channel [15:00] skohorn has joined the channel [15:00] jonasen has joined the channel [15:02] omes: lukstr: i dunno. i'm very new to node. [15:02] radiodario: does the http client module of nodejs support basic authentication? i'm trying to extract data from nagios. [15:02] mike5w3c has joined the channel [15:03] Mrfloyd has joined the channel [15:04] omes: lukstr: i was kind of hinting that it might *not* be sane to do that. just wanted some input :) [15:04] baudehlo has joined the channel [15:04] adulteratedjedi has joined the channel [15:04] wbw72 has joined the channel [15:05] mikeycgto has joined the channel [15:05] junkee[] has joined the channel [15:06] ngs has joined the channel [15:06] AaronMT_ has joined the channel [15:06] softdrink has joined the channel [15:06] fermion has joined the channel [15:07] _Sorensen has joined the channel [15:08] gazumps has joined the channel [15:08] robi42 has joined the channel [15:08] bradleymeck: radiodario, i know spider does [15:09] infynyxx has joined the channel [15:09] bradleymeck: radiodario, but if you need to send the cred programatically you just set the authorization header [15:10] mapleman has joined the channel [15:10] pastak has joined the channel [15:10] kkaefer: is there a synchronous way to call a child process? [15:10] kkaefer: and get its outputs [15:10] Gigawatt: Heya guy's, I want to auto load a controller file in my custom framework, but i want certain variables to be available in the out scope, in the same way node does when using require, passing in console etc, what's the best way to do this ? [15:11] Gigawatt: eval("(function(Base,Console){ /*The file here*/ })();") [15:12] Gigawatt: but also need's all the generic global variables such as console and require [15:12] bradleymeck: export a function that accepts them as your controller boilerplate [15:12] tj has joined the channel [15:12] Gigawatt: bradleymeck, what you mean [15:12] tj: Gigawatt: unfortunately most the time you end up needing to do say: module.exports = function(app){ ... app.whatever() }); etc [15:12] tj: not sure if you got that, disconnected [15:12] indutny: Gigawatt: require('vm').runInNewContext [15:12] bradleymeck: for express : module.exports = function(app) {} [15:13] indutny: Gigawatt: https://github.com/indutny/bar see there for further details [15:13] Guest33280: i usually just have a global "app" [15:13] Guest33280: because [15:13] Guest33280: wrapping is really lame [15:13] bradleymeck: tj its not unfortunate, its explicit :( [15:13] indutny: Guest33280-1 [15:13] indutny: Guest33280-- [15:13] v8bot: indutny has taken a beer from Guest33280. Guest33280 now has -1 beers. [15:14] bradleymeck: -1 to no wrap, implicit variables for context that pollute the global context... [15:14] Gigawatt: ahhh, so just export then initialize with a global variable [15:14] Gigawatt: thanks, ill try that wauy [15:14] Gigawatt: way* [15:14] Guest33280: bradleymeck agreed, but it's unfortunate when you have to pass "app" down 10 modules [15:14] indutny: Gigawatt: using global vars is not a best way for that [15:14] intelx5 has joined the channel [15:14] sergej222 has joined the channel [15:14] Guest33280: it's best practices vs killing yourself [15:14] indutny: Guest33280: require('module1').init(app) ? [15:15] indutny: Guest33280: what is the problem with that? [15:15] bradleymeck: guest33280 but you break the ability to directly call apis from modules often (we have a couple clis that would break w/ nowrap) [15:15] Guest33280: doesn't hurt to have a global if it's in your own app, and not in a lib [15:15] indutny: or store constructors and wrappers in modules [15:15] Guest33280: indutny it sucks [15:15] Guest33280: then in that module you pass it down again [15:15] indutny: Guest33280: really? :) [15:15] Guest33280: and again [15:15] Guest33280: and again [15:15] bradleymeck: cut and paste is hard [15:15] indutny: Guest33280: something wrong about your app design [15:15] indutny: I'm using instances and classes everywhere [15:15] Draggor: Or use a doto() function [15:15] bradleymeck: especially when you end up breaking require of your app for programatic use otherwise [15:15] indutny: so if I need something global - I'll use parent instance's method [15:16] Guest33280: for example all of a sudden you need to get the return value of cluster() deep down in the require()s [15:16] taf2: hey guys, so i'm working on a crawler scrapper and this might be a bit over kill but the arch is kind of cool... i use node.js + phantomjs... node.js running express is the master backed by mongodb... it uses child process to spawn phantomjs that then uses sizzle library to extra meaning ful text from the crawled pages... and post status back to node.js [15:16] Guest33280: then you just keep passing more shit to require(foo)() [15:16] Gigawatt: Like this? https://gist.github.com/1056446 [15:16] kkaefer: mmh :/ [15:16] taf2: ACTION has much to do before it'll be ready for prime time [15:16] pifantastic has joined the channel [15:16] ceej has joined the channel [15:16] kkaefer: there doesn't seem to be a way to call a child process synchronously [15:16] indutny: Guest33280: use instances and classes [15:16] bradleymeck: Guest33280 this is a good case for encapsulation [15:16] Gigawatt: I want the user to create a function that's executed within a scope that has pre-defined tools for them such as this.view [15:17] tjholowaychuk has joined the channel [15:17] admc has joined the channel [15:17] Gigawatt: this.library.use("somelibrary",function(lib){}) [15:17] pHcF has joined the channel [15:17] indutny: Gigawatt: http://nodejs.org/docs/v0.4.9/api/vm.html#script.runInNewContext [15:18] tjholowaychuk: indutny: and re-invent require()? [15:18] tjholowaychuk: just for that? [15:18] thoolihan has joined the channel [15:18] tjholowaychuk: yikes [15:18] indutny: tjholowaychuk: heh :) that actually depends [15:18] lukstr: omes: looks like it's defined in the test suite [15:18] tjholowaychuk: nothing is wrong with a global in YOUR app [15:18] tjholowaychuk: global in libs == very lame [15:18] indutny: tjholowaychuk: I don't think so [15:18] lukstr: just not in the actual library :) [15:18] tjholowaychuk: in app == who cares [15:18] indutny: tjholowaychuk: is there any big difference between app and lib? [15:19] indutny: I think app itself should be a simple binary file #!/usr/bin/env [15:19] tjholowaychuk: require('./foo')(app) module.exports = function(app){ ... require('./bar')(app) .. etc [15:19] indutny: tjholowaychuk: with require of app module and calling one method of it [15:19] tjholowaychuk: is really lame [15:19] bradleymeck: as long as when i call require(x) where x is an app with a non-programmatic interface (web/ui/cli/etc) and it does not give me globals, thats ok, but breaking those 2 apart is harder than a simple wrapper [15:19] indutny: tjholowaychuk: Was I talking about that? [15:20] tjholowaychuk: that's what he wanted to know [15:20] indutny: using globals is very unpredictable and ok only for small projects, IMHO [15:20] tjholowaychuk: how to pass stuff down throughout modules [15:20] tjholowaychuk: if not documented, sure [15:20] tjholowaychuk: one global wont kill you [15:20] bradleymeck: ie we have several nested cli's that use the programmatic interfaces to do things that would be difficult from chaining child_process.spawn [15:20] indutny: tjholowaychuk: '$' ? [15:20] indutny: hehe :) [15:20] indutny: $.myData ={}; [15:21] bradleymeck: anyway, this argument is fruitful and has never been had before [15:21] indutny: I'll create a patch for node.js that will initialize the global object $ [15:21] indutny: global.$ = {}; [15:21] indutny: so everybody won't junkify my global [15:21] tjholowaychuk: not in libs [15:21] tjholowaychuk: like i said [15:21] MikhX has joined the channel [15:22] tjholowaychuk: just like it's retarded to use underscore as a dep in a lib, but sure go nuts in your app [15:22] tjholowaychuk: or coffeescript [15:22] wookiehang0ver has joined the channel [15:22] indutny: tjholowaychuk: I don't know, really. I think that app should follow same conventions as module [15:22] indutny: and a good app looks like a module [15:23] indutny: and is a module itself [15:23] indutny: library [15:23] tjholowaychuk: in certain respects yes [15:23] tjholowaychuk: maybe you wont feel the pain until you do a large node app [15:23] indutny: tjholowaychuk: Dunno, I suppose I built few large apps on it [15:24] brolin has joined the channel [15:24] indutny: pain === design problems [15:24] tjholowaychuk: and require() is a "design" it has problems like any other [15:24] indutny: if design is wrong it will raise more and more with new LoC [15:24] pTa_armi has joined the channel [15:25] indutny: tjholowaychuk: yeah, I agree with that [15:25] Draggor: tjholowaychuk: Wait I missed something, why is it bad to use underscore in a lib? [15:25] indutny: Draggor: extra dependency? [15:25] indutny: Draggor: or code mess [15:25] adulteratedjedi: or both [15:26] socketio\test\76 has joined the channel [15:26] Draggor: Both of those seem like a spook the horses argument [15:26] pickels has joined the channel [15:27] bronson has joined the channel [15:27] Draggor: Extra deps, while not ideal, is far from an argument to not use something incredibly useful [15:27] mrmanager has joined the channel [15:27] skohorn has joined the channel [15:28] bradleymeck: Draggor the use of the _ variable as a global, not only will it no longer throw _ is not defined errors, if _ is set it might override it [15:28] bradleymeck: lazy loading ftl [15:28] Draggor: Oh oh [15:28] Draggor: That I get, yeah. [15:28] tjholowaychuk: im not saying all libs, but most libs REALLY dont need _ as a dep [15:28] tjholowaychuk: it's just ultra lazy [15:28] tjholowaychuk: and a side from cross-browser is more or less useless [15:28] Draggor: Sorry, I'll go be in the corner over here ---> [15:29] Draggor: What about _ without the required global? [15:29] mkrecny: why is JSON.parse a fucking jungle [15:30] bradleymeck: ? [15:30] jakehow has joined the channel [15:30] radiodario: does http's get requests accept an object as their get parameters? [15:30] tjholowaychuk: ZOMG JSON is a global what if i accidentally JSON = [15:30] tjholowaychuk: require('JSON').parse() [15:30] sbisbee has joined the channel [15:30] bradleymeck: radiodario, get params are part of the url so put it in path [15:31] omes: lukstr: yeah it is. it's not in uv-linux.c though [15:32] mendel_ has joined the channel [15:32] bradleymeck: tj if it duplicates the *standard* JSON object and does not introduce side effects to other parts of the program through its use, s'fine [15:32] tjholowaychuk: haha [15:32] tjholowaychuk: just saying [15:32] lukstr: omes: he ripped it out during that commit so I would expect it to be changed _shortly_ [15:32] mkrecny: not what i'm refferring [15:32] mkrecny: to [15:32] horo has joined the channel [15:33] lukstr: omes: https://github.com/joyent/node/commit/1cb7b67ac3e43c9f1f051d59b9c38f07fcd7b337#L18L501 [15:33] vipaca has joined the channel [15:33] vipaca has joined the channel [15:33] bradleymeck: tjholowaychuk it is something that we have expected globals, but introducing ones that have side effects that are potentially lasting if overriden for the same purpose, it can be bad, that being said, we can argue til eternity [15:33] radiodario: bradleymeck: yeah but i wanted to make it programmatically. cheers tho. [15:34] mkrecny: JSON.parsing a given collection of objects - sometimes the parser chokes throwing Unexpected token ILLEGAL- sometimes it doesn't - same collection [15:34] radiodario: i'm writing my own function. [15:35] tjholowaychuk: bradleymeck: I'm just saying if it is your app, you're free to do whatever makes life easier, using coffeescript, bulky util libs, an "app" global etc [15:35] tjholowaychuk: for (app in foo) OH NO [15:35] tjholowaychuk: lol [15:35] tjholowaychuk: just dont be a fail [15:35] tjholowaychuk: easy enough [15:35] bradleymeck: sure as long as you have no desire to be exported [15:35] tjholowaychuk: for sure [15:35] tjholowaychuk: we are with ours right now [15:36] tjholowaychuk: but we are reverting all that [15:36] tjholowaychuk: because it's useless [15:36] bradleymeck: radiodario : https://github.com/mikeal/request : http://nodejs.org/docs/v0.4.9/api/all.html#query_String [15:36] radiodario: wow awesome sauce bradleymeck [15:36] radiodario: cheers boss. [15:37] brianc: I've had good luck so far having the main module creating the express app and then requiring all other sub modules of the app and passing (app) to the module [15:37] tbranyen: heh its funny in jquery we call that serialize [15:37] brianc: example: require(__dirname + '/configure')(app); [15:37] tbranyen: but now that i think of it, stringify makes more sense ? [15:37] bshumate has joined the channel [15:37] tjholowaychuk: brianc yeah just depends on the size o the app [15:37] tjholowaychuk: of* [15:37] tjholowaychuk: ours is huge [15:37] brianc: tjholowaychuk: totes [15:37] tjholowaychuk: and we utilize settings down fairly deep in the require()s [15:37] tjholowaychuk: at times [15:37] tjholowaychuk: and tons of other stuff [15:38] bradleymeck: ours is getting there, but we mostly work in the CLI world, so being able to require eachother is nice [15:38] brianc: I wish there was a semi-"standard" logging library so peeps could use it in their libraries [15:38] brianc: one thing nice about .NET...pretty much EVERYONE uses log4net so most open source libraries are logging the same way you are [15:39] lukegalea: brianc: I feel similarly, but I don't think something as heavy as log4j or log4net would be needed. Something like Rails would work for me. [15:39] tjholowaychuk: do we have something in npm like sloccount for js? [15:40] sourcode has joined the channel [15:40] brianc: yeah totally, i don't need heavy [15:41] lukegalea: brianc: I guess we better go write it ;) [15:41] tjholowaychuk: you're looking for a logger? [15:41] lukstr: I still think we need something like freopen [15:41] bradleymeck: brianc https://github.com/indexzero/winston (this is what we use at least)? [15:41] dtan_ has joined the channel [15:41] brianc: i use winston right now too [15:42] tjholowaychuk: http://github.com/visionmedia/log.js [15:42] tjholowaychuk: is reeeeeally basic, arbitrary streams [15:42] brianc: one thing I really like about the npm logger is it buffers lower level messages and dumps them as well as the error if an error is hit [15:43] nodelover has joined the channel [15:43] lukstr: brianc: you don't always want that overhead though [15:43] JohnnyL has joined the channel [15:44] jtsnow has joined the channel [15:44] bradleymeck: brianc add a request for buffering in winston's issues? (something where you could start up buffering with a max amount of messages / flush / dump them) [15:44] charleyd has joined the channel [15:44] lukstr: tjholowaychuk: still doesn't solve the issue of other libraries doing stupid stuff on stderr/stdout [15:44] lukstr: freopen can potentially solve that, you just wrap their stupidity [15:45] brianc: bradleymeck: true true [15:45] tjholowaychuk: ah [15:45] tjholowaychuk: yeah, i prefer only the server output to stdio [15:46] Kai__ has joined the channel [15:46] lukstr: exactly, freopen makes wonderful logging possible with very little effort, and all other loggers are implicitly built ontop of it [15:46] tjholowaychuk: they should all be configurable though i would think [15:46] tjholowaychuk: hopefully? [15:46] tjholowaychuk: haha [15:47] nodelover: Hi, everyone. Did anyone have trouble installing node.js on Ubuntu-10.04? I have openssl installed, but when i ran ./configure to install node.js, I was told that openssl couldn't be found. [15:47] lukstr: it's been brought up before... I should create a patch [15:47] bradleymeck: nodelover libssl-dev [15:47] Kai__: Hey, has anyone used the VM module? When I run vm.runInThisContext(code, "filename") the code that is ran does not have __filename nor __dirname and fs commands do not work. [15:48] nodelover: Thanks, bradleymeck. I will try it. [15:48] bradleymeck: Kai__ it runs in the same context, not in the same scope [15:49] Kai__: but why does it report __filename as undefined? [15:49] Yuffster_work has joined the channel [15:49] bradleymeck: module variables live in the module's scope [15:49] bradleymeck: from the global scope it is undefined [15:49] Kai__: hmm true [15:49] Kai__: this appears to break FS module [15:49] Kai__: well [15:50] Kai__: if I do fs.readFile with relative paths [15:50] bbttxu has joined the channel [15:50] RockMeAmadeus has joined the channel [15:51] asabil has joined the channel [15:51] Kai__: I'm loading a JS file and compiling it and saving into RAM with VM. Later I'm executing it and it fails because relative paths with all FS module functions fail in that code because it doesn't seem to understand where the file is located eventhough I specify the filename parameter for VM. What should I do? [15:52] jerrysv has joined the channel [15:52] systemfault has joined the channel [15:53] piscisaureus has joined the channel [15:53] saurabhverma has joined the channel [15:54] Skola: Is there a different way to use a regexp object with the global flag set other than new RegExp(oldObject, "g"); ? [15:55] jarek has joined the channel [15:55] jarek has joined the channel [15:55] Kai__: you can try var reg = /myreg/; reg.global = true; [15:55] necrodearia has joined the channel [15:55] stride: hm, doesn't var foo = /bar/g do the same? [15:56] Kai__: I think he wants to alter existing RegEx instance? [15:56] sethetter has joined the channel [15:56] Skola: yes [15:56] thalll has joined the channel [15:56] Kai__: then instance.global = true should work [15:56] Skola: ok thanks [15:56] Kai__: it's checked when the regex is evaluated IIRC [15:56] stride: oh right, sorry [15:56] halfhalo has left the channel [15:56] Skola: but after using it with global flag, I want to use it normally again [15:57] Skola: I have an object with different regexpressions, and I use them in a function, each if certain conditions are met [15:58] Skola: In that function I sometimes need to use it with global flag set, sometimes without [15:58] Skola: but I don't feel like adding 2 different regexpressions to my object [15:58] Kai__: then change it back global = false :P [15:58] Skola: if I can do it on the fly [15:58] jetienne has joined the channel [15:58] hellp has joined the channel [15:58] Kai__: var r = /foo/; [15:58] asobrasil has joined the channel [15:59] Kai__: r.global = true; r.exec(); r.global = false; [15:59] Skola: yeah it's probably cheaper to set the global flag instead of creating a new RegExp based on the other one [15:59] fermion has joined the channel [15:59] Kai__: definitely [16:00] Skola: alright, thanks [16:00] mandric has joined the channel [16:00] tjholowaychuk has joined the channel [16:02] Skola: it's a bit of a bad habit of mine to want to do everything with functions [16:02] langworthy has joined the channel [16:02] adelgado: I have the bad habit of being super sexy and humble. [16:03] lukstr: adelgado: sure about that? :P [16:03] samsonjs has joined the channel [16:03] saurabhverma has joined the channel [16:05] hij1nx has joined the channel [16:06] confoocious has joined the channel [16:06] confoocious has joined the channel [16:09] ekryski has joined the channel [16:10] Gigawatt: v8: function Context(){}; function Scope(){}; Context.call(new Scope); [16:10] v8bot: Gigawatt: undefined [16:11] AntelopeSalad_: with node_redis, when using hgetall or get while passing a cb with an error,dataset as params -- what exactly would cause an error other than the server not being available? if i delete a key in redis and try to access it, the error never fires [16:12] eresair has joined the channel [16:13] sridatta has joined the channel [16:13] ts__ has joined the channel [16:14] unvamp has joined the channel [16:15] mcutler has joined the channel [16:17] halfhalo has joined the channel [16:17] halfhalo has left the channel [16:17] brianc: not sure if I missed the discussion but the new version of v8 they're working on "proxyobject" yes? [16:17] Gigawatt: does this kind of mvc controller look appealing ? https://gist.github.com/1056574 [16:17] brianc: i.e. method_missing for javascript [16:17] halfhalo has joined the channel [16:17] tjholowaychuk: Gigawatt: kinda weird [16:17] tjholowaychuk: rails-style controllers look brutal in js [16:17] tjholowaychuk: no matter what you do [16:17] tjholowaychuk: unless it's extremely restrictive, and just a plain object [16:18] tjholowaychuk: which looks ok but not very flexible [16:18] Gigawatt: never worked with rails :( [16:19] Gigawatt: basically that function is inside a file called index.js, and when the user goes to /index/method, the callback for 'method' is called inside a context with tools and helpers for Models, Libraries etc [16:19] bradleymeck_ has joined the channel [16:19] brianc: yeah [16:19] ryanmcgrath has joined the channel [16:19] tjholowaychuk: Gigawatt: the "usage" part https://github.com/visionmedia/express-resource [16:19] brianc: Gigawatt: why not use 'get' 'post' 'put' 'delete' instead of 'addMethod'? [16:20] tjholowaychuk: shows how it would look as a plain object style [16:20] tjholowaychuk: but like i said it's pretty limiting [16:20] indutny: tjholowaychuk: btw, check this http://github.com/indutny/connect-cdn [16:20] tjholowaychuk: but IMO that's more of a node-ish approach [16:20] tjholowaychuk: with regular module stuff [16:20] indutny: tjholowaychuk: works with rackspace cloudfiles for now [16:20] tjholowaychuk: indutny nice! [16:20] Gigawatt: because get/post/put in my opinion are nothing to do with routeing [16:20] indutny: tjholowaychuk: I got it working even with stylus on my slides app site :) [16:21] indutny: tjholowaychuk: http://slides.indutny.com/ [16:21] indutny: see? :) [16:21] tjholowaychuk: indutny make sure to add that to the connect wiki [16:21] tjholowaychuk: i was interested in something like that a while ago [16:21] indutny: tjholowaychuk: it's in progress, but already working [16:21] brianc: Gigawatt: also, by convention only constructors are capitalized , so function Index & (Controller) prolly wanna be downcased [16:22] bbttxu has joined the channel [16:22] brianc: Gigawatt: maybe controller.route('name', function() { }) could also be controller.route(otherController) for nested controller sexy times? [16:22] Gigawatt: yea this is not going to be a release so not worried about that at the moment, im experimenting with ways of creating mvc in node [16:22] Yoric has joined the channel [16:23] omes: lukstr: ah :) [16:23] tjholowaychuk: it'll never look nice like ruby meta-class stuff unfortunately [16:23] tjholowaychuk: well, fortunately IMO :p [16:23] dall: hello, if i create a variable on the main (app.js) can i access (from other module) to that variable? [16:23] tjholowaychuk: clunky in js [16:23] omes: lukstr: so the github master is really bleeding edge and very high-content? [16:23] brianc: tjholowaychuk: haha was just gonna say "fortunately" too [16:23] Gigawatt: it's pushed here if anyone want to have a look at it, you guys prob have lots of criticism but im still newish to advanced js [16:23] Gigawatt: https://github.com/AdminSpot/Nodeigniter [16:24] amerine has joined the channel [16:25] lukstr: omes: yes, currently it's unstable [16:25] dall: is not possible? [16:25] brianc: anyone know what's going on w/ the es-harmony proxyobject stuff in v8? [16:25] mundanity has joined the channel [16:26] brianc: me either. *awkwardly kicks dirt* [16:26] Gigawatt: brb [16:27] indutny: brianc: It's possible to create it with v8 API [16:27] level09: what do you guys recommend for creating a web service in Node ? [16:27] yozgrahame has joined the channel [16:27] indutny: level09: express or connect [16:27] brianc: level09: express [16:27] pigmej: level09: escort ;) [16:27] indutny: level09: that depends on what you're planning to do, actually [16:28] level09: I want it to power my mobile apps / act as a feed for other sites [16:28] mcutler has left the channel [16:28] pigmej: express is a little bit 'fat' for api things [16:28] tjholowaychuk: it's not fat [16:28] level09: express seems to be the most popular [16:28] indutny: tjholowaychuk: it's fat [16:28] tjholowaychuk: it's a tiny library [16:28] pigmej: tjholowaychuk: you know what I mean :)) [16:28] indutny: tjholowaychuk: :) [16:28] tjholowaychuk: connect is much larger [16:28] level09: I came across the webservice module as well [16:28] pigmej: express requires connec t;) [16:28] tjholowaychuk: level09: https://github.com/visionmedia/express/blob/master/examples/web-service/app.js [16:28] indutny: level09: webservice is good too [16:28] tjholowaychuk: pigmej yeah, and connect exists, to serve express [16:28] pigmej: tjholowaychuk: express is awesome... but for rest interface?... [16:29] tjholowaychuk: yes [16:29] tjholowaychuk: that's what it's for [16:29] wilmoore has joined the channel [16:29] indutny: yes [16:29] pigmej: i'm using escort... faster [16:29] tjholowaychuk: lol [16:29] tjholowaychuk: use C [16:29] level09: tjholowaychuk: great thanks [16:29] tjholowaychuk: faster [16:29] brianc: haha [16:29] pigmej: tjholowaychuk: depends where ;] [16:29] indutny: use ASM [16:29] indutny: faster [16:29] tjholowaychuk: there you go [16:29] tjholowaychuk: asm it is [16:29] pigmej: tjholowaychuk: I didn't say that express is slow ;) [16:29] ekryski: lol. so stupid [16:29] brianc: what is this escort thing? google for that just pulls up news articles for hookers [16:29] jakehow has joined the channel [16:29] indutny: go and call site visitors via phone [16:30] indutny: haha :) [16:30] pigmej: https://github.com/ckknight/escort [16:30] ekryski: anyone going to OSCON? [16:30] dans has joined the channel [16:30] tjholowaychuk: pigmej: looks around the same size as express [16:30] tjholowaychuk: it's just one file [16:30] blup has joined the channel [16:30] tjholowaychuk: doesn't mean it's smaller, just means it's poorly organized [16:30] halfhalo has left the channel [16:30] sgimeno has joined the channel [16:31] level09: what is exactly redis used for ? is it like mongodb ? [16:31] dgathright has joined the channel [16:31] pigmej: level09: nope it's not like mongodb [16:31] dall: app.use(middleware.redirect(app)); can i do it? [16:31] tjholowaychuk: level09 it's a fancy key/val store [16:31] pigmej: tjholowaychuk: well [16:31] tjholowaychuk: with other data types [16:31] dall: (redirect is my function) [16:31] tjholowaychuk: lists, hashes, blah blah [16:31] pigmej: in one of our projects we needed fast http routing [16:32] pigmej: escort was much faster than express [16:32] pigmej: in that scenario [16:32] unvamp: http://redis.io/commands [16:32] tjholowaychuk: lol... [16:32] pigmej: where 'much faster' was ~20-30% :-) [16:32] tjholowaychuk: faster is irrelevant if you dont have a bottleneck, and that's no way to scale regardless [16:32] tjholowaychuk: I'll use C because it's faster [16:32] tjholowaychuk: it'll take twice as long to write [16:32] tjholowaychuk: but hey [16:32] sw8sw8 has joined the channel [16:32] pigmej: tjholowaychuk: sure.. [16:32] pigmej: I told.. in that scenario :) [16:32] brianc: takes me about 10x as long to write actually [16:33] brianc: don't judge me [16:33] tjholowaychuk: it's like saying my template engine is faster than yours, it's a tiny piece of a much larger puzzle, and holds no weight [16:33] jeremyselier has joined the channel [16:34] dmcquay has joined the channel [16:34] pigmej: tjholowaychuk: sure that's why I said 'in that scenario' ;) [16:34] brianc: plus, the speed gain is so small...if you're in a position where you are actually getting so many requets your _routing_ is slowing you down, you prolly got the $ to hire someone to re-write it all for you in php & then compile it with hiphop, amiright? [16:34] pigmej: for sure express has much more functions etc [16:35] unvamp: haha [16:35] tjholowaychuk: it'll be faster until you throw in a db query and that takes 100x more time haha [16:35] unvamp: urright [16:35] tjholowaychuk: along with other logic [16:35] pigmej: tjholowaychuk: sure [16:35] pigmej: ;-) [16:35] pigmej: that's why I said 'in that scenario' ;) [16:35] tjholowaychuk: brianc yeah exactly, routing will NEVER be the bottleneck [16:35] tjholowaychuk: was "hello world" your scenario? [16:35] pigmej: tjholowaychuk: not really :) [16:35] pigmej: but some long url routing [16:35] tjholowaychuk: "hello" [16:35] tjholowaychuk: ? [16:36] tjholowaychuk: haha [16:36] pigmej: tjholowaychuk: well, the db that I used for it takes 'nothing' [16:37] pigmej: to insert :) [16:37] tjholowaychuk: nor does a regexp exec() [16:37] TheFuzzball has joined the channel [16:38] tjholowaychuk: you mgiht want to ditch connect too [16:38] tjholowaychuk: because it's dispatcher takes more time [16:38] springmeyer has joined the channel [16:38] ananamoose has left the channel [16:38] jetienne: tjholowaychuk: i look for a expressjs plugin to handle "more cooked" controllers. like rails or symfony bundles. any suggestion ? [16:38] pigmej: maybe, but current implementation with connect + escort works well ;-) [16:38] tjholowaychuk: jetienne: more cooked? [16:39] tjholowaychuk: express-resource has some implemented [16:39] pigmej: the tests was made ~1,5 month ago or something [16:39] tjholowaychuk: it's not complete though [16:39] TheFuzzball has joined the channel [16:40] __doc__: does node have something like the ctypes FFI? [16:40] AvianFlu has joined the channel [16:40] tjholowaychuk: __doc__ one of the joyent guys wrote a really slick node-ctype mod [16:40] tjholowaychuk: should be on GH somewhere [16:41] lukstr: tjholowaychuk: link! [16:41] kriszyp has joined the channel [16:41] lukstr: ACTION needs some lunch-time reading [16:41] jetienne: tjholowaychuk: ok will look at express-resource [16:41] jetienne: https://github.com/rmustacc/node-ctype ? [16:41] steffkes has joined the channel [16:42] lukstr: jetienne: with a name like that I would never have found it [16:42] pt_tr has joined the channel [16:42] halfhalo has joined the channel [16:42] jacobolus has joined the channel [16:42] __doc__: tjholowaychuk: that sounds cool [16:43] __doc__: tjholowaychuk: I thought about webgl in node.js :) [16:43] tjholowaychuk: pigmej: did a quick ab -n 5000 -c 50, and express is slightly "faster" [16:43] tjholowaychuk: for routing [16:43] elpinguino has joined the channel [16:43] tjholowaychuk: 10% faster [16:43] tjholowaychuk: so [16:43] tjholowaychuk: who cares [16:43] tjholowaychuk: haha [16:43] pigmej: tjholowaychuk: did you did something with performance since last 1,5 months? [16:43] minimalist has joined the channel [16:44] madsleejensen has joined the channel [16:44] TooTallNate has joined the channel [16:44] tjholowaychuk: not explicit, there have been changes obviously but not for performance reasons [16:44] tjholowaychuk: that's a dumb thing to optimize [16:44] wadey has joined the channel [16:44] colinclark has joined the channel [16:44] pigmej: especially in express ;) [16:44] tjholowaychuk: as long as you are not doing something really lame that is causing excessive slowness [16:44] blup: is it possible to call a node.io process from a regular nodejs module, and retrieve the results as a variable? [16:45] mapleman has joined the channel [16:45] pigmej: tjholowaychuk: will express be still compatible when router will be removed from connect completelly? [16:45] mike5w3c has joined the channel [16:45] tjholowaychuk: yeah [16:45] tjholowaychuk: express has it's own router now [16:45] tjholowaychuk: less of a lame hack [16:46] ekryski: tjhollowaychuk: so are you guys moving away from connect and trying to be stand alone? [16:46] bitwise_ has joined the channel [16:46] tjholowaychuk: nah [16:46] tjholowaychuk: i might leave router in, but dumb it down some more [16:46] tjholowaychuk: it doesn't make sense to have an opinionated router in core [16:47] tjholowaychuk: i kept extending it for express [16:47] colinclark_ has joined the channel [16:47] ekryski: just taking over the router functionality? [16:47] ekryski: fair enough [16:47] mapleman1 has joined the channel [16:47] tjholowaychuk: and frankly connect is meant to support frameworks, not used stand-alone other than small cases [16:47] tjholowaychuk: the only reason i might leave a simple version [16:47] tjholowaychuk: is for things like auth middleware [16:47] tjholowaychuk: which still could utilize path-based routing [16:47] tjholowaychuk: not positive if they do right now, I assume so [16:48] ekryski: ya. other than really basic servers. ya. I've been playing with everyauth. [16:48] tjholowaychuk: I'll have to do some review [16:48] brianc: everyauth is nice [16:48] brianc: could not get connect-auth to work [16:48] ekryski: it's a little more customizable than connect-auth. [16:48] brianc: examples totally out of date [16:48] ekryski: I started with connect-auth but switched over. [16:48] puffpio has joined the channel [16:51] pingularity has joined the channel [16:51] ekryski: tjhollowaychuk: are you heading down to OSCON? [16:51] pigmej: anyway tjholowaychuk does express have something like submouting in escort ? [16:51] dilvie has joined the channel [16:51] tjholowaychuk: pigmej: connect has mounting yeah [16:51] tjholowaychuk: and express has namespacing etc [16:52] tjholowaychuk: im not personally a fan of that stuff, but some people are [16:52] tjholowaychuk: ekryski nope [16:52] ekryski: why not? time? money? [16:52] tjholowaychuk: mostly time [16:53] pigmej: tjholowaychuk: submount is usefull for creating 'apis'... [16:53] tjholowaychuk: and i get really sick of flying to the US [16:53] dilvie: 'sup tj? [16:53] pigmej: when you have a lot of calls etc [16:53] ekryski: I'm thinking of going. Wondering if it is worth it. Would be nice to meet some of the peeps face to face [16:53] tjholowaychuk: pigmej: yeah, well that's why the options exist, I just dont personally like them [16:53] tomtomaso has joined the channel [16:53] lukstr: tjholowaychuk: I'm thinking of moving out to cali but flying to TO every weekend would suck :P [16:53] dilvie: going where? [16:53] tjholowaychuk: nice! [16:54] bene has joined the channel [16:54] CoinOpeBoy has joined the channel [16:54] tjholowaychuk: it wouldn't be so bad without customs [16:54] tjholowaychuk: and airports [16:54] lukstr: and planes? :P [16:54] tjholowaychuk: and planes [16:54] rio{ has joined the channel [16:56] knuthy has joined the channel [16:56] Fodi69 has joined the channel [16:56] lukstr: tjholowaychuk: I haven't really flown since customs got stupid, I wouldn't know what to expect [16:57] overra has joined the channel [16:57] jerrysv: ekryski: i'm not going, but am happy to grab a beer if you make it [16:57] `3rdEden has joined the channel [16:57] tjholowaychuk: lukstr: it's pretty lame, I'm just amazed how much time and money is put into keeping airlines "safe" [16:57] tjholowaychuk: when thousands of people die on roads daily [16:58] tjholowaychuk: or many other ways [16:58] ekryski: jerrysv: ok cool. I think my boss is going to send me. I just have to figure out if I wanna go for more than tuesday. You have an IM? [16:58] tjholowaychuk: planes are probably the 600000th most common way to die [16:58] lukstr: probably a larger number than that [16:58] dilvie: tj:lol [16:58] Corren has joined the channel [16:58] halfhalo: being in an empty room with gabe newell near dinner is the 1010th. [16:59] lukstr: halfhalo: you are a terrible person [16:59] lukstr: :) [16:59] halfhalo: yes, yes I am. [17:00] joshthecoder has joined the channel [17:00] bene has left the channel [17:00] Robdor has joined the channel [17:00] joshuaroesslein has joined the channel [17:01] xandrews has joined the channel [17:03] jonasen has joined the channel [17:03] Cleer has joined the channel [17:04] jtsnow has joined the channel [17:04] Yoric has joined the channel [17:04] sreeix has joined the channel [17:05] Gigawatt: in express how can i set an object to the view for all pages, so like set the set some static meta data such as sitename, description, keywords without having to set it in every page [17:05] dgathright has joined the channel [17:06] ekryski: are you using jade templating? [17:06] Gigawatt: yea [17:06] ekryski: you can set it as a local for layout [17:06] ekryski: which is the main layout template [17:07] Gigawatt: what you mean, neer used express before [17:07] Gigawatt: never* [17:07] Gigawatt: i was thinking something like: express.set("view data",config.meta); [17:07] Gigawatt: so that it's available for all pages [17:08] tjholowaychuk: Gigawatt: app.set('foo', 'bar') #{settings.foo} [17:08] Gigawatt: thanks [17:08] ekryski: how it works is you have "layout" template which is the common one across all pages. Then you can have other templates for specific pages. You can place your meta data in the layout template [17:08] tjholowaychuk: there are many more ways but that's what I would suggest for general settings [17:09] samuelj has joined the channel [17:10] samuelj: Hey guys, I have a quick question. What are your thoughts on using heroku or such like to run an app server, but then a separate static server that serves a skeleton page and loads some client-side js, which then pulls in everything from the app server. Would this add extra latency? Should I avoid this? And what are the other options? [17:11] ekryski: tjhollowaychuk: with Jade can you load dynamic javascript or css files depending on which page you are on? [17:12] brianc: samuelj: that's very common, it's called a "CDN" or asset server. You'll need to make sure they're on the same domain (but will require using different sub-domain) [17:12] onr has joined the channel [17:13] dilvie: brianc: I don't think that's what he's talking about. [17:13] brianc: oh [17:13] samuelj: I think it is... [17:14] samuelj: cdn == content deliver network ? [17:14] dilvie: samuelj: I believe that the future of web apps are going to be servers spitting out static DOM while the client-side JavaScript fetches content from an API server. Is that what you mean? [17:14] brianc: samuelj: correct [17:14] dilvie: oh, maybe I read it wrong. [17:14] samuelj: dilvie yeah that's what i meant [17:14] samuelj: sorry, i didn't know what cdn was [17:14] bwinton has joined the channel [17:14] jeroen| has joined the channel [17:14] Poetro1 has joined the channel [17:14] dilvie: cdn is content delivery network. It's not really the same concept. Content delivery network is just one way to serve up your static content. [17:14] brianc: samuelj: they make your site faster generally, and especially if it's a good CDN and your visitors are coming from geographically far away [17:15] samuelj: my question really is, if my app server, that spits out json, is on heroku, what should serve the initial skeleton? [17:15] samuelj: a separate heroku instance? [17:15] samuelj: just a plain old nginx instance on some other server? [17:15] dilvie: samuelj: You could easily combine a content delivery network with the client-side application concept to make everything a bit faster. [17:16] guark has joined the channel [17:16] dilvie: Samuelj: Akamai, Amazon Cloudfront, etc... [17:16] dilvie: ;) [17:16] samuelj: or should node.js just serve the static page in the same instance of the app? [17:16] samuelj: does that make sense? [17:17] brianc: samuelj: until you need massive scale just serve from node [17:17] dilvie: samuelj: at the app development stage, you don't really need to answer that question. It doesn't matter what you serve static content with. You can optimize that process later using a variety of router / server combinations. [17:17] brianc: samuelj: node (properly configured) is a super fast static file server [17:17] dilvie: I serve my static content with node until it's time to scale. [17:18] samuelj: ok [17:18] dilvie: But it certainly makes sense to serve that content with a different server instance. =) [17:18] Renegade001 has joined the channel [17:18] samuelj: ah right [17:18] samuelj: so for now [17:18] samuelj: my node app can run on heroku, in one instance [17:19] cafesofie has joined the channel [17:19] samuelj: and another instance could serve the initial static page, pulling in the data from the app instance [17:19] samuelj: and i could even use node to serve that static file [17:20] adrianmg has joined the channel [17:20] samuelj: but why should i use two different instances? [17:20] dilvie: yeah [17:20] samuelj: because i can optimise? [17:20] robi42 has joined the channel [17:20] dilvie: yeah [17:20] brianc: samuelj: just use 1 instance [17:20] samuelj: right [17:21] samuelj: and a request to the app could return the static page [17:21] samuelj: wait [17:21] samuelj: hang on [17:21] samuelj: two answers here [17:21] robot_jesus has joined the channel [17:21] dilvie: when it's time to scale, use 2 instances to start. =) [17:21] samuelj: i like the two instance approach, as it's closer to what i'd do when trying to scale [17:21] samuelj: sound ok? [17:21] dilvie: worry about which technology you use to serve the static content when you start to get a lot of traffic. =) [17:21] samuelj: yeah, i just like to do things properly :) [17:21] dilvie: sounds ok to me. =) [17:22] samuelj: thanks for the advice guys! [17:22] pingularity has joined the channel [17:23] kevwil has joined the channel [17:23] vid_ has joined the channel [17:23] coyo has joined the channel [17:23] mjr_ has joined the channel [17:24] saschagehlich has joined the channel [17:25] Poetro has joined the channel [17:26] pingularity has joined the channel [17:27] iammerrick has joined the channel [17:27] jonaslund has joined the channel [17:28] sweetd has joined the channel [17:30] FireFly|n900 has joined the channel [17:30] AvianFlu has joined the channel [17:32] isaacs has joined the channel [17:32] socketio\test\80 has joined the channel [17:33] drefined has joined the channel [17:34] socketio\test\27 has joined the channel [17:38] yozgrahame has joined the channel [17:38] jerrysv has joined the channel [17:39] Swizec: hey everyone [17:39] Swizec: what's a good strategy for testing event emitters? [17:40] sylvinus has joined the channel [17:43] asabil has joined the channel [17:43] harth has joined the channel [17:44] PeterPeterPeter has joined the channel [17:45] sfragis has joined the channel [17:46] DTrejo has joined the channel [17:47] carmony has joined the channel [17:47] admc has joined the channel [17:48] ceej has joined the channel [17:48] tjholowaychuk has joined the channel [17:48] jetienne: question to native english speaker. i got a promotion code for google adwords and they say "An expiration date often applies, so keep in mind that you only have a certain amount of time to redeem your credit." ... im not sure i understand 'redeem'... the expiration date is today at midnight.... does this mean i got 75euro if i enter the promotion code now... and will spend it later ? [17:48] jetienne: poorly asked :( [17:49] jetienne: should i spend my 75euro before the expiration date ? or should i just create the adword campain before the expiration date ? [17:49] darshanshankar has joined the channel [17:50] xerox: read the faq? [17:50] wink__: jetienne: redeem is still a little ambiguous in that context [17:50] jetienne: wink_: hmmm ok [17:51] samsonjs has joined the channel [17:53] kriszyp has joined the channel [17:53] jetienne: ok apparently it was : redeem == when you use the coupon [17:53] jetienne: not when you spend the money attached to the coupon [17:53] jetienne: thanks :) [17:54] boehm has joined the channel [17:54] dexter_e has joined the channel [17:55] swilson06 has joined the channel [17:55] berasa has left the channel [17:59] dve has joined the channel [18:01] voodootikigod: when anyone sees jgauthier [18:01] voodootikigod: please let me know [18:01] voodootikigod: kthxbai [18:01] broofa has joined the channel [18:03] saikat has joined the channel [18:03] killfill: hi [18:04] killfill: there was a npm package that helpd expose its methods as a REST api.. what was the name of it?.. [18:04] killfill: er.. i mean.. [18:04] isaacs: killfill: are you thinking of restify? or express? or dnode? [18:04] killfill: there was a npm package that helps expose a modules's methods as a REST api.. what was the name of it?.. [18:04] isaacs: killfill: dnode doesn't go over REST, it's just raw tcp, using the dnode protocol. [18:04] tjholowaychuk: killfill: I think nodejitsu has something like that [18:04] tjholowaychuk: as well [18:04] tjholowaychuk: not sure [18:05] isaacs: killfill: but it's just an object with methods [18:05] cafesofie has joined the channel [18:05] shinuza has joined the channel [18:05] killfill: yah, i know its death easy.. wanted to give it a look [18:05] isaacs: killfill: dnode({ doSomething: function (arg, cb) { console.log(arg); cb(arg + 10) }}).listen("localhost", 8080) [18:05] bradleymeck_: webservice.js ? [18:06] killfill: aah that was it.. webservice.js : [18:06] killfill: ) [18:06] isaacs: killfill: then in another program, you do dnode.connect("localhost", 8080, function (remote) { remote.doSomething(100, function (res) { /* res is 110 /* }}}) [18:06] killfill: ok thanks! [18:07] isaacs: oh, yeah, webservice.js. forgot about that one :) [18:07] AAA_awright has joined the channel [18:09] Steven_ has joined the channel [18:09] unvamp has joined the channel [18:11] broofa has joined the channel [18:14] dgathright has joined the channel [18:14] Murvin has joined the channel [18:14] scoates: I got "(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit." but if I try to set it, I get: "TypeError: Object function EventEmitter() { [native code] } has no method 'setMaxListeners'" ... any idea? [18:15] _beau: i had that error when the code was creating multiple listeners to the same event [18:15] christkv has joined the channel [18:15] _beau: make sure to remove the listener before adding it to the same event again [18:15] scoates: right; all of my plugins listen for the events [18:15] _beau: same events? [18:15] christkv: hey anyone having problems publish with npm ? [18:16] christkv: It's refusing too [18:16] christkv: and wiping out older versions [18:16] scoates: _beau: different objects, same events, yeah [18:16] _beau: sounds like thats the issue [18:16] bbrandon has joined the channel [18:17] RC1140 has joined the channel [18:18] isaacs: christkv: can you paste/gist the output you're seeing? [18:19] kal_ has joined the channel [18:20] langworthy has joined the channel [18:21] rworth has joined the channel [18:21] mkrecny has joined the channel [18:21] christkv: @isaacs https://github.com/isaacs/npm/issues/1100 [18:21] christkv: @isaacs the weird issue is that if I force it it wipes out older versions [18:22] nuba has joined the channel [18:22] christkv: @isaacs [18:22] christkv: let me gist the last one [18:23] christkv: @isaacs https://gist.github.com/1056845 [18:24] isaacs: christkv: ok, don't give a name to publish. [18:24] isaacs: christkv: just go into the folder, and type `npm publish` [18:25] isaacs: christkv: if you give it a name, that's for republishing something that's already published, which you probably don't want to do. [18:25] christkv: what is is trying to do when I add a name ? [18:25] christkv: ah interesting enough [18:25] christkv: if I do --force it will delete the latest version but still fail [18:25] isaacs: christkv: it's saying, "What's this mongo thing? Oh, it's mongo@latest, which is mongo@09.6. Lemme just download that, and then publish it." [18:26] christkv: oh I see :) [18:26] isaacs: christkv: you almost never want to do that. i have that functionality there mostly so that i can easily re-publish over things when an npm bug causes invalid stuff ot be in the package. [18:26] christkv: so that it worked in the past is just luck [18:26] isaacs: usually what you really wanna do is just "npm publish" in the package folder, or `npm publish ../some/folder` [18:27] isaacs: christkv: i'm pretty sure that never worked in the past. you probably didn't type "mongo" on the command line. [18:27] jeroen| has joined the channel [18:27] tjholowaychuk has joined the channel [18:27] isaacs: christkv: at least, i'm pretty sure it never did what you probably were thinking it does. [18:28] mike5w3c has joined the channel [18:28] christkv: it seems to freeze with gzip and bsdtar [18:28] jetienne has joined the channel [18:28] christkv: just hangs [18:29] kristsk has joined the channel [18:29] JohnnyL has joined the channel [18:29] cafesofi_ has joined the channel [18:29] level09 has joined the channel [18:29] scoates: _beau: ... I actually *want* more than 11 listeners, though. [18:30] mrryanjohnston: so i'm tryin gto understand nested documents with mongoose. I'd like to do something like this: http://jsfiddle.net/5H6Lj/ [18:30] kuya has joined the channel [18:30] sirganya: what's the best way to rewrite a URL with http-proxy? [18:30] kuya: hello, i dont suppose node has anything like id() in python does it? [18:31] christkv: @isaacs there definitively is something wrong [18:31] isaacs: oh? [18:31] isaacs: christkv: gist npm-debug.log, plz [18:31] tilgovi has joined the channel [18:31] christkv: @isaac 5 minutes hanging with gzip + tar running at 90+% [18:32] isaacs: christkv: yeah, that's a problem. kill it [18:32] christkv: ok seems like it published [18:32] isaacs: christkv: maybe `npm cache clean`, then just do `npm publish` in the package folder. [18:32] christkv: checking [18:32] isaacs: sure. [18:32] christkv: npm cache clean [18:32] wookiehangover has joined the channel [18:32] christkv: ok [18:32] isaacs: $ npm view mongodb version [18:32] isaacs: 0.9.6-2 [18:32] isaacs: that's what i'm seeing [18:32] scoates: has setMaxListeners just been moved in 0.4.x, and the error message not updated? [18:32] christkv: cool [18:33] jj0hns0n has joined the channel [18:33] isaacs: '0.9.6-2': '2011-06-30T18:31:49.113Z' } [18:33] isaacs: ircretary: what time is it? [18:33] ircretary: isaacs: It's 2011-06-30T18:33:10.418Z by my watch, sir. [18:33] isaacs: looks about right [18:33] christkv: @isaacs thanks for the help mate [18:33] isaacs: np [18:33] isaacs: weird about the tar/gzip 90% cpu thingie [18:33] isaacs: that's not gooda. [18:34] christkv: could be either node 0.4.9 or npm 1.0.15 [18:34] scoates: the docs don't seem to think so. http://nodejs.org/docs/v0.4.7/api/events.html#emitter.setMaxListeners ... is this not require('events').EventEmitter.setMaxListeners ? [18:34] pjacobs: mrryanjohnston, that's what I'm about to get into aswell. Is that not working for you? [18:36] Mrfloyd_ has joined the channel [18:38] al3xnull_ has joined the channel [18:39] mrryanjohnston: pjacobs: I'm getting TypeError: Cannot call method 'push' of undefined currently [18:39] mrryanjohnston: so no :P [18:39] mrryanjohnston: as in no it's not [18:41] kuya: does anyone know anything about browserify and socket.io? [18:42] dtan has joined the channel [18:43] hij1nx has joined the channel [18:43] kuya: SubStack: know anything about browserify and socket.io? i found a tweet by you about it... [18:44] cafesofie has joined the channel [18:45] saikat has joined the channel [18:46] asobrasil has left the channel [18:46] Aria has joined the channel [18:46] pjacobs: mrryanjohnston, have you tried simply = instead of push? [18:47] mrryanjohnston: no I haven't actually [18:47] mrryanjohnston: one sec [18:47] jetienne has joined the channel [18:47] shinuza has joined the channel [18:49] drefined has joined the channel [18:49] pjacobs: mrryanjohnston, try blogpost.comments.push({req.body.commentbody}); [18:51] isaacs: kuya: SubStack knows pretty much as much as anyone in the whole universe about Browserify [18:53] pjacobs: mrryanjohnston, in fact, how about this: blogpost.comments.push({title: req.body.commentbody}); [18:54] kuya: isaacs: thanks [18:54] pjacobs: mrryanjohnston, another way would be to make an instance of Comments, and passing it as a var. Might be the cleaner approach [18:55] SubStack: kuya: socket.io just got browserify support recently [18:56] kuya: SubStack: do i need to use the git version of one of them? [18:56] SubStack: which just involved adding a "browserify" : "./somepath/to/the/browser/file.js" [18:56] SubStack: to the package.json [18:56] SubStack: so you can require('socket.io') browser-side now [18:56] kuya: thats what id like [18:56] kuya: is it committed in any branch? [18:56] kuya: fork/branch/something [18:56] SubStack: it's in the development branch last I saw [18:57] brianc1 has joined the channel [18:57] kuya: SubStack: doesnt look like it ... [18:57] kuya: https://github.com/LearnBoost/socket.io/blob/develop/package.json [18:58] `3rdEden: it's in the master SubStack kuya [18:58] `3rdEden: and you should be looking at socket.io-client [18:58] `3rdEden: not socket.io [18:58] `3rdEden: we renamed the repos [18:58] `3rdEden: https://github.com/LearnBoost/socket.io-client/blob/master/package.json#L6 [18:58] mrryanjohnston: pjacobs: yeah I was just trying to follow the mongoose page where they don't save comments as a separate document [18:59] kuya: aha! [18:59] mrryanjohnston: pjacobs: also did that work for you? the last suggestion? My server slowed to a crawl [18:59] hink has joined the channel [18:59] kuya: so i need to npm install socket.io-client or something and require('socket.io-client') ? [18:59] kuya: or.. [19:00] isaacs: kuya: oh, yeah, i think socket.io changed its naming convention around a little bit recently. rauchg you around? [19:00] SubStack: oh sweet, yeah this: $ npm view socket.io-client browserify [19:00] SubStack: ./dist/socket.io.js [19:00] isaacs: hooray for extensible metadata! [19:01] kuya: ACTION blinks  [19:01] isaacs: we chould call json XJSON because it's eXtensible!~ [19:01] kuya: i never saw that command [19:01] isaacs: kuya: yeah, npm view is probably my favorite. [19:01] kuya: uurrrmmm [19:01] kuya: ACTION still hasnt got a clue what he's doing  [19:02] rauchg: kuya [19:02] rauchg: socket.io-client is both the browser client and node client, although the node part is still under construction [19:03] rauchg: socket.io is the node server which also ships the client (that you can reference through