[00:01] vikstrous has joined the channel [00:01] M28 has joined the channel [00:02] chjj has joined the channel [00:05] M28: When is the new cluster api coming out? :( [00:05] skm has joined the channel [00:05] deoxxa: is there a mysql module with a mongoskin-like interface available? [00:06] marlun has joined the channel [00:07] joaojeronimo: M28: there's a new cluster api coming out ? where are the specs for that ? Maybe it's coming in v8.0 ? [00:07] M28: look on the bug tracker [00:07] M28: the current one is going to be scrapped [00:08] satyr has joined the channel [00:08] joaojeronimo: M28: good.. I had to make some witchcraft to get what I wanted from the current cluster module... [00:08] chjj has joined the channel [00:09] deoxxa: 8.0? that's a while away [00:11] achiu1 has joined the channel [00:13] chjj has joined the channel [00:15] boltR has joined the channel [00:16] kirbysayshi has joined the channel [00:17] yaymukund has joined the channel [00:17] jetienne_ has joined the channel [00:18] patcito has joined the channel [00:20] kesor: i found vim-jade, anyone knows where I can find vim syntax for style? [00:21] kesor: oh, found it. [00:21] chjj has joined the channel [00:22] justicefries has joined the channel [00:22] ohtogo has joined the channel [00:24] vikstrous has joined the channel [00:26] supertask has joined the channel [00:26] kesor: omg, vim jade syntax … its so beautiful, makes me want to cry … ;( [00:26] chjj has joined the channel [00:28] mape has joined the channel [00:30] argami has joined the channel [00:30] bkaney has joined the channel [00:31] chjj has joined the channel [00:32] Vespakoen_ has joined the channel [00:33] SubStack: dscape: yeps [00:33] sammmy: bouncy routes.json 80 -> node.js:201 [00:33] sammmy: throw e; // process.nextTick error, or 'error' event on first tick [00:33] sammmy: What's up with bouncy? [00:35] al3xnull has joined the channel [00:35] yaymukund: anyone have experience with superagent? I'm getting ECONNREFUSED when I do a simple request.get('/', function(res) { console.log(res); }); [00:36] localhost has joined the channel [00:37] yaymukund: my server is running on localhost:3000, and db is up. I can visit the page in my browser. [00:40] yaymukund: ah, specifying an absolute path works ('http://localhost:3000/', but is less pretty. [00:41] gf3 has joined the channel [00:43] bandu has joined the channel [00:43] tomasm- has joined the channel [00:45] kesor: can i run something like "node app.js" but with app.coffee instead, without compiling it and so that server reloads each time I change app.coffee ? [00:45] kvda: How do you use partials with Underscore/Hogan with Node? Can't seem to figure it out [00:45] tomasm-: hi, is there any way with socket.io long-polling (not web sockets) to utilize a single connection for both server pushing and client pulling? I noticed once I switched from websockets to long polling that any polling on my clients ended up being a separate connection each and every call.... I want to avoid excessive sockets opening/closing every 5 seconds as that slows the browser down significantly [00:46] kvda: kesor, I think you'll need an auto-reloading package [00:46] kesor: kvda: oh, think I just figured it out. I'll run "coffee -w app.coffee" and "node app.js" at the same time ... [00:47] tomasm-: or a way to have multiple commands use the same network request? it seems to open a new request every time I call it, even if it's every 5 seconds [00:47] sammmy: How can I debug bouncy to figure out what's going wrong? [00:47] benvie has joined the channel [00:47] agnat_ has joined the channel [00:48] Druid_ has joined the channel [00:50] nicholas_ has joined the channel [00:50] k1ttty has joined the channel [00:51] ajpiano has joined the channel [00:53] tomasm-: is the very nature of 'long-polling' that one task be handled per request and a new socket be opened afterwards, rather than keeping it open and somehow streaming data as long as possible? [00:53] ziro` has joined the channel [00:53] tomasm-: and is there a way to keep the socket open for multiple requests? [00:54] kesor: no, you seem to be missing the point a bit. [00:55] kesor: there are several methods to implement long-polling techniques, one of them is closing the connection after "some" data was sent. but other methods like websockets for example are all about keeping an open tcp connection. [00:55] tomasm-: yes, well websockets arent an option given that I cant count on browser support... so I have XHR and JSONP to count on [00:55] andrehjr_ has joined the channel [00:56] kesor: something interesting I hear about jsonp a while ago, is that because jsonp callbacks are variable, its much harder to cache … thought it an interesting point. [00:56] tomasm-: what is the 'htmlfile' transport option for socket.io? I see the list of transports but no explanation [00:56] tomasm-: ie the difference between XHR and JSONP [00:57] lsdafjklsd has joined the channel [00:57] thinkt4nk has joined the channel [00:57] chjj has joined the channel [00:57] kesor: jsonp is mostly needed for cross-domain access anyway, with same-domain it can be safely avoided altogether. [00:58] YoY has joined the channel [00:58] tomasm-: I also see something about xhr-multipart [01:00] kvda: What's the most powerful tempting engine for Node? [01:00] kesor: depends on what you mean by power [01:01] zomg: I'd guess EJS because you can just embed any JS code in your templates :P [01:01] benvie: and tempting [01:01] benvie: some things are less sexy than others [01:01] kvda: zomg that about sounds what i'm looking for [01:01] deoxxa: allow me to whore out https://github.com/deoxxa/node-ginger [01:01] kesor: looks like jade is quite popular, its a kind of haml. and mustache/hogan are more minimalistic. [01:01] deoxxa: (my templating language thingy) [01:01] kvda: kesor, actually all i really want at this point is simple if/else and include funcs [01:02] tomasm-: is there a way to minimize browser slowdown from excessive socket opening/closing (while keeping things pretty active, ie 5 second intervals) without using websockets? Or do I need to move to a server-push model instead of a client-pull model? [01:02] kesor: kvda: jade does that. [01:02] kvda: I don't like the Jade syntax [01:02] kvda: it seems so unnecessary [01:02] chjj has joined the channel [01:02] kesor: i like it. it enforces clean code. [01:03] deoxxa: it also enforces HTML [01:03] superlou has joined the channel [01:03] deoxxa: ._. [01:03] kvda: yeah and HTML is already HTML, don't see the need to abstract it [01:03] zomg: Mustache is nice but sometimes it makes you jump through extra hoops [01:03] zomg: When you just want to do something simple but it won't let you [01:04] kvda: with hogan.js, the docs are not there, and partials are weird, you have to pass it on the view func [01:04] kvda: ie you cant just have partials call in the template [01:04] kvda: yeah exactly zomg [01:04] warz: yea, i bailed on mustache templates. [01:04] kvda: might have to go with python/jinja2 on this build [01:04] tomasm-: I have to worry about long polling performance, without websockets as an option, and am trying to see if there's a way to do so using pure client pulling every 5 seconds... or if it's better/easier to design a push+pull architecture of the system to keep performance better (though this adds tremendous complexity to the system) [01:04] deoxxa: https://github.com/deoxxa/node-ginger << based on jinja2 syntax [01:05] warz: i've been using swig, which is a jinja clone basically. [01:05] deoxxa: (note the name) [01:05] warz: https://github.com/paularmstrong/swig [01:05] kesor: i always hated jinja2. it allows too much power where it should be really forbidden. [01:05] kvda: I haven't looked up Ginger and Swig yet, thanks guys [01:05] r04r has joined the channel [01:05] kvda: power is good [01:05] kesor: not where it should be avoided. [01:06] kesor: too much power makes you write code that you cant maintain two weeks after you wrote it. [01:06] kvda: I haven't had that experience, and jinja2 walks that tight rope quite nicely [01:07] lakkris has joined the channel [01:07] kesor: had my share of projects that had loops in django models.py, then again on the same things loops in views.py, and then again several loops in the jinja2 templates ... [01:07] kvda: Ah [01:07] chjj has joined the channel [01:07] kvda: I see what you mean [01:07] kesor: and people were wondering why the system was so slow … when the main page did 10k sql hits on the db. [01:08] deoxxa: that's a bit silly [01:08] zomg: Should've used MongoDB! [01:08] warz: doesnt sound like a jinja problem. :p [01:08] kvda: Haha! [01:08] zomg: Because MongoDB is web scale, 10k hits, pffft [01:08] kesor: i worked on trying to fix it for half a year, and then I just quit. [01:08] sammmy: How could I debug bouncy? [01:08] sammmy: I'm using the command-line tool from bouncy, not the app. [01:09] kesor: yeah, i'm working on a mongodb system right now … don't get me started on the atrocities that are still used in this system. [01:09] kvda: Swig looks hotness [01:10] r04r has joined the channel [01:11] deoxxa: the parser is a bit :x [01:11] warz: yea, the parser code is a little fugly. heh. [01:12] kvda: what are the maturity levels of Swig vs Ginger? [01:12] kvda: hardest thing with node is choosing the packages [01:12] warz: but, having tried to fit mustache templates into my work flow for a few months, i finally just said fuck it and picked a different engine [01:12] chjj has joined the channel [01:13] zomg: I'm using Mustache in some PHP stuff [01:13] zomg: We can use same template on both PHP and JS ends [01:13] zomg: That's the only reason really :P [01:13] deoxxa: kvda: i'm biassed, obviously, and i've only seen swig for the first time today, but i'm using ginger in production at work and it seems pretty stable. i started it about 4 months ago. [01:13] warz: what does the mean, though? in nodejs land, pretty much all the popular choices can run on both browser and server. [01:14] igl1 has joined the channel [01:14] warz: i guess mustache is a pretty widely portable format though, or whatever. [01:14] warz: implementations in basically any language [01:15] kvda: deoxxa, bookmarked it [01:15] kvda: hogan.js fails silently.. ugh [01:15] HacDan has joined the channel [01:16] papple has left the channel [01:16] kvda: Time to try Swig/Ginger [01:16] deoxxa: if you have questions, let me know [01:16] neoesque has joined the channel [01:16] kvda: thanks deoxxa [01:17] kvda: well one thing I assume will work is "npm install ginger"? (It's missing from github's readme.md) [01:17] deoxxa: ah, yes [01:17] deoxxa: *blush* [01:17] chjj has joined the channel [01:17] qjcg has joined the channel [01:17] kvda: -__- [01:17] relling has joined the channel [01:19] argami has joined the channel [01:20] mandric has joined the channel [01:20] supertask has joined the channel [01:20] dtrejo has joined the channel [01:21] gr4yscale has joined the channel [01:22] cainus: any flatiron resourceful users alive in here? I'm trying to figure out how to do an explicit validation... [01:30] pendlepa_ has joined the channel [01:31] alejandromg has joined the channel [01:31] vikstrous has joined the channel [01:33] sammmy: Is nodemon good for production? [01:34] boltR has joined the channel [01:34] socketio\test\23 has joined the channel [01:37] rwaldron has joined the channel [01:38] chjj has joined the channel [01:39] deoxxa: what's the best module for producing XML? [01:40] cainus: deoxxa: elementree looks alright [01:40] netxshare: anyone around that could take a look at some code [01:41] netxshare: I am not sure if I am doing something wrong it can't be done the way I am doing it [01:41] deoxxa: ACTION takes a look-see [01:41] netxshare: http://www.privatepaste.com/ce98816d5e [01:41] deoxxa: oh a rackspace module, neat [01:42] alejandromg: netxshare: try to add a return this at the end of Server (I guess) [01:43] deoxxa: that's some dubious indenting [01:43] deoxxa: i smell c&p [01:43] zackattack: how can i use socket io in conjunction with cookies? [01:45] karterk has joined the channel [01:45] chjj has joined the channel [01:45] netxshare: alejandromg: thanks for the idea, but still a no go [01:45] cainus: zackattack: cookies are in the http client, not the ws client [01:45] zackattack: i doubt it [01:45] zackattack: i'm sure cookies are sentsomewhere [01:46] kjs3 has joined the channel [01:46] cainus: you doubt what? [01:46] cainus: cookies are sent over http [01:46] gr4yscale has joined the channel [01:47] alejandromg: netxshare: and all the others variables are defined? host, port etc? [01:47] jacobolu_ has joined the channel [01:47] zackattack: cainus: cookies = handshakeData.headers.cookie [01:48] cainus: yeah that's before the 100 response / protocol change AFAIK [01:49] cainus: err 101 [01:49] dekub has joined the channel [01:49] kesor has joined the channel [01:50] zackattack: what are you talking about [01:50] chjj has joined the channel [01:50] TheDahv has joined the channel [01:50] zackattack: what 101 protocol change? [01:50] cainus: you're looking at the cookies at handshake-time [01:50] zackattack: so? [01:50] cainus: for ws, it connects with http first, then changes to ws when it gets the 101 [01:51] laner has joined the channel [01:51] c4milo has joined the channel [01:51] cainus: looks like socket.io does the work for you anyway: http://stackoverflow.com/questions/2701373/websockets-authentication [01:52] jacquestardie has joined the channel [01:52] briancra_ has joined the channel [01:52] satyr has joined the channel [01:53] zackattack: exactly [01:54] adamkittelson has joined the channel [01:58] TheDahv: Hey, I've got a question: If I'm trying to pipe a string from 'echo' to '/usr/bin/xclip', what would be good things to troubleshoot if xclip is hanging? [01:58] TheDahv: The xclip child process is acting like it is never getting the end of the stream [01:59] socketio\test\65 has joined the channel [01:59] chjj has joined the channel [01:59] bingomanatee has joined the channel [02:00] TheDahv: I'm talking about the section starting at line 164 if anybody is interested in looking at code [02:00] TheDahv: https://github.com/TheDahv/link-keeper/blob/feature/copy-command/link-keeper.coffee [02:01] streblo has joined the channel [02:01] alejandromg has joined the channel [02:03] zackattack: cainus: looks like i have to somehow map handshakes to connection clients [02:04] chjj has joined the channel [02:05] lsdafjklsd has joined the channel [02:05] r04r has joined the channel [02:06] Brandon_R has joined the channel [02:06] Brandon_R: does anyone know how to build libuv on windows using mingw? [02:07] abraxas has joined the channel [02:09] chjj has joined the channel [02:09] alejandromg has joined the channel [02:10] r04r has joined the channel [02:10] crutex has joined the channel [02:11] TheDahv: My goodness. I wonder if there is a way to get irssi to not print status messages. Really noisy [02:11] TheDahv: So any experience with piping things between processes? [02:11] EyePulp has joined the channel [02:12] Brandon_R: does anyone know how to build libuv on windows using mingw? [02:12] argami_ has joined the channel [02:12] baudehlo has joined the channel [02:14] r04r has joined the channel [02:14] r04r has joined the channel [02:15] alexmcpherson has joined the channel [02:15] aniero has left the channel [02:16] argami has joined the channel [02:16] Brandon_R: got it [02:17] Emmanuel has joined the channel [02:18] seanstickle has joined the channel [02:18] jacobolus has joined the channel [02:19] argami has joined the channel [02:20] st_luke has joined the channel [02:20] argami has joined the channel [02:21] HacDan has joined the channel [02:23] stonebra_ has joined the channel [02:24] HomeBrand: does anyone know where I can get some help with matador? [02:24] stonebra_ has joined the channel [02:25] cesar_ has joined the channel [02:25] karterk_ has joined the channel [02:26] ragnok has joined the channel [02:26] medicalwei has joined the channel [02:28] rwaldron has joined the channel [02:30] joshfinnie has joined the channel [02:31] ragnok: hi, i'm learning javascript and jquery, as i want to become a front end developer.I know html and css already. now i'm starting to learn ajax, and i noticed there's a need of a backend/database.Most of the tuts out there, relate the ajax call to PHP. wich js libs could i use, to replace the php for my ajax calls? i do not want to learn php, javascript was already a lot for me. [02:31] colinwd has joined the channel [02:31] ioscale: btw… regarding the method_missing earlier today.: i found this https://gist.github.com/1648257 [02:32] ppppaul has joined the channel [02:32] sdwrage has joined the channel [02:32] ioscale: does anyone have experiences with proxies?!? expensive or not so much?!? [02:32] kevwil has joined the channel [02:36] Authoritariani-1 has joined the channel [02:36] zackattack has joined the channel [02:37] mikeal has joined the channel [02:37] sammmy: ioscale: in last couple of hours, yes. XP [02:40] supertask has joined the channel [02:40] Authoritarianism has joined the channel [02:41] dr0id has joined the channel [02:41] zackattack: cainus: this is what i ended up doing [02:41] zackattack: var req = client.manager.handshaken.clientId.headers; req.cookies = require('connect').utils.parseCookie(req.cookie); [02:43] cainus: hmm I'm surprised it doesn't already do that, but that's good you got it going... [02:43] ioscale: sammmy: i just found this: http://jsperf.com/proxy-cost [02:43] ioscale: proxies really suck :) [02:43] sammmy: ioscale: proxies for what? [02:44] sammmy: I thought you were talking about HTTP proxies. [02:44] ioscale: oooh no :) [02:44] ioscale: actually harmony proxies [02:44] ioscale: around other objects i.e. for emulating method_missing-like behaviour in javascript. [02:45] kvda has joined the channel [02:45] Authoritarianism has joined the channel [02:45] sammmy: ioscale: not familiar with those [02:46] alejandromg has joined the channel [02:46] vikstrous has joined the channel [02:49] snez has joined the channel [02:49] ioscale: just left the java camp and thought i could escape the whole talk around beans'n'shit and there comes coffeescript to mess up my day :( [02:49] rurufufuss has joined the channel [02:51] EhevuTov has joined the channel [02:53] joshontheweb has joined the channel [02:53] saikat has joined the channel [02:54] thinkt4nk_ has joined the channel [02:58] dylang has joined the channel [03:00] Brandon_R: still having problems [03:00] yaymukund: kind of tired of the modules all being named after edibles... node-roast-beef-sandwich [03:00] zackattack: does node have an equivalent of "raise"? [03:01] zackattack: besides throw; ? [03:02] PsiliPharm has joined the channel [03:02] ioscale: what's the part missing from throw that is covered by raise? [03:03] a_meteorite has joined the channel [03:04] vikstrous has joined the channel [03:04] r04r has joined the channel [03:06] huggies has joined the channel [03:06] disappearedng has joined the channel [03:07] qjcg has joined the channel [03:07] smorin has joined the channel [03:09] r04r has joined the channel [03:11] arvidkahl has joined the channel [03:12] bkaney has joined the channel [03:13] HomeBrand: damn undefined [03:13] achiu1 has joined the channel [03:13] devongovett has joined the channel [03:17] noganex has joined the channel [03:19] jxie has joined the channel [03:20] khrome has joined the channel [03:20] kvda has joined the channel [03:21] meandi2 has joined the channel [03:22] Brandon_R: i keep getting undefined reference to uv_default_loop [03:22] Brandon_R: any ideas [03:24] jacobolus has joined the channel [03:37] ohtogo has joined the channel [03:39] kvda: Anyone know of a good file/dir watcher? [03:40] stevengill has joined the channel [03:42] liguang has joined the channel [03:42] boltR has joined the channel [03:43] Avanine has joined the channel [03:43] hipertracker_ has joined the channel [03:46] ppppaul: what does express.js do? REST, db connection... anything else? [03:46] vikstrous has joined the channel [03:46] systemfault: ppppaul: controllers? :/ [03:47] ppppaul: like backbone routes? [03:47] systemfault: It has a router, yes [03:47] ppppaul: is it like ruby on rails? [03:48] systemfault: I haven't played with ruby on rails so I cannot tell.. BUT, it's supposely close to sinatra [03:48] kvda: ppppaul i think it's meant to be like Sinatra [03:48] systemfault: Rails is heavy. [03:48] ppppaul: ok [03:49] RobWC has joined the channel [03:50] RobWC has left the channel [03:50] Karmaon: When would I use node-binary over node.js's Buffers [03:51] RobWC has joined the channel [03:53] Spion has joined the channel [03:54] tornad has joined the channel [03:54] ditesh|cassini has joined the channel [03:56] k1ttty has joined the channel [03:57] pp01bit has joined the channel [03:57] CrypticSwarm has joined the channel [03:58] ryanrolds has joined the channel [03:59] Vennril has joined the channel [04:01] RobWC has joined the channel [04:01] RobWC has left the channel [04:06] Poetro has joined the channel [04:06] jhooks has joined the channel [04:06] Zebra12 has joined the channel [04:07] Zebra12: anyone know a library similar to https://github.com/jorritd/node-watch ? [04:08] Zebra12: node watch works okay, but i can't define different 'on change' events for different directories ~ [04:10] hggtgg has joined the channel [04:10] yaymukund: Zebra12: I've been using forever for deploys [04:10] CarterL has joined the channel [04:11] Lorentz: while true; do node app.js; done; [04:11] Lorentz: in a screen [04:11] hggtgg has left the channel [04:11] Zebra12: yaymukund: not actually using node-watch for deploys. I'm watching files for changes and running a few processing operations on them [04:11] Lorentz: (obviously I don't do this, but somehow I have a feeling someone out there does something similar) [04:12] yaymukund: Zebra12: ah, gotcha [04:14] gavin_huang has joined the channel [04:15] Vainoharhainen has joined the channel [04:17] mattgifford has joined the channel [04:19] bmf90 has joined the channel [04:20] nrmL has joined the channel [04:21] alek_br has joined the channel [04:23] alek_br has left the channel [04:23] tahu has joined the channel [04:24] ditesh|cassini has joined the channel [04:27] cesar_ has joined the channel [04:35] al3xnull has joined the channel [04:36] timoxley has joined the channel [04:37] satyr has joined the channel [04:37] dnolen has joined the channel [04:37] petschm_ has joined the channel [04:38] alejandr1mg has joined the channel [04:41] rwaldron has joined the channel [04:45] sreeix has joined the channel [04:47] pradeepbv has joined the channel [04:50] ghanima has joined the channel [04:51] mikeal has joined the channel [04:52] ghanima has left the channel [04:55] TooTallNate has joined the channel [04:56] mikeal has joined the channel [04:59] Wizek has joined the channel [05:00] brainss has joined the channel [05:02] alm0nd has joined the channel [05:03] vicapow has joined the channel [05:04] alm0nd has joined the channel [05:08] Zebra12 has joined the channel [05:08] dubenstein has joined the channel [05:08] Zebra12: was wondering if anyone had any ideas about pre-processing template files and creating separate localized versions [05:11] tk has joined the channel [05:15] obvio171 has joined the channel [05:16] recycl3 has joined the channel [05:16] framlin: guada moaga [05:22] blueadept has joined the channel [05:22] blueadept has joined the channel [05:24] icewhite has joined the channel [05:26] kPb_in has joined the channel [05:27] campo has joined the channel [05:34] joaojeronimo has joined the channel [05:34] sammmy: Anyone here use nodemon? [05:35] joaojeronimo: I do [05:35] csprite has joined the channel [05:36] skm has joined the channel [05:37] Telobit has left the channel [05:38] Zebra12: yes [05:40] sammmy: joaojeronimo, Zebra12: Is it good for production? [05:40] Zebra12: I've never used it for production [05:40] joaojeronimo: sammmy: why would you use it for production ? [05:40] Zebra12: shouldn't really be useful in production [05:40] Zebra12: probably other problems if it is [05:40] sammmy: joaojeronimo: if there's an error it doesn't crash the entire site. [05:41] joaojeronimo: sammmy: Take a look at the up module [05:42] sammmy: joaojeronimo: cannot find it in npm [05:42] joaojeronimo: sammmy: well if there's an error you'll have to step in and correct your code so it can restart again... I think that in production your code should be bullet proof [05:42] sammmy: joaojeronimo: but how do you ever know if your code is full proof? [05:43] joaojeronimo: sammmy: https://github.com/LearnBoost/up [05:43] sammmy: There could be a mysql error or something that throws it off. [05:43] alex_burke has joined the channel [05:43] tprice has joined the channel [05:43] joaojeronimo: sammmy: you test it... you write code that expects and knows how to deal with those situations [05:44] sammmy: In other words you catch the mysql errors before they bubble up? [05:44] magn3ts has joined the channel [05:45] level09 has joined the channel [05:45] sammmy: I suppose that throws aren't such a good idea then..because everytime you throw it bubbles up to the console? [05:45] joaojeronimo: sammmy: take a look at this: http://en.wikipedia.org/wiki/Crash-only_software it's more or less the following: your software should handle a lot of situations, but at a user generated fault it simply restarts [05:46] zackattack has joined the channel [05:47] alex_burke has left the channel [05:47] cainus: sammmy: throws are a great idea. you have to catch them though. [05:47] joaojeronimo: catch them and log them [05:48] cainus: or just recover from them if possible [05:48] sammmy: cainus: How do you catch them though if you have these insanely nested callbacks, hopping around in your code? [05:48] kPb_in has joined the channel [05:48] sammmy: joaojeronimo: That's what I need to set up, a logger. I'm using Express. [05:48] insanoid has joined the channel [05:49] cainus: well with callbacks it's different... usually your callbacks will take an error as the first param... obviously you need to check if that's non-null [05:49] kvda has joined the channel [05:49] cainus: all the time :\ [05:49] joaojeronimo: sammmy: I use loggly with everything, some files for rare things [05:49] sammmy: is up like nodemon? [05:49] kPb_in_ has joined the channel [05:50] joaojeronimo: sammy: up is very different from nodemon. It's designed to keep your application up, nodemon is for development [05:51] sammmy: joaojeronimo: how is up different from nodemon? [05:51] joaojeronimo: sammmy: nodemon is to keep you from having to restart your application everytime you edit something, up created a cluster of servers from your application, if one of these servers goes down you still have the others up, and the one that went down is restarted. Also, when you edit the file, it will make a graceful restart [05:52] sammmy: so the only thing up and nodemon have in common is that up restarts on working directory changes? [05:52] joaojeronimo: a graceful restart means not stopping the "old code", start running your "new code", then when all the clients that you were serving with the "old code" go away, the "old code" goes away too and you have your server running 100% the "new code" [05:53] joaojeronimo: sammmy: up ->gracefully<- restarts... It does not leave anyone hanging, it's perfect for production [05:53] sammmy: joaojeronimo: I see. So what constitutes a client being served, or a client going away? [05:53] sammmy: and HTTP connection? [05:53] sammmy: an* [05:53] briancra_ has joined the channel [05:53] joaojeronimo: sammmy: nodemon makes your app actually restart, meaning all the requests you were serving is stopped and your clients are left hanging [05:54] joaojeronimo: sammmy: yes [05:54] sammmy: So does it proxy all client http requests to separate instances of my app? [05:54] joaojeronimo: I'm sorry I meant that a client being served is in fact someone with a client app such as a browser making an HTTP request to your website based on express [05:55] joaojeronimo: sammmy: yes it does [05:56] sammmy: But aren't HTTP requests short lived, does this mean that these "graceful" restarts can happen fairly quickly (depending on how much traffic my site gets)? [05:56] Telenull_ has joined the channel [05:56] Telenull has joined the channel [05:56] vikstrous has joined the channel [05:57] westg has joined the channel [05:57] sammmy: Are there any disadvantages to using up? [05:57] sammmy: Is there any information lost by using a proxy? [05:58] westg: information lost? [05:58] joaojeronimo: sammmy: I'm not 100% sure but from what I read I think that these graceful restarts happen when your "old code" finished serving the requests it was serving when you put in your "old code" [05:58] sammmy: westg: Yes, like request information. [05:58] kirbysayshi has joined the channel [05:58] westg: up helps node "up" [05:58] westg: that's the point [05:58] sammmy: westg: sounds good to me. :) [05:58] joaojeronimo: sammy: in the up github page it says "Works at the HTTP request level. It never drops requests or destroys Keep-Alive sockets while reloading." [05:59] westg: a proxy doesn't have anything to do with creating worker processes to transparently hand over control when the new processess are ready [05:59] kejun has joined the channel [05:59] niloy has joined the channel [05:59] sammmy: So, I can basically just use up with the & flag and be done with it? [05:59] westg: basically yes [06:00] westg: for more advanced stuff, no [06:00] sammmy: What about socket connections? [06:00] joaojeronimo: westg: actually I think that you have a proxy on top of those workers [06:00] take_cheeze has joined the channel [06:00] westg: and I would not use & [06:00] westg: nohup is BAD [06:00] westg: use forever if you wan to do that [06:00] westg: want* [06:00] sammmy: forever? [06:00] sammmy: & is called nohup? [06:01] westg: forever is a "&" replacement and can also be used to watch file changes [06:01] westg: forever + up is the best production combo imo [06:01] westg: or you can just have up running in a screen session [06:01] westg: that's what I'm doing ^ [06:02] westg: idk how any linux user works over ssh without screen [06:02] westg: or even locally on the terminal [06:02] sammmy: what's a screen session? [06:02] westg: it's like having windows open on Windows [06:03] westg: you can "minimize" and "maximize" them at will [06:03] saimukesh has joined the channel [06:03] westg: so it allows you to have a bunch of virtual terminal sessions essentially [06:03] westg: and you can easily switch between them with a few key commands [06:03] westg: really cool stuff [06:04] sammmy: is it all cmd line based? [06:04] westg: it's for the terminal [06:04] westg: bash [06:04] westg: I'm talking about unix [06:05] Morkel has joined the channel [06:05] sammmy: command-line based I mean (not to be confused with cmd.exe, sorry for that little confuzzle) [06:05] westg: yea [06:05] westg: no gui [06:05] sammmy: I see. [06:05] westg: that's why it's awesome [06:05] westg: because it's seamless [06:06] westg: no switching to a "gui-like" interface [06:06] sammmy: However, I don't _need_ this at the moment. Maybe I can watch a demo of it on youtube or something, but for now I'm keeping it simple. [06:07] sammmy: So why is nohup bad? [06:07] sammmy: Is it okay to use nohup with bouncy? [06:08] westg: for example: I have two screen sessions running right now. one for my two database programs: redis on "window" 1, mongod on "window" 2. then in another session I have my node app running with up in window 1, htop running in window 2, and a blank terminal on window 3 [06:08] westg: isk what bouncy is [06:08] westg: idk* [06:08] westg: nohup isn't that reliable I think [06:09] westg: and I think the process to kill a nohup process isn't that clean [06:09] westg: forever does a better job for the specific use with node [06:10] owen1: I have User.updatePrices(user) that calls Scrapper.run for each product of user. my goal is to save the user in the db with the results of the scraping. I need some sort of a hash that is shared between all those callbacks, and i need to know when the last callback was called. how do i achieve that? [06:13] sammmy: westg: kill is pretty simple/clean? [06:13] sammmy: bouncy is a proxying module for node js [06:14] sammmy: Are screens persistent; to they continue to run even after you exist out of your ssh session? [06:15] vikstrous has joined the channel [06:16] westg: screens are persistant [06:16] westg: yes [06:16] westg: you can try nohup with up [06:16] westg: it might actually not make a difference [06:16] westg: but I used to use forever before since it watched files as well [06:19] trivol has joined the channel [06:19] sammmy: screen seems pretty cool, and not too complicated to use (I'm guesssing) [06:19] sammmy: I like how they terminal windows in screen are persistent. So I can log into my VPS at any time, fireup screen, and view any error logs and what not. [06:21] sammmy: Though, how do you continue a screen session? [06:21] cjm has joined the channel [06:23] ewalker has joined the channel [06:24] michaelmartinez has left the channel [06:25] Doikor: sammmy: screen -r [06:26] sammmy: Doikor: if you forget the -r does it trash your old session? [06:26] Doikor: -r just attaches you back to your old session [06:27] Doikor: -rd reattaches you if you happen to be attached to it from somewhere else [06:29] jkridner____ has joined the channel [06:33] sammmy: You mean you can have multiple sessions? [06:33] sammmy: Like, you can have two sessions to come back to? [06:34] sammmy: How can I view all the running screen sessions? [06:35] Zharktas: you can have multiple screen and open them with an pid [06:35] Zharktas: or you can have multiple windows in one screen [06:35] MerlinDMC has joined the channel [06:36] al3xnull has joined the channel [06:36] zackattack has joined the channel [06:40] tornad has joined the channel [06:40] nsolsen has joined the channel [06:41] sammmy: Can screen windows print output while I'm not attached or even SSH-ed into my server? [06:41] enjalot has joined the channel [06:42] andris9 has joined the channel [06:42] MerlinDMC: sammmy, yes [06:43] sammmy: Could sessions replace error logs? [06:43] sammmy: error log files* [06:43] Doikor: why would you want to do that? [06:43] Doikor: something happens that crashes your whole server. you loose all your logs [06:44] sammmy: good point [06:44] MerlinDMC: sammmy, scrren does not have infinite scrollback buffer [06:44] Doikor: yeah and theres that [06:44] sammmy: so, the answer is an obvious no. :P [06:44] MerlinDMC: and ever tried to grep on a already printed output? ;) [06:45] sammmy: That too [06:46] sammmy: If my app crashes with an error while it's being run with up, does up crash or does it restart my app? [06:46] MerlinDMC: i would see it as an opportunity to see the last program state ... but not as a replacement for a logfile [06:47] joshontheweb has joined the channel [06:48] sammmy: MerlinDMC: Yeah [06:48] owen1: sammmy: i use tmux. it's like screen with great defaults. [06:48] owen1: sammmy: i use it even for my irc chat. so i am always online [06:49] sammmy: Well, I don't need to get into screen or similar right now. I have to just focus on node stuff. [06:49] owen1: http://blog.hawkhost.com/2010/06/28/tmux-the-terminal-multiplexer/ [06:49] sammmy: I'll get more sophisticated with my bash tools as I go. [06:49] owen1: how to share a datastructure (let's say a hash) between multiple callbacks? [06:51] MerlinDMC: owen1, the dirty way ... global.xx ... better (perhaps) a Registry Pattern like singleton :) [06:51] icewhite has joined the channel [06:51] deeprogram has joined the channel [06:51] Chel: question: how can i read file list from a folder by chunks ? [06:51] Chel: i have a express.get('/collecton', function() {}); where i need to read files 10 per page [06:53] owen1: MerlinDMC: i have a loop that make about 50 calls to a scraping function. i want to store the results of each scrape in a key of a hash, and when the hash is full, to do something else. does that make sense? [06:53] skm has joined the channel [06:54] MerlinDMC: owen1, buffering before doing time consuming io ... makes sense [06:54] MerlinDMC: owen1, i use resque to store jobs and work them down in parallel ... so i don't need to buffer the stuff in my app [06:54] owen1: MerlinDMC: i appologize. i didn't understand the global.xx, or the singletone or the buffring... [06:55] owen1: MerlinDMC: so u'r saying i can store the scraping as jobs in some sort of queuing solution. [06:55] graeme_f has joined the channel [06:55] deeprogram has joined the channel [06:56] owen1: not sure what 'buffer in my app' means. [06:56] MerlinDMC: owen1, take a look at this http://blog.mixu.net/2011/02/02/essential-node-js-patterns-and-snippets/ [06:58] dai1741 has joined the channel [06:58] owen1: MerlinDMC: thanks. the guy got anther interesting post [07:03] kvda has joined the channel [07:05] kvda has joined the channel [07:07] pvankouteren has joined the channel [07:11] uchuff has joined the channel [07:11] jdeibele has joined the channel [07:12] niftylettuce: anyone here with knowledge of EventsEmitter and node_events.h removal in node 0.6.x please lend me a hand, see chat in #express [07:15] legless_nigga has joined the channel [07:15] legless_nigga: ite lads [07:15] boltR has joined the channel [07:16] legless_nigga: anyone receiving duplicate messages when sending messages across processes with node cluster? [07:16] legless_nigga: (latest stable version) [07:18] SamuraiJack has joined the channel [07:19] deeprogram has joined the channel [07:20] ctp6360 has joined the channel [07:21] hellp has joined the channel [07:22] tonist has joined the channel [07:22] ewalker has joined the channel [07:23] alex_burke has joined the channel [07:25] TTSDA has joined the channel [07:25] noganex has joined the channel [07:26] neshaug has joined the channel [07:28] rbright has joined the channel [07:28] rbright has joined the channel [07:29] rbright has joined the channel [07:33] owen1: niftylettuce: i didn't know about #express. thanks [07:34] yawNO has joined the channel [07:34] Morkel has joined the channel [07:36] bingomanatee: Hey do any of you guys have idle computers, want to help me process mars data? [07:40] `3rdEden has joined the channel [07:40] sammmy: Does up work for Express apps? [07:41] michael has joined the channel [07:41] michael: hello everyone [07:41] michael: i am new here [07:45] hipsters_ has joined the channel [07:46] Morkel has joined the channel [07:48] sammmy: I'm getting a ton of errors after running 'up -w app.js'. I'll pastebin them.. [07:49] kPb_in has joined the channel [07:49] sammmy: http://pastebin.com/Vw2XzpqL [07:50] Zharktas: you can't use the same port for different processes [07:50] Zharktas: that error comes when you try to use a reserved port [07:51] sammmy: Zharktas: I'm using port 8000 [07:51] sammmy: At least, in my app.js [07:51] sammmy: Is up trying to use another port? [07:52] sammmy: Also, how do I view all the currently used ports? [07:52] ph^ has joined the channel [07:53] djcoin has joined the channel [07:54] Zharktas: use nmap localhost [07:56] orlandovftw has joined the channel [07:56] Zharktas: or netstat [07:56] orlandovftw has joined the channel [07:57] simenbrekken has joined the channel [07:57] satyr has joined the channel [07:58] k1ttty has joined the channel [07:58] josh-k has joined the channel [07:58] sammmy: I was able to get up to work when I removed my .listen(8000) from app.js and added a --port argument to the up command [07:59] sammmy: Is there a way to get up to use the port that my app is using? [08:02] aliem has joined the channel [08:02] tvw has joined the channel [08:03] kPb_in has joined the channel [08:04] muddo has joined the channel [08:06] fangel has joined the channel [08:07] tylerstalder has joined the channel [08:07] groom has joined the channel [08:08] imakewebthings has joined the channel [08:12] spolu has joined the channel [08:12] gasbakid has joined the channel [08:13] stonebranch has joined the channel [08:13] sammmy: Is simply not returning the express.createServer() not enough for up? [08:14] jerck has joined the channel [08:14] jerck has left the channel [08:14] rlidwka has joined the channel [08:14] yaymukund has joined the channel [08:15] killnine has joined the channel [08:16] Swaagie has joined the channel [08:18] AD7six has joined the channel [08:18] dob_ has joined the channel [08:18] dpino has joined the channel [08:19] emattias has joined the channel [08:20] sammmy: Idk why I keep getting these EADDINUSE errors from up. Which address is in use?! [08:20] sammmy: ACTION is going to bed on this one. [08:21] [AD]Turbo has joined the channel [08:21] [AD]Turbo: hi there [08:23] kjeldahl has joined the channel [08:24] gavin_hu_ has joined the channel [08:24] socketio\test\64 has joined the channel [08:25] rlidwka: sammmy: you could define server.on('error') callback to see which server is complaining [08:25] skm has joined the channel [08:26] cosmincx has joined the channel [08:26] kjeldahl has joined the channel [08:27] [[zz]] has joined the channel [08:29] herbySk has joined the channel [08:30] deeprogram: hi ? do you know any module that can compress content for express response content ? [08:31] salva has joined the channel [08:35] timoxley has joined the channel [08:36] al3xnull has joined the channel [08:36] blup has joined the channel [08:37] tornad has joined the channel [08:40] ccare has joined the channel [08:40] hz has joined the channel [08:41] djazz has joined the channel [08:42] ctp6360 has joined the channel [08:43] glen has joined the channel [08:43] glen: does node 0.6.x build with newer v8 too thatn 3.6.6.x? [08:44] stagas has joined the channel [08:49] krawd has joined the channel [08:54] rio{ has joined the channel [08:55] jimt has joined the channel [08:56] imakewebthings: glen: 0.6.12,13 uses 3.6.6.24 [08:56] imakewebthings: but no idea on building with [08:57] insin has joined the channel [08:58] bradleyg has joined the channel [08:59] markwubben has joined the channel [09:00] graeme_f has joined the channel [09:01] whitman has joined the channel [09:02] hipsters_ has joined the channel [09:02] davidbanham has joined the channel [09:03] misza222 has joined the channel [09:05] kPb_in has joined the channel [09:06] epokmedia has joined the channel [09:06] thalll has joined the channel [09:07] dai1741 has joined the channel [09:09] josh-k has joined the channel [09:09] jomoho has joined the channel [09:10] robhawkes has joined the channel [09:11] dobber has joined the channel [09:12] pickels_ has joined the channel [09:13] secreteagle has joined the channel [09:13] secreteagle: 742! [09:13] mehlah has joined the channel [09:13] secreteagle: ..ok [09:14] eivindfjeldstad has joined the channel [09:14] glen: i just looked gentoo packages, they have node 0.6.13, not no v8 3.6.6 (but do have 3.7, 3.8, 3.9) [09:15] cosmincx has joined the channel [09:16] tomasztomczyk has joined the channel [09:16] secreteagle: can any1 recommend a app framework for me to try with node pls? [09:17] pickels_ has joined the channel [09:17] rlidwka: express? [09:17] stonebranch has joined the channel [09:17] secreteagle: uhm,,thx [09:17] secreteagle: worded it wrong, app fw with UI etc [09:18] secreteagle: more high level [09:18] eivindfjeldstad: does that even exist? [09:18] rlidwka: what do you mean? [09:19] eivindfjeldstad: I think he's looking for Dreamweaver [09:19] level09 has joined the channel [09:19] eivindfjeldstad: for node [09:19] secreteagle: ye :) [09:19] secreteagle: like a app builder i guess [09:19] rlidwka: the more high level would be "hey, you over there! yes, yes, you. You will be developing feature X today". :) [09:20] secreteagle: all this loow level stuff ..its like re-doing things over n over [09:20] rlidwka: express does have app builder [09:20] secreteagle: really?! who? [09:20] netxshare: anyone know if there is a http client module that supports outgoing ip binding? [09:20] n26 has joined the channel [09:21] eivindfjeldstad has left the channel [09:21] secreteagle: no it doesnt exist yet [09:21] rlidwka: secreteagle: they do have "express" command, is that it? :) but these builders really sucks. [09:21] netxshare: okay thanks [09:21] ewalker has joined the channel [09:22] criswell has joined the channel [09:22] kukkelundin has joined the channel [09:22] Treffynnon has joined the channel [09:22] tschundeee has joined the channel [09:23] secreteagle: rlidwka: i'm readin up on all the fw's,,n the more i read, the less i know what i'm looking for really [09:23] __doc__ has joined the channel [09:23] kukkelundin: I like express [09:24] maritz has joined the channel [09:24] DuoSRX has joined the channel [09:24] secreteagle: express is cool [09:25] kukkelundin: That said, I haven't really used any other frameworks that much [09:25] huggies has joined the channel [09:26] Vainoharhainen has joined the channel [09:27] blup has joined the channel [09:27] shinuza has joined the channel [09:27] secreteagle: well nice thing with node is u can do anything :D make ya own if u wanna [09:28] secreteagle: i like the "blank sheet" concept n u can put anything onto it [09:28] rendar has joined the channel [09:30] bergie has joined the channel [09:30] secreteagle: asp had javascript on the backend since like 10 years ago,,its nothing new (jscript?) [09:31] erujolc has joined the channel [09:32] disappearedng has joined the channel [09:32] rlidwka: i dont think they have these javascript modules working asyncronously with filesystem and anything else [09:34] rlidwka: server side js was out there for quite some time, right (for example, based on FF engine - is it called seamonkey?) [09:34] rlidwka: but there was always sync IO afaik [09:35] secreteagle: heard of that one never tried it tho [09:37] secreteagle: u'd hav vb in back in vb in the front ie browser,,n everyone would love the idea [09:37] secreteagle: i mean back in the ms days [09:38] rlidwka: owww... i wouldn't want to remember that :) [09:38] secreteagle: lol [09:39] secreteagle: but it was exactly the same exp back then [09:39] eldios has joined the channel [09:40] michaelhartau has joined the channel [09:40] aesptux has joined the channel [09:41] emattias_ has joined the channel [09:41] kukkelundin: I think asp.net 2.0 has support for async io [09:42] kukkelundin: but i'm not entirely sure [09:43] karterk has joined the channel [09:43] nicklas_ has joined the channel [09:44] nicklas_: Anyone got npm install pg working under windows? [09:44] LordMetroid has joined the channel [09:46] erikzaadi has joined the channel [09:49] tonist has joined the channel [09:50] pors has joined the channel [09:50] Joeysomo has joined the channel [09:51] djazz has left the channel [09:51] TomY has joined the channel [09:53] icebox has joined the channel [09:55] secreteagle has joined the channel [09:56] tobias1 has joined the channel [09:56] kukkelundin: I'm getting some really lame exceptions, and I have no idea if it's my fault, or if there's a bug in core [09:58] kukkelundin: ServerResponse trying to destroy a socket that doesn't exist [09:59] kukkelundin: any tips on how I would go about debugging this? [09:59] tobias1 has left the channel [10:00] polyrhythmic has joined the channel [10:01] rlidwka: comment out some code until bug is disappeared [10:01] rlidwka: when you will have a very few lines of code with your bug, post it somewhere in public [10:02] tobias1 has joined the channel [10:03] xSmurf has joined the channel [10:03] markwubben has joined the channel [10:03] kukkelundin: Yup, that seems like a good idea [10:04] kukkelundin: It only happens in our production environment, though [10:04] kukkelundin: maybe once an hour [10:07] argami has joined the channel [10:07] pickels has joined the channel [10:09] garrensmith has joined the channel [10:10] HardFu has joined the channel [10:10] HardFu has joined the channel [10:12] Vainoharhainen has joined the channel [10:12] upb has joined the channel [10:12] upb has joined the channel [10:14] level09: whats the official nodejs redis module ? [10:14] rlidwka: what do you mean "official"? [10:15] HardFu: non is official [10:15] sandfox has joined the channel [10:15] HardFu: although https://github.com/fictorial/redis-node-client/ is the most used [10:15] HardFu: ah no [10:16] HardFu: https://github.com/mranney/node_redis [10:16] HardFu: this one [10:16] HardFu: :) [10:16] HardFu: sry [10:16] rlidwka: there are no such things as "official libraries" except of a very few set of standard modules [10:16] rlidwka: level09: so look for most used modules [10:16] LordMetroid: This is ridiculus! I have my databases installed but I can not get drivers working [10:16] level09: yeah node_redis seems like it [10:17] sandfox has joined the channel [10:17] jetienne_ has joined the channel [10:17] level09: it is recommended in the redis website [10:17] level09: by the way [10:17] level09: did any 1 work on a python / node integration ? [10:17] framlin: LordMetroid: whats ridiculus about that? [10:18] LordMetroid: npm ERR! Valid OS: linux,darwin,freebsd,sunos,windows [10:18] LordMetroid: npm ERR! Valid Arch: any [10:18] LordMetroid: npm ERR! Actual OS: win32 [10:19] rlidwka: xD [10:19] rlidwka: try "npm -f ..." [10:19] LordMetroid: ok [10:19] boltR has joined the channel [10:20] rlidwka: and report it to package maintainers... smells like a bug [10:23] LordMetroid: How do I find the package maintainer, I suppose christkv / node-mongodb-native on github is the wrong place to file such a bug report [10:25] dannyamey has joined the channel [10:26] glen has left the channel [10:26] maritz: what package? [10:26] LordMetroid: I have no idea [10:26] maritz: whatß [10:26] maritz: ? [10:26] LordMetroid: I just type npm install [10:27] maritz: where? [10:27] LordMetroid: on my computer [10:27] maritz: ....... [10:27] maritz: really? i though on a bathroom mirror [10:27] LordMetroid: Correction, it is the companies computer [10:27] sandfox: LordMetroid: look for a package.json somewhere... [10:27] sandfox: sandfox: on your computer [10:27] maritz: maritz: sandfox is pining himself :D [10:28] maritz: *pinging [10:28] sandfox: dammit… muppet [10:28] tvw has joined the channel [10:28] kukkelundin: soon I won't have any hair left. this exception is driving me crazy [10:29] maritz: kukkelundin: i prefer deskfacing over hairpulling. i have a huge nose anyways, so it doesn't matter if i crush it a little. [10:29] kukkelundin: I actually prefer punching stuff [10:29] maritz: oh yeah. like interns [10:30] kukkelundin: but my hand got messed up when i punched the wall [10:30] kukkelundin: it hurts too much [10:30] maritz: kukkelundin: seriously though, that's a fucking pain to debug. first step would be to somehow reproduce it in an environment where you actually CAN reproduce it [10:30] maritz: *CAN debug it [10:30] maritz: damnit, i'm unable to type properly today, wtf? [10:31] kukkelundin: yup [10:31] LordMetroid: sandfox: Thanks, found the url for bugs [10:31] legless_nigga: yo anyone uses socketio with redis? how can i setup socketio to use it? [10:31] maritz: LordMetroid: note that it might be an error in a submodule [10:32] maritz: that's why i asked what you're trying to install, so i can check as well [10:32] jacquestardie has joined the channel [10:32] LordMetroid: mongodb [10:32] kukkelundin: I could just override the prototype, OutgoingMessage.prototype.destroy [10:33] kukkelundin: and check if the socket exists [10:33] LordMetroid: I fileda bug report [10:33] maritz: legless_nigga: you can try #socket.io if you don't get an answer here and please tell them to fucking document it already :D (i don't know either) [10:33] kukkelundin: but that would hurt my soul [10:33] LordMetroid: https://github.com/christkv/node-mongodb-native/issues/550 [10:33] legless_nigga: maritz lol [10:33] hipsters_ has joined the channel [10:33] legless_nigga: gotta do that [10:33] legless_nigga has left the channel [10:34] maritz: LordMetroid: ok, everything's fine then. thanks :) [10:34] LordMetroid: np [10:38] devongovett has joined the channel [10:38] dai1741 has joined the channel [10:39] _JSilva has joined the channel [10:39] kukkelundin: are we allowed to swear in here? [10:40] HardFu: fuck no [10:40] LordMetroid: Only if it appropriate [10:42] kukkelundin: After busting my for three straight days, trying to get things to work decently in IE, that fucking mess of a browser [10:43] kukkelundin: my balls* [10:43] kukkelundin: I'm left with no hair, a broken hand and a mysterious exception [10:43] _ralph has joined the channel [10:43] kukkelundin: fucking great! [10:44] stafamus has joined the channel [10:44] LordMetroid: kukkelundin: Do not try to get things working with IE, the sooner people realizes they are using a stupidly inadequate software the sooner they will switch [10:44] versicolor has joined the channel [10:45] kukkelundin: 20% of our visitors are using IE [10:46] LordMetroid: so 20% shall occupy 80% of your time? [10:46] kukkelundin: As much as I would like to, I can't just tell them to fuck off [10:46] joshontheweb has joined the channel [10:46] brianseeders has joined the channel [10:46] kukkelundin: more like 90% [10:47] LordMetroid: Time that could be spent to do other much more profitable things [10:48] kukkelundin: no doubt [10:48] LordMetroid: So why are you irrationally trying to please idiots who uses IE? [10:48] kukkelundin: client wants it to work with IE6 [10:49] LordMetroid: Tell the client we are living in 2012 [10:49] kukkelundin: IE10 is actually a decent browser [10:50] LordMetroid: It is time to move on [10:50] tornad: kukkelundin: good answer to client who ask site to work with IE6 is that IE6 is not more yet supported by Microsfot [10:51] tornad: no more supported.. sorry [10:51] kukkelundin: thats a great argument [10:52] k1ttty has joined the channel [10:52] shedinja_ has joined the channel [10:52] kukkelundin: but that time is already spent [10:53] LordMetroid: Next time [10:53] kukkelundin: and I'll never get it back [10:53] larsschenk has joined the channel [10:53] larsschenk has left the channel [10:56] tomasztomczyk has joined the channel [10:56] bandu has joined the channel [10:57] vam3c has joined the channel [10:57] freppa has joined the channel [10:57] arduix has joined the channel [10:58] vam3c_ has joined the channel [10:58] a_suenami has joined the channel [10:58] Hephaistos has joined the channel [10:59] vam3c has joined the channel [11:02] rurufufuss_ has joined the channel [11:03] mikl has joined the channel [11:03] dekub has left the channel [11:04] tobias1 has left the channel [11:04] robm has joined the channel [11:04] Topcat_ has joined the channel [11:05] hackband has joined the channel [11:07] vam3c has joined the channel [11:07] vam3c_ has joined the channel [11:10] cosmincx has joined the channel [11:11] freppz has left the channel [11:11] csprite has joined the channel [11:12] vam3c has joined the channel [11:13] vam3c_ has joined the channel [11:14] rlidwka has joined the channel [11:14] ccare has joined the channel [11:20] DrPheltRight has joined the channel [11:21] fermion has joined the channel [11:21] groom has joined the channel [11:21] josh-k has joined the channel [11:22] ph^_ has joined the channel [11:23] lsdafjklsd has joined the channel [11:24] jacobolus has joined the channel [11:24] imakewebthings has joined the channel [11:26] n26 has joined the channel [11:28] dylang has joined the channel [11:29] enmand has joined the channel [11:30] kPb_in_ has joined the channel [11:30] tschundeee has joined the channel [11:31] ph^ has joined the channel [11:32] savudin has joined the channel [11:33] haandol has joined the channel [11:34] maritz: should've just installed chrome frame on your IE and set the bugs to CANNOT REPRODUCE [11:35] maritz: then if someone comes you can show them that it works flawlessly on your pc and that it must be an issue on their end. [11:35] deoxxa: heh [11:35] maritz: if they catch on, you can still say that you forgot about chrome frame and that it was an accident :D [11:36] haandol has joined the channel [11:36] deoxxa: at work we do all sorts of stuff with websockets and canvas, the whole "does this work in IE" question is never even asked [11:36] jomoho has joined the channel [11:36] deoxxa: it's just assumed that the answer is "no, haha" [11:36] maritz: well then, does it? [11:37] maritz: i don't even know when i last opened IE :D [11:37] deoxxa: and no, it doesn't [11:37] deoxxa: (as far as i know) [11:37] deoxxa: (haven't tested) [11:38] gabrtv has joined the channel [11:38] Doikor: IE9 should support websockets and canvas [11:38] karterk has joined the channel [11:39] krawd: IE9 should implement Gecko lol [11:39] Doikor: never had any problems with those in it. Most problems you get with IE9 are with CSS anyway so canvas should be just fine. [11:40] maritz: most problems with any IE versions have been css problems for me :( [11:41] hipsters_ has joined the channel [11:41] maritz: i suck at css though (compared to js/php/etc) [11:41] Doikor: yesh it just renders everything very badly. But thats not a problem if you are using canvas [11:41] aesptux has joined the channel [11:42] maritz: no double margin bugs inside canvas? BOOORING [11:43] Doikor: and last i checked ie9 javascript was faster then what firefox uses [11:43] Doikor: though its been a while so that might have changed [11:45] snearch has joined the channel [11:46] dwhittle has joined the channel [11:46] cole_gillespie has joined the channel [11:47] madhums has joined the channel [11:50] Davsebamse has joined the channel [11:50] stepheneb has joined the channel [11:51] Davsebamse: Hey. Is the node binary possible to stand on it own, or do I need some some other libraries (other than ldd tells me)? I want to see how little I can make a node binary on my ubuntu 64 bit [11:52] benvie: standalone [11:53] sugyan has joined the channel [11:53] deoxxa: seems to be about 6MB for me [11:54] deoxxa: i copied the node binary from one machine to another just now, with the second machine having never had node installed, and it worked [11:54] deoxxa: that's 0.4.12, btw [11:54] deoxxa: later versions will be different, i suppose [11:54] deoxxa: jeez, that box is still on 0.4.12 [11:54] deoxxa: sad [11:54] Davsebamse: hmm yes [11:54] Davsebamse: I use the latest, and I can cram it down to 9.2M [11:55] benvie: weird [11:55] benvie: it's under 5M on windows [11:56] Davsebamse: if I strip ssl else do I get a 11 M binary [11:56] Davsebamse: hmm with everything? and the latest? [11:56] benvie: that's not debug version is it? [11:56] benvie: yeah [11:56] benvie: 0.7.6 [11:57] Davsebamse: no debug is set [11:57] Davsebamse: hmm I use 0.6.13 [11:57] benvie: but all the 0.6.x versions on windows were around 5m too [11:58] Davsebamse: hmm ok [11:58] benvie: most I saw was a bit over 5 [11:58] Davsebamse: I wonder the linux version is including the [11:58] Davsebamse: n [11:59] gabrtv has joined the channel [11:59] thinkt4nk has joined the channel [11:59] haandol has left the channel [11:59] haandol has joined the channel [11:59] Davsebamse: but anyway, thanks for the input [11:59] benvie: no problem [12:03] AviMarcus has joined the channel [12:04] baudehlo has joined the channel [12:07] jacobolus has joined the channel [12:07] karterk has joined the channel [12:08] AviMarcus: ahah. So the reason you can't simply tell node.js to use multiple cores for processing the event loop is because it's possible you'd be writing to the same variable from different threads. Is this correct? [12:08] AviMarcus: (I mean why it wasn't engineered to be possible) [12:09] qwe has joined the channel [12:10] Davsebamse: AviMarcus: have you looked at http://nodejs.org/api/cluster.html? [12:11] AviMarcus: I just started looking at the various solutions [12:11] AviMarcus: I first wanted to understand why it couldn't be done natively [12:12] Davsebamse: ah ok [12:16] stepheneb has joined the channel [12:18] vam3c has joined the channel [12:19] vam3c has left the channel [12:19] framlin: AviMarcus: I think, if there would be more than one thread one would have all problems that occure with more than one thread (concurrency) and the global namespace would be one of them, reentrance would be another I guess [12:20] kkszysiu_work has joined the channel [12:21] Davsebamse: it do not need to be a issue, but when you would need to use locks, and that would conflict to easy with the event based model [12:23] redir has joined the channel [12:25] tobias1 has joined the channel [12:27] garrensm_ has joined the channel [12:28] subbyyy has joined the channel [12:28] bmf90 has joined the channel [12:28] skomski has joined the channel [12:29] fumanchu182 has joined the channel [12:30] versicolor has joined the channel [12:30] fairwinds has joined the channel [12:31] lsdafjklsd has joined the channel [12:32] thinkt4nk has joined the channel [12:32] jmar777 has joined the channel [12:33] vam3c_ has joined the channel [12:35] arthurdebert has joined the channel [12:36] tobias1 has left the channel [12:37] al3xnull has joined the channel [12:40] skomski has joined the channel [12:41] vam3c has joined the channel [12:42] bmf90 has joined the channel [12:44] sharkbird has joined the channel [12:45] akshayms_ has joined the channel [12:46] sadjow has joined the channel [12:47] gavin_huang has joined the channel [12:47] deeprogram has joined the channel [12:48] xiaoneng101 has joined the channel [12:48] justicefries has joined the channel [12:48] sdwrage has joined the channel [12:50] nicholas_ has joined the channel [12:51] pradeepbv has joined the channel [12:52] thinkt4nk has joined the channel [12:52] ziro` has joined the channel [12:52] deeprogram has joined the channel [12:54] _akshayms has joined the channel [12:55] shinuza has joined the channel [12:55] merlin83 has joined the channel [12:56] webguynow has joined the channel [12:56] dantalizing has joined the channel [12:56] dantalizing has joined the channel [12:58] M1l3n1um has joined the channel [12:59] bnoordhuis has joined the channel [13:02] AaronMT has joined the channel [13:03] spolu has joined the channel [13:07] TheDudeKnows has joined the channel [13:10] deeprogram has joined the channel [13:11] Progster has joined the channel [13:13] CarterL has joined the channel [13:13] hipsters_ has joined the channel [13:14] totallymike has joined the channel [13:14] xippi has joined the channel [13:14] xippi has joined the channel [13:14] lduros has joined the channel [13:14] madtimber has joined the channel [13:15] aklt has joined the channel [13:15] bkaney has joined the channel [13:16] pandeiro has joined the channel [13:19] cesar_ has joined the channel [13:19] rwaldron has joined the channel [13:20] copongcopong has joined the channel [13:20] TheDudeKnows has joined the channel [13:21] c4milo has joined the channel [13:21] _akshayms has joined the channel [13:21] plutoniix has joined the channel [13:21] pors has joined the channel [13:22] erichynds has joined the channel [13:24] artusrocha has joined the channel [13:25] redir has joined the channel [13:26] CIA-19: node: 03Your Name 07master * rfb47a33 10/ test/common.js : test: changed instances of == to === - http://git.io/qTHl3w [13:28] bodisiw has joined the channel [13:29] rook2pawn: does ejs turn characters like < > into < > ?? not sure if EJS is doing this from <%= value%> where value has "<" [13:31] dob_ has joined the channel [13:32] AndreasMadsen has joined the channel [13:32] vkareh has joined the channel [13:32] pradeepbv has joined the channel [13:33] saml has joined the channel [13:33] secreteagle1 has joined the channel [13:33] CromeDome has joined the channel [13:34] Abutre has joined the channel [13:35] redir_ has joined the channel [13:35] akshayms_ has joined the channel [13:37] TheJH has joined the channel [13:39] devdazed has joined the channel [13:39] MartinCleaver has joined the channel [13:39] crutex has joined the channel [13:40] cosmincx has joined the channel [13:40] voodootikigod has joined the channel [13:42] willwhite has joined the channel [13:42] c4milo has joined the channel [13:44] blueadept has joined the channel [13:44] Cromulent has joined the channel [13:45] JSONB has joined the channel [13:45] tmcw has joined the channel [13:45] bLiNdRaGe has joined the channel [13:45] n26 has joined the channel [13:46] arthurdebert has joined the channel [13:47] ccare_ has joined the channel [13:50] wink_ has joined the channel [13:51] stepheneb has joined the channel [13:51] jocafa has joined the channel [13:52] hipsters_ has joined the channel [13:52] willwhite has joined the channel [13:54] dkastner has joined the channel [13:56] stepheneb_ has joined the channel [13:56] stepheneb has joined the channel [13:56] hswe has joined the channel [13:57] kirbysayshi has joined the channel [13:57] rauchg has joined the channel [13:57] adambeynon has joined the channel [13:57] davidsklar has joined the channel [13:58] CromeDome has joined the channel [13:59] stepheneb_ has joined the channel [14:00] dthompso99 has joined the channel [14:00] hackband has joined the channel [14:01] pendlepa_ has joined the channel [14:01] rauchg has joined the channel [14:02] maritz: rook2pawn: try it?! [14:03] hzin has joined the channel [14:05] i42n has joined the channel [14:05] jtsnow has joined the channel [14:06] rauchg has joined the channel [14:06] rook2pawn: maritz: it does.. i just hack the output with jquery on ready :( until i found out how to disable that escaping special chars [14:08] deeprogram has joined the channel [14:08] thomblake has joined the channel [14:09] thomblake has left the channel [14:10] pendlepa1ts has joined the channel [14:10] Joeysomo has joined the channel [14:10] TomY has joined the channel [14:10] baudehlo has joined the channel [14:11] haandol has joined the channel [14:12] mattrobenolt has joined the channel [14:12] Doikor: anyone know why jshint is going trough comments? annoying to get errors about mixed tabs and spaces for using my comment snippets. [14:13] rauchg has joined the channel [14:14] tonist has joined the channel [14:14] mandric has joined the channel [14:15] garrensm_ has joined the channel [14:15] yawNO has joined the channel [14:15] nebiros has joined the channel [14:16] brainss has joined the channel [14:16] aklt has joined the channel [14:17] rauchg has joined the channel [14:17] msyea has joined the channel [14:18] saidinesh5 has joined the channel [14:18] hipsters_ has joined the channel [14:19] saikat has joined the channel [14:20] vicapow has joined the channel [14:20] lirla has joined the channel [14:21] maritz: Doikor: there might be an option to disable that [14:22] HacDan has joined the channel [14:22] rauchg has joined the channel [14:23] riven` has joined the channel [14:23] yawNO: maybe not [14:24] Davsebamse has left the channel [14:24] joaojeronimo has joined the channel [14:25] riven has joined the channel [14:25] maritz: always the pessimist [14:25] yawNO: who? me? [14:25] yawNO: please [14:26] bergie_ has joined the channel [14:26] yawNO: im the most optimistic person you'll ever find in the world [14:26] kirbysayshi has joined the channel [14:26] yawNO: but maybe i'll die tomorrow [14:26] yawNO: who knows [14:26] dylang has joined the channel [14:27] JamPacked has joined the channel [14:27] pradeepbv has joined the channel [14:29] carlyle has joined the channel [14:29] rauchg has joined the channel [14:31] sreeix has joined the channel [14:31] Poetro has joined the channel [14:34] rauchg has joined the channel [14:37] JamPacked has left the channel [14:37] amigojapan has joined the channel [14:37] al3xnull has joined the channel [14:38] maritz: what do you mean maybe? [14:38] maritz: oh wait, you didn't know yet. sorry [14:38] hackband has joined the channel [14:39] lirla: Hi guys [14:39] mandric has joined the channel [14:39] lirla: Anyone can help me with Jsdom? [14:39] rauchg has joined the channel [14:40] hzin_ has joined the channel [14:40] ohtogo has joined the channel [14:41] hipsters_ has joined the channel [14:41] kirbysayshi has joined the channel [14:41] jhooks has joined the channel [14:42] BillyBreen has joined the channel [14:42] maritz: yes [14:43] maritz: ACTION goes afk [14:45] rauchg has joined the channel [14:47] colinclark has joined the channel [14:48] nsolsen has joined the channel [14:48] jakehow has joined the channel [14:48] HacDan has joined the channel [14:49] rauchg has joined the channel [14:51] PEM has joined the channel [14:51] yawNO has joined the channel [14:51] aheckmann has joined the channel [14:51] PEM: hello :) [14:51] PEM: Only 15 days left to take your Web-5 Conference ticket! Rush for it before it's too late! http://web-5.org Node.js in the schedule :) [14:51] rauchg has joined the channel [14:53] kylehill has joined the channel [14:53] pid has joined the channel [14:53] kmiyashiro has joined the channel [14:53] jdeibele has joined the channel [14:53] thejefflarson has joined the channel [14:54] mmalecki: (I'm speaking there!) [14:55] benvie: on what? [14:55] benvie: or is it sekrit [14:55] PEM: everything is on the website :D [14:55] benvie: mmalecki's guide to kicking ass and taking names [14:55] benvie: hmm [14:56] PEM: http://www.web-5.org/en/speakers.html#MaciejMalecki [14:56] PEM: i think [14:56] mmalecki: yeah [14:56] mmalecki: benvie: kicking ass is complicated! [14:56] mmalecki: you have to be awesome first [14:56] benvie: yeah I mean it was a foregone conclusion [14:56] benvie: this is why you're speaking about it [14:57] rauchg has joined the channel [14:57] Industrial: PEM: will there be video (online) :D? [14:57] benvie: to help those less knowledgable in either the ass kicking or name taking skillsets [14:57] PEM: for now it's not sure at all, sadly [14:57] maritz: mmalecki: then how come you're qualified to give a talk about it? BAAAMMMM (sorry, just kidding, you're awesome :) ) [14:57] PEM: we're trying hard to get at least some video recorded and post them later on [14:57] fatjonny has joined the channel [14:57] PEM: but it's our first awesome event, and we're still lacking a bit of "event network" [14:58] mmalecki: maritz: :D [14:58] devongovett has joined the channel [14:58] justicefries has joined the channel [14:58] maritz: ^^ [14:58] maritz: i'm doing clientside templates as well nowadays. it's much more awesome :) [14:58] cjm has joined the channel [14:59] sreeix has joined the channel [14:59] sreeix_ has joined the channel [14:59] plato has joined the channel [14:59] PEM: we even have a ryanair airport here that makes coming to Beziers (almost) a breeze [15:00] PEM: :) [15:01] Vespakoen has joined the channel [15:01] saikat has joined the channel [15:01] rauchg has joined the channel [15:01] maritz: i have exactly 1 .jade file that is compiled on the server. and the only real reason for that is that it allows me to not have to add new .js files in my dev environment anywhere because i can hand them to jade as a local and it writes a bunch of script includes [15:02] maritz: (it does 2 more things that are variable right now, but these will be thrown out) [15:02] mattrobenolt has left the channel [15:02] Epeli: Why fs.watch emit random numbers as filenames on linux? [15:04] maritz: Epeli: it shouldn't. gist of your code? [15:04] stepheneb has joined the channel [15:04] CIA-19: libuv: 03Ben Noordhuis 07master * r49d4e18 10/ src/unix/linux/core.c : [15:04] CIA-19: libuv: linux: use CLOCK_BOOTTIME if available [15:04] CIA-19: libuv: Use CLOCK_BOOTTIME to calculate the system uptime. Fall back to CLOCK_MONOTONIC [15:04] CIA-19: libuv: if CLOCK_BOOTTIME is not available (all pre-2.6.39 kernels). [15:04] CIA-19: libuv: The problem with CLOCK_MONOTONIC is that it doesn't increase when the system is [15:04] CIA-19: libuv: suspended, making the uptime differ from what the uptime(1) tool reports. - http://git.io/-j5JHA [15:04] robi42 has joined the channel [15:04] zemanel has joined the channel [15:05] stepheneb_ has joined the channel [15:05] insin has joined the channel [15:05] brainss has joined the channel [15:06] artusrocha1 has joined the channel [15:06] dai1741 has left the channel [15:06] Epeli: maritz: fs.watch("/some/path", function(event, filename) { console.log(filename) }); and when I edit /some/path/file.txt the callback logs "file.txt" and some random number like "4913" [15:06] kevwil has joined the channel [15:07] maritz: gist.github.com for the next time [15:07] cjm has joined the channel [15:07] rauchg has joined the channel [15:07] enmand_ has joined the channel [15:09] maritz: Epeli: works fine for me. are you sure there is no file "4913" created? :D [15:09] erikzaadi has joined the channel [15:10] Epeli: maritz: Yes I'm sure. I'm also running fs.stat for the emited file and it fails for that "file" because it is missing. [15:11] maritz: what is event? [15:11] maritz: for that file [15:12] Destos has joined the channel [15:12] ericmuyser has joined the channel [15:12] PEM: brb [15:12] Epeli: maritz: actually it emits two events. Rename and change. [15:13] Epeli: when i edit it with Vim [15:13] arthurdebert has joined the channel [15:14] nerdfiles1 has joined the channel [15:15] maritz: for the 4913? oO [15:15] Epeli: yes [15:15] lazyshot has joined the channel [15:15] pct has joined the channel [15:16] arthurdebert has joined the channel [15:17] Epeli: Ah, I cannot reproduce it with cat [15:17] Epeli: Maybe my Vim is just doing something funny [15:18] akshayms has joined the channel [15:19] cesconix has joined the channel [15:21] yawNO: im playing pokemon on a js emulator [15:21] yawNO: this is cool :O [15:21] rtgibbons has joined the channel [15:21] hswe has joined the channel [15:21] sandfox: has anyone being bonkers anough to build a binary tree using Buffers? [15:22] sandfox: or is it just who is stupid enough to try? [15:22] rwaldron has joined the channel [15:23] rlidwka has joined the channel [15:27] jimmy has joined the channel [15:27] jimmysparkle has joined the channel [15:28] krawd: yawNO: where can I get that JS emulator for pokemon? :) [15:30] nerdfiles1 has left the channel [15:30] rbright has joined the channel [15:30] jerrysv has joined the channel [15:31] hipertracker has joined the channel [15:31] _yoy_ has joined the channel [15:33] briancray has joined the channel [15:33] sreeix has joined the channel [15:34] Corren has joined the channel [15:34] _baton_ has joined the channel [15:35] yawNO has joined the channel [15:36] robi42 has joined the channel [15:36] tonist has joined the channel [15:36] epokmedi1 has joined the channel [15:36] steveoh has joined the channel [15:36] steveoh has left the channel [15:37] jzacsh has joined the channel [15:37] jzacsh has joined the channel [15:37] jocafa has joined the channel [15:37] stepheneb has joined the channel [15:37] stepheneb_ has joined the channel [15:37] karterk has joined the channel [15:39] joshontheweb has joined the channel [15:41] dshaw_ has joined the channel [15:41] blup has joined the channel [15:41] broofa has joined the channel [15:42] jocafa has joined the channel [15:43] pizthewiz has joined the channel [15:44] lirla: Anyone can help me with Jsdom? [15:45] blueadept has joined the channel [15:45] blueadept has joined the channel [15:45] crutex has joined the channel [15:46] d0ax has joined the channel [15:46] Industrial has left the channel [15:46] djbell has joined the channel [15:46] d0ax: Hello I`m looking for some good node.js example of usage of openstreetmap [15:46] d0ax: Anybody has something like that seen? [15:47] sreeix has joined the channel [15:47] LBRapid has joined the channel [15:47] maritz: lirla: you're still doing it... just state your problem... [15:49] Venom_X has joined the channel [15:50] Spion has joined the channel [15:50] Zzaichik has joined the channel [15:50] ceej has joined the channel [15:51] bindr has joined the channel [15:51] emattias has joined the channel [15:52] Hyra has joined the channel [15:53] madhums has joined the channel [15:54] ppcano has joined the channel [15:55] Zzaichik has joined the channel [15:55] pid1 has joined the channel [15:56] chjj has joined the channel [15:57] thinkt4nk has joined the channel [15:59] _yoy_ has joined the channel [15:59] saidinesh5 has joined the channel [16:00] simenbrekken has joined the channel [16:00] jetienne_ has joined the channel [16:00] plutoniix has joined the channel [16:01] kukkelundin: finally! after six hours of debugging I managed to identify the cause of that god damn exception [16:02] kevinswiber has joined the channel [16:03] maritz: kukkelundin: so what was it? :) [16:03] savudin has joined the channel [16:03] pors has left the channel [16:03] tmcw has joined the channel [16:04] kukkelundin: it was a gzip module [16:04] kukkelundin: destroying sockets [16:04] maritz: lol :D [16:04] maritz: what gzip module? ^^ [16:04] kukkelundin: god damn it [16:04] perezd has joined the channel [16:05] kukkelundin: gzippo [16:05] kukkelundin: probably something specific to my environment, though [16:05] kukkelundin: I've used it before, and it has worked flawlessly [16:05] maritz: that's a ridiculous name :D [16:06] kukkelundin: this is the problem with using third-party modules [16:07] kukkelundin: I actually had to modify core to get the logging that i needed to find out what was happening [16:08] trivol_ has joined the channel [16:08] panchot has joined the channel [16:09] uncrtnmind has joined the channel [16:09] TomY has joined the channel [16:10] joshthecoder has joined the channel [16:10] ph^ has joined the channel [16:10] TimTim` has joined the channel [16:10] geetarista has joined the channel [16:10] maritz: ugh... you modified core on production? ouch [16:10] chadskidmore has joined the channel [16:11] jakehow has joined the channel [16:11] kukkelundin: well, I think the client is getting used to that [16:11] uncrtnmind has left the channel [16:12] kukkelundin: after all, that same exception caused the server to restart 98 times during the weekend :P [16:12] panchot has joined the channel [16:12] benvie: it sure is annoying that node's buffers and ArrayBuffers/DataViews use different names for everything [16:13] rauchg has joined the channel [16:13] emattias has joined the channel [16:14] joshontheweb has joined the channel [16:16] panchot has joined the channel [16:16] ehazlett has joined the channel [16:17] jtsnow has joined the channel [16:17] TooTallNate has joined the channel [16:18] maletor has joined the channel [16:18] satyr has joined the channel [16:18] CIA-19: node: 03Ben Noordhuis 07master * rd8c4ece 10/ test/simple/test-cluster-master-error.js : [16:18] CIA-19: node: test: fix race in simple/test-cluster-master-error [16:18] CIA-19: node: Said test checks that the workers shut down when the master errors but it failed [16:18] CIA-19: node: intermittently. Insert a small delay before doing the 'is dead?' check to give [16:18] CIA-19: node: the workers a chance to shut down. - http://git.io/nMcMCw [16:18] vkandy has joined the channel [16:20] bnoordhuis: benvie: that will be fixed... eventually [16:20] blup has joined the channel [16:20] echobuck_ has joined the channel [16:20] benvie: I had to make a thing that basically creates an equivelence for them [16:21] benvie: where endianness is a property of the buffer and then it maps all the tiny differences in naming [16:21] ait has joined the channel [16:21] benvie: Uint and UInt is stabface [16:21] ait has left the channel [16:21] benvie: at least they get the same values =D [16:22] kriskowal has joined the channel [16:22] CIA-19: node: 03Fedor Indutny 07master * rf61d4b7 10/ lib/_debugger.js : [16:22] CIA-19: node: debugger: exit process on repl exit [16:22] CIA-19: node: * When entering repl - clone 'SIGINT' listeners array (instead of using [16:22] CIA-19: node: existing), as it will be spliced in .removeAllListeners() call later. - http://git.io/RgYFkA [16:22] CIA-19: node: 03Fedor Indutny 07master * rb6cb6ce 10/ (lib/_debugger.js lib/repl.js): [16:22] CIA-19: node: debugger: remove 'repl' command from builtinLibs [16:22] CIA-19: node: * It was displaying useless warning - http://git.io/XwDiYA [16:22] CIA-19: node: 03Fedor Indutny 07master * r7418905 10/ lib/_debugger.js : [16:22] CIA-19: node: debugger: breakOnException [16:22] CIA-19: node: Do not break automatically on exception, fixes #2926 - http://git.io/7VtRww [16:23] vipaca has joined the channel [16:24] ParadoxQuine has joined the channel [16:25] demarchi has joined the channel [16:25] ank has joined the channel [16:26] trotter has joined the channel [16:28] redir has joined the channel [16:28] bshelton has joined the channel [16:30] flagg0204 has joined the channel [16:30] t0mmyvyo has joined the channel [16:32] maritz has joined the channel [16:33] cronopio has joined the channel [16:33] tylerstalder has joined the channel [16:33] rauchg has joined the channel [16:34] githogori has joined the channel [16:34] saml: is github node.js? [16:34] alessioalex has joined the channel [16:35] yawNO has joined the channel [16:35] pquerna: no, ruby, mostly. [16:35] rlidwka: saml: github have been written using rails, if that's what you mean [16:35] h4mz1d has joined the channel [16:35] yawNO: hello [16:35] saml: why not node.js? it's web scale [16:35] yawNO: cuz [16:35] yawNO: it didnt exist [16:36] yawNO: :D [16:36] mattgifford has joined the channel [16:37] couchquid has joined the channel [16:38] RobWC has joined the channel [16:38] RobWC has left the channel [16:38] al3xnull has joined the channel [16:39] Edy has joined the channel [16:39] alvaro_o has joined the channel [16:39] rtgibbons has joined the channel [16:40] rlidwka: yeah... it's incredibly hard to use something that haven't been invented yet [16:41] yawNO: rlidwka: pfff its a piece of cake [16:41] yawNO: ask maritz [16:41] ohtogo has joined the channel [16:42] wavded has joined the channel [16:42] redir has joined the channel [16:42] wavded: I'm in process of learning how to write Node Addon, the docs have been uber helpful on the nodejs site but when I got to the wrapping C++ objects, I get it to compile but keep getting this error when running the node app (node: symbol lookup error: /home/wavded/Projects/native/build/Release/wrapper.node: undefined symbol: _ZN8MyObject4InitEv) Any advice? (ref: http://nodejs.org/api/addons.html#ad [16:42] wavded: dons_wrapping_c_objects) [16:42] maritz: oh yeah, i got tons of ideas involving arduino robot arms and arbitrary day-to-day tasks that could be solved less efficient than they're solved today. [16:43] maritz: saml: what is web scale? [16:43] yawNO: maritz: tell em how you've been coding nodejs since WWII [16:44] bindr has joined the channel [16:44] maritz: i didn't oO [16:44] maritz: i only started in the 70s [16:44] yawNO: lol [16:44] yawNO: that made me laugh irl [16:44] savudin has joined the channel [16:45] orlandovftw has joined the channel [16:45] _ritch has joined the channel [16:45] meandi3 has joined the channel [16:45] yawNO: btw a webscale:web=liter:liquids [16:45] yawNO: Y U NO KNOW [16:45] Venom_X has joined the channel [16:46] deedubs: saml: github has at least one component that is written in #nodejs [16:46] tonist has joined the channel [16:46] yawNO: search afaik [16:46] rlidwka: deedubs: which component? [16:46] M28: Is there any JSON module for node.js? v8 implements JSON serialization in javascript... and it's the main bottleneck of my application [16:46] yawNO: rlidwka: ^ [16:46] deedubs: rlidwka: https://github.com/blog/678-meet-nodeload-the-new-download-server [16:47] warz has joined the channel [16:47] warz has joined the channel [16:47] yawNO: M28: wat [16:47] M28: What you didn't understand? [16:47] yawNO: if v8 implements json that means is c++ [16:47] rlidwka: M28: JSON.parse, JSON.stringify - that's something standard there [16:47] yawNO: i dont see how you could go faster [16:47] yawNO: :| [16:47] M28: v8 implements JSON in *JAVASCRIPT* [16:47] M28: read my message [16:47] yawNO: really? [16:47] M28: yeah, I read its sourcecode [16:48] yawNO: oh im sorry [16:48] creationix: V8's C++<->Js boundary is expensive [16:48] tmcw has joined the channel [16:48] creationix: it's often faster to implement things in pure js [16:48] creationix: then the jit engine can optimize it [16:49] M28: Assuming that the serialized object is small, yeah [16:49] M28: but once it hits a certain size, doing everything in C++ is faster [16:49] rbright has left the channel [16:50] shen-ninja has joined the channel [16:50] saml: creationix, really? [16:50] enjalot has joined the channel [16:51] saml: so C++ is slower than javascript? [16:51] pandeiro has joined the channel [16:51] saml: for v8 [16:51] Venom_X: M28: you can use messagepack. Have you looked into that? [16:51] M28: I need it to be json [16:51] wavded: nm figured out my issue, wasn't including the C++ object in my build, dooh! [16:51] M28: lots of dependencies on json already [16:52] whaley has joined the channel [16:52] M28: and the library I'm using only supports json [16:52] EhevuTov has joined the channel [16:52] jscheel has joined the channel [16:52] creationix: no, C++ isn't slower than javascript [16:52] creationix: but calling into C++ from JS is slower than calling into JS from JS [16:53] creationix: it has to put up barriers in the vm, convert types and all sorts of other stuff [16:53] baudehlo: or more accurately, converting objects. [16:53] akshayms_ has joined the channel [16:53] M28: the overhead is only big for small functions, like < 10 statements [16:53] dodo has joined the channel [16:53] M28: json serialization is a little bigger than that [16:53] creationix: perhaps [16:53] creationix: I just know it's quite expensive [16:54] creationix: besides the overhead, the jit can't optimize C functions [16:54] baudehlo: I'm sure the google guys knew what they were doing when they decided to keep it in JS. [16:54] creationix: they are black boxes [16:54] creationix: it has to assume anything can happen in there [16:54] creationix: so any code calling native C functions can't use many kinds of optimizations [16:54] M28: But JIT wouldn't be that good anyway for serialization, it's much better for mathematical operations, etc [16:54] M28: since the new instructions codes only deal with that [16:54] benvie: is there a more direct way to accomplush this [16:55] benvie: new Buffer(new Int8Array(10).buffer, 0, 10) [16:55] benvie: if I try with an ArrayBuffer directly it fails [16:55] benvie: like crashes node [16:55] chjj: i thought only the json stringifier was written in js ... ? [16:55] chjj: if i remember right, the parser is actually c++ [16:55] M28: I remember the stringifier is in javascript, let me see the parser [16:55] lambda_x: when I run npm update, connect downgrades from 2.0.2 to 1.8.6, how can I find out the reason? [16:56] sadjow has joined the channel [16:56] baudehlo: benvie: what are you trying to achieve there? [16:56] M28: Here it is: http://code.google.com/p/v8/source/browse/trunk/src/json.js [16:56] benvie: trying to get a node Buffer that's using any ArrayBuffer for a parent [16:56] saml: can you jit data marshalling? [16:57] benvie: it works [16:57] M28: seems like only the serializer is in javascript [16:57] M28: the parser is in C++ [16:57] saml: so that it'll be fast next time you marshall js data to c++ and vice versa [16:57] slajax has joined the channel [16:57] M28: but I mostly use the serializer [16:57] baudehlo: benvie: oh guess it's not something that is documented. [16:57] rbright has joined the channel [16:57] rbright has joined the channel [16:57] benvie: yeah not really [16:57] benvie: it's relatively new [16:57] chjj: M28: yeah, thats what i remember [16:57] jscheel has joined the channel [16:57] jscheel has joined the channel [16:57] wendall911 has joined the channel [16:58] chjj: M28: looks like it calls %ParseJson [16:58] retornam has joined the channel [16:58] chjj: to parse [16:58] benvie: I'm trying to make a thing to normalize DataView and node's Buffer [16:58] ag4ve: i'l looking for a hashed user validation scheme. i found this but was wondering if anyone had anything better? https://github.com/Turbo87/locomotive-passport-boilerplate/blob/master/app/models/account.js [16:58] benvie: so I can make my struct thing work in browsers and node without a bunch of extra code [16:58] chjj: it was probably just more practical to write the stringifier in js, its really easy to write a stringifier [16:58] ag4ve: (or if there are holes in that model) [16:58] iangreenleaf has joined the channel [16:59] M28: Here's the JSON parser, it's in C++: http://code.google.com/p/v8/source/browse/trunk/src/json-parser.h [16:59] colinclark_ has joined the channel [16:59] chjj: M28: shame on you for making me browse this on google code when theres a perfectly good github mirror! [17:00] M28: lol [17:00] M28: Google code isn't that bad >_> [17:00] chjj: its no github [17:00] M28: fanboys [17:00] trose has joined the channel [17:00] CIA-19: node: 03isaacs 07master * r89653cb 10/ (100 files in 7 dirs): Upgrade npm to 1.1.10 - http://git.io/pU8HqQ [17:00] Abutre has joined the channel [17:00] ryanrolds_w has joined the channel [17:01] chjj: i think github was the only repo site that actually understood, the first thing i want to see when i visit a project's page is the code [17:01] adamkittelson has joined the channel [17:02] ccare has joined the channel [17:02] chjj: i dont want to have to click 8 links and navigate through some ridiculous svn directory structure to get to it ... well, i guess thats partially svn's fault [17:02] M28: The first thing I wanna see is the download link, if I'm only searching for binaries :P [17:02] maritz: it isn't for me... [17:02] AviMarcus: google code can be a bit clunky [17:02] khrome has joined the channel [17:02] maritz: the first thing i wanna see is a short description of what the fuck i'm looking at :P [17:03] AviMarcus: lol maritz sooo many project can't seem to figure out they should tell you that. [17:03] M28: the first thing i wanna see is porn, but I may be looking at the wrong place :P [17:03] AviMarcus: lol M28 [17:03] AviMarcus: And going further they never tell you when you should choose their solution over X, Y, and Z that do very similar things. [17:03] mcluskydodallas has joined the channel [17:04] alex_burke has joined the channel [17:05] maritz: AviMarcus: I don't do that because I'd feel like a dick and I'm not really interested in other solutions enough to compile such a list. (not a universal truth but it's that way for at least one of my modules) [17:05] Poetro has joined the channel [17:05] AviMarcus: I see. [17:05] AviMarcus: very often people write new solutions because what exists didn't do it for them. Not simply NIH. [17:05] sammmy has joined the channel [17:06] M28: socket.io has so little documentation it's sad [17:06] jocafa: where's that crazy tj kid when you need him? [17:08] maritz: jocafa: probably sleeping [17:08] AviMarcus: M28, seen stripe's API docs? Not an open source project, but such great docs. [17:08] maritz: jocafa: might come online soon though, office hours have started in VC :D [17:08] _akshayms has joined the channel [17:08] M28: yeah, but socket.io has no documentation whatsoever [17:09] brianleroux has joined the channel [17:09] M28: there are articles in the wiki people made and it tells the reader that they found it by reading the source code [17:09] M28: not by the author fucking documenting it [17:09] lsdafjklsd has joined the channel [17:09] tbranyen: M28: u mad? [17:09] M28: I MAD [17:10] retornam has joined the channel [17:11] jj0hns0n has joined the channel [17:11] dpino has joined the channel [17:12] maritz: yeah, like redis store stuff :( [17:13] akshayms_ has joined the channel [17:13] gr4yscale has joined the channel [17:16] jsurfer has joined the channel [17:18] cole_gillespie has joined the channel [17:21] snoj has joined the channel [17:22] ewalker has joined the channel [17:23] riven has joined the channel [17:23] riven has joined the channel [17:24] _olouv_ has joined the channel [17:24] jsurfer_ has joined the channel [17:24] alessioalex has joined the channel [17:24] gf3 has joined the channel [17:25] tornad has joined the channel [17:25] lsdafjklsd has joined the channel [17:26] jaha has joined the channel [17:27] diogogmt has joined the channel [17:27] Hyra has joined the channel [17:27] EhevuTov_ has joined the channel [17:29] jaha: im trying to do a "git fetch" through exec('git fetch', fn), and its giving me a "Permission denied (public key)" error, fetch is configured to retrieve over ssh and works find through a standard terminal but NOT within this node.js exec, what am i missing? [17:29] gr-eg has joined the channel [17:30] dkastner has joined the channel [17:31] ramitos has joined the channel [17:31] satyr has joined the channel [17:31] mcluskydodallas has joined the channel [17:31] slajax has joined the channel [17:32] mattgifford has joined the channel [17:33] akshayms has joined the channel [17:33] Lee- has joined the channel [17:33] Lee- has joined the channel [17:33] rtgibbons has joined the channel [17:36] yawNO has joined the channel [17:36] pizthewiz has joined the channel [17:36] tylerstalder has joined the channel [17:36] khrome has joined the channel [17:38] sammmy: Would bouncy interfere with SSH? [17:39] arvidkahl has joined the channel [17:39] stagas has joined the channel [17:39] sh1mmer has joined the channel [17:41] colinclark has joined the channel [17:41] crutex has joined the channel [17:41] dshaw_ has joined the channel [17:41] tobbbb24 has joined the channel [17:42] dgathright has joined the channel [17:42] halfhalo has joined the channel [17:42] bizniz98 has joined the channel [17:43] halfhalo has joined the channel [17:43] mikeal has joined the channel [17:43] rickibalboa has joined the channel [17:44] spolu has joined the channel [17:45] tmcw has joined the channel [17:46] slloyd has joined the channel [17:47] franciscallo has joined the channel [17:48] satyr has joined the channel [17:48] tobbbb24: hi, I try to install https://github.com/thedjpetersen/subway but when I run "npm install" I get an error with the bcrypt package [17:48] tobbbb24: Anybody had similiar problems? [17:50] wavded: poll would writing bindings to a C utility be more performant just spawning a process? considering context switching? [17:50] tmcw: wavded: what utility? [17:50] wavded: http://code.google.com/p/wkhtmltopdf/ [17:51] akshayms_ has joined the channel [17:51] wavded: i'm considering writing bindings, have just begun but wondering if its not even worth it [17:51] brainss: http://nodeup.com/fifteen [17:51] tobbbb24: http://pastebin.com/ut3G2Ue0 [17:51] tobbbb24: there i pasted the npm output [17:51] cjm: NodeUp Fifteen w/ isaacs mikeal substack dshaw and dscape is up, you can get it here: http://nodeup.com/fifteen [17:51] wavded: there is an existing project that shells out to it, but I would like to add streaming support [17:52] tmcw: wavded: that'd probably be a doozy to bind, I'd say if you're not going to shell out to it hundreds of times, just shell? [17:52] bbttxu has joined the channel [17:53] colinwd has joined the channel [17:53] bnoordhuis: wavded: faster? undoubtedly. does it matter? maybe [17:53] langworthy has joined the channel [17:53] bnoordhuis: measure how much time is spent in overhead with e.g. perf or strace [17:54] arduix has joined the channel [17:54] wavded: tmcw: well we have an internal service that just dools out pdfs, it gets pretty decent traffic [17:55] arduix has joined the channel [17:55] rbright has left the channel [17:55] isao has joined the channel [17:55] EhevuTov has joined the channel [17:56] wavded: it's a JAVA app that pretty much just calls the command line utility and then pushes that file to the client (so its writing files a lot which is no good) [17:56] EhevuTov: is Node 0.4.x considered legacy? [17:56] patcito has joined the channel [17:57] nphase has joined the channel [17:57] wavded: i want to improve that with node, spawning and streaming the response of this utility (remove extra write stuff) but was considering writing bindings [17:57] tobbbb24: anyone knows why npm won't install bcrypt? [17:57] h00k1 has joined the channel [17:57] bnoordhuis: EhevuTov: it's dead, jim [17:57] EhevuTov: bnoordhuis, lol that's what I thought [17:57] AndreasMadsen has joined the channel [17:58] wavded: bnoordhuis: so bindings are much faster than child_process spawn in most cases? all? any times it not worth it? [17:59] wavded: oh course I'm open to other utilities people use for generating pdf's from html but this is the best I've come across so far [18:00] drostie has joined the channel [18:00] bnoordhuis: wavded: well, like i said - it depends on how much time is spent in overhead like task switching and piping data to/from the child process [18:01] bnoordhuis: anecdotal evidence but for most applications that actually do something, the overhead is but a small fraction of the total [18:03] yoki has joined the channel [18:04] wdperson has joined the channel [18:04] codepal: is there a speed comparison between node.js & nginx ? [18:04] bodisiw has joined the channel [18:04] saikat has joined the channel [18:04] codepal: I'm considering whether node would serve static files faster than nginx.... [18:04] EhevuTov_ has joined the channel [18:05] bnoordhuis: codepal: it probably doesn't right now [18:06] bnoordhuis: not out of the box anyway [18:06] itayneeman has joined the channel [18:06] codepal: yeah, was looking at connect & http-proxy [18:06] bizniz98: anybody using node-libvirt with any success? [18:06] bnoordhuis: use nginx if you're serving static files, that's what it's for [18:06] codepal: similar to: http://delog.wordpress.com/2011/04/04/nodejs-to-serve-static-content-and-as-an-http-proxy/ [18:06] YoY has joined the channel [18:07] codepal: I think I'll run some tests [18:07] Maxani has joined the channel [18:07] jxson has joined the channel [18:07] isaacs has joined the channel [18:08] codepal: node.js being sp optimised it could be interesting [18:08] codepal: s/sp/so/ [18:08] take_cheeze has joined the channel [18:08] dkastner has joined the channel [18:08] dannyamey has joined the channel [18:09] rt7 has joined the channel [18:10] jetienne_ has joined the channel [18:10] caolanm has joined the channel [18:12] baudehlo: plenty of people have run those tests. Node will never be as fast as nginx for that. [18:12] bnoordhuis: baudehlo: never say never [18:12] baudehlo: hah. I say never :-P [18:13] bnoordhuis: baudehlo: i may make file serving declarative some day [18:13] bnoordhuis: so you never hit the JS VM and it's all handled from c / c++ [18:13] baudehlo: if node ever even got close to nginx I think Igor would "fix" that. [18:13] rlidwka: node is 2x times slower than nginx on static content [18:13] rlidwka: i think thats good enough [18:14] bnoordhuis: baudehlo: by sending round some of his boys [18:14] baudehlo: haha [18:14] githogori has joined the channel [18:14] itayneeman: Does anybody know if there is a node module that mimics the behavior of resolving $PATH for a given executable? [18:14] boltR has joined the channel [18:14] baudehlo: yeah - to be honest I think it'd be annoying if bnoordhuis spent much time on that. Whose web app is bottlenecked by static file delivery? [18:15] redir_ has joined the channel [18:17] andrewdeandrade has joined the channel [18:17] baudehlo: You can probably easily get a decent 16 core server delivering about 10k files/sec with Node. [18:17] baudehlo: probably more than that even. [18:17] totallymike has joined the channel [18:17] ioscale has joined the channel [18:18] rlidwka: node server is not just serve static, it usually doing something else [18:19] rlidwka: so static serving should be fast as long as it's in the same process with some other things imho [18:19] baudehlo: sure. But it'll likely barely blip onto the radar if you profile. [18:20] baudehlo: and if it does, it's easy to move it to nginx [18:22] context: i still imagine nginx is a lot faster at serving static files over node. especially smaller files [18:22] sadjow has left the channel [18:22] Vespakoen has joined the channel [18:23] mmalecki: there are less layers in nginx than in node [18:23] ioscale: also if static serving is an issue: just signup for a cdn i.e. maxcdn and have it only serve up static files once every now and then… the bulk of the load will then be on the cdn and the traffic might also be cheaper there. [18:23] mmalecki: in node you have to go like this: libuv -> v8 -> js -> v8 -> libuv [18:24] orlandovftw has joined the channel [18:24] mmalecki: (and barrier between js and v8 isn't *that* thin) [18:24] orlandovftw has joined the channel [18:26] Raenger has joined the channel [18:26] Raenger has left the channel [18:27] hipsters_ has joined the channel [18:28] Poetro_ has joined the channel [18:28] Poetro_ has joined the channel [18:30] mansoor has joined the channel [18:30] Poetro has joined the channel [18:30] Poetro_ has joined the channel [18:32] whitman has joined the channel [18:32] mikeal has joined the channel [18:32] Dreamer3 has joined the channel [18:32] Destos has joined the channel [18:33] Country has joined the channel [18:34] hydrozen has joined the channel [18:35] JmZ_ has joined the channel [18:37] davidbanham has joined the channel [18:37] shiftmeta has joined the channel [18:38] al3xnull has joined the channel [18:39] adrianF has joined the channel [18:39] pandeiro has joined the channel [18:39] `3rdEden has joined the channel [18:39] asobrasil has joined the channel [18:42] bodisiw has joined the channel [18:42] kukkelundin has joined the channel [18:43] kev_nz has joined the channel [18:44] hackband has joined the channel [18:44] andrewdeandrade has joined the channel [18:44] ajackbot has joined the channel [18:45] davemo has joined the channel [18:46] shinuza has joined the channel [18:46] dudeinthemirror has joined the channel [18:50] yaymukund has joined the channel [18:50] bradleyg has joined the channel [18:51] fangel has joined the channel [18:51] bartt has joined the channel [18:52] Swizec has joined the channel [18:52] rio{ has joined the channel [18:53] YoY has joined the channel [18:58] djbell has joined the channel [18:58] argami has joined the channel [18:59] stagas has joined the channel [18:59] samsonjs has joined the channel [18:59] dylang_ has joined the channel [19:00] argami has joined the channel [19:01] bartt has left the channel [19:02] thetristan has joined the channel [19:03] h4mz1d has joined the channel [19:03] context: anyone here using twitter-bootstrap do i need to do soemthing special to get the subnav to lock under the nav bar [19:04] rtgibbons has joined the channel [19:05] robi42 has joined the channel [19:05] gangleri has joined the channel [19:06] `3rdEden: is it possible start a sync child process? [19:06] argami has joined the channel [19:07] Sadin has joined the channel [19:08] khrome_ has joined the channel [19:08] AvianFlu: `3rdEden, not presently, no [19:08] stagas: `3rdEden: there's an exec hack [19:09] `3rdEden: stagas oooh [19:09] `3rdEden: stagas is it related to: https://github.com/joyent/node/issues/1167 ? [19:10] GJdan has joined the channel [19:11] stagas: `3rdEden: https://github.com/arturadib/shelljs/blob/master/shell.js#L1210 [19:11] westg has joined the channel [19:11] `3rdEden: I was just looking at that stagas :p thanks <3! [19:11] arduix has joined the channel [19:11] `3rdEden: and that is really horrible stagas, i love it :D [19:12] zackattack has joined the channel [19:13] khrome_ has joined the channel [19:13] wilmoore has joined the channel [19:16] argami has joined the channel [19:16] Hochmeister has joined the channel [19:18] kesor has joined the channel [19:18] malkomalko has joined the channel [19:18] admc has joined the channel [19:18] kesor has left the channel [19:18] kesor has joined the channel [19:18] limgad has joined the channel [19:19] erichocean has joined the channel [19:19] deedubs: any emacs users using comma first and have a good major mode for node? [19:20] astanton has joined the channel [19:20] tbranyen: i'd rather be in a coma first [19:20] erichocean: I'm trying to understand the path documentation. Do path related functions work different on Windows? [19:20] boltR has joined the channel [19:20] erichocean: e.g. do I need to do path.join(foo, '\bar') on Windows? [19:21] davidbanham has joined the channel [19:21] erichocean: bad example: path.join(foo, '\bar\baz') [19:22] dshaw_1 has joined the channel [19:22] erichocean: the example in the docs for path.join() shows Unix-style paths [19:22] erichocean: but I'm getting tons of "not found" errors for paths of that type on Windows :( [19:23] insin: are you doubling up the slashes in your actual code? [19:23] argami has joined the channel [19:24] insin: IIRC windows doesn't really care if you just use forward slashes [19:24] rlidwka: erichocean: use forward slashes everywhere [19:24] erichocean: dang [19:25] bindr has joined the channel [19:25] erichocean: my npm works perfectly on Mac OS X and Linux and bombs on Windows 7 [19:25] gavin_huang has joined the channel [19:25] isaacs: erichocean: works for what? [19:25] erichocean: loads [19:25] isaacs: erichocean: er, bombs for what, i mean [19:25] erichocean: it can't find stuff via paths [19:25] yawNO has joined the channel [19:25] isaacs: erichocean: example, plz. [19:25] isaacs: erichocean: gist the full output. [19:26] erichocean: "could not find application/foundation/datastore frame work dependency: ..." [19:26] isaacs: erichocean: also, don't use path.join. use path.resolve() [19:26] erichocean: that's internal to my code [19:26] rtgibbons has joined the channel [19:26] erichocean: point is, it works everywhere else [19:26] erichocean: so it's got to be _some_ difference [19:26] isaacs: erichocean: copy and paste from the part where you type something, to the part where it says "C:\>" again, and paste into gist. [19:27] erichocean: give me a sec, have to start up my VM [19:27] yawNO: yo [19:31] Es0teric has joined the channel [19:32] springmeyer has joined the channel [19:34] Poetro has joined the channel [19:34] M1l3n1um has joined the channel [19:34] jj0hns0n has joined the channel [19:34] muddo has joined the channel [19:34] samsonjs_ has joined the channel [19:34] argami has joined the channel [19:35] bartt has joined the channel [19:35] jaha: OK, STILL cant get what im missing when trying to run "git fetch" (configured for a repo over ssh) in a child process through node, ive tried start ssh-agent, adding the identity , in multiple different way but I still get a "permission denied (public key) error. Keep in mind this works when just going into terminal and typing "git fetch". What am i missing? http://pastie.org/3630124 [19:35] jaha: simple example [19:35] redir has joined the channel [19:36] asobrasil has left the channel [19:38] bnoordhuis: jaha: child processes start with an empty environment [19:38] bnoordhuis: unless you explicitly give them one [19:38] tmcw has joined the channel [19:38] bnoordhuis: so ssh is probably looking for $HOME/.ssh but since HOME isn't set, it won't find your key [19:39] erichocean: isaacs: https://gist.github.com/3efcfb91f7780788ff21 [19:39] gregpascale has joined the channel [19:40] isaacs: erichocean: that doesn't show me npm not working. that shows me your thing not working. what is it doing? [19:40] erichocean: the log message is from https://github.com/fohr/blossom/blob/unstable/buildtools/buildtools.js#L244 [19:40] erichocean: it's checking to see if files exist [19:40] seanouimet has joined the channel [19:40] erichocean: and on windows, it doesn't find them [19:40] erichocean: but on Mac OS X and Linux, it does [19:40] erichocean: so I'm trying to get an idea of what to fix :) [19:41] erichocean: and my assumption is that paths are represented differently in Node on Windwos [19:41] isaacs: erichocean: why are you using all this complex map slicing stuff, intead of just require('the-dep')? [19:41] erichocean: these are fils I'm serving, like a web server [19:41] erichocean: not npm packages [19:41] isaacs: erichocean: ok [19:42] erichocean: are paths returned by node with backslashes? [19:42] isaacs: erichocean: yes. [19:42] erichocean: that's it then [19:42] tonist has joined the channel [19:42] erichocean: is there a function to convert them back to forward slashes? [19:42] isaacs: erichocean: paths are returned by the system. node doesn't monkey with htem. [19:42] seanouimet has joined the channel [19:42] isaacs: erichocean: sure, it's: myBackslashPath.replace(/\\/g, '/') [19:42] erichocean: har har har [19:43] isaacs: erichocean: no, seriously, that works [19:43] isaacs: erichocean: but really, you should not be doing manual things with paths and \ [19:43] isaacs: and / [19:43] isaacs: you should be using path.resolve() and path.relative() [19:43] jaha: bnoordhuis: i am passing process.env to the child process and HOME is defined there... [19:43] isaacs: which have all the system-specific semantics baked-in [19:43] erichocean: well, the paths are written in user code [19:43] erichocean: sc_require('foo/bar') [19:43] erichocean: not much I can do about that [19:44] erichocean: I'll normalize to Uinx [19:44] Poetro has joined the channel [19:45] bradleyg has joined the channel [19:45] bindr has joined the channel [19:47] TheEmpath has joined the channel [19:48] TheEmpath: How should I deploy changes to a cloud setup (rackspace) that utilizes real-time sockets? (nodejs, socket.io, ampq) http://i42.tinypic.com/b4jbrk.png [19:50] erichocean: isaacs: yay, two regexs later and it's working. thanks again! [19:50] isaacs: erichocean: w00t! [19:50] isaacs: Anyone using symbolic links on purpose inside their packages? [19:50] isaacs: like, for something important? [19:52] michaelmartinez has joined the channel [19:54] CoverSli1e: I imagine people may [19:54] CoverSli1e: why? are they getting killt? [19:55] isaacs: CoverSli1e: well, it makes jade and a bunch of other stuff not work on windows properly [19:55] erichocean has joined the channel [19:55] isaacs: and they seem just extraneous and only cause problems in most cases. [19:55] erichocean has left the channel [19:56] zackattack has joined the channel [19:57] stonebranch has joined the channel [19:58] TheEmpath: windows... bringing down useful functionality for everyone... [19:58] robi42 has joined the channel [19:59] spolu has joined the channel [19:59] redir has joined the channel [20:00] larsschenk1 has joined the channel [20:01] dylang has joined the channel [20:01] myndzi\: i'm having trouble with jsdom, anyone familiar with it? [20:01] clarkfischer has joined the channel [20:02] myndzi\: i can get it to load an html document, sort of [20:02] myndzi\: it doesn't download external scripts like i want it to [20:02] kraft has joined the channel [20:02] myndzi\: and while i can verify that there's html in the string i pass to jsdom.jsdom, i don't get a dom window from it [20:02] tylerstalder has joined the channel [20:03] dkastner has joined the channel [20:06] redir has joined the channel [20:06] larsschenk1 has left the channel [20:08] mikeal has joined the channel [20:08] jkridner__ has joined the channel [20:09] stagas has joined the channel [20:10] pendlepa2ts has joined the channel [20:12] saml: is there nginx module for node.js? [20:13] markwubb_ has joined the channel [20:15] dtrejo has joined the channel [20:15] Raenger has joined the channel [20:15] Raenger has left the channel [20:16] Raenger has joined the channel [20:18] rick- has joined the channel [20:20] ewalker has left the channel [20:20] cjlicata has joined the channel [20:20] AviMarcus: saml, to do.. what? [20:21] cjlicata has joined the channel [20:21] LBRapid has joined the channel [20:21] Biggest has joined the channel [20:23] lohkey has joined the channel [20:23] stafamus has joined the channel [20:24] lirla has joined the channel [20:25] lohkey has joined the channel [20:26] cyphase has joined the channel [20:26] saml: AviMarcus, to do web scale [20:26] saml: nginx is web scale [20:26] saml: wait.. node.js is already a server [20:27] saml: never mind my bad [20:27] d0ax has joined the channel [20:27] AviMarcus: yeah, node.js should handle what you need [20:27] AviMarcus: but you'll need to explicitly thread it if you want multiple cores [20:27] saml: is node.js better at serving static files than nginx or varnish? [20:27] josh-k has joined the channel [20:27] AviMarcus: that I can't answer.. [20:27] rlidwka: some modules to control nginx would be nice [20:27] lohkey: writing nginx modules is fun and easy [20:27] rlidwka: change configuration, etc. [20:28] saml: wanna start nginx_v8? [20:28] saml: ngx_v8 [20:28] lohkey: saml: it exists [20:28] lohkey: and it has for a while [20:28] samsonjs has joined the channel [20:28] lohkey: i'm starting to loose attraction towards V8 [20:28] saml: why not? [20:29] saml: v8 is html5 compliant and immediately mobile app [20:29] lohkey: i wrote a node-php implementation for a hackathon project using libuv and the http-parser that node.js uses. i did it mostly as a joke, but it out performs node.js by just under 2.x [20:29] lohkey: saml: V8 has nothing to do with HTML5 [20:29] saml: :P [20:29] cha0s has joined the channel [20:29] saml: libuv is chosen for windows? [20:29] sorensen__ has joined the channel [20:29] lohkey: saml: all node uses libuv now [20:30] saml: i remembe nodejs could not be compiled on windows [20:30] lohkey: thats the point of libuv, to be the portable IO abstraction layer [20:30] lohkey: saml: now it can [20:30] JmZ_ has joined the channel [20:30] JmZ_ has joined the channel [20:30] saml: is libuv good? [20:31] lohkey: i like it [20:31] saml: then i like it too. thanks [20:31] lohkey: basically, libev, libeio and c-ares in a box [20:32] saml: so write lua binding for libuv [20:32] lohkey: saml: it exists [20:32] lohkey: it's written by creationix [20:32] lohkey: http://luvit.io/ [20:32] lohkey: that is also already way faster then node.js [20:33] lohkey: so it seems the pattern is that V8 is just a crap thing to use in an embedded manner [20:33] creationix: V8 is a very fast VM [20:33] creationix: just heavy [20:33] creationix: some aspects are slow [20:33] lohkey: yeah, it's fast when your in JS [20:33] dylang has joined the channel [20:33] creationix: like crossing the C++ / JS boundary when making syscalls [20:33] saml: lohkey, oh thanks. now i can really web scale [20:33] lohkey: but it's heavy to jump between C++ and JS [20:34] creationix: I'm also working on libuv with candor and spidermonkey [20:34] creationix: haven't gotten those two to benchmarkable state yet though [20:34] creationix: candor is close [20:34] nadirvardar has joined the channel [20:34] gasbakid has joined the channel [20:35] argami has joined the channel [20:35] snearch has joined the channel [20:35] lohkey: nice, libuv and ry's http-parser make writing http servers fairly enjoyable [20:35] lohkey: i've had a lot of fun with both libraries so far [20:36] boltR has joined the channel [20:37] hcchien has joined the channel [20:38] saml: what is candor? [20:39] al3xnull has joined the channel [20:39] DukeyToo has joined the channel [20:39] context: noun: The quality of being open and honest in expression; frankness. [20:39] context: saml: google. it knows a lot of shit. even word definitions [20:39] lohkey: https://github.com/indutny/candor [20:40] saml: internet is down [20:40] saml: wait.. how come irc works? [20:40] saml: it's just being really slow somehow [20:41] context: hahahaha [20:41] context: your dns sucks ? [20:41] CIA-19: node: 03Andreas Madsen 07master * rab32e9e 10/ lib/child_process.js : child_process: emit 'channel closed' error instead of throwing - http://git.io/JECcsQ [20:41] CIA-19: node: 03Andreas Madsen 07master * rd927fbc 10/ (4 files in 3 dirs): (log message trimmed) [20:41] CIA-19: node: cluster: add graceful disconnect support [20:41] CIA-19: node: This patch add a worker.disconnect() method there will stop the worker from accepting [20:41] CIA-19: node: new connections and then stop the IPC. This allow the worker to die graceful. [20:41] CIA-19: node: When the IPC has been disconnected a 'disconnect' event will emit. [20:41] CIA-19: node: The patch also add a cluster.disconnect() method, this will call worker.disconnect() on [20:41] CIA-19: node: all connected workers. When the workers are disconneted it will then close all server [20:41] otih has joined the channel [20:41] otih has joined the channel [20:42] graeme_f has joined the channel [20:43] syntaxiko has joined the channel [20:44] jaha: any idea why running "git merge" in a child process would NOT trigger the post-merge git event hook? [20:44] michaelhartau has joined the channel [20:46] otih has left the channel [20:47] dukeytoo has joined the channel [20:47] robhawkes has joined the channel [20:47] dtrejo has joined the channel [20:48] ccare has joined the channel [20:49] graeme_f: I listened to nodeup yesterday & vaguely remember hearing about conventions over a "lib" folder and what-not being a relic from previous versions, is that right? [20:49] monokrome: Does `npm test` not automatically test your dependancies? [20:50] isaacs: monokrome: no, it does not [20:50] monokrome: Can you ask it to? [20:51] monokrome: ACTION pokes isaacs  [20:52] tonist has joined the channel [20:52] schredder has joined the channel [20:53] devaholic has joined the channel [20:53] xat-- has joined the channel [20:54] graeme_f: monokrome - not that I'm stalking or anything, but I think he's engrossed in Futurama season 6 ;) [20:54] qjcg has joined the channel [20:54] monokrome: haha [20:55] isaacs: monokrome: npm test some-dependency <-- that tests some-dep [20:55] monokrome: so how can I get: npm test [20:55] monokrome: to do that? [20:55] isaacs: monokrome: for i in node_modules/*; do npm test `basename $i`; done [20:55] olivier2 has joined the channel [20:56] monokrome: isaacs: Is it possible to make `npm test` do that? [20:56] isaacs: monokrome: no, it is not [20:56] monokrome: :( [20:56] monokrome: "scripts": { "test": "for i in node_modules/*; do npm test `basename $i`; done" } [20:56] monokrome: ? [20:56] isaacs: monokrome: sure, but that'll probably fail [20:56] isaacs: monokrome: since you likely did not install dev dependencies for all your dependencies [20:56] shinuza has joined the channel [20:57] monokrome: ACTION is trying to get travis-ci to test dependancies [20:58] graeme_f: monokrome you'll also have to convince Travis to get the dev deps [20:58] graeme_f: monokrome why do you want to do this anyhow? seems unnecessary and hence unsupported [20:58] monokrome: I don't mind not testing the dev deps [20:59] graeme_f: your deps will need THEIR dev deps to run their tests [20:59] monokrome: I don't know. If it's not possible, then no big deal. [20:59] kesor has joined the channel [20:59] monokrome: Mine doesn't really have any tests [20:59] monokrome: It just throws them all together. [20:59] monokrome: ACTION isn't sure that his library does anything that needs testing [20:59] mikl has joined the channel [21:00] kevwil has joined the channel [21:00] justinschier has joined the channel [21:00] quackquack has joined the channel [21:00] graeme_f: testing your deps doesn't change anything :P [21:01] graeme_f: so, i don't need a "lib" directory if my thing is simple? [21:02] AdamGoodrich has joined the channel [21:02] isaacs: `3rdEden: ping [21:02] `3rdEden: elo [21:02] isaacs: `3rdEden: you got symlinks in your packages? what for? [21:02] Poetro has joined the channel [21:03] monokrome: graeme_f: The part you aren't realizing is that my library doesn't need any tests (or at least I don't know what it would need) [21:03] EhevuTov__ has joined the channel [21:03] enmand has joined the channel [21:03] `3rdEden: isaacs index.js > /lib/randomname [21:03] monokrome: Hence, I figure - if mine doesn't have/need tests then I should probably test it's deps somehow. [21:03] graeme_f: monokrome then, as you say, you don't need any tests [21:03] monokrome: Probably [21:03] `3rdEden: Iknow, I can use the "main" part of a package.json [21:03] isaacs: `3rdEden: why not just specify lib/randomname as your "main" module? [21:03] isaacs: `3rdEden: right [21:03] graeme_f: monokrome (whether or not you *really* don't need any tests is another matter entirely ;)) [21:04] monokrome: yeah [21:04] monokrome: I probably do [21:04] monokrome: Been sitting here trying to think of how to test it for about 20 minutes. [21:04] mmalecki: isaacs: as long as `npm link` works, I say "DO IT" [21:04] umren has joined the channel [21:05] isaacs: mmalecki: yeah, this won't affect other symlink-using features of npm itself, since those are implemented in other ways (or not at all) on windows [21:05] isaacs: mmalecki: but symlinks in tarballs break stuff on windows sometimes, in a confusing manner. [21:06] graeme_f: monokrome maybe an end-to-end test to start with? [21:06] mmalecki: isaacs: oh, it's a change for windows? actually, I was wrong, I use symlinks in all my packages. [21:06] `3rdEden: In my project i have all my open source modules in ./lib/ so I can just easily require them using require('./lib/') instead of doing require('./lib//lib/randomname'); It just makes the code easer to read. [21:07] bindr has joined the channel [21:07] shinuza has joined the channel [21:07] isaacs: `3rdEden: if you used node_modules folders, and main fields, you could do `require("modulename")` [21:08] `3rdEden: and I don't have to many other changes when I publish them. I know I can also create a index.js with a pointless module.exports = require('./lib/randomname') but i find that waste of resources [21:08] isaacs: `3rdEden: even easier to read. [21:08] argami has joined the channel [21:08] `3rdEden: yes/no my node_modules contain third party modules with binary addons [21:08] itayneeman: Does anybody know if there is a module that mimics path resolution for binaries (e.g. using $PATH)? [21:09] mmalecki: itayneeman: which [21:09] `3rdEden: I have a done a test run with including that in my git repo, and it worked out horriblely [21:09] itayneeman: mmalecki: presumably I'd have to exec it, yes? [21:09] ianl`: [21:09] ianl`: [21:09] mmalecki: itayneeman: no, that's an actual module :) [21:09] mmalecki: !npm show which [21:09] bodisiw has joined the channel [21:10] mmalecki: eh, where's jhbot when you need it [21:10] mmalecki: itayneeman: http://search.npmjs.org/#/which [21:10] itayneeman: weird - search didnt find it for me [21:10] ianl`: /wi [21:10] itayneeman: OK, this must be user error on my part [21:10] itayneeman: mmalecki: thank you! [21:10] mmalecki: itayneeman: pleasure :) [21:11] itayneeman: and it's cross platform - hurrah! [21:11] schredder has joined the channel [21:11] h00k1 has joined the channel [21:11] isaacs: `3rdEden: echo '*.node' >> .gitignore [21:11] `3rdEden: isaacs I also tried that, even with npm rebuilds [21:12] Guest_ has joined the channel [21:12] isaacs: `3rdEden: so, here's what i'm weighing: [21:12] argami_ has joined the channel [21:12] CoverSli1e: 170? [21:13] isaacs: `3rdEden: a) "i have to choose between adding 7 more characters to my require() lines, because of my custom module setup" vs b) "npm can't install things on my system" [21:13] isaacs: `3rdEden: (b) sounds like a more important problems. [21:13] mmalecki: not if system === windows ;) [21:14] isaacs: mmalecki: windows is a first-class citizen in node. please show respect. [21:14] mansoor: windows > * [21:14] sheenobu has joined the channel [21:14] vicapow has joined the channel [21:14] mmalecki: isaacs: if you say so :) [21:15] `3rdEden: isaacs but isn't it just up to the developers of the packages to fix that [21:15] isaacs: `3rdEden: it is if npm stops trying to create symbolic links. [21:16] josh-k has joined the channel [21:16] mikl has joined the channel [21:16] dtrejo has joined the channel [21:16] EhevuTov has joined the channel [21:18] bradleyg has joined the channel [21:18] s0urce has joined the channel [21:18] arturadib: isaacs: on Mac if I `npm install -g MyModule` I can immediately do `require('MyModule')`. on Windows, `require()` can't find the globally installed module. is this because nvm on my Mac is doing some magic so that Node finds the global modules? [21:19] `3rdEden: isaacs but that's already case as symlinks don't work properly on windows [21:19] monokrome: Windows has symbolic links [21:20] isaacs: arturadib: probably. install -g isn't really for require() anyhow. nvm may be doing magic. [21:20] isaacs: monokrome: effectively? no, it doesn't. [21:20] gr4yscale has joined the channel [21:20] monokrome: ACTION uses them [21:20] monokrome: when I'm forced to use Windows, anyway [21:20] dshaw_ has joined the channel [21:20] arturadib: isaacs: so install -g is mostly for executables? [21:20] isaacs: monokrome: you don't get to say it "has symbolic links" unless it also has readlink and all the other symlink-related semantics, available to non-admin users, in all versions of windows that node supports. until then, we cannot rely on them. [21:21] isaacs: monokrome: or rather, even though it has mklink /L or whatever, that doesn't help npm. [21:21] monokrome: isaacs: Windows has them. I never said Windows ME did :) [21:21] isaacs: arturadib: yeah, strictly for that. [21:21] isaacs: arturadib: npm faq [21:21] isaacs: `3rdEden: it's not that they "don't work properly". it's that they cause unpredictable behavior when tar tries to unpack packages containing them. [21:23] isaacs: `3rdEden: and, i can easily create a situation where things work portably, by simply not unpacking symlinks. [21:24] arturadib: isaacs: so just to double-check, the recommended practice for a module that has both executables and libraries is to do both a global and a local install? [21:25] isaacs: arturadib: or npm link (which is not supported on windows, for reasons very recently discussed ;) [21:25] arturadib: isaacs: :) k thanks [21:26] ehazlett has joined the channel [21:26] `3rdEden: isaacs I understand the reasons behind it, just not to happy with it :p [21:26] `3rdEden: as it will probably also break a ton of modules [21:29] isaacs: `3rdEden: yah. [21:29] dshaw_1 has joined the channel [21:29] JMHNilbog has joined the channel [21:29] isaacs: `3rdEden: i'll probably soften it to just a very annoying warning for a few versions. [21:29] isaacs: `3rdEden: and skip over them on windows, where it actually does cause real problems today. [21:29] rwaldron has joined the channel [21:30] jimmysparkle has joined the channel [21:30] disappearedng has joined the channel [21:32] Bonuspunkt: wait i missed the discussion for npm link on windows :) [21:32] JMHNilbog: I'm struggling to get a node-twilio app working on heroku, probably because I'm new to both. Having a lot of trouble finding a recent example that I can deploy and tweak as a start. Anyone know of one? [21:33] min|dvir|us has joined the channel [21:33] min|dvir|us: Hi. If I want to execute code out of the request/response cycle, I would use setTimeout(func, 0)? [21:34] isaacs: Bonuspunkt: we need readlink and lstat to work propelry [21:34] isaacs: Bonuspunkt: also, we'd need symlinks to be supported for non-admin users. [21:34] ctp6360 has joined the channel [21:34] Axsuul has joined the channel [21:34] Bonuspunkt: i'd drop fs.link(..., 'file') on windows and only make junctions [21:35] westg has joined the channel [21:35] Bonuspunkt: does not require admin, but no file links only directory [21:35] FredC has joined the channel [21:35] VesQ: min|dvir|us: dont know what you're after but it sounds like you could do with process.nextTick(callback) [21:36] Bonuspunkt: i could monkey patch fs to use the sysinternals junction commandline tool [21:37] min|dvir|us: VesQ: I don't want to block a response until callback is done; I want it to happen without having the request depend on it. [21:37] warz has joined the channel [21:38] jaha: how do you "sudo" through a child process EXEC function? [21:38] min|dvir|us: jaha: I wouldn't recommend it. [21:39] tristanz has joined the channel [21:39] jaha: min|dvir|us: im trying to reload an upstart job [21:40] argami has joined the channel [21:40] chjj has joined the channel [21:40] tmcw has joined the channel [21:40] dodo has joined the channel [21:41] eldios has joined the channel [21:41] CIA-19: node: 03Andreas Madsen 07master * r94d337e 10/ (lib/cluster.js test/simple/test-cluster-master-kill.js): [21:41] CIA-19: node: cluster: kill workers when master dies [21:41] CIA-19: node: This patch will kill the worker once it has lost its connection with the parent. [21:41] CIA-19: node: However if the worker are doing a suicide, other measures will be used. - http://git.io/3gn6Aw [21:41] CIA-19: node: 03isaacs 07master * rdce8682 10/ (doc/api/cluster.markdown lib/cluster.js): cluster: English language fixing - http://git.io/Jt4-VQ [21:41] geetarista has joined the channel [21:42] argami_ has joined the channel [21:45] robotblake has joined the channel [21:45] robotblake has joined the channel [21:45] argami has joined the channel [21:45] dtrejo: isaacs: I just wrote something which downloads every release of a module, runs your benchmark js against each version, and gives you all the results in convenient text files :) [21:45] hotchkiss has joined the channel [21:46] chjj has joined the channel [21:46] isaacs: dtrejo: nice [21:46] myndzi: how do i specify with http.request a callback to execute when the request is completely ended? [21:47] qjcg has left the channel [21:47] dtrejo: myndzi: http://nodejs.org/docs/latest/api/all.html#all_http_request_options_callback [21:47] dtrejo: last argument is callback [21:47] dtrejo: oh [21:47] dtrejo: nvm [21:47] dtrejo: I recommend using request [21:48] dtrejo: the module [21:48] myndzi: wrong function [21:48] myndzi: meh, modules stacked on modules :P let me see what this one is [21:48] dtrejo: npm docs request [21:49] redir has joined the channel [21:49] isaacs: myndzi: request is a pretty nice one. it's the high-level http client for node that people use when they want a high-level http client. [21:50] myndzi: indeed, just reading to see if i can control headers etc. [21:50] myndzi: does it support gzip? [21:50] myndzi: or, well, i can always write that in i guess [21:50] min|dvir|us has left the channel [21:50] dtrejo: I think it does [21:50] myndzi: i see no zlib in there ;\ [21:51] brianseeders has joined the channel [21:51] myndzi: it's so easy to add too [21:51] rtgibbons has joined the channel [21:51] argami has joined the channel [21:52] argami has joined the channel [21:53] sadjow has joined the channel [21:53] chjj has joined the channel [21:53] bradleyg has joined the channel [21:54] skomski has joined the channel [21:55] bradleyg has joined the channel [21:55] eldios has joined the channel [21:55] bicranial has joined the channel [21:56] couchqui1 has joined the channel [21:56] kordless has joined the channel [21:57] justicefries has joined the channel [21:57] muddo has joined the channel [21:57] `3rdEden: path.resolve('~/RED') --> '/Users/V1/~/RED' .. shouldn't that become '/Users/V1/RED' instead? [21:58] justicefries has joined the channel [21:58] jxson has joined the channel [21:58] dtrejo: .. require('path').resolve('~/RED') [21:58] lmorchard has joined the channel [21:58] dtrejo: no catb0t [21:58] `3rdEden: or am I miss understanding the command =/ [21:59] dtrejo: `3rdEden: I don't think path.resolve understands ~ [21:59] dtrejo: I just use process.user [21:59] dtrejo: err [21:59] dtrejo: process.env.HOME [21:59] michaelhartau has joined the channel [22:00] `3rdEden: dtrejo I just need to be able to parse random paths [22:00] dtrejo: yea [22:00] dtrejo: randompath.replace(/~/gi, process.env.HOME); // ? [22:00] chjj has joined the channel [22:01] `3rdEden: dtrejo that's a good idea [22:01] dtrejo: :) [22:01] s0urce: yeha, i hacked 127.0.0.1, now i can go sleep [22:01] s0urce: night :) [22:02] dshaw_ has joined the channel [22:02] jj0hns0n has joined the channel [22:02] s0urce has left the channel [22:03] colinwd has joined the channel [22:03] myndzi: of course, the "easy" request module is the most annying to add gzip to :P [22:04] skomski has joined the channel [22:05] boltR has joined the channel [22:07] robi42 has joined the channel [22:07] dukeytoo: dtrejo: what is isaacs benchmark js? (where can I find it?) [22:08] socketio\test\23 has joined the channel [22:08] qsl1pknotp has joined the channel [22:08] dtrejo: dukeytoo: https://github.com/dtrejo/npmbench#readme :) and npm install npmbench [22:08] qsl1pknotp: Hey can someone here answer a quick question? [22:08] dtrejo: yes [22:08] westg: make it quick :P [22:08] dylang_ has joined the channel [22:08] qsl1pknotp: Awesome! So I'm trying to make a poker game, and I'm wondering how I get bets from players [22:09] lazyshot has joined the channel [22:09] qsl1pknotp: do I write a callback I'm guessing? But wouldn't that continue to run the code below while node is waiting for the cliet input? [22:09] dtrejo: is the client a browser? [22:09] qsl1pknotp: yes [22:09] socketio\test\48 has joined the channel [22:09] qsl1pknotp: being displayed with jquery (idk if that's relevant) [22:09] dtrejo: I'd recommend doing an ajax request to some URL on the server, or if you're using socket.io, emit an event [22:09] EhevuTov has joined the channel [22:09] chjj has joined the channel [22:09] zun1x has joined the channel [22:10] qsl1pknotp: I was using nowjs [22:10] qsl1pknotp: so i could keep track of seperate tables with the getGroup() function [22:11] kriskowal has joined the channel [22:11] rtgibbons has joined the channel [22:12] dtrejo: mmk [22:12] dtrejo: so yeah, just use nowjs to send the data around [22:13] dtrejo: and call whatever server side function accepts the bets [22:13] dtrejo: acceptBet(bet, callback); [22:13] dtrejo: or whatever [22:13] dtrejo: on the client [22:14] joshgillies has joined the channel [22:14] qsl1pknotp: Ok sweet, so like on the client it sends now.acceptBet(bet,callback);, with the callback actually doing the computation right? [22:14] chjj has joined the channel [22:16] bingomanatee_ has joined the channel [22:17] dukeytoo: dtrejo: thanks, looking at it (npmbench) now [22:17] dtrejo: dukeytoo: please give me feedback after you try it out :) my email is david.daniel.trejo åt gmail.com [22:17] dtrejo: or just open an issue [22:17] dtrejo: probably an issue is more convenient [22:19] emilepetrone has joined the channel [22:20] jetienne has joined the channel [22:21] dukeytoo: lol, k [22:22] dtrejo has joined the channel [22:23] alperkanat has joined the channel [22:24] graeme_f has joined the channel [22:24] kev_nz has joined the channel [22:25] socketio\test\67 has joined the channel [22:25] insin has joined the channel [22:25] v_y has joined the channel [22:25] alperkanat: hey there.. i'm trying to validate some post parameters with node-validator middleware however I get 'Cannot call method replace of undefined' error when a param is not in POST parameters.. [22:26] pendlepa1ts has joined the channel [22:26] alperkanat: i try to validate it like this: req.sanitize('keywords').xss().trim() [22:26] alperkanat: i tried adding a check like this: req.assert('keywords').notNull() [22:27] alperkanat: however notNull doesn't pass when i send keywords: '' in POST params [22:28] alperkanat: notEmpty() and notNull() behaves almost the same in this case.. i don't want to do dirty checks like if req.param is empty, then sanitize().... [22:28] alperkanat: is there a better way? [22:30] tjholowaychuk has joined the channel [22:30] joeytwiddle: i fear a sanity check is the best way. alternatively, you can try-catch [22:33] stagas: alperkanat: fork the module and add what you need [22:36] shinuza has joined the channel [22:37] thetony has joined the channel [22:37] tjbell has joined the channel [22:38] brianleroux has joined the channel [22:39] alperkanat: stagas: forking a module just to add notNull like functionality? :) [22:39] al3xnull has joined the channel [22:40] CoverSli1e: that module can go fork itself [22:40] alperkanat: :) lol [22:41] iangreen_ has joined the channel [22:41] alperkanat: really guys, i guess most people do face cases like this.. keywords post param is optional and can be null or string. if it's null, i can't do xss().trim() [22:42] andrwj has joined the channel [22:42] alperkanat: i at least could force the user send '' or null for that param but that doesn't work either with validation checks (notNull, notEmpty) [22:42] thetony: not using a try/catch block? [22:43] whaley has joined the channel [22:43] superlou has joined the channel [22:44] dimdm has joined the channel [22:45] alperkanat: thetony: i just thought (and tried to convince myself) that it's not necessary since we're validating params [22:46] bindr has joined the channel [22:48] Wa has joined the channel [22:52] blparker_ has joined the channel [22:53] d0ax_ has joined the channel [22:53] kvda has joined the channel [22:55] devongovett has joined the channel [22:57] BillyBreen has joined the channel [22:57] iangreenleaf has joined the channel [22:57] Evanlec has joined the channel [22:58] mikeal has joined the channel [22:59] arvidkahl has joined the channel [23:00] st_luke has joined the channel [23:03] bingomanatee_: Isn't a pull request kind of a fork queue? [23:03] tilgovi has joined the channel [23:04] warz has joined the channel [23:04] warz has joined the channel [23:04] kesor_ has joined the channel [23:04] davidbanham has joined the channel [23:04] CoverSli1e: a pull request is when you go to a massage parlor and ... [23:06] reid has joined the channel [23:08] mehlah has joined the channel [23:09] jetienne: http://s3.mrale.ph/nodecamp.eu/ <- im looking at that, and node prof seems super nice, any way to get that in chrome ? [23:09] h4mz1d has joined the channel [23:09] jacobolus has joined the channel [23:10] Destos has joined the channel [23:10] hotchkiss has joined the channel [23:12] dgathright_ has joined the channel [23:15] elijah-mbp has joined the channel [23:16] lazyshot has joined the channel [23:16] carlyle has joined the channel [23:16] stantona has joined the channel [23:17] joshsmith has joined the channel [23:17] subbyyy has joined the channel [23:17] thetony: ignore #node.js parts [23:18] boaz has joined the channel [23:19] joaojeronimo: In the node-mongodb-module, when making queries for a time interval, is this interval supposed to be defined by a Date object ? or that "new mongo.Timestamp()" thingy ? [23:20] joaojeronimo: *node-mongodb-native module [23:20] colinwd has joined the channel [23:21] warz has joined the channel [23:21] warz has joined the channel [23:21] sammmy has joined the channel [23:21] sammmy: How does apache2 run it's process in the background? Does it use nohup? [23:21] sammmy: processes* [23:22] bingomanatee_: Although in theory dates should be comparable, I personally would feel safer reducing my dates to second or milliseconds and doing int comparison. [23:22] bingomanatee_: I would suggest doing a node unit suite and finding the answers through experimentation. [23:23] jetienne: http://floitsch.blogspot.fr/2012/03/optimizing-for-v8-introduction.html <- got it!!! [23:23] prawnsalad has joined the channel [23:23] prawnsalad: hey guys. is it possible to bind a http.get() call to a different address the machine has? [23:24] thetony: prawnsalad: what are you trying to accomplish? [23:24] prawnsalad: thetony: as mentioned, to use a different interface/IP my machine has for nodes http calls [23:25] thetony: ah, misread that to be you wanted to bind to an ip the machine doesn't have - yea you can specify an address the machine has in a get [23:26] prawnsalad: cool, any idea how? i cant find anything in the docs unles sim overlooking it :/ [23:27] thetony: options = {host:'otherip',blahblahblah...} ; [23:27] prawnsalad: ah host, thanks :) [23:27] hotchkiss: prawnsalad: the docs suck for get as everyone simply uses `request` [23:28] hotchkiss: hmm, a prawn salad sounds nom nom right now. on that note ... [23:28] h4mz1d has joined the channel [23:29] Hamms has joined the channel [23:29] beejeebus has left the channel [23:30] pendlepa1ts has joined the channel [23:30] thetony: FACE [23:31] chris_ has joined the channel [23:33] augustl has joined the channel [23:34] devaholic has joined the channel [23:34] brainss has joined the channel [23:35] rauchg has joined the channel [23:36] jakehow has joined the channel [23:36] stalled has joined the channel [23:37] arthurdebert has joined the channel [23:37] syntaxiko has joined the channel [23:37] chris_: Hello, I'm trying to build Node 0.6.13 on Debian Lenny x86, but getting an error compiling V8: "g++: Internal error: Killed (program cc1plus)" ... can anyone help, please? [23:38] louissmit has joined the channel [23:38] Guest has joined the channel [23:38] killfill has joined the channel [23:38] FireFly has joined the channel [23:38] McMAGIC--Copy has joined the channel [23:39] CoverSli1e: lenny is prob not supported [23:39] CoverSli1e: use sqeezy or wheezy [23:39] Lorentz: there's something about running old stable [23:39] Lorentz: debian old stable [23:40] CoverSli1e: and that something is not being able to run anything new [23:40] joshontheweb has joined the channel [23:40] skript has joined the channel [23:40] bradleymeck has joined the channel [23:40] gregpascale has joined the channel [23:40] mape has joined the channel [23:41] Zharktas has joined the channel [23:41] CoverSli1e: lenny reached its eol [23:41] prawnsalad: ergh, net died. thetony, id realised just after i disconnected, host in http.get() or http.request is the destination hostname. [23:41] bradleymeck: is there an exec(3) available from inside node? [23:41] prawnsalad: im after binding the outgoing connection to an address *i* have on the machine [23:41] chris_: Thanks for the tip, I guess it's time to upgrade that box anyway [23:42] deoxxa: chris_: is this a VM? [23:42] CoverSli1e: but odd, have you been able to compile it before? [23:42] Lorentz: don't know if there's a reason why it wouldn' [23:42] Lorentz: t compile on lenny, though [23:42] kmiyashiro_ has joined the channel [23:43] deoxxa: it sounds like you have some resource allocation thing killing your processes for using too much memory or cpu [23:43] CoverSli1e: maybe gcc is too old [23:43] not_zpao has joined the channel [23:43] deoxxa: you see that a lot on cheap VPS providers [23:43] Lorentz: feels kinda violating, how they just kill processes in your stead, considering it's a vps [23:44] deoxxa: good providers don't do it [23:44] deoxxa: it's just the ones who oversell their boxes [23:44] chris_: Well, actually it's Voyage Linux , which is a slightly modified verson of Lenny, running on a really low power embedded device [23:45] chris_: There's a newer version based on Squeeze though, I could try to upgrade [23:45] Knowledge has joined the channel [23:46] dubenstein has joined the channel [23:48] prawnsalad: oh wow.. binding to a local address for outgoing connections only implimented 4 days ago [23:48] kmiyashiro_ has joined the channel [23:48] prawnsalad: how did that last so long without it [23:49] hobodave has joined the channel [23:49] sdwrage has joined the channel [23:50] prawnsalad: gah, currently unstable. guess ill have to skip node >.< [23:51] hobodave: hey guys, is it possible to use IO redirection via pipes with spawned child_processes? I've tried spawn("tail", ["-f", "-n", 250, filename, " | grep someString"]; but it doesn't seem to actually be executing grep and piping the output through it [23:51] joanfihu has joined the channel [23:51] rmttnmd has joined the channel [23:52] rlidwka: use exec [23:52] copongcopong has joined the channel [23:52] brianseeders has joined the channel [23:52] rlidwka: child_process.exec, not spawn [23:53] hobodave: ok let me try that [23:54] prawnsalad has left the channel [23:54] joanfihu: zzzz [23:56] Aaron__ has joined the channel [23:56] kbhit has joined the channel [23:57] Country has joined the channel [23:57] CoverSli1e: hobodave: the pipe character is not an argument but shell operator, i.e. it needs to be passed to a shell in order to work, which .exec does. to do it completely from within node, you'd take the process that spawned tail, and pipe the stdout to the stdin of another process spawning grep. [23:57] bindr has joined the channel [23:58] CoverSli1e: and the stdin i believe should be resumed first [23:58] CoverSli1e: unless that's changed [23:58] eventualbuddha has joined the channel [23:58] CoverSli1e: it's a bit more code, but that way you don't execute a shell as well. things could get funky [23:59] thetony: CoverSli1e: depends on how it's used [23:59] michaelmartinez: npm install on my mac doesn't produce a local directory with the module in it [23:59] michaelmartinez: Has anyone experienced this? [23:59] ohtogo has joined the channel [23:59] hobodave: CoverSli1e would what you describe be the "better" way to do this? [23:59] dnyy has joined the channel