[00:00] mgolawala: Cheery: There is calipso. It's a CMS work in progress based on express. Haven't played around with it myself. [00:00] jomoho has joined the channel [00:01] freewil has joined the channel [00:02] maxogden: with npm how do i show the filesystem location of a particular module? also is there a way to cat out the entire `npm help` corpus? [00:02] isaacs has joined the channel [00:03] kenperkins has joined the channel [00:03] zomg: Forgot what was the nice async flow control lib for node and wrote one from scratch in 30 ish lines :P [00:03] zomg: How hard can it be! [00:03] zomg: Seems to work.. so far [00:03] zomg: =) [00:06] wbednarski has joined the channel [00:06] chilts: maxogden: you can do 'npm ls' to show what you have installed in node_modules [00:06] chilts: maxogden: not sure about your 2nd request though :) [00:06] descipher has joined the channel [00:06] k1ttty has joined the channel [00:06] sylvinus has joined the channel [00:06] metapandava has joined the channel [00:08] maxogden: chilts: i think i have a node_modules in my folder hierarchy that require() is hitting but i can figure out how to print out what directory npm is actually grabbing packages from on a per-package basis [00:09] jgornick has joined the channel [00:09] c4milo has joined the channel [00:10] maxogden: chilts: npm ls thinks i have an unmet dependency but in reality there is a node_modules folder providing the missing module that is above my current working directory [00:10] isaacs: maxogden: npm ls doens't know what's above the current package. [00:10] isaacs: maxogden: it's a bit dumb about that [00:11] maxogden: isaacs: i figured, but how can i use the smart codez in npm [00:11] isaacs: maxogden: cd .. [00:11] isaacs: maxogden: do that until it works ;P [00:12] chilts: oh cool, I just found 'require.cache' ... that's pretty cool to show you what's been loaded and where from [00:12] mikeal has joined the channel [00:12] isaacs: or require.resolve [00:13] Cheery: hm. someone has reimplemented etherpad in node.js [00:13] maxogden: OH [00:13] chilts: oh sweet, I keep learning even when trying to help someone else ... thanks isaacs :) [00:13] maxogden: require.resolve('packagename') is what i wanted [00:13] Cheery: I think I'll try use it for my benefit. .) [00:13] chilts: Cheery: have you got a link for that? [00:13] ryanfitz has joined the channel [00:14] Cheery: chilts: https://github.com/Pita/etherpad-lite [00:14] isaacs: maxogden: beware, that'll throw if it can't find it [00:14] chilts: thanks :) [00:14] isaacs: maxogden: it's exactly like doing require() [00:14] mikeal has joined the channel [00:14] maxogden: isaacs: i just needed somethin for debugging [00:14] Cheery: chilts: I'll see what they have done and what I need to do in order to integrate it easily into something neat. [00:14] maxogden: "where the bloody 'ell are you getting that module from" [00:15] maxogden: require.resolve('mysterymodule') [00:15] maxogden: "oh" [00:15] maxogden: ACTION recursive curses [00:15] dthompso99 has joined the channel [00:15] mara has left the channel [00:16] coderarity has joined the channel [00:17] koo3 has joined the channel [00:17] zomg: https://gist.github.com/1576557 I hope I didn't make an exact copy of some other lib's parallel function :P [00:21] chilts: zomg: there is similar functionality in a number of other libraries [00:21] chilts: depends whether you like yours more than others :) [00:21] Cromulent has joined the channel [00:21] Cheery: it'd be sort of cool to wire etherpad in such a way that it lets you write modules into your CMS from the webpage. :) [00:21] chilts: I'd probably go with another library which has already been well used and well tested [00:22] zomg: Yeah [00:22] Cheery: just poor for security though.. [00:22] m00p has joined the channel [00:22] martin_sunset_ has joined the channel [00:24] chilts: zomg: e.g. npm show async # https://github.com/caolan/async [00:24] chilts: their function is also called 'parallel' [00:24] chilts: there are others too :) [00:25] jchris has joined the channel [00:26] scott_gonzalez has joined the channel [00:26] Shaunzie has joined the channel [00:27] zomg: chilts: yeah that is a bit similar but mine handles err/ok results better in my opinion ;) [00:27] tiglionabbit_ has joined the channel [00:27] zomg: since you get the results as separate args you can assign them into vars in a much nicer fashion [00:27] zomg: but yeah one likes mom the other likes dad [00:27] zomg: or whatever the saying was [00:27] zomg: :D [00:27] chilts: heh [00:28] chilts: ACTION has never heard that one before [00:28] chilts: I guess that's like Tomato/Tomaato [00:30] monokrome has joined the channel [00:31] rcreasey has joined the channel [00:33] markwubben has joined the channel [00:34] skm has joined the channel [00:36] pierrooo has left the channel [00:37] binarychef has joined the channel [00:38] binarychef has joined the channel [00:40] SamWhited has joined the channel [00:41] Juan77 has joined the channel [00:47] hipsters_ has joined the channel [00:47] disappe__: any examples how to use ndoejs timeout to execute a function after it's done? [00:48] myrkiada has joined the channel [00:48] descipher has joined the channel [00:49] subbyyy has joined the channel [00:49] Aria: like setTimeout(function() { do something }, 10) ? [00:50] tbranyen: execute function after its done? wat you mean recursion? [00:51] disappe__: letme give you a more concrete example: https://gist.github.com/2ac474a72054aef448a7 So as you can see, the while loop inside play relies on voteOnce setting currentVote of each user. I dun want to write spaghetti code. What's a clean way to have votesTied being blocked by voteOnce ? [00:52] wilmoore has joined the channel [00:53] disappe__: Aria: tbranyen: yeah the link's for you guys [00:54] Aria: Make an event emitter out of the whole pile, and couple just based on that. [00:54] Aria: yourgame.on('turnend', function() {do stuff ...}) [00:54] Aria: And when the thing that decides a turn is done runs, have it run yourgame.emit('turndone') [00:54] disappe__: Ah I see [00:55] Aria: That's what I'd do, anyway. There's many ways to do it, but that seems like the right amount of coupling. [00:55] disappe__: so basically I can think of my app as the following (user voting) => (decide the winner etc) => (user voting) ... [00:56] disappe__: so I should structure my app in such a way that when user is done voting, votingDone is emitted, and then decide the winner will emit turnDone [00:56] innociv: node.js doesn't have any built in framework things, does it? Like an array.remove() sort of function instead of having to slice it and such. [00:56] disappe__: and it just keep looping in this sense without blokcing nodejs [00:56] disappe__: innociv: use underscore.js [00:57] chilts: innociv: well, JS has Array.push() and Array.pop(), but yeah, probably not from the middle of the array :) [00:57] innociv: ... I google for it and sugar.js comes up, saying it's like underscore.js [00:57] Shaunzie: ooo the underscore.js website got a facelift O.o [00:57] mightym has joined the channel [00:58] innociv: I'm having trouble finding the website. I found the github [00:58] innociv: http://documentcloud.github.com/underscore/ [00:58] Cheery: this stuff about how etherpad works.. [00:58] Cheery: it's so simple [00:58] tbranyen: innociv: underscorejs.org [00:59] Wizek-other has joined the channel [00:59] Cheery: I'm about only missing which algorithm it is using as a diff. but apparently it is javascript because it works on my browser. [00:59] innociv: is it on the npm? [00:59] tbranyen: tias [01:00] blueadept has joined the channel [01:01] mightym: hey guys, its my first time playing around with node js and wonder which is a common way to deploy node.js … if id build a php project i would use apache and route virtual host for domain xy to my project folder. how should i route a domain to my node app? via apache? [01:02] binarychef has joined the channel [01:04] ryanfitz has joined the channel [01:05] mansoor: anyone know what port websockets servers use? [01:05] innociv: What ever you set it to. [01:05] cmr: mightym: You'd use a reverse proxy like nginx [01:05] Aria: mansoor: 80 and 443 usually [01:06] Aria: disappe__: That makes sense! [01:06] innociv: Yeah looks like 1.2.4 was on it. [01:06] michaelhartau has joined the channel [01:06] cjm has joined the channel [01:06] _dc has joined the channel [01:06] cmr: mansoor: (or mod_proxy) [01:06] innociv: Erm. So. Do I include it? Or just call on _.function()? [01:07] mansoor: cmr: wrong person :p [01:07] cmr: mansoor: d'oh, sorry [01:07] cmr: Usually I notice.. [01:07] mightym: cmr: and apache parodying doesn't make sense right? [01:07] cmr: mightym: (or mod_proxy) [01:07] mightym: cmr: proxying [01:07] mightym: cmr: ah ok [01:08] Prometheus has joined the channel [01:08] cmr: mightym: makes perfect sense, but if you are running apache /just/ for the proxy, it makes sense to use something lighter like nginx [01:08] mansoor: :( feel dumb now, was confused how there can be http and websockets server listening ont he same port :p completely forgot they are both tcp [01:09] mightym: cmr: and should i also use nginx for serving static files or node? [01:10] mansoor: mightym: either will work, but nginx is more efficient [01:10] chilts: you could decide that depending on how your application is set up [01:10] chilts: but yeah, up to you :) [01:11] chilts: most of my static stuff is served by Amazon CloudFront, so neither node or nginx [01:11] Shaunzie has joined the channel [01:12] cjm has joined the channel [01:13] joshsmith: is there any way to globally have access to express' req obj in any jade template regardless of whether you pass it in? [01:15] k1ttty_ has joined the channel [01:15] fr0stbyte has joined the channel [01:16] c4milo has joined the channel [01:16] joshsmith: nevermind, I found it [01:16] joshsmith: dynamic helper [01:17] tokumine has joined the channel [01:17] zilch_ has joined the channel [01:20] QaDeS_ has joined the channel [01:21] shanez_ has joined the channel [01:22] disappe__: Hey nodejs events emitter's events are global right [01:22] fermion has joined the channel [01:22] descipher has joined the channel [01:22] cmr: disappe__: what do you mean? [01:23] stride: disappe__: no, they belong to the object that emits them [01:24] [[zz]] has joined the channel [01:24] disappe__: well I mean look at this example: http://twoism.posterous.com/emitting-events-with-nodejs [01:24] jarek has joined the channel [01:24] plutoniix has joined the channel [01:25] disappe__: If I have two counters, wouldn't counter.on be receiving both? [01:25] innoying has joined the channel [01:26] stride: nope, new Counter creates a separate instance which has its own list of callbacks that have been passed to on('foo', ... [01:27] Sorella has joined the channel [01:28] disappe__: OH [01:28] disappe__: I get it now [01:28] disappe__: nice [01:30] dshaw_ has joined the channel [01:34] tbranyen: isaacs: trying out the whole checking in node_modules to a repo dealio [01:34] tbranyen: how can i gitignore this build/node_modules/grunt/node_modules/zlib.sync/build/ [01:35] tbranyen: i tried /build/node_modules/**/build [01:35] tbranyen: no go :0-/ [01:35] tbranyen: node_modules/**/build didn't seem to work either [01:35] tbranyen: frustrating :-/ [01:36] ryanfitz has joined the channel [01:36] jhbot: 'How to ignore URL with Node to use Backbone router without #?' by Wojciech Bednarski http://stackoverflow.com/q/8774682 (tags: regex) [01:36] tbranyen: heh putting that entire string in works tho... [01:37] tbranyen: ah looks shell related [01:37] tbranyen: which mine handles, god damnit [01:38] innociv: Using underscore.js do I have to do array = _without(array, "foo"); [01:38] innociv: to remove osemthing? Looks like it [01:39] tbranyen: innociv: the underscore docs are really good, also there is a #documentcloud channel if you have specific questions [01:40] CarterL has joined the channel [01:40] postwait has joined the channel [01:40] amigojapan has joined the channel [01:40] RLa has joined the channel [01:41] dilvie has joined the channel [01:45] jldbasa has joined the channel [01:45] pct has joined the channel [01:48] perezd has joined the channel [01:51] khrome has joined the channel [01:53] innociv has joined the channel [01:54] socketio\test\37 has joined the channel [01:56] captain_morgan has joined the channel [01:57] SamWhited has joined the channel [01:58] Shaunzie: Does anyone else hate reading RFCs? ._. [01:58] jaminja has joined the channel [02:03] ovaillancourt has joined the channel [02:03] Juan77 has left the channel [02:04] kazupon has joined the channel [02:04] criswell has joined the channel [02:04] Juan77 has joined the channel [02:08] joshthecoder has joined the channel [02:11] innociv: RFCs? [02:12] cmr: innociv: Request For Comment, usually the ones the IETF puts out (http://www.ietf.org/rfc.html) [02:14] jchris has joined the channel [02:14] CarterL has joined the channel [02:15] ryan_stevens has joined the channel [02:17] jakehow has joined the channel [02:18] disappe__: I need a good convention to indicate a function is a eventListener callback in an object vs others that are just helpers [02:18] disappe__: Any ideas? I could use underscore but then underscore is more like private methods though [02:18] cmr: disappe__: could you give an example of each? [02:19] tiglionabbit_ has joined the channel [02:19] cmr: disappe__: like the difference between fs.readFile and a sort function? [02:19] disappe__: Like this is for engine.on('VOTE_START', engine.voteStart); [02:19] disappe__: and then there is also engine.prototype.getAliveUsers [02:19] cmr: disappe__: Why are you using caps and underscores instead of 'vote start'? [02:19] churp has joined the channel [02:20] isaacs has joined the channel [02:20] disappe__: Because CAP is for enums and constants, which you cannot do camelcase [02:20] disappe__: it's just java convention [02:20] cmr: It's not a constant or an enum, it's a string. [02:20] disappe__: same thing [02:21] cmr: I'd use engine.onVoteStart if you really want something to differentiate. [02:21] disappe__: nice [02:22] coreb has joined the channel [02:24] cainus has joined the channel [02:25] cainus: any mocha users? does anyone know why I get global leak errors for modules that export objects? [02:25] k1ttty has joined the channel [02:28] Shaunzie has joined the channel [02:28] pV has joined the channel [02:29] topaxi has joined the channel [02:29] pV: what's the best way to get an external JSON file and then output it to a templating system [02:29] tbranyen: pV: ajax... ? [02:30] tbranyen: $.get("/somejson.json", function(obj) { template(obj); }) [02:30] tbranyen: oh wait this is node [02:30] tbranyen: >_> [02:30] pV: ;) [02:30] cmr: isaacs: does that pull request meet your requirements? (Sorry for the crappy one earlier, I was really short on time and just wanted to get something pushed) [02:30] Shaunzie: var fs = require('fs'); [02:30] Shaunzie: http://nodejs.org/docs/v0.6.6/api/fs.html [02:31] tbranyen: fs.readFile("/somejson.json", function(err, contents) { var obj = JSON.parse(contents.toString()); template(obj); }); [02:31] tbranyen: wheeeeee [02:31] pV: awesome! thanks tbranyen [02:33] disappe__: Is there a difference between process.EventEmitter(); and event.EventEmitter? [02:33] jocafa has joined the channel [02:34] agnat has joined the channel [02:35] kazupon has joined the channel [02:37] ryanfitz has joined the channel [02:37] Shaunzie: disappe__: I'd assume process.EventEmitter is an instance of event.EventEmitter [02:37] C0deMaver1ck has joined the channel [02:39] dougneiner has joined the channel [02:39] Shaunzie: disappe__: or maybe not…. [02:39] Shaunzie: > process.EventEmitter instanceof event.EventEmitter [02:39] Shaunzie: false [02:39] Shaunzie: > process instanceof event.EventEmitter [02:39] Shaunzie: true [02:39] disappe__: what does that tell you [02:40] dougneiner: I am having trouble installing the sqlite3 module on OS X – is this the right place to seek help? [02:40] Shaunzie: disappe__: that process is an instance of event.EventEmitter but process.EventEmitter is not an instance of event.EventEmitter [02:41] Shaunzie: dougneiner: the sqlite3 module for nodejs? If so yes [02:41] disappe__: Well thanks. Like does it mean I can use them interchangably if the syntax works out? [02:41] k1ttty has joined the channel [02:42] dougneiner: Shaunzie: yes, for nodejs [02:42] dougneiner: I originally tried with 0.6.6, then tried 0.6.4 – reinstalled node twice, reinstalled npm – I even tried building it on its own, but no dice [02:43] Shaunzie: disappe__: process.EventEmitter isn't in the docs, which is a red flag for me. If you need to do eventy stuff, I'd use the event module directly. [02:43] Shaunzie: dougneiner: any errors? [02:43] dougneiner: Yes, let me paste them into a gist – just the console output? [02:43] dougneiner: sorry, I mean - what is helpful to show you, just the console output? [02:44] Shaunzie: dougneiner: I assume the console output is a stack trace? if so gist it [02:45] passionke has joined the channel [02:45] dougneiner: Here is the console output from running 'npm install sqlite3' : https://gist.github.com/cbf40e2c49c47a4a8ca7 [02:45] dougneiner: The configure stage goes fine, but it errors during the build [02:46] dougneiner: if I clone and build it separately from NPM, the ./configure works but it breaks on 'make' [02:46] kerigan_ has joined the channel [02:46] dougneiner: I really appreciate you looking at this – even just pointing me in the right direction is fine [02:47] dougneiner: Every time I search the error, its from people trying to install on Windows – but i am installing on a Mac :/ [02:47] tokumine has joined the channel [02:50] al3xnull has joined the channel [02:50] RLa: dougneiner, looks like it cannot find node headers [02:50] dougneiner: so its a path issue? [02:50] Shaunzie: dougneiner: did you install it using npm? [02:50] dougneiner: Shaunzie: yes, 'npm install sqlite3' [02:51] criswell has joined the channel [02:51] dougneiner: but it does the same thing when I build it from source [02:51] Shaunzie: dougneiner: hm. just tried it myself and it seems to build ok [02:51] dougneiner: ok - so its something I have wrong on my system then… [02:51] RLa: damn gist, is truncating lines [02:53] Shaunzie: dougneiner: can you gist your /Users/doug/npm-debug.log file? [02:53] dougneiner: sure [02:53] RLa: i'm not seeing includes on the last gcc command that produces error [02:53] dougneiner: https://gist.github.com/45c58538b90a75ed9370 [02:53] RLa: so how it gets node headers at all? [02:54] dougneiner: RLa - earlier tonight, when it said "Node node found" I exported the path, and got that error to go away - but the other error was still there [02:56] pV: fs.readFile("http://api.phish.net/api.js?", function(err, contents) { ... [02:56] pV: contents is undefined [02:56] RLa: also, wth are [2/4] cxx: src/database.cc -> build/default/src/database_1.o lines in previous paste [02:56] pV: error says no file exists [02:57] pV: is it because it thinks its local? [02:57] RLa: does readFile support remote files at all? [02:57] cmr: Nope. [02:57] pV: I'm not sure :\ [02:57] RLa: i really hate when build tools hide gcc arguments [02:57] cmr: pV: You want http.get [02:57] pV: thanks cmr [02:58] dougneiner: RLa - I can run a ./configure and a make and get you different output [02:58] warz has joined the channel [02:58] warz has joined the channel [02:58] dougneiner: would that help? [02:58] RLa: maybe [02:58] dougneiner: ok, let me try that [02:58] perezd has joined the channel [03:01] ben_alman: anyone here have much success with fs.watch? I can't seem to get it to fire a change event on OSX [03:01] LeMike has joined the channel [03:03] xeodox has joined the channel [03:03] dougneiner: RLa: https://gist.github.com/23bbf09af44a1c93804b [03:03] dougneiner: hey ben_alman - fancy meeting you here :) [03:03] ben_alman: heya dougneiner [03:04] C0deMaver1ck_ has joined the channel [03:05] RLa: it's the same error, there is no uv_async_t and others [03:05] dougneiner: right [03:05] RLa: i think these should come from node headers [03:05] dougneiner: RLa - ok [03:05] dougneiner: is that a path declaration issue then? [03:05] RLa: if there possibility of waf-node being more verbose and showing gcc arguments [03:06] RLa: it could be include path issues (-Isomething argument missing or wrong) [03:06] dougneiner: ok [03:06] Vennril2 has joined the channel [03:07] RLa: hm, there is verbosity level -vvv [03:07] RLa: add that and also --nocache [03:08] Shaunzie: dougneiner: how did you install node? [03:09] Shaunzie: dougneiner: did you install from source? [03:09] dougneiner: I think I have installed a few different ways so far – probably adding to the issue. [03:09] dougneiner: I think over the last year, i have installed from source, from brew, and lastly using nave [03:09] topaxi has joined the channel [03:09] dougneiner: But the from source might have been on a previous system [03:10] marcello3d has joined the channel [03:10] Shaunzie: dougneiner: what's your $PATH and $NODE_PATH? [03:10] dougneiner: I had it setup, but then uncommented for the latest round of trying things [03:10] dougneiner: one second [03:11] dougneiner: Shaunzie: https://gist.github.com/6b7dbad0b29dc4d78461 [03:12] devongovett has joined the channel [03:12] Shaunzie: dougneiner: can you try removing :/Users/doug/local/lib/node_modules:/Users/doug/node_modules/: from $NODE_PATH? [03:13] dougneiner: sure [03:14] capnregex has joined the channel [03:15] Shaunzie: dougneiner: what's the path to the node src on your machine by the by? [03:15] dougneiner: Shaunzie: The last time I built, it was from nave [03:15] dougneiner: let me look up how to find the source [03:17] dougneiner: ah, ok /Users/doug/.nave/src/0.6.4 [03:17] dougneiner: I also tried this on 0.6.6 and it fails the same way [03:18] josephmoniz has joined the channel [03:21] Shaunzie: dougneiner: Ok I'm guessing the problem is that /Users/doug/.nave/src/0.6.4 isn't in your path. Try appending that to your path variable and try making it again [03:21] dougneiner: ok [03:21] dougneiner: $PATH or $NODE_PATH [03:21] jay_zawrotny has joined the channel [03:21] Shaunzie: $PATH [03:23] perezd has joined the channel [03:24] criswell has joined the channel [03:24] strevat_ has joined the channel [03:26] dougneiner: same error [03:26] Shaunzie: dougneiner: use [03:26] Shaunzie: dougneiner: wait what version are you using? [03:27] Shaunzie: dougneiner: node --version [03:27] dougneiner: v0.6.4 [03:27] dougneiner: I had 0.6.6 installed earlier [03:27] dougneiner: and it was doing the same thing [03:28] dougneiner: How do you recommend installing node? [03:28] dougneiner: I can start over if you think that would help [03:28] Shaunzie: dougneiner: that might help actually. I personally use brew [03:28] dougneiner: ok [03:29] dougneiner: any tips for getting my system back to a "clean" starting point? [03:29] Shaunzie: dougneiner: http://mxcl.github.com/homebrew/ [03:29] dougneiner: yes, I have brew installed [03:29] capnregex has left the channel [03:29] Shaunzie: dougneiner: nave uninstall I guess [03:30] dougneiner: ok [03:30] Shaunzie: https://github.com/isaacs/nave [03:31] Shaunzie: Once that's done, I'd suggesting removing your $NODE_PATH [03:31] dougneiner: removed from .bashrc and .bash_profile - is it anywhere else? [03:32] Shaunzie: don't think so but you can check after it's removed. [03:32] Shaunzie: echo $NODE_PATH [03:34] dougneiner: ok [03:34] dougneiner: brew is installing node [03:34] dougneiner: 0.6.6 [03:36] Shaunzie: dougneiner: ok try installing sqlite3 again [03:36] Shaunzie: Checking for node prefix : not found [03:36] dougneiner: SHould I follow both steps from homebrew? [03:36] dougneiner: Homebrew has NOT installed npm. We recommend the following method of [03:36] dougneiner: installation: [03:36] dougneiner: curl http://npmjs.org/install.sh | sh [03:36] dougneiner: After installing, add the following path to your NODE_PATH environment [03:36] dougneiner: variable to have npm libraries picked up: [03:36] dougneiner: /usr/local/lib/node_modules [03:36] dougneiner: ahhh- should have put in a gist, sorry [03:36] Shaunzie: dougneiner: do you already have npm installed? [03:37] Shaunzie: dougneiner: which npm [03:37] tbranyen: iirc there is a brew command to have it install npm as well [03:37] josephmoniz has left the channel [03:37] dougneiner: npm -v [03:37] dougneiner: 1.1.0-beta-10 [03:37] dougneiner: tbranyen: ah, ok - wasn't aware of that [03:37] dougneiner: Shaunzie: it was installed from before [03:37] isaacs: homebrew should just download the pkg and run it [03:38] isaacs: cuz seriously. how could it be any easier to install node on osx than a pkg that Just Works? [03:38] benvie: so is node master supposed to compile on windows? Because it hasn't for me for a while [03:38] daleharvey has joined the channel [03:38] chunhao_ has joined the channel [03:38] dougneiner: it says there is no formula for npm – and suggest you use the one-liner to install [03:38] benvie: or if it does, it doesn't run [03:38] tbranyen: isaacs: i <3 the pkg [03:39] tbranyen: dougneiner: right, but npm is baked into node now brew just has a default flag to not install it [03:39] isaacs: dougneiner: yeah [03:39] tbranyen: there is probably a flag you use when installing node that reenables it [03:39] dougneiner: ah, ok [03:39] tbranyen: brew install node --with-npm or something [03:39] tbranyen: just guessing [03:40] Shaunzie: dougneiner: curl http://npmjs.org/install.sh | sh [03:40] dougneiner: done [03:40] tbranyen: hrm not seeing it in the formula [03:40] dougneiner: do I put NODE_PATH into .bashrc or .bash_profile – or both [03:41] RLa: .bashrc [03:41] dougneiner: like this? export NODE_PATH=/usr/local/lib/node_modules:$PATH [03:41] lmatteis has joined the channel [03:41] Shaunzie: dougneiner: no just try installing sqlite3 [03:42] RLa: that looks fine [03:42] Shaunzie: dougneiner: Checking for node prefix : ok /usr/local/Cellar/node/0.6.6 [03:42] socketio\test\73 has joined the channel [03:42] dougneiner: Shaunzie: Checking for node prefix : ok /Users/doug/local [03:42] dougneiner: Checking for node path : not found [03:43] c4milo has joined the channel [03:43] dougneiner: should I add /usr/local/Cellar/node/0.6.6 to my PATH ? [03:46] Shaunzie: dougneiner: that's just where the 0.6.6 files are installed on my machine. [03:46] jayniz has joined the channel [03:46] jayniz has joined the channel [03:46] jayniz has joined the channel [03:46] dougneiner: same on mine [03:46] Shaunzie: dougneiner: sqlite3 not install? [03:46] dougneiner: sorry, no – forgot to say that :( [03:46] dougneiner: same error [03:46] dougneiner: Checking for node path : not found [03:46] dougneiner: Checking for node prefix : ok /Users/doug/local [03:47] Shaunzie: hm… prefix path should be /Users/doug/local [03:47] sebastianedwards has joined the channel [03:47] jay_zawrotny has joined the channel [03:48] dougneiner: I'll just leave a bug report on apple's website: Y U NO LIKE SQLITE3 [03:49] lmatteis has joined the channel [03:50] monteslu__ has joined the channel [03:50] svnlto has joined the channel [03:50] bitwalker has joined the channel [03:51] screenm0nkey_ has joined the channel [03:51] strax has joined the channel [03:51] dougneiner: Shaunzie: what do you get when your run this: node-waf --version [03:51] Shaunzie: waf 1.5.16 (7610:7647M) [03:51] dougneiner: same here [03:51] dougneiner: ok [03:53] janeUbuntu has joined the channel [03:53] coreb has left the channel [03:53] garann has joined the channel [03:53] jayniz has joined the channel [03:53] jayniz has joined the channel [03:53] jayniz has joined the channel [03:54] bob_dole: Bob Dole approves Node.js! [03:55] Shaunzie: bob_dole: Bob Dole is a smart man O.o [03:56] cmr: ACTION wonders who Bob Dole is [03:56] bob_dole: republican nomonee against Bill Player Clinton [03:56] Shaunzie: cmr: WWBD = Who Was Bob Dole? [03:56] Aria: The pineapple guy. [03:56] bob_dole: :p [03:56] bob_dole: Bob dole hates apple though [03:56] jhbot: 'Synchronous Requests in Node.js' by Kyle Hotchkiss http://stackoverflow.com/q/8775262 (tags: javascript) [04:00] khrome has joined the channel [04:00] claudioc has joined the channel [04:01] dougneiner: ok guys, thanks for your help tonight [04:01] dougneiner: If I find out what it is, I'll let you know [04:01] michaelhartau has joined the channel [04:03] niftylettuce has joined the channel [04:03] warz: hm. npm install bcrypt is failing for me. looks like im missing something that the compile process needs. [04:03] tytsim has joined the channel [04:04] jtsnow has joined the channel [04:05] MrNko has joined the channel [04:05] bradwright has joined the channel [04:06] tiglionabbit has joined the channel [04:08] ovaillancourt has joined the channel [04:09] dubenstein has joined the channel [04:09] jtsnow has joined the channel [04:09] warz: make error about too few arguments? hm. http://dpaste.com/683718/plain/ [04:12] Outsider__ has joined the channel [04:14] dubenstein has joined the channel [04:14] Raynos has joined the channel [04:16] gavin_huang has joined the channel [04:18] a_suenami has joined the channel [04:19] fson_ has joined the channel [04:19] enmand has joined the channel [04:20] p1d_ has joined the channel [04:20] dougneiner: I must have had path issues from an earlier install. Completely deleting all node related things and installing fixed it. A friend helped me install it via nvm [04:20] dr0id has joined the channel [04:20] dougneiner: Shaunzie and RLa -- I can't thank you enough for the time you spent tonight [04:21] dougneiner: I truly appreciate it in a really big way [04:21] ryanfitz has joined the channel [04:21] RLa: well, i did nothing [04:22] dougneiner: Well, you looked at my logs and tried to offer advice! [04:22] dougneiner: that is something! [04:22] dubenstein has joined the channel [04:23] Shaunzie: dougneiner: no need for thanks glad you got everything worked out :) [04:26] brianseeders has joined the channel [04:27] rwaldron has joined the channel [04:27] dubenste2n has joined the channel [04:27] dubenste1n has joined the channel [04:28] cmwelsh has joined the channel [04:30] dexter_e has joined the channel [04:32] dubenste1n has joined the channel [04:32] dnyy has joined the channel [04:32] outaTiME has joined the channel [04:33] mitc0185 has joined the channel [04:33] amasad has joined the channel [04:33] jtsnow has joined the channel [04:34] outaTiME: Cooool!! [04:34] duncanbeevers has joined the channel [04:35] warz: ah, it looks like its an incompatibility with libuv, perhaps [04:36] jhbot: 'What is a good method to determine a memory leak in node.js?' by Zugwalt http://stackoverflow.com/q/8775410 (tags: memory, profiler) [04:36] warz: did node use libeio pre-0.7? im too new to know. [04:36] warz: or even good enough to know what those libs do, but im thinking about diving into trying to supply to patch for the bcrypt lib, heh [04:37] Overv has joined the channel [04:37] jeremyselier has joined the channel [04:37] outaTiME has joined the channel [04:37] kriszyp has joined the channel [04:40] outaTiME has joined the channel [04:42] tytsim has joined the channel [04:42] postwait has joined the channel [04:44] ryanfitz has joined the channel [04:44] dubenste2n has joined the channel [04:45] boltR has joined the channel [04:46] f1gm3nt has joined the channel [04:46] dubenste1n has joined the channel [04:49] dubenste1n has joined the channel [04:50] andrew12: I wonder if anyone has done anything with steam server list stuffs in node.js [04:51] dubenstein has joined the channel [04:52] mdel has joined the channel [04:54] booo has joined the channel [04:58] OmidRaha has joined the channel [05:00] Overv has joined the channel [05:08] luke` has joined the channel [05:08] vjsingh has joined the channel [05:08] ryanfitz has joined the channel [05:09] vjsingh: Hey guys, I'm getting some weird errors with fs, can anyone help me? [05:09] cmr: vjsingh: sure, gist them up [05:10] mrb_bk has joined the channel [05:10] BruNeX has joined the channel [05:10] vjsingh: Its pretty simple actually, the devils in the details. I'm using fs.rename() on my amazon ec2 instance, and it works fine. However, if I try and move a file to a mounted device (elastic block storage), I get this [05:10] vjsingh: errno: -1, code: 'UNKNOWN', [05:11] vjsingh: error { [Error: UNKNOWN, unknown error '/home/ubuntu/tmp/transcriptions/asdf.pdf'] [05:11] vjsingh: moving to the filesystem works fine from the command line [05:11] cmr: That's /really/ strange [05:11] Aria: Move across filesystems? [05:11] vjsingh: yuuuup [05:11] vjsingh: yeah [05:12] Aria: With what function? [05:12] Aria: fs doesn't have move() [05:12] vjsingh: I tried debugging myself but it all just goes through process.bding, which I guess is a C++ link? [05:12] vjsingh: fs.rename [05:12] justin has joined the channel [05:12] Aria: rename renames files not moves them. [05:12] vjsingh: well [05:12] vjsingh: that makes sense [05:12] Aria: ("moving" within a file system is changing names. Moving across filesystems is opening a new file, copying data, then deleting the original.) [05:12] ryanfitz has joined the channel [05:13] Aria: (Entirely different tasks.) [05:13] amasad has joined the channel [05:13] vjsingh: right, makes sense now [05:13] dexter_e has joined the channel [05:13] vjsingh: k I'll have formidable upload to my other filesystem, hopefully that will work [05:13] vjsingh: thanks! [05:13] dubenstein has joined the channel [05:13] k1ttty has joined the channel [05:13] vjsingh: I hadn't thought of it as another filesystem until you asked [05:14] Aria: Sure thing! [05:14] michaelhartau has joined the channel [05:14] boltR has joined the channel [05:15] cmr: Why is the error so non-descriptive? [05:15] jhbot: 'file_get_contents() equivalent for Node.JS' by Kyle Hotchkiss http://stackoverflow.com/q/8775549 (tags: curl, file-get-contents) [05:15] Aria: Now THAt is a bug. [05:15] cmr: Shouldn't the errno be EXDEV? [05:15] dubenstein has joined the channel [05:15] Aria: It should. [05:18] fcoury has joined the channel [05:18] cmr: Aria: are you checking/filing an issue or shall I? [05:20] Aria: Go for it. [05:20] dubenste1n has joined the channel [05:23] jetheredge has joined the channel [05:25] duncanbeevers has joined the channel [05:25] mattly has joined the channel [05:25] dubenste1n has joined the channel [05:25] dubenstein has joined the channel [05:25] dubenste2n has joined the channel [05:27] screenm0nkey_ has joined the channel [05:27] damon has joined the channel [05:27] perezd: anyone using Doozer with nodejs? [05:27] Raynos has joined the channel [05:30] dubenstein has joined the channel [05:30] sorensen__ has joined the channel [05:30] dubenste1n has joined the channel [05:30] dubenste2n has joined the channel [05:30] dubenstein has joined the channel [05:31] ryanfitz has joined the channel [05:31] joshsmith: node-validator's .isEmail() is not validating emails correctly [05:33] dnjaramba has joined the channel [05:34] goddyzhao has joined the channel [05:34] goddyzhao: hi [05:34] Aria: What does it do instead? [05:35] goddyzhao: ? [05:35] Sami_ZzZ has joined the channel [05:35] goddyzhao: I didn't got the context [05:35] dubenstein has joined the channel [05:35] dubenste1n has joined the channel [05:35] dubenste2n has joined the channel [05:36] isaacs has joined the channel [05:36] goddyzhao: Any ideas about the node v0.6.7 [05:36] mikeric has joined the channel [05:40] dubenste3n has joined the channel [05:43] MatthewS has joined the channel [05:45] davidbanham has joined the channel [05:45] lmatteis has joined the channel [05:47] davidban_ has joined the channel [05:48] ralph has joined the channel [05:48] dubenstein has joined the channel [05:49] dubenste3n has joined the channel [05:49] wycats has joined the channel [05:49] k1ttty_ has joined the channel [05:52] subbyyy has joined the channel [05:54] dubenstein has joined the channel [05:55] JoePeck has joined the channel [05:57] dubenstein has joined the channel [05:59] dubenstein has joined the channel [05:59] mikeal has joined the channel [06:02] dubenste3n has joined the channel [06:02] dubenste1n has joined the channel [06:02] garrensm_ has joined the channel [06:05] passionke has joined the channel [06:07] ryanfitz has joined the channel [06:07] dubenste1n has joined the channel [06:07] dubenste3n has joined the channel [06:07] dubenste4n has joined the channel [06:07] dubenste5n has joined the channel [06:11] skoom has joined the channel [06:12] dscape has joined the channel [06:14] janeUbuntu has joined the channel [06:15] dnyy has joined the channel [06:16] mape: has anyone poked around with the zeromq module and gotten "Caught exception: Error: libzmq.so.1: cannot open shared object file: No such file or directory" on debian? [06:17] Sami_ZzZ has joined the channel [06:18] cmr: mape: how did you install it? [06:18] mape: npm install zeromq [06:18] mape: no errors [06:18] cmr: Hmmm, I wonder how that handles dynamic linking.. [06:19] mape: worked fine on osx after installing zeromq using brew [06:19] dubenstein has joined the channel [06:20] dubenste1n has joined the channel [06:20] dubenste2n has joined the channel [06:20] mape: hmm running ldconfig seems to fix it [06:21] warz: just trying to grok libuv, but libuv sounds like it was written to encapsulate libeio, and whatever windows requires. does libuv still use libeio for nix and maintain a similar api? [06:21] warz: im looking into an incompatibility for eio_custom method. [06:21] warz: looks like it added a parameter in the change to libuv. [06:22] Sami_ZzZ has joined the channel [06:24] mdel has joined the channel [06:24] dubenste1n has joined the channel [06:25] dubenste2n has joined the channel [06:25] dubenste3n has joined the channel [06:25] dubenste2n has joined the channel [06:25] Sami_ZzZ has joined the channel [06:29] tytsim has joined the channel [06:29] Dulak has joined the channel [06:29] dubenste4n has joined the channel [06:30] dubenste5n has joined the channel [06:31] dubenste2n has joined the channel [06:31] Shaunzie has joined the channel [06:35] dubenste2n has joined the channel [06:35] sh1mmer has joined the channel [06:35] dubenste4n has joined the channel [06:36] dubenste5n has joined the channel [06:40] dubenste2n has joined the channel [06:40] dubenste6n has joined the channel [06:43] agnat has joined the channel [06:43] Prometheus has joined the channel [06:44] passionke has joined the channel [06:45] skm has joined the channel [06:46] clarkfischer_ has joined the channel [06:47] dubenste1n has joined the channel [06:48] BulletBobM has joined the channel [06:48] dubenste1n has joined the channel [06:48] dubenste2n has joined the channel [06:48] dubenste3n has joined the channel [06:48] dubenste4n has joined the channel [06:48] slaskis has joined the channel [06:48] ryanfitz has joined the channel [06:52] dubenstein has joined the channel [06:52] dubenste1n has joined the channel [06:53] dubenste2n has joined the channel [06:53] dubenste3n has joined the channel [06:53] dubenste2n has joined the channel [06:56] caolanm has joined the channel [06:57] Sami_ZzZ_ has joined the channel [06:58] dubenste3n has joined the channel [06:58] dubenste4n has joined the channel [06:58] dubenste5n has joined the channel [06:59] Skola has joined the channel [07:01] mikeal has joined the channel [07:02] Sami_ZzZ_ has joined the channel [07:03] dubenste1n has joined the channel [07:03] dubenste2n has joined the channel [07:04] dubenste3n has joined the channel [07:04] dubenste4n has joined the channel [07:05] vjsingh has joined the channel [07:06] dubenste5n has joined the channel [07:06] vjsingh: Anyone know how to serve binary data inline? I get how to do it by setting the header (like res.writeHead(200, {'Content-Type': 'image/gif' });) but how do I do that inline? [07:06] Sami_ZzZ_ has joined the channel [07:08] Shaunzie: vjsingh: what do you mean by inline? [07:09] vjsingh: as in not the entier response [07:09] tiglionabbit has joined the channel [07:09] vjsingh: so if I got a request for an image, I got simply write back the entire image with a header saying image, but how do I just put an image on the page? [07:09] vjsingh: if its not a static file and I'm loading it in with fs [07:10] Sami_ZzZ_ has joined the channel [07:10] vjsingh: with a binary buffer [07:12] Shaunzie: are you talking about in HTML? [07:12] Shaunzie: like ? [07:14] vjsingh: Yes, but isn't the result of reading in the file with fs going to give me binary data? I thought that wouldn't work in the src field like that [07:14] vjsingh: I'm actually trying to serve pdfs inline [07:14] cmr: It needs to be base64-encoded [07:14] Shaunzie: what cmr said [07:14] Shaunzie: data:image/png;base64,_STUFF_HERE_ [07:14] cmr: there are limits on size, though [07:15] cmr: 2MB on Chrome and IE, I think [07:15] Shaunzie: http://en.wikipedia.org/wiki/Data:_URL [07:15] martin_sunset has joined the channel [07:16] vjsingh: Oh ok that makes sense, I actually want to do it for pdfs though so I presume theres no encoding trick for that? [07:16] dubenste1n has joined the channel [07:16] dubenste2n has joined the channel [07:16] dubenste3n has joined the channel [07:16] dubenste4n has joined the channel [07:16] dubenste2n has joined the channel [07:16] k1ttty has joined the channel [07:16] boltR_ has joined the channel [07:18] dubenste5n has joined the channel [07:20] npa has joined the channel [07:21] dubenste6n has joined the channel [07:21] k1ttty_ has joined the channel [07:22] Emmanuel has joined the channel [07:23] Wizek has joined the channel [07:23] Sir_Rai has joined the channel [07:25] georgeps has joined the channel [07:26] qsobad has joined the channel [07:28] dubenste2n has joined the channel [07:34] jhbot: 'Is there a server-side JavaScript framework (node.js) that produces html pages without using a template engine?' by Richard Perfect http://stackoverflow.com/q/8776077 (tags: javascript) [07:35] mikeal has joined the channel [07:35] bingomanatee: anyone have a good recommendation for a nosql repo that does good fuzzy text search? (which means not mongo) [07:36] martin_sunset: bingomanatee: Solr, or index tank which has been open sourced [07:36] warz: mongodb isnt a full text search engine, like others are [07:36] warz: i like elasticsearch [07:36] dr0id has joined the channel [07:36] bingomanatee: that sounds like a lark. thanks [07:36] warz: its built on lucene, so you might be fine with lucene. [07:37] perezd: uncaught undefined: Error: node_redis command queue state error. If you can reproduce this, please report it. [07:37] perezd: this sounds bad [07:39] dubenste2n has joined the channel [07:39] dubenste4n has joined the channel [07:41] rendar has joined the channel [07:43] hellp has joined the channel [07:43] isaacs has joined the channel [07:43] TimTim has joined the channel [07:43] dubenste5n has joined the channel [07:44] glen has joined the channel [07:44] Shaunzie has joined the channel [07:47] ben_alman has joined the channel [07:47] indexzero has joined the channel [07:47] stride: http://venturebeat.com/2012/01/07/building-consumer-apps-with-node/ Breaking: According to venturebeat mirroring an image makes PHP sourcecode look more like JS. [07:48] dubenste5n has joined the channel [07:49] warz: sometimes im positiuve that i must be doing it wrong, because the only module i use mentiuoned there is express [07:49] martin_sunset: Warz it's a web agency, they rarely use bleeding edge [07:50] martin_sunset: Warz but it's great that even agencies adopt node [07:50] LarsSmit has joined the channel [07:50] erikzaadi has joined the channel [07:50] martin_sunset: Warz but yeah, check out jade and stylus, love them ;) [07:51] warz: im using hogan, because i just cant let go of my html. ive yet to venture away from css, too although ive heard stuff like sass and stylus are awesome [07:51] warz: its just too much for me to change up right now :p [07:52] martin_sunset: Warz then give stylus a try. You can write normal CSS in it, and gradually move to the new syntax [07:53] warz: i will seriously need to find a solution to my compiling problem then. currently i just compile coffeescript to js every time i make edits, and then run node app.js. [07:54] warz: when im doing css, i make edits like crazy and check every edit i make. thatd suck to have to compile that too [07:54] cmr: eh, not if you had something watching the file and compiling on every change. [07:54] cmr: Assuming the compile takes <1 sec [07:54] martin_sunset: Warz stylus has the same watch command, you don't notice [07:56] warz: ill try it out. might as well. ive looked it over and i know itll be nice. [07:56] warz: i just really dont think i could drop html, so i dont think ill ever really be tempted to try out jade. [07:57] warz: right now though im trying to grok the nodejs C++ source. trying to patch the bcrypt module for 0.7 libuv [07:57] martin_sunset: Warz exactly my thoughts before I started with haml, qthen before I started with jade. Now I don't use anything else [07:58] martin_sunset: Don't tell me bcrypt is broken in node 0.6??? [07:58] warz: i dont know when node switched to libuv, but yea it breaks moving to it [07:58] TimTim has joined the channel [07:58] warz: eio_custom method adds a param [07:58] herbySk has joined the channel [07:58] martin_sunset: I will be stuck on 0.4 forever.... [07:59] dubenstein has joined the channel [07:59] warz: heh well this is my first time messing with the cpp api of node, but im trying to patch it [07:59] dubenste1n has joined the channel [07:59] warz: taking time figuring out what these params are / do. [08:00] dubenste2n has joined the channel [08:00] dubenste1n has joined the channel [08:02] merlin83 has joined the channel [08:04] dubenste1n has joined the channel [08:04] TimTimTim has joined the channel [08:04] dubenste1n has joined the channel [08:04] dubenste2n has joined the channel [08:05] npa has joined the channel [08:05] dubenste3n has joined the channel [08:05] dubenste1n has joined the channel [08:05] npa has joined the channel [08:05] dubenste2n has joined the channel [08:09] dubenste1n has joined the channel [08:09] dubenste2n has joined the channel [08:10] dubenste3n has joined the channel [08:11] dubenste4n has joined the channel [08:11] Emmanuel has joined the channel [08:12] TimTimTim has joined the channel [08:14] dubenste1n has joined the channel [08:14] dubenste2n has joined the channel [08:14] dubenste1n has joined the channel [08:15] dubenste2n has joined the channel [08:15] TimTim has joined the channel [08:16] dubenste3n has joined the channel [08:19] TheJH has joined the channel [08:19] martin_sunset: Anyone here using dreadnot? [08:19] dubenste1n has joined the channel [08:19] dubenste2n has joined the channel [08:20] dubenste3n has joined the channel [08:20] dubenste1n has joined the channel [08:20] jaket has joined the channel [08:21] dubenste2n has joined the channel [08:22] magnetik has joined the channel [08:24] dubenste3n has joined the channel [08:24] dubenste4n has joined the channel [08:26] jhooks_ has joined the channel [08:26] dubenste1n has joined the channel [08:26] dubenste1n has joined the channel [08:28] githogori has joined the channel [08:29] dubenste2n has joined the channel [08:29] dubenste3n has joined the channel [08:30] dubenste4n has joined the channel [08:31] dubenste1n has joined the channel [08:31] dubenste2n has joined the channel [08:33] dubenste3n has joined the channel [08:34] dubenste4n has joined the channel [08:35] tarnfeld has joined the channel [08:35] dubenste5n has joined the channel [08:35] dubenste6n has joined the channel [08:35] dubenste1n has joined the channel [08:35] tarnfeld has left the channel [08:36] dubenste2n has joined the channel [08:36] dubenste3n has joined the channel [08:37] josh-k_away has joined the channel [08:38] dubenste1n has joined the channel [08:38] fracek has joined the channel [08:39] HT has joined the channel [08:39] dubenste3n has joined the channel [08:40] dubenste4n has joined the channel [08:40] dubenste5n has joined the channel [08:41] jhbot: 'While installing Node.JS forever NPM package, it errors out on git:// address dependency' by nak http://stackoverflow.com/q/8776334 (tags: npm) [08:42] dubenste2n has joined the channel [08:43] dubenste1n has joined the channel [08:44] devongovett has joined the channel [08:45] dubenste2n has joined the channel [08:45] lzskiss has joined the channel [08:45] JaKWaC has joined the channel [08:45] thomasjk has joined the channel [08:45] dubenste3n has joined the channel [08:47] dubenste1n has joined the channel [08:47] dubenste3n has joined the channel [08:47] devongovett has joined the channel [08:47] dubenste4n has joined the channel [08:48] mraleph has joined the channel [08:48] mikeal has joined the channel [08:50] dubenste5n has joined the channel [08:51] mikeal has joined the channel [08:52] dubenste6n has joined the channel [08:55] braoru has joined the channel [08:55] dubenstein has joined the channel [08:55] dubenste7n has joined the channel [08:57] dilvie has joined the channel [08:58] JaKWaC has joined the channel [08:58] dubenste3n has joined the channel [08:58] Druide_ has joined the channel [08:59] dubenste1n has joined the channel [08:59] rendar has joined the channel [09:00] dubenste1n has joined the channel [09:00] dubenste2n has joined the channel [09:00] dexter_e has joined the channel [09:00] dubenste3n has joined the channel [09:00] daglees has joined the channel [09:01] aliem has joined the channel [09:03] _jzl has joined the channel [09:04] dubenste2n has joined the channel [09:04] dubenste3n has joined the channel [09:04] dubenste2n has joined the channel [09:05] dubenste2n has joined the channel [09:05] jhbot: 'nodjs tcp test from remote PC' by coure2011 http://stackoverflow.com/q/8776448 (tags: centos) [09:05] dubenste1n has joined the channel [09:06] dubenste3n has joined the channel [09:06] mara has joined the channel [09:06] dubenste3n has joined the channel [09:08] mikeal has joined the channel [09:08] churp has joined the channel [09:09] jjd has joined the channel [09:10] mara__ has joined the channel [09:10] dubenste1n has joined the channel [09:11] gamera has joined the channel [09:12] gamera has left the channel [09:14] mikrosystheme has joined the channel [09:14] reid has joined the channel [09:15] Swizec has joined the channel [09:16] mytrile has joined the channel [09:19] davetayls has joined the channel [09:20] _jzl has joined the channel [09:20] Skola has joined the channel [09:22] saesh has joined the channel [09:24] plutoniix has joined the channel [09:24] stagas has joined the channel [09:24] jhbot: 'Coffeescript with callbacks & simplified error handling' by mkopala http://stackoverflow.com/q/8776476 (tags: javascript, asynchronous, callback, coffeescript) [09:28] `3rdEden has joined the channel [09:28] thalll has joined the channel [09:29] dexter_e has joined the channel [09:30] indexzero has joined the channel [09:31] kloeri has joined the channel [09:31] tiglionabbit has joined the channel [09:31] khrome has joined the channel [09:33] adambeynon has joined the channel [09:33] agnat has joined the channel [09:39] stagas has joined the channel [09:39] rurufufuss has joined the channel [09:40] ly- has joined the channel [09:42] AndreasMadsen has joined the channel [09:42] SamuraiJack has joined the channel [09:43] herder has joined the channel [09:44] AndreasM_ has joined the channel [09:45] fframed has joined the channel [09:47] AndreasMadsen has joined the channel [09:47] mikrosystheme has joined the channel [09:51] hz has joined the channel [09:52] sechrist_ has joined the channel [09:54] adambeynon has joined the channel [09:57] Wizek has joined the channel [09:59] RLa has joined the channel [10:00] pors has joined the channel [10:01] arnee has joined the channel [10:02] baoist has joined the channel [10:05] mikl has joined the channel [10:07] xeodox has joined the channel [10:08] fangel has joined the channel [10:10] petrjanda has joined the channel [10:12] Shaunzie has joined the channel [10:12] rgl has joined the channel [10:14] dexter_e has joined the channel [10:15] smplstk_ has joined the channel [10:16] magnetik_ has joined the channel [10:17] davetayls has joined the channel [10:17] Shaunzie has joined the channel [10:20] jbpros has joined the channel [10:21] adrianF has joined the channel [10:22] joeytwiddle has joined the channel [10:22] wycats has joined the channel [10:22] AndreasMadsen has joined the channel [10:24] ralph has joined the channel [10:25] joshgillies has joined the channel [10:26] joshgillies has joined the channel [10:29] duncanbeevers has joined the channel [10:29] beawesomeinstead has joined the channel [10:30] CIA-109: node: 03Maciej Małecki 07master * r4b4d059 10/ lib/tls.js : (log message trimmed) [10:30] CIA-109: node: tls: make `tls.connect` accept port and host in `options` [10:30] CIA-109: node: Previous API used form: [10:30] CIA-109: node: tls.connect(443, "google.com", options, ...) [10:30] CIA-109: node: now it's replaced with: [10:30] CIA-109: node: tls.connect({port: 443, host: "google.com", ...}, ...) [10:30] CIA-109: node: It simplifies argument parsing in `tls.connect` and makes the API [10:30] CIA-109: node: 03Maciej Małecki 07master * rdf0edf5 10/ lib/https.js : [10:30] CIA-109: node: https: make `https` use new `tls.connect` API [10:30] CIA-109: node: Refs #1983. - http://git.io/hHXARQ [10:30] CIA-109: node: 03Maciej Małecki 07master * r39484f4 10/ (14 files): [10:30] CIA-109: node: test tls: make tests use new `tls.connect` API [10:30] CIA-109: node: Refs #1983. - http://git.io/EA6rpA [10:30] CIA-109: node: 03Maciej Małecki 07master * r0321adb 10/ doc/api/tls.markdown : [10:30] CIA-109: node: tls doc: update docs to reflect API change [10:30] CIA-109: node: Refs #1983. - http://git.io/ePttqA [10:30] mrb_bk has joined the channel [10:30] tomtomaso has joined the channel [10:31] dnyy has joined the channel [10:31] fcoury has joined the channel [10:31] mattly has joined the channel [10:32] whitman has joined the channel [10:32] vol4ok has joined the channel [10:34] kazupon has joined the channel [10:35] cmwelsh has joined the channel [10:35] fly-away has joined the channel [10:35] lmatteis has joined the channel [10:36] bradwright has joined the channel [10:37] Raynos has joined the channel [10:38] saesh_ has joined the channel [10:38] jeremyselier has joined the channel [10:39] joshgillies has joined the channel [10:41] Skola has joined the channel [10:41] Wizek has joined the channel [10:41] Outsider__ has joined the channel [10:42] thalll has joined the channel [10:43] agnat_ has joined the channel [10:43] cjm_ has joined the channel [10:46] dscape has joined the channel [10:47] BruNeX has joined the channel [10:48] screenm0nkey_ has joined the channel [10:49] stagas has joined the channel [10:49] robhawkes has joined the channel [10:52] Morkel has joined the channel [10:53] salva has joined the channel [10:54] Overv has joined the channel [10:57] salva has left the channel [10:58] jaket_ has joined the channel [11:06] level09 has joined the channel [11:06] adrianF has joined the channel [11:07] AndreasMadsen has joined the channel [11:09] Neil_ has joined the channel [11:10] Edy has joined the channel [11:10] Edy has joined the channel [11:10] tomgallacher has joined the channel [11:12] joshgillies has joined the channel [11:12] pickels_ has joined the channel [11:14] joshgillies has joined the channel [11:15] nicholasf has joined the channel [11:17] mikedeboer has joined the channel [11:17] Burninate-AFK has joined the channel [11:19] joshgillies has joined the channel [11:20] joshgillies: is there a repo I can clone to get an offline copy of "http://nodejs.org/docs/latest/api/index.html" [11:21] cmr: joshgillies: github.com/joyent/node [11:21] cmr: joshgillies: "make doc" [11:21] cmr: joshgillies: it's in out/doc/api/ [11:22] joshgillies: cmr awesome, thanks for that! [11:22] cmr: joshgillies: make sure to checkout the relevant version, of course. "git checkout v0.6.7" for the most recent stable [11:23] joshgillies has joined the channel [11:23] Locke23rus has joined the channel [11:23] mc_greeny has joined the channel [11:26] tap5 has joined the channel [11:29] sechrist has joined the channel [11:30] hipsters_ has joined the channel [11:31] Juan77 has joined the channel [11:32] __doc__ has joined the channel [11:32] replore_ has joined the channel [11:32] replore has joined the channel [11:33] stefpb has joined the channel [11:37] LarsSmit has joined the channel [11:39] stagas has joined the channel [11:40] disappe__ has joined the channel [11:42] webben has joined the channel [11:42] stonebranch has joined the channel [11:43] tap5 has left the channel [11:44] Wizek has joined the channel [11:45] uchuff has joined the channel [11:47] sechrist_ has joined the channel [11:50] satyr has joined the channel [11:53] rio{ has joined the channel [11:54] stagas has joined the channel [11:59] astropirate has joined the channel [12:00] mikrosystheme has left the channel [12:00] matjas has joined the channel [12:01] ll_ has joined the channel [12:02] robotmay has joined the channel [12:03] mikrosystheme has joined the channel [12:05] mikrosystheme has left the channel [12:06] Hanspolo has joined the channel [12:07] mikrosystheme has joined the channel [12:09] Juan77 has joined the channel [12:09] magnetik has joined the channel [12:09] blup has joined the channel [12:10] michaelhartau has joined the channel [12:15] jomoho has joined the channel [12:17] colinjonesx has joined the channel [12:18] thalll has joined the channel [12:22] Cromulent has joined the channel [12:23] buttface has joined the channel [12:24] stagas has joined the channel [12:24] qsobad has joined the channel [12:26] dylang has joined the channel [12:28] d0k has joined the channel [12:28] magnetik_ has joined the channel [12:29] Hanspolo has joined the channel [12:35] adulteratedjedi has joined the channel [12:36] braoru has joined the channel [12:38] TheFuzzball has joined the channel [12:38] kyonsalt has joined the channel [12:41] Neil_ has joined the channel [12:42] QaDeS has joined the channel [12:42] booyaa: word [12:43] LukeBrookhart has joined the channel [12:44] stagas has joined the channel [12:46] k1ttty has joined the channel [12:52] pig_ has joined the channel [12:53] magnetik has joined the channel [12:57] m00p has joined the channel [12:58] chot has joined the channel [12:59] stagas has joined the channel [13:00] OmidRaha has joined the channel [13:02] synkro has joined the channel [13:05] andrew12: is there a way to require() a file in the current scope? i.e. that file has access to all of the current files locals and everything? [13:05] zomg: andrew12: nope, don't think so due to how scope works [13:06] andrew12: darn [13:06] zomg: Why did you want to do that anyway? [13:06] zomg: Sounds like a bad idea to me [13:06] tokumine has joined the channel [13:07] andrew12: well I wanna separate files so my code is easier to understand, but it's kind of annoying to have to pass around every single object that i use in the other file [13:07] andrew12: i really just want to run all of the files as if they were one [13:07] erikzaadi has joined the channel [13:07] zomg: Sounds like maybe you should think more of how your code is separated if you need to pass around that much stuff :) [13:08] zomg: Or you could create a "context" object which stores the important stuff [13:08] zomg: Then just pass that [13:08] andrew12: well it's kind of like, i have a bunch of helper functions written in the main file [13:08] andrew12: and some sort of global stuff [13:09] andrew12: hmm [13:09] zomg: Maybe you should move the helpers into a separate file, then you could require that [13:09] andrew12: yeah [13:10] vol4ok has joined the channel [13:11] EvRide has left the channel [13:13] AndreasMadsen has joined the channel [13:16] Lingerance: andrew12: I know of two solutions: 1) Use something like EstJS' namespaces (where everything gets tacked onto the Ext object somehow) or 2) Use vm.runInCurrentContext instead of require. #2 is probably closer to what you want. [13:16] zomg: #2 sounds like a bad idea [13:16] zomg: :D [13:16] N0va` has joined the channel [13:17] Lingerance: If it's all the same module, I fail to see an issue. [13:17] Lingerance: Other than code-maintenance. [13:17] dr0id has joined the channel [13:17] andrew12: that sounds like exactly what I want [13:18] zomg: Well the main problem I see with it is that it misses the point of separating things into files in my opinion [13:18] Neil_: Can I fork a hubot adapter and use it without having to create a new npm? [13:18] majek has joined the channel [13:18] Lingerance: Yes [13:18] zomg: If you actually have so much code that it becomes hard to maintain it in a single file, you probably should just split it into modules rather than just tacking a hacky solution like that on it [13:19] andrew12: the only problem is that I write code in coco and that thing executes javascript. [13:19] Lingerance: ... [13:20] ph^ has joined the channel [13:20] andrew12: ? [13:20] k1ttty has joined the channel [13:20] Lingerance: ACTION codes in JS. Not something that compiles to JS. [13:20] fairwinds has joined the channel [13:20] astropirate: compiling to js is for sissies [13:21] andrew12: heh [13:21] astropirate: REAL MEN write in js :D [13:21] zomg: I use CoffeeScript quite a lot lately [13:21] zomg: It's just less typing than JS :P [13:21] astropirate: less understandable than js [13:21] booyaa: ACTION grins [13:21] fairwinds_ has joined the channel [13:21] astropirate: its easier to read but takes a bit to understand what it is saying [13:22] zomg: I dunno [13:22] LarsSmit has joined the channel [13:22] zomg: If you write it like Perl, as in using all the doX unless foo and such, then yeah [13:22] astropirate: (in my opinion) [13:22] zomg: I try to write it more like Python, in a sensible manner without using all the gimmicks =) [13:22] mikrosystheme: you can compile to better JS with your hands. [13:22] astropirate: mikrosystheme++ [13:23] mikrosystheme: if you write JS, you shoud try to write more like JS [13:23] astropirate: we need a beer bot for this channel [13:23] astropirate: like #javascript [13:23] andrew12: there was one in here [13:23] level09 has joined the channel [13:24] jhbot: 'getting data from tcp client' by coure2011 http://stackoverflow.com/q/8777871 (tags: centos) [13:25] HardPhuc: it already has a beer bot, but it's currently in beta (as in not replying to anything :) [13:25] astropirate: i suppose the only language that compiles to JS I MIGHT look into is clojure... but they hate all things js which turns me off [13:25] zomg: Clojure is so lispy :/ [13:25] zomg: Haskell has some sort of a Haskell-to-JS thing [13:26] astropirate: shrugs** [13:26] andrew12: clojure is lisp... [13:26] zomg: Not sure how good it is though, but if it is then I might consider using that =) [13:26] astropirate: haskell is the devils spawn [13:26] zomg: andrew12: exactly :P [13:26] andrew12: heh [13:26] astropirate: i tried XMonad DM and i had to play around with haskell NOT fun [13:26] astropirate: *WM not DM [13:27] zomg: Haskell is awesome... assuming you've managed to understand all the insanity in it [13:27] zomg: =) [13:27] astropirate: :) [13:27] RLa: btw, anyone tried heavy static typing (through inference) on javascript? [13:27] astropirate: RLa: not here, but can you give an example? [13:28] astropirate: or link [13:28] RLa: var i = 0; <- infers type int for i [13:28] RLa: no, i do not know such projects [13:28] zomg: WebStorm tries to do some I think [13:29] zomg: Not always very succesfully, nor very heavily [13:29] astropirate: RLa: i know google guys (that hate JS) compile from Java to get "type security" [13:29] astropirate: with their closoure tools [13:29] zomg: You could probably get that by compiling from Haskell too [13:29] RLa: well, what if you do not like java [13:29] tokumine has joined the channel [13:29] RLa: and want closures which java does not have [13:30] astropirate: RLa: hmm lol funny enough i think the latest edition of java supports closures [13:30] zomg: Not sure but maybe you could use some other JVM language? [13:30] RLa: it does not [13:31] RLa: it has been talked for over 5 years but no closures implementation yet [13:31] astropirate: ohh nvm its being debated [13:31] magnetik has joined the channel [13:31] RLa: they will debate more 5 years till java is forgotten and nobody uses it [13:31] booyaa: do we think we'll see a .net or java vm'd version of node? [13:31] booyaa: thinking of ironpython and jruby [13:32] RLa: there is rhino, small layer could be written using nio or nio2 or whatever was their latest async io lib [13:33] RLa: i'm not seeing many benefits of java jvm [13:33] astropirate: or .net [13:33] astropirate: unless m$ wants to extend and exterminate <_< [13:34] RLa: uh, why we need so much complexity [13:34] astropirate: *embrace (phase complete) extend (add it to .net!) exterminate (we'll see..) [13:34] RLa: all vms and that [13:34] booyaa: ironpython's been useful in place of powershell in places [13:35] booyaa: jruby's been useful for using vagrant on 64bit win [13:35] Wizek: Hey! What do you guys think about this: http://jsfiddle.net/KeREY/ ? What do you like/dislike about it? Tree.js is a fresh new unit testing framework. I'd love to hear your feedback! [13:35] skm has joined the channel [13:36] RLa: static typing and ruby and java lovers will like this: http://www.mirah.org/ [13:37] guybrush: Wizek: the UI looks super sweet [13:37] cjm has joined the channel [13:38] Wizek: guybrush, I'm glad you like it. It aims to be. :) [13:39] booyaa: i need to start writing tests for my code... would really like my github repos to be travis-ci tested [13:40] satyr has joined the channel [13:42] MRdNk has joined the channel [13:42] skm has joined the channel [13:42] subbyyy has joined the channel [13:42] abraxas has joined the channel [13:43] Lingerance: or .net <-- JS.NET exists [13:43] erichynds has joined the channel [13:43] astropirate: dear lord [13:43] astropirate: have mercy on us [13:44] ppcano has joined the channel [13:44] Lingerance: http://en.wikipedia.org/wiki/Managed_JScript#JScript_.NET [13:45] dodo_ has joined the channel [13:45] MRdNk: hi all. I'm looking at using the Crypto module; and need some advice. I have previously written an authentication system in ASP.NET - my companies choice of language (booo!). And I want to rewrite it in node.js - so that I can create a more robust and closer to real-time collaboration between the authentication system and any ASP.NET application that uses it. So at the moment, user logs in using their credentials, and the return dat [13:45] MRdNk: Is there a good and secure ecryption algorithum, that can be used by both node and .NET [13:45] MRdNk: ? [13:46] zomg: your first message was cut off at "and the return dat" [13:46] MRdNk: ... data is encrypted and sent back to them via a form post. [13:47] MRdNk: and decrypted the other end. - compiled bin file that is distributed for client applications to use [13:47] NinjaFox has joined the channel [13:48] brianloveswords has joined the channel [13:48] MRdNk: currently using rijndael [13:49] zomg: You could probably just use whatever you're using with aspnet [13:49] zomg: Although if the current system works fine then I'm not sure if you really should replace it with a node thing just for the sake of using node [13:49] MRdNk: is there a rijndael encryption for nodejs? [13:50] Lingerance: nodejs offloads to openssl, which ships with a tool that lists all supported algos [13:50] maushu has joined the channel [13:51] Lingerance: The docs (IIRC) list the command. [13:51] hackband has joined the channel [13:51] zomg: MRdNk: iirc crypto can use AES [13:51] MRdNk: It's not just for the sake of using it, I want to improve the security of it, and make it faster. Currently it's a one time for post for each session, which includes your permissions. [13:51] MRdNk: *form* [13:52] booo has joined the channel [13:52] MRdNk: ... so if permissions change, the user has to logout, and in again. I want to be able to update the data sent, and maintain the users logged in and out state. [13:52] mehlah has joined the channel [13:53] plutoniix has joined the channel [13:56] jhbot: 'nodejs+express-validator. Checking params' by Erik http://stackoverflow.com/q/8778104 [13:57] qsobad has joined the channel [13:57] synkro has joined the channel [13:58] MRdNk: and also create it as a service... rather than get and post to another web application for the user. Basically deeper integration. [13:58] jbpros has joined the channel [13:59] stagas has joined the channel [13:59] qsobad_ has joined the channel [14:00] ziro` has joined the channel [14:00] tanepiper has joined the channel [14:02] MRdNk: Perhaps the key is simply to use Nodejs as the go between, service via nodejs, and run it through .NET on the provider backend. [14:03] MRdNk: or perhaps I'm just wasting my time [14:03] trc has joined the channel [14:03] MRdNk: oh is Rijndael and AES the same thing? [14:05] Lingerance: Yes [14:06] MRdNk: AES isn't part of openssl right? [14:06] shinuza has joined the channel [14:08] MRdNk: Well that makes a lot more sense! Now I think I can work it out a bit better, just need to play with it and see what I get. [14:08] neshaug has joined the channel [14:09] HardPhuc: man I love theme forest sometimes [14:09] HardPhuc: instead of paying an expensive designer I just buy a template for 20 bucks [14:10] MRdNk: Just to clarify why I'm rewriting it, is that I want a much more concurrent connection between logged in user, and their relevant session data. Rather than keeping all that data in the ASP.NET session, which seems open to attacks... [14:10] HardPhuc: it's not unique, but the odds of visiting the site with the same design is close to 0 [14:10] Lingerance: $ openssl list 2>&1 | grep -oi aes | wc -l [14:10] Lingerance: 6 [14:10] Lingerance: MRdNk: ^ [14:10] Lingerance: AES is in OpenSSL [14:10] MRdNk: Though its used in a closed network, but is used in other closed networks bundled with other software [14:12] tokumine has joined the channel [14:12] MRdNk: we sell - and so needs to be pretty secure. The data sent isn't that sensitive, but what it gives access to is. [14:12] LarsSmit has joined the channel [14:13] MRdNk: When i do... $openssl list-message-digest-algorithms i don't see AES [14:13] lietu: erm, isn't message digest another way to say "hash"? [14:14] MRdNk: ah ok. Showing my ignorance. [14:15] MRdNk: openssl list - bit more useful [14:16] MRdNk: :) [14:18] MRdNk: still a bit of a bash n00b [14:20] vol4ok has joined the channel [14:21] qsobad has joined the channel [14:21] mandric has joined the channel [14:21] mikl has joined the channel [14:22] pita has joined the channel [14:22] pita: https://github.com/Pita/V8-Hash-Collision-Generator [14:22] MRdNk: gonna have a play and see if I can get the same values with nodejs and .NET [14:23] strevat_ has joined the channel [14:25] criswell has joined the channel [14:27] kriszyp has joined the channel [14:27] Rushing has joined the channel [14:27] slaskis has joined the channel [14:29] akter has joined the channel [14:29] cjm has joined the channel [14:30] janeUbuntu has joined the channel [14:30] enmand has joined the channel [14:32] kloeri has joined the channel [14:32] jaket has joined the channel [14:35] wbednarski has joined the channel [14:39] mc_greeny has joined the channel [14:39] davetayls has joined the channel [14:44] zemanel has joined the channel [14:46] baudehlo has joined the channel [14:50] AndreasMadsen has joined the channel [14:50] madhums has joined the channel [14:56] Cromulent has joined the channel [14:59] stagas has joined the channel [15:01] ryanfitz has joined the channel [15:03] __tosh has joined the channel [15:07] djcoin has joined the channel [15:07] bnoordhuis has joined the channel [15:12] jocafa has joined the channel [15:13] jhbot: 'How do I run a index.jade file?' by Xtreme http://stackoverflow.com/q/8778604 (tags: javascript, html5) [15:14] stagas has joined the channel [15:18] loucal has joined the channel [15:18] markwubben has joined the channel [15:19] gavin_huang has joined the channel [15:20] LarsSmit has joined the channel [15:20] LarsSmit1 has joined the channel [15:20] qsobad has joined the channel [15:21] MRdNk: What am I doing wrong... [15:21] MRdNk: var buf = new Buffer(password, encoding='utf8'); var encrypt = crypto.createCipher('aes-256-cbc', buf.toString()); [15:22] MRdNk: error: Assertion failed: (encoding == BINARY), function DecodeWrite, file ../src/node.cc, line 1096. Abort trap: 6 [15:22] abc__ has joined the channel [15:22] MRdNk: password is a variable containing the string [15:23] secoif has joined the channel [15:23] secoif has joined the channel [15:24] Leemp has joined the channel [15:24] secoif has joined the channel [15:24] abc__: new blog post about v8 and node http://jcla1.com/blog/2012/01/08/exploring-the-v8-js-engine-part-2 [15:25] secoif has joined the channel [15:25] MRdNk: @Lingerance ^ [15:25] joshsmith has joined the channel [15:25] Sorella has joined the channel [15:25] secoif has joined the channel [15:26] secoif has joined the channel [15:29] dexter_e has joined the channel [15:29] Lingerance: Try it without making a Buffer pointlessly [15:29] jchris has joined the channel [15:29] TheJH: MRdNk, " encoding='utf8'" leaks [15:29] insin has joined the channel [15:31] MRdNk: i tried that before. Event this example from StackOverflow isn't working... http://stackoverflow.com/questions/6038620/aes-encrypt-in-node-js-decrypt-in-php-fail [15:31] MRdNk: same error [15:31] MRdNk: *even* [15:32] Vadi has joined the channel [15:32] Vadi: Hello Noders! I know this question might have come up earlier here . What is the best emac setup to develop using nodejs [15:33] iaincarsberg has joined the channel [15:33] Vadi: The experience with emacs+nodejs is not as like you do for example scala or java [15:33] petrjanda has joined the channel [15:35] MRdNk: any ideas? [15:35] Lingerance: > var e = require('crypto').createCipher('aes-256-cbc', 'password'); e.update('asdf'); e.final('hex') [15:35] Lingerance: '777f6e611302359099b81c68c02964ff' [15:38] madhums has joined the channel [15:38] joshsmith: anyone here use Jade templates with express? [15:39] Lingerance: Yes. But not I. [15:39] Hanspolo has joined the channel [15:39] insin: yup [15:39] storrgie has joined the channel [15:39] Cromulent has joined the channel [15:39] joshsmith: I'm having trouble conceptualizing how to structure a menu [15:39] joshsmith: so that I can show active items depending on the current route/url [15:39] Juan77 has joined the channel [15:39] jtsnow has joined the channel [15:40] joshsmith: in PHP I would've had some complex if/else chain checking the request [15:40] joshsmith: but I'm sure there's a more elegant way that's just eluding me [15:41] Sami_ZzZ_ has joined the channel [15:41] joshsmith: even within my layout.jade I'm not sure how to do it [15:42] joshsmith: any ideas? [15:43] mmalecki: joshsmith: I hate this problem :/ [15:43] insin: in Django templates, I usually use CSS for that and set the body class using a block: , overriding it in a child template - need to check if I can do something similar in jade, since blocks are element level [15:44] joshsmith: well, at least I'm not an idiot for struggling with this [15:44] MRdNk has joined the channel [15:44] mmalecki: joshsmith: maybe render it client-side? [15:44] joshsmith: I could copy/paste everywhere, but that would be ridiculous [15:44] mmalecki: it'd be a simple indexOf check [15:45] AndreasMadsen has joined the channel [15:45] damond has joined the channel [15:46] Vadi: any emacs+nodejs guys here? [15:46] Vadi: I am really not getting enough out of using emacs as a editor to develop nodejs apps [15:46] Sami_ZzZ_ has joined the channel [15:46] Vadi: What you guys use ? I am can use eclipse netbeans etc., just wanted to take thoughts from here .. [15:47] Vadi: any help is greatly appreciated [15:47] joshsmith: Vadi: I use TextMate [15:47] Sir_Rai: Vim [15:48] loucal: Vadi: vi or textmate [15:48] salva has joined the channel [15:48] salva has left the channel [15:48] Vadi: no emacs here? [15:48] salva has joined the channel [15:49] loucal: im sure some people do, I personally wouldn't ever use it over vi, but don't want to discount it [15:49] tarnfeld has joined the channel [15:49] Vadi: loucal: thanks [15:49] thalll has joined the channel [15:50] loucal: Vadi: no prob, see if you can learn a little vi bit by bit, it helps because you can use it anywhere. For instance I can ssh anywhere with my smartphone and thanks to screen and vi I can code from anywhere fairly comfortably [15:50] insin: sweet, it worked [15:50] tarnfeld: hey guys, i have a quick question.. i'm using express… how can I perform a redirect within a callback inside my route function, e.g.: after i've got a mongodb result… I can't simply return as that won't return from the route function, only from my callback [15:50] monteslu_ has joined the channel [15:50] joshsmith: Vadi: there's a peepcode video that'll teach you how to use some of vi [15:50] braoru has joined the channel [15:51] k1ttty has joined the channel [15:51] Vadi: joshmith: thanks, i will look into that [15:51] secoif: Vadi there was a discussion on the mailing list about editors a while back https://groups.google.com/forum/#!topic/nodejs/HXEyw-szjsE [15:51] tarnfeld: here's a snippet.. http://scrp.at/aWa [15:51] kiranryali has joined the channel [15:51] Sami_ZzZ_ has joined the channel [15:51] Vadi: I am bit of used to vi though, i will take a look into peepcode thanks joshsmith [15:52] joshsmith: sure np Vadi [15:52] joshsmith: if you're not strong with command line generally, they teach some other stuff, too [15:52] joshsmith: it even helped me out, and I consider myself pretty advanced [15:52] joshsmith: for example, they had a brilliant idea about organization of my bashrc/profile, including putting that stuff into source control [15:53] secoif: Vadi if you're on a mac, macvim is a good choice [15:53] Vadi: ok, i am on ubuntu [15:53] secoif: Vadi ahh, try gvim then. [15:54] tarnfeld: Would somebody be able to take a quick look at my little question (http://scrp.at/aWa) - i'm sure its simple I'm just a bit lost :( [15:54] secoif: tarnfeld you could ask in #express [15:55] tarnfeld: secoif: yeah I will do, though it seems probably a basic node (or even javascript) question [15:55] loucal: so if anyone is bored today, I'm not really 'stuck' on anything but I open sourced my first node.js project on github last week and I am definitely open to suggestions for improvement. I'm sure the node newbness shows up in more than a couple places. It is a cache for the itunes store search api because apple states large websites should have some sort of caching architecture https://github.com/loucal/istore-node-cache If you look at the [15:55] loucal: DRY_but_ugly branch you will see where I tried to dry up the code, not sure which version makes more sense. Anyway, would surely appreciate a few eyeballs whenever anyone feels like looking. :) [15:56] loucal: Please keep criticism constructive though if possible lol, like I said, first 'real' project. [15:56] joshsmith: I would look if I weren't a complete noob myself loucal [15:56] andrewfff has joined the channel [15:56] joshsmith: I'd be more of a hindrance than a help :D [15:57] loucal: haha thanks :) its way simple, only 90 lines or so though so check it out if you feel like it [15:57] TheJH: loucal, if you don't want people to be able to crash your server, check body length in the data listener [15:57] jhbot: 'Rendering menus as Jade view partials in Express' by Josh Smith http://stackoverflow.com/q/8778933 (tags: view, menu, express, jade) [15:58] ncb000gt has joined the channel [15:58] loucal: TheJH: awesome, thank you. You are talking about the body length coming from apple's servers? [15:58] TheJH: loucal, here: https://github.com/loucal/istore-node-cache/blob/master/server.js#L76 [15:59] TheJH: loucal, you have some relatively deep nesting there... [15:59] TheJH: loucal, also, you often ignore "err" [16:00] loucal: TheJH: thank you. Yeah, did you check out the DRY_but_ugly branch? [16:00] TheJH: loucal, not so deep anymore, but still... [16:00] loucal: yeah, its not done, will definitely be using err to keep it from crashing :) [16:00] loucal: TheJH: what would you do about the nesting personally, the async module? [16:00] TheJH: loucal, also, use the request library, it can do stuff like buffering responses for you [16:01] TheJH: !@loucal npm info request [16:01] jhbot: loucal, request by Mikeal Rogers, version 2.9.3: Simplified HTTP request client. [16:01] joshsmith: loucal: https://github.com/mikeal/request [16:01] TheJH: joshsmith, :D [16:01] joshsmith: I'm a bot :D [16:01] caolanm has joined the channel [16:01] loucal: TheJH: hmm, that sounds useful ;) Yeah, I definitely was suggested request I just wanted to understand the basics as well as possible before getting into other people's libraries [16:02] TheJH: loucal, also, about the deep nesting: you might want to try streamlinejs [16:02] TheJH: loucal, that's a good approach :) [16:02] TheJH: loucal, I personally think that the best solution to the nesting hell is cocos backcall syntax, but people won't be able to read your code anymore :D [16:03] TheJH: coco has really different syntax than normal JS [16:03] joshsmith: the only ads I'm getting on SO are Joyent Cloud ads [16:03] loucal: nice, thank you so much man im getting a lot of good stuff to look into. TheJH about your first comment, since I am limiting the response from the itunes server, how can they send a response that is too large? Sorry not questioning you just want to understand better. [16:03] TheJH: joshsmith, I often get those, too :D [16:03] joshsmith: I hope they're not paying CPM [16:03] TheJH: loucal, no, not talking about your request to itunes [16:03] joshsmith: I just keep refreshing to see if I get something else [16:03] loucal: TheJH: checking out cocos now too [16:03] socketio\test\41 has joined the channel [16:04] TheJH: loucal, https://github.com/satyr/coco [16:04] TheJH: loucal, I'm talking about your http server [16:04] loucal: TheJH: sorry, i get that, i mean since that is the only place the response would originate from I thought [16:04] loucal: but now i am realizing what you mean since it goes into my db if there is a match [16:05] loucal: the way it is working right now it actually only pulls an exact match for the artist name from my db so any response that doesn't come from itunes is limited to 1 document, if that makes any sense [16:05] Sami_ZzZ_ has joined the channel [16:05] loucal: I definitely want to correct it so it doesn't open up a hole in the future, but I am wondering given that, is it still possible to crash it. (not from an I dont feel like fixing it standpoint just simply to understand it before I do) [16:06] TheJH: loucal, https://github.com/loucal/istore-node-cache/blob/DRY_but_ugly/server.js#L78-89 - can't anyone connect there? [16:06] loucal: TheJH: ahhh on the request, duh [16:06] buttface has left the channel [16:06] TheJH: loucal, if I connect and send endless data, your RAM fills up until v8 decides to kill the script [16:06] loucal: they can overload it with a huge request body your saying? [16:06] insin: joshsmith: this is what I do for active menu items, although I use template inheritance (for the win!): https://github.com/insin/iswydt/commit/8ba832800dbbc7804f9badd6e58acb723c2abace [16:07] TheJH: loucal, yes [16:07] loucal: yeahhhh, sorry TheJH I must not have had enough coffee this morning ;) [16:07] jbpros has joined the channel [16:07] kazupon has joined the channel [16:07] postwait has joined the channel [16:07] loucal: so for this particular server, I could limit the body to 0 couldn't I? [16:08] loucal: or would that break things? All the info i need from the request is in the URI [16:08] joshsmith: insin: thanks for sharing. I do something like that myself, but I really want to check if the current menu item is the current page/route [16:09] TheJH: loucal, yes, just destroy the requests socket on data [16:09] mikedeboer has joined the channel [16:09] joshsmith: so in your Home/Services, one would show as an active if you were on that route [16:11] TheJH: ACTION knows exactly how he'd solve joshsmith's problem in node-vacuum :P [16:11] joshsmith: TheJH: should share [16:11] joshsmith: the templating really probably doesn't differe that much [16:12] hdms has joined the channel [16:12] joshsmith: should I pass in req.path to all my views or something? [16:13] TheJH: joshsmith, in vacuum, I'd create a template function for menu entries that takes the URL and the link target from the context and conditionally highlights stuff [16:13] TheJH: joshsmith, yes, I'd do that [16:13] N0va has joined the channel [16:13] daleharvey has joined the channel [16:14] joshsmith: I'm probably gonna have to do some ugly if/else statements [16:14] insin: how do you plug arbitrary functions into Jade's context? [16:14] fermion has joined the channel [16:15] TheJH: insin, who are you talking to? [16:15] McMAGIC--Copy has joined the channel [16:15] insin: anyone :) [16:15] HardPhuc: this channel is quite busy for a sunday :) [16:15] mehlah has joined the channel [16:15] joshsmith: HardPhuc: I have way too much work to do to be sitting around [16:15] HardPhuc: insin I usually pass them as a local var [16:15] TheJH: joshsmith, that huuuurts [16:16] joshsmith: TheJH: hmm I could do an an each loop [16:16] pickels_ has joined the channel [16:16] jay_zawrotny has joined the channel [16:16] joshsmith: and check if req.path matches the path in the array [16:17] TheJH: joshsmith, uhhh... can't you just, like, define a template function "menuentry" that checks whether its "href" attribute matches the request url? [16:17] HardPhuc: insin, then i just do #{myfunc(myvar)} [16:17] loucal: TheJH: I think I misinterpreted what you meant by destroying the socket.. I first tried commenting out line 76 completely, but that gives me error: request not found, so then I just tried removing the body += chunk from it but still same error [16:18] joshsmith: TheJH: I'd really need to see an example to grasp that. I'm not familiar enough with templating [16:18] Cromulent has joined the channel [16:19] wbednarski has joined the channel [16:19] insin: a mixin which takes the item's utl and text [16:19] insin: *url [16:20] astropirate has joined the channel [16:21] joshsmith: hmm I'm reading the docs, but just missing it [16:21] joshsmith: I'm gonna play around and see what I can come up with [16:22] joshsmith: would I have to pass in req.path to *every* view if I did this? [16:22] joshsmith: within my layout.jade, that is [16:24] jbpros has joined the channel [16:24] okee has joined the channel [16:24] insin: does express have anything like Django's context processors? They're a list of functions which get called every time a template is being rendered, and can add things to the template context before it's used [16:24] joshsmith: ah no, I can use dynamicHelpers! [16:25] insin: that's the one [16:25] TheJH: joshsmith, example in node-vacuum: https://gist.github.com/741ef79ae1689fa0eb11 [16:25] Juan77 has joined the channel [16:26] vol4ok has joined the channel [16:26] joshsmith: thanks TheJH, looking in a minute [16:27] insin: ah, helpers is where you could stick utility functions too [16:27] al3xnull has joined the channel [16:30] joshsmith: oh really? [16:33] owner__ has joined the channel [16:34] sylvinus has joined the channel [16:34] _dc has joined the channel [16:38] erikzaadi has joined the channel [16:43] outaTiME has joined the channel [16:44] amasad has joined the channel [16:44] stagas has joined the channel [16:47] bobbuck has joined the channel [16:48] loucal: TheJH: I have tried a bunch of ways to somehow truncate that "body", even adding in if (body.length < 1024) { body += chunk } all with that same error. I wonder if the journey library is already handling this? I might have to dig into the code and see, it doesn't seem to want me to do what your suggesting, unless I am just totally doing it wrong. [16:49] stagas has joined the channel [16:50] innoying has joined the channel [16:51] jhbot: 'Good idiom to filter out members of an object (javascript)' by Grumdrig http://stackoverflow.com/q/8779304 (tags: javascript, delete) [16:52] joemccann has joined the channel [16:52] hdms_ has joined the channel [16:53] hdms has joined the channel [16:53] Vennril has joined the channel [16:53] HardPhuc: damn I love MongoDB [16:54] jp232 has joined the channel [16:55] HardPhuc: on my first project with it and already fell in love [16:55] HardPhuc: and combining it with node… awesome [16:55] satyr has joined the channel [16:55] warz has joined the channel [16:55] warz has joined the channel [16:56] kyonsalt: 10HardPhuc: show it? [16:57] HardPhuc: can't it's not public yet [16:57] HardPhuc: will be in about 14 days [16:57] georgeps has joined the channel [16:58] HardPhuc: hopefully I'd like to make a startup out of it [16:58] binaryjohn has joined the channel [16:58] HardPhuc: I'm a bit tired of PHP which is my bread and butter [16:59] HardPhuc: and I've reached a point with my current CMS of choice where I feel there's not much I can learn [17:00] magnetik_ has joined the channel [17:02] arcanis has joined the channel [17:05] enmand has joined the channel [17:05] TheJH: loucal, are you sure you didn't change something else that causes it to stop working? [17:06] loucal: TheJH: Yeah, that is the only line I changed line 76/77 is now request.addListener('data', function(chunk) { [17:06] loucal: if (body.length < 1024) { body += chunk } }); [17:07] loucal: I tried a bunch of different lengths up to huge numbers, and I tried just getting rid of that listener [17:07] ryanfitz has joined the channel [17:07] damond: uv_run question: I have a custom server that runs in its own posix thread in a native Add On. What is the proper way to keep the node process running the uv_run event loop? In other words, if I start the server in my Add On via a script, my process will exit. I've tried calling uv_ref(uv_default_loop()) in the v8 thread in my Add On but the process still exits. I've tried to add a SignalWatcher via process.on and that still exits. I [17:07] damond: bind to a TCP/UDP port or set a timer and that works, but neither seem correct. I didn't see anything in the process object for doing this from script. What does the Add On have to do? [17:07] loucal: as well as just leaving body as an empty string [17:08] TheJH: loucal, that's really weird [17:08] mdel has joined the channel [17:08] TheJH: loucal, what does "git diff" say? [17:08] magnetik__ has joined the channel [17:09] loucal: TheJH: it says what I just said in diff speak ;) [17:09] loucal: but I could paste it somewhere if you want to verify [17:09] loucal: journey is just instantly sending back a json response with an error object in it like this {"error":"request not found"} [17:10] quackquack has joined the channel [17:10] ovaillancourt has joined the channel [17:10] mmalecki: use directory, journey is pretty outdated [17:10] quackquack: join #ruby [17:10] mmalecki: *director [17:10] quackquack has left the channel [17:10] CarterL has joined the channel [17:10] loucal: mmalecki: cool, searching now [17:11] HardPhuc: http://pastebin.com/hHMSDh2e here if someone finds it useful [17:11] loucal: journey just seemed the simplest because I only wanted to deal with json, but I never ran across directory [17:11] AndreasMadsen: Why do a not get an EADDRINUSE error when using a UNIX path as TCP address, when i already have a running server? [17:11] HardPhuc: a simple loop that registers listeners for all methods that start with 'on' [17:12] loucal: director* lol [17:12] AndreasMadsen: https://gist.github.com/1579031 [17:12] zeade has joined the channel [17:14] Juan77 has joined the channel [17:15] snearch has joined the channel [17:16] patcito has joined the channel [17:17] vol4ok has joined the channel [17:18] fairwinds has joined the channel [17:18] jhbot: 'spikes in trafic' by dryprogrammers http://stackoverflow.com/q/8779509 (tags: mongodb, amazon-ec2, redis) [17:23] quijote has joined the channel [17:24] stagas has joined the channel [17:25] blup has joined the channel [17:26] rwaldron has joined the channel [17:30] fairwinds has joined the channel [17:32] jomoho2 has joined the channel [17:32] pksunkara has joined the channel [17:32] charlenopires has joined the channel [17:34] luke`_ has joined the channel [17:34] isaacs has joined the channel [17:34] brianseeders has joined the channel [17:34] Venom_X has joined the channel [17:35] satyr has joined the channel [17:37] garann has joined the channel [17:37] Neil_ has joined the channel [17:37] devongovett has joined the channel [17:37] ryanfitz has joined the channel [17:38] Prometheus has joined the channel [17:39] Carmivore has joined the channel [17:42] criswell has joined the channel [17:42] djbell has joined the channel [17:42] mange has joined the channel [17:44] stagas has joined the channel [17:46] jhbot: 'How to keep Node uv_run from exiting when hosting own thread in an add on?' by damondanieli http://stackoverflow.com/q/8779717 [17:48] _jzl has joined the channel [17:48] rgl has joined the channel [17:49] perezd has joined the channel [17:49] Venom_X has joined the channel [17:50] draginx has joined the channel [17:50] draginx: How do I yeild in jadejs for expressjs? [17:50] lwille has joined the channel [17:52] Juan77 has joined the channel [17:59] altivec has joined the channel [17:59] joshsmith: I'm using Jade in Express; can I pass in values to an included jade file (for partial rendering)? [17:59] callumacrae has joined the channel [17:59] mikeal has joined the channel [18:01] vol4ok has joined the channel [18:02] charlenopires_ has joined the channel [18:02] insin: "lexically scoped variables function as if the included Jade was written right in the same file" [18:02] spolu has joined the channel [18:02] joshsmith: insin: that's weird; that's not happening for me [18:04] joshsmith: I'm getting 'Cannot read property' within the included jade file [18:04] mehlah has joined the channel [18:07] tomgallacher has joined the channel [18:08] chadskidmore has joined the channel [18:10] wtfizzle has joined the channel [18:10] SamWhited has joined the channel [18:11] joshsmith: actually, my bad, I did something stupid [18:12] tahu has joined the channel [18:12] cjm has joined the channel [18:13] jscheel has joined the channel [18:13] dob_ has joined the channel [18:14] tarnfeld has left the channel [18:16] fairwinds_ has joined the channel [18:18] SamuraiJack has joined the channel [18:22] _dc has joined the channel [18:24] stagas has joined the channel [18:25] mikeal has joined the channel [18:25] eldios has joined the channel [18:25] wbednarski has joined the channel [18:25] Juan77 has joined the channel [18:25] dshaw_ has joined the channel [18:28] sdwrage has joined the channel [18:29] tkaemming has joined the channel [18:30] wbednarski has joined the channel [18:34] esmevane has joined the channel [18:34] Hanspolo has joined the channel [18:35] rgl has joined the channel [18:35] mikeal has joined the channel [18:39] carlyle has joined the channel [18:41] AndreasMadsen has joined the channel [18:44] magnetik_ has joined the channel [18:44] bitwalker has joined the channel [18:44] dexter_e has joined the channel [18:45] joshthecoder has joined the channel [18:45] uchuff has joined the channel [18:46] stonebranch has joined the channel [18:46] jbpros has joined the channel [18:46] rgl has joined the channel [18:47] pengwynn has joined the channel [18:48] benjamin_ has joined the channel [18:49] AndreasMadsen has joined the channel [18:51] italic has joined the channel [18:51] italic: hi. is there a way to clear the console output in the repl? [18:53] liar has joined the channel [18:53] willwhite has joined the channel [18:53] Morkel has joined the channel [18:53] chrisdickinson: out of curiosity, are there any node-nfs or node-smb modules? [18:54] neurodrone has joined the channel [18:56] agnat has joined the channel [18:58] wtfizzle1 has joined the channel [19:00] dodo_ has joined the channel [19:00] ger^kallisti has joined the channel [19:01] wiwillia has joined the channel [19:01] blup has joined the channel [19:03] altivec has joined the channel [19:04] warz has joined the channel [19:07] wtfizzle1 has left the channel [19:09] shinuza has joined the channel [19:11] koo3 has joined the channel [19:11] mange has joined the channel [19:16] jergason has joined the channel [19:16] hipsters_ has joined the channel [19:18] jakehow has joined the channel [19:18] warz: dang. neither hashlib or bcrypt libs are compatible with node 0.7, yet. [19:18] tomtomaso has joined the channel [19:19] stagas has joined the channel [19:21] draginx has left the channel [19:23] TheJH: what's that global "errno" thing? [19:24] socketio\test\26 has joined the channel [19:25] Lennier has joined the channel [19:27] joeytwiddle has joined the channel [19:27] qsobad has joined the channel [19:29] context: thejh: its where error codes are placed after an error. [19:30] sgfgdf has joined the channel [19:31] sgfgdf: hello, guys! is it normal to get undefined message when creating functio inside node's REPL? my version is 0.6.7. [19:31] sgfgdf: *function [19:31] TheJH: context, why is that a global? [19:31] TheJH: sgfgdf, yes [19:32] sgfgdf: TheJH: what is the purpose? everything that returns void will print undefined from now? [19:32] TheJH: context, like, an errno - doesn't that belong to an Error object instead of "global"? [19:32] TheJH: sgfgdf, no [19:33] sgfgdf: TheJH: can you explain, please? [19:33] TheJH: sgfgdf, function statements are statements, and only expressions return values [19:33] TheJH: sgfgdf, uh, moment [19:33] TheJH: sgfgdf, actually, you mean, why it prints undefined instead of nothing? [19:33] TheJH: sgfgdf, in that case, you're right [19:34] TheJH: sorry [19:34] sgfgdf: TheJH: yes, even when i hit enter i get the undefined message. [19:34] sgfgdf: TheJH: is it some change that will remain, or it is a bug that will be fixed in the next versions? [19:35] TheJH: sgfgdf, not entirely sure [19:35] robhawkes has joined the channel [19:35] sgfgdf: TheJH: okay, will ignore it for now. thank you! [19:35] TheJH: sgfgdf, but it somewhat makes sense to me [19:36] khrome has joined the channel [19:36] mc_greeny has joined the channel [19:37] mc_greeny has joined the channel [19:37] context: node has an errno, or are you talking about in C [19:37] sgfgdf: TheJH: why? when you have newlines inside your .js files you don't get undefined. [19:38] tauren_ has joined the channel [19:38] context: wth [19:38] context: the repl ? [19:38] TheJH: sgfgdf, uh, what? [19:38] context: the repl is not a js file [19:39] satyr has joined the channel [19:39] TheJH: !admin eval eval('') [19:39] jhbot: undefined [19:39] TheJH: sgfgdf, ^ [19:39] context: its an intereactive terminal. its giving you the response to EVERYTHING you put in [19:40] sgfgdf: context: i was asking TheJH about why i get the undefined message even when i just hit enter. [19:41] kenperkins has joined the channel [19:41] context: sgfgdf: the repl is an interactive terminal. it gives you the response to ANYTHING you give it [19:42] context: a blank line executed as a statement results with undefined. thus you get undefined [19:42] context: its not a bug. its how the repl works [19:42] Juan77 has joined the channel [19:43] context: sgfgdf: and i imagine when node processes a file it "optimizes out" blank lines. but there ARE statements in your code that result in undefined. whether you give that result to a variable or any sort of input is another thing. [19:43] context: i imagine the majority of function calls return undefined as most things are async and depend on the calling of a callback later [19:44] TheJH: context, you can't use the results of statements, only the results of expressions :D [19:44] context: sgfgdf: what would you suggest eval("") return... it MUST return something [19:44] thisandagain has joined the channel [19:45] sgfgdf: context: i was asking because other repls like for example python don't have this behaviour, but what you said sounds somehow reasonable. [19:46] sgfgdf: anyway thank you, guys for explainig that to me! [19:46] fwg: a statement does not yield a value, that's what makes it different from an expression, therefore the repl treats everything as an expresstion [19:47] italic: is there a way to clear the console output from the repl? [19:47] dilvie has joined the channel [19:48] TheJH: italic, you want to empty the screen? why? [19:48] subbyyy has joined the channel [19:48] charlenopires has joined the channel [19:48] joshthelovablera has joined the channel [19:49] justicefries has joined the channel [19:49] italic: TheJH: i'm just prototyping and want to show an updated matrix [19:50] zaxx has joined the channel [19:52] cjm has joined the channel [19:54] dodo_: italic: maybe this helps: https://github.com/substack/node-charm [19:54] braoru has joined the channel [19:55] lperrin has joined the channel [19:55] altivec has joined the channel [19:55] italic: dodo_: thanks. i was hoping for something quick like .clear, but that's used for something else. oh well, i'll make do [19:55] socketio\test\95 has joined the channel [19:57] thisandagain: preface - not trying to troll... just trying to understand: can anyone explain why you would choose to deploy a node.js app at Heroku? The dyno scaling approach (1 concurrent request per dyno) seems completely antithetical to the basic premise/intention behind node. [19:57] fairwinds has joined the channel [19:58] ryanfitz has joined the channel [19:58] aaronmcadam has joined the channel [19:58] JKarsrud has joined the channel [19:59] chrisdickinson: isaacs: hey, out of curiosity, what's the status on https://github.com/isaacs/node-fuse ? [20:00] jbpros has joined the channel [20:02] tokumine has joined the channel [20:03] BrianE has joined the channel [20:05] wbednarski has joined the channel [20:05] digilink has joined the channel [20:05] Wa has joined the channel [20:06] benlyn has joined the channel [20:08] jhbot: 'Nodejs not running' by migueljimenezz http://stackoverflow.com/q/8780812 (tags: javascript, server, websocket) [20:10] zaxx: anyone for a help? I don't get one aspoect of non-blocking approach and rly can't figure it out. [20:10] xeodox has joined the channel [20:10] webben: zaxx: On freenode, describe your problem, don't ask for people. [20:10] m00p has joined the channel [20:11] loucal has joined the channel [20:11] TheJH: webben++ [20:11] catb0t: webben now has 1 beer [20:11] webben: glug glug glug [20:13] zaxx: webben: ok; all: when I try to test non-blocking approach, calling the particular pathn in http address, i pass the response and request objects to the function with callback, but I need to do some blocking action in that place. E.g. longtime search for a file. If i access different address of the same server, the response is quick, even though the other request is still being handled, but if i open two times the same url path, the second one times-out, be [20:13] zaxx: cause the former request was not handled yet [20:14] jbpros_ has joined the channel [20:14] VladGh has joined the channel [20:14] cjm: NodeUp is live! http://www.ustream.tv/channel/nodeup and we're in #nodeup [20:15] ritch has joined the channel [20:15] ritch has left the channel [20:16] larsschenk has joined the channel [20:16] larsschenk has left the channel [20:16] TheJH: zaxx, show us some code [20:16] zaxx: http://www.ustream.tv/channel/nodeup [20:16] zaxx: srry [20:16] TheJH: :D [20:16] zaxx: http://pastebin.com/g4FFmcCJ [20:16] markq: cjm...any video? [20:16] marcello3d has joined the channel [20:17] cjm: markq no, just audio [20:18] Cromulent has joined the channel [20:19] tmcw has joined the channel [20:19] isaacs: chrisdickinson: mostly abandoned. [20:19] isaacs: chrisdickinson: full of longing. [20:19] jbpros has joined the channel [20:19] chrisdickinson: ah, dang ): [20:20] Morkel has joined the channel [20:20] isaacs: chrisdickinson: there's a wip type dev branch that i last worked on around the node 0.4 days [20:20] isaacs: maybe even 0.3 [20:20] zaxx: TheJH it is just the tutorial from http://www.nodebeginner.org/ I am trying to figure out, how to do the server, which is able to handle serveral same requests at once [20:20] isaacs: chrisdickinson: if you want to adopt it, you have my blesin [20:20] isaacs: blessing [20:22] chrisdickinson: hmm. thanks for the info! i may see how far i get -- i hesitate to adopt it outright, since i'm roughly 0% familiar with FUSE. [20:22] blueadept has joined the channel [20:22] blueadept has joined the channel [20:23] ccapndave has joined the channel [20:24] ccapndave: Hey all - how can I update a package installed with npm to the master branch instead of the latest stable tag? [20:24] astropirate has joined the channel [20:25] blueadept: what's the best way to get a version list of NPMs? [20:25] blueadept: nm, http://search.npmjs.org/ [20:25] mmalecki: isaacs: ping? [20:25] ccapndave: blueadept: Probably not the best way, but I just discovered that npm install somepackage@master gives you a list of valid versions :) [20:25] mmalecki: isaacs: are we going to use static search in near future? [20:26] mmalecki: isaacs: because you know what would be cool? having travis build status on search.npmjs.org [20:26] cognominal has joined the channel [20:26] isaacs: mmalecki: good idea. [20:27] isaacs: i'll start a new repo for the npm package website soon, if nothing else than to take issues like this [20:27] tomgallacher has joined the channel [20:27] mmalecki: isaacs: I know, right? should I pull request or is it going away soon? [20:27] mmalecki: ok, cool [20:27] isaacs: for now, you could post issues on npmjs.org, i guess [20:27] isaacs: maybe prefix with "Static site: " [20:27] isaacs: or something [20:27] mmalecki: isaacs: sure [20:27] isaacs: gotta run [20:28] HardPhuc: anyone with extended mongoose knowledge? [20:29] HardPhuc: I'd like to find a document that is not older than a day :) [20:29] pimperle has joined the channel [20:30] tokumine has joined the channel [20:31] JaKWaC has joined the channel [20:33] jocafa has joined the channel [20:33] Travis has joined the channel [20:33] markq has joined the channel [20:33] strmpnk has joined the channel [20:34] CIA-109: node: 03Ben Noordhuis 07v0.6 * r472a72d 10/ (Makefile configure): [20:34] CIA-109: node: build: honour the PYTHON environment variable [20:34] CIA-109: node: Overrides the path to the python binary. Defaults to `python`. - http://git.io/ICQHYw [20:34] jldbasa has joined the channel [20:34] relix has joined the channel [20:35] martndemus has joined the channel [20:36] devongovett has joined the channel [20:36] FIQ has joined the channel [20:36] Ned_ has joined the channel [20:37] mmalecki: bnoordhuis: ping? [20:40] mikl has joined the channel [20:41] flip_digits has joined the channel [20:45] bnoordhuis: mmalecki: pong [20:45] mmalecki: bnoordhuis: errno variable - should this thing be global? [20:45] bnoordhuis: mmalecki: js errno or c++ errno? [20:46] mmalecki: bnoordhuis: js [20:46] rgl has joined the channel [20:46] disappea_ has joined the channel [20:46] TheJH: bnoordhuis, js errno, and if so, why? [20:46] bnoordhuis: mmalecki: it is global (if it exists), it's set by the c++ bindings [20:46] jhbot: 'Running Expresso TDD in Node.js on Windows' by claytoncarney http://stackoverflow.com/q/8781135 (tags: windows) [20:46] CarterL has joined the channel [20:46] mmalecki: bnoordhuis: can it be changed? [20:46] bnoordhuis: mmalecki: why? [20:47] mmalecki: bnoordhuis: well... bad design? it sounds racey to me [20:47] bnoordhuis: mmalecki: there is no race, a v8 vm is single-threaded [20:48] bnoordhuis: TheJH: you're asking because of this? https://github.com/joyent/node/issues/2488 [20:48] Ned_ has joined the channel [20:48] mmalecki: bnoordhuis: hm, ok. so it's going to stay there? [20:48] mehlah has joined the channel [20:49] TheJH: bnoordhuis, yes [20:49] _dc has joined the channel [20:50] bnoordhuis: we set errno so we don't have to throw from the binding layer [20:50] mmalecki: I see [20:50] bnoordhuis: re Object.freeze(global), we actually tried that in the past [20:51] bnoordhuis: but it has (or had) serious performance overhead [20:51] mmalecki: bnoordhuis: it'd be cool to make it an option tho [20:51] bnoordhuis: but why? [20:51] mmalecki: bnoordhuis: I just spent an hour to get rid of global leaks [20:52] mmalecki: bnoordhuis: I mean, it's an option [20:52] jhbot: 'require.paths.unshift' by dortzur http://stackoverflow.com/q/8781196 [20:52] bnoordhuis: i suppose it could have its uses... [20:52] imarcusthis has joined the channel [20:53] rphillips has joined the channel [20:53] mmalecki: bnoordhuis: yes :) [20:53] rio{ has joined the channel [20:53] mmalecki: TheJH: wanna pull request that? [20:53] mikedeboer has joined the channel [20:54] TheJH: mmalecki, hmm, not sure [20:54] mmalecki: bnoordhuis: btw, can we call errno something different? I think it's quite a common name [20:54] esmevane has joined the channel [20:54] tdegrunt has joined the channel [20:54] TheJH: mmalecki, lazy, have to do homework, it's late - why don't you? :D [20:54] mmalecki: bnoordhuis: __errno? it's an internal API anyway [20:54] mmalecki: TheJH: sure :) [20:54] bnoordhuis: mmalecki: eventually, yes. i agree the name is badly chosen [20:55] pV has joined the channel [20:55] mmalecki: bnoordhuis: want me to pull request that? :D [20:55] mmalecki: bnoordhuis: (I'm having a number of core commits fight with indutny) [20:55] mmalecki: I'll totally beat him [20:55] clarkfischer: Any mongoose whizzes in here? I've got a strange error. [20:56] bnoordhuis: mmalecki: you still have a long way to go... 18 vs 92 [20:57] pV: anyone have any good tutorials for bring node applications to production (w/ multiple domains and all)? perhaps using nginx? [20:57] mmalecki: bnoordhuis: indutny has 103: http://github-high-scores.heroku.com/joyent/node/high_scores/ [20:57] mmalecki: and I have 24 [20:58] bnoordhuis: i was probably counting only the commits in the v0.6 branch [20:58] TheJH: mmalecki, :D [20:58] mmalecki: bnoordhuis: so, yeah, I'll pull request these things :) [20:58] joshgillies has joined the channel [20:58] louissmit has joined the channel [20:59] bnoordhuis: mmalecki: there's a tricky bit actually, the errno_symbol handle in src/node.cc is used by a lot of other functions [20:59] metapandava has joined the channel [20:59] bnoordhuis: so you can't just change its string to "__errno" [20:59] raenger has joined the channel [20:59] LukeBrookhart has joined the channel [21:00] raenger: For Express.js questions, is this the best palce? or is there another channel? [21:00] Topcat has joined the channel [21:00] idefine has joined the channel [21:01] cha0s has joined the channel [21:01] cha0s has joined the channel [21:01] rwaldron has joined the channel [21:01] langworthy has joined the channel [21:01] raenger: nvm, found #express [21:02] bnoordhuis: mmalecki: actually, i think i've got it licked [21:02] mmalecki: bnoordhuis: all right :) [21:03] TheJH: mmalecki, uh, is the score commits*100? :D [21:04] astropirate has joined the channel [21:04] metaverse has joined the channel [21:04] petrjanda has joined the channel [21:05] clarkfischer has joined the channel [21:05] te-brian has joined the channel [21:05] level09 has joined the channel [21:06] sreuter has joined the channel [21:07] sreuter: sup! :-) [21:07] hdms_ has joined the channel [21:08] sebastia_ has joined the channel [21:10] zitchdog has joined the channel [21:10] kiranryali has joined the channel [21:11] ovaillancourt has joined the channel [21:11] foo_ has joined the channel [21:11] Heisenmink_ has joined the channel [21:12] Carmivore has joined the channel [21:12] igl has joined the channel [21:12] gwoo has joined the channel [21:13] Slashbunny has joined the channel [21:14] sebastianedwards has joined the channel [21:14] booo: what is the best irc lib for nodejs? [21:14] booo: are there some good irc bots in node? [21:15] chilts: booo: https://github.com/martynsmith/node-irc [21:15] chilts: that's just a lib, you can build bots on top of that [21:15] rio{ has joined the channel [21:18] booo: chilts, cool, thx [21:18] jhbot: 'nodejs. bcrypt on windows 7' by Erik http://stackoverflow.com/q/8781402 [21:19] ryanfitz has joined the channel [21:19] rgl has joined the channel [21:21] bnoordhuis: mmalecki: renaming errno to __errno breaks two tests in mysterious ways :/ [21:21] Carmivore has joined the channel [21:21] torvalamo: #express [21:21] torvalamo: bah [21:21] torvalamo: sry [21:22] torvalamo: anyone have a better irc client for gnome than this shitty empathy thing? :P [21:22] Dulak: torvalamo: x-chat [21:22] chilts: ACTION uses irssi in screen (but that's probably not what you're looking for) [21:22] chilts: if you like Gnome :) [21:22] bnoordhuis: torvalamo: xchat2 [21:23] Dulak: torvalamo: what bnoordhuis said [21:23] TheJH: xchat2 [21:23] gkatsev: TheJH: irssi, weechat [21:23] torvalamo: i prefer windowed irc over terminal yeah, preferrably one with notification of sorts [21:24] gkatsev: oops, tab fail [21:24] Dulak: torvalamo: don't fall for the gnome-xchat package, go directly to xchat2, it's more configurable and still ties into gnome just fine. [21:25] torvalamo: just as you said that i was getting it from the package manager [21:25] torvalamo: oh well [21:25] torvalamo: i'll try it first [21:26] Dulak: torvalamo: no I meant use the xchat2 package, not the gnome-xchat package, gnome-xchat is like a shell on top of xchat, and it hides a LOT of config options from the user [21:26] Dulak: torvalamo: you don't have to compile it, there are usually 2 packages [21:27] torvalamo2 has joined the channel [21:27] boltR has joined the channel [21:28] boltR has joined the channel [21:28] torvalamo2: nice [21:28] torvalamo2: this one at least shows who has op [21:28] gwoo has joined the channel [21:28] skm has joined the channel [21:29] torvalamo has left the channel [21:30] mikeal has joined the channel [21:33] nikynyfiken has joined the channel [21:33] zitchdog has joined the channel [21:34] myrkiada has joined the channel [21:34] nikynyfiken: been hacking node for the last couple of days a quick question. I am using connect-assets where I have coffee files for the client side. Can I in thoose files do node stuff like read a folder structure so that I initiate an object with that information [21:34] djbell has joined the channel [21:36] level09 has joined the channel [21:36] chilts: nikynyfiken: if it's for the client side, then it'll run in the client browser ... which has no access to your local folders on the server [21:37] chilts: unless you explicitely send that list somehow [21:37] nikynyfiken: chilts ok that was what I thought but was not 100% sure if node has some nitty way of doing it [21:38] chilts: you can make node do it :) just like any other server-side language :) [21:38] chilts: but yeah, nothing implicit [21:38] chilts: there may be a module to help you do what you want though [21:38] shinuza has joined the channel [21:39] tauren__ has joined the channel [21:39] radarig has joined the channel [21:39] spolu_ has joined the channel [21:40] nikynyfiken: chilts my problem is that I have a namespace like this MyApp.Views.Movies.Index and in a boot file I have initiate MyApp.Views = {} but when I do a class declaration Index can't be set because Movies is undefined so thought in my boot file I could read the folder structure and create ex MyApp.Views.Movies = {} before [21:41] italic has left the channel [21:46] xeodox has joined the channel [21:47] mara has left the channel [21:55] jhbot: 'socket.io - send data' by Jenan http://stackoverflow.com/q/8781487 (tags: javascript, socket.io) [21:57] michaelhartau has joined the channel [21:58] tmcw has joined the channel [22:01] magnetik__ has joined the channel [22:03] Lennier has joined the channel [22:03] torm3nt has joined the channel [22:03] devongovett_ has joined the channel [22:03] chadskidmore has joined the channel [22:04] justin has joined the channel [22:06] disappea_: Hey everyone. My code doesn't end. What's the best way to see what's causing the block? [22:06] SubStack: wish I knew [22:07] bnoordhuis: disappea_: when you look at the node process in top / htop, is it idle or spinning at 100% cpu? [22:08] disappea_: bnoordhuis: it's idle [22:08] disappea_: I am using eventEmitter [22:08] disappea_: probably still waiting that's why it doesn't exit [22:09] bnoordhuis: disappea_: you might have a handle of some kind (socket, timer, etc.) that's still active [22:09] racar has joined the channel [22:09] bnoordhuis: there's no real good way to debug that kind of thing right now [22:09] bnoordhuis: but https://github.com/bnoordhuis/node/compare/v0.6...print-handles is a work-in-progress [22:09] disappea_: I wish it's like python where Ctrl-C will trigger an exception and then you can just see which line you are at [22:10] bnoordhuis: you send a SIGUSR2 to the process and it prints out a list with the active handles [22:10] bnoordhuis: s/with/of/ [22:10] bnoordhuis: disappea_: you can do that with the built-in debugger but it's not that useful if node is sleeping [22:11] tilgovi has joined the channel [22:11] ryan_stevens has joined the channel [22:12] mandric has joined the channel [22:12] cjheath has joined the channel [22:18] disappea_: if I want to attach listeners, aka using myVar.on('...') [22:18] disappea_: I have to use the instance variable right [22:18] disappea_: as opposed to my class having a function this.attachAllListeners() { this.on('VOTE_START'...) [22:18] teadict: you can attach event to variables? what are those variables holding? ^.- [22:19] tokumine has joined the channel [22:20] Agos has joined the channel [22:22] LukeBrookhart has joined the channel [22:23] Jamie_ has joined the channel [22:23] Jamie_: Hi [22:24] jchris has joined the channel [22:24] fr0stbyte has joined the channel [22:24] sreuter has joined the channel [22:24] teadict: Ho [22:24] teadict: Let's go [22:25] Agos_ has joined the channel [22:25] Agos_: can you read me? [22:25] pV: no [22:25] Agos_: :D [22:25] Agos_: I just completed a HTTP tunnel with node [22:25] Cromulent has joined the channel [22:26] pV: nice :) [22:27] Aria has joined the channel [22:28] teadict: what a http tunnel do? [22:28] disappea_: hide your traffic [22:29] kiranryali has joined the channel [22:29] disappea_: rather than A => B you do A => C => B so in B's log it's C visiting rather than A [22:29] blup has joined the channel [22:30] teadict: holyc rap, you can integrate jslint to gedit [22:30] disappea_: dude you shouldn't be using gedit [22:30] teadict: disappea_: oh, isn't that a proxy? [22:31] disappea_: yeah [22:31] teadict: disappea_: I get sick of console editors from time to time, I need a GUI replacement [22:31] disappea_: really? dude you are so slow on gedit [22:31] disappea_: unproductive imo [22:31] teadict: I'm less productive being sick but stick to the console [22:31] dwhittle has joined the channel [22:31] teadict: I rather change, till the sickness goes away [22:32] teadict: from more productive to less: vim > gedit > sick of vim > sick fo gedit [22:33] torvalamo: productive isn't always about lines of code per minute [22:33] Destos has joined the channel [22:33] teadict: exactly [22:33] Carmivore has joined the channel [22:34] teadict: if I feel uncomfy on the console, why not go to gedit for a while then come back? [22:34] teadict: we're humans! [22:34] torvalamo: sure vim lets you program at 100 mph, but why do you need to do that [22:34] jocafa1 has joined the channel [22:34] jocafa has joined the channel [22:34] SamWhited has joined the channel [22:35] gkatsev: because the less time you spend typing, the more time you can spend thinking [22:35] tbranyen: torvalamo: because life is too short [22:35] teadict: because of northamerican productivity at work illusion? [22:35] torvalamo: life being short is another illusion [22:36] torvalamo: stop thinking about tomorrow [22:36] pV: life is actually pretty darn long [22:36] teadict: yes, be more like him: http://www.youtube.com/watch?v=qpl5mOAXNl4 [22:36] gkatsev: torvalamo: no, not thinking about tomorrow. thinking about what else you can type/edit at 100mph [22:37] dilvie has joined the channel [22:37] teadict: hey, is there this for jade? http://code.google.com/p/zen-coding/ [22:39] pV: you could use that, and then do html2jade.aaron-powell.com [22:40] robotmay has joined the channel [22:40] pV: but not directly as far as I know [22:40] teadict: not good [22:40] disappea_: dude it's not about speed [22:40] teadict: bookmarked that site though, could come in handy [22:40] disappea_: there's so much gedit cannot provide [22:40] disappea_: plugins wise of course [22:40] pV: yeah it isn't perfect, but it helps [22:40] pV: I threw something in there and spent 5 minutes fixing it up a bit [22:41] torvalamo: my speed remark wasnt about vim vs gedit [22:41] torvalamo: it was just about vim [22:41] pV: but it was easier than rewriting an entire html file [22:42] mc: anyone have any advice on speeding up a writable file stream? [22:42] teadict: speed this, speed that [22:43] GrizzLyCRO has joined the channel [22:46] tiglionabbit has joined the channel [22:46] otakutomo has joined the channel [22:48] shanez_ has joined the channel [22:49] mc: i've found if i throw a bunch of data at it, it slows to a crawl [22:49] mc: even if i queue and wait for drain events [22:49] Lennier has left the channel [22:52] Hanspolo has joined the channel [22:53] teadict: alright! jslint into gedit [22:53] teadict: screw vim :P [22:53] brianseeders has joined the channel [22:54] Sami_ZzZ_ has joined the channel [22:54] mandric has joined the channel [22:57] teadict: had to remove "import" from jslint's reserved words [22:57] teadict: tis k [22:57] Lennier has joined the channel [22:57] jbpros has joined the channel [22:58] EuroNerd has joined the channel [23:02] tlrobinson has joined the channel [23:03] dwhittle has joined the channel [23:03] larsschenk has joined the channel [23:03] larsschenk has left the channel [23:06] Blorb has joined the channel [23:06] te-brian has joined the channel [23:07] Wizek has joined the channel [23:07] radarig has joined the channel [23:07] metapandava has joined the channel [23:08] LeMike has joined the channel [23:09] nrltd has joined the channel [23:13] shinuza has joined the channel [23:14] glen has left the channel [23:15] Sami_ZzZ_ has joined the channel [23:16] hipsters_ has joined the channel [23:16] tekknolagi has joined the channel [23:20] m00p has joined the channel [23:20] jhbot: 'translate xml to json in node.js' by kalise http://stackoverflow.com/q/8782292 (tags: xml, json, saxparser) [23:20] astromanies has joined the channel [23:21] metapandava has joined the channel [23:21] warz has joined the channel [23:21] warz has joined the channel [23:22] astromanies: how do I keep a node process from exiting? I don't mean deamonizing, I just need it to stay open while a C module does its thing. [23:22] metapandava_ has joined the channel [23:22] bnoordhuis: astromanies: the c module should ref the event loop [23:22] tbranyen: astromanies: it should [23:22] FIQ has joined the channel [23:23] ryan_stevens has joined the channel [23:23] astromanies: @bnoordhuis i didn't write the module so I don't know how to make that so [23:23] Sami_ZzZ_ has joined the channel [23:24] bnoordhuis: astromanies: what module is it? [23:24] astromanies: node-sound [23:24] dshaw_ has joined the channel [23:24] bnoordhuis: okay, don't know that one [23:25] astromanies: and so it doesn't play the file after the node process exists [23:25] astromanies: simple example https://gist.github.com/1580086 [23:25] bnoordhuis: contact the author. if all else fails, create a timer with a really high timeout and cancel it when the module is done [23:25] astromanies: ok [23:25] astromanies: is there a nextTick() way? [23:26] bnoordhuis: astromanies: not really, using nextTick() would make node spin at 100% cpu [23:26] astromanies: claro que si [23:28] marcello3d: anyone here understand this profile stack trace? https://gist.github.com/57f851e04921ef1f4a25 [23:28] marcello3d: Here's the code, I can't figure out where ToString gets called... https://github.com/marcello3d/node-mongolian/blob/master/lib/gridfile.js#L148 [23:28] Sami_ZzZ_ has joined the channel [23:29] otakutom_ has joined the channel [23:30] enmand has joined the channel [23:30] astromanies: @marcello3d looks like its a node Buffer [23:31] satyr has joined the channel [23:31] astromanies: http://nodejs.org/docs/latest/api/buffers.html#buffer.toString [23:31] marcello3d: astromanies: sure, but I'm never calling that [23:31] bnoordhuis: marcello3d: probably this._hash.update() if it's a hash created with crypto.createHash() [23:31] marcello3d: hmmm [23:31] marcello3d: but shouldn't that show up in the stack? [23:32] bnoordhuis: the conversion is done in c++ land [23:32] marcello3d: but a hash update shouldn't convert anything to strings? [23:33] TimTim has joined the channel [23:33] marcello3d: ACTION looks at the crypto code [23:33] kalv has joined the channel [23:33] bnoordhuis: marcello3d: https://github.com/joyent/node/blob/472a72d/src/node.cc#L1044 <- val is your buffer [23:34] c4milo has joined the channel [23:34] bnoordhuis: presumably we could optimize that if val is a buffer and the caller is only interested in the binary length [23:35] marcello3d: ah I see [23:35] chadskidmore has joined the channel [23:35] tokumine_ has joined the channel [23:36] marcello3d: should I make an issue? e.g. "hash.update(buffer) shouldn't call ToString" [23:36] bnoordhuis: marcello3d: yes please [23:37] charlenopires has joined the channel [23:37] Lennier has left the channel [23:38] Sami_ZzZ_ has joined the channel [23:40] pV: what's the best way to handle 404s with express? I did app.get('*', function(req, res) { as my last route, but that blocks any stylesheets/js/etc [23:41] radarig has joined the channel [23:41] Sami_ZzZ_ has joined the channel [23:41] Lennier has joined the channel [23:42] boltR has joined the channel [23:43] Emmanuel has joined the channel [23:44] EvRide has joined the channel [23:45] pieterv has joined the channel [23:45] Sami_ZzZ_ has joined the channel [23:45] blup_ has joined the channel [23:46] CarterL has joined the channel [23:46] marcello3d: bnoordhuis: https://github.com/joyent/node/issues/2494 [23:47] astromanies: @pv i think express had built in error code handling [23:48] subbyyy has joined the channel [23:48] astromanies: @pv app.get('/404', fn) [23:48] Sami_ZzZ_ has joined the channel [23:50] petrjanda has joined the channel [23:50] astromanies: @pV app.get('/404', fn) [23:50] marcello3d: wow. I just mentioned 'ipad' in a tweet and now I get all this @mention spam [23:51] bnoordhuis: marcello3d: fixed [23:51] marcello3d: awesome [23:52] marcello3d: wow [23:52] marcello3d: nice speed improvement [23:52] bnoordhuis: not bad innit? [23:52] marcello3d: yay for profiling [23:52] bnoordhuis: quite :) [23:52] Sami_ZzZ_ has joined the channel [23:52] bnoordhuis: if you find more of these things, by all means report them [23:53] marcello3d: sure. it's hard to debug though [23:53] level09 has joined the channel [23:53] marcello3d: because the stack trace doesn't tell me the line number [23:53] marcello3d: the numbers just refer to the function header [23:53] marcello3d: but I guess that's a sampling problem [23:54] bnoordhuis: yeah [23:54] bnoordhuis: joyent's been doing some dtrace work that maps probes back to javascript code [23:54] marcello3d: I saw the blog post. but that doesn't work on mac, right? [23:54] broofa has joined the channel [23:55] mmalecki: it'd be soooo cool if it did [23:55] bnoordhuis: no, only smartos. dtrace on os x and freebsd is too broken :/ [23:55] Corigo has joined the channel [23:55] marcello3d: do you know the difference between * and ~ before function names in the mactickprocessor output is? [23:55] Corigo has left the channel [23:55] joshsmith: okay another Express question: how do I render new lines (\r\n) as HTML line breaks? [23:56] bnoordhuis: marcello3d: i think so but let me double-check if it's the same for other platforms [23:56] pauls1_ has joined the channel [23:56] bnoordhuis: marcello3d: yep, that's the case [23:56] astromanies: @johnsmith in html you could use the tag
 for "pre formatted"
[23:56] Frippe has joined the channel
[23:57] marcello3d: what's the case?
[23:57] bnoordhuis: * means that the code has been optimized, ~ that it hasn't (yet) been optimized
[23:57] marcello3d: ah
[23:57] mikeal has joined the channel
[23:57] astromanies: johnsmith otherwise you have to parse the string and replace str.replace(/\n/g, '
') [23:58] otakutomo has joined the channel [23:58] disappea_: if I am calling setTimeout(this.myFunction, 4000) and then inside myFunction there's also a reference to 'this'.. how do I bind the correct context [23:58] joshsmith: does Express not have a built in way of doing that? [23:58] springmeyer has joined the channel [23:59] astromanies: i dont think so [23:59] astromanies: not even the template engines do it i dont think [23:59] marcello3d: disappea_: there is a bind method on functions [23:59] disappea_: on underscore? [23:59] marcello3d: on ecmascript5 [23:59] astromanies: boom