[00:00] CIA-121: node: 03Ryan Dahl 07v0.2 * raab4f37 10/ (lib/net.js test/simple/test-net-connect-timeout.js): [00:00] CIA-121: node: Fix test-net-connect-buffer [00:00] CIA-121: node: Change to end() behavior in 82afd0 was breaking it. end() should wait for [00:00] CIA-121: node: connection before dumping. Changed test-net-connect-timeout to use destroy() [00:00] CIA-121: node: instead. - http://bit.ly/fFBT08 [00:02] briznad has joined the channel [00:04] mikeal: does socket.io have issues on node master? [00:04] stepheneb has joined the channel [00:05] hellp has joined the channel [00:06] zorzar_ has joined the channel [00:08] derferman has joined the channel [00:08] piscisaureus: any c/c++ experts around here? [00:08] tanepiper: certainly not in 0.3.4, so if it does mikeal it's a recently change [00:08] ryah: socket.io doesn't work ? :/ [00:09] ryah: piscisaureus: yo [00:09] mikeal: works now [00:09] mikeal: the socket.io website is REALLY REALLY out of date [00:09] mikeal: out of date with the node.js api and out of date with the socket.io api [00:09] mikeal: the readme in the git repo is up to date [00:10] jakehow has joined the channel [00:10] piscisaureus: ryah: yo [00:10] piscisaureus: suppose I want to have this [00:10] piscisaureus: char *lookuptable[200]; [00:10] piscisaureus: lookuptable[CONST1] = "blah" [00:11] piscisaureus: lookuptable[CONST2] = "foo" [00:11] piscisaureus: lookuptable[CONST5] = "bar" [00:11] piscisaureus: can I do that in a way such that the strings don't end up in memory twice [00:11] piscisaureus: e.g. once in the executable code and once on the heap [00:11] ryah: ? [00:12] ryah: oh, in js? [00:12] piscisaureus: no in c [00:12] ryah: which heap? [00:12] piscisaureus: hmm [00:12] ryah: v8? [00:13] piscisaureus: the c heap? [00:13] piscisaureus: like where malloc() takes it toll [00:13] ryah: i'm not sure what you're asking [00:14] ryah: piscisaureus: is v8::String::MakeExternal() what you're looking for? [00:15] piscisaureus: ryah: no no [00:15] tfe_ has joined the channel [00:15] piscisaureus: #define KEY(scancode, name) scancodes[scancode] = name; [00:15] piscisaureus: static const char* scancodes[MAX_KEY] = {0}; [00:15] piscisaureus: static void init_scancode_table() { [00:15] piscisaureus: KEY(VK_CANCEL, "break") [00:15] piscisaureus: KEY(VK_BACK, "backspace") [00:15] piscisaureus: KEY(VK_TAB, "tab") [00:16] piscisaureus: isn't that inefficient memory-wise? [00:16] ryah: ono [00:16] sprout has joined the channel [00:16] ryah: it's just static data [00:16] piscisaureus: hmmm [00:17] ryah: it's fine [00:17] piscisaureus: I always find it hard to imagine how a c does these things [00:17] piscisaureus: stack allocation and heap allocation I get [00:17] bartt has joined the channel [00:18] ryah: piscisaureus: there's a data section of memory for static stuff [00:18] c4milo1 has joined the channel [00:19] Cleudi has joined the channel [00:19] piscisaureus: ACTION googling [00:19] ryah: piscisaureus: http://en.wikipedia.org/wiki/Data_segment [00:19] piscisaureus: ryah: you should forgive me. node is my first c project i did in 12 years [00:20] severla has joined the channel [00:20] severla: la nea? [00:20] c4milo1: la nea [00:20] severla: what irc client you're using? [00:21] c4milo1: severla: adium [00:21] piscisaureus: (when I was 14, I used djgpp tho. hehe. good times) [00:21] severla: i also used djgpp when learning C :P [00:21] severla: and mIRC [00:21] c4milo1: severla: and you were? [00:22] severla: 15 i think [00:22] c4milo1: severla: what a lady [00:22] severla: hahaha [00:22] CIA-121: node: 03Felix Geisendörfer 07master * rf61277e 10/ src/node.js : [00:22] CIA-121: node: Always init module paths [00:22] CIA-121: node: The previous cleanup patch broke module loading in the the REPL by [00:22] CIA-121: node: not initializing require.paths. - http://bit.ly/fPGrlJ [00:22] severla: frickin gringa [00:22] CIA-121: node: 03Felix Geisendörfer 07master * rf5fbb70 10/ src/node.js : Fix NODE_PATH, was broken after cleanup - http://bit.ly/fRGMJQ [00:22] piscisaureus: I remember rhide IDE [00:23] sh1mmer has joined the channel [00:23] isaacs_ has joined the channel [00:25] charlenopires_ has joined the channel [00:26] noahcampbell has joined the channel [00:26] piscisaureus: ryah suddenly decides to review all my code [00:27] piscisaureus: :p [00:27] ryah: piscisaureus: :) [00:28] noahcampbell has joined the channel [00:29] boaz has joined the channel [00:31] dipser_ has joined the channel [00:35] briznad has joined the channel [00:37] dthompson has joined the channel [00:41] jashkenas has joined the channel [00:43] CIA-121: node: 03Ryan Dahl 07master * r4e1e6a2 10/ lib/_debugger.js : debugger: Don't break on handle === 0 - http://bit.ly/g8xUnd [00:45] ryah: http://arlolra.no.de/waterfall/ab-hello-world-buffer-1024/hist/ [00:45] ryah: ^-- it seems like 2e5dfafcb made things faster [00:45] russ_nyc has joined the channel [00:46] ryah: maybe? [00:46] forzan has joined the channel [00:47] dguttman has joined the channel [00:48] jimt has joined the channel [00:49] ashleydev has joined the channel [00:49] amerine has joined the channel [00:50] forzan has joined the channel [00:50] creationix: ryah: most the images on that page don't load for me [00:50] creationix: is that normal? [00:51] softdrink has joined the channel [00:54] isaacs_ has joined the channel [00:56] eikke has joined the channel [00:58] dnolen has joined the channel [01:00] perlmonkey2 has joined the channel [01:01] cgutierrez has joined the channel [01:03] markstory has joined the channel [01:03] cgutierrez: hola! anyone know of good module for doing html entity encoding/decoding? [01:06] heavysixer has joined the channel [01:07] zentoooo has joined the channel [01:07] deepthawtz has joined the channel [01:07] bingomanatee_ has joined the channel [01:07] bingomanatee_: Going to a chrome session at Google HQ - anyone have any questions for the Chrome team? [01:08] piscisaureus: will they reimplement chrome in nodejs? [01:09] russ_nyc has joined the channel [01:09] piscisaureus: (just need to add some X server bindings) [01:09] galaxywatcher has joined the channel [01:10] bingomanatee_: I'll check. [01:11] mikew3c_ has joined the channel [01:11] briznad has joined the channel [01:13] zorzar has joined the channel [01:13] kriskowal has joined the channel [01:13] skm has joined the channel [01:14] yozgrahame: Sorry if this is a regular topic - are there any plans for enabling some kind of synchronous function behaviour in node? Other than what the Stratified people are up to, I mean. [01:14] maushu: They lie! [01:15] maushu: THEY LIE! [01:15] mgutz: first rule of node, don't ask about synchronous [01:16] maushu: IT'S THE DEVIL! [01:16] yozgrahame: But the people for whom I am building a JS sandbox [01:16] yozgrahame: THEY DEMAND IT [01:16] mgutz: lol [01:16] yozgrahame: they won't stop their demands [01:17] yozgrahame: I hear them in my sleep [01:17] UHMA has joined the channel [01:17] yozgrahame: "WHY CAN'T WE CODE IMPERATIVELY ANY MORE?" they wail [01:17] kriskowal has joined the channel [01:17] yozgrahame: "Do you still hear the screams of the nested functions, Clarice?" [01:18] yozgrahame: the movie parodies just write themselves [01:18] maushu: ... [01:19] zorzar has joined the channel [01:19] yozgrahame: "I know what you're thinking: Did he use six opening curly braces or only five? Well, to tell you the truth, in all this asynchrony I kind of lost track myself." [01:20] DHesskamp has joined the channel [01:22] halfhalo: CALLBACKS OF DOOOOOOOM [01:22] kriskowal has joined the channel [01:24] RockShox: so you better ask yourself, punk [01:24] echosystm: i have a buffer with 4 octets [01:24] isaacs has joined the channel [01:24] echosystm: how can i join each octet to form 32 bits? [01:24] RockShox: i have a buffer with 5 [01:24] RockShox: so there [01:24] echosystm: ie. one "number" [01:25] EyePulp: yozgrahame: I would like to subscribe to your newsletter. [01:26] yozgrahame: EyePulp: Thank you for reminding me to write one. [01:27] jimt_ has joined the channel [01:28] evanmeagher has joined the channel [01:30] enaeseth has joined the channel [01:31] Nohryb has joined the channel [01:32] jimt has joined the channel [01:33] mfernest has joined the channel [01:37] Aikar: whats the new syntax for mongoose.noSchema('collection name', dbObject)? [01:37] piscisaureus: ryah: bitflag or {alt: true, shift: true} object? [01:38] admc has joined the channel [01:38] sivel: hey guys, I am working on a project that uses node (Kod http://kodapp.com) which is a Mac code editor. It builds node as part of the xcode project, and when it gets to a certain point it seems to stop processing but not when run via Xcode.app just xcodebuild [01:38] iszak has joined the channel [01:38] iszak has joined the channel [01:38] sivel: the command that it seems to stop on can be seen at https://gist.github.com/573c882815785c9126d4 [01:38] sivel: I can see that command in my process list, but it doesn't seem to actually be running [01:39] sivel: I can run that command on it's own and it works fine, and like I said running via the xcode.app it runs fine. [01:39] sivel: but when building via xcodebuild (cli tool) it just hangs at that point [01:39] jacobolus has joined the channel [01:40] sivel: I've been messing around with the wscript file, but still cannot seem to get it to run [01:40] HAITI has joined the channel [01:46] ron_frown has joined the channel [01:47] dguttman has joined the channel [01:49] robotarmy has joined the channel [01:49] charlenopires has joined the channel [01:50] alek_br has joined the channel [01:51] alek_br has joined the channel [01:52] alek_br has joined the channel [01:52] IRONkyle has joined the channel [01:53] ryah: http://buildbot.nodejs.org/waterfall green [01:53] ryah: finally [01:53] maushu: Turn your eyes and it will go back to the red of doom. [01:54] Aikar: anyone recommend a mature mongodb module (besides the mongodb-native) thats like mongoose? [01:54] alek_br has joined the channel [01:54] bingomanatee_: express [01:54] isaacs_ has joined the channel [01:54] bingomanatee_: oh like mongoos [01:54] Aikar: express isnt a mongodb driver >_> [01:54] bingomanatee_: no native is the status quo. [01:55] bingomanatee_: sorry I misread your question [01:55] bingomanatee_: And in fact I've had problems with the alternatives. [01:55] Aikar: bleh mongoose looks great but its documentation doesnt match its source code :/ [01:55] bingomanatee_: Its pretty much roll your own or use mongoose at this point. [01:55] Aikar: mongoose is unusable it seems lol [01:55] bingomanatee_: yes I would reccommend making personal contacts at LearnBoost to get the long awaited next release or roll your own. [01:56] sh1mmer has joined the channel [01:56] Aikar: the noSchema function doesnt exists [01:56] bingomanatee_: I am not using it myself - I'm not going as far as to call it unusable but I didn't see a lot of worth in using it. [01:56] bingomanatee_: If you want to see some examples of native in use I've been using it in my home brew project noogle on git. [01:57] bingomanatee_: but your initial question (and please someone correct me if I'm missing something) has a short answer: no. [01:58] MattDiPasquale has joined the channel [01:58] tylerstalder has joined the channel [01:59] ryah has joined the channel [01:59] briznad has joined the channel [01:59] bingomanatee_: Native is, er, "bearable" once you use it enough. [02:02] bingomanatee_: Aikar: my experience is that node puts you very close to a lot of low level systems and gives you more control at the expense of an "Enterprise" ruby level experience with conventions and schema. Learnboost has been claiming that Mongoose will release since December and state that they are simply testing and refining their ORM and improving test coverage at this point. [02:03] Remoun has joined the channel [02:05] bingomanatee_ has joined the channel [02:07] guitt has joined the channel [02:07] Me1000 has joined the channel [02:10] m0rganic has left the channel [02:13] amerine has joined the channel [02:14] Me1000 has joined the channel [02:14] jakehow has joined the channel [02:17] piscisaureus: ryah: here. very short question. [02:17] piscisaureus: ... [02:18] piscisaureus: } else if (b[1] === 91 && b[2] === 51 && this.cursor < this.line.length) { [02:18] piscisaureus: // delete right [02:18] piscisaureus: which key is that associated with? [02:18] tekky has joined the channel [02:19] Nohryb has joined the channel [02:20] hughfdjackson has joined the channel [02:20] hughfdjackson has left the channel [02:23] jgoulah has joined the channel [02:23] jgoulah has left the channel [02:23] jimt has joined the channel [02:25] isaacs_ has joined the channel [02:25] piscisaureus_ has joined the channel [02:25] ryah: backspace [02:25] ryah: i think? [02:25] ryah: or maybe 'delete' [02:26] piscisaureus_: that makes sense :-) [02:29] jimt_ has joined the channel [02:31] piscisaureus: I don't get why repl and readline are separate, these are so closely coupled [02:31] Ond has joined the channel [02:32] briznad has joined the channel [02:33] whyme has joined the channel [02:33] ryah: piscisaureus: see lib/_debugger.js [02:33] Figaroo has joined the channel [02:34] piscisaureus: ryah: ach so. didn't even know it existed [02:34] russ_nyc: hi all, i am using node-jscoverage to try to view a coverage report, it creates the lib-cov directory, but im not sure how to view the report [02:35] Figaroo: I've just gotten a tweet from someone when I asked if Node.js could replace PHP which said, "node.js potentially could but not right now. There aren't enough drivers to be as versatile." I want to know what everyone's thoughts are on this here on IRC. [02:35] russ_nyc: there is not html file in the directory [02:37] Figaroo: Is he right; is this true? [02:38] Remoun has joined the channel [02:39] mjr_ has joined the channel [02:39] djanowski has joined the channel [02:40] ryah: Figaroo: that's correct [02:40] ryah: i would agree with the statement [02:40] pengwynn has joined the channel [02:43] Aikar: ryah: any idea what Error: ENOTFOUND, Domain name not found in dns.js is about? [02:43] piscisaureus: ryah: How does this debugger work? Any docs? [02:43] piscisaureus: D:\nodejs\node_chat>..\node-src\node debug [02:43] Aikar: seems like it may be involving tls.connect [02:44] piscisaureus: debug> run server.js [02:44] piscisaureus: SetHandleInformation: De ingang is ongeldig. [02:44] piscisaureus: SetHandleInformation: De ingang is ongeldig. [02:44] piscisaureus: SetHandleInformation: De ingang is ongeldig. [02:44] piscisaureus: > connecting... [02:44] piscisaureus: node.js:68 [02:44] piscisaureus: throw e; // process.nextTick error, or 'error' event on first tick [02:44] piscisaureus: ^ [02:44] piscisaureus: Error: , Unknown error [02:44] piscisaureus: at Client._onConnect (net.js:545:18) [02:44] piscisaureus: at IOWatcher.onWritable [as callback] (net.js:164:12) [02:45] yrashk has joined the channel [02:47] Aikar: ryah: err, it was on mongoose, it threw that about localhost... ? [02:48] noahcampbell has joined the channel [02:48] matt_c_ has joined the channel [02:49] ryah: piscisaureus: you have to give server.js in the command line [02:49] ryah: node debug server.js [02:49] ryah: > run [02:50] ryah: Aikar: hm [02:50] Aikar: i changed it to 127.0.0.1 and it didnt do it [02:50] rburhum has joined the channel [02:50] Aikar: ie mongodb://localhost/db to mongodb://127.0.0.1/db [02:51] Aikar: dns.getHostByName('localhost', function(host){console.log(host)}); [02:51] Aikar: is printing null [02:52] Aikar: i just recompiled node like 2 hrs ago [02:52] Aikar: from latest [02:52] comster has joined the channel [02:53] Aikar: ryah: and btw getHostByName and getHostByAddr are missing from the docs on git [02:54] Aikar: https://github.com/ry/node/blob/master/doc/api/dns.markdown [02:54] Figaroo has joined the channel [02:56] bingomanateeIpho has joined the channel [02:56] Aikar: oh first arg is err not host, it worked for localhost, but i have no clue why mongoose blew up [02:57] Figaroo: Can Node.js replace PHP if I decided to go 100% all Node.js? [02:58] Aikar: with some work yes [02:58] Aikar: but as a drop in replacement for hosting multiple sites, not w/o alot of headache [02:58] bartt has joined the channel [02:58] mgutz: it depends on how you used PHP really [02:59] Figaroo: what do you mean hosting multiple sites? [02:59] ReshadN has joined the channel [02:59] Aikar: more than 1 site on a server [02:59] Figaroo: Like subdomains? [02:59] Aikar: or domains [02:59] Aikar: i own 17 domains :p [02:59] Figaroo: I don't even know how to do that with PHP [02:59] Aikar: you dont [02:59] Aikar: thats an apache config [02:59] Aikar: but node js does not run under apache [03:00] Aikar: it replaces apache [03:00] Figaroo: right [03:00] Figaroo: I meant, I don't know how to do that with apache [03:00] Aikar: so to also host multiple domains under node with diff file bases would be messy [03:00] Lorentz: Virtual host config, ServerName and ServerAlias if you have more [03:00] Figaroo: frankly, I don't know much about apache as that has been sort of abstracted from me when install things like Wamp/XAMPP [03:01] Aikar: ugh windows servers ::scare:: [03:01] c4milo1: ugh [03:01] Figaroo: yeah I'll eventually get a linux VPS to work with. [03:01] clarkfischer has joined the channel [03:01] Aikar: Figaroo: just download CentOS and VirtualBox, run a linux VM on your PC and use as a dev environment [03:02] Aikar: woooooot [03:02] Figaroo: Aikar, sounds like a mess, I'd rather just go with fantaticalVPS for $10 [03:02] Aikar: migrating off Zimbra to Exchange this weekend at work [03:02] Aikar: while id much rather prefer google apps, exchange is still better than Zimbra :/ [03:03] mgutz: you get what you pay for :) I'd say pay the $20 and go on Linode [03:03] softdrink has joined the channel [03:03] Aikar: i used vpslink.com when i did a vps [03:03] sadface has joined the channel [03:03] Figaroo: How I use PHP currently is just interacting with MySQL, image processing, and email, off the top of my head. [03:04] Figaroo: you don't do VPS anymore? [03:04] Aikar: but looks like linode is cheaper [03:04] Aikar: I have a full on dedicated [03:04] softdrink has joined the channel [03:05] Aikar: i pay 100$/mo for quad core 1.6ghz, 4gb mem, 250gb raid HDD, 5TB bw i believe? 100mbit port [03:05] PyroPeter has joined the channel [03:05] mgutz: where? [03:05] Aikar: serverloft.com [03:06] Aikar: but its unmanaged, so you gotta fully manage the server yourself [03:06] Aikar: unless you install some admin thing like WHM/cPanel yourself [03:06] tylerstalder has joined the channel [03:06] pieterv has joined the channel [03:06] Aikar: ive had 100% uptime, great service, and they are rolling out a cloud too [03:06] mgutz: do they bootstrap it with a Linux image? [03:07] Figaroo: How do I do email in Node.js? [03:07] Aikar: yeah [03:07] mgutz: that's an awesome deal [03:07] Aikar: you can pick quite a few images to provision a server off of [03:08] Aikar: can purchase a private network too when you have multiple servers, but i couldnt figure out how to configure the networking stuff for that (was gonna VPN in to the network) :( [03:08] Aikar: my linux admin experience isnt that good yet lol [03:08] sudoer has joined the channel [03:09] Figaroo: Node.js can't do everything out of the box; that's what modules are for. I wouldn't need to know C in order to develop modules right? [03:09] Aikar: holy crap [03:09] mgutz: darn it no Ubuntu 10.04 :( [03:09] Aikar: 8gb memory server for 120/mo [03:09] Ond: No, Figaroo [03:09] Aikar: with an SSd HDD [03:09] Ond: Javascript [03:09] mikew3c has joined the channel [03:09] Aikar: http://www.serverloft.com/dedizierte-server/server-details.php?products=6 O.o [03:10] Figaroo: I thought the modules just expose certain APIs to JS? [03:10] dingomanatee has joined the channel [03:10] k04n_ has joined the channel [03:10] k04n_ has left the channel [03:10] k04n_ has joined the channel [03:10] Aikar: Figaroo: a module can be in js or C/C++ [03:10] pengwynn has joined the channel [03:10] Aikar: just make somefile.js [03:10] Aikar: then do module.exports = {foo: function(){console.log('bar')}} [03:11] Figaroo: But doing it in js would be limited [03:11] IRONkyle has joined the channel [03:11] Ond: Why [03:11] Aikar: then var somefile = require('./somefile'); [03:11] Aikar: js is turing complete, not limited, but C would be faster yes [03:11] Aikar: depends on what you need to do [03:11] Figaroo: how could I write a email module if Node.js doesn't come with any email API? [03:11] Aikar: you write an SMTP protocol [03:11] Aikar: but someones already done that [03:11] Aikar: just get a module off NPM [03:12] Figaroo: off topic: I'm not a ruby guy, but is NPM sort of like GEM in ruby? [03:12] Aikar: i think so, im not a ruby guy either :p [03:12] Figaroo: okay [03:12] mgutz: yes, very similar [03:12] Figaroo: *back on subject* [03:12] Aikar: its like yum/apt-get [03:12] Aikar: a package manager [03:13] Figaroo: exactly what I thought. thanks. [03:13] Figaroo: however... [03:13] Figaroo: I suppose email is built on top of SMTP and IMAP? [03:13] Aikar: IMAP is a retrieval type format mainly [03:13] Figaroo: And those protocols are built on top of TCP/IP, which Node comes with an API for? [03:13] Aikar: SMTP is "Send Mail Transfer Protocol" [03:13] Aikar: yes [03:14] Aikar: node is designed around writing TCP networking apps [03:14] Figaroo: So the modules could be built with js in this case. [03:14] Aikar: they could come with it yes [03:14] Figaroo: I see [03:14] Aikar: but node is really more a set of tools to build things, and an smtp client is a more specific application [03:15] desaiu has joined the channel [03:15] dingomanatee: I find it amusing when people try to define what node is. [03:15] Figaroo: now, NPM is a package manager, but how are these packages registered? Is it like a network, and app store so to speak? [03:15] dingomanatee: The problem being by implication you are saying what it is not and its a little early in teh game for that. [03:15] Aikar: do you find what i said wrong? :P [03:15] dingomanatee: Node's a programming language. [03:15] sadface: anyone SOO bored that they wanna help me troubleshoot a cygwin ./configure issue? :D [03:15] dingomanatee: Like all programmiong languages, it has libraries for stuff. [03:15] Figaroo: Node is not a language [03:16] Aikar: Figaroo: isaacs a dev who comes in here wrote it and maintains the registry, authors can register for his registery and submit modules to it [03:16] dingomanatee: well it is a dialect. [03:16] dingomanatee: you're right - language is an overstep. [03:16] Aikar: i prefer what i called it, "a set of tools to build things" ;) [03:16] Figaroo: it's not at all a language dialect [03:16] clarkfischer: sadface: I just built node in cygwin, what's up? [03:16] Figaroo: it's a framework [03:16] dingomanatee: my point being: you can say what libraries it has or doesn't have - right now - but that is not really a fair definition of what a young language "is". [03:16] Figaroo: like Cocoa or Prototype. [03:17] Figaroo: It's not a UI framework though [03:17] dingomanatee: (yet) [03:17] dingomanatee: fair enough. [03:18] Figaroo: If one where to add modules to Node down the road in the future, Node will always remain the same, unless ryan decides to accept those modules natively. [03:18] Ond: ...node itself is still in development [03:18] Figaroo: even then, Node would remain a framework, so I suppose it's safe to say Node is a framework now and in the future. [03:19] Figaroo: Aikar, what if someone else wants to use the same name as another module in the NPM registry? [03:19] Aikar: Figaroo: then your SOL lol [03:20] Aikar: choose a diff name :| [03:20] Lorentz: It can't be that hard, look at debian repository, they still manage without much of name conflicts. [03:20] Aikar: or if that module is abandoned, i believe isaacs will rename the old and let you claim the name [03:20] Figaroo: I see, so it depends on whether or not the module in question to be replaced is still maintained. [03:21] Figaroo: On the other hand, you still have the ability to go out side of NPM's "network"/registry, correct? [03:21] Aikar: yes [03:21] Aikar: npm install http://git/url [03:22] AAA_awright: Nodejs is giving me a segmentation fault shortly after throwing an error, right before it goes into the stack trace... It's while I'm debugging and trying to decend into a function, maybe it's trying to call a function of undefined but I can't tell for sure [03:22] jaredstil has joined the channel [03:24] Figaroo: Aikar, what sort of file should that URL parameter be? [03:25] Aikar: not sure how that fully works, but mongoose listed it as: https://github.com/learnboost/mongoose/tree/1.0 [03:25] paulrobinson has joined the channel [03:26] Figaroo: the readme on that github page says to use NPM like, 'npm install mongoose' [03:26] dingomanatee has joined the channel [03:26] Aikar: https://github.com/LearnBoost/mongoose [03:26] Aikar: it was on that page [03:27] Figaroo: hmm, maybe then it's a package.js file within a directory [03:27] Figaroo: notice how it mentions node here https://github.com/LearnBoost/mongoose/blob/master/package.json [03:29] Figaroo: I'm going to go eat, bbl [03:30] galaxywatcher has joined the channel [03:31] jimt has joined the channel [03:31] Ari-Ugwu has joined the channel [03:31] warz has joined the channel [03:32] dingomanatee: www.github.com/gameclosure/timestep [03:33] dingomanatee: For those who were talking the other night about server/client tracking this is a good resource [03:33] tmzt: so nobody is using node with sammy.js? [03:34] AAA_awright: Is it just me, or why does the nodeJS Inspector show one-letter variables under the global scope? [03:35] dingomanatee: what is sammyjs? [03:36] evanmeagher: dingomanatee: http://code.quirkey.com/sammy/ [03:37] josephhitchens has joined the channel [03:37] dingomanatee: from what I can see it is redundant with a lot of core Node. [03:37] dingomanatee: not a bad thing as such but node itself is evented and plays well with REST. [03:40] Blink7 has joined the channel [03:41] daniellindsley has joined the channel [03:42] ReshadN has joined the channel [03:44] echosystm: anyone here use vows a lot ? [03:44] ReshadN: Where can I start building a web app with nodejs only? [03:44] Aikar: can anyone please explain to me why the 'file exists' function is under path instead of fs.... [03:45] Aikar: book needs to be put back on the right shelf :( [03:46] mattly has joined the channel [03:46] piscisaureus: ryah: can't get the debugger to work, keep getting connection refused [03:46] piscisaureus: ryah: what should be listening at 5858? [03:46] Aria has joined the channel [03:48] Aikar: piscisaureus: type node --debug-brk myapp.js then in another window type ndb [03:49] piscisaureus: ndb? [03:50] Aikar: the node debugger [03:50] Aikar: npm install ndb [03:50] piscisaureus: Can't do that on windows :-( [03:50] Aikar: why cant you [03:50] piscisaureus: ndb no workie workie [03:50] Aikar: its a javascript implementation [03:50] piscisaureus: ehm I mean npm [03:52] piscisaureus: Aikar: npm relies on symlinks [03:52] piscisaureus: not supported here [03:52] Lorentz: npm is awesome, I just found out today [03:52] piscisaureus: yet [03:52] Lorentz: It was worth moving to [03:53] dingomanatee: ReshadN: have you looked at expressJS? [03:53] dingomanatee: Also - at the risk of being mass iggy-sticked - I would consider a hybrid Rails/Node development stack. [03:53] dingomanatee: Using Node to do long running business logic, data I/O and client communication and Rails as a basic foundation. [03:54] piscisaureus: Aikar: but thanks for the --debug-brk tip [03:54] piscisaureus: apparently I can start `node debug` in another console and the two end up connected together [03:54] dingomanatee: Then as you get better at Node you can start to reduce out elements of Rails with socket/Node based stuff. [03:54] dingomanatee: Kind of "reverse fossilization". [03:55] dgathright has joined the channel [03:58] hkarthik has joined the channel [03:58] hkarthik: how long does it usually take to get a coupon code from no.de? [03:59] echosystm: i'm a bit confused about what is the proper way to write tests in vows [04:00] echosystm: basically, i need to create instances of a clas with various values [04:00] echosystm: then test a getX method on each instance [04:00] echosystm: is each instance a new topic? [04:02] echosystm: or is the method the topic? [04:03] ehaas has joined the channel [04:04] IRONkyle has joined the channel [04:05] nook has joined the channel [04:05] x_or has joined the channel [04:06] admc has joined the channel [04:06] willwhite has joined the channel [04:07] jdmmmmm has joined the channel [04:08] chrischris has joined the channel [04:09] zorzar has joined the channel [04:09] halfhalo: mind=blown [04:09] halfhalo: with zsh [04:09] jchris has joined the channel [04:11] EyePulp has joined the channel [04:11] stepheneb has joined the channel [04:15] IRONkyle has joined the channel [04:16] k04n_: Does anyone here know how I would use cookies or sessions from within zappa (https://github.com/mauricemach/zappa)? [04:18] aaronblohowiak has joined the channel [04:21] willwhite has joined the channel [04:22] alek_br has joined the channel [04:25] piscisaureus has joined the channel [04:25] norviller has joined the channel [04:25] aaronblohowiak: that GWT-node project was certainly not what i expected [04:26] ashleydev has joined the channel [04:27] bitdrift has joined the channel [04:27] piscisaureus: goodbye everyone [04:28] Ond: Take 'er easy [04:29] willwhite has joined the channel [04:30] zorzar has joined the channel [04:31] dgathright has joined the channel [04:32] matt_c_ has joined the channel [04:33] MikushiMtl has joined the channel [04:33] jacobolus has joined the channel [04:33] aheckmann has joined the channel [04:34] MikushiMtl: Hi there, i got a question, after lurking on Google couldn't find anything, basically i want to know if it's possible to shutdown a tcp server from within? (In this case, to answer to a shutdown command) [04:35] aaronblohowiak: what do you mean by shutdown? [04:35] aaronblohowiak: SIGINT ? [04:36] MikushiMtl: I would guess so [04:36] aaronblohowiak: MikushiMtl: http://nodejs.org/docs/v0.3.4/api/all.html#signal_Events [04:37] aaronblohowiak: MikushiMtl: or .close() [04:37] aaronblohowiak: depending which way you mean that [04:37] ringomanatee has joined the channel [04:38] MikushiMtl: basically got a small tcp server that listen to commands and do stuff, i want to be able to remotely shutdown the server by sending a "shutdown" command [04:39] iszak: "shutdown -P now" ? [04:40] iszak: MikushiMtl, shutdown the TCP server or the actual server? [04:41] MikushiMtl: iszak: the TCP server, not the actual server [04:42] iszak: this is node.js server, right? [04:42] MikushiMtl: yep [04:42] iszak: yeah, should be possible to shut it down. [04:42] iszak: use get a child process and execute the command to shut it down. [04:42] iszak: unless there's something in node.js to terminate it. [04:46] jaredstil has joined the channel [04:47] attractr has left the channel [04:47] jaredstil has joined the channel [04:48] curtisc has joined the channel [04:48] zorzar_ has joined the channel [04:49] MikushiMtl: iszak: got it, was quite stupid actually (sign i need to go to bed). Instead of doing net.createServer(function(socket) { }).listen(port, host); , i just declare var server; before initializing it with createServer(), then from within it's just server.close(). [04:50] iszak: MikushiMtl, that would work however, i don't think you can take that approach for restarting? [04:51] langworthy has joined the channel [04:51] MikushiMtl: iszak : good point [04:52] tmzt: will the debug support listening on a unix socket? [04:52] iszak: MikushiMtl, I would attempt to be consistent and try using a CLI based approach. [04:52] jaredstil: does anyone know how to create a crypto.Credentials object given a PEM? it seems to be deferring to OpenSSL whenever I call crypto.createCredentials() [04:52] tmzt: also, will node support listening on a unjx socket with http server, for use with nginx proxy? [04:54] jaredstil: asks for the PEM pass phrase and just blocks endlessly. [04:56] MikushiMtl: iszak, yeah makes more sense. Then i'll just write an upstart script for it, much easier [04:57] tmzt: MikushiMtl: you coyld talk to upstart over dbus or a socket or something [04:57] tmzt: but you wouldnt want to run the node instance as root [04:57] derferman has joined the channel [04:58] jaredstil has joined the channel [04:58] pquerna: i really wish npm just had a --prefix [04:59] jaredstil has joined the channel [05:00] Lorentz: It is kind of outside the usual --prefix, yes. I'm using the .npmrc method. [05:01] jaredstil has joined the channel [05:03] alek_br has joined the channel [05:07] pquerna: Lorentz: yeah.. im using that too, just.. a pain to be deep linking into a readme to explain to people to do it [05:09] rcy has joined the channel [05:11] skm has joined the channel [05:16] Figaroo: so, should node programs run as daemons? [05:18] Figaroo has left the channel [05:19] Figaroo has joined the channel [05:19] echosystm: does anyone here understand vows? [05:19] Figaroo: what do you call the file that you pass as an argument to the node command? [05:19] echosystm: i'm having a hard time separating topics from vows [05:20] Nohryb has joined the channel [05:20] ehaas has joined the channel [05:20] Figaroo: echosystm, what are those? [05:21] echosystm: http://vowsjs.org/#-how-topics-work [05:21] derferman has joined the channel [05:24] echosystm: i'm pretty sure im doing it wrong [05:28] devdrinker has joined the channel [05:30] ewdafa has joined the channel [05:36] mgutz has left the channel [05:36] willwhite has left the channel [05:36] derferman has joined the channel [05:39] wmealing_ has joined the channel [05:42] masahiroh has joined the channel [05:42] themiddleman has joined the channel [05:44] curtisc has joined the channel [05:51] hobodave has joined the channel [05:58] mikew3c has joined the channel [05:58] fugoki has joined the channel [06:03] meso_ has joined the channel [06:03] AAA_awright has joined the channel [06:08] jbpros has joined the channel [06:09] ashleydev has joined the channel [06:10] twoism has joined the channel [06:10] dguttman has joined the channel [06:16] alek_br has joined the channel [06:17] mikew3c has joined the channel [06:19] k04n has joined the channel [06:23] attractr has joined the channel [06:23] attractr has left the channel [06:27] ryah: tmzt: debug on unix socket - i would like to do that soon [06:27] ryah: tmzt: http over unix - yes [06:27] ryah: supports it currently [06:27] kawaz_air has joined the channel [06:27] Figaroo: Node doesn't return errors as HTML like PHP huh? [06:27] mjr_: You can do everything over Unix sockets. [06:27] mjr_: I'm having a beer over a Unix socket right now. [06:28] ryah: :) [06:28] pquerna: so, making my first express app. thinking i'm dumb, but jade/haml/etc have nothing like, includes in their template lang :-/ ? [06:28] mjr_: Figaroo: You will need a lot of room to write down the list of things that node does differently than PHP. [06:31] erlnoob has joined the channel [06:33] mape: Anyone know of a javascript packer written in javascript that doesn't depend on the DOM? dean edwards packer seems to be a pita to run server side [06:34] shaver: dojo has one [06:34] Figaroo: mjr, I'm just trying to consider completely using Node over js and what I'll need to get used to. [06:35] mape: shaver: "Dojo shrinksafe is a very popular Java based JavaScript compressor that parses the JavaScript using the rhino library and crunches local variable names." ? [06:36] shaver: yeah [06:36] shaver: rhino is a JS implementation [06:36] mikeal has joined the channel [06:36] void_ has joined the channel [06:36] Figaroo: I've never really concerned myself that much PHP/Apache before, I've only plugged in my code on a shared hosting server. I wouldn't be able to tell you how PHP works *exactly*, I can only give you an idea. I think by me not knowing so much about PHP I will be able to more easily pick up Node...maybe. [06:36] mape: Java based doesn't make it sound like it is in javascript [06:36] mape: Other then the Java part of script [06:37] shaver: oh maybe it just uses rhino as a parser [06:37] shaver: nm then [06:37] pkrumins: ryah: we couldnt make it today! we had a really long meeting with sauce labs! we'll come visit you on friday! [06:38] bingomanateeIpho has joined the channel [06:38] sudoer has joined the channel [06:38] pkrumins: we're now at mountain view train station [06:38] pkrumins: free google wifi! [06:38] shaver: is the wine bar still open? [06:39] pquerna: mape: https://github.com/mishoo/UglifyJS ? [06:40] jimt_ has joined the channel [06:41] mape: pquerna: Yeah using that, want to pack the output of that as well. Gets it down another 37%. Will be slower to parse but still would like to try using base62 encode [06:41] mape: But http://dean.edwards.name/packer/ has all kinds of dependencies and DOM stuff mixed in [06:43] bingomanateeIp-1 has joined the channel [06:43] derren13 has joined the channel [06:45] matjas has joined the channel [06:45] briznad has joined the channel [06:46] mape: Owell, might have diminishing returns since I'm using gzip anyway [06:46] jimt has joined the channel [06:49] Sami_ZzZ has joined the channel [06:50] dgathright has joined the channel [06:51] jimt_ has joined the channel [06:51] curtisc has joined the channel [06:53] handle_with_care has joined the channel [06:57] ybit has joined the channel [06:58] jbpros has joined the channel [07:01] m64253 has joined the channel [07:01] ph^ has joined the channel [07:01] handle_with_care has joined the channel [07:03] Figaroo: People here are always saying how Node.js is still under development. This is good, but does this effect me in a dramatic way? As time goes on, I'll need to update my install of Node and update my app with it. But is it not encouraged to decide to depend entirely on Node for a major web service? [07:05] mikeal: Figaroo: so, here's the deal [07:05] mikeal: it's going to continue to iterate and take breaking changes [07:05] mikeal: but if you pull an even release [07:05] mikeal: 0.2.x or 0.4.x [07:05] mikeal: it's considered stable, and bugfix releases will continue to roll out until the next even release [07:05] mikeal: odd releases are unstable [07:06] mikeal: so don't take them for production [07:06] mikeal: and only move from one stable release to the next [07:06] Figaroo: but if say 0.2.6 has made a breaking change from 0.2.5, pulling from 0.3 later will have that same break. [07:08] Figaroo: But I think what you're saying is, I don't need to update with all the minor releases in between. Only when there is a major release should I update, and update my app. [07:08] jimt has joined the channel [07:09] Figaroo: Is that what you're saying, mikeal? [07:10] mgutz has joined the channel [07:10] mikeal: no [07:11] mikeal: 0.2.6 won't make a breaking change from 0.2.0+ [07:11] mikeal: no breaking changes during bugfix release [07:11] mikeal: you should update all minor releases, because it's all bugfixes, no compatibility breaks, in the even releases [07:11] springify has joined the channel [07:11] mikeal: 0.3.x breaks during every release, because it's unstable [07:12] mikeal: but once it goes 0.4.0 [07:12] mikeal: all 0.4.x releases won't break [07:12] mr_daniel has joined the channel [07:13] jimt_ has joined the channel [07:13] Figaroo: 0.3.1 to 0.3.2, for example, will break? [07:14] Figaroo: maybe I'm not clear on what you mean by break. [07:14] Figaroo: I'm using version 0.3.1 ATM [07:14] Yuffster_work has joined the channel [07:16] mikeal: yeah, there are breaks between 0.3.1 and 0.3.4 [07:16] mikeal: 0.3 is unsatble [07:16] mikeal: er unstable [07:16] mikeal: for instance, 0.3.4 has no HTTPS [07:16] mikeal: it's just gone [07:17] mikeal: was there in 0.3.3 :) [07:17] mikeal: but once it stabalizes and we release 0.4 [07:17] mikeal: 0.4.1 won't break anything in 0.4.0 [07:17] mikeal: and so on [07:18] dgathright has joined the channel [07:21] pquerna: fml sessions in express [07:21] evanmeagher: pquerna: what about em? [07:22] scheibo has joined the channel [07:23] pquerna: https://github.com/senchalabs/connect/blob/master/lib/connect/middleware/session.js#L89-99 [07:23] mikedeboer has joined the channel [07:24] pquerna: so, an undocumented option, 'secret' is the used in an md5 [07:24] TomsB has joined the channel [07:24] Figaroo: so something strangly went wrong with 0.3 and all 0.3.x versions won't have the fix, rather 0.4.x will be when everything is back on track smoothly? [07:24] pquerna: but by default its 'hackme' [07:26] pquerna: Figaroo: 0.3.x is dev. somethings will get better in sub-revisions, others might break completely, there are no guarantees [07:26] pquerna: Figaroo: in general tracking 0.3.x hasn't been too bad, things get deprecated but generally there are warnings [07:27] pquerna: but if you want something to not worry about for a few months, just use the latest 0.2.x [07:27] TomsB: I have a question about how to better organise my code on Node.JS [07:27] TomsB: here's code: http://pastebin.com/TQLS1Z34 [07:27] TomsB: It is compilation of three files [07:27] k04n_ has joined the channel [07:27] TomsB: Question is: on line 107 I have clients = {} [07:28] TomsB: and it is used in two files - client.js and server.js [07:28] TomsB: I have acces for it on server.js (in onRecv() ) but not in client.js [07:28] handle_with_care has joined the channel [07:28] TomsB: What would be the best way to organise this? [07:28] mikeal: or wait until 0.4.0 to go in to production [07:28] SamuraiJack has joined the channel [07:29] TomsB: so that I have global index of "clients" accessibe everywhere.. [07:29] TomsB: I suppose I have design flaw in my code but can't find anything good on google abotu this problem. [07:30] mikeal: TomsB: that sounds like it's going to leak [07:30] TomsB: why? [07:31] mikeal: if you have references to every client you ever create then they are never going to get gc'd [07:31] muhqu has joined the channel [07:32] TomsB: But how then to organise all client list so that I can read ones info by e.g. clients[uid].stream ? [07:32] mikeal: that's fine [07:32] mikeal: just make sure you delete it on disconnect [07:32] TomsB: oh, yes! [07:33] TomsB: No question about that. [07:33] TomsB: Code is not final yet :) [07:33] mikeal: clients[uid].stream.on('end', function () { delete clients[uid] }) [07:33] Fullmoon has joined the channel [07:34] TomsB: ok, I get this. [07:34] TomsB: But what about this: Client.prototype.broadcast() ? [07:34] TomsB: I should get to all client list to send info to them... [07:35] TomsB: but if all clients is on clients[] index (on server.js) than... I can't get my head around this... [07:35] TomsB: And I have broadcast() function on client.js from where clients[] index is not accessible.. [07:37] Figaroo: couldn't I just use 0.3.1 and update my code with each 0.3.x update? If a function gets depreciated, surely it will have a replacement. [07:38] TomsB: I'm creating user like this: clients[data.d.uid] = new User(data.d.uid,stream); but I need to access clients[] in User.broadcast() function... grr.. [07:40] SwiftLayer has joined the channel [07:42] tilgovi has joined the channel [07:42] ph^ has joined the channel [07:43] drudge has joined the channel [07:43] TomsB: Is ir a good idea to "extend" stream? [07:43] TomsB: *it [07:48] forzan has joined the channel [07:48] jimt has joined the channel [07:49] walkah has joined the channel [07:49] walkah has joined the channel [08:01] ph^_ has joined the channel [08:01] mraleph has joined the channel [08:01] qFox has joined the channel [08:04] isaacs has joined the channel [08:05] x_or has joined the channel [08:05] k04n_: does anyone know how to set cookies or session variables using zappa? [08:06] jbpros has joined the channel [08:07] devdrinker: substack, are you about? hitting my head with a Seq scenario [08:07] devdrinker: or anyone really familar with node-seq [08:08] mikeal: isaacs: jsregistry exploded in size [08:08] mikeal: it went from like 1.2gigs to 7.7 [08:08] isaacs: mikeal: whoa, really? [08:08] isaacs: wowzers [08:08] isaacs: that's not good [08:09] mikeal: wow, wait [08:09] mikeal: yours is fine [08:09] mikeal: it's just my replica [08:09] mikeal: ok, i just *really* needed to compact [08:09] isaacs: whoa [08:10] isaacs: hahha [08:10] mikeal: it went back down to 1gig [08:10] isaacs: hahahah [08:10] mikeal: that's crazy [08:10] svnlto has joined the channel [08:11] isaacs: pquerna: it kinda does [08:11] unsoughtDesire has joined the channel [08:11] isaacs: pquerna: if you just don't have any configs, it bases its stuff off where node lives. [08:11] unsoughtDesire: Hey all. [08:12] unsoughtDesire: Anyone here have experience with node-websocket-server? [08:12] shaver: a little [08:12] unsoughtDesire: Did you have any issues with "var cwd = process.cwd(); Error: No such file or directory at node.js:740:19" [08:13] mgutz has left the channel [08:13] unsoughtDesire: I git 'cloned' the node-websocket-server repo into my /usr/local/lib/node/ where my other modules reside... [08:13] devdrinker: phew.. when you cant get your head around Readme.mb the tests are definitely a good fallback. infact read the tests first. answered my Seq question :D [08:14] devdrinker: mb --> md [08:14] pquerna: isaacs: kinda. but my node is owned by root [08:14] pquerna: and no i'm not chwoing /usr/local, no matter what you say :P [08:14] isaacs: pquerna: suresure [08:14] isaacs: pquerna: you could just use sudo, and Be Very Careful about what you install. [08:15] isaacs: pquerna: or yeah, set three configs [08:15] pquerna: imagine i have 100 silly developers who will get the smallest possible step wrong [08:16] pquerna: nevermind, bad example with node. [08:16] felixge has joined the channel [08:16] felixge has joined the channel [08:16] isaacs: pquerna: i am oneof the hundred. [08:16] isaacs: pquerna: i get it. it sucks [08:17] pquerna: yes, but my other dependency is node 0.3 [08:18] pquerna: so whoami to cast stones, etc [08:18] pquerna: 'just use this git hash of node, it worked' [08:18] Nohryb has joined the channel [08:19] mAritz has joined the channel [08:20] fangel has joined the channel [08:22] devdrinker: ah nope spoke too soon http://pastebin.com/hH5n6WdC [08:22] devdrinker: what am I missing should be 1 2 3 and then done [08:23] devdrinker: sorry had to make a correction just then [08:25] jbpros: I'd like to stub "require()", is it possible? (I'm using jasmine-node) [08:27] virtuo has joined the channel [08:29] mikeal has joined the channel [08:31] teemow has joined the channel [08:31] mikedeboer has joined the channel [08:31] ivanfi has joined the channel [08:32] sveimac has joined the channel [08:37] SwiftLayer has joined the channel [08:38] [AD]Turbo has joined the channel [08:38] yozgrahame has joined the channel [08:40] [AD]Turbo: hi all [08:43] opengeard has joined the channel [08:45] cognominal has joined the channel [08:49] adambeynon has joined the channel [08:51] saikat_ has joined the channel [08:52] derferman has joined the channel [08:53] derferman has joined the channel [08:54] jimt_ has joined the channel [08:55] jbergstroem has joined the channel [08:56] saschagehlich has joined the channel [08:56] sth: !sc [08:56] daglees has joined the channel [08:59] herbySk has joined the channel [09:00] Gruni has joined the channel [09:03] ROBOd has joined the channel [09:07] slaskis has joined the channel [09:07] zentoooo has joined the channel [09:07] mraleph has joined the channel [09:08] aklt has joined the channel [09:10] altamic has joined the channel [09:10] clarkfischer has joined the channel [09:12] slaskis: has anyone been able to compile node-compress on a joyent smartmachine? [09:12] devdrinker: an damn http://pastebin.com/dndde91f why this could not wait it exits immediately when doing nodeunit nutest.js [09:13] devdrinker: cut down version of a scenario im experiencing obviously real scenario contains more and assertions etc.. [09:13] slaskis: i get this error while compiling: https://gist.github.com/ef1baf6bcadfa5732b65 [09:14] slaskis: and node-waf configure works fine [09:15] pkrumins: back home! [09:15] slaskis: another issue i'm getting (unrelated to the node-compress one) is that the dns seems to complain about "Error: EAFNOSUPPORT, Address family not supported by protocol family [09:15] sveimac has joined the channel [09:15] slaskis: but i can't figure out what it comes from, i'm guessing it might be a faulty protocol? [09:15] slaskis: like some request tries to go through "htp" or something? [09:16] slaskis: logging like a mad man but havnt found any of those though [09:16] Pynox has joined the channel [09:16] Pynox: Hello [09:16] Pynox: o_o [09:17] SubStack: oh hello [09:17] Pynox: So [09:17] Pynox: Do you have some time to possibly help me out? [09:18] TomY has joined the channel [09:18] Pynox: Does anybody have some time to possibly help me out? [09:20] ryah: Pynox: just ask a question - probably someone will answer [09:20] Figaroo: where does npm install it's modules? [09:20] isaacs: Figaroo: in $(npm get root) [09:21] jetienne has joined the channel [09:21] isaacs: Figaroo: also: npm config ls [09:21] isaacs: and npm help folders, npm help config [09:21] aklt: Hi, I think I may have bumped into a bug in node_crypto.cc when using crypto.createCipheriv('aes-256-cbc', cryptkey, iv), has anyone seen problems there? [09:22] Figaroo: so I just run npm get root and that should tell me [09:22] Pynox: I constantly get the "Build failed: task: libv8.a SConstruct -> libv8.a" [09:22] isaacs: Figaroo: you should also run `npm help folder` and `npm help config` and read those. [09:22] isaacs: Pynox: are you on Cygwin? [09:22] Pynox: Yes [09:22] isaacs: Pynox: rebaseall [09:22] Pynox: Oh, sorry for that, I should have note that xD [09:22] isaacs: no, no problem. [09:22] aklt: The problem is that only part of the string is decrypted. [09:22] isaacs: it's the only platform where python doesn't work [09:22] Pynox: Hmm, I already did that once, with a different error [09:22] Pynox: But Ill try it x3 [09:22] isaacs: Pynox: interesting. [09:23] isaacs: Pynox: i may be offering solutions before fully understanding the problem. [09:23] isaacs: :) [09:23] isaacs: beware of that [09:23] Pynox: I can't find the rebaseall.. x-x [09:23] ryah: Pynox: v0.3 isn't owrking on cygwin - try v0.2.6 [09:23] Pynox: Alright, ill try that x3 [09:24] Pynox: Well, I have never used GIT stuff.. [09:24] q_no has joined the channel [09:24] Pynox: Should I git clone a different git link? [09:25] Pynox: Where can I get 0.2.6 [09:25] Pynox: ? [09:26] ryah: git checkout v0.2.6 [09:26] kawaz_air has joined the channel [09:26] Pynox: then make and make install? [09:27] Figaroo: what's wafadmin? [09:27] xla has joined the channel [09:27] Pynox: or first ./configure? [09:28] aklt: The issue I am running into seems to be the same as described here: http://comments.gmane.org/gmane.comp.lang.javascript.nodejs/662 [09:28] aklt: I.e. only the first 16 bytes are decoded [09:28] skm has joined the channel [09:28] ryah: Pynox: ./configure first [09:28] nsswb has joined the channel [09:29] Pynox: Alright done that [09:29] Pynox: its seems to make well.. [09:29] Pynox: Another question, if I ain't bothering you too much... [09:29] Pynox: Can I just compile nodejs server with node ? [09:30] mnbvasd_: aklt: it's not something like having to pad to a segment boundary is it? [09:30] ntelford has joined the channel [09:30] aklt: mnbvasd_: I *think* i am doing things right, but could be wrong... I will make a gist [09:30] glenngillen has joined the channel [09:31] ntelford has joined the channel [09:31] glenngillen has left the channel [09:31] ryah: Pynox: yes [09:31] aklt: mnbvasd_: Here is some code to reproduce the issue I'm seeing: https://gist.github.com/777621 [09:31] yozgrahame: anyone here know anything about the v8 debugger? [09:32] aklt: Sorry for the funny use of buffers [09:32] Pynox: ryah: I'm using windows, so can I just make a batch file into my server folder with "node server.js" and it will compile? [09:32] alek_br has joined the channel [09:32] yozgrahame: mainly: when the debugger is stopped and waiting for interaction at a breakpoint, is v8 carrying on with any other event stuff, or is *everything* stopped? [09:34] Pynox: I'm going to use NodeJS for my MMORPG, will it be enough or am I wasting my time? [09:35] tanepiper: plenty games being written in nodejs just now [09:35] Pynox: Alright [09:35] Pynox: Well, the client is in C++ [09:35] tanepiper: it's very good for real-time vs threaded servers [09:35] Pynox: and the Server will be in Javascript then [09:35] Pynox: Oh awesome x3 [09:36] Pynox: Argh, it can't find "node" [09:36] Pynox: System can't find the file specified [09:36] Pynox: Oh wait, still gotta install [09:36] Pynox: X_X [09:37] tanepiper: you probably want to look at websockets as well for real time [09:37] tanepiper: check out http://substack.net/posts/9bac3e [09:37] aklt: Can anyone help? [09:37] Pynox: Yeah, I'm going to use sockets [09:38] Figaroo: anyone here ever tried cloud9? [09:38] mnbvasd_: aklt: I can't quite see the problem. [09:39] devdrinker: grr.. how are my nodeunit tests passing before test.done() is called even setting test.expect(num-of-asserts) doesnt help! [09:39] aklt: mnbvasd_: No? On my ubuntu I see "Decode 32 bytes Here is some dat" when printing the dec1 vaiable [09:39] mnbvasd_: aklt: oh sorry, yeah I understand. [09:40] tanepiper: Figaroo: yes [09:40] aklt: mnbvasd_: Can you reproduce? Maybe something strange is going on on my machine. [09:40] alek_br has joined the channel [09:40] agnat has joined the channel [09:41] Figaroo: tanepiper, do you know if they have an IRC channel somewhere, because when I try to run 'node index.js -w ~' all I get is an empty user directory folder in the files panel [09:41] mnbvasd_: aklt: it only decodes the first 128 bits if it ends on a 256bit word boundary? [09:41] tanepiper: Figaroo: #cloud9ide [09:41] Figaroo: #cloud9ide [09:41] Figaroo: thanks :P [09:42] aklt: mnbvasd_: Yes, it seems to leave out the last 16 bytes. [09:45] Kingdutch has joined the channel [09:45] sveimac has joined the channel [09:48] Pynox: Does anyone know how to compile my server with a batch shortcut? [09:49] Pynox: I tried [09:49] Pynox: "C:\cygwin\Cygwin.bat" "--cd node" [09:49] Pynox: And alot of other things but.. [09:49] Kingdutch: How would you normally compile... [09:49] Kingdutch: ooh windows [09:49] Pynox: Yeah, sorry xD [09:49] Kingdutch: batch I see [09:49] Kingdutch: Still early [09:49] sriley has joined the channel [09:49] Pynox: Do you have an idea? [09:49] Kingdutch: I'm ok with windows, I'm very happy with linux, can't help you with cygwin [09:49] Pynox: Argh [09:50] Kingdutch: It's wannabelinux for windows, just install linux lol [09:50] Pynox: xD [09:50] Kingdutch: Or buy a 2nd box (like I did :X) [09:50] Pynox: Nah, I don't want Linux [09:50] Lorentz: Or virtualbox it [09:50] Lorentz: Or vmware it [09:50] Pynox: Yeah [09:50] rikkert has joined the channel [09:50] Lorentz: Or qemu it, if it works on windows [09:50] Pynox: I might do Linux wit hVMWare [09:50] Pynox: But I'm too familiar with windows xD [09:53] mnbvasd_: aklt: var enc1 = enc.slice(0,32), [09:53] mnbvasd_: aklt: dec1 = decode(cryptkey, iv, enc1) [09:53] mnbvasd_: aklt: try just decoding enc ? [09:54] aklt: mnbvasd_: Well, I'm trying to show that decoding 32 bytes leads to an incorrect result, but adding a single extra byte leads to the correct result. [09:56] gozala has joined the channel [09:56] mnbvasd_: aklt: doesn't crypto work on blocks? [09:56] Figaroo: I'm using cygwin but thinking about installing a VM with linux. How are you running Node; how's your setup? [09:56] void_ has joined the channel [09:56] mnbvasd_: ACTION shrugs [09:56] mnbvasd_: I'm sorry it's a bit of a black box to me. [09:56] devdrinker: http://pastebin.com/xJf6UTj3 is this a bug [09:57] devdrinker: just prints out undefined over and over again [09:57] devdrinker: works as expected is array is [1] [09:57] devdrinker: or [1,2] etc [09:57] aklt: mnbvasd_: Yes, I think that may be right, but I am not particularly famiiar with the crypto module... [09:57] markwubben has joined the channel [09:57] Figaroo: people that run linux as their primary OS usually get a windows machine at first right? [09:58] aklt: mnbvasd_: But thanks a lot for your time. any help is appreciated because I need to have this working :-) [09:58] Figaroo: And it [09:58] Figaroo: And they usually do a dual boot setup? [09:58] Figaroo: Or do they just use VirtualBox? [09:59] bzinger has joined the channel [10:01] altamic has joined the channel [10:04] mnbvasd_: Figaroo: it depends on the person... I just run linux at work, and linux on my servers, and macos on my home laptop. [10:05] mnbvasd_: Figaroo: I use virtualbox to avoid having to dual boot when testing different linux distros. [10:06] Figaroo: Well if I had the money I suppose I'd get OS X. I guess that's similar enough to linux? [10:06] Kingdutch: Figaroo: Most people get a windows PC at first because it's the best known (either that or a mac), there's stuff linux does for me that windows can't ever do though [10:06] devdrinker: i run mac os x on laptop for about 3 months now (got spaces/exposes all the utils setup nicely), scared when I get the desktop back next month - its quad core intel box prev 10.04 - will need to tweek it to work like os x [10:07] Kingdutch: The problem is that Linux is aimed at users that know their way around computers a bit better than windows users, it expects you to do a lot of things yourself. You can make linux look like Win7 or Mac OS though (Although I haven't done it yet, I use the cmd line, hate the default desktop) [10:07] Figaroo: I want to get myself familiar with linux for development purposes because I'll most likely using linux on servers I develop on. [10:07] mnbvasd_: the only reason I can really see to run windows is for windows specific software. [10:07] [AD]Turbo: Figaroo, my setup is windows + cygwin + nodejs + mongodb [10:07] devdrinker: if doing stuff on CLR or need to use C#, F#, SQL server then windows [10:08] mnbvasd_: I think it's just best off to use what you prefer. [10:08] devdrinker: that extends to IronRuby, IronPython etc.. the DLR running on top of CLR is strong on windows than any mono implementation or DLR running on silverlight [10:08] Kingdutch: Figaroo: What I did a few years back was (((get my parents to))) buy a simple PC (Only 1 gig of ram, boy what a mistake) athlon processor, no gfx card (Although for a desktop I recommend atleast a lower end gfx card) and I installed linux on that [10:08] Figaroo: atm I'm using cygwin to run nodejs, like [AD]Turbo. [10:09] Kingdutch: I just have my windows PC to do all my schoolwork etc (School has windows so that works best imo although openoffice is fine too) and I can fuck-up the linux machine in every which way possible without really being afraid of losing anything [10:09] mnbvasd_: I just develop on my home linux server, or my mac laptop. [10:09] Kingdutch: (Although I did reinstall two days ago while forgetting my old HD back-up of windows was on there >.>) [10:09] Kingdutch: HDD* [10:09] Kingdutch: I've tried cygwin and hated it, because it intertwines with windows [10:11] CIA-121: node: 03Ryan Dahl 07master * r0999443 10/ (lib/timers.js test/simple/test-timers-linked-list.js): Expose link-list from timers.js; add tests - http://bit.ly/fZMxn2 [10:11] Figaroo: My parents never bought me a computer, I just used the "family" computer for the longest time, then we got some old old hand me downs which were slow, finally my sister gave me her Vista laptop to work on. [10:12] Figaroo: And forget installing linux on the hand me down, as I already tried and linux didn't support the wireless card. :P [10:12] mnbvasd_: ACTION shrugs [10:13] mnbvasd_: I've not come across unsupported hardware in years. [10:13] Kingdutch: That's another reason windows is more widely used [10:13] Kingdutch: Linux likes cables, ooh wireless nightmares [10:13] Lorentz: Get decent hardware and linux never complains about hardware. [10:13] mnbvasd_: wireless was a pita 8 years ago admitedly. [10:13] Lorentz: I haven't had an issue in a while. [10:13] Figaroo: I was forced to use an extremely old wireless card we had lying around to connect to our wifi [10:14] Kingdutch: mnbvasd_: Well my PC is like 5-6 years old [10:14] Lorentz: You can't just walk down to a shop and buy whatever and expect it to work in linux, no. [10:14] Kingdutch: (My linux pc) [10:14] Kingdutch: Anyway time for coffee bb [10:14] Figaroo: Fortunately I do have a job and savings, so eventually I'll be getting a macbook, but not before a car. Hehe. [10:15] skm has joined the channel [10:15] Figaroo: anyway, cygwin's directly is pretty much what linux's root directoy would look like, right? [10:16] sveimac has joined the channel [10:16] zorzar has joined the channel [10:17] peteatolia has joined the channel [10:20] isaacs: Figaroo: you could also get a linux laptop. they come pretty cheap [10:20] isaacs: and ubuntu is pretty [10:21] [AD]Turbo: how timers are implemented (in the low level) in nodejs? polling-like or interrupt like? [10:21] karboh has joined the channel [10:21] Figaroo: isaacs, what if I got a VPS for like $10 a month? [10:21] isaacs: Figaroo: that's kinda pricey, but has the advantage of being on the internet [10:21] Figaroo: are VPS not "real" enough [10:21] isaacs: nono, vps are fine [10:22] Figaroo: kk, wasn't sure [10:22] isaacs: just that messing around locally is super handy [10:22] isaacs: no scp'ing files around, etc. [10:22] Kingdutch: VPs can feel pretty damn real [10:22] Kingdutch: but yeh [10:22] isaacs: local vim is faster [10:22] isaacs: etc. [10:22] Kingdutch: if you lose internet [10:22] Kingdutch: Ooh vim :( [10:22] CIA-121: node: 03Ryan Dahl 07master * r29f48d4 10/ (lib/timers.js test/simple/test-timers-linked-list.js): A few more list clean ups - http://bit.ly/heLEvr [10:22] Kingdutch: Never learned how to use that, nano <3 [10:22] Kingdutch: Oh right, I'm not here, bb coffe :) [10:22] Kingdutch: e [10:23] Figaroo: yeah I haven't used vim and just went with nano [10:23] Figaroo: on cygwin [10:23] Wizek has joined the channel [10:23] Figaroo: but I'm wondering if linux's file system is as confusing as cygwin's [10:24] Figaroo: they both follow the FHS right? [10:24] mnbvasd_: it's not confusing if you understand the logic ;) [10:25] Figaroo: what is the logic, it seems like programs are scattered around everywhere, and every directory name is abbreviated... [10:27] mnbvasd_: short dir names are legacy, and locations are standard.. [10:27] mnbvasd_: other platforms just don't have standards for placing random files around your system. [10:27] Wizek: Hi there! I'm wondering which SQL modul is the best developed for Node, reliable and easy to use. What do you guys use, would recommend? [10:28] Figaroo: I would think a really good file system would be more organized. [10:29] Figaroo: Sure linux has legacy to live up to, and I'm not point the figure at linux. It just seems as though linux is still a CLI OS with a little GUI sprinkled on top [10:31] ttpva has joined the channel [10:32] Figaroo: anyway do you have some really, extremely good tutorials on explaining the linux file system clearly for beginners? ;P [10:32] mAritz: Wizek: general SQL or any particular db? [10:34] zorzar has joined the channel [10:35] Wizek: mAritz: I also need to pick a DB... If you can recommend a database as well, that'd be fine :) (given it has great node module I can use it with...) [10:36] skm has joined the channel [10:36] mikew3c has joined the channel [10:37] Kingdutch: Figaroo: /home = My documents, /etc = Program Files, /bin = All the executables, /sbin = All the executables that only root can execute, /var/log = Loads of logs files go here [10:37] gozala has joined the channel [10:37] Kingdutch: Then there's some more folders but I think those are the main ones you'll want to know [10:37] Kingdutch: Google probably has more answers [10:37] naan has joined the channel [10:38] naan: having issues with 0.3.4 on cygwin [10:39] naan: nothing happens when i run `node filename.js' [10:39] Figaroo: I'll just google it then, but any resources you recommend personally to getting up to par with this? [10:40] Kingdutch: No soryr, never really read into it, usually when I type an error msg into google though I get the answer on some ubuntuforum or another [10:40] naan: even if i have console.log('aa') as the only line in my file [10:40] Kingdutch: http://techbu.com/2009/06/28/linux-file-system-explained-for-beginers <-- Figaroo: It has colory pictures, looks good [10:41] mAritz: Wizek: well, your choice of db entirely depends on your knowledge and requirements. if you want to use sql your node.js options are sqllight, mysql and postgresql (are there modules for others? i don't know) [10:41] naan: has anybody else seen this issue? dont even know what to google to resolve this issue :) [10:41] Kingdutch: naan, what if you just run the node interactive console? [10:41] Figaroo: Kingdutch, thanks, I love colory picture stuff! :D [10:41] Kingdutch: Yeh me too [10:42] TomY has joined the channel [10:42] skm has joined the channel [10:42] Kingdutch: Still haven't had coffee so now I'll really be off :') [10:43] teemow has joined the channel [10:43] common- has joined the channel [10:43] naan: Kingdutch: i am sorry to ask .. but how to run interactive console [10:43] Kingdutch: type 'node' [10:43] Kingdutch: hit enter [10:43] naan: newbie totally [10:43] altamic has joined the channel [10:44] naan: if i do that i get the error saying "argument must be a string" [10:44] Kingdutch: What happens? [10:44] naan: i think it expects a file name .. always [10:44] Kingdutch: node --version for me [10:44] Wizek: mAritz: I'm begining with SQL, so assume no knowladge. The Ideal choice for me therefore would be something that's both easy to learn (has good docs) and easy to use (one aspect of which is not to drive me crazy with insane depths of nested callbacks, handle those internaly) [10:44] mAritz: cygwin = fail... sorry, but it's true [10:44] naan: v0.3.4 [10:45] Kingdutch: If I type node on my linux box I get an interactive node shell that allows me to run lines of node code [10:45] mAritz: Wizek: postgresql. if you're just learning, do it right. [10:45] Kingdutch: such as console.log('hi'); [10:45] zorzar_ has joined the channel [10:45] Kingdutch: Gonna have to agree with mAritz on cygwin being fail =/ [10:45] mAritz: Wizek: look at some general postgresql tutorials first. [10:45] naan: okay .. like python and other shells [10:45] naan: but for me on cygwin it does not do that [10:45] naan: :( [10:46] Wizek: mAritz: What does postgresql has to do with my learning being done right? :D [10:46] mAritz: Wizek: https://github.com/ry/node/wiki/modules has 4 postgre modules as far as i can see [10:46] naan: yeah .. i know .. but i have to work with this only .. no other option [10:46] aklt: Hello again. i have traced the problem that is illustrated by https://gist.github.com/777621 [10:46] sveimac has joined the channel [10:46] mAritz: Wizek: mysql and sqlllight are too far from the sql specification [10:46] aklt: It seems that I run into an error around line 1110 of node_crypto.cc [10:47] aklt: Does anyone have experience with this? [10:47] derren13 has joined the channel [10:47] mAritz: postgre is commonly referred to as the best open source sql database. (of course there's no general "best", as your requirements define your experience with the db) [10:47] echosystm has joined the channel [10:47] echosystm: whats everyones js UI library of choice? [10:48] echosystm: i've always been really disapointed with whats out there and use GWT for almost everything [10:48] echosystm: but on this new project i cant use java [10:48] andoma: extjs [10:48] dsirijus has joined the channel [10:49] echosystm: it has to be free for commercial use andoma [10:49] echosystm: ie. BSD, MIT, Apache licensed [10:49] andoma: then i don't know of anything [10:49] echosystm: mm [10:50] naan: jquery and plugins provide good variety of modules [10:50] echosystm: i find jquery ui really lacking [10:50] naan: same here .. but no other choice .. [10:50] echosystm: and too many basic jquery plugins just dont work, or are too hard to get working [10:50] naan: personally i like extjs [10:50] naan: now sencha [10:50] echosystm: i like extjs too [10:51] naan: but they are not commertially free [10:51] echosystm: but my company wont shell out for licenses [10:51] naan: :) [10:51] echosystm: which sucks [10:51] naan: i meant :( [10:51] echosystm: extjs is the only library i have used that is good enough [10:51] naan: bad luck [10:51] kawaz_air has joined the channel [10:51] andoma: echosystm: change company then :) [10:51] naan: have you tried YUI .. they are in a way decent .. but as extensive as extjs itself [10:51] naan: but they have few good widgets [10:52] echosystm: i looked into YUI a year ago [10:52] echosystm: might have to give it another try [10:52] sriley: yui3 is really quite nice [10:52] naan: what about dojo? [10:52] devdrinker has joined the channel [10:53] naan: have not tried yet .. but have heard good things about it [10:53] echosystm: dojo doesnt have many widgets in comparison to YUI and ext [10:53] tmzt: dojos widget support is good if that what you want [10:53] echosystm: it is a good quality library though [10:53] tmzt: its jsonrest connected grid is awesome [10:54] tmzt: but you can actually creat most of the functionality fairly easy in plain jquery [10:54] echosystm: hey dojo seems to have got a huge facelift! [10:54] tmzt: with a lot more control over your dom and style [10:55] echosystm: i think im going to have to give dojo a decent try, it looks like it has improved a lot since i last used it [10:56] naan: cool .. dont forget to write about it [10:56] naan: :) [10:58] m64253 has joined the channel [10:58] unsoughtDesire: Does anyone here have experience with node-mysql? [10:58] zorzar has joined the channel [11:00] Figaroo: going to bed [11:01] unsoughtDesire: night! [11:02] Figaroo: night [11:03] k04n has joined the channel [11:03] naan: anybody tried 0.3 on cygwin [11:03] naan: ? [11:03] tmzt: Figaroo: try 5/month http://www.2host.com/support/aff.php?aff=115 [11:03] Figaroo: naan: me [11:04] nook has joined the channel [11:04] naan: Figaroo: having issue with running any source file with node [11:04] naan: node filename.js does not do anything [11:04] Figaroo: are you in the correct directory? [11:05] naan: yeah ..i am. otherwise i get file not found error [11:05] tmzt: no really, linux fhs and unix make sense when you really understand whats going on, for instance, some stuff is under /usr but /usr isnt always mounted so its neccessary for some basic binaries and libraries to be under /bin /sbin /lib etc. [11:05] naan: command just gets finished .. but no output [11:06] naan: even though i have console.log statement [11:06] tmzt: naan: finished? it depends on what the js file does, but it only prints if you have a log statement in it [11:07] naan: tmzt: finished means .. runs without errors .. i had written a http server .. which used to run on 2.6 [11:07] sriley: had 0.3 running on my windows machine via cygwin, was working, computer is dead atm though [11:07] Figaroo: tmzt, looks good, but why does it say 3 bucks on the more info page, and only $2 on the home page. :\ [11:07] ntelford has joined the channel [11:07] eikke has joined the channel [11:08] Figaroo: isn't it util.log? [11:09] romainhuet has joined the channel [11:09] tmzt: Figaroo: its a little weird, I just went with the 5 for more ram and 10tb of tranfer (at gig speeds) [11:09] Figaroo: I don't see any $5 one [11:10] tmzt: if your confortable doing the admin work yourself its a good option [11:10] mape: Figaroo: console.log is global [11:10] herbySk74 has joined the channel [11:11] Figaroo: admin work, what's there to it -- install node or whatever server I need, add files, done. [11:11] tmzt: click on the 2.99 theb it will show in the drop down as class B [11:11] tmzt: yep [11:11] Figaroo: mape: is console.log depreciated though? Why is there a util module? [11:11] mape: no sys is depreciated [11:12] mape: console.log is handy [11:12] Figaroo: tmzt, how good is their support? [11:13] tmzt: I havent had to call them, there a serial console login on the control panel [11:13] tmzt: I was able to resovle the issues I had [11:13] tmzt: throught that [11:13] geojeff has joined the channel [11:13] Figaroo: they give you a control panel? [11:13] tmzt: yeah for rebooting and reinstalling [11:14] tmzt: but everything else is on you, passed the normalb root ssh login [11:14] Figaroo: hmm [11:14] Figaroo: what's sas and sata? [11:15] tmzt: but, and against recommendations I installed ubuntu 10.10, I couldnt login to ssh and had to use the serial root console [11:15] tmzt: sas is more enterprise class drives [11:15] tmzt: serial attached scsi [11:16] Figaroo: these prices seem cheaper than http://fanaticalvps.com/unmetered-vps.php [11:16] Figaroo: it seem the longer I go without a VPS the cheaper the prices I stumble upon. :P [11:16] aklt: Hi again. I now beleive I have found a simple fix for the problem Illustrated in https://gist.github.com/777621 [11:16] aklt: The fix is here: https://gist.github.com/777730 [11:16] sveimac has joined the channel [11:17] aklt: Being an openssl noob I think it would be great if someone could verify this. Maybe I should post this to the mailing list? [11:17] Figaroo: anyway, I'm getting very tired now. I will definately remember this VPS hosting provider now. [11:17] skm has joined the channel [11:18] tmzt: thats 10/month, unless bw is your biggest concern [11:19] d0k has joined the channel [11:19] Fullmoon has joined the channel [11:19] unsoughtDesire: Slighly off topic... which would you guys recommend: node-mysql, or node-mysql-libmysqlclient? [11:19] tmzt: at least read 2s description of their hardware and why the way they do hosting is better (less bursty) but I will look into fanatical more for some other reasons [11:20] Figaroo: tmzt, yeah but for less than the same price I get 10TB [11:21] unsoughtDesire: The documentation for node-mysql-libmysqlclient seems more organized. [11:21] Figaroo: actually from the looks of it every one of their options is 10TB, strange. [11:22] unsoughtDesire: In terms of VPSes, I've been VERY happy with my Linode. [11:22] Figaroo: I'm not sure how much 10TB could support [11:23] Figaroo: I've compared linode with slicehost and fanaticalvps, I found fantatical to be the best of all three. [11:23] svenlito_ has joined the channel [11:23] unsoughtDesire: Hmm, I definately thought linode was superior to slicehost. [11:24] unsoughtDesire: I've never heard of fantatical though :P [11:24] tmzt: sure there are tradeoffs, any idea what kind of virtualization fanatical uses? [11:26] mape has joined the channel [11:27] Figaroo: tmzt, not sure what that is actually, I've very new to VPSes [11:29] kingdutch-web has joined the channel [11:29] kingdutch-web: I just realised node.js has 576 q/a's (Tagged anyway) on stackoverflow :O [11:29] kingdutch-web: That's huge [11:30] tmzt: xen, openvz, containers, kvm, etc. [11:30] unsoughtDesire: Anybody have any advice on mysql modules? [11:30] fly-away has joined the channel [11:30] unsoughtDesire: I'm really leaning towards node-mysql-libmysqlclient [11:31] Figaroo: tmzt, I don't know. It doesn't say on their site. Does it matter though? Also is 10 TB enough bandwidth? Would facebook choke on it? [11:32] fermion has joined the channel [11:34] charlenopires has joined the channel [11:36] Figaroo: SATA is flash drives? [11:37] booo has joined the channel [11:38] fangel: most flash drives are sata, but not all sata drives are flash.. :) [11:39] altamic has joined the channel [11:39] malkomal_ has joined the channel [11:41] Figaroo: well why would I want to get SATA drives? [11:42] unsoughtDesire: Faster than IDE :P [11:45] eee_c has joined the channel [11:45] skm has joined the channel [11:46] eikke has joined the channel [11:47] unsoughtDesire: Okay. [11:47] unsoughtDesire: Managed to get node-mysql-libmysql working right :) [11:47] booo: ['\\[bbox=(\\d+(\\.\\d+)?),(\\d+),(\\d+),(\\d+)\\]$' i want to do some think like this with clutch but assign this only to 4 variable. input is something like [bbox=13.21,12.233,5.4345,4.5] [11:48] booo: im confused by regex :) [11:48] rsms has joined the channel [11:50] Kingdutch: booo whatś the problem? [11:50] mraleph has joined the channel [11:50] hellp has joined the channel [11:52] booo: Kingdutch, the matching does not work. the mantissa of the first float gets assigned to the second variable [11:53] Kingdutch: Mantissa? [11:53] booo: would like to group (\\. \\d+) but this assigns the value matched to a variable [11:54] mikew3c has joined the channel [11:54] under_: if you have 5 sets of parens, you're gonna get 5 values back likely [11:55] Kingdutch: you lost me when you used the word Mantissa, googled it now I'm abck [11:55] Kingdutch: Euh, yeh, the matching works fine [11:55] sveimac has joined the channel [11:56] Kingdutch: First pair of parenthesis which should be 13.21 should be variable 1 and the 2nd var should be .21 [11:56] booo: but 13.21 should be in 1 and 12.333 in 2nd [11:56] booo: perhaps i make a stupid mistake :) [11:57] ttpva: is it possible to use coffeescript instead of JS for node.js ? [11:58] Kingdutch: Boo, no, it's the way regexp work, everything in brackets gets assigned to a var [11:58] mraleph: ttpva: npm install coffee-script [11:58] Kingdutch: Why can't you just pull 12.333 from the third variable? [11:58] ttpva: mraleph: but does it replace JS totally ? [11:58] mraleph: ttpva: what do you mean by totally? [11:58] Kingdutch: No JS needed [11:58] Kingdutch: Just write coffeescript [11:59] Kingdutch: means totally [11:59] under_: you prob want something like ([\d.]+), ([\d.]+), ([\d.]+), ([\d.]+) [11:59] ttpva: can I use coffeescript (ruby) to create a complete node.js software? [11:59] ttpva: ok [11:59] under_: you'll have to get escaping corrct [11:59] mraleph: you can write in pure coffeescript and launch it like coffee app.coffee instead of node app.js [12:00] mraleph: but of course JS will remain hidden inside :-) [12:00] Kingdutch: under_: He's probably using something like 'regex here' in which case the escaping is correct because i.e. '\\' = \ and '\\\\' = \\ [12:00] ttpva: ok, nice. thanks [12:01] Kingdutch: y'd you want coffee instead of javascript? [12:01] mraleph: cause javascript is too much boilerplate? [12:03] under_: cause coffeescript is really nice to write. especially if you are used to python [12:04] Kingdutch: http://jashkenas.github.com/coffee-script/ <-- Shit's biased no need for the var decs at the top [12:04] Kingdutch: number = 42 can just be var number = 42 [12:04] Kingdutch: =/ [12:05] Kingdutch: Also, formatting one size with comments nicely and not the other is just, meh [12:06] Kingdutch: typeof elvis != "undefined" && elvis !== null, why not just if elvis !== null [12:08] Kingdutch: Also gimme a complex coffeescript function =/ [12:09] SvenDowideit has joined the channel [12:09] under_: go heckle people in #coffeescript :) [12:10] Wizek has joined the channel [12:11] Wizek: How is this possible: http://prntscr.com/1enj2 ? [12:11] Kingdutch: Nevah! [12:11] Kingdutch: Wizek: How do you go from 500-> 0? [12:12] nsswb has joined the channel [12:12] Kingdutch: Also what's exactly happening that you want explained? [12:12] MikhX has joined the channel [12:13] Wizek_ has joined the channel [12:13] Wizek_: dc'd >.> [12:13] Wizek_: So, how can I go from 500 to 0? [12:13] Kingdutch: Kingdutch> Wizek: How do you go from 500-> 0? [12:13] Kingdutch: * nsswb (~nsswb@ip-80-113-5-247.ip.prioritytelecom.net) has joined #Node.js [12:13] Kingdutch: Also what's exactly happening that you want explained? [12:15] Wizek_: I'm serving the page with Express's static provider, and this is what I get... I can assure you my file being served doesn't have a doctype declaration in the middle of it, so I suspect Node screwing up something [12:15] skm_ has joined the channel [12:16] zorzar has joined the channel [12:16] Wizek_: Kingdutch: So, basically I want my line 501 to be served in place, as well as line 502 and the others... [12:18] Kingdutch: I suspect you or express screwing up something but I can't know without code [12:18] skm has joined the channel [12:19] Kingdutch: Can you paste the lines where you serve the static file? [12:20] stagas: Wizek_: connect version? [12:23] Wizek_: stagas: 0.5.0 [12:23] stagas: Wizek_: npm install connect@latest [12:23] stagas: and see if it happens again [12:24] eikke has joined the channel [12:24] tc77 has joined the channel [12:25] Wizek_: stagas: Yep, the same [12:25] kiddphunk has joined the channel [12:25] stagas: what's in line 501? [12:26] sveimac has joined the channel [12:27] Wizek_: nothing special, plain HTML: http://prntscr.com/1enm1 [12:28] Kingdutch: Wizek_: Can you show the file-serving code? [12:28] Wizek_: Kingdutch: yep, it's de default I think [12:29] Wizek_: Kingdutch: http://prntscr.com/1enml [12:29] Wizek_: Kingdutch: line 44 is where you see staticProvider used [12:29] Wizek_: Also, Node doesn't throw me any errors [12:31] stagas: Wizek_: move the div zone 5 div elsewhere in the html and see if it's the utf8 chars fault [12:31] stagas: so to see if it fails on those chars [12:31] stagas: it should break on another line [12:31] Kingdutch: stagas it's outputting till line 501 though [12:32] Wizek_: stagas: Actually, that document is lurking with UTF-8 characters, so that's the least I'd suspect [12:32] kawaz_air has joined the channel [12:32] Kingdutch: chokes after [12:32] Wizek_: but I'll move it, just to be sure [12:32] Kingdutch: Wizek_: What is the page being served below that btw [12:33] Kingdutch: Just some random page or is it looping the samep age? [12:34] Wizek_: stagas: moving caused the same error: cut off at line 500 [12:35] Wizek_: Kingdutch: it's simple HTML. It has some reoccuring elements there which is there because of the nature of the app I'm building [12:35] stagas: Wizek_: really weird. node --version ? [12:35] Wizek_: but it is stored in an html file [12:36] Kingdutch: Wizek_: I mean, when it wraps around at 0, is that a different page? Is it the same page starting at the top again? [12:36] Wizek_: stagas: v0.3.1 [12:37] Wizek_: Kingdutch: it's the same page, and actually it is served till the end at the second time (line 537) [12:37] Wizek_: so the sum of 1038 (including line 0) is being served [12:38] Wizek_: but the wierdest thig is how can the line counter be reset within the middle of the file, as it is calculated client side and not transmitted as I know... [12:38] Kingdutch: Sounds like a bug in express where it's maybe serving block by block as it reads from disk and then the entire file at once when it's finished [12:38] Kingdutch: Yeh that too [12:41] SamuraiJack_ has joined the channel [12:41] Kingdutch: That's chrome btw right? [12:41] Kingdutch: I don't even have line numbers next to my htlm [12:41] stagas: Wizek_: console.log(data) just before that line in /usr/local/lib/node/.npm/connect/0.5.4/package/lib/connect/middleware/staticProvider.js :) [12:42] stagas: Wizek_: https://github.com/senchalabs/connect/blob/master/lib/connect/middleware/staticProvider.js#L113 [12:42] Wizek_: Kingdutch: now I reduced the file length below 500 lines, and it gives me the same error, (unexp. end of inp.) but it doesn't serve the page twice now [12:42] Wizek_: Kingdutch: Yeah, it's chrome [12:43] Wizek_: Kingdutch: it isn't the elements page I've taken the screenshot from, but the scripts page, because that's where the error is navigating me when is clicked [12:43] Wizek_: stagas: doing it [12:44] MikhX has joined the channel [12:44] Kingdutch: you had a chrome error without telling us (Or I missed it =/ [12:44] Kingdutch: ) [12:44] Kingdutch: :O [12:45] Kingdutch: But ah ok [12:49] m64253 has joined the channel [12:50] altamic has joined the channel [12:52] Wizek_: hmm [12:52] Wizek_: interesting [12:52] ph^ has joined the channel [12:53] Wizek_: it seems it outputs the right data [12:54] Wizek_: stagas: So the error is either in lower level Node, or in my Chrome [12:54] Wizek_: http://prntscr.com/1enpp [12:54] Wizek_: Kingdutch: What would you like to know? [12:55] stagas: Wizek_: try firefox! :) [12:55] altamic has joined the channel [12:57] Kingdutch: Next suggestion: Slim your code as small as possible, while reproducing the problem, make a gist, post it to the mailinglist [12:57] Kingdutch: My way of serving a .html file does a 3000 line file (Although itś just text, no tags) just fine [12:57] sveimac has joined the channel [12:59] broofa has joined the channel [12:59] Wizek_: stagas, Kingdutch: oh, my gawd... this was the problem: http://prntscr.com/1enq5 [13:00] Wizek_: too bad chrome didn't provide better error msg... [13:00] Kingdutch: lol [13:00] Wizek_: and displayed the page being served twice... [13:01] Wizek_: Thanks for you help Kingdutch and stagas! :) [13:01] Kingdutch: np [13:04] matt_c has joined the channel [13:06] zorzar has joined the channel [13:07] lukegalea has joined the channel [13:10] kawaz_air has joined the channel [13:10] malkomalko has joined the channel [13:11] eee_c has joined the channel [13:11] altamic has joined the channel [13:12] perlmonkey2 has joined the channel [13:12] eikke has joined the channel [13:25] Druid_ has joined the channel [13:26] m64253 has joined the channel [13:26] proppy has joined the channel [13:27] c4milo1 has joined the channel [13:27] proppy: is there something similar to celery (task queue) for node ? [13:28] sveimac has joined the channel [13:29] arpegius has joined the channel [13:30] wmealing_ has joined the channel [13:33] SamuraiJack__ has joined the channel [13:34] ph^_ has joined the channel [13:35] djanowski has joined the channel [13:36] zomgbie has joined the channel [13:36] altamic has joined the channel [13:36] Sembiance: morning :) [13:38] tg has joined the channel [13:39] ashleydev has joined the channel [13:43] pietern has joined the channel [13:43] altamic has joined the channel [13:43] TomY has joined the channel [13:44] chapel: Wizek_: do you know chrome has a console and inspector that would show you that error [13:46] Wizek_: chapel: I do, and if you scroll back, I prowided screenshot of what the error looked like, and what the console said [13:46] margle has joined the channel [13:47] chapel: sorry didn't see that, came in half way [13:49] Wizek_: chapel: you can have a look at it checking IRC log. It looked quite strange [13:50] zorzar has joined the channel [13:51] Ari-Ugwu has joined the channel [13:58] sveimac has joined the channel [14:01] fumanchu182 has joined the channel [14:02] davidsklar has joined the channel [14:02] Evet has joined the channel [14:04] eikke has joined the channel [14:09] zorzar has joined the channel [14:09] hornairs has joined the channel [14:11] tanepiper: would this be any use for nodejs on windows? http://veridium.net/programming-tutorials/asynchronous-file-system-monitor/ [14:15] matt_c has joined the channel [14:18] eee_c has joined the channel [14:19] adambeynon has joined the channel [14:19] podman has joined the channel [14:20] zined_ has joined the channel [14:20] hunterloftis has joined the channel [14:21] herbySk has joined the channel [14:21] ivanfi has joined the channel [14:22] amacleod has joined the channel [14:23] jacobolus has joined the channel [14:24] backthatzachup has joined the channel [14:25] sivy has joined the channel [14:27] saschagehlich has joined the channel [14:27] podman has joined the channel [14:28] jacobolus has joined the channel [14:28] sveimac has joined the channel [14:29] jacobolus has joined the channel [14:36] booo has joined the channel [14:38] lukegalea has joined the channel [14:40] zorzar has joined the channel [14:42] rn has joined the channel [14:42] davglass has joined the channel [14:43] rn: hello, building 0.3.4 with MinGW in MSYS [14:44] rn: v8 (SCons uses MSVC to build that) bombs with missing windows.h [14:44] shaver: install the Windows SDK, I would suggest [14:44] rn: i have that [14:45] jacobolus has joined the channel [14:46] rn: i have 6.0A, 6.1, 7.0. it looks like the problem is not having run the setenv.bat file form msvc, but i can't run it inside bash ;) [14:46] rn: shouldn't SCons take care of its environment? [14:46] caolanm has joined the channel [14:47] sveimac has joined the channel [14:49] russ_nyc has joined the channel [14:50] adambeynon has joined the channel [14:53] malkomalko has joined the channel [14:55] cgutierrez has joined the channel [14:55] matjas has joined the channel [14:55] ron_frown has joined the channel [14:56] zorzar has joined the channel [14:58] cgutierrez_ has joined the channel [14:59] bradleymeck has joined the channel [15:00] jherdman has joined the channel [15:00] zorzar_ has joined the channel [15:01] altamic has joined the channel [15:02] claudiu__ has joined the channel [15:02] gf3 has joined the channel [15:03] montylounge has joined the channel [15:03] jimt has joined the channel [15:04] c4milo has joined the channel [15:05] jakehow has joined the channel [15:07] akahn has joined the channel [15:10] ben_alman has joined the channel [15:13] rpflo has joined the channel [15:13] mbrochh has joined the channel [15:13] mbrochh has joined the channel [15:13] piscisaureus has joined the channel [15:14] figital has joined the channel [15:14] arpegius has joined the channel [15:15] bubi has joined the channel [15:16] mAritz: why are there so many people who want to run node nuder windows? :( [15:17] bradleymeck: cause ppl love windows for gaming [15:17] bradleymeck: idk [15:17] bradleymeck: that and anyone i show linux to thinks its ugly [15:17] bradleymeck: well consumers [15:17] russ_nyc: because they're used to pointing and clicking to get everything they want and are afraid of the black void called "cmd" [15:17] mraleph: use mac os x then. it's sexy like hell [15:18] mraleph: and you still kind of stare into black void. [15:18] ringomanatee has joined the channel [15:18] zined_: bradleymeck: so you introduce linux the wrong way - everyone i show linux to loves it ;-) [15:18] bradleymeck: cmd %PATH% on most windows "power" users is waaaay to long [15:18] zomgbie has joined the channel [15:18] bradleymeck: make a fin bin folder windows your directory structure is terribad [15:19] russ_nyc: because they are so used to visual studio and break-point programmign that they can never go back to printf debugging? [15:19] mwilliams_ has joined the channel [15:19] bradleymeck: ACTION is currently working in visual studio and appreciates the debugger, even if the api is funky [15:20] podman has joined the channel [15:20] eee_c has joined the channel [15:20] podman has left the channel [15:20] russ_nyc: i worked in vs for 5 years and it was hard going back to text-mate [15:21] russ_nyc: i kept trying to press f5 [15:21] shaver: I've been trying Eclipse for some C++ work [15:21] russ_nyc: and expecting my app to run [15:21] russ_nyc: intellij is the closest to visual studio in the mac world, but it doesnt support node [15:22] bradleymeck: code completion in js is hard [15:22] bradleymeck: but its what i want [15:22] podman_ has joined the channel [15:23] russ_nyc: visual studio did an ok job, but once you had jquery it was all over the place [15:23] shaver: it's not *that* hard [15:23] shaver: doctorjs does it [15:23] rn: mAritz: i want to run node on windows cause that's what's the corporation i work for uses. [15:24] russ_nyc: can you run a vm in windown, like virtualbox? [15:24] russ_nyc: that what i did for ruby development before i had a mac [15:24] bradleymeck: doctorjs doesnt do completion it just parses [15:24] bradleymeck: russ yes [15:25] rwaldron_ has joined the channel [15:25] mAritz: rn: vm > cygwin etc [15:26] russ_nyc: yeah, dont even try cygwin, i wanted to do this for ruby and it was a nightmare [15:26] russ_nyc: mo cygwin is good for just ssh and other basic bash commands [15:26] mAritz: putty -> ssh to linux -> win [15:26] rn: mAritz: yeah but i'm not allowed to run a vm. or cygwin, for that matter. almost got me fired. ;) [15:26] paulrobinson has joined the channel [15:27] mAritz: then quit and look for a company that doesn't have a stick up their bottom [15:27] rn: mAritz: thank you for the productive advice. [15:27] shaver: it is always nice when someone has a simple solution to your problmes [15:27] shaver: and it's very common on IRC, one of my favourite things about it [15:28] shaver: rn: you know what you should do about your problem? just don't have that problem! [15:28] brianc: so I think someone yesterday in here was implying it was bad strict mode was being added to v8. was I just misreading or is it bad for some reason? [15:28] bradleymeck: rn are you trying to work on local fs or just want node to do some random stuff? [15:28] bradleymeck: brianc I am against strict mode [15:28] bradleymeck: so you read right [15:29] bradleymeck: only thing im for in strict mode is removing arguments.callee [15:29] shaver: what don't you like about strict mode? [15:29] rn: bradleymeck: random stuff, like zombie.js [15:29] bradleymeck: it breaks code [15:29] shaver: (wondering if it's the same stuff I don't like) [15:29] bradleymeck: as a side effect [15:29] shaver: well, it breaks code if that code opts in to it [15:29] bradleymeck: no [15:29] shaver: how so? [15:29] bradleymeck: if and strict mode code accesses non-strict code it breaks if rules are broken [15:29] bradleymeck: any* [15:30] shaver: can you give an example? [15:30] brianc: basically if any script turns strict mode "on" all the scripts are checked against strict mode [15:30] shaver: non-strict functions called from strict ones shouldn't be subject to stricture [15:30] brianc: ? [15:30] hobodave has joined the channel [15:30] shaver: brianc: I don't believe that to be the case at all [15:30] brianc: my statement was missing the critical piece of punctuation which would change it into a question [15:30] shaver: ah [15:30] shaver: yes, in which case a shorter response would have been "no" [15:31] brianc: haha [15:31] bradleymeck: function foo(){"use strict";bar()};function bar(){console.log(arguments.callee)} [15:31] bradleymeck: bar will work outside of foo [15:31] bradleymeck: bar will die inside of foo [15:31] shaver: ah, I see [15:31] shaver: access to strict-mode stuff [15:31] shaver: but you like the callee removal [15:31] shaver: so are there other examples? [15:31] bradleymeck: so if you have a factory function any thing wrapping your stuff, it may just blow up without your knowledge [15:32] shaver: like, this-coercion isn't there [15:33] shaver: like [15:33] bradleymeck: so even "if" you could have a faster more optimal etc non-strict version by using runtime codegen (Function/eval), it will fail, so you must test for strict mode if you want to optimize because strict mode may stop your optimization [15:33] shaver: function foo() { "use strict"; return [this, bar()] } function bar() { return this; } [15:33] shaver: gives [undefined, ((Global object))] [15:34] shaver: direct eval inside a use-strict function is strict, but that's the code in question opting in to it [15:34] prettyrobots has joined the channel [15:34] shaver: I think arguments.callee-ectomy is worth the breakage for that specific case [15:35] bradleymeck: true, but the fact is it is an unknown side effect to the function being called, which is why im against it, so if you prototype something in strict and it is extended w/ non-strict it dies [15:35] bradleymeck: strict mode encourages strict or die policies [15:35] shaver: you could have that unknown side-effect from a getter that throws, too [15:35] shaver: any time you touch an object that you don't know about, you have to be defensive (or just let it break you if that's its intent, which is often just fine) [15:36] bradleymeck: the question is why are you running code you dont know about [15:36] shaver: hmm? [15:36] bradleymeck: thats the point of avoiding eval [15:36] shaver: you're running a library [15:36] shaver: jQuery can opt into strict without its clients needing to [15:36] bradleymeck: if you dont trust the lib why are you running it [15:36] shaver: and vice versa [15:37] rn: so i installed scons-1.3.1, ripped out scons-local-1.2.0 and tweaked scons invocations. make now fails with Build failed: -> missing file: 'C:\\MinGW\\msys\\1.0\\home\\roman\\wc\\node-v0.3.4\\build\\default\\libv8.a' [15:37] bradleymeck: i see what people want, but i dont see what they get besides restrictions, if you want to get more complicated injection attacks still work in strict mode [15:37] shaver: I don't think it's an issue of "trust" for arguments.callee (a painful security issue for objcap systems) to disappear [15:37] bradleymeck: callee wasnt really an issue arguments.caller was [15:37] rn: and before that: scons: warning: Ignoring missing SConscript 'obj\test\release\SConscript' [15:37] shaver: oh, sorry [15:38] shaver: yes, OK, sorry, let me start over [15:38] rn: File "C:\MinGW\msys\1.0\home\roman\wc\node-v0.3.4\deps\v8\SConstruct", line 1109, in BuildSpecific [15:38] shaver: I *don't* like .callee being elided [15:38] bradleymeck: callee is not a security issue* [15:38] shaver: it's being done to clear the path for ES6 "this function" sort of construct, I think [15:38] slaskis: anyone here used fugue? or maybe wrote it? [15:39] bradleymeck: shaver no, just name your function [15:39] bradleymeck: thats their goal it seems right now [15:40] bradleymeck: i mean having a this construct on a function that is already accessible by name would be kinda redundant [15:41] ehaas has joined the channel [15:41] shaver: I wonder if TC-39 wrote up anything summarizing the reasons for each stricture [15:41] shaver: that would be valuable [15:43] bradleymeck: it probably is somewhere [15:45] bradleymeck: now if strict mode had affected an entire page rather than the gobbly gook its going to put on figuring out if you are under strict mode, id be ok. cause until that occurs i can make crud do terrible things even in strict mode, just makes me have to write a bit more [15:45] ringomanatee: Is there any clean way to reduce an array to a unique set? values = strings. [15:46] bradleymeck: v8: [1,2,3,4,5,5,6,4,3,2,2,2].filter(function(item,index,arr){return arr.indexOf(item)==index}) [15:46] v8bot: bradleymeck: [1, 2, 3, 4, 5, 6] [15:46] Yuffster has joined the channel [15:46] rn: simply running scons in deps/v8 works [15:47] bradleymeck: and it makes a .a? [15:48] rn: bradleymeck: wait a bit, it's still running [15:48] unlink: I'm seeing some interesting memory usage characteristics of this script: https://gist.github.com/778078 [15:48] mediacoder has joined the channel [15:48] unlink: If I run it with a big file, node seems to hold the whole file in RAM (based on top). However, if I don't hold on to a reference to "fs", that behavior seems to go away, and node has nominal memory usage. [15:48] bradleymeck: unlink, whats interesting, without cacheing it probably blows up high then down low [15:49] EyePulp has joined the channel [15:49] bradleymeck: dont hold a reference to fs? [15:49] unlink: bradleymeck: actually it stays high (~2x the size of the file) [15:50] bradleymeck: interesting, *goes to check something* [15:50] unlink: that's fine for this case, but what if I want to use other things than readFile in my application? [15:51] bradleymeck: well generally i dont load a whole file into ram like that [15:51] bradleymeck: so i think thats true for most ppl here, so going to look if something is stuck on an object [15:51] mraleph: unlink: you should not use top to measure memory usage. [15:52] warz has joined the channel [15:53] bradleymeck: nope its doing what the code says, might not be ideal, but i cant think of a better way (grabbing chunks then copy concatting to a whole) [15:53] bradleymeck: bleh encodings [15:53] shinmei has joined the channel [15:53] cronopio has joined the channel [15:53] cronopio: Hi noders!! [15:54] bradleymeck: ello [15:54] mraleph: unlink: both C++ runtime and V8 can allocate OS memory but not use it for anything. [15:54] rn: bradleymeck: nope, (cd deps/v8 && scons) produces no .a file [15:54] rn: there's v8.lib [15:54] altamic has joined the channel [15:54] mraleph: --trace-gc will give your precise size of V8 heap [15:55] podman has joined the channel [15:55] podman has left the channel [15:56] rn: i tried to just (cp v8.lib v8.a; cd ../..; make), that goes to build v8.a again [15:57] cronopio: Has anyone had any problems with formidable?, this it my code http://gist.github.com/778073 [15:57] cronopio: only show de console.log from 9 line [15:57] unlink: mraleph: mraleph fair enough, but according to smaps, node is using more than the file size in terms of Private_Dirty RSS [15:58] unlink: (in this case, the file is 142MB) [15:58] cronopio: and result bytesReceived: null and bytesExpected: null the form have the correct enctype [15:59] softdrink has joined the channel [16:00] brapse has joined the channel [16:00] josephhitchens has joined the channel [16:01] eikke has joined the channel [16:01] mraleph: unlink: I suggested once that node should switch to custom allocator instead of built-in C++ one (at least for buffers) to track memory usage in realtime... [16:02] dguttman has joined the channel [16:04] jimt_ has joined the channel [16:05] danoyoung has joined the channel [16:06] tfe_ has joined the channel [16:06] fermion has joined the channel [16:06] trotter has joined the channel [16:06] unlink: I suspect that a reference to the buffer pool in fs is getting leaked somehow [16:08] zorzar_ has joined the channel [16:09] jimt has joined the channel [16:12] jetienne: mraleph: in v8, do you use normal new/malloc ? or your own ? [16:13] mraleph: jetienne: some pieces of code use malloc. but JS heap is managed by our own memory manager which requests raw memory from OS [16:13] jetienne: ok [16:14] jimt_ has joined the channel [16:14] charlenopires has joined the channel [16:15] dtrasbo has joined the channel [16:16] ph^ has joined the channel [16:19] jimt has joined the channel [16:21] portia has joined the channel [16:22] kolbyjack has joined the channel [16:23] heavysixer has joined the channel [16:26] jpick has joined the channel [16:27] creationix has joined the channel [16:27] tylerstalder has joined the channel [16:28] vnguyen has joined the channel [16:29] montylounge has joined the channel [16:30] hornairs has joined the channel [16:30] omni5cience has joined the channel [16:30] matclayton has joined the channel [16:33] slaskis: is there a way to get more stack traces in node? i saw something about it in a presentation before, is that in any release? [16:33] slaskis: ryah: ^ [16:33] mwilliams_ has joined the channel [16:34] paulrobinson has left the channel [16:35] pquerna: slaskis: there is some stuff in master for a debugger; But no, the branch to get more stacks from events was not merged due to performance concerns. [16:35] pquerna: slaskis: i think ryah intends to revisit it at a future date, but right now its not in. [16:35] pquerna: (ie, make it runtime selectable / turn on with a --debug command line or an api) [16:35] eee_c has joined the channel [16:38] stepheneb has joined the channel [16:38] slaskis: pquerna: thanks, that's good to know [16:38] dmcquay has joined the channel [16:39] saschagehlich has joined the channel [16:39] Determinist has joined the channel [16:39] altamic has joined the channel [16:39] Determinist: ah, this makes more sense :D [16:40] eikke has joined the channel [16:40] StevenSoroka has joined the channel [16:40] Determinist: hey guys, any place where i can find the current status of ES5 support under node? [16:40] StevenSoroka has left the channel [16:40] dguttman has joined the channel [16:40] StevenSoroka has joined the channel [16:41] curtisc has joined the channel [16:41] kjeldahl has joined the channel [16:41] Kingdutch has joined the channel [16:42] sprout has joined the channel [16:42] mraleph: almost everything except for strict mode is supported. [16:44] isaacs has joined the channel [16:45] BillyBreen has joined the channel [16:45] Determinist: mraleph: sweet. thanks. [16:46] mraleph: Determinist: there are certain number of issues (http://code.google.com/p/v8/issues/list?can=2&q=label%3AES5) related to supported ES5 features... but I think majority of tests from es5conformance suite passes. [16:48] tisba has joined the channel [16:49] robotarmy has joined the channel [16:50] erlnoob has joined the channel [16:55] tg has joined the channel [16:55] iszak has joined the channel [16:55] iszak has joined the channel [16:57] briznad has joined the channel [17:00] stepheneb has joined the channel [17:00] stephank has joined the channel [17:00] yozgrahame has joined the channel [17:02] alek_br has joined the channel [17:04] benburkert has joined the channel [17:04] altamic has joined the channel [17:04] ashleydev has joined the channel [17:06] jchris has joined the channel [17:08] dguttman has joined the channel [17:08] DRMacIver has joined the channel [17:09] DRMacIver: So what's recommended for node.js package management? Last time I used it I used kiwi, but that seems to have the unfortunate feature that the site it thinks it's supposed to get packages from has turned into a webcomic [17:10] Kingdutch: npm? [17:10] tmzt: bingomanatee: no, sammy.js (quirkey.com) is a client side equivalent of express, it has some neat features like making #whatever bavigation work with a similar js structure to express and full regex and apams support [17:11] Kingdutch: DRMacIver: Google for: "Node Package Manager" [17:11] pifantastic has joined the channel [17:11] tmzt: bingomanatee: it also supports forms that post to #whatever and can do the validation and post them via ajax post and put [17:11] fille12 has joined the channel [17:11] fille12: hello [17:12] fille12: finally some one here [17:12] tmzt: bingomanatee: from what Ive seen so far its very clean, no js in the jade/html is needed and no explicity event binding [17:12] DRMacIver: ok. Thanks. [17:12] tmzt: explicit [17:12] Kingdutch: fille12: Always people here [17:13] fille12: kingdutch strange last time i checked it was empty maybe i spelled it wrong then [17:13] Kingdutch: fille12: You might have done #nodejs (no .) although there should be people there too [17:13] Kingdutch: Not sure could be [17:13] Kingdutch: What can we help you with today? [17:13] tmzt: fille12: if you went to #nodejs it should have told you to come here [17:14] broofa has joined the channel [17:14] Kingdutch: tmzt: What's the best way to handle both a non-js (I.e. search engine, stupid user) and js based nav? [17:14] sepehr has joined the channel [17:14] fille12: tmzt: and i followed it [17:14] Kingdutch: I'm thinking of just sending the requested page with some JS that'll take over navigation [17:15] fille12: anyway now that i know u excist i guess i will hang around [17:15] femtoo has joined the channel [17:15] kawaz_air has joined the channel [17:16] jchris has joined the channel [17:17] tmzt: Kingdutch: thats what Im trying to figure out [17:17] tmzt: sammy also has a normal url handling module, I dont know if forward/back still work with it [17:17] Kingdutch: I guess it's what most people wanna figure out with node to get pretty nav [17:18] Kingdutch: Well, # + HTML5 can make forward/back work [17:18] Kingdutch: It's just what to serve as index [17:18] zorzar_ has joined the channel [17:19] trotter has joined the channel [17:21] Kingdutch: If I get a JS user they want the JS to load the page [17:21] Kingdutch: But I also want to send them the right page asap [17:22] langworthy has joined the channel [17:22] fille12: just wondering is it possible to deploy node.js on appache or is it just a seperete socket server [17:23] fille12: was that a silky question? :D [17:23] Kingdutch: right I wandered off, you also need to send non-js users the right page without JS [17:24] Kingdutch: That was a silly question, although I've learned bad questions don't exist, only bad answers so here goes. [17:24] nickj224 has joined the channel [17:24] Kingdutch: node.js can replace apache although they don't really serve the same goal [17:25] curtisc has joined the channel [17:25] Kingdutch: node.js is here to run your JavaScript scripts which could be anything you want, a mail server, a web server (like apache), an irc server, etc. or a combination of these things in one node process (that's the power of the event loop) [17:25] Aria has joined the channel [17:25] Kingdutch: Apache is just one thing, a thread based webserver which serves web-content (And through modules can also serve things like php), it's a different thing. [17:26] marcab has joined the channel [17:26] fille12: okej , so do u know any good hosting companies that offering node.js? [17:27] tekky has joined the channel [17:27] mgutz has joined the channel [17:28] Kingdutch: Well, if you run linux or mac os you can run it yourself, on windows you could use Cygwin (Although that piece of ... seems jinxed), atleast for development it's a good and cheap choice [17:28] noahcampbell has joined the channel [17:28] Kingdutch: (You could use virtualbox or something similair on windows to run linux in) [17:28] EyePulp: fille12: https://no.de/ [17:28] Kingdutch: Otherwise I know of two, just can't remember their names [17:28] gekko27 has joined the channel [17:28] amerine has joined the channel [17:31] benburkert has joined the channel [17:31] mattly has joined the channel [17:31] tbeseda has joined the channel [17:36] q_no has joined the channel [17:37] sprout has joined the channel [17:37] w0rse has joined the channel [17:38] dgathright has joined the channel [17:39] gekko27: n00b question - just installed node on Cygwin and looks like it worked correctly, yet can't get any response from a simple console.log("foo"); call... any ideas anyone? :( [17:40] brianc: gekko27: does "node --version" work on the command line? [17:40] Kingdutch: I'm gonna report this as a bug since I've got the same issue reported this morning [17:41] gekko27: yeah - "v0.3.4" [17:41] Kingdutch: Unless you were here this morning [17:41] gekko27: nope, just logged on for first time Kingdutch! [17:41] blueadept_work has joined the channel [17:41] Kingdutch: K thought so [17:42] Kingdutch: Now just to find out how to report a bug [17:42] banjiewen has joined the channel [17:42] Kingdutch: lol [17:42] gekko27: haha [17:42] isaacs: slaskis: YES! [17:42] gekko27: Maybe I'll try an older version just to make sure it's not my cygwin setup [17:42] brianc: gekko27: try replacing "console.log" with "process.stdout.write" [17:42] isaacs: (re: no.de plans to recognize package.json) [17:43] Kingdutch: gekko27: I'd try a newer version [17:43] Kingdutch: isaacs: package.json? [17:43] xSmurf: ACTION is watching the 27C3 nodejs talk [17:43] isaacs: Kingdutch: yeah [17:43] Kingdutch: What's package.json [17:43] isaacs: Kingdutch: package.json is the file you use to tell npm what your package looks like [17:43] blueadept has joined the channel [17:43] Kingdutch: xSmurf: Ah, good talk that is :) [17:43] isaacs: Kingdutch: npm help json [17:43] Kingdutch: Ah I see [17:44] isaacs: it's one of the main interfaces to npm, how you get it to do stuff with your codez [17:44] xSmurf: Kingdutch: sounds like it, just started it [17:44] isaacs: npm favors configuration over convention. [17:44] isaacs: because javascript is for anarchists [17:44] gekko27: brianc: just tried that, same symptoms - node simply does nothing [17:44] brianc: gekko27: okay...might want to try with the latest 0.2.x tag [17:45] brianc: gekko27: try building that. i believe it's 0.2.6 [17:45] xSmurf: isaacs: nice imma steal that one :P [17:45] Kingdutch: brianc: How does reverting to 0.2 help? =/ [17:45] gekko27: brianc: great thanks, I'll give that a shot... [17:45] isaacs: xSmurf: JUST LIKE A JAVASCRIPTER! [17:45] xSmurf: lol [17:45] Kingdutch: isaacs: I'm gonna remember that convention and use it for my project, config over convention seemsn ice [17:45] isaacs: xSmurf: cuz, ya know, we just scrape the interwebz. we don't do any *real* coding [17:45] brianc: Kingdutch: might be a more stable branch? more likey to work under cygwin? [17:45] isaacs: Kingdutch: the only convention is to use a package.json to define it [17:45] Kingdutch: Yeh ok, point taken [17:46] xSmurf: isaacs: of course, copy paste is not how things are programmed? :P [17:46] brianc: Kingdutch: not sure though, maybe has to do w/ the way cygwin setup. i decided it'd be easier to get a linode & putty rather than go cygwin route so my experience is limited. :) [17:47] Kingdutch: Yeh I just got a seperate linux box with putty as well [17:48] aklt has joined the channel [17:48] mgutz: brianc: have you been using your postgres library on a "production" site? [17:48] zorzar has joined the channel [17:49] xSmurf: "There's currently a war going one, it's much better than the war on terror, it's the JS engine war" [17:49] xSmurf: nuyce [17:49] brianc: mgutz: no, i believe a few other people have, though their definition of "production" may not suit your own [17:49] hornairs has joined the channel [17:49] Kingdutch: xSmurf: Where do you hear that? [17:49] Kingdutch: Oh the talk? [17:50] xSmurf: ;) [17:50] brianc: mgutz: I've been hit by apachebench a bit on my little 512 meg linode with no issue and running the benchmarks gets about .4 milliseconds per query on my local but that's about as far as I can take you. Plan on doing a 'production' site with node & node-postgres starting in the next month or so [17:50] daniellindsley has joined the channel [17:51] brianc: mgutz: I am pretty confident is the most well tested of any node.js to postgres client [17:51] Kingdutch: Wait a sec, not sure if I even seen the node.js talk :O [17:51] Kingdutch: I thought I did [17:52] brianc: mgutz: this was written by someone random on the interwebs reviewing the libs http://www.colourcoding.net/blog/archive/2010/12/14/postgres-and-node.aspx [17:52] Kingdutch: guys what's the best approach to modularity in JS? [17:52] mgutz: brianc: I'm using the same configuration on Linode. Thanks, i'll read [17:52] isaacs: npm link packages are such a pita [17:52] isaacs: i blame mikeal [17:52] brianc: mgutz: i.e. I did not know the author or anything [17:53] halfhalo: ACTION giggles as his regex module starts chugging along [17:53] hornairs has joined the channel [17:53] brianc: mgutz: if you run into any issues you can catch me here sometimes and always on gChat [17:53] cronopio: Anyone can help me with this crash uploading a file using formidable => https://gist.github.com/778284 [17:53] mikew3c_ has joined the channel [17:53] cronopio: this is the code https://gist.github.com/778073 [17:53] xSmurf: Kingdutch: where you there? lucky you! [17:54] EyePulp: Kingdutch: modularity? like separate .js files and using require()/exports [17:54] xSmurf: I'll be there in the summer, but congress is sadly not worth the plane ticket for me :/ [17:54] c4milo: SubStack: you there? [17:54] cronopio: I dont know why said BytesExpected:null if the enctype of form are correct [17:55] andrei has joined the channel [17:55] Kingdutch: xSmurf: I certainly wasn't there, but I'm doubting wether I saw it on youtube or not [17:55] xSmurf: ah I see [17:55] xSmurf: youtube? yuck [17:55] xSmurf: http://events.ccc.de/congress/2010/wiki/Conference_Recordings [17:55] halfhalo: lets me use something like this in code: regex.construct("hello <%[]fieldone%>").if(" more <%[]regex%>").or(" less <%[]regex%>").call("home") [17:55] Kingdutch: EyePulp: Sorta like that, more like being able to swithc out *sql engines [17:55] xSmurf: full mp4 http://mirror.fem-net.de/CCC/27C3/mp4-h264-HQ/27c3-4142-en-nodejs_as_a_networking_tool.mp4 [17:55] nejucomo has joined the channel [17:57] xSmurf: in 720p [17:57] halfhalo: ACTION hates regex with a burning passion and never ever wants to deal with it again [17:58] brianmario has joined the channel [17:58] warz: im waiting for my dns settings to propogate so that i can test this, but will nodejs/socket.io work across domains? i want to run socket.io server on something like "foo.domain.com", and have "domain.com" use the socket.io client connecting to the server on the foo domain. [17:58] warz: will this work, or will browsers be like no way [17:59] tmzt: warz: maybe the flash socket will [17:59] Kingdutch: xSmurf: Ok that works, nice :) [17:59] tmzt: with the xml file on the correct domain [17:59] Kingdutch: halfhalo: RegEx <3 Solves all your problems [17:59] xSmurf: Kingdutch: enjoy! [17:59] andrei has left the channel [17:59] halfhalo: the hell it does [17:59] xSmurf: <3s RegExp [17:59] davidascher has joined the channel [17:59] xSmurf: there's a pcap module for node??? :O [17:59] xSmurf: awesome [18:00] AAA_awright has joined the channel [18:00] Kingdutch: You hava a problem, you use regex to solve it, now you have two problems :D [18:00] EyePulp: Kingdutch: I'm not aware of any broad DB abstraction layer built for node at this point. [18:00] warz: tmzt, so you're sure websockets wont work using this setup? [18:00] Kingdutch: It's just functionality like that in general [18:01] danielqo has joined the channel [18:01] halfhalo: ACTION writes regex like this now: regex.construct("I love <%[n]pie%> so very <%[]la%>").if(" and pie as <%[]well%> <%[]three%>").or(" and yellow as well").match("I love apple so very much and yellow as well").call(function(res){console.log(res)}); [18:01] bradleymeck has joined the channel [18:01] Kingdutch: Or a way for people to be able to add functionality to my app via a uniform plugin system (like no code hacking) [18:01] xSmurf: Kingdutch: lol [18:01] mgutz: XRegExp ! [18:01] EyePulp: Kingdutch: I know in django the ORM has a pretty robust method for easily swapping db's but that's a pretty complex bit of tech, and I don't think anyone's made that push in under node yet. [18:02] halfhalo: or I can call just regex.match which runs through all created regex objects by the master object [18:03] Kingdutch: EyePulp: All it really requires is for the calls in your project to be agnostic [18:03] brianc: Kingdutch: I'm not sure of one either, though I tried to loosely base the API of node-postgres on felixge's node-mysql [18:03] Kingdutch: Just let a seperate class handle translation to a specific database [18:03] Max-Might has joined the channel [18:03] Kingdutch: More interested in the uniform plugin system than ORM though [18:03] Kingdutch: brianc: That's a big step in the right direction :) [18:03] trotter has joined the channel [18:04] EyePulp: Kingdutch: "all it really requires" is a phrase used often by folks who haven't tried writing those solutions they speak of. =) [18:04] Kingdutch: ACTION wonders if he should hit his server with 1 million requests with a concurrency of 100 or not [18:04] Kingdutch: EyePulp: I have actually [18:04] Kingdutch: Just not JS [18:04] Kingdutch: :') [18:04] EyePulp: Ok. =) [18:04] tmzt: Kingdutch: what Im doing is serving either the full page as a jade template with the normal url [18:04] Kingdutch: jade? [18:05] brianc: Kingdutch: which server? [18:05] tmzt: yeah its a language that compresses html down into tab spaced trees [18:05] tmzt: and can run javascript inline [18:05] tmzt: (on the server) [18:05] brianc: Kingdutch: oh nevermind I see..your server [18:05] zorzar has joined the channel [18:05] brianc: Kingdutch: you can hit mine if you want: www.explodemy.com [18:06] Kingdutch: Already hitting mine, and I wanna see how my hello world holds up [18:06] brianc: Kingdutch: if I go off of IRC you know you wrecked my shit [18:06] tmzt: so I'm always serving the same page, but if they use the full url they get the contents of that url put in the div on the server side [18:06] Kingdutch: tmzt: Oh hmm interesting, but yeh how do you distinguish? [18:06] Kingdutch: Ooh I see [18:07] tmzt: if they use the js/sammy client then I internally request /ajax/whatever instead of #whatever [18:07] Kingdutch: Right [18:07] tmzt: although I'm considering using client side templates with sammy [18:07] Kingdutch: so what do oyu do if someone lands on a page at like yoursite.com/#something [18:07] gekko27: make install [18:07] tmzt: well I hope *I* dont't have to do anything [18:07] hunterloftis: creationix: Forked Step yesterday to make Step.safe(...).handle(function(err, index) { ... } ) - our step routines for SQL were getting pretty cumbersome [18:07] tapwater has joined the channel [18:07] gekko27: HA! wrong window... [18:08] Kingdutch: tmzt: You have to serve the initial index file [18:08] Kingdutch: Although that'll get reloaded immediately with #something [18:08] tmzt: hey syntax sugar question about async [18:08] tylerstalder has joined the channel [18:09] hornairs has joined the channel [18:09] montylounge has joined the channel [18:09] tmzt: Kingdutch: no, instead my template will give them whatever contents they want and the common js-based index page [18:09] tmzt: if they use a full url [18:09] gekko27: brianc: Woohoo! v0.2.6 is logging as expected using process.stdout.write [18:09] tmzt: if they just use / I give them index.jade [18:09] brianc: gekko27: awesomeness [18:10] Kingdutch: tmzt: Right, but what do you serve for yoursite.com/#something when it's from an external source [18:10] amerine has joined the channel [18:10] gekko27: brianc: cheers for that, now to learn what this node business is [18:10] Kingdutch: Since the server will get the yoursite.com/ request, but the user wants #something [18:10] Kingdutch: brianc: We should report 0.3 fails for cygwin though [18:11] tmzt: hey syntax sugar question about async, would it be valid syntax to have a series of async calls in sequence but just suspend the whole function, as in could this be tranlated to the evented concept used by node? [18:11] sandymahalo has joined the channel [18:11] brianc: gekko27: no worries. would recommend sticking to the v0.2.x branch for cygwin as v0.3.x branch is unstable [18:11] brianc: Kingdutch: indeed [18:11] gekko27: will do! [18:11] Kingdutch: brianc: But how? :') [18:11] tmzt: Kingdutch: external source? [18:12] Thorn has joined the channel [18:12] herbySk has joined the channel [18:13] tmzt: I would assume if you mean an entirely different server/site you either need an iframe or you need http.client and node acting as a proxy [18:13] tmzt: neither are ideal [18:13] tmzt: or something like jsonp with script [18:13] tmzt: or a hidden iframe [18:13] Kingdutch: No I mean the last page they visited wasn't your site [18:13] Kingdutch: Like the user clicked a bookmark to yoursite.com/#something [18:13] bradleymeck: tmzt continuations are not in v8 or node, but even if we had them they cause some concurrency issues that would probably need semaphores and would mean holding separate stacks in memory [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] tmzt: bradleymeck: 8 mean translations [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:14] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] tmzt: Kingdutch: guess your irc client works now stop hitting it with ab [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] brianc: haha [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] gekko27: is there a doctor in here? this man is having a fit! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] bradleymeck: tmzt i would avoid a code translation when changing behavior as you could easily introduce odd race conditions if code branches [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:15] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] tmzt: ctrol-c dude [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] halfhalo: ACTION gets the axe [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] bradleymeck: ... [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:16] Kingdutch: Ello World! [18:17] nickj224 has joined the channel [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] bradleymeck: ryah [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] tmzt: halfhalo: did he stick a delay in there or something? its barely flooding [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] mscdex has joined the channel [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:17] mscdex: ? [18:17] Kingdutch: Ello World! [18:17] halfhalo: hell if I know [18:17] bradleymeck: someone with op status save us [18:17] Kingdutch: Ello World! [18:17] Kingdutch: Ello World! [18:18] Kingdutch has left the channel [18:18] Kingdutch has joined the channel [18:18] Kingdutch: Ello World! [18:18] arpegius has joined the channel [18:18] Kingdutch: Ello World! [18:18] cyraxx: Ello Kingdutch! [18:18] Kingdutch: Ello World! [18:18] Kingdutch: Ello World! [18:18] Kingdutch: Ello World! [18:18] Kingdutch: Ello World! [18:18] Kingdutch: Ello World! [18:18] Kingdutch: Ello World! [18:18] sriley: wonder if anyone wont actually have him on their ignore lists after this [18:18] Kingdutch: Ello World! [18:18] Kingdutch: Ello World! [18:18] halfhalo: wait for it.... [18:18] Kingdutch has joined the channel [18:18] mgutz: why not a test room, geez [18:18] gekko27: lmao [18:19] Kingdutch: So what just happened? [18:19] Kingdutch: I accidentally pasted something 20 times [18:19] halfhalo: you spammed the shit out of the channel [18:19] zined_: nothing [18:19] Kingdutch: (Atleats that's how much I saw) [18:19] gekko27: it was more like 200 [18:19] Kingdutch: Then I saw you all saying "How long is this gonna take" [18:19] Kingdutch: And stuff like that [18:19] zined_: didn't see you posting anything Kingdutch [18:19] zined_: :) [18:19] Kingdutch: So it's good now? [18:19] brianc: yeah [18:19] xSmurf: don't do it again :p [18:20] mscdex: that's what she said [18:20] bradleymeck: take it to #node.js.bots [18:20] gekko27: Ello World! [18:20] gekko27: Ello World! [18:20] gekko27: Ello World! [18:20] gekko27: ... jk [18:20] zined_: was it good? `figlet NOOOOO` [18:20] Kingdutch: http://pastebin.com/LHDYwKwH <-- My chatlog [18:20] tmzt: Kingdutch: what client are you using? [18:20] Kingdutch: That was actually a copy paste from this morning when I had to generate 2000 lines of output to test something, xchat just delays long pastes to avoid flooding out [18:21] Kingdutch: Which usually for a 10 line paste that I actually want in here is fine [18:21] warz: well, for the record, websockets do appear to work cross-domain. [18:21] mscdex: warz: they always have [18:21] tmzt: Kingdutch: sounds like the full 2000 [18:21] warz: mscdex, ah ok cool. i asked earlier and wasnt sure. [18:21] stride: evening guys [18:21] Kingdutch: tmzt: Look at the pastebin lol, that's what I saw [18:21] tmzt: go back to 3.q with its tiny buffers [18:22] mscdex: node.js rules! [18:22] binarypie has joined the channel [18:22] stride: node-faq: show node.js to mscdex [18:22] node-faq: mscdex: node.js is "awesome!" [18:22] mscdex: BOTS! [18:22] zorzar has joined the channel [18:22] tylerstalder has joined the channel [18:22] halfhalo: OH THE HUMANITY [18:23] tmzt: Kingdutch: yeah we got quite a bit more than that [18:23] xSmurf: oh hey mscdex just to say thanks for node-asterisk ;) [18:23] boaz has joined the channel [18:23] mscdex: oh heh [18:23] xSmurf: had to fork & bend it a little but it was great to get me started [18:23] mscdex: yeah, it needs work [18:23] broofa has joined the channel [18:23] mscdex: and testing with asterisk > 1.4 [18:24] xSmurf: using it with 1.6 [18:24] tmzt: its AGI or something else? [18:24] Kingdutch: tmzt: Makes me giggle [18:24] Kingdutch: but anyway [18:24] xSmurf: tmzt: AMI [18:24] Kingdutch: Requests per second: 1487.65 [#/sec] (mean) [18:24] Kingdutch: Time per request: 67.220 [ms] (mean) [18:24] Kingdutch: Time per request: 0.672 [ms] (mean, across all concurrent requests) [18:24] Kingdutch: Is that any good? [18:24] perlmonkey2 has joined the channel [18:25] xSmurf: what a pain the ass though, farking hate asterisk ;P [18:25] mscdex: heh [18:25] tmzt: no sip server in node yet? [18:25] jakehow has joined the channel [18:25] xSmurf: tmzt: some people (MattJ?) were talking about it the other day hehe [18:25] mscdex: tmzt: wouldn't be very difficult depending on how far you wanted to go [18:25] xSmurf: but not yet, afaik [18:25] xSmurf: codec translation and everything? [18:25] xSmurf: uggh [18:26] pquerna: sip not difficult :x [18:26] tmzt: mscdex: hah right now I'm good with twilio [18:26] tmzt: now that I've got demo accounts working [18:26] pquerna: http://journal.paul.querna.org/articles/2006/03/27/why-sip-sucks/ [18:26] langworthy has joined the channel [18:26] xSmurf: what was it that I read the other day? something like "SIP is crazy, be nice with yourself and handle with care or you will go crazy too" ;) [18:26] pquerna: twillio++ [18:26] v8bot: pquerna has given a beer to twillio. twillio now has 1 beers. [18:26] mscdex: i spent the last three weeks giving node-ncurses some love. everything is much better now [18:26] mscdex: :> [18:27] tmzt: SIP has very little to do with the media interface or whatever [18:27] brianc: Kingdutch: depends on a large number of factors, but for a 512 meg linode, maybe check it against the same style app using rack or sinatra [18:27] tmzt: whether a splice() for node would work I don't know [18:27] tmzt: or something that can handle binary protocols efficiently [18:27] slaskis: hmm, writing a connect middleware is a bit tricky [18:27] softdrink: mscdex: 256 colors? [18:28] slaskis: i'm making a jsonp middleware, but it keeps complaining that i have to call writeHead before write... [18:28] tmzt: slaskis: blame http [18:28] Kingdutch: brianc can I hit yours? [18:28] Kingdutch: www.explodemy.com? [18:28] mscdex: softdrink: huh? [18:28] tmzt: reads the name again [18:28] Kingdutch: It's actually a linux box with 1GB mem and an AMD Athlon processor [18:28] Kingdutch: btw [18:29] dmcquay has joined the channel [18:29] halfhalo: sweet jesus it works! [18:29] slaskis: tmzt: how come? [18:29] brianc: Kingdutch: do it do it [18:29] brianc: Kingdutch: mine runs 3 postgres queries per request so it's gonna be way slower [18:29] piscisaureu_ has joined the channel [18:30] Kingdutch: brianc That counter you got on there is gonna go up by about a million though [18:30] tmzt: slaskis: you generally have to send a repsonse line and header before data [18:30] bradleymeck: is atexit guaranteed even if you kill a process? [18:30] brianc: Kingdutch: sweet [18:30] tmzt: bradleymeck: if it gets a signal, so KILL probably not [18:31] softdrink: mscdex: does node-ncurses' colorPair support 256 color terminal mode? [18:31] tmzt: otherwise read the libc info pages [18:31] Kingdutch: brianc: It's running [18:31] brianc: here we go! [18:31] slaskis: tmzt: hah, yeah well i agree with that part, but if i only want to modify the body of the response i'm wrapping the res.write function as i've seen other middlewares do. but then it complains about writeHead, but i havn't even touched it... [18:31] brianc: like i said if i get kicked off...you defeated me [18:32] mscdex: softdrink: it should support however many colors the terminal supports [18:32] Kingdutch: Guys I figured out that any static http server in node will crash if it hits a certain number of user requests at the same time (between 100-1000) [18:32] Kingdutch: atleast 0.3.5-pre does [18:32] tmzt: slaskis: not sure is there some other callback you should handle first? [18:32] Kingdutch: which isn't really a good way to handle DoS attacks [18:32] mgutz: brianc: node+connect outperforms sinatra by a good margin on small vps [18:32] rfranknj has joined the channel [18:32] Kingdutch: brianc: kicked off of what? [18:33] Kingdutch: I might get banned from whatever you host at for trying to DoS [18:33] jchris has joined the channel [18:33] tmzt: is there monogoose or another orm with an associated middleware for json get/put/post? [18:33] brianc: Kingdutch: my web server is also running my irc client & database and other stuff [18:34] Kingdutch: If something crashes/hangs it should just be node [18:34] Kingdutch: unless node is also your irc client [18:34] Kingdutch: you should be ok [18:34] brianc: Kingdutch: w0rd [18:34] mscdex: i also started on a spiffier irc client that uses node-ncurses [18:34] mscdex: :D [18:34] tmzt: if ab on localhost a good baseline? [18:34] tmzt: is [18:34] Kingdutch: Gonna take some time though, not even at 100000 requests [18:34] mscdex: this one supports multiple windows and stuff this time [18:35] Kingdutch: tmzt: Dunnoy, I did it over my lan, it's a good way to test how long the server takes to handle the request [18:35] Kingdutch: Just factor in a little network latency [18:35] brianc: Kingdutch: yah maybe could just do 100,000 requests. probably get the same statistics [18:35] Kingdutch: brianc: Wouldn't be as fun though [18:35] brianc: Kingdutch: node is takine 1% of the cpu and 3 megs of ram [18:35] tmzt: Im on a vps and my uplink isnt enough to adequately test [18:35] perlmonkey2: I thought the node docs say writeHead must be called before res.end, but that you can call write before writeHead? [18:36] tmzt: also, Im going to have to emulate twilio for some of the test [18:36] Kingdutch: brianc: That's not too bad, is it? [18:36] dtrasbo has joined the channel [18:36] tmzt: that's going to be fun, I think I'll need another instance [18:36] bradleymeck: perlmonkey2 you shouldnt write before writeHead [18:37] brianc: Kingdutch: sorry 3% of ram, not 3megs. i have 512megs of ram [18:37] Kingdutch: If you don't call writehead before res.end for some odd reason it outputs undefined [18:37] Kingdutch: Which imo is very bad [18:37] tmzt: outputs undefined? [18:37] Kingdutch: Try it [18:37] tmzt: bradleymeck: the http client is basically raw? [18:37] tmzt: er [18:37] tmzt: server [18:37] dguttman has joined the channel [18:37] bradleymeck: basically [18:38] Kingdutch: Just close a request after you get it without doing anythign else [18:38] tmzt: how is Content-Length handled? [18:38] brianc: Kingdutch: I'll touch base later, gotta do some w0rk [18:38] bradleymeck: it doesnt buffer it by default so it doesnt get sent? [18:38] perlmonkey2: Kingdutch: well that makes sense. you can't send the response without a response header. [18:38] bradleymeck: its up to you to use a library or something if you want that automated [18:38] perlmonkey2: and res.end sends the response. [18:38] ossareh has joined the channel [18:39] tmzt: I assume I'd be looking at Buffer if I wanted to find out [18:39] perlmonkey2: and I guess res.write starts writing to the response's stream, so I guess you have to call writeHead to call write. Would have swore the docs said otherwise though. [18:39] Kingdutch: perlmonkey2: IMO, if I do res.end() before writing anything to the stream, node shouldn't do anything either, writing "undefined" to the stream is just bad behaviour [18:39] tmzt: by the way, is there anything lighter than nginx that would work over a unix socket and just handle Host: ? [18:40] Kingdutch: I'd rather have a blank screen than "undefined" [18:40] tmzt: Kingdutch: read some rfcs [18:40] tmzt: and where do you see 'undefined'? [18:40] Kingdutch: in the client [18:40] kriskowal has joined the channel [18:40] tmzt: netscape 2.0: connection interrupted :) [18:41] Kingdutch: chroem [18:41] Kingdutch: chrome [18:41] mattly has joined the channel [18:41] tmzt: parsing empty json? [18:41] Kingdutch: Where'd jason come in ?:o [18:42] opengeard has joined the channel [18:42] perlmonkey2: Kingdutch: is not returning anything an appropriate http response? [18:44] Kingdutch: Now closing the request right after it opens will cause the page to keep loading [18:44] Kingdutch: Even though the server closed the request [18:44] Kingdutch: :') [18:44] tylerstalder has joined the channel [18:45] Country has joined the channel [18:45] perlmonkey2: Maybe some sort of response is always required. At least a 200 with an empty body. [18:45] tmzt: it will fail eventually [18:45] tmzt: thats what happens when you leave out .end() [18:45] perlmonkey2: otherwise how would the client know to not wait for a response? it will have to time out. [18:45] tmzt: or use nc -l [18:47] mwilliams_ has joined the channel [18:47] mwilliams_ has joined the channel [18:47] brianc: Kingdutch: one thing to note, the postgres config I have setup is total crap so the response times are gonna be a bit dramatically worse than they would be on a normal database config [18:47] wvl has joined the channel [18:48] mwilliams_ has joined the channel [18:48] mwilliams_ has left the channel [18:49] rtuin has joined the channel [18:49] msekimura has joined the channel [18:50] svenlito has joined the channel [18:51] sprout1 has joined the channel [18:51] msekimura has joined the channel [18:51] jchris has joined the channel [18:54] teddy_ has joined the channel [18:55] teddy_ has joined the channel [18:55] creationix has joined the channel [18:55] Kingdutch: Oh there we go [18:55] mikeal has joined the channel [18:56] Kingdutch: Apparantly it's chrome who says "undefined" [18:57] Kingdutch: brianc On 48k requests I got Requests per second: 5.80 [#/sec] (mean) [18:57] Kingdutch: Time per request: 17248.706 [ms] (mean) [18:57] altamic has joined the channel [18:58] brianc: Kingdutch: yah that's pretty crappy [18:58] creationix: Kingdutch: what are you benching? [18:58] zorzar has joined the channel [18:58] Kingdutch: creationix: Brianc's server [18:58] brianc: creationix: my postgres config is messed up [18:58] Kingdutch: brianc: On a positive note, you're now at 37884 views [18:59] brianc: haha [18:59] creationix: hmm, my creationix.com server just handled 18k requests in 10 seconds no problem [18:59] Kingdutch: How is that 3 queries per request anyway? [18:59] brianc: prepared statement execution is taking 80x as long as non-prepared statements on this box [19:00] Kingdutch: creationix: I'm taking you up on that one [19:00] sh1mmer has joined the channel [19:03] dgathright has joined the channel [19:05] brianc: Kingdutch: something weird though because when i hit the page it is taking about 20-30 milliseconds to render [19:05] Kingdutch: Might be the 100 concurrent connections taking it down [19:06] brianc: Kingdutch: wanna throw 100 at it again? seems like something fishy going on [19:07] erlnoob has joined the channel [19:07] steffkes has joined the channel [19:08] kiddphunk has joined the channel [19:08] sudoer has joined the channel [19:08] kiddphunk has joined the channel [19:09] brianc: Kingdutch: still taking about ~25 milliseconds everytime i hit it [19:09] Kingdutch: hmm weird [19:09] Kingdutch: my 1000 requests at 100 at a time are going way slow [19:09] SubStack: c4milo: pong [19:09] Kingdutch: might be a bandwidth issue on my part =/ [19:09] mikeal has joined the channel [19:10] brianc: Kingdutch: I'll set up one without node-postgres at test.explodemy.com [19:11] c4milo: SubStack: I had just a question regarding dnode [19:12] tc77 has joined the channel [19:13] eee_c has joined the channel [19:13] brianc: Kingdutch: okay "test.explodemy.com" is just a hello world server, "explodemy.com" is node-postgres [19:13] dtrasbo has joined the channel [19:14] Kingdutch: Not sure, slow either way [19:14] Kingdutch: for me [19:14] herbySk has joined the channel [19:15] creationix: Kingdutch: I was testing from within the box [19:16] creationix: I can't vouch for my server's bandwidth [19:16] kriskowal has joined the channel [19:16] creationix: that's outside the control of node [19:16] brianc: Kingdutch: just tested it from here. got mean of 152 milliseconds for node-postgres and 182 milliseconds for hello world [19:16] brianc: Kingdutch: so i be thinking I'm bound by my bandwidth to the server [19:17] brianc: that was -c 100 -n 1000 [19:18] brianc: oh nope i see now [19:18] brianc: is def. slower [19:20] aklt has joined the channel [19:20] springmeyer has joined the channel [19:20] maushu has joined the channel [19:21] jchris has joined the channel [19:21] unsoughtDesire has joined the channel [19:21] sh1mmer has joined the channel [19:22] dmcquay2 has joined the channel [19:22] davidc_ has joined the channel [19:23] gozala has joined the channel [19:24] x_or has joined the channel [19:26] jimt_ has joined the channel [19:26] derferman has joined the channel [19:27] derferman has joined the channel [19:28] hellp has joined the channel [19:29] tfe_ has joined the channel [19:29] fission6 has joined the channel [19:30] fission6: i am having some trouble using require(http), console.log "response cookies", response.headers["set-cookie"] seems to only be printing out one cookie for each domain, has anyone see something like this, its very odd [19:31] jimt has joined the channel [19:33] hoodoos has joined the channel [19:34] halfhalo: ACTION now has a useable regex module! [19:34] ReshadN has joined the channel [19:35] hoodoos: hello, guys. I found a brain-free syslog logging for node.js lib. And in send method it does something like creatingSocket, sending message and then closes socket (using dgram). Is it okay to recreate socket this way or maybe better reuse it? if it's possible at all [19:36] podman has joined the channel [19:36] tyfighter has joined the channel [19:36] jimt_ has joined the channel [19:36] admc has joined the channel [19:36] jacobolus has joined the channel [19:36] charlenopires has joined the channel [19:37] cloudhead has joined the channel [19:38] jchris1 has joined the channel [19:39] estrathmeyer has joined the channel [19:39] namelessnotion_ has joined the channel [19:39] estrathmeyer has left the channel [19:40] k04n has joined the channel [19:40] ReshadN: hello everyone! [19:41] ReshadN: I'm a rookie on node and haven't been able to find any great beginner intros to node. Any recommendations? [19:41] russ_nyc: nodejs.org [19:41] lukegalea: ReshadN: Have you read Mastering Node? [19:42] warz: well, what is it that you want to do with node? [19:42] lukegalea: http://visionmedia.github.com/masteringnode/ [19:42] lukegalea: it [19:42] mjr_ has joined the channel [19:42] lukegalea: it's not finished, but what there is covers a lot of basics. [19:43] ReshadN: lukegalea: never read mastering node. I'll google it now. Thanks. [19:45] sam_mccall has joined the channel [19:45] perezd has joined the channel [19:46] Kingdutch: fission6: A server only has the cookie(s) for it's own domain, also the cookie header might be an array of more cookies? [19:46] mikeal has joined the channel [19:46] Kingdutch: A server only should have the cookie(s) for it's own domain* [19:46] Kingdutch: The browser should keep those seperated [19:47] nejucomo has joined the channel [19:48] ReshadN: Thanks lukegalea. [19:49] lukegalea: ReshadN: No prob. We should both thank TJ Holowaychuk for writing it :) I keep meaning to. [19:49] ReshadN: Would you recommend building a web app on nodejs at this time? Are there enough tools and is the framework mature enough for production deployment? [19:49] Kingdutch: lukegalea: Nice resource, should put that findable on the nodejs site :O [19:50] fission6: No its some bug somewhere in http [19:50] davidascher has joined the channel [19:50] fission6: i just pulled and compiled the latest code and its working with mulitple cookies [19:50] Kingdutch: Oh [19:51] lukegalea: ReshadN: I've been using express (http://expressjs.com/) and I'd say it's mature enough although I don't have anything heavily used in production so I'm not the best person to ask... but I'll admit I've had a lot of trouble with mongoose (the Mongo ORM), so I'd say that's not ready. If you can find a good ORM/DB combo then you should be set. [19:52] sh1mmer has joined the channel [19:52] lukegalea: perhaps others can chime in on what they are using for DB persistence. [19:53] lukegalea: ReshadN: there's a list here: https://github.com/ry/node/wiki/modules#database [19:54] Ond has joined the channel [19:54] Kingdutch: You can develop a web app in node, plenty of people doing it, I personally don't use Express (I have a personal thing against other people's libraries :X It's bad I know, but still) but it looks good [19:54] AAA_awright has joined the channel [19:54] d0k has joined the channel [19:55] lukegalea: hehe. I aim to only write glue code :) It's also bad. Somewhere in between would be ideal. [19:55] jtrally: has anyone got one of the javascript chart renderers to work in node? [19:56] zzak has joined the channel [19:56] Ond: They should work just as they normally would [19:56] Ond: I don't think node.js cares about that sort of client-side thing [19:57] jtrally: yeah I want it to be serverside [19:57] Ond: where do you expect this chart to be rendered? [19:57] jtrally: on the server [19:57] Ond: In your terminal output? [19:57] Kingdutch: ASCII Art :D [19:57] Ond: lol [19:57] jtrally: SVG on the server and sent somewhere [19:58] Ond: i.e. rendered client-side [19:58] jtrally: no [19:58] jtrally: rendered = create SVG on server. step 2) sent somewhere (email, to a client, saved to disk) [19:58] jtrally: so you can do it scheduled in a chron job [19:59] jpld has joined the channel [19:59] Ond: Ah ok [19:59] dustinwhittle has joined the channel [19:59] Ond: What chart library would you use? I might play around with that [20:00] Ond: There's one really badass library whose name I forgot... something like vis___ or viz____ [20:00] jtrally: Highcharts or Emprise are two good ones. I have a license to both. [20:00] Ond: Nice [20:00] jtrally: they are open source for non commercial use [20:00] jtrally: but you have to pay if you stick them somewhere that makes money [20:00] charlenopires has joined the channel [20:00] mscdex: ascii charts ftw! [20:01] yozgrahame has joined the channel [20:01] creationix has left the channel [20:01] stepheneb has joined the channel [20:02] mscdex: i wish there was a gedit->notepad++ theme converter [20:02] mscdex: :\ [20:02] Ond: gedit is ideal to me [20:03] mscdex: it's not bad, but it's missing a lot of stuff i use in npp [20:03] mscdex: especially code folding [20:03] Ond: Ah, yeah [20:03] EGreg has joined the channel [20:03] mscdex: regex searches too [20:03] Ond: I'm used to working in context for windows [20:03] Ond: Which doesn't have folding lol [20:04] losing has joined the channel [20:04] jsninja_ has joined the channel [20:05] Aikar: so [20:05] bradleymeck: back to vi the lot of ya [20:05] Ond: lol [20:05] Aikar: work is held up right now due to our dev box being hosed with disk acttivity.... [20:05] Aikar: brace for impact at the current load levels [20:05] Aikar: >>> cat /proc/loadavg [20:05] aheckmann has joined the channel [20:05] Aikar: 402.91 398.89 356.83 [20:06] bradleymeck: lol [20:06] mscdex: i hate vi and emacs both ;-) [20:06] Kingdutch: I never understood cat /proc/loadavg data [20:06] pieterv has joined the channel [20:06] Aikar: 1 5 15 min averages [20:06] Aikar: first is the 'current' [20:06] jsninja_ has left the channel [20:06] Aikar: 2nd is average load over 5min, 3rd is over 15m [20:07] Kingdutch: Load average expressed in what? [20:07] Aikar: my server averages around loadavg 1~ for 50-75~ concurrent users [20:07] namelessnotion has joined the channel [20:08] Aikar: its time a process has to wait to use the cpu, bigger is bad [20:08] Aikar: 0 = no load [20:08] Kingdutch: Expressed in ms? [20:08] Kingdutch: Ah ok [20:08] Nomon: it is not the time, it is how many processes are waiting on avg [20:08] Aikar: oh [20:08] bradleymeck: aikar whats it running thats hosing it? node? [20:08] Aikar: still bigger = bad :P [20:08] Kingdutch: oh [20:08] Aikar: oh this dev box no, its just our entire companys dev box that everyone works on [20:09] Kingdutch: 400 processes waiting to do something is a lot :O [20:09] Nomon: and say if you got 8 cpus/cores then anything under 8.0 is "real time" [20:09] fission6 has joined the channel [20:09] Kingdutch: Aaah ok, I get it now [20:09] fission6: does anyone remeber if there was a cookie bug with node.js 2.5 it seems i can only get cookies from one domain in my brew install node.js [20:10] Aikar: lol just got a reboot broadcast [20:10] bradleymeck: fission yep, last cookie header to come in overwrites previous [20:10] Kingdutch: cat /proc/loadavg [20:10] Kingdutch: 0.00 0.00 0.00 1/61 8658 [20:10] Kingdutch: :') [20:10] Aikar: what do those other 2 #'s represent, im not faimiliar with those [20:10] Aikar: 1/895 28499 [20:10] Aikar: for our dev box [20:11] nonnikcam has joined the channel [20:12] Nomon: thats the currently running processes/total processes and last number is the pid of the program that received cpu time iirc [20:12] Nomon: received last [20:13] tilgovi has joined the channel [20:13] Kingdutch: ACTION hands Nomon a scout badge: Know your /proc/loadavg [20:14] ecto has joined the channel [20:14] Kingdutch: Anyone wrote a sess management lib for nodejs btw? [20:14] matclayton has left the channel [20:14] bradleymeck: yes several [20:15] bradleymeck: anyone know if there is an oauth provider module lying about [20:15] ecto: every once in awhile I get a weird error that crashes my server [20:15] ecto: TypeError: Object 13914 has no method 'split' [20:15] Kingdutch: bradleymeck: There was one o the mailing list hold on [20:15] ecto: anybody know what this is? [20:15] bradleymeck: something is not a string when something else thinks it is [20:15] Kingdutch: Wait nvm, that was openID :X [20:16] ecto: toString() then? [20:16] ecto: depending on what it actually is [20:17] bradleymeck: I prefer String(x) over toString [20:18] ecto: thanks man [20:19] tilgovi has joined the channel [20:19] markwubben has joined the channel [20:22] sh1mmer has joined the channel [20:23] zorzar has joined the channel [20:23] fission6: bradleymeck - was that fixed in what version, 2.6? [20:23] enaeseth has joined the channel [20:24] bradleymeck: fission6 i think only in 3+ [20:24] fille12: anyone got experiance with https://graph.facebook.com/ , wondering if i can do the same with node js [20:25] mattly has joined the channel [20:25] fission6: damnn o k [20:26] bradleymeck: fille12 if you wanted to implement all of that yourself yes [20:26] tylerstalder has joined the channel [20:26] fission6: bradleymeck: i also keep getting domain name not found [20:27] Me1000 has joined the channel [20:29] mscdex: ''+var is better than String(x)! [20:29] mscdex: :p [20:29] jbpros has joined the channel [20:29] mscdex: ''+x that is [20:29] piscisaureus: are the joyent guys off today? [20:29] fille12: not like all of facebook [20:29] fille12: just a backend tire [20:30] fille12: got a apacheing with php requesting data from node.js [20:31] martigam has joined the channel [20:32] A83 has joined the channel [20:32] A83 has left the channel [20:32] A83 has joined the channel [20:33] admc1 has joined the channel [20:34] tpryme has joined the channel [20:35] fission6: anyone here based in nyc [20:36] zorzar has joined the channel [20:36] jchris has joined the channel [20:37] hornairs has joined the channel [20:37] k04n_ has joined the channel [20:37] ReshadN: Any tutorials out there to build a simple to-do list or task list manager? [20:38] admc has joined the channel [20:39] Spreadsheet has joined the channel [20:39] Spreadsheet: Hello [20:40] enaeseth has left the channel [20:41] jchris2 has joined the channel [20:41] Spreadsheet: If I had a C or C++ library that did something (and it already had support for concurrency using something like OpenMP), would I write a module/plugin/equivalent in node, so then I can make a type of daemon for it? [20:41] Spreadsheet: Or would I just make another library in node.js? [20:41] zemanel has joined the channel [20:41] Spreadsheet: Is it possible to make modules written in C/C++ for node? [20:42] pengwynn has joined the channel [20:43] mscdex: Spreadsheet: sure [20:43] mscdex: you can write a binding [20:45] pquerna: hmm. no tj. [20:46] jbpros: Hey guys. I'd like to stub require() within jasmine specs. Is it feasible? [20:47] aelaguiz has joined the channel [20:49] dmcquay has joined the channel [20:50] k04n has joined the channel [20:51] tfe_ has joined the channel [20:52] mikedeboer has joined the channel [20:52] sh1mmer has joined the channel [20:53] galaxywatcher has joined the channel [20:54] ryah: so many people here. [20:54] ryah: how many of you are bots? [20:54] halfhalo: ACTION is [20:54] rwhitby: ACTION too [20:55] EyePulp: beep? [20:55] Spreadsheet: ACTION is  [20:55] Spreadsheet: beep bop boo beep [20:55] halfhalo: WORLD DOMINATION! [20:55] Kingdutch: bleep bleep [20:55] EyePulp: I'm a bot connected by socket.io [20:55] EyePulp: ACTION connection has timed out [20:55] Kingdutch: I'm a bot on low bandwidth, hence my slow response time [20:55] EyePulp: =) [20:55] rwhitby: ryah: BTW, I lead webos-internals.org and just wanted to congratulate you on changing the javascript event/IO paradigm and improving webOS as a side-effect [20:55] SubStack: ACTION beep boop [20:55] aelaguiz: hay bots I have a question, how would I get the 0th attribute name from an object without using a for in ? [20:56] jchris has joined the channel [20:56] ryah: rwhitby: :) [20:56] Kingdutch: object[0] [20:56] Kingdutch: ? [20:56] nejucomo has joined the channel [20:56] aelaguiz: thats the attribute, I want the name [20:56] zorzar has joined the channel [20:56] aelaguiz: obj[bob] = mike [20:56] aelaguiz: I want bob [20:57] mraleph: Object.keys [20:57] Kingdutch: BTW ryah: I run no site in particular, but just wanna tell you you're doing an awesome job on node.js, I just discovered Yahoo! is using it too, makes me excited [20:57] aelaguiz: thanks [20:57] EyePulp: aelaguiz: The properties aren't ordered - just key names [20:57] Kingdutch: Ooooooh [20:57] rwhitby: ryah: the effect of node.js on webOS speed and battery life in particular is very noticeable in the webOS 2.0 release. [20:57] Kingdutch: ACTION knows that as a key =/ [20:57] aelaguiz: yeah, I almost called it a key then I thought that nobody would know what i meant so I called it an attribute name [20:57] Aria has joined the channel [20:57] aelaguiz: EyePulp: Crap, well I'm doing this wrong [20:57] aelaguiz: Time to switch to an array [20:58] Kingdutch: Why would no one know a key? :O [20:58] mraleph: yeah. that's the right decision :-) [20:58] Kingdutch: Object is like array [20:58] Kingdutch: :O [20:58] rwhitby: ryah: and the fact that all the webOS internal services will now be even more hackable to our group due to being written in visible source node.js is pretty good too :) [20:58] aelaguiz: except keys aren't ordered based on insert order [20:58] EyePulp: object has no sense of order [20:58] Kingdutch: atleast I read me['parent'] == me.parent [20:58] Kingdutch: Oh right [20:58] EyePulp: or at least no guarantee of order [20:59] mraleph: v8: a = {}; a.b = 1; a.a = 2; Object.keys(a) [20:59] v8bot: mraleph: ["b", "a"] [21:00] mraleph: v8: a = {}; for (var i = 100; i > 0; i--) a['x'+i] = i; Object.keys(a) [21:00] v8bot: mraleph: ["x100", "x99", "x98", "x97", "x96", "x95", "x94", "x93", "x92", "x91", "x90", "x89", "x88", "x87", "x86", "x85", "x84", "x83", "x82", "x81", "x80", "x79", "x78", "x77", "x76", "x75", "x74", "x73", "x72", "x71", "x70", "x69", "x68", "x67", "x66", "x65", "x64", "x63", "x62", "x61", "x60", "x59", "x58", "x57", "x56", "x55", "x54", "x53", "x52", "x51", "x50", "x49", "x48", "x47", "x46", "x45", "x44", [Output truncated...] [21:00] mraleph: v8 orders non numeric keys according to insertion order [21:00] aelaguiz: is that guaranteed or incidental [21:00] mraleph: but that is not in the spec. [21:00] aelaguiz: incidental [21:01] mraleph: well... no :-) [21:01] mraleph: it was added to increase compatibility [21:01] aelaguiz: intentionally incidental! [21:01] mraleph: but you should not rely on that... [21:01] aelaguiz: ;) [21:01] mraleph: yep. [21:01] mraleph: it can be removed later... [21:01] aelaguiz: Yeah I know if i rely on that I'm going to be dumbfounded in like 2 years when everything is broken and I have no idea what the hell these objects even contain anymore [21:02] jchris has joined the channel [21:02] rn has joined the channel [21:03] mraleph: but the next standard can actually specify iteration order to match that of v8. (first numeric properties then non-numeric in insertion order). there is ecma strawman proposal for that. [21:03] mraleph: http://wiki.ecmascript.org/doku.php?id=strawman:enumeration [21:04] booo has joined the channel [21:05] aelaguiz: strawman you say [21:06] clarkfischer has joined the channel [21:08] hornairs has joined the channel [21:08] pengwynn has joined the channel [21:09] springmeyer_ has joined the channel [21:09] booths has joined the channel [21:10] booths: Getting an aweful lot (8 so far) fails during make test on cygwin... suppose this may be why ENOBUFS is happening. [21:11] Kingdutch: ACTION mumbles something about autokick and cygwin [21:11] zorzar_ has joined the channel [21:11] Druide_ has joined the channel [21:11] jbpros has joined the channel [21:12] EyePulp: heh [21:13] Kingdutch: Atleast it's better than wine which tries to bring the crap back [21:14] booths: Although none are affecting node_net.cc [21:14] booths: bleh [21:14] Kingdutch: "node.js should be rebuilt using Qt and architected from the beginning to be multicore and include HTTP gzip compression and https." [21:14] Kingdutch: That's someone who doesn't know that node is more than HTTP [21:14] Kingdutch: And Qt is prolly blocking although I'm not gonna back that assumption if it turns out wrong [21:15] x_or has joined the channel [21:15] Aria: Heh. BEt it's not. [21:15] Aria: But I'd say glib is a better target. [21:15] Aria: (I keep intending to write a node-compatibility layer for seed.js) [21:15] hornairs has joined the channel [21:15] stride: Kingdutch: woah, where did you get that quote? :D [21:16] jchris has joined the channel [21:16] mikeal has joined the channel [21:16] stride: that strange thread on the mailing list isn't really on the HN frontpage, is it? [21:17] jchris2 has joined the channel [21:17] dylang has joined the channel [21:19] hornairs has joined the channel [21:20] dylang: did Jetbrains just accidentally give a hint of upcoming Node support in Webstorm/IntelliJ? Look at the second screenshot: http://blogs.jetbrains.com/webide/2011/01/use-strict-from-ecmascript-5-is-supported-in-webstorm-phpstorm [21:22] bmizerany has joined the channel [21:22] EvanR-work has joined the channel [21:23] EvanR-work: just checking, node does not use multiple cores? [21:23] sh1mmer has joined the channel [21:23] Kingdutch: stride: http://developer.yahoo.com/blogs/ydn/posts/2010/07/multicore_http_server_with_nodejs/ < -- Comments [21:24] Kingdutch: EvanR-work: It doesn't really although the topic I just linked to has some usage examples that allow it to and if I'm not mistaken file IO and some other stuff is done from a thread pool because it's blocking so it can utilise multiple cores [21:25] EvanR-work: ok [21:27] ryah: EvanR-work: it does not [21:28] richcollins has joined the channel [21:29] rpflo has joined the channel [21:29] isaacs: EvanR-work: you can spin up child processes [21:29] bradleymeck: EvanR-work it does not, but if you spread it across processes it will spread across cores as the scheduler allows, just remember, even if you use threads they are not always going across cores [21:30] x_or has joined the channel [21:30] ryah: a network of nodes is needed [21:31] Kingdutch: So yahoo is false [21:31] Kingdutch: As well as my lengthy sentence? [21:31] Kingdutch: *whimper* [21:32] booths: Yahoo is always false. [21:32] springmeyer_ has joined the channel [21:32] booths: You never hear anyone say "Sec, let me yahoo that." [21:32] Aria: file IO is done from a thread pool because it's blocking and that's it. [21:32] Aria: Nothing about needing cores for a non-cpu-bound task. [21:32] EvanR-work: it seems the most obvious thing to do is four node processes, with a load balancer? [21:33] Kingdutch: If you have four cores [21:33] Kingdutch: Although wouldn't that be 3 nodes + a loadbalancer? :X [21:33] fission6: bradleymeck: do you know what specifically was fixed for the cookie handler issue? is it possible to cherrypick that fix into 2.6? or something i can update through npm? [21:34] zorzar_ has joined the channel [21:34] bradleymeck: not off top of my head, i know it was in the http parser, think its in lib/http.js [21:35] Kingdutch: I'll just quietly exit here instead of unintentionally feeding people with false(ish) information [21:35] Kingdutch: Good Night [21:37] fission6: hmm pok, should i be able to update doing npm install http [21:37] isaacs: fission6: no, npm doesn't operate on builtin modules [21:37] isaacs: there's a good chance you just have to move to 0.3.x to get it [21:38] isaacs: 0.2.x is "frozen" [21:38] fission6: damn ok - i am trying to run zombie.js and its not working with the 2.6 version because of the cookie handling, i move to 3.2 or higher and running zombie.js breaks, 3.1 or lower zombiejs runs fine but misshandles cookeis [21:38] fission6: what do you recommend [21:39] booths: So isaacs, you're a mastermind. Would you look at http://tinyurl.com/4brynty and see if it makes any sense? [21:40] booths_ has joined the channel [21:40] booths_: Sorry, got disconnected. [21:40] booths_: Did that last message post? [21:40] isaacs: booths_: yeah [21:40] isaacs: booths_: i'm allergic to windows, though, so i've never actually run node on cygwin [21:41] zorzar has joined the channel [21:42] booths_: alright, yeah it's giving me a headache too. Hopefully once this is written I'll be able to move it over to Linux... Local IT only allows windows, but national is red hat [21:43] gakusei has joined the channel [21:44] gakusei: No module named Scripting in node-waf? I try to install/use node.js 0.3.4 on Ubuntu 10.10 [21:45] nejucomo has joined the channel [21:47] lupomontero has joined the channel [21:51] kylefox has joined the channel [21:53] sh1m has joined the channel [21:53] bradleymeck: has anyone got a way to have jsonp-like return values for file uploads across domain? [21:54] tmzt: upload is PUT? [21:56] eee_c has joined the channel [21:56] webr3: just respond w/ 201 created and JSON in the message body [21:56] bradleymeck: tmzt put or post so you cant really return info with the form + iframe trick [21:57] bradleymeck: should have specified from browser [21:57] hornairs has joined the channel [21:59] fission6: are there any https issues with 3.0+ i keep getting 302; [21:59] fission6: 302'ss [22:00] ryah: fission6: https server issue v0.3.4 and later should be reported [22:01] maushu: 302? [22:01] maushu: How does that happen? [22:01] fission6: well i am asking first, i am not sure there is [22:01] mikew3c has joined the channel [22:01] ryah: fission6: there are no known issues with the http server in v0.3.4 and later. [22:02] maushu: ryah, seriously? [22:02] ryah: (except missing features and speed) [22:02] maushu: I need to run the old tests there then. [22:02] ryah: maushu: it hasn't been heavily tested [22:02] fission6: ok [22:02] maushu: The old https had the funny bug of not giving all the data. [22:03] fission6: there is def something different, i run the script in 3.1 and it works fine, 3.4 it conks out and the script is just fetching a page on https [22:03] ryah: fission6: server - right? [22:03] fission6: ? [22:04] ryah: you're talking about the https server, right? [22:04] fission6: and i can't use node.js 3.1 because cookie handling is messed up, i am screwed - for now [22:04] fission6: i am talking about fetching a page from an https server, so http.createClient... [22:04] maushu: ACTION facepalms. [22:05] ryah: ACTION goes back to what he was doing. :) [22:05] Twelve-60 has joined the channel [22:05] fission6: wait what did i do? [22:05] fission6: di di miss something [22:06] ryah: fission6: im looking for server bugs, the client is broken - but that's known [22:06] maushu: Not to mention 302 might be from the server. [22:06] ryah: broken is the wrogn term. 'missing' [22:06] BillyBreen has joined the channel [22:07] dthompson has joined the channel [22:07] fission6: what do you mean [22:07] Figaroo has joined the channel [22:07] fission6: i am getting a traceback when running the script in 3.4 and html when i run it with 3.1 [22:07] fission6: 3.4 - connections are dropped [22:07] maushu: ryah, I tried to use delegates in C# to move functions around. Have I mentioned that I really love Javascript? [22:08] fission6: where can i paste bin for this channel, ill paste the traceback [22:08] tekky has joined the channel [22:09] maushu: Any pastebin works. [22:09] fission6: here you go, http://pastebin.com/dxPZjxdZ [22:09] piscisaureus: ryah: can I send you an overload of questions? [22:09] maushu: Hes probably busy. [22:09] ryah: piscisaureus: email pls [22:12] nejucomo has joined the channel [22:12] fission6: maushu: you see what i mean now? [22:12] fission6: big trouble - little china [22:12] zorzar has joined the channel [22:12] pquerna: is there a collection of connect/express middlewares [22:12] maushu: It's completely borked. Try other versions. [22:13] pquerna: like a shared github somewhere? [22:14] clarkfischer: Is there a good way to pass all of a functions arguments to the constructor of another function? [22:15] mraleph: f.apply(this, arguments) [22:15] EyePulp: demoing our first node-based service to a potential client right now. a bit nerve-warcking. [22:15] tekky has joined the channel [22:15] fission6: i cant seem to find a version where https works and cookie handeling is in place correctly, 3.2 somewhere is where i think the https may have been muffed - ill try that version [22:15] maushu: pquerna, one sec. [22:15] EyePulp: ... wracking. [22:15] maushu: pquerna, http://github.com/ry/node/wiki/modules [22:16] maushu: EyePulp, which version? [22:16] clarkfischer: mraleph: It's an object. So I need to do something like new myObj.apply([prototype?], arguments) [22:16] clarkfischer: Except the prototype is not available until it's created, and I'd rather not clone it myself. [22:16] EyePulp: of node? 0.3.4-pre [22:16] pquerna: maushu: well, not that. I meant more like a shared repo with 30 misc 45 line connect middlewares. [22:16] deepthawtz has joined the channel [22:17] EyePulp: maushu: I assume you meant node version? [22:17] fission6: EyePulp: i hope it doesnt have https [22:17] fission6: what does it do [22:17] maushu: Oh, 0.3.4? The one that breaks randomly? [22:17] maushu: Specially during client demos? [22:17] zorzar has joined the channel [22:17] EyePulp: heh [22:17] EyePulp: watching the commandline like a hawk [22:17] maushu: ACTION summons Murphy. [22:18] tmzt: rwhitby: any chance they actually have webkit bindings in node? [22:18] fission6: does anyone run a productionw eb app by simply doing node somewebapp.js or is there more to serving the web app [22:18] EyePulp: it's a live-chat system for about 10,000 agents to handle an unknown number of customers. [22:18] tmzt: mayeb with node-canvas? this is getting fun [22:18] EyePulp: though whether all 10,000 will ever use it is a big unknown [22:19] fission6: illl load test it for 10,000 dollars [22:19] EyePulp: heh [22:19] maushu: EyePulp, they will, and they will call their friends. [22:19] maushu: All their friends. [22:19] tmzt: EyePulp: chat being text only? [22:19] fission6: i assume the front end is web based? or is there a native GUI [22:19] EyePulp: tmzt: si [22:19] EyePulp: fission6: web based [22:19] EyePulp: socket.io [22:19] fission6: what are you using for the backend [22:19] fission6: for accounts and the like [22:19] tmzt: EyePulp: ive been working on something so freaking cool I cant even put it into words [22:20] EyePulp: node/mongo [22:20] fission6: nice [22:20] m64253 has joined the channel [22:20] fission6: how snappy is it? [22:20] ukev has joined the channel [22:20] mraleph: clarkfischer: myObject.apply(Object.create(myObject.prototype), arguments) <- something like this [22:20] lukegalea has joined the channel [22:20] EyePulp: small tests so far show it to be reasonably snappy [22:20] tmzt: EyePulp: like, uh why didnt we think of this cool [22:20] fission6: anyone here in nyc? [22:21] EyePulp: *but* I'm concerned about socket.io's connection dropping [22:21] EyePulp: tmzt: what's that? [22:21] fission6: why wouldnt they drop on this service vs any other software [22:21] tmzt: you work with big ecommerce sites? [22:21] tmzt: companies [22:21] maushu: EyePulp, what transport is it using by default? [22:22] EyePulp: fission6: you mean why use this when there's 1,000 other chat solutions out there? [22:22] MikhX has joined the channel [22:22] tmzt: EyePulp: my sad experience with netsol over the last few days reminded me why they need this [22:22] EyePulp: maushu: the rep side connected with the flashsocket, and I think the demo customer side connected with xhr-poling. [22:22] fission6: no i mean why would socket.io drop out from its node implementation vs any other socket implementation [22:23] fission6: maushu: ryah - 3.1 works and 3.2 craps out, thats as fine as I can track it [22:23] fission6: should i report this [22:23] fission6: and if so how [22:23] hij1nx has joined the channel [22:23] sh1mmer has joined the channel [22:24] EyePulp: fission6: not sure I follow - I'm just saying a lot of my time in the past few months went to figuring out how to handle dropped socket.io connections without losing a session. [22:24] maushu: fission6, https://github.com/ry/node/issues [22:24] fission6: oh ok [22:24] EyePulp: It's been much better lately. [22:24] zorzar has joined the channel [22:26] Me1000 has joined the channel [22:27] zorzar_ has joined the channel [22:28] fission6: maushu: is this clear, https://github.com/ry/node/issues/issue/560 [22:28] m64253_ has joined the channel [22:28] echosystm has joined the channel [22:29] EyePulp: we will need https:// at some point, so I appreciate you raising issues about it fission6 =) [22:29] fission6: haha no doubt i need it do [22:29] fission6: to [22:29] fission6: and its actually there something just stepped on its foot between 3.1 and 3.4 [22:29] maushu: EyePulp, hes talking about client side. [22:29] fission6: err 3.2 [22:30] maushu: fission6, give some spaces between code, 4 I believe, to put it into a code box. [22:30] maushu: *before each line of code [22:30] fission6: maybe i will review at some point and try to fix, how can i get push priv [22:32] fission6: how come its not being show in the issue log ? [22:34] jdalton has joined the channel [22:34] jdalton has left the channel [22:34] romainhuet has joined the channel [22:36] x_or has joined the channel [22:36] jchris has joined the channel [22:37] pkrumins: anyone in SF that wants to meet with us for coffee and talk? [22:37] pkrumins: we're going again to SF tomorrow [22:38] fille12: anyone from swe? [22:39] mikeal has joined the channel [22:40] herbySk has joined the channel [22:40] marienz has joined the channel [22:41] eikke has joined the channel [22:41] ryah: fission6: no, i don't need a report [22:42] fission6: what? [22:42] ryah: i don't need a bug report. [22:43] CIA-121: node: 03Ryan Dahl 07master * rcb71a7d 10/ lib/_debugger.js : debugger: take help message from commands - http://bit.ly/eEsWkm [22:43] CIA-121: node: 03Ryan Dahl 07master * r7df8a05 10/ (lib/_debugger.js test/simple/test-debugger-client.js): debugger: primative object inspection - http://bit.ly/g76dom [22:43] CIA-121: node: 03Ryan Dahl 07master * rd87ab54 10/ lib/_debugger.js : debugger: Better backtraces - http://bit.ly/e1rzqo [22:43] CIA-121: node: 03Ryan Dahl 07master * r533797a 10/ lib/_debugger.js : debugger: full scope evals - http://bit.ly/dJPF4W [22:43] CIA-121: node: 03Ryan Dahl 07master * r0fa3f2f 10/ lib/_debugger.js : debugger: Correctly eval arrays and numbers - http://bit.ly/f7u4dB [22:45] fission6: ryah why not, you dont like bugs? [22:45] ryah: not ones that i know about [22:45] echosystm: cloudhead: are you around? [22:45] chrelad has joined the channel [22:47] ecto has joined the channel [22:47] admc has joined the channel [22:47] fission6: oh sorry then [22:47] fission6: my bad [22:51] agnat has joined the channel [22:52] zorzar_ has joined the channel [22:53] ecto: anybody have experience with redis? [22:53] ecto: i get about 5 pageviews then redis kills my response time [22:54] sh1mmer has joined the channel [22:54] altamic has joined the channel [22:55] thebigbad has left the channel [22:56] Pilate: ive used it a bit ecto, idk how it could possibly be killing your response time [22:56] Pilate: unless youre opening the connection for every request [22:57] tfe_ has joined the channel [22:57] MikhX has joined the channel [22:58] ecto: i keep it open. i'm actually stumped by this one. i have a function that forEaches through the redis reply, pushes into a new array, then kicks out the length [22:59] ecto: i kick it out with console.log and res.send [22:59] ecto: it always shows up in the console but after the 5th view it stops the server stops responding to http traffic [23:00] ecto: i can go to the url in a new tab and it will kick out the array length on the console but won't load [23:00] c4milo1 has joined the channel [23:02] ecto: until i restart the script [23:02] mjijackson has joined the channel [23:03] charlenopires has joined the channel [23:04] ecto: https://gist.github.com/778801 [23:05] thinkingpotato has joined the channel [23:06] ecto: it only catches when i navigate away from the page when it's not loading [23:07] EGreg has joined the channel [23:07] mjr_: what's your issue ecto? Server stops accepting new HTTP? [23:08] kkaefer: is there a way in javascript to use non-standard utf-8 encoding of ascii characters? [23:08] kkaefer: i.e. multiple bytes to represent something that could be represented as plain ascii? [23:08] ecto: after the 3rd or 4th pageload it will console.log(String(bookings.length)) but stops replying to http requests [23:09] kkaefer: like \xC0\xAF is a slash character [23:09] mjr_: ecto: which redis client are you using? [23:09] kkaefer: (I understand it's invalid utf-8) [23:09] creationix has joined the channel [23:10] mjr_: kkaefer: you could use String.fromCharCode(num) to assemble a new String from bytes. [23:10] robert_c has joined the channel [23:10] kkaefer: hmm [23:10] kkaefer: I'm coming to think that just using buffers would probably be easier [23:10] Tprice has joined the channel [23:11] mjr_: Buffers do give you direct byte access, which is very handy. [23:11] ryah: btw - the debugger is almost useful [23:11] Tprice: hey whats the event for an imcoming message on a net.Server? [23:11] mjr_: That's cool, ryah. [23:11] Tprice: does it work the same as "miksago/node-websocket-server" [23:12] Tprice: the way messages are recived? [23:12] ecto: mjr: redis-node [23:12] rburhum has joined the channel [23:13] zorzar_ has joined the channel [23:13] mjr_: ecto: sorry, I'm not familiar with that one. I wrote node_redis, which you can get with "npm install redis". If you still have this issue with that one, I could probably help you. [23:13] Tprice: does the server have "Event: 'data'" [23:13] Tprice: or just the client? [23:13] brianc: Tprice: both server and client [23:14] brianc: Tprice: this info is available in the node documentation as well [23:14] ecto: mjr_: i'll try yours and get back to you [23:14] brianc: Tprice: oh sorry net.Stream has data. net.Server does not. [23:15] brianc: Tprice: anyways, there's better source of info for that sorta thing, just check out the node.js documentation [23:15] piscisaureus: ryah: [23:15] piscisaureus: d:\nodejs\node-src>node debug test5.js [23:15] piscisaureus: debug> run [23:15] piscisaureus: foo [23:15] piscisaureus: -- test5.js -- [23:15] piscisaureus: debugger; [23:15] piscisaureus: console.log('foo'); [23:15] technoweenie has joined the channel [23:15] nejucomo has joined the channel [23:16] [[zz]] has joined the channel [23:16] wvl has joined the channel [23:16] Tprice: it says nothing about the event "data for the server" [23:16] Tprice: but [23:16] Tprice: would it be like this [23:16] Tprice: http://pastebin.com/JWGAaXiQ [23:16] Tprice: socket would be net.createServer [23:16] brianc: Tprice: server should raise some sorta "connect" event which will pass you a net.Stream of the incomming connection or something like that. that stream will raise a 'data' event [23:16] ryah: piscisaureus: *shrug* [23:17] ecto: ACTION thinks Matt Ranney is a boss for writing quality software that makes my website work correctly [23:17] mjr_: ecto so switching redis clients make it just work? [23:17] Tprice: ok so it just like the paste i showed [23:17] bingomanatee_ has left the channel [23:17] ecto: yep, humming along nicely now [23:17] ecto: thanks mate [23:17] isaacs: ecto: Matt Ranney is a boss irl, you know. [23:18] isaacs: i've met his employees, even [23:18] zorzar has joined the channel [23:18] mjr_: ecto: cool, glad to hear it. BTW, you should check for err in the second nested query as well. [23:18] sh1mmer: Matt Ranney has hands the size of my head [23:18] sh1mmer: that is the definition of a boss [23:18] mjr_: ecto: and your try/catch won't actually catch things inside that second query because the stack has unwound by then. That's why you need to check for err. [23:19] mjr_: Mostly what I do is walk around and show people my hands, in order to impress them. [23:19] creationix: sh1mmer: lol [23:19] tmzt: we need a quora bot in here [23:21] warz has joined the channel [23:22] isaacs: ryah: you use zsh, right? [23:22] isaacs: ryah: any idea where it gets its extended glob functionality from? like ^ to mean "not" and ** to mean "any number of subdirs"? [23:24] ryah: isaacs: no [23:24] mjr_: node questions are starting to pop up a lot on Quora. [23:24] tmzt: nothing about sammy yet [23:24] pkrumins: ryah: we couldn't make it yesterday, are you going to be at work tomorrow? [23:24] sh1mmer has joined the channel [23:24] cronopio: isaacs: maybe some info in man zshexpn [23:24] mjr_: I'm really impressed by the quality of answers on Quora. There are a lot of questions that I feel like answering, but I can't commit the time for such a definitive and thoughtful answer as everybody else gives. [23:25] pkrumins: ryah: we'll be in SF at 12, but then again we dont know when we'll free up [23:25] jsninja has joined the channel [23:25] pkrumins: (tomorrow) [23:25] tmzt: I think I'm in the wrong place [23:26] zorzar has joined the channel [23:26] DRMacIver has left the channel [23:26] mjr_: I need to get back to watching logfiles scroll by for a while. [23:26] mjr_: It is demanding work. [23:26] kiddphunk has joined the channel [23:27] isaacs: mjr_: i'm gonna ask my question there. [23:27] mjr_: in my log file? [23:27] xSmurf: haha that makes me think... [23:29] xSmurf: http://www.ossec.net/img/ossec-awardd.jpg [23:30] Figaroo: testing [23:33] ryah: pkrumins: ok [23:33] pkrumins: ryah: ok. [23:33] mdoan has joined the channel [23:34] jacobolus has joined the channel [23:34] tpryme: ecto: Can you send me some sample data that was causing the redis-node hangup? [23:36] jamesarosen has joined the channel [23:37] charlenopires has joined the channel [23:38] gakusei has left the channel [23:38] dguttman_ has joined the channel [23:40] Spreadsheet has left the channel [23:44] zorzar_ has joined the channel [23:44] broofa: Anyone know if Wade Simmons (author of node-thrift) hangs out here? what his nick is?' [23:45] skm has joined the channel [23:45] sinisa has joined the channel [23:45] sinisa: hellou :) [23:45] sinisa: i have question about RAM consumption and node... on windows (i know) [23:46] mjr_: broofa: I think you guys ought to take the leadership position on node + thrift. [23:47] mjr_: Who better? [23:47] creationix: how is thrift compared to msgpack? [23:47] broofa: mjr_: yeah, specially since Mark Slee sits right behind me. :P [23:49] broofa: creationix: I haven't perf-tested msgpack, but I know it's written to be fast. And my first experiments with node-thrift are turning up less-than-stellar performance. [23:49] creationix: broofa: cool, thanks [23:50] broofa: creationix: I'd say unless you need to talk to thrift services, msgpack is probably a better choice for basic object transport. But bear in mind that it's not an RPC protocol the way thrift or json-rpc is. [23:50] skm has joined the channel [23:50] sinisa: creationix.. im just dl your haml.js :) [23:50] robotarmy has joined the channel [23:51] creationix: not that I want an rpc, but I thought msgpack had one [23:51] broofa: ... so if it's rpc you're after, you'll need to add some housekeeping code on top there. [23:51] creationix: just not in the core protocol [23:51] creationix: I just want super effecient json over the wire [23:51] creationix: + buffers [23:51] broofa: msgpack. [23:51] skm has joined the channel [23:51] creationix: the only problem with msgpack is that you can't tell the difference between buffers and strings [23:52] creationix: it only has raw binary blobs [23:52] zorzar has joined the channel [23:52] creationix: no way to specify encoding [23:53] broofa: Yeah, that'd be a nice addition. [23:53] sinisa: will node stop using more and more ram , or it will proceed as long as it is avaliable? [23:53] [[zz]] has joined the channel [23:54] broofa: creationix: does http://msgpack.org/ specify buffer .vs. string data types? [23:54] piscisaureus has joined the channel [23:54] Pilate: it wont increase unless your application request/requires it [23:54] creationix: broofa: not that I know of [23:54] mikeal has joined the channel [23:54] creationix: sinisa: V8 has a max memory usage cap [23:54] warz: im new to nodejs in general, and am wondering how well does socket.io scale? from my understanding, it opens a socket for every client session, somehow. how would this scale and handle 100 concurrent users, or 1000, or more? [23:54] ryah: isaacs: why does there have to be a library for globs? [23:54] ryah: isaacs: it's probably just part of zsh.. [23:54] isaacs: ryah: that may be [23:54] creationix: warz, 1000 is nothing [23:54] paulrobinson has joined the channel [23:54] mwilliams_ has joined the channel [23:54] isaacs: ryah: but ruby uses it, i think [23:55] creationix: but 10,000 starts to matter [23:55] creationix: depends on hardware and os [23:55] isaacs: ryah: there's also a perl extension for it [23:55] sh1mmer has joined the channel [23:55] sinisa: creationix.. mac mem usage cap will be? [23:55] warz: creationix, but lets assume the upper boundary is being reached - is there a clear way to scale this horizontally? [23:55] sinisa: mac=max [23:55] pquerna: warz: i'd suggest benchmarking your use case, but 1000s++ is generally fine [23:55] creationix: sinisa: I think it's either 1gb or 2gb, not sure [23:55] creationix: sinisa: and node buffers don't count in this limit [23:55] creationix: I've allocated 16gm of buffers once [23:56] ryah: isaacs: [23:56] creationix: (when load testing my infinite game map engine) [23:56] ryah: 0 0 ~/src/zsh-4.3.10 : egrep -i "glob\>" configure.ac [23:56] ryah: 0 1 ~/src/zsh-4.3.10 : find . | grep glob [23:56] ryah: ./Src/glob.c [23:56] sinisa: so it will "eat" it until reaches 1gb? [23:56] warz: ok, i dont think ill reach 1000 concurrent users any time soon, or ever. lol. but i just like thinking into the future, i guess. [23:56] creationix: sinisa: it gc's long before it hits that [23:56] isaacs: ryah: yeah, downloading now. gonna see how they do it. [23:56] sinisa: creationix.. im using it on windows... [23:56] pquerna: re: scalling horizontally, there isnt a ton of structure in node to help you do that directly, other than it being easy to write networked apps in it -- and it has things like AMQP libraries [23:57] creationix: warz: yeah, node scales really nice with concurrent connections, they add very little overhead [23:57] creationix: it's your actual work per user that would make most the difference [23:58] ryah: warz: doesn't scale beyond one core [23:58] warz: cool. right now i just have nodejs dedicated to handing socket.io connections. my user facing site is just being served up by nginx.