[18:39] frigg: VERSION [18:39] nodelog has joined the channel [18:39] ryah: % nm obj/release/regexp-macro-assembler-irregexp.o [18:39] ryah: nm: no name list [18:40] junkee[]: is there a want for ui's in node? i searched for it but did not found a good project... [18:40] reid has joined the channel [18:41] pdelgallego has joined the channel [18:41] aconbere has joined the channel [18:42] ryah: g++ -o obj/release/regexp-macro-assembler-irregexp.o -c -Wall -Werror -W -Wno-unused-parameter -Wnon-virtual-dtor -pedantic -m64 -O3 -fomit-frame-pointer -fdata-sections -ffunction-sections -ansi -mmacosx-version-min=10.4 -fno-rtti -fno-exceptions -fvisibility=hidden -Wall -Werror -W -Wno-unused-parameter -Wnon-virtual-dtor -pedantic -m64 -O3 -fomit-frame-pointer -fdata-sections -ffunction-sections -ansi -mmacosx-version-min=10.4 -DV8_TARGET_ARCH_X64 -DENABLE_VMS [18:42] dgraunke has joined the channel [18:42] EyePulp: junkee[]: can you define "ui's" a little more specifically? [18:42] junkee[]: gtk e.g [18:43] mjr_: ryah: do you want an account on my machine so you can see what is different? [18:43] mraleph: ryah: if regexp interpretation is disabled then this file is effectively empty. [18:44] ryah: mraleph: shouldn't it be on? [18:44] ryah: oh nm [18:45] achristianson has joined the channel [18:45] Gruni has joined the channel [18:45] joewest has joined the channel [18:46] msekimur_ has joined the channel [18:46] ryah: oh wait.. hm [18:46] ryah: seems to work... [18:47] junkee[]: so... nobody is interested in gtk in node? [18:47] stepheneb has joined the channel [18:47] c4milo: html ftw [18:47] c4milo: cs [18:47] c4milo: css [18:47] c4milo: html+css ftw [18:47] c4milo: gtk ugly :$ [18:48] sid has joined the channel [18:48] junkee[] has left the channel [18:49] aurynn: I'm still fiddling with node+sdl [18:49] Sami_ZzZ has joined the channel [18:49] mraleph: ryah: by regexp interpretation I meant "emit and run bytecode instead of compiling it to native" [18:50] delapouite has joined the channel [18:51] derren13 has joined the channel [18:53] liar has joined the channel [18:55] maushu has joined the channel [18:57] Sami_ZzZ has joined the channel [18:58] GriffenJBS has left the channel [18:58] ryah: ACTION git bisects the fix [18:59] tjholowaychuk: :) [19:01] broofa has joined the channel [19:02] sh1mmer has joined the channel [19:02] tylerstalder has joined the channel [19:04] dguttman has joined the channel [19:09] wasabist has joined the channel [19:11] ryah: fixed in 5951 [19:11] ryah: r5951 that is [19:12] ryah: it seems unrelated to the error [19:12] InsDel has joined the channel [19:12] ryah: applies cleanly to node [19:13] mraleph: ryah: you could have just asked me :-) [19:13] mraleph: instead of bisecting [19:13] ryah: https://gist.github.com/736641 [19:13] ryah: mraleph: :) [19:14] ryah: i guess i could have just git log -- src/runtime.cc and i probably would have got it [19:14] mjr_: Oh, subversion and your human-readable sequence numbers. How we pretend that our git sha1's are more useful somehow. [19:15] dandean has joined the channel [19:17] jewgonewild has joined the channel [19:18] sechrist: mjr_: haha, internally we are going over that now [19:18] sechrist: we moved from svn to git [19:18] sechrist: and we have to generate incremental build ids and stuff [19:18] sechrist: been a lot of meetings [19:19] mjr_: Don't get me wrong, I love git, now that I've used it for a while. I can't imagine going back. [19:19] mjr_: But that sequence number is so nice. [19:19] AAA_awright: Git made me stop hating revision control systems. [19:19] sechrist: also github has spoiled the shit out of me [19:19] strmpnk has joined the channel [19:19] AAA_awright: I LOVE Git [19:19] sechrist: I'm more used to the fork model than branching [19:20] stride: sechrist: did you just start over with a clean git repo or have you found a way to get your version history from svn into it? [19:20] sechrist: yes we have our full svn history in it [19:20] sechrist: makes the damn git repo gigabytes [19:21] sechrist: not sure of the details of that migration [19:21] AAA_awright: How much code do you have? [19:21] sechrist: can't say [19:21] sechrist: but not enough to warrant gigabytes of a git repo [19:21] sechrist: metadata garbage [19:22] sechrist: I would suggest not having your svn history in it -- but that will break blame i'm sure [19:22] sechrist: depending on how far you are into git [19:23] intel_i7 has joined the channel [19:23] fly-away has joined the channel [19:24] intel_i7: Does anyone have a compiled windows node.js? [19:24] intel_i7: I can't get it to work [19:24] sechrist: use that i7 on a useful operating system [19:24] langworthy has joined the channel [19:25] EyePulp: heh [19:25] mjr_: zing! [19:25] pquerna: ryah: http://groups.google.com/group/python-tornado/browse_thread/thread/94b45e815ac992ac# [19:25] sechrist: what polling mechanism do the various asio libs use on windows? [19:26] sechrist: pquerna: :D [19:26] pquerna: select, wsawaitformultipleevents, iocp [19:26] sechrist: wait, the best of those is the worst of the rest of the world? [19:26] sechrist: or is iocp better than select? [19:27] pquerna: yes, iocp is very good, but its model is very different [19:27] sechrist: last time I used boost::asio seems like it ended up using select [19:27] sechrist: on windows [19:27] pquerna: very likely, as iocp has no equiv on linux/bsd/etc [19:27] micheil has joined the channel [19:27] Yuffster has joined the channel [19:28] sudoer has joined the channel [19:28] pquerna: to do a 'portable' IOCP, you would be better building off iocp semantics on other platforms [19:28] pquerna: ie, you could build an iocp like api using kqueue, but you can't use iocp to make an kqueue like api [19:28] sechrist: ah [19:29] sechrist: pquerna: I'm currently pushing to transition from a python-based infrastructure to more node [19:29] mjr_: Hey, so am I. [19:29] pquerna: go figure [19:30] pquerna: me too :) [19:30] sechrist: we're not as fancy as using tornado [19:30] pquerna: we are all twisted based. [19:30] sechrist: we have ctype bindings to c++ libs that spawn threads [19:30] sechrist: twisted would be an improvement [19:30] ircretary has joined the channel [19:30] isaacs: ircretary: hello [19:30] ircretary: isaacs: Hello :) [19:31] mjr_: I would like to see a non-hello world benchmark of node vs twisted/tornado that does something interesting like talk to a database, read files from disk, parse some JSON, and maybe some other things. [19:31] sechrist: thing is that a lot of our database drivers kind of blow [19:32] sechrist: however almost none of them are async in python [19:32] isaacs: mjr_: +1 [19:32] mjr_: Even doing memcached or Redis would be fine. [19:32] sechrist: so it may not matter [19:32] isaacs: mjr_++ [19:32] v8bot: isaacs has given a beer to mjr_. mjr_ now has 2 beers. [19:32] pquerna: mjr_: yeah, the biggest boost we are hoping to get though from python is switching to PyPy early next year [19:32] alexfner has joined the channel [19:32] mjr_: I'd want some actual twisted person to write the bench, because otherwise we'd be back in the "node vs erlang" territory again. [19:32] yozlet has joined the channel [19:32] pquerna: mjr_: but what kills us is all our database activity in twisted is deffered to a thread pool [19:33] sechrist: We have a ton of webapp stuff built on top of django, which isn't inherently a problem except that it talks via blocking apis to other internal services [19:33] pquerna: mjr_: and once you start threading in python -> you lost [19:33] mraleph: ryah: btw. do you remember syncpad's toyserver which were not doing well on node? I think I accidentally figured out his problem: he has a listener leakage on line 22. [19:33] andrzejsliwa has joined the channel [19:33] mjr_: Oh man, threading in python. Help. [19:33] pquerna: mjr_: so a pure-node thing that had an async db driver I think would rock. [19:33] sechrist: haaaaalp [19:33] neekers_ has left the channel [19:33] torvalamo has joined the channel [19:34] mjr_: I would be willing to propose the benchmark requirements and write the node version. Do you know any twisted people that might be into writing the twisted version? [19:34] mjr_: Am I spelling that right? [19:34] agilandfast has joined the channel [19:34] mjr_: twstd [19:34] sechrist: battle of the benchmarks [19:34] mjr_: Probably too many vowels for something so modern. [19:35] sechrist: http://cdn.theurbandaily.com/files/2010/09/michael-jackson-eating-popcorn.gif [19:35] pquerna: enocare for benchmarks, node I know I can fix, fixing anything in twisted in a mindfuck / impossible, because every api has a 12 year history, and half the issues are in core python. [19:35] stephank has joined the channel [19:36] mjr_: For actual, real work I completely agree. [19:36] stephank has joined the channel [19:36] mjr_: But I get a lot of pressure when these bad benchmarks come out. [19:36] pquerna: heh [19:36] mjr_: "I thought you said node was fast and good?" [19:36] mjr_: Is a typical comment. [19:37] pquerna: i hear C is fast and good [19:37] pquerna: doesn't mean you should write everything in it :) [19:37] aconbere: pquerna: don't tell them that [19:37] mjr_: heh [19:37] sechrist: my coworker would disagree [19:37] aconbere: you'll be writing websites in C [19:37] pquerna: i have [19:37] ircretary has joined the channel [19:37] sechrist: we have some strange things written in C99 [19:37] pquerna: its kinda fun once you have some good libraries going [19:37] pquerna: and yea, c99 is pretty... well it has issues but its nice enough enviroment. [19:38] sechrist: glib actually made my C writing much less painful [19:38] sechrist: but I know people dislike glib [19:38] pquerna: http://etl.i-want-a-pony.com/index.html [19:38] pquerna: ^ past life returns [19:38] creationix: you know php started as a c library [19:38] creationix: well cgi written in c [19:39] hornairs has joined the channel [19:39] tjholowaychuk: I would choose c over php lol so brutal [19:39] ircretary has joined the channel [19:39] Gregor: creationix: That was perhaps the most misleadingly absurd thing I've read all day. [19:39] sio has joined the channel [19:40] Gregor: creationix: What you said reduces to "PHP was written in C", which, as far as I know, is still true. [19:40] pquerna: actually, i should make a node.js version of etl. ETL was nice. [19:40] Guest67738: hi all, is there a recommended oo-system for javascript when working with nodejs? [19:40] pquerna: the TODOs never get shorter. [19:40] aconbere: Guest67738: [19:40] aconbere: oops [19:40] aconbere: yes [19:40] creationix: Gregor: no, what I mean is, originally it was a c-based thing + templating [19:40] aconbere: JavaScript :) [19:40] creationix: but then the templating became the language over time [19:41] aconbere: Guest67738: javascript is OO :) [19:41] Guest67738: aconbere, i mean something like Joose [19:41] sechrist: javascript's OO is laughable [19:41] creationix: sechrist: it's awesome [19:41] sechrist: but flexible [19:41] sechrist: very very flexible [19:41] creationix: finally no class enforcement [19:41] sechrist: easy to do magic in js [19:41] creationix: sechrist: wait till you try harmony proxies [19:41] creationix: you haven't seen magic yet [19:42] Gregor: creationix: Wait 'til you write your own language and interpreter, you haven't seen magic yet X-P [19:42] sechrist: oh right [19:42] robotarmy has joined the channel [19:42] pquerna: http://buildbot.nodejs.org/builders/OSX%2010.6.4/builds/8/steps/git/logs/stdio [19:42] _sio: i dont really like the prototype concept, i'd like a type system more like ruby's and i've seen Joose does it. all i'm asking is, is anyone using that and is there a better one out there that people generally use [19:42] pquerna: btw, anyone a git-person who would know why that keeps happening [19:42] pquerna: on the buildbot? [19:42] creationix: Gregor: yeah, that's fun too [19:43] pquerna: fatal: Could not parse object '5138992f3c275a1bab1593c7468c08f1f24e96bb'. [19:43] Gregor: Can I push that farther along? Wait 'til you've written your own architecture, blah blah blah [19:43] Gregor: Wait 'til you've written your own physics! [19:43] teemow has joined the channel [19:44] creationix: Gregor: well, that's not really relevent, most of us here don't do that [19:44] pquerna: oh man [19:44] pquerna: http://comments.gmane.org/gmane.comp.python.buildbot.devel/6011 [19:44] pquerna: osx sucks [19:44] pquerna: sigh [19:44] creationix: we all use Javascript [19:45] pquerna: once your controlling term leaves, you can't use dns anymore [19:45] pquerna: the fuck [19:45] Gregor: creationix: I suppose that'd be why we're here then X-D [19:45] strixv: tjholowaychuk: Did you write dox? [19:45] tjholowaychuk: strixv: yeah [19:45] kriszyp: in case anyone is interested in another OO project, here is something I have been playing with: https://github.com/kriszyp/compose [19:45] dev360 has joined the channel [19:45] tjholowaychuk: strixv: it is strict, you need to comment each code block for them to pair up [19:45] mjr_: pquerna: yeah, I've seen that with a load testing driver that I wrote. [19:45] strixv: Awesome, do you recall if there's a way to make a comment span both columns? [19:45] creationix: kriszyp: hi [19:45] kriszyp: hi creationix [19:45] techwraith has joined the channel [19:46] kriszyp: you at palm now? [19:46] tjholowaychuk: strixv: nope there is not (yet) [19:46] mjr_: You'd try a chain of ssh commands from a backgrounded shell, and the first would work, but then the second would fail on DNS. [19:46] tjholowaychuk: would be cool to add more features to the project some day, just not really a priority [19:46] strixv: tjholowaychuk: Ok cool, just checking. I might fork it [19:46] tjholowaychuk: strixv: cool cool [19:46] _sio: so, anyone use an OO system on top of javascript for their node.js ? [19:47] strixv: _sio: JS is OO, do you mean a traditional Class system or something? [19:47] mohiam_ has joined the channel [19:47] pquerna: mjr_: i want to love osx most of the time, but every now and then its just stupid. [19:47] _sio: strixv, yes, traditional class system [19:47] Gregor: _sio: We're all just busily wishing that you would stop saying "an OO system on top of JS", since that suggests the bizarre notion that JS isn't OO already. [19:48] strixv: _sio: I don't, but I have noticed some of the Express/Connect libs using Class.extend() stuff if you want to search for code [19:48] _sio: Gregor, sorry, you're right. i guess i'm looking for an inheritencemodel [19:49] mjr_: pquerna: OSX for graphical wonderment: awesome. OSX for Unix programming: ehhh, better than Cygwin I guess. [19:50] dev360: Hi, what do you use to ensure client affinity with a cluster of node.js servers? [19:50] jpick has joined the channel [19:50] mjr_: dev360: that's a pretty broad question. Can you say a bit more about your application and environment? [19:51] felixge: ryah: what makes you think that http://blog.mysyncpad.com/post/2143658273/syncpad-node-js-server-revisited shows a real problem? (http://twitter.com/ryah/status/13308648704970752) [19:52] admc_ has joined the channel [19:52] mjr_: felixge: that huge jump from low CPU to max CPU does not seem right. [19:52] felixge: ryah: I looked at the code and the script is leaking globals like crazy and the fact that some redis lib is involved as well makes me think it's just plain memory leaks [19:52] dev360: mjr_: I'm not sure if I'm missing something, but if I were to run web sockets, wouldn't I have to ensure that traffic always goes to the same box if its behind a load balancer? I was wondering what people were using since I'm not too familiar with the nuances of different proxies (nginx, haproxy, whatever) [19:52] mjr_: Even if the code is bad or whatever, why does it spike like that? [19:53] felixge: mjr_: that does look suspicious, true [19:53] aubergine has joined the channel [19:53] felixge: mjr_: but not much more suspicious than the code itself :) [19:53] mjr_: felixge: roder sent me the ab commands he uses, so I plan on try to reproduce it myself. [19:53] felixge: mjr_: cool [19:53] mjr_: Probably not until next week though. [19:54] felixge: well, I don't mean to discredit this thing - it may very help us fix some serious flaw [19:54] felixge: but it's a prime case of "how to not do benchmarks" [19:54] felixge: :) [19:54] pedrobelo has joined the channel [19:55] felixge: or let's say: How to take an interesting benchmark, but stop the work at 25% and go like: "Hey community, please figure it out!" :) [19:55] mjr_: right [19:55] eee_c has joined the channel [19:55] mjr_: I hate the benchmark game, which is why I want us to at least have a good one out there. [19:55] mjr_: Because people are going to play it anyway, whether we like it or not. [19:56] mjr_: But that guy does seem to have uncovered a real issue. [19:56] felixge: in that case it's very good [19:56] felixge: so I'm happy he did it [19:56] mjr_: Someone else tweeted me that they are having the same issue in their code. [19:56] mjr_: So it's probably something. [19:56] mjr_: I can demonstrate something similar with my redis parser. [19:56] micheil: felixge: I don't suppose you have a tool for doing mysql migrations with node, right? [19:56] felixge: but if I go all fancy on graphs and stuff I may as well spend the 2 hours it takes to reduce the test case a little further [19:57] felixge: micheil: other than emailing my co-founders some crazy-ass SQL at midnight? nah, not really ;) [19:57] mjr_: felixge: yeah, I conclude the same thing. If you get all of that pretty data, doesn't it look just BROKEN? Why not take it to the node people first and say, "what am I doing wrong here?" [19:58] mjr_: But, oh well. [19:58] felixge: anyway, I'll stop bitching now as well [19:58] felixge: I'm very happy if this leads to a fix [19:58] mjr_: They say vendors never fix security issues until exploits are in the wild. Maybe this is the same. [19:58] felixge: but I hope it doesn't inspire more people to use this methodology [19:58] felixge: mjr_: oh, I'm ok with him publishing it and showing flaws in node [19:59] felixge: mjr_: just the fact that the test case is 150 LoC + Redis [19:59] felixge: anyway [19:59] felixge: enough [19:59] felixge: :) [19:59] felixge: who wants a beer? [19:59] felixge: I have 2 [20:00] mjr_: pass that beer off to a function that'll close over it for 8 hours when I can drink it. [20:01] felixge: Object.freeze(beer) you mean? [20:01] felixge: :) [20:01] mjr_: felixge: BTW, I ran down a potential redis performance issue with him, and it had no effect, so I'm thinking that the redis lib isn't the issue, but it's hard to say. [20:01] mjr_: ANYWAY [20:02] mjr_: I must write more programs [20:02] micheil: isaacs: did you get the names of those tools you were interested in yesterday? [20:02] isaacs: hrm? [20:03] felixge: mjr_: me too, I have lots of stuff to play with after upgrading from a 6 month old node version :) [20:03] mjr_: felixge: node at master has a lot of great stuff in it. [20:03] micheil: isaacs: divvy, sizeup, etc [20:04] langworthy_ has joined the channel [20:04] isaacs: oh, right, forgot all about that [20:05] softdrink: tjholowaychuk: any idea why express will just peg my cpu and not render anything? i'm using jade [20:05] Me1000 has joined the channel [20:05] tjholowaychuk: softdrink: in some cases an invalid template might, incorrect syntax [20:05] tjholowaychuk: since there are some while()s [20:06] wasabist has joined the channel [20:06] podman has joined the channel [20:06] broofa: mjr_: btw, thanks again for the talk last night. lots of good comments from people here! [20:07] mjr_: broofa: you are welcome, it was really fun. [20:07] mjr_: You guys going to start doing some more node stuff then? [20:07] akahn has left the channel [20:08] technoweenie has joined the channel [20:08] softdrink: *headdesk* i had the html element indented after the doctype [20:08] softdrink: i need sleep [20:10] eee_c has joined the channel [20:11] podman has left the channel [20:14] bluegene has joined the channel [20:15] augustl has joined the channel [20:16] inji has joined the channel [20:18] gJ|Alex has joined the channel [20:18] benburkert has joined the channel [20:18] davidwalsh has joined the channel [20:18] robotarmy has joined the channel [20:19] sveisvei has joined the channel [20:19] dmcquay has joined the channel [20:19] dandean has joined the channel [20:22] pdelgallego has joined the channel [20:23] banjiewen has joined the channel [20:23] bluegene has joined the channel [20:23] bluegene has joined the channel [20:23] rburhum has joined the channel [20:25] jakehow has joined the channel [20:25] xla has joined the channel [20:25] bluegene has joined the channel [20:25] dguttman_ has joined the channel [20:26] dguttman has joined the channel [20:27] aheckmann has joined the channel [20:27] khelben has joined the channel [20:27] femtoo has joined the channel [20:29] Gruni has joined the channel [20:29] tahu has joined the channel [20:31] dev360 has left the channel [20:33] dguttman_ has joined the channel [20:35] ircretary has joined the channel [20:36] BrianTheCoder has joined the channel [20:36] possibilities has joined the channel [20:37] eee_c has joined the channel [20:37] slaskis: tjholowaychuk: i'm using the logger middleware for express, with this format: ":remote-addr - - [:date] \":method :url HTTP/:http-version\" :status :res[Content-Length] \":referrer\" \":user-agent\" :response-time" but the :res[Content-Length] is always undefined, but it's what is says in the docs? [20:38] tjholowaychuk: slaskis: hmm one sec [20:38] ircretary has joined the channel [20:38] si_ has joined the channel [20:39] shimondoodkin has joined the channel [20:39] tjholowaychuk: slaskis: there might be a bit of an issue there actually since express uses res.headers [20:39] si_: hi, where can i find documentation about node.js libraries such as 'http', or even better, through what IDE can i get intellisense for those? [20:39] tjholowaychuk: one sec ill patch [20:39] slaskis: tjholowaychuk: oh, thanks! [20:39] GasbaKid has joined the channel [20:40] ircretary has joined the channel [20:40] zubairov has joined the channel [20:40] SubStack: si_: http://nodejs.org/api.html [20:42] bingomanatee_ has joined the channel [20:43] bingomanatee_: Question - has anyone made a node based rest job manager/queue? [20:43] SubStack: why rest? [20:43] si_: SubStack, the API looks nice, any idea how those were generated? [20:44] SubStack: no idea [20:44] tjholowaychuk: slaskis: should be fixed [20:44] tjholowaychuk: if it was a collision issue [20:44] slaskis: awesome [20:44] slaskis: thanks for the quick turnaround, i'll test it [20:46] ircretary has joined the channel [20:47] si_: SubStack, https://github.com/rtomayko/ronn [20:47] creationix has left the channel [20:47] ircretary has joined the channel [20:48] ircretary has joined the channel [20:48] ircretary has joined the channel [20:50] gkatsev: and setTimeout(function(){Object.unfreeze(beer);}, hoursToMS(8)); [20:50] gkatsev: meh [20:50] ircretary has joined the channel [20:50] gkatsev: the channel was scrolled up apparently. :( [20:51] eee_c has joined the channel [20:52] mjr_: thanks for debugging my beer though [20:52] gkatsev: lol, np [20:53] peqnp has joined the channel [20:54] ircretary has joined the channel [20:55] torvalamo has joined the channel [20:55] slaskis: tjholowaychuk: now i've updated both connect and express from git but i still get undefined [20:55] ircretary has joined the channel [20:55] tjholowaychuk: slaskis: it was working for me with :res[Content-Length], so perhaps the content-length really is not defined in your case [20:56] slaskis: tjholowaychuk: oh, maybe i need to put the logger further down in the stack? [20:56] tjholowaychuk: slaskis: no it should be at the top always [20:56] tjholowaychuk: unless you want to omit say ... favicon() [20:56] slaskis: ah, right [20:56] tjholowaychuk: otherwise it should be the top, so that it can wrap the rest [20:58] slaskis: hmm, yeah seems like it actually is undefined, shouldn't it be set when using res.render or res.send? [20:59] tjholowaychuk: yeah those should set it [20:59] tjholowaychuk: just do a $ curl [20:59] tjholowaychuk: make sure [21:00] des_ has joined the channel [21:03] slaskis: tjholowaychuk: thanks, now i get it, i got an error thrown which made it not set a content-length. adding an error route fixed it. appreciate your help! [21:03] tjholowaychuk: slaskis: np [21:05] slaskis: now i just wish that node could throw some friendlier stack traces, it's quite difficult to find the line with an error in ejs files [21:05] TobiasFar has joined the channel [21:05] tjholowaychuk: slaskis: haha yeah, maybe some day i will add nice error reporting like jade [21:05] tjholowaychuk: for ejs [21:06] lstrojny has joined the channel [21:06] tjholowaychuk: templates are tough without that [21:06] slaskis: jade has it? i thought it was a node issues [21:06] slaskis: *-s [21:06] achristianson has joined the channel [21:06] tjholowaychuk: nope. you have to track the lineno and display the original source in context [21:07] twoism has joined the channel [21:09] slaskis: ah, i see now in the jade source, real smart [21:09] achristianson has joined the channel [21:10] achristianson has joined the channel [21:11] dguttman_ has joined the channel [21:12] delapouite has joined the channel [21:12] gf3 has joined the channel [21:13] bingomanatee_: SubStack - this would interface with other services (PHP, Perl, etc.) so I can't rely on the jobs being self-contained in node.js [21:13] slaskis: http://code.google.com/p/embeddedjavascript/source/browse/trunk/src/ejs.js?r=72 seems to be using jslint for creating a nicer stack trace [21:15] tjholowaychuk: haha pff [21:15] tjholowaychuk: that is lame [21:15] slaskis: haha [21:15] tjholowaychuk: sketchy implementation [21:16] tjholowaychuk: it should only take a few minutes, maybe i will add that right away [21:17] mtodd has joined the channel [21:17] slaskis: tjholowaychuk++ [21:17] v8bot: slaskis has given a beer to tjholowaychuk. tjholowaychuk now has 3 beers. [21:18] muk_mb has joined the channel [21:18] gJ|Alex has joined the channel [21:18] norviller has joined the channel [21:18] peqnp has left the channel [21:18] peqnp has joined the channel [21:20] technoweenie: bingomanatee_: i use resque to integrate with multiple languages [21:20] technoweenie: coffeescript / ruby / python right now [21:21] SubStack: bingomanatee_: eh? [21:21] SubStack: also: dnode has ruby and perl bindings! [21:22] SubStack: oh right, about rest [21:22] SubStack: got it [21:25] Jezek has joined the channel [21:25] Jezek: can anyone help me get node working [21:25] Jezek: i cant get access to the pages [21:26] Jezek: after i start the sever [21:26] aconbere has joined the channel [21:27] tjholowaychuk: Jezek: you have to handle req.url [21:27] eee_c has joined the channel [21:27] tjholowaychuk: and interpret it as you wish [21:27] wasabist has joined the channel [21:27] Jezek: k let me open up the file again [21:30] ircretary has joined the channel [21:31] ircretary has joined the channel [21:32] stephenjudkins has joined the channel [21:32] ircretary has joined the channel [21:34] ircretary has joined the channel [21:34] aconbere: ryah: ping [21:35] ircretary has joined the channel [21:36] ircretary has joined the channel [21:36] tekky has joined the channel [21:38] c4milo: args [21:38] c4milo: I forgot which C functions allow me to do asynchronous IO [21:38] c4milo: efficiently [21:38] c4milo: ACTION tired , friday sucks [21:38] Jezek: so tjholowaychuk , what should i do to get it to work? [21:39] Jezek: i just want to be able to do the simple "hello world" example, but i cant get it running [21:39] tjholowaychuk: Jezek: what ever you want it to do lol [21:39] tjholowaychuk: use the example on nodejs.org [21:39] Jezek: it's not local if that matters [21:39] Jezek: but i removed the 127 [21:40] stride: Jezek: are you still working on getting the hello world to run? [21:40] Jezek: lol just started working on it again today [21:40] si_: i getting throw new Error('removeListener only takes instances of Function'); but i'm 100% sure i'm giving removeListener a function -- anyone saw this before? [21:41] Jezek: i forgot what it tried already [21:41] Jezek: should i try the ip of the server? [21:41] Jezek: for the second param of listen [21:41] bluegene has joined the channel [21:42] stride: Jezek: you're on the server via ssh right? [21:42] dguttman has joined the channel [21:42] Jezek: yeah [21:43] achiu has joined the channel [21:45] Jezek: on a vps [21:46] stride: Jezek: does netstat -anlpo | grep node show you a line like tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 31682/node [21:47] terite: Anyone have any experience with static file servers? [21:47] mraleph has joined the channel [21:47] slaskis: tjholowaychuk: is there any changes done in express/connect with regard to locals and views? since i updated to try out the fix you did i get 'work is not defined' error, where work is a local which worked just before... [21:47] tjholowaychuk: slaskis: yes, use the 1.x branch [21:47] tjholowaychuk: if you are worried about 1.0 compat [21:47] terite: I'm wanting to use a lib instead of writing my own, but the one that's closest to what I want (node-static) seems to suck [21:48] slaskis: tjholowaychuk: what's the changes? will locals only be accessed through a locals var now? [21:49] tjholowaychuk: slaskis: res.render('foo', { foo: 'bar' }) vs the old res.render('foo', { locals: { foo: 'bar' }}) [21:50] slaskis: tjholowaychuk: aah, much nicer... [21:50] Jezek: it says i should be root [21:50] tjholowaychuk: slaskis: yup :) [21:50] slaskis: tjholowaychuk: the latest on npm uses that? i tried reinstalling but still has that error... [21:51] Jezek: but node was installed on the other account [21:51] tjholowaychuk: slaskis: no [21:51] tjholowaychuk: not until 2.0 is released [21:51] Jezek: could that be the problem? [21:51] davidascher has joined the channel [21:51] slaskis: oh ok, must be some cache in npm then [21:52] Jezek: i see two lines [21:52] Jezek: STREAM and DGRAM [21:52] Jezek: should i run it after i startup the server? [21:53] Jezek: wait now it shows the line [21:53] wasabist has joined the channel [21:54] Jezek: tcp 0.0.0.0:8124 0.0.0.0:* LISTEN 7262/node off(0.00/0/0) [21:56] stride: that looks fine as well. you checked iptables when we talked earlier. your vps is seriously weird [21:56] Jezek: yeah [21:56] Jezek: says in firewall port 8124 open [21:56] reid has joined the channel [21:57] Jezek: whoah [21:57] Jezek: i closed and opened the port [21:57] Jezek: working now [21:59] Jezek: other people say they cant connect [22:02] Hello71 has joined the channel [22:03] spyrosl has joined the channel [22:03] davida has joined the channel [22:05] matjas has joined the channel [22:07] Jezek: maybe the firewall is limiting to one connection or something? [22:09] stride: iptables without further configuration? I'd doubt that [22:10] Jezek: yeah that wouldnt make sense [22:10] Hello71 has joined the channel [22:10] Hello71 has joined the channel [22:11] Jezek: i tried every possible value for the server [22:11] trevoro: w [22:11] stride: could you send me the ip and port in a query Jezek? [22:16] mikeal has joined the channel [22:20] msekimura has joined the channel [22:22] softdrink: ok now… nesting in jade… i need to do: mainTemplate(projectTemplate(projectDetails)) [22:25] eee_c has joined the channel [22:25] martinciu has joined the channel [22:27] saikat has joined the channel [22:27] softdrink has joined the channel [22:28] davidc_ has joined the channel [22:28] davidc_ has joined the channel [22:29] sonnym has joined the channel [22:30] bingomanatee_ has left the channel [22:30] bingomanatee_ has joined the channel [22:32] JimBastard has joined the channel [22:32] tim_smart has joined the channel [22:33] rburhum has joined the channel [22:35] [[zz]] has joined the channel [22:36] sh1mmer has joined the channel [22:36] dandean: I just started with NVM -- does anybody know how to have your applications specify a specific version of Node to use via NVM? Or, do you just switch to that version of Node before starting your app? [22:37] WakiMiko has joined the channel [22:38] drudge has joined the channel [22:38] tjholowaychuk: dandean you can always use an absolute path [22:38] tjholowaychuk: if not possible otherwise [22:38] tjholowaychuk: to the binary [22:40] strixv has joined the channel [22:40] dandean: like --> /usr/local/.../node myapp.js ? [22:40] tjholowaychuk: yeah [22:40] stephenjudkins has joined the channel [22:42] dandean: so, for the duration of that apps lifetime, require() will look at the correct path, even if a different version of node is used for a different app? [22:42] tjholowaychuk: depends where your modules are, but typically yeah [22:42] tjholowaychuk: based on require.paths [22:42] tjholowaychuk: based on require.path [22:43] tjholowaychuk: whatever [22:43] tjholowaychuk: oh no its paths [22:44] dandean: thanks tj [22:45] derferman has joined the channel [22:45] meck has joined the channel [22:49] nefD: hmm.. is there a way to create an object instances via 'new' if all i have is a string containing the name of the desired class/prototype? [22:49] nefD: ie: i want to create a new Foo object.. normally i'd use 'new Foo()', but all i have is a string, "Foo" [22:51] tjholowaychuk: nefD: new global[name](a,b,c) [22:51] aconbere has joined the channel [22:51] tjholowaychuk: nefD: where global can obviously be some other object as well [22:51] nefD: tjholowaychuk: this is being done in the browser, i should've clarified that.. im guessing i can sub window for global? [22:51] tjholowaychuk: yup [22:52] nefD: tjholowaychuk: BOOM! worked like a champ.. you're the man (again) [22:52] tjholowaychuk: i prefer to not refer to it as window, and just use "this" [22:52] tjholowaychuk: so you dont end up tied to a var name, but not a big deal [22:52] nefD: well, the class is declared in the global scope [22:53] nefD: and where i'd be using this code, 'this' would refer to the object executing the code [22:53] tjholowaychuk: nefD: yeah its not a biggie [22:53] AAA_awright: Are there any RDF databases that work well with Nodejs? [22:54] cjm has joined the channel [22:55] Aikar: ryah: http://blog.mysyncpad.com/post/2143658273/syncpad-node-js-server-revisited I gave him some updated code to try running hopefully see more proper results. [22:56] Aikar: (daniel ennis comment) [22:56] jpld has joined the channel [22:57] reid has joined the channel [22:58] Connorhd has joined the channel [22:58] ivan has joined the channel [23:02] tonicme has joined the channel [23:02] tonicme has left the channel [23:02] pifantastic_ has joined the channel [23:06] ericvicenti has joined the channel [23:06] tim_smart: Sure [23:06] tim_smart: Wrong channel :/ [23:07] mraleph: Aikar: I think you changed his code too much. Even if this fixes his problem I will be hard to tell what exactly caused it. [23:07] Aikar: mraleph: not really, my code change was where the guy above mentioned it being a memory waste, he was registering a ton of message events but never registering them [23:08] mraleph: Aikar: i am the guy above :-) [23:08] Aikar: oh lol [23:08] Aikar: but yeah im pretty sure thats where alot of his memory is going [23:09] Aikar: so if my change results in good memory use, it proves that was the issue [23:09] Aikar: my change near bottom of file was simply removing the .listen line and exporting the server so very minimal modification [23:10] mraleph: hmm what about all "multiserv" stuff? [23:11] Aikar: that just spawns the code 8 times, running identical code [23:11] Aikar: but as i edited my post, HTTP Keep Alive is going to break that :/ [23:11] mraleph: ah. ok. [23:11] Aikar: as a new connection wont be opened for each ajax call [23:11] Aikar: itll reuse same connection [23:12] Aikar: i wrote that lib in the sense for splitting up multiple users and each person always goes to same process [23:12] Aikar: (ie they dont bounce) [23:13] Aikar: line 159 was all i modified for multiserv, which i essentially removed .listen() and compacted to 1 line [23:14] mikeal has joined the channel [23:14] Aikar: how that works is a parent process runs the real TCP server, and all new connections are hashed and dividied up to a child process, passing the file descriptor to the child, then the child owns the connection. [23:18] brianleroux has joined the channel [23:19] mtodd_ has joined the channel [23:27] rauchg_ has joined the channel [23:30] martinciu has joined the channel [23:31] jashkenas has joined the channel [23:32] altamic has joined the channel [23:33] Jezek has joined the channel [23:36] slaymer has joined the channel [23:37] aubergine_ has joined the channel [23:38] Aikar: mraleph: he said hes gonna try it this weekend with my fix [23:38] eee_c has joined the channel [23:38] mraleph: Aikar: yep, I noticed [23:42] sveimac has joined the channel [23:48] softdrink: i <3 Faker.js [23:50] JimBastard has joined the channel [23:51] SubStack: speaking of fakers... [23:51] JimBastard: SubStack: http://www.youtube.com/watch?v=9-JFoRjhXJw [23:51] SubStack: click [23:51] SubStack: JimBastard: you just missed 23:48:51 < softdrink> i <3 Faker.js [23:52] JimBastard: nice [23:52] softdrink: hehe [23:52] mbrochh has joined the channel [23:52] softdrink: Faker.Company.bs() works so well for project titles [23:52] JimBastard: softdrink: give up some patch love [23:52] JimBastard: faker could always use more data [23:52] JimBastard: :-D [23:52] softdrink: i want to add a date module to it [23:53] eee_c has joined the channel [23:53] JimBastard: softdrink: i think i have random data code kicking around [23:53] stepheneb has joined the channel [23:53] JimBastard: it exists [23:53] JimBastard: should be easy [23:53] JimBastard: do that shit [23:53] JimBastard: :-D [23:53] softdrink: date, not data :) [23:53] SubStack: JimBastard: hah awesome [23:53] SubStack: I approve of this. [23:53] JimBastard: ahahahah awesome [23:53] [[zz]] has joined the channel [23:53] JimBastard: just waiting for blog posts now [23:54] SubStack: maybe a nice fade out at the end [23:54] SubStack: is the only thing [23:54] JimBastard: i wonder if my secret internet haters will post this to reddit before couchone posts it online [23:54] Jezek: i posted it [23:54] Jezek: im a hater [23:54] Jezek: super hater [23:54] JimBastard: :-) [23:55] softdrink: Haters gonna hate… *strut* [23:55] SubStack: JimBastard is a nothing but a faker! I can tell by the codes! [23:55] tim_smart: JimBastard: Who does all the skate videos? [23:55] JimBastard: tim_smart: my friend sergi [23:55] SubStack: proof: http://maraksquires.com/Faker.js/ [23:55] JimBastard: tim_smart: we've done a bunch of stuff [23:55] SubStack: where are the subway shots from? [23:55] JimBastard: nyc [23:55] dandean has joined the channel [23:56] tim_smart: Longboarding is awesome [23:56] twoism has joined the channel [23:56] Gregor: Waterboarding isn't. [23:56] brianleroux: ++longboarding [23:56] davidascher has joined the channel [23:56] abiraja has joined the channel [23:57] softdrink: ACTION can barely stay standing on a longboard [23:57] softdrink: i fail at cool [23:57] softdrink: heheh [23:57] Jezek: bleh longboard [23:57] Jezek: where are the brakes [23:57] brianleroux: softdrink: the trick is speed...and learning to take a fall [23:57] brianleroux: jezek: your foot [23:57] Jezek: i dont want to ruin my shoes [23:58] Aria has joined the channel [23:59] tim_smart: I remember when we longboarded down a 14 story carpark, then took the elevator back to the top, then repeated. [23:59] slaskis has joined the channel [23:59] tjholowaychuk: JimBastard: ahahah wtf??? is that you? [23:59] JimBastard: tjholowaychuk: 10-4 [23:59] JimBastard: and my boy Big Cricket [23:59] tjholowaychuk: haha [23:59] tjholowaychuk: oh man [23:59] SubStack: rj2j on one of these other vids, respect