[00:01] caolanm_ has joined the channel [00:02] dguttman_ has joined the channel [00:02] brettgou_ has joined the channel [00:03] creationix has left the channel [00:03] springmeyer has joined the channel [00:03] niftylettuce: Substack: this doesnt seem right though... it has the browserify JS twice... http://pastie.org/private/nfgfb1bvbe0rpiw8izdw [00:04] niftylettuce: Substack: when the files r called, JS is redundant [00:07] a|i_ has joined the channel [00:07] a|i_ has joined the channel [00:11] josephboyle has joined the channel [00:12] brettgoulder has joined the channel [00:13] spadin has joined the channel [00:13] azeroth__ has joined the channel [00:13] dnolen has joined the channel [00:13] AAA_awright_ has joined the channel [00:16] kriszyp has joined the channel [00:17] tylerstalder has joined the channel [00:19] ryanj has joined the channel [00:19] a|i: how does node-xmpp work? do I need to run an xmpp server, or is it standalone? [00:21] k1ttty has joined the channel [00:21] JianMeng has joined the channel [00:22] yukihr has joined the channel [00:24] tonymilne has joined the channel [00:25] thalll has joined the channel [00:25] littlemagician has joined the channel [00:27] dcelix has joined the channel [00:29] mscdex: a|i: seems like it's a server itself [00:29] a|i: mscdex: xmpp is a protocol, not a server, I think. [00:29] mscdex: xmpp server [00:29] romainhuet has joined the channel [00:30] mscdex: a|i: https://github.com/astro/node-xmpp/blob/master/lib/xmpp/server.js [00:30] mscdex: i've never used it, so i can't tell you 100% for sure [00:31] rytas has joined the channel [00:31] a|i: seems you're right. [00:31] mscdex: client and server it seems [00:34] puffpio: hi guys..i was wondering what the latest hotness is in terms of running a node daemon [00:34] puffpio: i have just been using upstart..but i was wondering what else is out there since i haven't really been looking at that area [00:38] tobias has joined the channel [00:38] mikeric has joined the channel [00:38] tobias: tmpvar, you there? [00:41] davidcoallier has joined the channel [00:41] davidcoallier: tswicegood: ping [00:41] gtramont1na has joined the channel [00:43] neoesque has joined the channel [00:43] puffpio has left the channel [00:44] cloudhea1 has joined the channel [00:44] cloudhea1_ has joined the channel [00:44] EyePulp has joined the channel [00:48] xsyn has joined the channel [00:48] pifantastic has joined the channel [00:49] jkridner has joined the channel [00:51] draginx has joined the channel [00:51] draginx: Anyone know how to run coffee script inside of nodejs? [00:51] draginx: #coffeescript = dead [00:51] slloyd has joined the channel [00:52] zcopley has joined the channel [00:56] ezl has joined the channel [00:57] Determinist has joined the channel [00:58] jesusabdullah: draginx: coffee proggy.coffee [00:58] draginx: ty [00:58] justinTNT: puffpio : forever [00:58] jesusabdullah: npm should give you this executable when you install cS [00:58] brownies has joined the channel [00:59] theblob has joined the channel [01:00] LowValueTarget has joined the channel [01:01] Guest78954: wasnt there a lib for that [01:01] thalll has joined the channel [01:01] Marak has joined the channel [01:01] jesusabdullah: a lib for what, Guest74518 ? [01:01] Marak has left the channel [01:01] deedubs: tjholowaychuk: is there a way to dump routes for an express app? trying to debug a express-resource issue [01:01] Tobsn: https://github.com/mauricemach/zappa [01:02] Tobsn: jesusabdullah coffeescript [01:02] tjholowaychuk: deedubs haha :p see arent high level abstractions fun! [01:02] Tobsn: lol [01:02] jesusabdullah: ah [01:02] tjholowaychuk: regular routing ftw [01:02] jesusabdullah: well yeah npm install coffeescript [01:02] tjholowaychuk: deedubs but yeah https://github.com/visionmedia/express-trace [01:02] Tobsn: yeah [01:02] jesusabdullah: or is it coffee-script ? EITHER WAY [01:02] Determinist: ACTION lighst a smoke and screams inside his head [01:02] Tobsn: i dont see the benefits either way ;) [01:03] tjholowaychuk: deedubs that might help, it's not even remotely finished and the output only looks good when you have a single request via curl etc but looks nasty with assets etc [01:03] Tobsn: of coffeescript [01:04] deedubs: tjholowaychuk: ahh so that'll show me how a request traverses express. Problem is I don't know if the nested route is being set properly and don't know the url to hit :D [01:04] tjholowaychuk: hm [01:04] tjholowaychuk: well there is no nesting really [01:04] tjholowaychuk: express-resource stuff just expands to regular app.get() etc calls [01:04] hij1nx has joined the channel [01:07] samsonjs has joined the channel [01:08] alek_br_ has joined the channel [01:08] deedubs: tjholowaychuk: Yeah just looking at the forums example with forums.add [01:09] zcopley has joined the channel [01:09] flippyhead has joined the channel [01:10] abraxas has joined the channel [01:10] yhahn has joined the channel [01:15] devrim has joined the channel [01:19] devrim has joined the channel [01:21] devrim has joined the channel [01:23] Tobsn: is anyone working with cluster? [01:23] Tobsn: with socket.io [01:23] Tobsn: cluster( server ).use( bridge( socket ) ).listen( 3000 ); - cause that throws an error that it cant use one of it as function [01:24] tonymilne: Anyone know any way i can listen for Mongoose model save events? E.g. for model Example, every time an example instance is saved, my event listener runs. [01:24] mikeal has joined the channel [01:25] RyanD has joined the channel [01:25] tonymilne: (The idea being, that I can socket new examples to the user ... or is this something that I should do myself at a higher up level in my code?) [01:26] F1LT3R has joined the channel [01:26] sebbie has joined the channel [01:26] Yuffster_work has joined the channel [01:28] Tobsn: tjholowaychuk, still there? [01:29] mikeal: isaacs: how do i link globally? [01:29] niftylettuce: he is watering his garden of goodness [01:29] isaacs: npm link [01:29] Tobsn: -g [01:29] Tobsn: oh [01:29] isaacs: mikeal: all links are global [01:29] Tobsn: https://gist.github.com/d7e3f5329e3c2c9583bb can someone tell me if that is proper [01:29] Tobsn: cause its not working... [01:29] isaacs: mikeal: when you do `npm link express`, it installs express globally, then links it locally [01:30] jtsnow has joined the channel [01:30] isaacs: mikeal: when you do `npm link ../foo` it links it globally, and then links it locally [01:30] mikeal: i'm in the directory [01:30] isaacs: yep [01:30] mikeal: i only want to link globally :) [01:30] isaacs: do `npm link` and it'll be "installed" globally [01:30] isaacs: in /usr/local/lib/node_modules [01:30] jmoyers: Tobsn: looks proper [01:30] jacter has joined the channel [01:31] mikeal: % npm link ../../git/morestreams ~/Documents/slides/node-intro [01:31] mikeal: /usr/local/lib/node_modules/morestreams -> /Users/mikeal/Documents/git/morestreams [01:31] mikeal: npm ERR! Error: ENOENT, No such file or directory 'morestreams@0.0.1' [01:31] mikeal: wtf? [01:31] dyer has joined the channel [01:32] avalanche123 has joined the channel [01:32] tonymilne: Tobsn: do you require connect? [01:32] davidcoallier: mikeal: I assume you aren't running on Windows? :) [01:32] Tobsn: not really [01:33] Tobsn: well it looks like its working [01:33] Tobsn: but if i telnet on 8000 and send a single string the client gets disconnected [01:33] Tobsn: and no console.log() appears [01:33] jmoyers: uh [01:33] tonymilne: socket.io works by connecting from the client JS to the server. [01:33] jmoyers: im sure there is a handshake [01:33] tonymilne: you kinda should be using their protocol. [01:34] Tobsn: oooooh [01:34] jmoyers: telnet isn't going to do the trick for connecting via ws [01:34] Tobsn: i see [01:34] mike5w3c_ has joined the channel [01:34] maqr has joined the channel [01:34] aaronblohowiak has joined the channel [01:34] jmoyers: also, socket.io introduces heartbeat and some other business [01:35] aaronblohowiak: SubStack: THANK YOU for making base work in package.json [01:35] ByteCrunch has joined the channel [01:35] jmoyers: so unless you have a client that does that stuff, it'll disconnect after 10s~ [01:35] Tobsn: yeah i see [01:35] Tobsn: havent thought about that [01:35] tonymilne: Whats your big picture Tobsn? [01:36] stellar678 has joined the channel [01:36] Tobsn: oh just messing around [01:36] Tobsn: for now [01:36] draginx has left the channel [01:36] stellar678: hello everybody [01:37] stellar678: ! [01:37] tonymilne: hi stellar :) [01:37] stellar678: how goes? [01:38] tonymilne: Good. Whatsup? [01:40] stellar678: newish at playing around with nodejs, and figured i might come ask the pros some questions instead of guessing and endlessly googling! [01:40] stellar678: which is of course the standard [01:42] eliziario has joined the channel [01:43] stellar678: i've got a nodejs app that is pretty simple, loads i think 8 libraries, and it amazes me that it shoots to the top of the list for virtual mem usage right after i start it [01:44] Tobsn: nice [01:44] Tobsn: works now [01:44] Tobsn: thanks tonymilne [01:44] fr0stbyte has joined the channel [01:44] Tobsn: brb, driving home ;) [01:44] Tobsn: btw. what was setPath used for? [01:45] Tobsn: btw. does socket.io just disconnects after 10 secondsß [01:45] Tobsn: ah vermind [01:45] Tobsn: nevermind [01:45] Tobsn: i killed the node process :P [01:47] tonymilne: stellar678: It's kind of hard for us to tell you what's chewing your mem without knowing what libs you're using them, and what code you've got in your app. [01:50] draginx has joined the channel [01:51] draginx: Whats the best way to ensure people can only grab broadcast data from nowjs within a certain room and not be able to get information until they officially leave one room and enter in the next? [01:51] draginx: Store things in redis? [01:51] MikeMakesIt has joined the channel [01:52] jesusabdullah: no idea :S I use dnode for my rpc needs [01:54] draginx: interesting [01:58] niftylettuce: jesusabdullah: u try browserify? [01:59] SubStack: those are different niches [02:00] tk has joined the channel [02:01] SubStack: aaronblohowiak: yeah the codebase is getting really hideous but it passes all its tests so I don't care enough to clean it up yet [02:01] niftylettuce: SubStack: what is solution to not loading browserify's JS twice.. :/ [02:01] niftylettuce: SubStack: should I modify browserify to support an array of mounts? [02:02] pandeiro has joined the channel [02:02] SubStack: niftylettuce: I'm not sure why you'd want to do that [02:02] jesusabdullah: niftylettuce: I haven't had a chance to try browserify yet. [02:02] niftylettuce: SubStack: in HTML5 boilerplate, you include modernizr and respond at the top, and then the rest of the JS like jquery etc. at the bottom below [02:02] SubStack: niftylettuce: just use http redirects [02:03] niftylettuce: SubStack: what do u mean? [02:03] SubStack: niftylettuce: not sure what that is [02:03] heavysixer has joined the channel [02:03] SubStack: browserify generates one file. That's not going to change any time soon [02:03] SubStack: too hard to change [02:04] aaronblohowiak: SubStack: i call wrap manually =) [02:04] eyesUnclouded has joined the channel [02:04] SubStack: aaronblohowiak: oh that's probably a bad idea since I don't have any tests that call wrap directly [02:05] aaronblohowiak: SubStack: i dont have any problems yet! :-D it lets me debug easier [02:05] SubStack: yeah debug mode might be useful [02:05] SubStack: no idea how to make that work though [02:05] gavin_huang has joined the channel [02:06] aaronblohowiak: SubStack: ideally you could just pass "skip preamble" to bundle [02:07] bad_at_math has joined the channel [02:07] aaronblohowiak: SubStack: this way you could use the publicly supported bundle interface multiple times. additionally, you'd probably want to have a "preample" function that would return the string of just the shim and require definition stuff. [02:07] isaacs has joined the channel [02:07] aaronblohowiak: this wouldn't avoid duplication in the strings that bundle() calls produce but it would let you have some finer-grained control of the output [02:07] draginx has left the channel [02:08] pandeiro: is 'npm search ...' working? [02:08] aaronblohowiak: (without requiring a complicated interface for having browserify produce mutliple files) [02:08] jacobolus has joined the channel [02:08] gavin_huang has joined the channel [02:08] littlemagician has left the channel [02:08] Spion has joined the channel [02:08] SubStack: could work [02:08] dgathright_ has joined the channel [02:08] gavin_huang has joined the channel [02:08] kriszyp has joined the channel [02:09] niftylettuce: so basically a check if var is true or false and if its true then dont include preamble [02:09] aaronblohowiak: SubStack: right now, using browserify to share *application code* is really tricky. [02:10] aaronblohowiak: SubStack: it would basically be putting this in an if(){} block: https://github.com/substack/node-browserify/blob/master/index.js#L57-60 [02:10] SubStack: aaronblohowiak: what is tricky about it? [02:11] aaronblohowiak: SubStack: I'd have to create package.json files for my application code [02:11] SubStack: wha? [02:12] mikeal has joined the channel [02:12] SubStack: you can just browserify.bundle(__dirname + '/code'), no package.jsons required [02:12] SubStack: or likewise with browserify() if you want a middleware [02:12] aaronblohowiak: SubStack: that only works if i *just* want the code in one directory [02:13] galaxywatcher has joined the channel [02:13] SubStack: well it's a recursive traversal [02:13] aaronblohowiak: SubStack: no multiple root directories [02:13] aaronblohowiak: SubStack: also, sometimes i want a dependency to vary between server and client contexts.. like data_store.js =) [02:13] SubStack: ah well you can use base : { foo : 'somedir', bar : 'someotherdir' } now [02:13] aaronblohowiak: SubStack: i know this might be out of scope of browserify [02:14] aaronblohowiak: SubStack: yes, which is why i thanked you so hard =) [02:14] SubStack: it also supports node_modules [02:14] colinsullivan has joined the channel [02:14] SubStack: so you can npm install somemodule@6.6.6 in your base'd somedir [02:14] ryanallenbobcat has joined the channel [02:14] tilgovi has joined the channel [02:14] tilgovi has joined the channel [02:14] colinsullivan has left the channel [02:15] SubStack: and the browser-side resolver will be able to pick it up [02:15] gmanika has joined the channel [02:15] sonnym has joined the channel [02:16] SubStack: just don't pass that dep to the require field and you're good so long as it's in node_modules [02:16] aaronblohowiak: SubStack: cool. that isnt something i'm currently concerned with.. [02:19] Swimming_bird has joined the channel [02:20] aaronblohowiak: SubStack: https://gist.github.com/1be0cb795fa435ae6add that is how i am using browserify today [02:20] aaronblohowiak: https://gist.github.com/raw/1be0cb795fa435ae6add/fd0fd2c42e53865805650383922eb3d47a15b8cd/gistfile1.txt - with word wrap [02:22] pifantastic has joined the channel [02:26] mischievious has joined the channel [02:30] mischief has joined the channel [02:33] niftylettuce: aaronblohowiak: what is wrap()? [02:33] neoesque has joined the channel [02:33] aaronblohowiak: niftylettuce: black magic voodoo. not supported =) [02:33] niftylettuce: ... [02:33] aaronblohowiak: https://github.com/substack/node-browserify/blob/master/index.js#L155 [02:34] niftylettuce: example use [02:34] niftylettuce: ? [02:34] aaronblohowiak: niftylettuce: it is an internal browserify function [02:34] niftylettuce: is there doc on usingi t? [02:34] niftylettuce: what does it do [02:34] aaronblohowiak: niftylettuce: no, it iss not supported [02:34] stepheneb has joined the channel [02:34] niftylettuce: oh [02:35] aaronblohowiak: niftylettuce: it is the internal implementation of taking a library name and returning the string of that library and its dependencies [02:35] niftylettuce: ah [02:35] niftylettuce: aaronblohowiak: did u have any advice on how I can remain consistent with html5 boilerplate? basically you have modernizr and respond javascript included in the and then before you include javascript like on ready states or jquery functions [02:36] Emmanuel has joined the channel [02:36] aaronblohowiak: niftylettuce: no, sorry [02:36] niftylettuce: aaronblohowiak: I guess I can just include them as minified JS files [02:37] Emmanuel has joined the channel [02:38] gtramont1na has joined the channel [02:40] amaudy has joined the channel [02:41] lakin has joined the channel [02:42] brownies has joined the channel [02:43] unomi has joined the channel [02:43] Transformer has joined the channel [02:46] Tobsn has joined the channel [02:49] mynyml has joined the channel [02:51] [[zz]] has joined the channel [02:53] yukihr has joined the channel [02:56] mikeal has joined the channel [02:58] seivan has joined the channel [03:01] dipser_ has joined the channel [03:03] Corren has joined the channel [03:03] e6nian has joined the channel [03:05] vikstrous: is it just me or does vows -w not seem to work the way it should? [03:06] brimster has joined the channel [03:06] bbttxu has joined the channel [03:06] vikstrous: it seems like every time i change a test or the app it always uses the new test but it never uses the new app.. [03:07] mikeric has joined the channel [03:07] k1ttty has joined the channel [03:07] unomi has joined the channel [03:08] EyePulp has joined the channel [03:09] yukihr has joined the channel [03:09] dget_ has joined the channel [03:11] iFire has joined the channel [03:11] zeade has joined the channel [03:12] defstream_ has joined the channel [03:12] caseywstark has joined the channel [03:13] harth has joined the channel [03:16] isaacs has joined the channel [03:16] Dinosaurus has joined the channel [03:17] jacobolus has joined the channel [03:18] dnolen has joined the channel [03:18] xsyn has joined the channel [03:21] defstream has joined the channel [03:21] Aria has joined the channel [03:22] defstream: anybody familiar with everyauth? [03:22] defstream: i keep getting this Error: Step rememberTokenSecret of `twitter` is promising: requestTokenSecret ; however, the step returns nothing. Fix the step by returning the expected values OR by returning a Promise that promises said values. [03:26] RyanD has joined the channel [03:30] Emmanuel: anybody knows a convenient way to load javascript in the fly with Node ? Say you have a running node server (that you don't want to stop), according to a request, the server should load some external JS [03:30] Emmanuel: (so, without restarting the server, we can change it's behaviour) [03:30] Aria: Read and eval? use the Script object? [03:31] Emmanuel: I'll take a look at that [03:31] Emmanuel: (the Script object) [03:31] Emmanuel: hm. What do you mean by script object actually :) [03:31] Dinosaurus: is it possible to use sessions in a mongoid scope [03:31] Dinosaurus: like scope :mine, where(user_id: session[:user][:_id]) [03:32] chjj: Emmanuel, what are you trying to do exactly? [03:32] Emmanuel: we have a product with basic features [03:32] superjudge has joined the channel [03:32] Emmanuel: and we want to extend it "on the fly", without restarting the server [03:33] Emmanuel: that means typically adding some new JS script and ask the server to load them depending on the request [03:33] Emmanuel: say, if client requires page X, we load the associated script for page X, that tells the server how to process it [03:33] Dinosaurus: write everything in assembly and maintain your stack by hand [03:33] chjj: Emmanuel: it sounds like you might be going about things the wrong way [03:33] Emmanuel: maybe read and eval is good enough actually [03:34] vikstrous: Emmanuel: what's the problem with just using requre? [03:34] Dinosaurus has left the channel [03:34] Emmanuel: require should do it too [03:34] chjj: why not have everything loaded in a module to begin with? [03:34] Emmanuel: (that's a new idea, I'm thinking it out, asking for suggestion) [03:35] vikstrous: Emmanuel: chjj is right... there's rarely any point of loading only a part of the application [03:35] vikstrous: maybe if you had different servers that had different purposes and you wanted them to only load what's necessary for their job... but then you might as well have different apps [03:36] Emmanuel: the app is a proxy server [03:36] Emmanuel: a user get the page through the server, the server make some change (or provide a brand newly generated page) [03:36] Emmanuel: and we want to be able to add more features in the feature [03:36] Emmanuel: future * [03:37] Emmanuel: like, we have that specific case that require the page to be process in a new way, we didn't expected before [03:37] Emmanuel: so we had the associated script for that [03:37] Emmanuel: but maybe just require'ing the associated script according to the request should do it [03:38] vikstrous: hmm... so you have some kind of a node app hosting platform and don't want to restart the server when you make modifications to the apps hosted? [03:40] dguttman has joined the channel [03:40] justinTNT: Emmanuel : I've got some ideas about how you should do that. [03:41] Emmanuel: vikstrous: yes [03:41] justinTNT: I reckon for the kind of functionality you're describing, the way to go ahead is to setup a handler on a config port. [03:41] Emmanuel: because we /know/ we will have more features, or more exceptions, or more hacky stuff to add in the future [03:41] justinTNT: listen on that config port for connections from a utility, that sends various runtime config commands and settings to the main app. [03:41] Emmanuel: we just can't think of everything ahead [03:41] justinTNT: including one to load new modules from a preconfigured path. [03:42] rchavik has joined the channel [03:42] justinTNT: this is the method I'm using to add new sites to my webserver without restarting. [03:43] Silly_Wabbit has joined the channel [03:43] rchavik has joined the channel [03:43] Emmanuel: that sounds like a good idea [03:43] Dinosaurus has joined the channel [03:44] wayne530 has joined the channel [03:44] timmywil has joined the channel [03:45] niftylettuce has joined the channel [03:47] Emmanuel: thanks people ! [03:48] febits has joined the channel [03:48] sub_pop has joined the channel [03:51] Bradleymeck has joined the channel [03:51] htoothrot has joined the channel [03:54] jakehow has joined the channel [03:54] superjudge has joined the channel [03:58] eyesUnclouded has joined the channel [03:59] tilgovi has joined the channel [03:59] tilgovi has joined the channel [03:59] ryah has joined the channel [04:02] temp01 has joined the channel [04:03] criswell has joined the channel [04:03] matyr has joined the channel [04:06] shanez has joined the channel [04:06] philtor has joined the channel [04:07] ryah has joined the channel [04:07] dhasenan: Any suggestions for a UI/RIA framework? [04:08] themiddleman has joined the channel [04:08] wayne530 has left the channel [04:10] devrim has joined the channel [04:12] azeroth__ has joined the channel [04:12] jmoyers has joined the channel [04:12] temp01 has joined the channel [04:13] schulz has joined the channel [04:14] schulz: hey quick question: I'm looking at this page: https://github.com/joyent/node/wiki/modules#web-frameworks-routers which router should I use? [04:14] JackeyChan has joined the channel [04:15] jmoyers: schulz: whats the project entail? [04:15] schulz: me screwing around with node.js [04:15] jmoyers: heh [04:15] jmoyers: express [04:16] jmoyers: https://github.com/visionmedia/express - simple sinatra like syntax, plugins etc etc [04:16] Me1000 has joined the channel [04:16] schulz: sweet, thanks a lot [04:17] Aria: Yeah, for sure. Express is pretty delightfully light. [04:18] blkcat: express is a thing of beauty [04:19] zhangkaizhao has joined the channel [04:21] brownies: building a node.js app *without* express just seems masochistic [04:21] danfo has joined the channel [04:21] jmoyers: i wouldn't go that far ;-) [04:22] brownies: jmoyers: what're some other "good" approaches? [04:22] mikeric has joined the channel [04:22] brownies: ACTION is a node noob [04:22] danfo: hi - what's the 'best' method to get mongodb data into a dedicated full-text search service (solr/sphinx/elasticsearch/whatever)? [04:22] jmoyers: it depends on what you're doing [04:22] jmoyers: node is good for a class of application [04:22] jmoyers: not just straight rest-based web apps [04:22] jmoyers: its good for data heavy real-time stuff [04:23] brownies: like web chat? [04:23] jmoyers: you can see interesting projects that have nothing to do with http servers, like mikeal's spider or things that are entirely client side like sammy.js [04:23] jmoyers: not ENTIRELY client side [04:24] jmoyers: i suppose sammy doesn't even have anything to do with node per se :: lines of javascript are blurring mind aaaaah :: [04:24] slloyd_ has joined the channel [04:24] brownies: heh [04:24] jmoyers: you can also build straight udp/tcp servers [04:25] dhasenan: The sammy.js website runs on sinatra. Dogfood much? [04:26] jmoyers: wha? [04:26] jmoyers: its sinatra inspired syntax [04:26] jmoyers: not sinatra [04:26] dhasenan: http://sammyjs.org/ -- look at the last line. [04:27] dhasenan: "This site is powered by Sinatra and is 100% Open Source" [04:27] jmoyers: oh, the website [04:27] yukihr has left the channel [04:27] yukihr has joined the channel [04:28] jmoyers: as far as i know, wrt sammy [04:28] jmoyers: its more about client side routing [04:28] jmoyers: and local storage and such [04:28] jmoyers: reason it popped into my brain is because i just saw a demo of it last weekend [04:29] sechrist has joined the channel [04:29] nilcolor has joined the channel [04:30] dhasenan: Ah, that's actually kind of strange. Looked a bit like a server-side framework at first. [04:31] jmoyers: exactly [04:31] jmoyers: a little mind blowing [04:31] jmoyers: strange class of application [04:32] dguttman has joined the channel [04:32] k1ttty has joined the channel [04:34] svnlto has joined the channel [04:37] dhasenan: I'm not sure how it's helpful. [04:37] dhasenan: I guess it gives you a global command namespace... [04:38] davidbanham: An EC2 micro instance takes FOREVER to build node. [04:38] mertonium has joined the channel [04:38] Emmanuel: davidbanham: so true ! [04:38] nilcolor has joined the channel [04:39] mscdex: davidbanham: if you're on ubuntu, there's a PPA [04:39] davidbanham: mscdex: I'm just using the default micro instance image so that it's covered under the free tier. I've used the PPA previously though and it's been great. [04:40] alcuadrado has joined the channel [04:41] zhangkaizhao has joined the channel [04:41] alcuadrado: Hi there! How can I test that an http client is localhost? ipv6's localhost "::1" is not the unique way of representing that [04:42] ryanallenbobcat has joined the channel [04:42] reid has joined the channel [04:42] ryanallenbobcat has left the channel [04:42] JoshC has joined the channel [04:45] kaichenxyz has joined the channel [04:45] stagas has joined the channel [04:46] mscdex: alcuadrado: hmm, well one way would be to use dns.reverse(), but it seems it only returns localhost/loopback for ipv6 addresses... for 127.0.0.1 it just returns an empty array for the hostnames [04:46] mscdex: kind of strange [04:46] mscdex: :S [04:47] olympum has joined the channel [04:47] alcuadrado: request.connection.remoteAddress has the necessary info, but I don't know the correct way for checking it's content [04:48] alcuadrado: as it could have, for example, ::1 or :0:1 for localhost [04:48] alcuadrado: afaik [04:48] mscdex: right [04:48] mscdex: well, you can get the list of network adapters on the machine from node and their addresses and if they are internal or not [04:48] mscdex: maybe you can just parse that list for internal addresses and then just compare them on connection [04:49] mscdex: oh wait, nevermind that's only available in the master branch [04:49] mscdex: sorry >< [04:49] alcuadrado: I think making a generic ipv6 compare algorithm would be more useful [04:49] alcuadrado: oh :( haha [04:49] alcuadrado: I'm with 4.7 [04:50] mscdex: it'll be in 0.6 though! ;) [04:50] alcuadrado: v0.5.0-pre sorry [04:50] mscdex: oh [04:50] alcuadrado: strange, I thought I was in 4.7 :s [04:50] mscdex: if you're on v0.5.0-pre then you may have that capability [04:52] mscdex: alcuadrado: see here: https://github.com/joyent/node/blob/master/doc/api/os.markdown [04:52] alcuadrado: but 0.4.7 on the server :p [04:52] mscdex: ah ok [04:52] alcuadrado: I'd have to learn about the alternative ways to write ipv6 ips and make a generic algorithm [04:52] alcuadrado: that would be cool :) [04:53] alcuadrado: it's a shame my deadline is.. tomorrow haha [04:53] mscdex: i don't think you can really write an algorithm [04:54] mscdex: because you can multiple ipv6 loopback addresses [04:54] mscdex: s/can/can have/ [04:55] mscdex: i think so anyway... [04:55] alcuadrado: well, maybe I asked for the wrong problem. I'm making an API which has a whitelist of authorized ips (currently only localhost) [04:55] jaket has joined the channel [04:55] alcuadrado: so what I would need in fact is a more generic ipv6 comparison [04:56] davidwalsh has joined the channel [04:56] gf3: howdy [04:56] Swimming_bird has joined the channel [04:56] fakewaffle has joined the channel [04:57] fakewaffle: i read somewhere not to use for (var i in data) {....} and instead use Object.keys(data).forEach(function(key) {...}) ? What is the difference? [04:58] mscdex: alcuadrado: here's what you can check for ipv6: http://www.freebsd.org/doc/handbook/network-ipv6.html#AEN42407 [04:58] SubStack: Object.keys() only does enumerable properties [04:58] alcuadrado: thanks mscdex !!! [04:58] temp01 has joined the channel [04:59] SubStack: oh hmmm, for in does that too [04:59] SubStack: maybe for..in looks at the prototype chain? [04:59] gf3: fakewaffle: it's faster [04:59] chjj: for...in gets all properties in the prototype chain, but it doesnt get non-enumerables [04:59] SubStack: yeah that's it [04:59] fakewaffle: ok, thanks guys [05:00] gf3: also, the faster part [05:00] chjj: if you really want to see ALL the properties, you would do for...in + getOwnProperties [05:00] indutny has joined the channel [05:00] mscdex: 0wnedProperties [05:01] brownies has joined the channel [05:01] jmoyers: i thought thats what enumerable meant in this context [05:01] jmoyers: cant create an iterator to walk it [05:01] jmoyers: i mean, you can manually [05:01] chjj: i actually think its called getOwnPropertyNames [05:01] chjj: but whatever [05:01] jmoyers: but not by the default language constructs like for/in [05:02] reid has joined the channel [05:05] temp01 has joined the channel [05:06] sechrist_ has joined the channel [05:06] vikstrous: guys i'm writing a module and in this module there's a function which is asynch and it can have optional parameters... so i need to decide what order i should put the parameters in. should i put the callback first? i've always seen the callback being last but i need space for my optional parameters... maybe i should pass all parameters as a single object? [05:06] amaudy has joined the channel [05:06] mischief has joined the channel [05:07] jmoyers: options hash, callback last imo [05:07] SubStack: vikstrous: var args = [].slice.call(arguments) [05:07] SubStack: var cb = args.slice(-1)[0] [05:07] SubStack: or even: [05:08] SubStack: var cb = args.filter(function (arg) { return typeof arg === 'function' })[0] [05:08] SubStack: any order [05:08] vikstrous: so having both optional arguments and callback last is good? [05:08] flippyhead has joined the channel [05:08] jmoyers: Sub's method allows you to have any number of optional parameters. [05:09] vikstrous: yeah i just wasn't sure if that's a good way of doing it or something that people would expect [05:09] jmoyers: lots of modules have variable method signatures [05:09] jmoyers: i like the options hash because you can use _.defaults to populate it [05:09] SubStack: vikstrous: you can get pretty fancy https://github.com/substack/dnode-protocol/blob/master/index.js#L221-L264 [05:09] jmoyers: rather than doing a bunch of arguments object slicing [05:10] jmoyers: also SubStack, do you know if accessing arguments is 'slow'? I overheard something of the sort [05:10] temp01 has joined the channel [05:11] vikstrous: i think i'll go with the object with parameters in any case because it's easier to read what's what... better than having like 3 parameters +3 optional ones [05:11] SubStack: jmoyers: I don't listen to those people. [05:11] SubStack: optimize the pieces that are measurably slow and only after you've written it the nice way first [05:12] dguttman has joined the channel [05:12] SubStack: reasoning about performance is doubly hard because the v8 engine is doing all sorts of crazy unpredictable optimizations itself [05:13] mikeric has joined the channel [05:13] jmoyers: nod, i agree -- its similar to arguments about scope resolution imo [05:13] jmoyers: we're talking about 1 extra lookup [05:13] cloudhead has joined the channel [05:14] vikstrous: wait, how did performance come up? [05:14] superjudge has joined the channel [05:14] SubStack: arguments [05:14] vikstrous: oh [05:16] mitko has joined the channel [05:16] AdmGre has joined the channel [05:16] Adman65 has joined the channel [05:17] AdmGre has joined the channel [05:17] ryah has joined the channel [05:18] mykul has joined the channel [05:19] seivan has joined the channel [05:20] aaronblohowiak: SubStack: args.pop() [05:22] Zarathust: I don't get why I have a second executable "node.io" [05:23] jmoyers: node.io as in the scraping thing? [05:23] Zarathust: yes [05:23] Zarathust: i can run node modules correctly and node.io related code correctly [05:23] jmoyers: because it wraps up its functionality in a command line utility [05:24] Zarathust: but when I combine both, nothing works [05:24] jmoyers: im a little confused by what you mean [05:24] jmoyers: node.io can be require()'d in a general node script [05:24] jmoyers: there is also node.io as a cli tool which can be used to do scraping from the shell [05:25] jmoyers: shouldn't need to combine the two [05:25] jacobolus has joined the channel [05:25] Zarathust: yes, I think the problem is when I require('node.io') in a script ran from node [05:25] Zarathust: require('node.io') only works when invoked with node.io [05:25] jmoyers: error? [05:25] jmoyers: what happens [05:26] Zarathust: I'm trying to scrape stuff and store it in a mysql datable [05:27] mitko has joined the channel [05:29] Zarathust: hum... I think I found the problem, it was rather unrelated [05:29] tikva has joined the channel [05:29] boehm has joined the channel [05:33] SamuraiJack has joined the channel [05:34] ryah has joined the channel [05:34] fbzhong has joined the channel [05:34] context_ has joined the channel [05:35] wonginator1221: Howdy. I'm trying to "glue" a java program that spits numbers out with a node server. Is there a recommended way to do this? I was originally going to write the server in java before I realized how much of a mess that would be having never written a server from scratch before. Should I try to send 'messages' from the java program to node, or should I try to use child_processes? Thanks. [05:36] context has joined the channel [05:36] wonginator1221: P.S. This is my first time trying to put two different programming languages together.\ [05:36] temp01 has joined the channel [05:37] dguttman has joined the channel [05:37] admc has joined the channel [05:38] mertonium has joined the channel [05:39] fbzhong has joined the channel [05:39] mscdex: wonginator1221: why not do it all in node? [05:40] devrim has joined the channel [05:40] fbzhong: Hi, could anyone help me on this issue of node.js? https://github.com/joyent/node/issues/1105 [05:41] asabil has joined the channel [05:43] mscdex: fbzhong: google isn't defined.... [05:43] mscdex: in your sandbox you only have 'window' defined [05:44] aaronblohowiak: fbzhong: might be a jsdom issue [05:44] indutny: fbzhong: you run code in different contexts [05:44] context: it looks like all he did was merge the two runInNewContext() lines together [05:44] wonginator1221: mscdex: well I'm somewhat dependent on a jar for the java side of it. [05:44] fbzhong: actually it run in the same sandbox [05:45] wonginator1221: Additionally, how is windows support for node? [05:45] Bonuspunkt: fbzhong: try window.google.test = "test" [05:45] fbzhong: Yes, window.google.test = "test" is ok. [05:45] aaronblohowiak: fbzhong: because " [05:45] Skola has joined the channel [05:45] aaronblohowiak: window is not the global scope in the new context [05:46] fbzhong: how to set window as global scope in the new context? [05:46] fbzhong: I think the sandbox.__proto__ = window, the sandbox is global scope, the window is included as well. [05:48] Zarathust: when executing with node instead of node.io, this line is not executed : exports.job = new nodeio.Job({timeout:10}, methods); [05:49] Bonuspunkt: fbzhong if i remember this right, just remove the window - sandbox should be the global scope [05:49] Zarathust: The line is probably executed, but my job doesn't start [05:51] context: hmm [05:51] context: fbzhong: is this possibly.... (if v8 does this) moving var definitions to the top of the script, and possibly doing it in alphabetical order or something ? [05:51] fbzhong has joined the channel [05:51] context: fbzhong: is this possibly.... (if v8 does this) moving var definitions to the top of the script, and possibly doing it in alphabetical order or something ? [05:51] context: im fairly new to js and node but :x [05:51] brownies has joined the channel [05:51] sivy has joined the channel [05:53] Zarathust: How can I start my nodeio job? [05:53] __tosh has joined the channel [05:55] fangel has joined the channel [05:55] fbzhong: Bonuspunkt: [05:56] fbzhong: Bonuspunkt: if rmove the window, the test1 will throw error: 'window is not defined'. [05:57] dguttman has joined the channel [05:57] fbzhong: Actually, I just want the Node.JS can simulate as the standard browser. [05:58] fbzhong: indutny: yes, it runs in different context. The strange thing is that test 1 works well, test 2 does not... [05:58] pen has joined the channel [05:59] indutny: indutny: oh, i see now [05:59] indutny: indutny: probably you should try to do it w/o __proto__ [06:00] fbzhong: indutny: without __proto__, in the test 1, the window will be not defined. That's why I write the code "window.window = window". [06:02] indutny: fbzhong: why are you using Context bindings? [06:02] indutny: fbzhong: why not just a regular object [06:03] context: heh [06:03] fbzhong: indutny: do you means the new Context() ? [06:03] indutny: fbzhong: and please try this with require('vm') [06:03] indutny: fbzhong: yes [06:03] fbzhong: indutny: yes, I tried the vm and regular object, same error. [06:04] context: he is saying stop using bindings() [06:04] context: and this works very find without the Context object [06:04] fbzhong: Let me submit the code using vm. [06:04] fbzhong: context: really? [06:04] context: runInNewContext(blah, window) works fine [06:04] zhangkaizhao has joined the channel [06:05] indutny: fbzhong: require('vm').runInNewContext('window.google = {};google.test =1', new P); [06:05] sonnym1 has joined the channel [06:05] indutny: fbzhong: where P is : function P() {this.window = this}; [06:05] indutny: fbzhong: if you want it to be a object with a prototype :) [06:06] context: oddly i cant find any docs of any kind for said Context object [06:06] fbzhong: indutny: let me have a try~ [06:06] w3dot0 has joined the channel [06:06] indutny: fbzhong: you can substitute P with var window = {};window.window = window; [06:06] brianseeders has joined the channel [06:07] skm has joined the channel [06:08] fbzhong: indutny: that's good, let me have a try in jsdom. Thanks for your help :) [06:08] indutny: np [06:08] ditesh|cassini has joined the channel [06:09] context: what exactly is Context and where are there any docs for it :x [06:09] indutny: context: it's an old API [06:09] context: ahh [06:10] langworthy has joined the channel [06:10] indutny: context: no docs and it'll be deleted someday [06:10] context: is there a lot without docs that should ? or do the docs do a pretty good job at covering everything that exists right now. i know dgram doesnt have docs still :x [06:11] context: or is dgram gonna get pulled into 'net' eventually :x [06:11] mscdex: huh? [06:11] mscdex: dgram has docs [06:11] context: oh wait nm. there are dgram docks [06:11] context: kk im just a tard [06:12] mscdex: the only thing that isn't documented is the sync http and tcp functions [06:12] mscdex: :-D [06:12] context: oh. thats a good thing. [06:13] context: mscdex: remove the methods, dont add docs :p [06:13] mscdex: that was the joke, there are no sync network functions in node ;) [06:13] context: oh. good. haha [06:14] a2800276 has joined the channel [06:14] chjj: the javascript tag on stackoverflow should just be renamed to [06:14] chjj: jquery [06:14] chjj: more accurate [06:19] coreb has joined the channel [06:22] stonebranch has joined the channel [06:23] nivoc has joined the channel [06:26] fbzhong: indutny: thank you, I resolve this issue :) [06:26] indutny: fbzhong: great,np [06:28] mikeal has joined the channel [06:28] fbzhong: indutny: however, I still wonder to know why the test 2 is not correct. In the test 1, those code execute in two context, with the same sandbox is works well. The test 2 does not. [06:28] indutny: fbzhong: probably that's a prototype problem [06:29] riven has joined the channel [06:29] er1c_ has joined the channel [06:29] fbzhong: indutny: so you think there may be a issue in node.js, don't you? [06:30] indutny: fbzhong: nope, there can be issue within old API, but that doesn't matter [06:30] fbzhong: indutny: no, it throw error in new vm api either. [06:30] indutny: fbzhong: and probably __proto__ feature works not how you expect it work. Anyway it's depricated [06:30] indutny: __proto__ is depricated [06:31] amerine has joined the channel [06:31] fbzhong: indutny: Orz, what's the recommended style to insead of __proto__ in NodeJS? [06:31] ryah has joined the channel [06:33] indutny: fbzhong: window.constructor.prototype [06:34] jmoyers: erm [06:35] fson: Object.getPrototypeOf(object) [06:35] mikeric has joined the channel [06:35] CIA-90: node: 03Brian White 07v0.4 * r9b34726 10/ doc/api/crypto.markdown : [06:35] CIA-90: node: Crypto documentation fixes [06:35] CIA-90: node: Fixes #1104. - http://bit.ly/kPh3yM [06:36] mikeric has joined the channel [06:36] qFox has joined the channel [06:36] fbzhong: indutny: thank you, very appreciate~ [06:36] indutny: fbzhong: it works? [06:37] indutny: fson: Object.getPrototypeOf returns same result [06:37] jmoyers: constructor.prototype doesn't let you walk the actual prototype chain if i remember correctly [06:37] fbzhong: indutny: sorry I don't test it. [06:37] jmoyers: (no deep inheritance?) [06:37] mraleph has joined the channel [06:37] zentoooo has joined the channel [06:37] indutny: jmoyers: yep, but you can do something like that: [06:37] `3rdEden has joined the channel [06:38] mcluskydodallas has joined the channel [06:39] fson: here is how you can also walk the prototype chain: http://ejohn.org/blog/objectgetprototypeof/ [06:39] indutny: v8: function a() {};function b() {};function c(){};a.prototype = new ;b.prototype = new c;var A = new a, _p = A.constructor.prototype, newp = new d();A.constructor.prototype = newp;newp.constructor.prototype = _p;console.log(A); [06:39] v8bot: indutny: SyntaxError: Unexpected token ; [06:39] mertonium has joined the channel [06:39] indutny: oh shit [06:39] indutny: k, no time to fix it [06:39] indutny: later [06:41] herbySk has joined the channel [06:43] temp01 has joined the channel [06:45] k1ttty has joined the channel [06:49] pigmej has joined the channel [06:49] gavin_huang has joined the channel [06:51] mhausenblas has joined the channel [06:51] mhausenblas_ has joined the channel [06:52] Charuru has joined the channel [06:52] liar has joined the channel [06:54] groom has joined the channel [06:55] dargo_simpson has joined the channel [06:57] makuchaku has joined the channel [06:58] jaket_ has joined the channel [06:59] eee_mk has joined the channel [07:00] fbzhong has joined the channel [07:01] tdegrunt has joined the channel [07:01] sreeix has joined the channel [07:01] flottis has joined the channel [07:02] flottis: hi everyone, i need to know why a child process dies, any ideas how to debug that? [07:03] marshall has joined the channel [07:04] caseywstark_ has joined the channel [07:04] ivanfi has joined the channel [07:05] ExsysTech has joined the channel [07:06] djcoin has joined the channel [07:06] flippyhead has joined the channel [07:06] zentoooo has joined the channel [07:10] bene1 has joined the channel [07:10] yozgrahame has joined the channel [07:10] fangel has joined the channel [07:10] bene1 has left the channel [07:10] darshanshankar has joined the channel [07:11] beawesomeinstead has joined the channel [07:11] beawesomeinstead has joined the channel [07:11] jbpros has joined the channel [07:13] sriramk has joined the channel [07:15] steffan has joined the channel [07:15] mAritz has joined the channel [07:16] ditesh|cassini has joined the channel [07:16] niftylettuce: night owl catches the snake... [07:17] zhangkaizhao_ has joined the channel [07:18] xsyn has joined the channel [07:18] level09 has joined the channel [07:19] rictic has joined the channel [07:20] matjas has joined the channel [07:25] Zeffer has joined the channel [07:26] sriramk has joined the channel [07:28] thalll has joined the channel [07:31] JianMeng has joined the channel [07:31] gausby has joined the channel [07:32] Druide_ has joined the channel [07:33] mike5w3c_ has joined the channel [07:34] temp01 has joined the channel [07:34] [AD]Turbo has joined the channel [07:34] msucan has joined the channel [07:38] AAA_awright_ has joined the channel [07:38] fbzhong: indutny: there is someone reply this issue on github. He said the __proto__ property does not copy proper in runInNewContext code. https://github.com/joyent/node/issues/1105#issuecomment-1233739 [07:38] indutny: fbzhong: great [07:38] indutny: fbzhong: as I said [07:38] indutny: fbzhong: so does my workaround with constructor.prototype works? [07:39] fbzhong: indutny: and he said that the getter/setter property does not copied either. Later I will write some code to test it. [07:39] indutny: k [07:39] fbzhong: indutny: sorry that I didn't test it yet... :( [07:39] Bj_o_rn has joined the channel [07:40] indutny: fbzhong: probably constructor property won't copy too in this case [07:40] thron7 has joined the channel [07:40] fbzhong: indutny: let's write a code to verify it. Any progress, I will let you know :) [07:42] thron7 has left the channel [07:42] MrTopf has joined the channel [07:43] indutny: fbzhong: no neeed, wait a sec I'll answer why [07:43] indutny: fbzhong: https://github.com/joyent/node/blob/master/src/node_script.cc#L336-345 [07:44] igl has joined the channel [07:44] indutny: fbzhong: constructor and __proto__ ain't in properties list [07:45] fbzhong: indutny: so you means the sandbox->GetPropertyNames will return all keys without the __proto__ and setter/getter propery, right? [07:45] indutny: yep [07:45] jhurliman: does anyone else have issues with the line numbers in node-inspector drifting (becoming incorrect) while stepping through many methods? [07:46] indutny: V8EXPORT Local v8::Object::GetPropertyNames( ) Returns an array containing the names of the enumerable properties of this object, including properties from prototype objects. The array returned by this method contains the same values as would be enumerated by a for-in statement over this object. [07:46] uchuff has joined the channel [07:46] indutny: b/c they are not enumerable [07:46] fbzhong: ok, I got it... [07:47] superjudge has joined the channel [07:47] ntk1000 has joined the channel [07:47] fbzhong: indutny: why not use the sandbox object as the global object in the new context? It's less code, maybe less bugs as well. [07:47] [AD]Turbo: hi there [07:48] azeroth__ has joined the channel [07:49] lackac has joined the channel [07:49] indutny: fbzhong: probably thats because Context->Global() can't be set to a object [07:49] fbzhong: indutny: refer to this http://bespin.cz/~ondras/html/classv8_1_1Context.html#dd11dd18ee8e7f03d383afa79e87d1e6 [07:50] fbzhong: indutny: static Persistent v8::Context::New ( ExtensionConfiguration * extensions = NULL, [07:50] fbzhong: Handle< ObjectTemplate > global_template = Handle< ObjectTemplate >(), [07:50] fbzhong: Handle< Value > global_object = Handle< Value >() [07:50] indutny: yep I'm looking at it too [07:50] MikeMakesIt has joined the channel [07:50] fbzhong: indutny: the third parameter of Context::New is the global object. [07:51] indutny: I see, I see [07:51] fbzhong: indutny: however, this morning, I am trying to pass sandbox as the new Context global object, the script->run throws exception: segment fault... [07:51] beseku has joined the channel [07:51] indutny: hm.... [07:51] gozala has joined the channel [07:52] troessner has joined the channel [07:52] fbzhong: indutny: maybe my code is wrong... [07:52] beseku has left the channel [07:53] indutny: try to pass it as second argument [07:53] temp01 has joined the channel [07:54] indutny: fbzhong: https://github.com/joyent/node/blob/master/deps/v8/samples/shell.cc#L67 [07:54] fbzhong: indutny: let me have a try. [07:54] indutny: k [07:55] test123432432 has joined the channel [07:55] fbzhong: indutny: wait me for a moment :) [07:56] sechrist has joined the channel [07:56] indutny: fbzhong: np, I'm doing my regular job :) Planning to be here for sometime [07:56] fbzhong: indutny: me too :) [07:58] FireFly|n900 has joined the channel [08:04] micheil has joined the channel [08:05] stonebranch has joined the channel [08:06] mehlah has joined the channel [08:08] davidbanham has joined the channel [08:08] indutny: fbzhong: so, any results? [08:11] jeremyselier has joined the channel [08:12] fbzhong: indutny: sorry, I am working other stuff... [08:12] mc_greeny has joined the channel [08:12] indutny: k, np [08:12] fbzhong: indutny: any progress, I will let you know :) [08:15] Xano has joined the channel [08:16] adambeynon has joined the channel [08:16] ewdafa has joined the channel [08:18] adambeynon has joined the channel [08:20] ExsysTech has joined the channel [08:22] indutny: fbzhong: ok, that won't work [08:22] indutny: fbzhong: second argument needs to be ObjectTemplate [08:23] fbzhong: indutny: I use the Handle< ObjectTemplate >() as the second argument, it failed... [08:24] beppu has joined the channel [08:24] fbzhong: indutny: I think it may be the global_template of sandbox object does not the same with the Handle< ObjectTemplate >(). [08:24] indutny: fbzhong: of course that will fail [08:25] fbzhong: indutny: global_object An optional global object to be reused for the newly created context. This global object must have been created by a previous call to Context::New with the same global template. The state of the global object will be completely reset and only object identify will remain. [08:27] a2800276 has joined the channel [08:28] secoif has joined the channel [08:28] burningdog has joined the channel [08:28] adrianmg has joined the channel [08:29] pomodoro has joined the channel [08:33] jonathantaylor has joined the channel [08:35] Xano_ has joined the channel [08:36] josephboyle has joined the channel [08:36] sechrist has joined the channel [08:36] hellp has joined the channel [08:37] jonathantaylor has joined the channel [08:39] thalll has joined the channel [08:46] TomY has joined the channel [08:49] prettyrobots has joined the channel [08:49] markwubben has joined the channel [08:50] test123432432_ has joined the channel [08:50] fbzhong_ has joined the channel [08:55] bzinger has joined the channel [08:58] fbzhong has joined the channel [09:00] romainhuet has joined the channel [09:00] stonebranch has joined the channel [09:01] gozala has joined the channel [09:01] dies_el has joined the channel [09:03] littke has joined the channel [09:03] bzinger_ has joined the channel [09:04] rictic has joined the channel [09:06] stonebranch has joined the channel [09:07] thron7 has joined the channel [09:09] ExsysHost has joined the channel [09:09] zcopley has joined the channel [09:09] sechrist_ has joined the channel [09:12] JackeyChan has joined the channel [09:14] wittemann has joined the channel [09:15] Schmallon has joined the channel [09:16] jtsnow has joined the channel [09:16] unomi has joined the channel [09:19] fbzhong: indutny: I did use sandbox as the new Context global object, however, it throw segment fault error. [09:19] wittemann has left the channel [09:19] dgathright has joined the channel [09:19] fbzhong: indutny: And I think we could refer the code from Chromium... [09:20] indutny: fbzhong: you should use persistent handles [09:20] indutny: fbzhong: for storing every object related to that Context [09:20] slaskis has joined the channel [09:20] fbzhong: indutny: what's that? do you have more detail about it? [09:22] indutny: fbzhong: it's a class, like Local or Handle [09:22] indutny: fbzhong: actually morelike Local [09:22] indutny: fbzhong: Persistent a; [09:23] fbzhong: indutny: how to adopt it in that scenario? [09:24] indutny: fbzhong: sorry, I'm kinda busy now. Can you please search for "Persistent" term into node.js folder [09:25] fbzhong: indutny: ok, really thank you :) [09:26] matyr has joined the channel [09:27] papandreou has joined the channel [09:31] ckknight has joined the channel [09:34] FireFly|n900 has joined the channel [09:35] niftylettuce: woooo [09:35] niftylettuce: just built my own grid system for stylus [09:35] niftylettuce: woot baby wooooot [09:35] niftylettuce: 950gs ftw [09:35] niftylettuce: 960gs ftl [09:36] pigmej has joined the channel [09:36] dgathright has joined the channel [09:36] niftylettuce: oh woa its 5am QQ [09:36] dipser has joined the channel [09:40] jonathantaylor has left the channel [09:41] CiRlE_ has joined the channel [09:42] aliem has joined the channel [09:43] wao: http://img813.imageshack.us/img813/1782/20017017944485210353010.jpg [09:43] bengl has joined the channel [09:44] bengl has joined the channel [09:44] whoops has joined the channel [09:45] miloshadzic has joined the channel [09:46] adambeynon has joined the channel [09:46] bradwright has joined the channel [09:46] bradwright has joined the channel [09:46] TheDeveloper has joined the channel [09:46] brianleroux has joined the channel [09:46] DTrejoAFKarchive has joined the channel [09:47] Knio has joined the channel [09:47] iaincarsberg has joined the channel [09:50] matyr has joined the channel [09:51] brimster has joined the channel [09:52] roidrage has joined the channel [09:53] dsirijus has joined the channel [09:56] ExsysTech has joined the channel [09:58] fly-away has joined the channel [09:58] matthijs has joined the channel [09:59] JackeyChan has joined the channel [10:05] johnnywengluu has joined the channel [10:08] kriszyp has joined the channel [10:11] NetRoY has joined the channel [10:11] _ralph has joined the channel [10:11] dantalizing_ has joined the channel [10:13] fyskij has joined the channel [10:18] lgl has joined the channel [10:18] daglees has joined the channel [10:19] lgl: Hi guys, I have a problem with Stylus and Nib that I can't seem to figure out: "linear-gradient-image(50px, blue, yellow)" will just compile to "url(gradient-data-uri(create-gradient-image(100px, "top")));" [10:19] Nomon has joined the channel [10:19] ncb000gt has joined the channel [10:19] lgl: Anybody familiar with Stylus and Nib who has seen this? [10:22] fljitovak_ has joined the channel [10:27] lgl: Never mind, I had to call stylus.use(...) instead of stylus.include(...) [10:29] snearch has joined the channel [10:34] gausby has joined the channel [10:35] davidcoallier has joined the channel [10:38] easternbloc has joined the channel [10:39] eliziario has joined the channel [10:40] okuryu has joined the channel [10:42] temp02 has joined the channel [10:44] wjwoodward has joined the channel [10:48] RevoOf has joined the channel [10:50] some1else has joined the channel [10:51] Mrfloyd has joined the channel [10:53] Muon has joined the channel [10:53] Muon has joined the channel [10:53] Muon has left the channel [10:54] romainhuet_ has joined the channel [10:55] devrim has joined the channel [10:57] Xano has joined the channel [11:01] pomodoro has joined the channel [11:04] Mrfloyd_ has joined the channel [11:05] aheckmann has joined the channel [11:05] Mrfloyd__ has joined the channel [11:06] bzinger has joined the channel [11:07] unomi has joined the channel [11:09] mischief has joined the channel [11:13] romainhuet_ has joined the channel [11:18] xandrews has joined the channel [11:19] eikaas_ has joined the channel [11:24] wpl has joined the channel [11:35] bzinger has joined the channel [11:38] pen has joined the channel [11:40] zentoooo has joined the channel [11:42] Bradleymeck has joined the channel [11:42] grabarz has joined the channel [11:43] avalanche123 has joined the channel [11:46] CoinOpeBoy has joined the channel [11:47] hdon has joined the channel [11:49] ExsysTech has joined the channel [11:51] seivan has joined the channel [11:53] anoop has joined the channel [11:54] MikeMakesIt has joined the channel [11:54] jarek has joined the channel [11:54] jarek has joined the channel [11:57] Wizek has joined the channel [12:01] frodenius has joined the channel [12:01] Renegade001 has joined the channel [12:02] wpl has left the channel [12:02] tiagoa has joined the channel [12:08] teddy^ has joined the channel [12:10] teddy^: hi there [12:10] teddy^: does anyone have experience using less.js server-side? [12:11] fyskij has joined the channel [12:11] MrTopf has joined the channel [12:11] teddy^: I am using it with java/rhino, it's working fine, but I'd like to supply an environment to the compiler with mixins/variables to make them available to the file to be processed [12:13] beawesomeinstead has joined the channel [12:13] beawesomeinstead has joined the channel [12:13] tbassetto has joined the channel [12:14] fbzhong has joined the channel [12:15] fbzhong: indutny [12:16] jonaslund has joined the channel [12:16] RyanD has joined the channel [12:19] col3 has joined the channel [12:21] ivanfi has joined the channel [12:21] eldar has joined the channel [12:23] grok has joined the channel [12:25] jonasen has joined the channel [12:27] adrianmg has joined the channel [12:28] stepheneb has joined the channel [12:29] pkarl has joined the channel [12:32] blueadept has joined the channel [12:35] dnolen has joined the channel [12:37] romainhuet has joined the channel [12:38] romainhuet_ has joined the channel [12:39] romainhuet has joined the channel [12:40] broofa has joined the channel [12:40] fumanchu182 has joined the channel [12:40] jxck has joined the channel [12:43] RyanD has left the channel [12:43] xsyn has joined the channel [12:46] Mart_ has joined the channel [12:47] MattJ has joined the channel [12:49] aliem has joined the channel [12:52] hellp has joined the channel [12:53] unomi has joined the channel [12:55] sirkitree has joined the channel [12:56] pandeiro has joined the channel [12:57] xsyn has joined the channel [12:58] hij1nx has joined the channel [12:59] jacter has joined the channel [12:59] AaronMT has joined the channel [13:00] dyer has joined the channel [13:00] dyer has joined the channel [13:01] arpegius has joined the channel [13:04] arpegius has joined the channel [13:05] avalanche123 has joined the channel [13:07] xsyn has joined the channel [13:09] Bradleymeck has joined the channel [13:09] willwhite has joined the channel [13:09] pandeiro has joined the channel [13:09] xandrews has joined the channel [13:11] stepheneb has joined the channel [13:12] adrianmg has joined the channel [13:15] pt_tr has joined the channel [13:16] Schmallon has joined the channel [13:18] jlecker has joined the channel [13:20] ezl has joined the channel [13:21] FireFly|n900 has joined the channel [13:21] benmonty has joined the channel [13:22] jbpros has joined the channel [13:22] ivanfi has joined the channel [13:23] tayy has joined the channel [13:25] thomblake has joined the channel [13:25] ianward has joined the channel [13:26] davidascher has joined the channel [13:26] eikaas has joined the channel [13:26] adambeynon has joined the channel [13:27] k1ttty has joined the channel [13:27] davidbanham has joined the channel [13:31] davidsklar has joined the channel [13:31] steyblind has joined the channel [13:32] dcampano has joined the channel [13:32] kawaz_air has joined the channel [13:33] mike5w3c_ has joined the channel [13:33] steyblind has joined the channel [13:36] romainhuet_ has joined the channel [13:38] matjas_ has joined the channel [13:38] brianseeders has joined the channel [13:39] matjas_ has joined the channel [13:39] divbyzero has joined the channel [13:41] jacter has joined the channel [13:41] rfay has joined the channel [13:41] pauls has joined the channel [13:43] pengwynn has joined the channel [13:45] eyesUnclouded has joined the channel [13:45] boaz_ has joined the channel [13:46] pkarl has joined the channel [13:48] sirkitree has joined the channel [13:48] sreeix has joined the channel [13:49] gmci has joined the channel [13:49] dcelix has joined the channel [13:51] MikeMakesIt has joined the channel [13:51] Virtuo has joined the channel [13:52] Mrfloyd has joined the channel [13:53] level09 has joined the channel [13:53] alex_b has joined the channel [13:53] brianc has joined the channel [13:53] Spion_ has joined the channel [13:55] `3rdEden: its quite with out kohai here ;9 [13:55] trotter has joined the channel [13:58] eyesUnclouded has joined the channel [13:58] strmpnk has joined the channel [13:58] sivy has joined the channel [14:00] minaguib has joined the channel [14:01] nibbo has joined the channel [14:06] newy_ has joined the channel [14:06] Poetro has joined the channel [14:06] Venom_X has joined the channel [14:07] indutny has joined the channel [14:08] dcelix has joined the channel [14:10] d0k has joined the channel [14:11] d0k_ has joined the channel [14:11] d0k has joined the channel [14:11] ryanfitz has joined the channel [14:12] timmywil has joined the channel [14:13] w3dot0 has joined the channel [14:13] benmonty: has anyone expressed interest in a connect-like framework for http.request? (does it already exist?) [14:15] Mrfloyd has joined the channel [14:15] shanez has joined the channel [14:16] sonnym has joined the channel [14:17] dguttman has joined the channel [14:17] RevoOf has joined the channel [14:19] sirkitree has joined the channel [14:20] baudehlo has joined the channel [14:22] col3 has joined the channel [14:25] sandropadin has joined the channel [14:25] newy_ has joined the channel [14:26] ceej has joined the channel [14:27] bshumate has joined the channel [14:27] bshumate has joined the channel [14:27] pifantastic has joined the channel [14:28] EyePulp has joined the channel [14:30] davidbanham has joined the channel [14:33] fakewaffle has joined the channel [14:33] level09_ has joined the channel [14:34] nilcolor_ has joined the channel [14:35] sgimeno has joined the channel [14:35] grabarz has left the channel [14:38] asabil has joined the channel [14:40] cloudhead_ has joined the channel [14:41] colinclark has joined the channel [14:42] ryah has joined the channel [14:42] yhahn has joined the channel [14:43] mertonium has joined the channel [14:44] FireFly has joined the channel [14:46] davidcoallier has joined the channel [14:46] aheckmann has joined the channel [14:46] a2800276 has joined the channel [14:46] rauchg has joined the channel [14:48] davidcoallier has joined the channel [14:49] adrianmg has joined the channel [14:51] cloudhead_ has joined the channel [14:51] mraleph has joined the channel [14:52] MrTopf has joined the channel [14:52] BillyBreen has joined the channel [14:52] cloudhead has joined the channel [14:54] sonnym has joined the channel [14:54] lukstr: `3rdEden: almost zen like [14:54] CIA-90: node: 03Ben Noordhuis 07v0.4 * reb4c9ed 10/ src/node_crypto.cc : [14:54] CIA-90: node: Fix resource leaks in node_crypto.cc [14:54] CIA-90: node: Fixes #1097. - http://bit.ly/knJ2rP [14:54] lukstr: curse you CIA-90 [14:54] dlkinney has joined the channel [14:54] nibblebot has joined the channel [14:54] mscdex has joined the channel [14:54] Swimming_bird has joined the channel [14:55] febits has joined the channel [14:56] davidcoallier has joined the channel [14:57] bentruyman has joined the channel [14:58] yhahn has joined the channel [14:58] softdrink has joined the channel [14:58] jentulman has joined the channel [14:59] lakin has joined the channel [15:00] Wizek has joined the channel [15:00] jakehow has joined the channel [15:01] newy_ has joined the channel [15:01] trotter has joined the channel [15:03] spasquali has joined the channel [15:03] level09_ has left the channel [15:04] spasquali has left the channel [15:05] agrohe21 has joined the channel [15:05] Mrfloyd_ has joined the channel [15:06] spasquali has joined the channel [15:07] `3rdEden: lukstr ;D [15:08] jtsnow has joined the channel [15:08] tayy has joined the channel [15:08] bene has joined the channel [15:10] eliziario has joined the channel [15:10] yozgrahame has joined the channel [15:10] ezl has joined the channel [15:11] spasquali: can't install msgpack [15:13] marshall has joined the channel [15:13] bbttxu has joined the channel [15:15] briznad has joined the channel [15:15] jmoyers has joined the channel [15:17] jgautier has joined the channel [15:17] dcampano has joined the channel [15:17] jtsnow has joined the channel [15:18] jtsnow has joined the channel [15:20] jmoyers has joined the channel [15:21] Mrfloyd has joined the channel [15:21] jtsnow has joined the channel [15:26] dget has joined the channel [15:26] madzak has joined the channel [15:29] Maximosis has joined the channel [15:31] deedubs has joined the channel [15:32] materialdesigner has joined the channel [15:32] jentulman has left the channel [15:34] iori has joined the channel [15:36] tobias has joined the channel [15:36] jacobfogg has joined the channel [15:36] jacobfogg1 has joined the channel [15:37] jtsnow has joined the channel [15:39] sirkitre_ has joined the channel [15:39] Guest34598: mornin [15:40] jmoyers: ACTION grumbles about it being too early for programming [15:40] Venom_X_ has joined the channel [15:42] ryah: it's never too early for programming [15:42] spasquali has left the channel [15:42] jmoyers: yaaaaawuck [15:42] jmoyers: a combination of yawn and uck [15:43] thalll has joined the channel [15:43] brianloveswords has joined the channel [15:43] spasquali has joined the channel [15:44] Tobsn has joined the channel [15:46] Tobsn has joined the channel [15:47] Corren has joined the channel [15:47] philtor has joined the channel [15:49] flippyhead has joined the channel [15:52] Tidwell has joined the channel [15:52] spasquali: can't get msgpack to install... [15:52] spasquali: any others? [15:53] beawesomeinstead has joined the channel [15:53] jtrudeau has joined the channel [15:54] sub_pop has joined the channel [15:54] andycc_ has joined the channel [15:55] saschagehlich has joined the channel [15:55] _numbers has joined the channel [15:56] beriberikix_ has joined the channel [15:56] _numbers has left the channel [15:57] eresair has joined the channel [15:58] dguttman has joined the channel [15:58] ryanfitz has joined the channel [15:58] burningdog has joined the channel [15:59] donaldpcook has joined the channel [15:59] davidascher has joined the channel [16:00] hij1nx has joined the channel [16:01] norviller has joined the channel [16:02] tim_smart has joined the channel [16:03] prettyrobots has joined the channel [16:05] donaldpcook has joined the channel [16:05] Renegade001 has joined the channel [16:06] tdegrunt has joined the channel [16:07] rpj8 has joined the channel [16:07] adrianmg has joined the channel [16:09] fmeyer has joined the channel [16:09] FireyFly|n900 has joined the channel [16:09] TooTallNate has joined the channel [16:10] tjholowaychuk has joined the channel [16:10] Tobsn: rauchg, ever tested socketio in IE9? [16:10] eject has joined the channel [16:11] dcelix has joined the channel [16:12] eject has left the channel [16:12] seivan has joined the channel [16:12] tmpvar has joined the channel [16:13] rauchg: Tobsn [16:13] rauchg: nop, but it should work [16:13] rpj8: expressjs question: http://jsfiddle.net/sjq6d/ This gives me an error and I'm not sure why: [16:13] rpj8: 500 ReferenceError: FALSE is not defined [16:13] stonebranch has joined the channel [16:13] pandeiro: how would I write

I am here today

in jade? [16:13] Tobsn: yeah i guess, im building a little search engine with it right now, gonna test with IE9 later on, i'll let you know what IE9 thinks about it [16:14] jmoyers: rpj8 lower case [16:14] rpj8: jmoyers: seriously? [16:14] jmoyers: presumably [16:14] jmoyers: v8bot: false [16:14] v8bot: jmoyers: Use v8: to evaluate code or "`v commands" for a list of v8bot commands. [16:14] binarypie has joined the channel [16:15] jmoyers: v8bot: false? [16:15] v8bot: jmoyers: Use v8: to evaluate code or "`v commands" for a list of v8bot commands. [16:15] jmoyers: :: shrugs :: [16:15] spaceinvader: pandeiro: http://paste.org/pastebin/view/33932 [16:15] spaceinvader: pandeiro: maybe something like that [16:15] gazumps has joined the channel [16:15] mertonium has joined the channel [16:16] pandeiro: spaceinvader: cheers, worked [16:16] jasonmcleod has joined the channel [16:17] rpj8: jmoyers: wow. [16:17] rpj8: that was it. [16:17] rpj8: I feel very silly. [16:18] matjas has joined the channel [16:18] chjj: v8: delete function(){}() [16:18] v8bot: chjj: true [16:18] chjj: i win [16:19] indutny has joined the channel [16:19] chjj: v8: Object.prototype.toString.call(void 0) [16:19] v8bot: chjj: "[object global]" [16:19] wadey has joined the channel [16:19] Yoric has joined the channel [16:19] sriramk has joined the channel [16:20] kjeldahl has joined the channel [16:20] rpj8: jmoyers: thanks for your help [16:20] rfay has joined the channel [16:21] jaw6 has joined the channel [16:21] yozgrahame has joined the channel [16:22] chjj: v8: -~+delete function(){}() [16:22] v8bot: chjj: 2 [16:22] chjj: v8bot, why are you bad at math [16:22] chjj: kohai is so much better than you [16:23] context: haha [16:23] Tobsn: rauchg, whats the easiest way to get the clients ip? client.listener.socket.remoteAddress? [16:23] jerrysv has joined the channel [16:24] ryanallenbobcat has joined the channel [16:24] chjj: well, wherever it is, socket.remoteAddress is where it came from [16:24] chjj: but thats a lot of property lookups there ;) [16:24] chjj: @Tobsn [16:24] Tobsn: lol [16:24] Tobsn: true [16:25] Tobsn: lets say i want to reply the IP address to the connector [16:25] hermanjunge has joined the channel [16:25] Tobsn: socket.on( 'connect', func(client){client.on('message',func(){ socket.send( socket.remoteAddress ); }) } ); ? [16:26] harth has joined the channel [16:26] dies-el has joined the channel [16:26] context: uhh [16:26] context: client would have the remote ip id think [16:26] context: socket is the listening socket. it has no remote ip [16:26] Tobsn: im not sure about the scope and session data here... is connection triggered by each remote connection so each client obj is specific to its connection? [16:26] FireFly|n900 has joined the channel [16:26] jmoyers: yes [16:27] context: tobsn: each connection is its own socket. [16:27] eliziario has joined the channel [16:27] Tobsn: k so socket.on('connection',func(client){}) the client is always unique to its socket at the moment handled [16:27] Tobsn: okay, that makes sense [16:27] miccolis has joined the channel [16:28] xsyn has joined the channel [16:28] context: tobsn: yes. [16:28] Tobsn: well its still at least client.listener.connection.remoteAddress or something [16:28] context: listener sounds like its hitting socket. which has no remote address [16:29] context: listening socket has no 'other end' [16:29] Tobsn: its what client holds [16:29] sirganya: anyone used SC.Webview to trigger a download? [16:29] Tobsn: {listener:{connection{},etc.}} [16:29] hellp has joined the channel [16:29] sirkitree has joined the channel [16:29] hansman has joined the channel [16:29] context: what is client [16:29] context: a net.Socket ? [16:29] context: just do client.remoteAddress [16:30] Tobsn: comes from the connection [16:30] context: yes. [16:30] context: its still a socket. [16:30] sirganya: oops.. wrong group [16:30] Tobsn: k [16:30] context: oh no wait [16:30] Tobsn: hehe [16:30] context: are you getting connections or connecting to something [16:30] context: there is no 'connect' event on net.Server [16:31] jmoyers: this is socket.io [16:31] context: tobsn: is this coming from createServer or createConnection [16:31] context: oh. [16:31] jmoyers: presumably [16:31] jmoyers: looking at the syntax [16:31] Tobsn: its server side, socket = io.listen(); socket.on('connection', function( client ) { client.on( 'message', function(msg){ console.log(client); })} ) [16:31] zmbmartin: tjholowaychuk: how do I accomplish a rails style content_for in express? [16:31] caseywstark has joined the channel [16:31] FireyFly|n900 has joined the channel [16:31] tjholowaychuk: zmbmartin you would have to have access to the template engines buffer [16:32] tjholowaychuk: so it depends which engine [16:32] Tobsn: context, http://pastebin.com/raw.php?i=fdjiWj0L [16:32] zmbmartin: jade [16:32] Tobsn: looks like that [16:32] rsms has joined the channel [16:33] tjholowaychuk: zmbmartin i eventually want something like that for everything but it's touch to accommodate all of them [16:33] context: i dont know socket.io :x seems odd they wouldnt make accessing the remote addr simple [16:33] c4milo has joined the channel [16:33] Tobsn: hehe [16:33] Tobsn: rauchg, im requesting client.remoteAddress :P [16:33] context: tobsn: but this is an incoming connection? [16:33] drudge: pull request! [16:33] jmoyers: ^ [16:33] jmoyers: also [16:33] Tobsn: yep [16:33] jmoyers: ip address [16:34] zmbmartin: tjholowaychuk: is it possible for me to do it with jade right now? [16:34] theblob has left the channel [16:34] jmoyers: is not something you typically NEED off a web socket connection [16:34] context: well [16:34] Tobsn: well [16:34] context: io.listen has no 'connect' event [16:34] tjholowaychuk: zmbmartin probably, i dont have time to write it right now though [16:34] tjholowaychuk: but yeah [16:34] Tobsn: hu? [16:34] pandeiro: spaceinvader: btw found out by accident just now that you can just inline html tags in jade :) [16:34] Tobsn: yeah it has [16:34] Tobsn: i mean its working here [16:35] zmbmartin: tjholowaychuk: ok thanks, I will see what I can come up with. [16:36] springmeyer has joined the channel [16:36] context: tobsn: io.listen has a 'connection' event [16:36] hosh_work has joined the channel [16:36] Tobsn: socket.on( 'connection', function( client ) { [16:36] Tobsn: well, yeah [16:36] Tobsn: i mean... [16:37] Tobsn: there is also no func(){} and i just used it in the example :P [16:37] context: heh. technically 'connect' is an event though. which is why i stopped for a sec. [16:37] Tobsn: oh [16:37] Tobsn: i see what you mean [16:37] jelveh has joined the channel [16:37] Tobsn: now tell me how to send to that specific client :P [16:38] drudge: client.send() [16:39] Tobsn: lol yeah, just figured that out :D [16:39] Tobsn: that was easy [16:39] drudge: there is also client.sessionId which maps to server.clients[sessionId] [16:39] Tobsn: would be socket.clients right? [16:39] context: tobsn: you want client.connection [16:39] context: not listener [16:39] Tobsn: if you initiate with socket = io.listen [16:40] Tobsn: k [16:40] fermion has joined the channel [16:40] drudge: Tobsn: yes [16:40] context: oh. haha. [16:40] context: yeah you have access to the client. [16:40] Tobsn: context, yeah youre right [16:41] context: but if you're just needing to send, what they said [16:41] Tobsn: btw. does anyone use socket.io-cluster? [16:41] Tobsn: cluster( server ).use( bridge( socket ) ).listen( 3000 ); - gives me a "TypeError: object is not a function" [16:41] softdrink: heh neat. crash a chrome tab in 3 characters: open a tab. open the js console. type "[]." (without quotes) [16:42] Tobsn: softdrink, doesnt work here [16:42] herbySk has joined the channel [16:42] Tobsn: i end up on a google search for it [16:42] shanez has joined the channel [16:43] softdrink: you typed it in the js console, right? [16:43] steph021 has joined the channel [16:43] steph021 has joined the channel [16:43] Tobsn: oh [16:44] indexzero has joined the channel [16:44] level09: where is the Math api for node.js ? [16:45] level09: rand, floor, round etc .. [16:45] jgv_ has joined the channel [16:45] level09: isn't that built in ? [16:45] softdrink: that's built into js [16:45] jtsnow has joined the channel [16:45] level09: ah right [16:45] level09: sorry :) [16:46] mundanity has joined the channel [16:46] level09: still, at the console, random() generates an error [16:47] jetienne has joined the channel [16:48] amerine has joined the channel [16:48] kriszyp has joined the channel [16:48] ewdafa has joined the channel [16:48] softdrink: Math.random()? [16:49] level09: aha thanks ! [16:49] Maximosis has joined the channel [16:49] sub_pop has joined the channel [16:49] Tobsn: level09, http://www.w3schools.com/js/default.asp [16:49] Tobsn: :P [16:50] level09: :DD [16:50] Tobsn: softdrink, tred it in console, doesnt work [16:50] Tobsn: just says unexpected token } [16:50] softdrink: Tobsn: what version? [16:51] Mrfloyd has joined the channel [16:51] Tobsn: http://dl.dropbox.com/u/1656816/Screenshots/3y9na5eeqx9f.png [16:52] Tobsn: (btw. dropbox + grabbox = take screenshots with shift + cmd + 4 = instant dropbox upload and copy public url into clipboard) [16:52] Tobsn: most awesome thing ever. [16:52] Tobsn: http://dl.dropbox.com/u/1656816/Screenshots/_qnau880idk3.png <-full window [16:52] matjas has joined the channel [16:53] sechrist has joined the channel [16:53] andycc_ has joined the channel [16:54] softdrink: must be a new bug or something. i'm running 13.0.772.0 dev [16:55] pandark_: Hi. Is it possible to use underscore.js as a template engine for express.js? [16:56] colinclark has joined the channel [16:56] tikva has joined the channel [16:56] stepheneb has joined the channel [16:56] w3dot0 has joined the channel [16:57] w3dot0 has joined the channel [16:57] lukstr: Tobsn: I have a bash script that has been doing that for years :) [16:57] Tobsn: :D [16:57] nyrb has joined the channel [16:57] Tobsn: i just found that a month ago or so [16:58] m00p has joined the channel [16:58] Tobsn: blew my mind because it integrates with native funtionality + dropbox [16:58] Tobsn: pretty nice. [16:58] ryah has joined the channel [16:59] lukstr: anything's possible with a good customizable os and the internet [16:59] spasquali: anyone else having trouble installing msgpack? [16:59] Max-Might has joined the channel [17:00] towski has joined the channel [17:01] mertonium has joined the channel [17:02] vdemedes has joined the channel [17:02] vdemedes: Hello! [17:02] vdemedes: How to get the URL for just uploaded file with knox? [17:02] vdemedes: uploaded to Amazon S3 [17:02] xsyn has joined the channel [17:03] vdemedes: I'm getting it manually right now, like: 'http://bucket.amazonaws.com/' + filename [17:03] colinclark has joined the channel [17:04] AvianFlu has joined the channel [17:04] tjholowaychuk: vdemedes check out the source [17:04] tjholowaychuk: it's documented and it's your friend :D [17:04] vdemedes: ok [17:05] vdemedes: btw [17:05] vdemedes: tjholowaychuk: what if I'm using Cloudfront? [17:05] vdemedes: tjholowaychuk: how to get URLs for files, if they are under Cloudfront? [17:06] matjas has joined the channel [17:06] Tobsn: that tool + visor and expandrive [17:07] Tobsn: vdemedes, you have to set it yourself [17:07] Tobsn: get your cloudfront url and attach the path [17:07] vdemedes: Tobsn: and I will get URLs as usual? [17:07] quijote has joined the channel [17:08] vdemedes: using knox.url(filename)? [17:08] dguttman has joined the channel [17:09] dguttman has joined the channel [17:09] binarypie has joined the channel [17:10] reid has joined the channel [17:10] steffkes has joined the channel [17:10] Corren has joined the channel [17:11] cagdas has joined the channel [17:11] Corren has joined the channel [17:12] nook has joined the channel [17:14] LowValueTarget has joined the channel [17:14] gtramont1na has joined the channel [17:14] LowValueTarget has joined the channel [17:14] Tobsn: vdemedes, the path are always the same [17:14] Tobsn: the only thing that changes is the host [17:14] vdemedes: yea [17:14] Tobsn: from bucket.blahamazon.com to yourcloudfronturl.com [17:15] Tobsn: or even your cname [17:15] vdemedes: so how can I know the host for my filename under CDN? [17:15] vdemedes: ohh [17:15] jbpros has joined the channel [17:15] vdemedes: I define cloudfront name? [17:15] vdemedes: cloudfront host? [17:15] Tobsn: you can [17:15] Tobsn: with cname [17:15] vdemedes: pph [17:15] Tobsn: i.cdn.cm/ss/themes/4dc9cf534499f405561d0000-t160.jpeg [17:15] vdemedes: ooh [17:15] Tobsn: see ;) [17:15] vdemedes: ok [17:15] vdemedes: I got it [17:15] vdemedes: thank you! [17:15] Tobsn: np ;) [17:15] mertonium has joined the channel [17:17] broofa has joined the channel [17:17] CIA-90: node: 03Ryan Dahl 07master * r9d1bad8 10/ (4 files in 3 dirs): Implement new wrap for uv timer - http://bit.ly/kBBpFu [17:19] dcelix has joined the channel [17:19] jamesarosen has joined the channel [17:20] mjr_ has joined the channel [17:20] adrianmg has joined the channel [17:21] Tobsn: hmm does socket.io has a onready function? [17:21] eldar has joined the channel [17:21] hipe: tjholowaychuk: master HEAD of express-resource looks broken w/ master HEAD of express, after the routing refactor (something about the remove() method isn't on app.router anymore) [17:22] tjholowaychuk: yeah i need to updat eit [17:22] hipe: i would like to try to submit a bug report and a pull request if i can find a fix, but i'm wondering if yr in the middle of it ;) [17:22] tjholowaychuk: not right now nope [17:22] hipe: kk thx ! [17:22] tjholowaychuk: app.remove('/route') or app.get('/route').remove() same thing [17:22] tjholowaychuk: instead of app.router.remove9) [17:23] hipe: ah yes that's waht i was thinking . excellent thx!! glad ur here [17:23] context: tobsn: whats onready? [17:23] caseywstark has joined the channel [17:23] truedat101 has joined the channel [17:24] Tobsn: well, when its done connecting but i guess i can just use on connection [17:24] Tobsn: hmm [17:24] context: tobsn: the client side has a 'conenct' event [17:24] Tobsn: yeah just used that [17:24] Tobsn: 'connect' [17:25] context: tobsn: https://github.com/LearnBoost/Socket.IO [17:25] context: read it ;) [17:25] Tobsn: :P [17:25] Tobsn: too lazy :P [17:25] jacobolus has joined the channel [17:25] dcelix has joined the channel [17:25] caolanm has joined the channel [17:25] Tobsn: trying to build a instant search like google does it [17:25] Tobsn: btw. [17:26] Tobsn: anyone an idea how to do the shebang stuff? [17:26] Tobsn: thats js bbq right? [17:26] captain_morgan has joined the channel [17:26] TheJH has joined the channel [17:26] context: hmmm. how does everyone here gist, any simple command tools or something? [17:27] TheJH: hello, does anyone know where linux-tick-processor.py is? [17:27] context: uhh [17:27] lukstr: TheJH: what [17:27] lukstr: .py? [17:27] orospakr: aside from the "main" field, how does npm set up require() paths for the contents of a given package? what do I do if I want to require() some specific module inside a package I depend on? [17:27] tjholowaychuk: TheJH in v8 [17:27] context: in trunk/tools [17:28] TheJH: tjholowaychuk, context, thank you [17:28] context: orospakr: then you require('package').Module ? [17:28] orospakr: context, assume for the moment that "main" is not set in that package's package.json. [17:29] orospakr: (I tried that, and it require() complained that the package could not be found) [17:29] andycc_ has joined the channel [17:29] orospakr: (well, module could not be found.) [17:30] context: is it installed ? [17:30] context: what package. [17:30] `3rdEden has joined the channel [17:30] orospakr: context, should be. `npm install persistencejs` in the cwd, ran node as REPL and attempted to require(). [17:31] orospakr: that particular package's doc says you can load it with: "var persistence = require('persistencejs/persistence').persistence;" [17:31] orospakr: however, that fails for me. [17:31] orospakr: It's worth noting that other packages in ~/node_modules load fine. [17:31] lukstr: TheJH: isn't it a shell script? [17:31] samsonjs has joined the channel [17:31] rictic has joined the channel [17:32] MikeMakesIt has joined the channel [17:32] kawaz_air has joined the channel [17:32] context: orospakr: require("persistence") no work ? [17:32] TheJH: lukstr, yes, seems so - but I hope that node-profile works anyway [17:32] uchuff has joined the channel [17:33] context: orospakr: msg the dude and tell him to fix his crap [17:33] context: or just require("persistencejs") [17:33] orospakr: persistencejs does not have a main: in its package.json, so it looks like that require() relies on some implicit path behaviour (perhaps NPM sets node_modules as part of the node.js library path?) [17:33] orospakr: neither works. [17:33] context: orospakr: that package is showing usage of node 0.2.0 [17:33] orospakr: although, I'm going to try something... [17:33] orospakr: context, ah, yeah. [17:33] orospakr: good point, there. [17:33] zivester has joined the channel [17:33] context: orospakr: what does persistence do that you need [17:33] context: everything in node is async. [17:34] orospakr: aha, require('persistencejs/lib/persistence') does work. [17:34] dcelix has joined the channel [17:34] drudge: gross [17:34] lukstr: orospakr: oh dear [17:34] orospakr: context, I'm evaluating various db abstractors. [17:34] orospakr: s/abstractors/abstraction layers/ [17:34] drudge: orospakr: node-orm? [17:34] orospakr: hoping for something activerecordy. [17:35] ezl has joined the channel [17:35] context: id knock that out of the running just for failure to properly setup package.json. or be up to date [17:35] orospakr: drudge, is current lore suggesting that one as a good option? part of the problem is that there are TONS of libraries out there, and clear winners haven't really shaken out yet, afaik. [17:35] orospakr: context, yeah, that's pretty much my feeling on that one now. [17:35] killfill has joined the channel [17:35] drudge: orospakr: i think its one of the better ones [17:36] drudge: orospakr: depends on what database you are targeting [17:36] orospakr: not even sure if I want to use a rdbms or a nosql, but I'm leaning towards rdbms. [17:36] orospakr: if I use an rdbms, I very much prefer postgres. [17:37] lukstr: node-orm does postrgres [17:37] orospakr: Draggor, lukstr, it's readme looks a little... spartan. probably why I passed over it already. [17:37] lukstr: really? [17:37] lukstr: https://github.com/dresende/node-orm [17:37] lukstr: there are a couple projects named that last I checked :P [17:37] orospakr: that's the one. [17:38] orospakr: well, the README isn't *too* bad. [17:38] orospakr: it covers most of the basics, looks like. [17:38] bastilian has joined the channel [17:38] ryah has joined the channel [17:38] lukstr: orospakr: the source is also small enough that you can dig around too. [17:38] lukstr: also has a wiki with a few pages [17:39] sechrist has joined the channel [17:39] Tobsn: you guys know paperjamz? just found out their office is one door next to ours... [17:39] a2800276 has joined the channel [17:40] Tobsn: got a free paperjamz guitar :D [17:40] gozala has joined the channel [17:42] lakin has joined the channel [17:42] MichealBenedict has joined the channel [17:43] ardcore has joined the channel [17:43] ardcore has left the channel [17:44] chbrown has joined the channel [17:46] zeade has joined the channel [17:46] beriberikix has joined the channel [17:46] TheJH: hmm, what's the best way to do cpu profiling in node? [17:48] Yoric has joined the channel [17:49] lukstr: write a module :P [17:50] slaskis has joined the channel [17:51] jonaslund has joined the channel [17:52] context: thejh: you find your code thats slow, and play around with it so it runs faster [17:52] ebryn has joined the channel [17:52] dguttman has joined the channel [17:52] jerrysv: ow my head [17:52] jerrysv: profiling at random [17:53] brianc: TheJH: node-inspector might help you out [17:53] jgv_ has joined the channel [17:53] TheJH: brianc: I tried it, but it only provided a heap snapshot function, there was no button for profiling [17:54] gkmngrgn has joined the channel [17:54] ebryn: any recommendations for a simple http client lib? i found node-httpclient [17:54] RevoOf: TheJH: you can always read from a subprocess, such as "uptime" on many linux systems [17:54] brianc: i don't think it's got a button for profiling but if you add the profiling code bits to your code it will capture those profiling sessions and allow you to visually explore them somewhat [17:55] jerrysv: ebryn: request [17:55] jerrysv: ebryn: https://github.com/mikeal/request [17:55] mendel_ has joined the channel [17:55] ebryn: beautiful [17:55] TheJH: RevoOf, but I want to see in which methods it spends all the time [17:56] jerrysv: or, write your own :) [17:56] TheJH: brianc, what code would that be? [17:56] RevoOf: TheJH: sry, your right. thats not good for detailed profiling [17:56] marshall has joined the channel [17:56] TheJH: brianc, ah, found it out, thanks [17:56] malkomalko has joined the channel [17:56] brianc: TheJH: glad to help. :) [17:57] bloodsucker has joined the channel [17:57] bloodsucker: Buenas a todos! [17:57] stride: hola [17:58] ebryn: jerrysv: thanks :) any XML lib suggestions? i want to do some simple XML -> JSON conversions. [17:58] timmywil has joined the channel [17:58] jerrysv: ebryn: sorry, can't help you there, i avoid xml like the plague [17:59] ebryn: heh, i do too typically :P [17:59] newy has joined the channel [17:59] dshaw_ has joined the channel [18:00] yhahn has joined the channel [18:01] Mart_ has joined the channel [18:02] aho has joined the channel [18:02] Max-Might has joined the channel [18:02] cadorn has joined the channel [18:04] mahna has joined the channel [18:05] brianc: Anyone recommend something akin to heroku but for node? [18:06] chbrown: brianc: http://www.joyentcloud.com/ is precisely that, no? [18:06] blkcat: no.de? [18:07] rfay has joined the channel [18:08] Yoric has left the channel [18:08] langworthy has joined the channel [18:08] m00p has joined the channel [18:08] mahna: Somebody's gonna build one for $2k: https://www.odesk.com/jobs/node-complete-service-infrastrucutre_~~6bab9819b9b34930 [18:08] rfay has joined the channel [18:08] eldar has joined the channel [18:09] alindeman: mahna: Hilarious [18:09] vdemedes: brianc: nodejitsu, nodester, no.de, clouddot, duostack [18:10] mcluskydodallas has joined the channel [18:11] mahna: alindeman: One of the all-time greats. ;) [18:11] materialdesigner has joined the channel [18:12] hybsch has joined the channel [18:12] thalll has joined the channel [18:13] josephboyle has joined the channel [18:13] davida has joined the channel [18:15] tiagoa has joined the channel [18:15] davidcoallier has joined the channel [18:15] dgathright has joined the channel [18:15] maushu has joined the channel [18:17] cryptix has joined the channel [18:18] davidascher has joined the channel [18:19] tdegrunt_ has joined the channel [18:20] AntelopeSalad has joined the channel [18:21] AntelopeSalad has joined the channel [18:21] chbrown has joined the channel [18:22] Dinosaurus has joined the channel [18:22] jerrysv: ebryn: http://www.thomasfrank.se/xml_to_json.html ? [18:23] mikl has joined the channel [18:23] ebryn: jerrysv: i found xml2js on npm [18:23] ebryn: thanks [18:23] context: is there an easy way to get data from the package.json in your app itself ? [18:25] deedubs_ has joined the channel [18:27] stephank has joined the channel [18:27] mikeal has joined the channel [18:27] gleicon has joined the channel [18:28] Bradleymeck: context, can you be clearer? either way you would need to see if the file exists and just parse it yourself [18:28] djcoin has joined the channel [18:28] vdemedes: bye [18:29] vdemedes has left the channel [18:29] trotter_ has joined the channel [18:29] zmbmartin: what is the best (most secure) for password encryption? is crypto fine or bcrypt? [18:30] dcelix has joined the channel [18:30] Dinosaurus: hmac with sha1 and a per user salt [18:31] Bradleymeck: anyone seen isaacs about lately? [18:32] context: zmbmartin: most people use some sort of hash with a per-app and per-user salt [18:32] superjudge has joined the channel [18:32] rfay has joined the channel [18:32] jmoyers: context: var j = JSON.parse(fs.readFileSync(path.join(__dirname, "package.json"))+"") is a line from npm.js [18:32] context: well, the app itself has a salt [18:32] Dinosaurus: yeah and a site key ofc [18:32] jmoyers: think you can also use npm.load [18:32] philtor has joined the channel [18:32] Dinosaurus: hmac sha1 per user salt at least 8 characters and a site key [18:32] context: jmoyers: thnx, thats what i was kind of trying to find [18:33] zmbmartin: Dinosaurus and context thanks [18:33] Dinosaurus: and if you want to be awesome allow for keys to be updated on some interval [18:33] admc has joined the channel [18:34] indutny has joined the channel [18:34] andycc_ has joined the channel [18:36] coreb1 has joined the channel [18:36] caolanm has joined the channel [18:38] Dinosaurus has left the channel [18:40] chrislorenz has joined the channel [18:41] robhudson: can you connect to socket.io on a different port than the web page was delivered on? Or is there some JS cross-domain security involved? [18:42] w3dot0 has joined the channel [18:44] TheJH: robhudson, needs to be the same port, same origin policy [18:44] fakewaffle: is there a way to get the full url? [18:45] johnnywengluu_ has joined the channel [18:45] Venom_X has joined the channel [18:45] robhudson: TheJH: That's the name of it :) thanks for the clarification. On to figure out reverse proxying and HTTP 1.1 [18:45] reid has joined the channel [18:46] hipe: wow have ppl successfully used "npm link [foo] before? [18:47] hipe: i step into a git check'd out module, i do "npm link", it builds dependencies, then when I step out of the folder and do "npm link [the-package-name]" it **erases or moves the package directory** [18:47] TheJH: hipe: yes [18:47] TheJH: hipe: oh, no, not with a parameter [18:48] hipe: TheJH: i'm wondering if the steps have changed from what they were here: (and to be fair i don't really get how it's supposed to work) http://foohack.com/2010/08/intro-to-npm/ [18:48] hipe: becasue there the author makes it pretty clear that it's supposed to be a two step process [18:48] hipe: and per "man npm-link" [18:48] hipe: so i'm definately doing it wrong somehow [18:49] mahna: Didn't somebody else ask about that recently? [18:49] hipe: hm [18:50] TheJH: hipe, how about going into the folder and doing "npm link" without args? [18:50] mahna: (maybe, not sure) [18:50] hipe: TheJH: well that works for me (that is, it builds deps) and for all i know it's doing the "second step" but i dunno [18:50] patcito has joined the channel [18:51] hipe: what i'm tyring to do is run the tests for an ancillary, little npm module without re-building its entire dependency tree inside of it [18:51] hipe: s/ancillary/auxiliiary/ [18:51] hipe: learning is fun [18:52] darshanshankar has joined the channel [18:53] adambeynon has joined the channel [18:53] sechrist has joined the channel [18:54] dcelix has joined the channel [18:55] orospakr: lukstr, so, not so sure about node-orm's postgres code: it's using a hardcoded path to find and load a node postgres library. [18:56] orospakr: hide, s/definately/definitely/ :P [18:57] jacobolus has joined the channel [18:57] hij1nx_ has joined the channel [18:57] darshanshankar: mahna: i just saw your odesk link and im still chuckling [18:58] darshanshankar: wonder what marak or hij1nx_ thinks of that XD [18:59] mahna: darshanshankar: Buy for $2k, sell for $212 million [18:59] darshanshankar: hah [19:00] fakewaffle: is there an ejs bundle for textmate? [19:00] jerrysv: probably them that posted it [19:00] Yoric has joined the channel [19:01] eldios has joined the channel [19:01] jerrysv: is there a more modern jslint bundle for textmate? [19:01] ryanallenbobcat has joined the channel [19:01] Yoric has left the channel [19:01] duncanbeevers: jerrysv: I just redid my jslint setup last night with syntatics + jshint [19:02] jerrysv: duncanbeevers: details, please! [19:02] duncanbeevers: It feels pretty nice and I appreciate being able to dial in the warning levels. [19:02] jerrysv: duncanbeevers: js admirers tonight? [19:02] duncanbeevers: jerrysv: That's the plan. [19:02] sechrist has joined the channel [19:03] duncanbeevers: I just followed along with http://stackoverflow.com/questions/473478/vim-jslint/5893447#5893447 [19:03] moop has joined the channel [19:03] ChrisBuchholz: Hey guys. I just cleaned up npm and all the (locally) installed modules. Then i installed version 1.0.6 and then some modules with the -g flag. But it seems like npm doesnt know where they are. If i do "npm ls", it just says "/Users/cb (empty)", and if i try to require some module in node environment, it cant find it. Do i have to do something special something to let npm know where it installs stuff to? [19:03] kmwallio has joined the channel [19:03] gmonnerat has joined the channel [19:03] gmonnerat has left the channel [19:04] duncanbeevers: Any my ~/.jshintrc ended up like this: https://gist.github.com/0633997ff63faec3d13d [19:04] davidascher has joined the channel [19:04] jerrysv: duncanbeevers: awesome, thanks [19:05] codeisforevea has joined the channel [19:05] TheJH: ChrisBuchholz, is "cb" your complete username? [19:05] duncanbeevers: Oh, and in the SO post, they don't mention the specific changes to make to your vim statusline. Those changes are related to syntastic. [19:05] ChrisBuchholz: TheJH: yes indeed [19:05] TheJH: ChrisBuchholz, then I guessed wrong [19:06] ChrisBuchholz: TheJH: if i do e.g. `npm install express` without the -g flag, it installs to ./node_modules, and then npm can find it [19:06] dyer has joined the channel [19:08] jerrysv: will follow along when i get a chance to take a lunch [19:08] ChrisBuchholz: TheJH: npm installs express to /usr/local/lib/node_modules. I do have "/usr/local/lib/node" in my NODE_PATH. Should that be changed to "/usr/local/lib/node_modules" instead? Perhabs some 1.0 change? [19:08] `3rdEden: Any IE6 users here? [19:09] context: chrisbuchholz: yes its 1.0/ [19:09] `3rdEden: My vm just broke down and I need a small test subject [19:09] context: http://blog.nodejs.org/2011/05/01/npm-1-0-released/ [19:09] context: http://pastie.org/1932925 [19:09] Tobsn: 3rdedem, i have 2 different IE6 installed [19:09] Tobsn: parallels [19:09] Tobsn: if you need anything let me know [19:09] dlkinney has joined the channel [19:10] Tobsn: also tell me how i can check with jquery.ready() if io socket is connected :P [19:10] ChrisBuchholz: context: right, thank you [19:11] kschzt has joined the channel [19:11] ExsysTech has joined the channel [19:11] context: grr [19:11] context: konobi: ;) => /topic node.js | yes npm is different: http://bit.ly/msKk6D http://pastie.org/1932925 [19:11] harth has joined the channel [19:12] jbpros has joined the channel [19:12] Charuru: hi guys [19:12] Tobsn: `3rdEden: ? [19:12] Charuru: which npm package is that thingie where css is fed directly to you through socket.io? [19:12] Charuru: without refreshing the browser [19:12] `3rdEden: Tobsn: nvm ;$ [19:13] Tobsn: ;) [19:13] Venom_X has joined the channel [19:13] `3rdEden: My machine started working again [19:13] Tobsn: k [19:13] `3rdEden: For some odd reason, the internet died [19:13] Tobsn: i use parallels btw. [19:13] `3rdEden: Same [19:13] Tobsn: k [19:13] `3rdEden: No clue why it died ;9 [19:13] jarek has joined the channel [19:13] jarek has joined the channel [19:13] Tobsn: have here XP, Vista, 7 each in 32 and 64bit and home and prof edition [19:13] duncanbeevers: Charuru: http://aboutcode.net/vogue/ [19:13] Tobsn: on an external mirrored SSD raid :D [19:14] Charuru: thanks duncanbeevers [19:14] Tobsn: if i select all parallels icons and hit enter it takes around 8 seconds to boot all 8 at once [19:14] Tobsn: hehe [19:14] Tobsn: my mac mini is faster than one windows machine :P [19:14] duncanbeevers: That's like being faster than Zombies. You're still hopelessly outnumbered. [19:15] mahna has joined the channel [19:16] sveimac has joined the channel [19:16] `3rdEden: Grrr, code Y U NO WORK [19:17] dcelix has joined the channel [19:17] pandeiro: is there any form validation stuff baked in to express? [19:18] TheJH has left the channel [19:19] ChrisBuchholz: context: okay, just to be clear: I should add /usr/local/lib/node_modules to NODE_PATH, right? It worked before, (i think), but now it doesnt anymore [19:19] _rain has joined the channel [19:21] burningdog has joined the channel [19:21] WallyDater has joined the channel [19:21] samsonjs has joined the channel [19:24] bloodsucker has joined the channel [19:24] __tosh has joined the channel [19:24] JoseCabo: Hola?� [19:24] JoseCabo: holaaaaaar? [19:25] EyePulp: holla? [19:25] JoseCabo: que ha pasado? [19:25] JoseCabo: se me ha caido mi internet? [19:25] JoseCabo: o que demonios? [19:25] JoseCabo: Donde est�n los que estaban hablando? XD [19:25] JoseCabo: os va la webcam? :S [19:25] rfay has joined the channel [19:25] EyePulp: your internet is filled with demons, who watch you through your webcam. [19:25] jamesarosen has joined the channel [19:26] JoseCabo: aj� [19:26] JoseCabo: ya me va [19:26] JoseCabo: ...viva el cabanyal [19:26] dcelix has joined the channel [19:26] JoseCabo: Ya se ha terminado? [19:27] JoseCabo: Necesitamos m�s pruebas de la asamblea? [19:27] JoseCabo: xD [19:27] JoseCabo: de su decadencia? [19:27] hosh_work has joined the channel [19:28] zmbmartin: tjholowaychuk: how does the session cookie work in the auth example on the express github. It seems that after login if I close the browser then reopen the session is gone even when I did not clear the cookies? [19:28] tilgovi has joined the channel [19:28] tilgovi has joined the channel [19:28] tjholowaychuk: zmbmartin i can't recall right now, could be a session cookie [19:28] catshirt has joined the channel [19:29] tjholowaychuk: i'll check it out in a minute [19:31] hosh_work has joined the channel [19:31] harth has joined the channel [19:32] materialdesigner has joined the channel [19:32] JoseCabo: Lo sab�a. [19:32] patrickjst has joined the channel [19:32] JoseCabo: xD [19:32] divbyzero has joined the channel [19:33] MrTopf has joined the channel [19:33] davidcoa1lier has joined the channel [19:33] mike5w3c_ has joined the channel [19:34] truedat101 has joined the channel [19:34] zeade has joined the channel [19:34] slaskis: zmbmartin: are you using cluster maybe to start it? if it's multiple workers it might be the memory store? had a similar issue.. [19:35] Max-Might has joined the channel [19:35] yozgrahame has joined the channel [19:36] zmbmartin: slaskis: No I am not using cluster. [19:37] mike5w3c has joined the channel [19:37] zmbmartin: can I save the session as the cookie? [19:38] zmbmartin: I come from rails and use devise that does that for me so I am new to doing this myself. [19:38] tjholowaychuk: this is the auth example? [19:38] mikeal has joined the channel [19:38] zmbmartin: tjholowaychuk: yes [19:38] tjholowaychuk: haha :p [19:38] tjholowaychuk: see thats why people shouldnt let frameworks do evvverything for them haha [19:38] tjholowaychuk: one sec [19:39] tjholowaychuk: hmm they work for me after i close the browser [19:39] davidcoallier has joined the channel [19:40] tjholowaychuk: (Safari) [19:40] zmbmartin: tjholowaychuk: hmmm I am on chrome and looking through the cookies I don't see anything. [19:41] zmbmartin: tjholowaychuk: I totally agree on the framework thing. I am learning a lot trying to do little things myself. [19:41] Grimmenstein has joined the channel [19:41] eb4890 has joined the channel [19:42] newy has joined the channel [19:42] zemm has joined the channel [19:42] brimster_ has joined the channel [19:43] adrianmg has joined the channel [19:43] adrianmg has left the channel [19:44] febits has joined the channel [19:44] zmbmartin: tjholowaychuk: in production it works. Is there a instant expire in development more or something? [19:44] sorens3n has joined the channel [19:44] tjholowaychuk: nope [19:45] Shrink has joined the channel [19:45] nibblebot: in mongoose, how can I add static model methods? e.g. User.login() for a User model [19:45] zmbmartin: hmm oh well it works were I need it. thanks [19:45] febits has joined the channel [19:46] ezl has joined the channel [19:46] dcelix has joined the channel [19:46] pandeiro: zmbmartin: i also could not get session storage to work with express/connect/chrome/localhost... [19:47] tjholowaychuk: chrome must be doing something because it works fine in other browsers for me [19:47] febits has joined the channel [19:47] olauzon has joined the channel [19:47] pandeiro: i will test it in firefox tonight... may be a chrome issue indeed [19:48] slaskis: strange, i usually have the opposite problem, of cookies not going away in chrome [19:48] stonebranch has joined the channel [19:49] dyer has joined the channel [19:49] dyer has joined the channel [19:49] pandeiro: slaskis: i had that, too... but what i am talking about is that req.session is undefined for me, despite setting up the connect session middleware as tj describes in the express guide [19:50] tjholowaychuk: pandeiro can i see the config? [19:50] febits has joined the channel [19:50] brettgoulder has joined the channel [19:51] pandeiro: sure just a sec [19:51] drudge: i'll show you a config if you know what i mean [19:51] MikeMakesIt has joined the channel [19:51] tjholowaychuk: haha [19:51] tikva_ has joined the channel [19:51] drudge: i bet his middleware is in the wrong order! [19:51] slaskis: i'll show you mine if you show me yours [19:52] zmbmartin: tjholowaychuk: I must have had something set wrong from my trial and errors, I cleaned up my working code and cookie is set fine in chrome and firefox. [19:52] tjholowaychuk: oh weird [19:52] zmbmartin: tjholowaychuk: so user error [19:52] zmbmartin: tends to be the problem [19:53] tikva_ has joined the channel [19:53] tjholowaychuk: s'all good man [19:53] lakin has joined the channel [19:53] davidcoallier has joined the channel [19:53] zmbmartin: tjholowaychuk: thanks for all the work on express and the help. I am still a js noob but I am enjoying the learning. [19:54] tjholowaychuk: no problem [19:55] dyer_ has joined the channel [19:55] pandeiro: tjholowaychuk: my session config w/ express: http://goo.gl/13eAx [19:55] tjholowaychuk: ordering is wrong [19:55] tjholowaychuk: app.router is your routes [19:55] tjholowaychuk: all of them [19:56] tjholowaychuk: so cookieParser / session need to be above that [19:56] tjholowaychuk: can be above or below the other two top ones that doesnt matter [19:56] tjholowaychuk: but by the time you get to the routes [19:56] tjholowaychuk: they dont have req.session yet [19:56] tjholowaychuk: because of the ordering [19:56] pandeiro: ahh i see [19:56] pandeiro: makes sense, thks [19:56] `3rdEden: Tobsn https://github.com/3rd-Eden/YUNO-UPDATE thats why I needed IE6 ;D [19:57] a2800276 has joined the channel [19:58] pandeiro: tjholowaychuk: can u explain what would be the advantage of using your redis session module over the stock connect one? is there any for a low traffic site? thks [19:58] tjholowaychuk: scaling [19:58] tjholowaychuk: the default memory store will only work in one process [19:58] tjholowaychuk: and if that process is killed [19:58] tjholowaychuk: all your sessions are gone [20:00] pandeiro: the default memory store is using the same process as node or a second? [20:00] tjholowaychuk: same [20:00] pandeiro: gotcha [20:00] tjholowaychuk: it's basically {} [20:01] RevoOf has left the channel [20:01] pandeiro: there's really no downside to using redis on a small scale site either... or?? [20:01] tjholowaychuk: nah [20:05] c4milo: hey does anybody know if there is a module that fully implements oauth2 [20:05] c4milo: ? [20:05] captain_morgan has joined the channel [20:06] Muon has joined the channel [20:06] SubStack: V8 STACKTRACE API Y U NO Error.captureStackTrace() LIKE HOW YOU SAY IN DOCS [20:06] jakehow has joined the channel [20:06] dgathright has joined the channel [20:06] Muon has left the channel [20:07] dlkinney has joined the channel [20:08] mikeal has joined the channel [20:09] febits has joined the channel [20:10] patrickjst has joined the channel [20:11] jbpros has joined the channel [20:11] tikva_ has joined the channel [20:14] samsonjs has joined the channel [20:14] asabil has joined the channel [20:15] tikva_ has joined the channel [20:15] tim_smart has joined the channel [20:16] adambeynon has joined the channel [20:17] davidcoa1lier has joined the channel [20:17] catshirt has joined the channel [20:17] AvianFlu: hey WallyDater, GTFO! [20:17] captain_morgan has joined the channel [20:18] AvianFlu: stupid regex, hey WallyDater GTFO! [20:18] andi5 has joined the channel [20:18] andi5: Does anybody experience problems with nodemon, too? [20:19] andi5: nodemon does not use node's file watcher bit the file command, probably this is the issue. [20:19] mraleph has joined the channel [20:20] andi5: If someone knows an alternative to nodemon that works well, please let me know. Thanks [20:22] EyePulp: andi5: cluster might be your solution [20:25] alecbenzer has joined the channel [20:26] admc has joined the channel [20:27] dcelix has joined the channel [20:27] andi5: EyePulp: Thanks, didn't see the reload plugin earlier [20:27] EyePulp: np [20:27] EyePulp: thank tjholowaychuk for building it [20:29] Cheery has joined the channel [20:29] WallyDater has joined the channel [20:29] andi5: I think this is useful for everyone: http://www.screenr.com/X8v [20:30] jerrysv: c4milo: https://github.com/jchris/node-oauth [20:30] c4milo: jerrysv: for server support? [20:30] Cheery: is there working webshop implementations over node.js? [20:31] mscdex: what is webshop? [20:31] Cheery: inventory + interface through which people can buy things from you [20:31] kjeldahl has joined the channel [20:31] c4milo: jerrysv: that project seems to be just to act as consumer [20:32] mscdex: Cheery: i don't think there is [20:32] jerrysv: c4milo: sorry, didn't see the server support requirement [20:32] mscdex: Cheery: is that a name of a protocol or do you mean ecommerce stuff in general? [20:33] Cheery: just ecommerce things. [20:33] dcelix has joined the channel [20:33] mscdex: ahh [20:33] mscdex: :) [20:33] Cheery: I think I could do it myself too, but I want to know how much work is done for me already there. [20:34] Cheery: there's choice of using python or this. [20:34] dyer has joined the channel [20:35] orospakr: cloudhead, hey, it looks like your cradle library somehow manages to create couchdb design docs from javascript code inline in your node code. how is that done? it looks like magic! [20:35] olauzon_ has joined the channel [20:35] Cheery: mscdex: some load testing tools would be nice too, but I guess there may not be nodejs related load testing tools. [20:35] mscdex: apache bench? ;) [20:36] patrickstokes has joined the channel [20:36] snearch has joined the channel [20:37] dimituri has joined the channel [20:40] Cheery: are habaneros able to burn for days? my hand is still having burn sensations. :/ [20:41] dhasenan_: Cheery: you might have to requisition a replacement. [20:41] pita has joined the channel [20:41] perezd has joined the channel [20:42] `3rdEden: apache bench isn't the solution for all load testing [20:42] `3rdEden: Especially for HTTP 1.1, it kinda sucked. [20:43] jerrysv: siege [20:43] bene1 has joined the channel [20:44] devaholic has joined the channel [20:45] baudehlo: I'd like to see a load testing tool written in node. [20:45] jerrysv: if i had a dollar for every time i've heard lately "i'd like to see a blah written in node", i'd have enough money to buy some bitcoins [20:46] freakazoid has joined the channel [20:46] baudehlo: heh [20:46] baudehlo: well I have a reason... [20:46] Cheery: this thing is majorly advertised with server twist, but does it support filesystem access or C-bindings? [20:46] baudehlo: is that most load testing tools use threads themselves, so don't scale up to tens of thousands of connections well. [20:46] Cheery: (foreign function interfaces) [20:46] Cheery: opengl? [20:46] freakazoid: anyone know if anyone's worked on a browser extension to get the privileged/cpu-bound parts of node.js's functionality in the browser? [20:47] dcelix has joined the channel [20:47] jhurliman: hi freakazoid [20:47] freakazoid: hey there jhurliman [20:47] freakazoid: you must be following me [20:47] mjr_: baudehlo: a node-based load tester that exercised huge numbers of concurrent connections would be cool [20:47] jhurliman: freakazoid, other way around i'm afraid! :p [20:47] mjr_: using multiple processes with cluster or something [20:47] freakazoid: haha [20:47] devaholic: freakazoid: ive talked about it a lot but i dont know of any work done [20:47] freakazoid: well we clearly have similar interests [20:48] mjr_: Except you'll quickly run into the fact that node's http client/agent is still pretty slow in a lot of cases. [20:48] pandeiro: mjr_: compared to what, just out of curiosity? [20:48] freakazoid: I'm just trying to avoid having a user have to install anything else except the browser extension - mostly I'm interested in the browser as a container without requiring some internet-based resource to do the privileged stuff [20:48] jhurliman: freakazoid, i haven't heard of such an extension. what specific parts are you looking for? [20:48] devaholic: freakazoid: did you see JSlinux? [20:48] baudehlo: mjr_: yeah quite possibly. I was hoping to find one using libev or libevent, but couldn't find one. [20:49] baudehlo: actually I think I did find one. But couldn't get it to work. [20:49] freakazoid: devaholic: I've seen it but it's still stuck inside JS's security model [20:49] freakazoid: jhurliman: mostly I'm interested in the ability to use UDP to arbitrary locations so I can do in-browser p2p [20:49] mjr_: pandeiro: well, a single node process as a client can't seem to load up a single node process as a server. I find it takes 2-3 client processes for every server. [20:49] jhurliman: ahh got it [20:49] zmbmartin: I am trying to do express-messages in jade I did = messages() in the view but it is escaping the html. So it is showing
.... [20:50] gtramont1na has joined the channel [20:50] tjholowaychuk: != [20:50] zmbmartin: oh yeah [20:50] zmbmartin: thanks [20:50] freakazoid: crypto stuff would be nice too [20:50] mjr_: I think some stuff in node's client/agent just isn't quite right, and it does more work than it needs. [20:50] freakazoid: though I might be able to get away with pure JS for that [20:50] devaholic: freakazoid: yea i had come up with very similar ideas [20:50] devaholic: not sure on the implementation [20:51] freakazoid: I've heard of people using flash for something along these lines [20:51] freakazoid: but it seems to be restricted to their protocol and potentially just streaming media [20:51] mikeal has joined the channel [20:51] reid has joined the channel [20:52] zmbmartin: tjholowaychuk: if I fail login how do I access new Error in req.flash? [20:52] devaholic: with a p2p you still need a tracker though [20:52] freakazoid: devaholic: well, I was planning to use telehash to bootstrap [20:52] tjholowaychuk: zmbmartinyou use req.flash('error', msg) to queue the msg [20:52] ryanfitz has joined the channel [20:52] freakazoid: you'd still need a set of bootstrap IPs for first-time users [20:53] freakazoid: another option for bootsrapping would be XMPP, but I don't think XMPP has enough penetration to assume the user already has an account, and if you have to run your own XMPP server then you might as well just use a web server for bootstrap [20:53] freakazoid: I'm not quite as concerned about bootstrap though because that's the easy part [20:55] freakazoid: devaholic: hmm this looks interesting: http://chromestory.com/2011/03/p2p-pepper-api-and-p2p-javascript-api-shows-up-in-chromium/ [20:55] jmoyers has joined the channel [20:57] colinclark has joined the channel [20:58] Cheery: 7399https://github.com/tmpvar/node-ogl/blob/master/example/nehe/lesson3.js <- who did this crap? [20:58] Cheery: :( [20:58] Cheery: whoops. my proc number left in [20:59] Cheery: well I'll see what's in there anyway. [21:00] devaholic: freakazoid: any more info on that? [21:00] Cheery: hm. the code itself is.. okayish. [21:00] weezle has joined the channel [21:01] freakazoid: devaholic: wow you're so locked down on FB that I can't even add you [21:01] freakazoid: devaholic: I found some other references to it but mostly it's just stuff saying it's not working yet [21:01] devaholic: hmm? [21:01] freakazoid: nothing about what the API will actually do [21:01] Cheery: except that you could've extracted opengl4 bindings directly :/ [21:01] weezle has left the channel [21:01] Cheery: let me show you one thing. [21:01] devaholic: FB? [21:02] freakazoid: facebook [21:02] devaholic: how do you know my facebook? [21:02] freakazoid: there aren't that many tblobaums out there [21:02] weezle has joined the channel [21:02] devaholic: oh [21:02] devaholic: true [21:02] freakazoid: and only one of them is on github [21:03] devaholic: i didnt even realize i had that setting [21:03] Cheery: http://paste.pocoo.org/show/395153 <- I have extracted this automatically from opengl docs. [21:03] freakazoid: and your email is there, and it's easy to search by email on facebook [21:03] devaholic: FB is of shit [21:03] Cheery: python code I used that with was autogenerated from that script :P [21:03] mscdex: Cheery: of course you can do filesystem stuff and C-bindings [21:03] captain_morgan: Trying again... Anyone know how to statically link a module(.a) when building a Node module? nm -gmu shows my lib as 'external __ZTI5***** (dynamically looked up)' [21:04] freakazoid: tell me what to fix and I'll fix it or open a task to fix it ;-) [21:04] devaholic: should work now [21:04] dcelix has joined the channel [21:04] mscdex: there's also a node-ffi module [21:04] piscisaureus: isaacs: ping [21:04] mscdex: if you're wanting generic binding stuff [21:04] Cheery: mscdex: is it good? [21:04] Cheery: and along the node when I install it? [21:04] devaholic: freakazoid: your job? [21:04] mscdex: Cheery: don't know, i always write bindings [21:04] freakazoid: yep, as of 5 weeks ago [21:04] freakazoid: i'll be working on cache performance stuff, not frontend [21:04] dshaw_ has joined the channel [21:05] freakazoid: I hate php [21:05] mscdex: Cheery: https://github.com/rbranson/node-ffi [21:05] freakazoid: though facebook has made the newer stuff a lot more pythonic [21:05] Cheery: you all just github download git packs and install them manually? [21:05] devaholic: freakazoid: congrats [21:05] freakazoid: thanks [21:05] context: HI ffi :D [21:05] mscdex: Cheery: there's also npm [21:05] kristsk has joined the channel [21:05] devaholic: there is nothing in my github atm [21:05] freakazoid: I'm hoping to absorb their "move fast" mentality [21:06] context: i use npm for everything [21:06] mscdex: Cheery: a lot of stuff is available on npm [21:06] mscdex: Cheery: npmjs.org [21:06] freakazoid: just had my second change go into production [21:06] devaholic: how many loc [21:06] freakazoid: only like 50 [21:06] devaholic: sexy [21:06] freakazoid: still in bootcamp [21:07] freakazoid: my next one is more like 500 [21:07] devaholic: well you should be able to add me now, i think [21:07] freakazoid: I have [21:07] hipe: egads can you invoke the debugger with running tests with expresso? (v. 0.7.7) [21:09] devaholic: cool [21:09] Pathin has joined the channel [21:09] Skipants has joined the channel [21:11] dimituri has joined the channel [21:12] Country has joined the channel [21:12] freakazoid: devaholic: the p2p API in Chrome appears to be part of libjingle [21:12] weezle has left the channel [21:13] freakazoid: devaholic: http://code.google.com/p/libjingle/source/browse/branches/chrome-sandbox/?r=53#chrome-sandbox%2Ftalk%2Fp2p [21:13] weezle has joined the channel [21:13] weezle has left the channel [21:13] spasquali: anyone had problems installing node-msgpack ? [21:13] Pathin has joined the channel [21:13] zmbmartin: tjholowaychuk: call me dumb but I am not sure how to use the flash. I have an auth method that returns fn(new Error("error")) how do I get that in the req.flash? [21:13] tjholowaychuk: zmbmartin if you have error handlers you can just do req.flash('error', err.message) in there [21:14] weezle has joined the channel [21:14] weezle has left the channel [21:14] weezle has joined the channel [21:14] techwraith has joined the channel [21:15] zmbmartin: tjholowaychuk: great call me stupid. That was easy. [21:15] mertonium has joined the channel [21:15] techwraith: So a co-worker of mine was wondering if it's possible to get "~/path" working in fs functions, any ideas? [21:15] halfhalo: regex ~? [21:15] Pathin has joined the channel [21:16] Bradleymeck: techwraith, yes, but honestly its prolly easier to just call out to an `echo` [21:16] tjholowaychuk: techwraith the fs functions dont do shell expansion stuff so no fs.unlink('/foo/{bar,baz}') etc [21:16] TooTallNate: techwraith: why not just use process.env.HOME? [21:16] AvianFlu: yeah srsly [21:16] Bradleymeck: not always set I thought? [21:16] TooTallNate: true, it's not completely reliable [21:17] AvianFlu: word [21:17] AvianFlu: that's good to know lol [21:17] TooTallNate: there's a C function that can give you the home dir of the users on the system [21:17] TooTallNate: but it's not exposed as a node binding [21:17] davidascher has joined the channel [21:17] Pathin has joined the channel [21:18] Pathin has joined the channel [21:18] Cheery: damn that node-ffi is hard to install. >:( [21:18] Cheery: you suck equally much in package management as what python does.' [21:18] TooTallNate: techwraith: there is https://github.com/isaacs/node-glob if you must have glob functionality though [21:18] softdrink has joined the channel [21:18] Pathin has joined the channel [21:18] saschagehlich has joined the channel [21:18] ryanallenbobcat has joined the channel [21:19] ryanallenbobcat has left the channel [21:19] Bradleymeck: just call out to shell when you need it, cache result, win [21:20] tjholowaychuk: and escape the args [21:20] tjholowaychuk: haha [21:20] techwraith: He's going to just regex for "~/" and replace it with process.end.HOME [21:20] mscdex: Cheery: patches and pull requests are welcome [21:21] Bradleymeck: a good utility to escape cli args when shelling out would be nice [21:21] febits has joined the channel [21:21] bloodsucker has joined the channel [21:21] tjholowaychuk: Bradleymeck '"' + String(arg).replace(/"/g, '\\"') + '"'; [21:23] febits has joined the channel [21:24] Poetro1 has joined the channel [21:24] febits has joined the channel [21:25] weezle_ has joined the channel [21:25] bene has joined the channel [21:25] Bradleymeck: tj, too easy... lol, cant think of any exceptions though [21:25] techwraith: Has anyone thought of adding tab completion to the node REPL? [21:26] truedat101 has joined the channel [21:27] dingomanatee has joined the channel [21:27] jaket has joined the channel [21:28] pifantastic_ has joined the channel [21:28] Cheery: techwraith: it has tab completion? [21:29] techwraith: omg [21:29] techwraith: lol [21:29] mscdex: techwraith: yeah it has tab completion already [21:29] techwraith: ACTION is an idiot for not checking first [21:29] mscdex: ;) [21:29] AvianFlu: hey WallyDater GTFO! [21:29] fakewaffle: what is the best way to check if a module exists? [21:29] mscdex: node-irc heh [21:30] jbpros has joined the channel [21:30] AvianFlu: he's counting the number of chat messages per minute, mscdex - we're gonna use the data he gathers to set up kohai's dynamic twitter rate-limiting [21:30] eliziario has joined the channel [21:30] mscdex: ah [21:31] fakewaffle: AvianFlu++ [21:31] v8bot: fakewaffle has given a beer to AvianFlu. AvianFlu now has 0 beers. [21:31] AvianFlu: the idea being that if mad people are talking, kohai will stfu [21:32] techwraith: v8bot: How can you give a beer to someone without increasing the number of beers they have?! [21:32] v8bot: techwraith: Use v8: to evaluate code or "`v commands" for a list of v8bot commands. [21:32] AvianFlu: and if nobody has said anything in a minute or so, he'll move toward whatever the channel's max volume is [21:32] AvianFlu: techwraith: I had -1 before [21:32] mscdex: fakewaffle: there's require.resolve(), just wrap it in a try/catch [21:32] techwraith: How do you have negative beers? [21:32] fakewaffle: techwraith: from me [21:32] AvianFlu: somebody did a -- on me yesterday [21:32] AvianFlu: yeah, there you go [21:32] techwraith: Ah [21:33] mscdex: WallyDater-- [21:33] v8bot: mscdex has taken a beer from WallyDater. WallyDater now has -1 beers. [21:33] fakewaffle: lol [21:33] fakewaffle: AvianFlu++ [21:33] v8bot: fakewaffle has given a beer to AvianFlu. AvianFlu now has 1 beers. [21:33] kawaz_air has joined the channel [21:33] mscdex: kohai++ [21:33] v8bot: mscdex has given a beer to kohai. kohai now has 3 beers. [21:33] mscdex: `beers [21:33] techwraith: I still think v8bot needs to let us drink the beers [21:33] mscdex: `beer [21:33] mscdex: hrmm [21:33] mscdex: `v beers [21:33] v8bot: mscdex: has 0 beers. [21:33] jerrysv: `v beers [21:33] v8bot: jerrysv: has 0 beers. [21:33] mscdex: hah! impossible [21:33] jerrysv: bummer [21:34] mscdex: i had > 0 last i checked :O [21:34] techwraith: `v beers [21:34] v8bot: techwraith: has 0 beers. [21:34] techwraith: mscdex: I think they expire [21:34] jerrysv: mscdex: someone raided your stash? [21:34] titanous has joined the channel [21:34] mscdex: they shouldn't expire, they should just become vintage [21:34] febits has joined the channel [21:35] jerrysv: mscdex: sometimes even a good beer goes bad ... [21:35] mscdex: :( [21:36] WallyDater has joined the channel [21:36] AvianFlu: `v beers [21:36] v8bot: AvianFlu: has 0 beers. [21:36] mscdex: WallyDater++ [21:36] v8bot: mscdex has given a beer to WallyDater. WallyDater now has 0 beers. [21:36] pita: v8bot: i++; [21:36] v8bot: pita: Use v8: to evaluate code or "`v commands" for a list of v8bot commands. [21:36] AvianFlu: how did HE have -1!? [21:36] mscdex: :) [21:37] AvianFlu: lulz [21:37] jerrysv: v8bot++ [21:37] v8bot: jerrysv has given a beer to v8bot. v8bot now has 26 beers. [21:37] AvianFlu: WallyDater++ [21:37] v8bot: AvianFlu has given a beer to WallyDater. WallyDater now has 1 beers. [21:37] mscdex: hah! apparently v8bot's beers never expire [21:38] pita: pita++ [21:38] v8bot: pita: Don't cheat! You can't give a beer to yourself. [21:38] mscdex: unfair! [21:38] pita: damm [21:38] mscdex: pita++ [21:38] v8bot: mscdex has given a beer to pita. pita now has 2 beers. [21:38] AvianFlu: you never know, he may just get a lot of beers [21:38] clee: ++v8bot [21:38] pita: mscdex++ [21:38] v8bot: pita has given a beer to mscdex. mscdex now has 16 beers. [21:38] clee: awww. [21:38] mscdex: see! [21:38] clee: no preincrement? [21:38] mscdex: what the hell [21:38] pita: can you remove beers too? [21:38] mscdex: `v beers [21:38] v8bot: mscdex: has 0 beers. [21:38] mscdex: FAIL [21:38] jerrysv: mscdex-- [21:38] v8bot: mscdex is getting too many beers. Don't let mscdex get drunk! [21:38] mscdex: oh wait [21:39] mscdex: `v beers mscdex [21:39] v8bot: mscdex: mscdex has 16 beers. [21:39] titanous has left the channel [21:39] jerrysv: aha [21:39] mscdex: ACTION shakes a fist at v8bot [21:39] pita: v8bot-- [21:39] v8bot: pita has taken a beer from v8bot. v8bot now has 25 beers. [21:39] pita: lol [21:39] jerrysv: `b beers jerrysv [21:39] jerrysv: er [21:39] sirkitree has joined the channel [21:39] jerrysv: `v beers jerrysv [21:39] v8bot: jerrysv: jerrysv has 0 beers. [21:39] jerrysv: awww [21:39] johnmclear has joined the channel [21:39] mscdex: `v beers lolcat [21:39] v8bot: mscdex: lolcat has 0 beers. [21:39] AvianFlu: jerrysv++ [21:39] v8bot: AvianFlu has given a beer to jerrysv. jerrysv now has 1 beers. [21:39] pita: johnmclear++ [21:39] v8bot: pita has given a beer to johnmclear. johnmclear now has 1 beers. [21:39] sechrist has joined the channel [21:39] johnmclear has left the channel [21:40] jerrysv: heh [21:40] mscdex: guess he doesn't drink [21:40] pita: lolcat-- [21:40] v8bot: pita has taken a beer from lolcat. lolcat now has -1 beers. [21:40] mscdex: ;) [21:40] pita: lolcat-5 [21:40] pita: lolcat--;lolcat++ [21:40] pita: gah [21:40] mscdex: hax! [21:40] Tobsn: http://lolc.at [21:41] softdrink: heh. my wife translated part of the lolcat bible. [21:41] Tobsn: hehe [21:41] Tobsn: i fixed some of it when i put it up there [21:41] tikva has joined the channel [21:41] Tobsn: is like 3 years old or so [21:41] brimbrom has joined the channel [21:41] Tobsn: lolcat bible wasnt much bigger than that at the time [21:42] CoverSlide has joined the channel [21:42] philtor has joined the channel [21:44] Tobsn: http://lolco.de/ [21:45] CoverSlide: what an utter waste of the internet [21:46] AvianFlu: ahahahahahahahahaha [21:46] AvianFlu: regardless of what you were talking about, quote of the hour [21:47] CoverSlide: only the hour? [21:47] nivoc has joined the channel [21:48] harth has joined the channel [21:48] jamesarosen has joined the channel [21:48] sirkitre_ has joined the channel [21:48] chbrown has joined the channel [21:48] skm has joined the channel [21:49] Cheery: can you propose a database module on node.js? [21:49] CoverSlide: database module? [21:49] context: cheery: well that depends entirely on what database yo uare using [21:49] CoverSlide: to go into core? [21:49] Cheery: I've been using postgresql [21:50] context: then get a library to talks to postgresql ? [21:50] CoverSlide: npm -g install pg [21:50] CoverSlide: bleh i use -g too much [21:50] Cheery: but I might equally like no database at all, as long as I can make a working capable-enough server on it. [21:50] context: then dont use a database? and you dont need a library ? [21:50] MrTopf has joined the channel [21:51] Cheery: well I still need persistent datastore. [21:51] CoverSlide: try chaos. it's funky but you don't need to rely on an external database [21:51] CoverSlide: or tiny or dirty ... one of those might not be persistent [21:51] pixel13 has joined the channel [21:52] jerrysv: redis? couchdb? [21:52] jasonmcleod has joined the channel [21:52] djcoin has joined the channel [21:52] sriramk has joined the channel [21:53] CoverSlide: mongodb, tokyocabinet, riak, cassandra, berkleydb [21:53] CoverSlide: sqlite [21:53] jerrysv: write out to text files? [21:53] jzacsh_ has joined the channel [21:53] Cheery: just don't propose anything but something that you've used, tested that it works well and have written a web server using it. [21:53] AvianFlu: jerrysv++ [21:53] v8bot: AvianFlu has given a beer to jerrysv. jerrysv now has 2 beers. [21:54] Tobsn has joined the channel [21:54] CoverSlide: instead of redis, use nedis [21:55] pixel13: hello all, trying to find this in the wiki, but perhaps my thinking is flawed — can node.js listen on a port other than "localhost" ? [21:55] CoverSlide: yes [21:55] CoverSlide: just don't put the "localhost" part [21:55] pixel13: I have npm 1.0 / node v0.4.8 + npm-static [21:55] fakewaffle: AvianFlu++ [21:55] v8bot: fakewaffle has given a beer to AvianFlu. AvianFlu now has 2 beers. [21:55] hij1nx has joined the channel [21:55] jlecker_ has joined the channel [21:55] CoverSlide: just the port number and it will listen on all domains [21:55] EyePulp: pixel13: it can listen on whatever ip & port you want [21:56] jerrysv: cheery: redis [21:56] jerrysv: cheery: couchdb [21:56] CoverSlide: cheery: NEDIS!! [21:56] pixel13: EyePulp: what about node-static? …I am not seeing where it's bound to localhost, just the http server listen() …it's like it's defaulting to 'localhost' [21:57] EyePulp: pixel13: I'm not famaliar with node-static - but if it's bound to your server instance, and your server is bound to something other than localhost, then node-static probably is unaware of or doesn't need to handle host/port issues [21:58] pixel13: CoverSlide: thank you…I am currently setting just the port, but still unable to process externally. Via localhost (curl) it works a treat …have disabled firewall, etc, but with no luck [21:58] materialdesigner has joined the channel [21:59] ezl has joined the channel [21:59] pixel13: let's take a step back… using a simple web server e.g. require('http') with subsequent listen(8000), you're saying this should work externally by nature? [21:59] CoverSlide: id you just use http.createServer( ... ).listen( ... ) does it run? [21:59] brettgoulder has joined the channel [21:59] CoverSlide: yes [21:59] pixel13: it runs great, yes…I can hit localhost:8000 just fine [21:59] CoverSlide: unless there's a firewall issue [21:59] uchuff has joined the channel [22:00] pixel13: CoverSlide: firewall disabled... [22:00] xSmurf has joined the channel [22:00] pixel13: I am running as root in ~ …perhaps that is why? [22:00] fostah has joined the channel [22:00] beriberikix__ has joined the channel [22:01] CoverSlide: wait ... are you getting no response from your server or getting a 404 or some other error [22:01] CoverSlide: curl should say if there's no response at all [22:02] pixel13: ok, for example: [22:02] pixel13: curl -i http://localhost:8000/ [22:02] pixel13: HTTP/1.1 200 OK [22:02] pixel13: content-type: text/plain [22:02] pixel13: Connection: keep-alive [22:02] pixel13: Transfer-Encoding: chunked [22:02] pixel13: hello [22:02] pixel13: omg [22:02] fostah|2 has joined the channel [22:02] pixel13: ACTION feels so stupid... [22:02] pixel13: forgot I am running on my dev box [22:03] pixel13: ACTION was using production domain name to test [22:03] pixel13: it's working great now! (sorry guys) [22:03] CoverSlide: yay! [22:03] pixel13: …using the *right* IP address definitely helps [22:03] jzacsh_: i can't seem to get jade templating to see what my title tag is. i've tried doing `title= 'stuff'` at the top of my file.jade -- i'm using express framework. anyone have a suggestion? [22:04] Cheery: didn't google had some distributed nosql database sort of thing? [22:04] pixel13: awesome, node-static works great, too (externally) [22:04] EyePulp: cheery: BigTable [22:05] hybsch has left the channel [22:05] Cheery: is there any sense to use that in small projects? [22:05] CoverSlide: to learn bigtable [22:05] EyePulp: probably not [22:05] EyePulp: I don't know if it's even open source. [22:05] unomi has joined the channel [22:05] CoverSlide: hbase [22:06] CoverSlide: is similar [22:06] ai0n has joined the channel [22:06] EyePulp: do you have a need or just a curiousity? [22:06] ai0n: anyone still getting Build failed: -> task failed (err #1): {task: cxx node_crypto.cc -> node_crypto_5.o} when installing the latest code from master? [22:06] Cheery: EyePulp: both + bunch of my own quirks [22:07] jonaslund: ai0n: don't check out master for the time being unless coding on node yourself [22:07] jonaslund: ai0n: use the 4.x branches [22:07] ai0n: jonaslund: roger [22:07] davidcoallier has joined the channel [22:08] davidcoallier has joined the channel [22:08] ai0n: what is the best way to grab 4.x using git [22:08] ai0n: i am currently saying [22:08] CoverSlide: anyone know the roadmap to whem 0.5.0 is to be released? [22:08] pixel13 has left the channel [22:08] Cheery: EyePulp: thing is, I believe SQL is a thing of past, a fad and crap. [22:08] ai0n: git clone --depth 1 git@github.com:joyent/node.git [22:08] CoverSlide: SQL people would sa NoSQL is a fas [22:09] CoverSlide: *say *fad [22:09] jerrysv: coverslide: i'm a sql person, and nosql has been around longer [22:09] CoverSlide: regardless [22:09] EyePulp: Cheery: you show your wisdom by your casual dismissal. [22:09] fostah: Can anyone recommend a good mongo db driver for node? I saw a bunch of packages on npm but wanted to know if there was one that you guys liked the best. [22:09] level09_ has joined the channel [22:09] burningdog has joined the channel [22:09] CoverSlide: mongoose [22:09] Cheery: but I haven't seen much of other things in database tech, except that I know google handles really large datasets among huge amount of users. [22:10] level09_: I got a question regarding npm [22:10] EyePulp: fostah: mongoose is decent if you want some structure on occasion [22:10] level09_: on my mac it seems to work fine [22:10] jonaslund: There is nothing wrong with SQL if you actually USE sql [22:10] fostah: CoverSlide: Thanks, and thats a non-blocking driver correct? [22:10] level09_: but on my VPS (centos) machine, I have to install the module on every directory I work on [22:10] context: level09_: thats how npm 1.0 works. [22:10] level09_: I mean it seems like it creates a node_modules dir within the same dir [22:10] jonaslund: If you're using an ORM to hide the SQL db you're out on thin ice [22:10] EyePulp: Cheery: It doesn't sound like you know much about either approach. Perhaps some study is in order beyond asking questions on IRC? [22:10] level09_: but on my mac it works globally [22:11] EyePulp: =) [22:11] context: level09_: then you arent running 1.0 [22:11] level09_: context: so I just need to update it ? [22:11] level09_: context: which version is the newest ? [22:11] context: level09_: im guessing so [22:11] context: 1.0.6 i think [22:11] gmonnerat has joined the channel [22:11] Cheery: EyePulp: I know quite a bit from handling SQL, except that it was cumbersome compared to how I usually handle desktop data. [22:11] gmonnerat has left the channel [22:11] level09_: context: so the new one uses a global node_modules dir ? and the old one creates it everytime you run npm install ? [22:11] Cheery: sqlite promises some salvation, but it fails with multiple processes badly. [22:12] context: level09_: no. the NEW one creates local node_module dir [22:12] EyePulp: sqllite? that's your example of an sql db? [22:12] level09_: aah so the new appraoch is to install modules for each project [22:12] slicky: HTMLUnit and _escaped_fragment_, can JSDOM be used to return the HTML of an ajax'd page for SEO easily? Has anyone tried this for SEO? [22:12] context: cheery: sqlite isnt designed to handle multiple processes hitting it constantly [22:12] davidbanham has joined the channel [22:12] hoodoos has joined the channel [22:12] CoverSlide: with npm >= 1.0 you need the -g flag to work globally [22:12] context: level09_: yes. [22:12] kkaefer: context, Cheery: it's a bit better with the write ahead log in 3.7 [22:13] level09_: context: thanks for the hint, I'll upgrade npm now .. [22:13] context: 14:09 context| http://blog.nodejs.org/2011/05/01/npm-1-0-released/ [22:13] context: 14:09 context| http://pastie.org/1932925 [22:13] context: read those [22:13] CoverSlide: although i tend to overuse it [22:13] Cheery: context: I've thought getting multiple process access is one of the points in using database systems in first place. [22:13] context: yes. most. [22:13] cryptix has left the channel [22:13] context: most are designed to handle many many many GB's of not TB's of data. [22:14] context: sqlite is NOT. [22:14] EyePulp: cheery - use a real db for real traffic. [22:14] jerrysv: cheery: informix used to be like sqlite [22:14] hij1nx has joined the channel [22:14] fostah: Its easy to update packages with npm, but can anyone tell me if you can update npm itself via command line? [22:14] EyePulp: e.g. postgres [22:14] context: cheery: use sqlite for embedded applications and development if you want. [22:14] jonaslund: Cheery: If you hail NoSQL and think Sqlite has anything to do with salvation you need to get some things straight [22:14] CoverSlide: sqlite is good and quick way to get up and running for small applications [22:15] Cheery: EyePulp: like postgresql, but it's complex to configure and I've never liked the idea of generating SQL statements to make database access. [22:15] CoverSlide: npm -g update tends to update my npm for me [22:15] context: generated sql statements to make db access? [22:15] Cheery: yeah, the INSERT, UDPATE, etc. -statements. [22:15] hoodoos: guuuys, my damn node process is growing in memory. growing and growing. code is really big, is there any best practice to deal with this exept for digging all code? Maybe some way to look into memory process using? [22:15] jonaslund: sqlite is excellent for development since it really only depends on the filesystem and eases copying,etc [22:15] context: cheery: you need to do that with sqlite too ? [22:16] davidcoa1lier has joined the channel [22:16] fostah: CoverSlide: cool ty [22:16] Cheery: context: not sure, but with SQL-databases I've usually done that. [22:16] jaket has joined the channel [22:16] kkaefer: I'm just shamelessly going ahead and plug http://github.com/developmentseed/node-sqlite3 [22:16] thalll has joined the channel [22:16] jonaslund: ACTION is trying to get bigger hands to do a proper facepalm [22:17] context: cheery: sqlite IS sql. you need to use insert/update statements just the same. [22:17] context: cheery: if you use something like an ORM, it generates these statements for you, and lets you play with pretty little objects [22:17] justinw312 has joined the channel [22:17] CoverSlide: sqlite3 is the best sqlite module imo, but i wish someone would write a js version [22:18] context: huh [22:18] kkaefer: CoverSlide: that's not possible; sqlite is an embedded db [22:18] slicky: sqlite is -ite'r than SQL by at least three letters [22:18] CoverSlide: bits are bits [22:18] CoverSlide: not impossible, just improbable [22:18] Cheery: context: last time I used ORM in sqlalchemy, it was more horrible than using the lower level layers of sqlalchemy. [22:18] kkaefer: CoverSlide: it just doesn't make sense; there is much testing going into sqlite and the c library that anything else would be foolish [22:19] sveimac_ has joined the channel [22:19] context: never touched it. im leaning toward though [22:19] kkaefer: CoverSlide: http://www.sqlite.org/testing.html [22:19] justinw312: Anyone socket.io experts online? When my client reconnects, it fires both connecting and reconnecting events. When it reconnects, it fires both connect and reconnect. [22:19] justinw312: This doesn't seem like the intended behavior [22:19] kkaefer: CoverSlide: I saw someone writing a "native js" implementatin by creating a child process of the sqlite3 client binary and reading its stdout/stdin [22:19] secoif has joined the channel [22:20] justinw312: So I end up having to test if(socket.reconnecting) in my functions. [22:21] Cheery: I just wonder which database systems there are though. You can argue with each other about how sqlX is better than sqlY. [22:21] Cheery: need to look into it myself. bah. [22:21] CoverSlide: by the way, when the windows port is complete, does anyone have any idea how native modules will be compiled? [22:22] Cheery: never had anything really huge so maybe looking for those is waste of time. [22:22] CoverSlide: would they need mingw in their toolchain? [22:22] EyePulp: Cheery: for real world use of reasonable complexity and speed, there are viable options in both the SQL and noSQL world. Anyone who claims otherwise is probably not a very good advisor. [22:22] Cheery: most ppl can go with sql even if it was layered into twenty 'helper' layers. [22:22] ezl has joined the channel [22:22] context: justinw312: this.on('connect', maybeReconnect); [22:22] context: justinw312: the way its coded its intended. [22:23] fakewaffle: is there a good tutorial on setting up the chrome debugger with node? [22:23] context: err kind of [22:24] context: it looks like reconnect might lamost fire before actually connecting [22:24] Cheery: EyePulp: for me the speed is just one useful property, but real thing I want is multi-process access, okayish API and atomicity of some chain of operations so they don't mess the whole system when they fail. [22:24] justinw312: context: So if I have to test socket.reconnecting inside of my connecting function, and branch accordingly, why even have a reconnecting event? [22:24] CoverSlide: on the one hand, I agree that generating human code (SQL) as an intermediary to connect to another computer-run application (SQL Database) doesn't make the most sense, but I think that the NoSQL way isn't exactly the best route either [22:24] context: cheery: then use a real server and stop complaining. [22:24] justinw312: context: Thank you for the info though [22:24] EyePulp: heh [22:25] Cheery: where do I get such real server? [22:25] context: justinw312: i have never used socket.io not sure right off hand [22:25] context: [22:25] Cheery: I've this far used just vhosts. :P [22:25] Cheery: and virtual servers [22:25] jonaslund: CoverSlide: compiling on windows isn't set in stone yet [22:26] Cheery: they're cool because it's relatively cheap and maintenance easy to go on with them. [22:26] context: i imagine most of htem came with mysql or postgresqm. pick one. there are a few dozen sql and nosql options for you [22:26] context: depending on what you are doing [22:26] jonaslund: CoverSlide: I know there's been work towards porting to MSVC aswell as running on Mingw (mingw works with later 4.x atleast) [22:26] justinw312: I can't seem to get reconnecting to work either, but I think thats probably my fault. The client tries to reconnect, but the server gives it a new session (instead of resuming the disconnected session) [22:26] EyePulp: Cheery: context has a point - sitting in the node channel singing praises to nosql doesn't say much about your expectaiotns of stability and performance. [22:26] justinw312: I probably have a setting wrong [22:27] EyePulp: *expectations [22:28] Cheery: EyePulp: reading about these things all the time. I haven't yet found out which one I would pick. but then it seems even you know that I don't find what I need here. [22:28] justinw312: I'm having a lot of fun with socket/nods/redis for a chat/rpg hybrid project I'm working on [22:29] Cheery: going to still look around for solutions for node.js since it seems to gain more momentum than python, and is noticeably nicer than php. [22:29] EyePulp: Cheery: honestly I've seen no evidence that you understand what you're asking for. I think you need to build some things, handle some traffic, and see some actual production loads before these broad assertions you're making are anything more than simply talking to be heard. [22:29] CoverSlide: just look for databases and what features you need [22:30] gozala has joined the channel [22:30] CoverSlide: there's a node implementation for all the popular ones [22:30] spasquali: what do y'all use to stress test node apps? [22:30] CoverSlide: apache benchmark? [22:31] EyePulp: spasquali: depends on what you want to test. apache bench is good, zombie has potential... [22:31] mikey_p: siege? [22:31] tmpvar: zombie parses a dom.. so i doubt it would be good for benchmarking [22:31] CoverSlide: zombie ♥ [22:31] spasquali: tx [22:31] darshanshankar has joined the channel [22:32] EyePulp: tmpvar: good point - good for testing, but not load testing. [22:32] CoverSlide: and for sitejacking [22:33] Venom_X_ has joined the channel [22:35] mattly has joined the channel [22:35] pifantastic has joined the channel [22:36] Swizec has joined the channel [22:38] ion_ has joined the channel [22:38] justinw312: If my understanding is correct, nothing special needs to be done on the server side to support reconnects in socket.io. The server just buffers the output and sends it upon reconnect. Can anyone confirm if this is correct of if I'm wrong? [22:39] zzak has joined the channel [22:39] zzak has joined the channel [22:39] justinTNT has joined the channel [22:39] dgathright has joined the channel [22:39] mikeal has joined the channel [22:39] justinTNT: 'mornin. [22:40] justinw312: Good morning [22:40] reid has joined the channel [22:40] dcelix has joined the channel [22:41] zzak: こんばんは [22:41] sechrist has joined the channel [22:42] benmonty has joined the channel [22:43] tdegrunt has joined the channel [22:44] bene has joined the channel [22:45] dnolen has joined the channel [22:46] justinw312: Don't worry folks, me and my ton of questions will be back in moments. [22:47] philtor has joined the channel [22:47] minaguib has joined the channel [22:47] jmoyers has joined the channel [22:48] rauchg has joined the channel [22:49] Cheery: I think I'll pick redis [22:50] wjwoodward has joined the channel [22:52] dcelix has joined the channel [22:53] insin has joined the channel [22:53] Cheery: it seems to be written in ansi c, has sensible node.js interface and yet even if I didn't find transactions, I found couple atomic operations that shouldn't be bad. [22:54] weezle has left the channel [22:54] Cheery: I'll see whether I can get on with it. [22:54] Cheery: but now I get to sleep [22:54] Cheery: good night [22:54] unomi has joined the channel [22:54] unomi has joined the channel [22:55] eliziario has joined the channel [22:56] devrim has joined the channel [22:56] avalanche123 has joined the channel [22:57] AvianFlu: hey WallyDater GTFO! [22:59] mscdex: hey WallyDater GTFI! [23:00] syskk has joined the channel [23:01] dcelix has joined the channel [23:01] ceej has joined the channel [23:03] Vertice_ has joined the channel [23:04] wookiehangover has joined the channel [23:05] Mrfloyd has joined the channel [23:06] sechrist_ has joined the channel [23:08] c4milo1 has joined the channel [23:08] skm has joined the channel [23:09] arthur_kalm has joined the channel [23:09] ChrisPartridge has joined the channel [23:10] caolanm has joined the channel [23:14] jmoyers: hmm [23:14] jmoyers: http://www.infoworld.com/d/application-development/javascript-conquers-the-server-969 [23:14] davidascher has joined the channel [23:15] amerine has joined the channel [23:15] jmoyers: these articles are usually so misleading [23:15] jmoyers: this one is much better than the ibm business [23:19] danfo has joined the channel [23:20] tjholowaychuk has joined the channel [23:20] dyer has joined the channel [23:20] dyer has joined the channel [23:20] wilhelm has joined the channel [23:20] jonaslund: I read that one earlier [23:20] Tobsn: https://gist.github.com/raw/992227/e230510e3d21073185983720ff934800fc40a36e/extract-url-params.js (client) [23:21] MrTopf has joined the channel [23:21] jonaslund: jmoyers: was it the IBM article you were lambasting the other day ? [23:21] jonaslund: (Not strange though considering all the money IBM has invested in Java development) [23:21] ceej_ has joined the channel [23:21] pauls has joined the channel [23:22] edude03 has joined the channel [23:22] WallyDater has joined the channel [23:23] jmoyers: jonaslund: i didn't actually crap on that article [23:23] jmoyers: i thought it was naive, but kept my mouth shut [23:23] jmoyers: marak wrote a hilarious post though [23:24] jonaslund: ah ok [23:24] jmoyers: this new one actually took the time to write a few simple apps in each of the server side js environments [23:24] jmoyers: again the guy says "it uses a single thread" [23:24] jmoyers: which, almost every one of these guys who hasn't taken the time to look into it misses the fact that on the c/c++ side many of these bindings are using a thread pool [23:24] hoodoos has joined the channel [23:24] jmoyers: but its managed behind the scenes [23:25] AvianFlu: hey WallyDater GTFO! [23:25] jonaslund: tbh though that threading has been in there to avoid io blocking, code is for all practical purposes single threaded [23:25] jonaslund: (that is discounting any c++ modules) [23:25] stepheneb has joined the channel [23:29] EyePulp has joined the channel [23:29] markwubben has joined the channel [23:30] captain_morgan has joined the channel [23:32] dcelix has joined the channel [23:32] ezl has joined the channel [23:32] chbrown: If I have some constants in my node module's package.json["main"] file, and I want to access them from other files in the same module, what's the suggested way to do that? [23:32] jacobolus has joined the channel [23:33] AAA_awright: Does Node.js support inline functions yet, i.e. function(v) v.replace('1','2'); [23:33] AAA_awright: Or what's it called [23:34] jonaslund: Does chrome support it ? [23:34] jonaslund: or correctly.. V8 [23:35] jonaslund: AAA_awright: If V8 supports something you should be able to replace the V8 tree (or use a separate install) and get the benefits [23:35] tikva has joined the channel [23:35] chbrown: AAA_awright: (function(v) {return v.replace('1','2')})('911') works [23:35] chbrown: (function(v) return v.replace('1','2'))('911') does not [23:36] jesusabdullah: Any front-end guys in here know a good reference for by-hand (no jquery) DOM manipulation? [23:36] AAA_awright: chbrown: No, without the "return" [23:36] sechrist has joined the channel [23:36] jesusabdullah: I'm playing with bookmarklets! [23:36] AAA_awright: chbrown: The latest ECMAScript draft lets you use "function(args) expression" as shorthand for "function(args){return expression;}" [23:37] chjj: jesusabdullah: did you look at mozilla docs? [23:37] jesusabdullah: chjj: I haven't! I always just use The Google and get disappointing links to w3schools [23:37] chjj: https://developer.mozilla.org/en/Gecko_DOM_Reference [23:37] AAA_awright: jesusabdullah: The Mozilla DOM reference, or the W3C Recommendations themselves [23:38] jonaslund: hrrrm [23:38] jesusabdullah: I've had really good luck with mozilla docs in the past :) and I usually find w3c stuff pretty dry [23:38] jonaslund: AAA_awright: where is those latest drafts ? [23:38] jesusabdullah: but maybe I'm just impressed by pretty pictures? Who knows! [23:38] chbrown: AAA_awright: I have node-0.5.0pre, and no. [23:38] jesusabdullah: EITHER WAY you guys rock [23:38] gf3 has joined the channel [23:38] chjj: yeah, mozilla docs is pretty good, read the specs if you can, quirksmode.org documents all the dom inconsistencies between browsers [23:38] AAA_awright: jesusabdullah: http://www.w3.org/DOM/DOMTR [23:39] AAA_awright: chbrown: I'm using master too, I guess I'm wondering when that's going to be merged in [23:40] tayy has joined the channel [23:40] jesusabdullah: whoo bookmarklets \o/ [23:41] hansschmucker has joined the channel [23:43] hansschmucker: Hi everybody.... I'M having a slight problem building node.js on Windows... it bails early with a Geman (my system locale) message that seems to suggest that tools/wafadmin/Utils.py/exec_command accidently uses cmd.exe instead of bash to run its code.... which of course doesn't work. Has anybody else come across this issue? [23:43] newy has joined the channel [23:44] hansschmucker: *German, not Geman [23:44] baoist has joined the channel [23:44] jesusabdullah: Your language is now known as Geman. [23:45] dcelix has joined the channel [23:45] jesusabdullah: Said, "Gee, maaan!" [23:45] hansschmucker: Gee, I'm the creator of a new language ;) But seriously, has anybody else experienced this problem? [23:45] jesusabdullah: More seriously: I haven't heard of anyone coming across this issue, but I'm not here all the time either. [23:45] jesusabdullah: Either way, it *is* a problem [23:46] jesusabdullah: -heh- [23:46] jesusabdullah: <--captain obvious [23:46] Mrfloyd has joined the channel [23:46] jesusabdullah: I'm trying to think of who could be most helpful about that [23:46] jesusabdullah: I mean, ryah is of course a great resource, but I think there's someone else that's been working on windows issues in particular [23:47] jonaslund: hansschmucker: hrrm [23:47] jesusabdullah: If nobody in here has any ideas, I'd suggest filing a github issue. They'll see it eventually! [23:47] hansschmucker: I'm a newbie.... so is there a particular protocol on when and how people should be contacted? [23:47] jesusabdullah: Oh, also, check the github issues to make sure nobody's had the issue also [23:47] hansschmucker: Allright I'll do that.... and stick arond here, maybe someone comes to visit [23:47] jesusabdullah: hansschmucker: People here are pretty chill. :) [23:47] jonaslund: hansschmucker: what compiler are you using ? [23:47] hansschmucker: Normal MinGW [23:48] hansschmucker: but it doesn't really get that far [23:48] jonaslund: are you building the 4.x release from the homepage or from git ? [23:48] jonaslund: (Also do you have MSVC installed ?) [23:48] hansschmucker: it bails on cp -r c:\node\deps\uv/* c:\node\build\default\/deps/uv && if [[ -z "$NODE_MAKE" ]]; then NODE_MAKE=make; fi; $NODE_MAKE -C c:\node\build\default\/deps/uv [23:49] hansschmucker: I have C# Express installed, but I changed the compiler order [23:49] hansschmucker: so that shouldn't be the problem [23:49] Skipants has joined the channel [23:49] caolanm has joined the channel [23:49] hansschmucker: I get a "-z not valid here" message [23:49] hansschmucker: in *Geman* of course [23:49] hansschmucker: Which is what cmd.exe would say [23:49] jonaslund: It was a while i built it [23:50] jesusabdullah: ^__^ [23:50] jonaslund: while ago [23:50] jonaslund: damn i've lost all my spelling in the last few days [23:50] hansschmucker: I'm not entirely clear what uses what, which makes things even more difficult to track [23:50] hansschmucker: I have MinGW installed, but I'm not sure how much the GIT commandline installed itself [23:51] hansschmucker: it's probably using it's own local copy [23:51] hansschmucker: gcc version 4.4.0 (TDM-1 mingw32) [23:51] jonaslund: you only use git manually [23:51] jerrysv: jesusabdullah: maple, arm, but arduino compatible [23:51] jonaslund: what i was wondering if you were using the downloaded package or if you checked out the git code yourself [23:51] jesusabdullah: jerrysv: What's up? Maple? [23:51] AAA_awright: Git isn't an acronym [23:51] hansschmucker: Checked it out myself [23:51] hansschmucker: sorry, AAA_awright [23:51] AAA_awright: :p [23:52] hansschmucker: I'm a bit oldfashioned.... only ever worked with CVS and SVN [23:52] jesusabdullah: Now we have to backronym is [23:52] jerrysv: jesusabdullah: yeah, conversation from saturday night: http://leaflabs.com/devices/maple/ [23:53] jesusabdullah: *geekgasm* [23:53] hansschmucker: Anyway, I basically followed the instructions... Installed Python, Installed Git installer, which loads its own MinGW and compiles Git, then checked out source via Git-included bash and configure/make [23:53] mscdex: heh [23:53] jesusabdullah: That is smexy! [23:53] jonaslund: hansschmucker: if you've checked out node from git yourself you should make sure to use the 4.x branch [23:53] mscdex: i got a pandaboard on the way! [23:53] mscdex: :-D [23:53] jonaslund: hansschmucker: or download the prepared source package from the homepage [23:53] jonaslund: hansschmucker: apperantly there is alot of development going on right now [23:53] hansschmucker: Followed the howto, let me check waht I checked out :) [23:53] jerrysv: jesusabdullah: and only like $45 [23:54] jesusabdullah: Yeah [23:54] jesusabdullah: Lookit all those channels [23:54] jesusabdullah: I love me some channels [23:54] hansschmucker: Guess I should just use the binaries.... it just seemed so simple and straight-forward [23:54] jonaslund: source is good if you wanna use or do extensions [23:54] jerrysv: jesusabdullah: and compatible with most arduino addons [23:54] willwhite has joined the channel [23:54] hansschmucker: I followed this guide: https://github.com/joyent/node/wiki/Building-node.js-on-mingw [23:55] jesusabdullah: Yeah, I saw that! [23:55] hansschmucker: I'm a newbie, so I guess the precompiled binaries will do... I honestly just discovered them a minute after coming in here [23:55] tonymilne has joined the channel [23:56] jesusabdullah: Yeah hansschmucker, They'll probably do you just fine [23:56] jonaslund: what version are the precompiled binaries of ? [23:56] jesusabdullah: hansschmucker: What's your background then? I mean, you say you're a noob but you seem to know your way around things pretty good [23:56] hansschmucker: 0.4.7 [23:56] jonaslund: hansschmucker: replace the git clone stage with extracting http://nodejs.org/dist/node-v0.4.8.tar.gz [23:56] hansschmucker: My background is Javascript.... [23:56] jonaslund: and try building again [23:56] mscdex: is the mingw port even complete yet? [23:57] jonaslund: mscdex: It works for the limited stuff i've done [23:57] jesusabdullah: front-end guy then, hansschmucker ? [23:57] jesusabdullah: Word. [23:57] hansschmucker: I've known computers since .... well as far back as I can remember, but that doesn't mean I know every program on this planet [23:57] mscdex: Excel. [23:57] mscdex: :D [23:57] jonaslund: Should be mostly ok for development [23:57] hansschmucker: C, C++, BASIC is you want to go that far bar [23:58] jonaslund: deployment.. njah :) [23:58] hansschmucker: HTML, CSS, Javascript, SVG, SVG Filters, XSLT.... [23:58] mscdex: what? no fortran? :p [23:58] chjj: xslt is such a novel language [23:58] hansschmucker: Sorry, not that old. [23:58] tjholowaychuk: xslt makes me want to die [23:59] jesusabdullah: I've done some fortran [23:59] chjj: xpath expressions make me want to die [23:59] mscdex: xml makes me want to die [23:59] jmoyers has joined the channel [23:59] chjj: xpath expressions are horrible pieces of ugliness [23:59] jesusabdullah: It's pretty terrible except for that it's fast enough for supercomputers and has a lot of scientific code written in it already [23:59] hansschmucker: It's not that bad.... I mean I've found little use for it and yes xpath is a pain, but it's not something I have serious issues with. XML in general is what people make of it [23:59] jesusabdullah: that said I would still avoid it like the plague [23:59] hansschmucker: Well, if possible I use CSS selectors these days ;) [23:59] mscdex: node-fortran [23:59] amerine has joined the channel