[00:00] chjj: it was scary when the web was on the verge of becoming xml based [00:00] hansschmucker: I personally love XHTML [00:00] chjj: so glad thats over with [00:00] chjj: well...youre wrong [00:00] chjj: very wrong [00:00] hansschmucker: And it's not dead yet :) [00:00] mscdex: jhtml == json html! [00:00] chjj: xhtml is horrible [00:00] mscdex: :p [00:00] chjj: very terrible [00:00] chjj: terribad even [00:00] brettgoulder has joined the channel [00:00] hansschmucker: Wonderfully predictable is what I'd call it [00:00] chjj: no incremental rendering === FAIL [00:01] chjj: no graceful error handling === FAIL [00:01] hansschmucker: HTML is worse... you have to know all implicit rules [00:01] erichynds has joined the channel [00:01] chjj: "all the implicit rules"? [00:01] chjj: like implicit tags? thats all i can think of in that regard [00:01] jesusabdullah: It is my understanding that html5 tries to codify said implicit rules [00:01] mscdex: let's just all use a giant picture for websites along with an image map for hyperlink support [00:01] hansschmucker: CANVAS without a separate closing tag fails on Gecko, works on Webkit [00:01] chjj: what do you mean by implicit rules? [00:01] erichynds: is it not possible to start a yaml key with an integer? js-yaml throws a "has not properly dedented" error [00:01] chjj: so implicit tags you mean [00:02] chjj: jesusabdullah: implicit tags have been specced since html2 [00:02] hansschmucker: because the Canvas tag implicitely closes itself on Webkit, but not on Gecko [00:02] arpegius has joined the channel [00:02] jmoyers: oooh noooo [00:02] chjj: lol [00:02] tikva has joined the channel [00:02] jesusabdullah: chjj: They have, but this is about previously undefined behaviors that come from technically incorrect, unspecified code. [00:02] hansschmucker: Specced yes, but I still have to remember them, when in XHTML it's just for selfclosing for opening [00:02] jmoyers: do you also like xml namespaces :-)? [00:02] hansschmucker: Love them [00:03] hansschmucker: SVG and XHTML wonderfully combined [00:03] bergie has joined the channel [00:03] hansschmucker: is there anything more beautiful than that [00:03] chjj: hansschmucker: that behavior is being implemented [00:03] chjj: for html [00:03] jesusabdullah: I'm going to build all my web pages in photoshop! HTML5 be damned. >:O [00:03] chjj: look at opera [00:03] hansschmucker: I know [00:03] hansschmucker: It's part of HTML5 [00:03] chjj: imo it should be now that DTDs have been unequivocally dropped [00:04] chjj: which they should have been a LONG time ago [00:04] chjj: because no html implementation was ever sgml based [00:04] hansschmucker: Yep.... I agree on the DTD front [00:04] chjj: but guess what, xhtml hasnt dropped them, because its still bound to the xml spec [00:04] jonaslund: ACTION holds onto his DTD's and waves around a sword! [00:04] hansschmucker: XHTML5 isn't [00:04] chjj: an xml document technically is not conforming unless it has a doctype [00:04] hansschmucker: ? That's wrong [00:05] chjj: it doesnt even need a PI but it needs a doctype [00:05] hansschmucker: No Doctype [00:05] chjj: lol, let me dig up the spec... [00:05] hansschmucker: HTML5 needs a DOCTYPE, XHTML5 doesn't [00:05] hansschmucker: You're confusing the two [00:05] hansschmucker: XHTML5 needs a namespace, but no DOCTYPE [00:05] hansschmucker: HTML5 needs a DOCTYPE, but no namespace [00:05] jonaslund: HTML5 needs an "empty" doctype for IE to fly [00:06] jmoyers: ACTION keeps his malformed html and is happier for it [00:06] jonaslund: otherwise IE goes into crappymode [00:06] highermath_away has joined the channel [00:06] hansschmucker: It's also required by the standard [00:06] hansschmucker: But not for XHTML [00:07] chjj: jonaslund: good point to make, its not "the html5 doctype", its simply an empty doctype [00:07] chjj: bugs me when people call it the html5 doctype [00:07] hansschmucker: "XML documents may contain a DOCTYPE if desired, but this is not required to conform to this specification." [00:07] hansschmucker: http://www.whatwg.org/specs/web-apps/current-work/multipage/the-xhtml-syntax.html#writing-xhtml-documents [00:07] jmoyers: you know what i wish [00:07] chjj: yeah, except thats the whatwg, not the w3c shithole [00:07] jmoyers: i wish i had to write [00:08] chjj: like the w3c will even acknowledge that [00:08] jmoyers: [00:29] hansschmucker: Could be that a certain rule is only active when a XHTML namespace is selected on that node. [00:29] Tobsn: thanks! [00:30] jmoyers: can't pass the whole url through that though [00:30] jmoyers: it'll encode : and such [00:30] hansschmucker: I'd have to check that... but you can look it up in the Gecko source yourself if you want.... I'm too tired for that now. [00:30] hansschmucker: http://mxr.mozilla.org/mozilla-central/ [00:30] chjj: hansschmucker: what are you saying? [00:32] hansschmucker: just that I'm tired and going for a quick smoke now. [00:32] chjj: oh i see what youre saying, yeah it does use xbl for some of the shadow dom things internally, i misunderstood you when you said it was simply "built on xbl" [00:32] materialdesign-1 has joined the channel [00:32] sdboyer has joined the channel [00:34] materialdesign-3 has joined the channel [00:34] miccolis has joined the channel [00:35] hij1nx has joined the channel [00:35] hansschmucker: There's the same kind of DOM for every document is all that I'm saying [00:36] caseywstark has joined the channel [00:36] hansschmucker: it might have to be written differently and some properties may not even be accessible if you use HTML instead of XHTML [00:36] hansschmucker: but it all ends up as the same kind of DOM [00:37] hansschmucker: But I still think you're taking all this too seriously [00:37] ss23 has left the channel [00:37] chjj: i dont dispute the dom is the same, im saying the rendering behavior is different [00:37] qrux has joined the channel [00:37] chjj: which it is [00:37] hansschmucker: Define rendering behaviour :) [00:37] hansschmucker: It's all the same rendering [00:37] chjj: the behavior by which something renders [00:38] hansschmucker: The same node would render the same, but it might end up a different kind of node because of what the parser has done, for example assigning a HTML namespace :) [00:38] chjj: this is sidetracking me from my main point anyway, xhtml is terrible [00:38] chjj: and im so glad its dead [00:38] waldirbertazzijr has joined the channel [00:38] chjj: and it needs to stay dead [00:39] hansschmucker: It's wonderful and not dead ;) [00:39] kersny has joined the channel [00:39] hansschmucker: I just like my code predictable [00:39] stepheneb has joined the channel [00:39] stepheneb has joined the channel [00:39] chjj: html is not predictable? [00:39] hansschmucker: XHTML will throw an error if I forget to quote an attribute. HTML will let it slide but cause undefined behaviour once a space appears [00:40] hansschmucker: just an example [00:40] hansschmucker: I can rule out possible errors much easier and earlier with XHTML [00:40] hansschmucker: Error logic is just easier [00:40] hansschmucker: HTML applies implicit rules to try and fix things [00:41] hansschmucker: and so it may appear as if everything was working alright [00:41] chjj: those implicit rules are defined though [00:41] ngs has joined the channel [00:41] chjj: there is a logic behind them [00:41] hansschmucker: Of course they are defined [00:41] hansschmucker: But the logic is much harder and it's much more likely that you'll make a mistake [00:42] Country has joined the channel [00:42] chjj: maybe once xhtml gets some kind of incremental rendering, i might consider wanting to use it [00:42] hansschmucker: For example the strange table/p interaction... I don't remember which way around you can't define them (luckily I started past the table era) [00:42] chjj: but even then, it would never be right for the web until it got graceful error handling [00:42] chjj: in which case [00:42] hansschmucker: That's exactly why I like it [00:42] chjj: why/ [00:43] hansschmucker: No graceful error handling, just straightforward right/wrong [00:43] chjj: you like your pages rendering as slow as possible? [00:43] chjj: oh [00:43] hansschmucker: No I don't like that part, but I never said I liked everything about it. [00:44] hansschmucker: I just like the basic assumption that it's either and error or it's not. [00:44] NetRoY1 has joined the channel [00:44] chjj: also, xhtml and xml in general appears to be dying, with svg, mathml, and xbl2 getting ported to html [00:44] Poetro has joined the channel [00:44] hansschmucker: We'll see. Honestly, I don't think it's important enough to drop... [00:45] hansschmucker: Dropping it would mean too much trouble for too little gain, so I pretty much expect it to live forever [00:45] chjj: im not saying drop it, im saying its dead/dying [00:45] chjj: im not commanding anything [00:46] hansschmucker: It's dead the moment browsers drop support [00:46] yukihr has joined the channel [00:46] hansschmucker: Which seems unlikely now that IE is even getting cosy with it. [00:46] chjj: in that case the .blink() method on the string prototype is still alive in JS [00:46] chjj: v8: 'hi'.blink() [00:46] v8bot: chjj: "hi" [00:46] hansschmucker: So far we never really could deploy XHTML due to IE, so we'll see what happens now. [00:46] chjj: browsers havent dropped it! its still alive! [00:47] hansschmucker: Exactly. [00:47] dnolen_ has joined the channel [00:47] chjj: alright then, xhtml will stay alive, and it will be just as useful as .blink() [00:47] chjj: im fine with that :) [00:48] hansschmucker: I can live with that. But we'll see. [00:48] gtramont1na has joined the channel [00:48] hansschmucker: But so far we couldn't even deploy XHTML, so we'll have to wait and see what happens once IE9 gains traction among the office folks. [00:49] jerrysv: we're still talking about xhtml? [00:49] hansschmucker: Basically yes. :) [00:49] chjj: honestly though, how often have things actually been dropped by implementors? [00:49] jerrysv: hoo boy [00:49] chjj: i dont expect it to be dropped [00:49] hansschmucker: I'm still waiting for it to arrive. [00:50] hansschmucker: XHTML has never been used so far since IE didn't support it... [00:50] Draggor: anyone have any opencl bindings yet? [00:51] zeade has joined the channel [00:51] chjj: hansschmucker: IE didnt support xml at all, they might have been onto something [00:52] mynyml has joined the channel [00:52] chjj: actually, the rss parser they used was a phony xml parser, it was their html parser ammending slightly, so it gracefully handled errors [00:52] hansschmucker: Chicken/Egg theories :) [00:53] chjj: ammended* [00:53] hansschmucker: Did XHTML never take off because IE didn't support it or was it the other way around? In any case, we couldn't use it [00:54] hansschmucker: So we'll have to wait and see what happens now that they DO support it [00:54] chjj: well, i definitely think IE just didnt support it because its IE and its terrible [00:54] justinw312 has joined the channel [00:54] hansschmucker: First thing we agree on :) [00:54] chjj: thats usually IE's MO, they dont support things just because [00:54] justinw312: So yeah, that socket.io problem I've been having. Turns out it resulted from me being an idiot. [00:54] hansschmucker: Well, it's been fun... but now I finally want to see what nodejs can do (especially when it comes to graphics... that's the part I'm most curious about) and then get some shuteye [00:55] justinw312: on('disconnect') delete client; [00:55] materialdesigner has joined the channel [00:55] justinw312: ...fail [00:55] chjj: hansschmucker: alright, seeya ...btw, xml is a rendering mode [00:55] chjj: jk :) [00:56] jerrysv: i'm off, ciao [00:56] darshanshankar has left the channel [00:56] materialdesign-1 has joined the channel [00:56] hansschmucker: chjj , dest.at is my blog BTW if you want to see what I'm curious about... eventhough it's updated very very rarely (I forget to put most things up there) [00:56] darshanshankar has joined the channel [00:58] BillyBreen has joined the channel [00:58] cafesofie has joined the channel [00:59] dshaw_ has joined the channel [01:00] stephanepayrard_ has joined the channel [01:02] chjj: hansschmucker: if youre still around, http://hsivonen.iki.fi/doctype/ -- good article explaining some of the differences between the rendering modes (including xml mode) [01:03] neoesque has joined the channel [01:04] caseywstark has joined the channel [01:06] NetRoY1 has joined the channel [01:06] NetRoY1 has left the channel [01:06] hansschmucker: He doesn't call it a rendering mode either ;) Just kidding. In Firefox it simply triggers a different stylesheet 99% of the time. There may be some slight quirks, but I don't think anything but the stylesheet really causes a rendering difference... but that's really all just semantics. [01:07] hansschmucker: No let me finally get a look at node.js ;) [01:07] hansschmucker: *Now [01:08] bastilian has joined the channel [01:08] danfo has joined the channel [01:08] chjj: sorry [01:09] samsonjs has joined the channel [01:10] abraxas has joined the channel [01:10] chjj: (css qnames are recognized differently though) ;p [01:10] davidbanham has joined the channel [01:11] hansschmucker: Never said I knew everything, just the stuff that affects me. [01:12] tikva has joined the channel [01:12] anatoo has joined the channel [01:13] dominictarr has joined the channel [01:14] darshan-mobile has joined the channel [01:17] yukihr has joined the channel [01:17] briznad has joined the channel [01:18] materialdesigner has joined the channel [01:18] hansschmucker: Is there a ways to call into DLLs/so directly, like with c-types? [01:18] Wizek: What is operator in `assert.fail(actual, expected, message, operator)` ? [01:19] willwhite has joined the channel [01:20] hansschmucker: Maybe the assert.notEqual and so on callbacks? No idea, but would seem logical to me? [01:20] azeroth__ has joined the channel [01:21] mattmcq has joined the channel [01:21] seivan has joined the channel [01:21] rfay has joined the channel [01:25] patcito has joined the channel [01:25] jmoyers: Wizek: I'd assume thats the operator that was used to determine the failure case [01:25] hansschmucker: I think he wants to know which format.... Strings? Constants defined where? [01:26] hansschmucker: Is it "!=" or assert.notEqual ? I'm curious about it too [01:26] jmoyers: uh [01:26] jmoyers: if you look at the source [01:26] jmoyers: its string coerced [01:26] jmoyers: so presume a string [01:26] jmoyers: https://github.com/joyent/node/blob/master/lib/assert.js#L58-62 [01:26] hansschmucker: Still have to learn about how node.js is built :) Noobie, remember? [01:27] jmoyers: dont read into my tone, i say presume too much :P [01:27] jmoyers: i say "uuuh" because im not sure [01:28] hansschmucker: Wasn't meant to sound like an attack on my part either :) [01:28] rick_h__ has joined the channel [01:28] rick_h__: anyone give me a hint on how to end a stream as an error? [01:28] captain_morgan has joined the channel [01:28] hansschmucker: I didn't even know that these functions were implemented in JS themselves until just now [01:29] jmoyers: much of the non-blocking stuff is impl in js-land [01:29] hansschmucker: I just wish I knew what the equivalent of Gecko's c-types was... [01:29] benmonty has joined the channel [01:30] hansschmucker: I love JS, but I'd still prefer to do some graphics stuff in C [01:30] Poetro has left the channel [01:30] brownies has joined the channel [01:30] duck1123 has joined the channel [01:30] hansschmucker: Gotcha: node-ffi [01:31] jmoyers: hansschmucker: people do push things that are awful and complex into c-land and just build bindings [01:31] jmoyers: huh, thats an interesting library [01:31] jmoyers: i hadn't seen that [01:31] hansschmucker: I was just wondering how you actually do the bindings... the ImageMagick plugin that I found seemed to just launch the binary over and over [01:32] jmoyers: i usually see people build v8 bindings [01:32] jmoyers: or do things like: https://github.com/rmustacc/node-ctype [01:32] patcito has joined the channel [01:33] _rain has joined the channel [01:33] hansschmucker: But node-ctype is just for data access, right? [01:33] jmoyers: yurp [01:33] jmoyers: i use it for libpcap stuff [01:33] jmoyers: packing and unpacking binary [01:33] kawaz_air has joined the channel [01:33] bwinton has joined the channel [01:34] CoinOpeBoy has joined the channel [01:34] hansschmucker: I'm actually quite comfortable doing that in JS, so that doesn't worry me too much [01:34] jmoyers: well [01:34] zeade has joined the channel [01:34] mike5w3c_ has joined the channel [01:34] hansschmucker: Well, on Firefox anyway [01:34] jmoyers: there is some nastiness with endianness given impl of Number in js and such [01:35] hansschmucker: Firefox: native data types :) [01:35] jmoyers: also 64 bit ints don't do so well since it cant even fit in Number [01:35] jmoyers: well -- this is v8 [01:35] jmoyers: so no love there [01:35] hansschmucker: There is simply an uint8 and so and and methods to split 64-bit ints into two numbers [01:35] hansschmucker: or you can just use pointers [01:35] ditesh|cassini has joined the channel [01:35] jmoyers: yup, thats identical to the node-ctype impl [01:35] jmoyers: actually uses an array i think [01:35] jmoyers: splits and recombines [01:36] CoinOpeBoy has joined the channel [01:36] duck1123: Hey guys, I'm just getting started with node, and I'm trying to install a package, but I'm getting this error: Not compatible with your version of node/npm: o3-xml@v0.1.0 [01:36] hansschmucker: Same for the spider and so on monkeys [01:36] hansschmucker: Hmm... node-ffi is a set of cpp files.... now for finding out how those modules work [01:36] duck1123: I've checked out that lib, but I have no idea what to do with it [01:37] jmoyers: duck1123: what version of node and and npm do you have? [01:37] duck1123: {"npm":"1.0.6","node":"v0.5.0-pre"} [01:37] jmoyers: sec [01:37] duck1123: but it's saying Required: {"node":"0.4.x"} [01:37] CoinOpeBoy has joined the channel [01:38] Grimmenstein has joined the channel [01:38] tonymilne: LOL @ http://twitter.com/b6n/status/73535660467818496 [01:38] jmoyers: , "engines": { "node" : "~0.4.0" } [01:39] jmoyers: in o3-xml package.json [01:40] tikva has joined the channel [01:40] jmoyers: i am assuming its crapping on 0.5 [01:40] jmoyers: the package maintainer may have put that there for a reason [01:40] jmoyers: or they might have meant >= [01:41] jmoyers: you could try [01:41] jmoyers: changing it, in node_modules [01:42] defstream has joined the channel [01:42] duck1123: ok, so I'm looking at the package.json of the package I'm actually trying to use (node-ostatus) and it looks like it's downloading a copy from a web server, can I just change that to my local path? [01:42] defstream_ has joined the channel [01:44] jmoyers: duck1123: am a little confused [01:44] jmoyers: when you are doing dev work with npm [01:44] skm has joined the channel [01:44] jmoyers: generall you just go into your project directory and say npm instal [01:44] jmoyers: it installs it locally, and its all good from there [01:44] jmoyers: goes into ./node_modules [01:45] gavin_huang has joined the channel [01:45] podman has joined the channel [01:46] podman: hij1nx: around? [01:46] sugardave has joined the channel [01:46] defstream: anybody familiar with everyauth? [01:47] defstream: i keep getting this Error: Step rememberTokenSecret of `twitter` is promising: requestTokenSecret ; however, the step returns nothing. Fix the step by returning the expected values OR by returning a Promise that promises said values. [01:47] defstream: from the example alone [01:47] duck1123: ACTION has the feeling he picked one of the worst packages to learn node.js for [01:48] chilts has joined the channel [01:48] dnolen has joined the channel [01:48] amerine has joined the channel [01:50] seivan has joined the channel [01:51] avalanche123 has joined the channel [01:51] MikeMakesIt has joined the channel [01:52] cloudhea1_ has joined the channel [01:53] pengwynn has joined the channel [01:53] shajith has joined the channel [01:54] rfay has joined the channel [01:54] antti_s has joined the channel [01:54] Spion has joined the channel [01:54] tmpvar has joined the channel [01:55] matt_c has joined the channel [01:56] freakazoid has joined the channel [01:56] k1ttty has joined the channel [01:57] themiddleman_itv has joined the channel [02:03] arpegius has joined the channel [02:04] newy has joined the channel [02:05] sugardave has joined the channel [02:06] antlong has joined the channel [02:08] quackslike has joined the channel [02:09] azeroth___ has joined the channel [02:10] jamescarr has joined the channel [02:10] Adman65 has joined the channel [02:12] jamescarr: hmmm... the latest express + expresso give me this when I run expresso in a new app: [02:12] jamescarr: app.test.js GET /: TypeError: Cannot call method 'push' of undefined [02:12] jamescarr: ... [02:13] mscdex: node.js rules! [02:14] mplabs has joined the channel [02:14] mplabs: Hello! [02:15] ion_: why is nodejs so awesome [02:15] mscdex: ion_: a better question is why should it not be awesome? [02:16] fakewaffle has joined the channel [02:17] igl has joined the channel [02:17] mplabs: I'm reading about many frameworks like this one. I want to implement a solution in which I need to do a long polling request. I wonder if anyone can give me a good article to understand why I should be using node.js and no something else... [02:17] fakewaffle: I keep getting this error, out of nowhere too, I think: "Error: ECONNREFUSED, Connection refused" [02:18] fakewaffle: I don't think it can be my code, because I went back to commits a long time ago, and I still get it. I just reinstalled Node, built it, and I still get it. [02:19] ion_: fakewaffle: does it print the stack trace? [02:19] mscdex: fakewaffle: you must be making a network connection somewhere [02:19] fakewaffle: mscdex: What do you mean? [02:19] mscdex: fakewaffle: you're connecting to a host somewhere right? [02:19] jamescarr: hmmm [02:20] jamescarr: rabbit.js or node-amqp? [02:20] fakewaffle: I installed node-inspector, worked fine, installed v8-profile, and maybe that messed it up? But I have deleted everything and started over with node [02:21] sor3nsen has joined the channel [02:21] mscdex: mplabs: node is good at long-lived connections like that because they take up hardly any resources [02:21] jmoyers: mplabs: http://dl.dropbox.com/u/3685/presentations/next11-dirt/node-dirt.pdf -- good slides on DIRT and why node is good at it (data intensive real-time). socket.io is another good reason -- https://github.com/LearnBoost/Socket.IO-node -- this works out of the box. [02:22] mplabs: thank you [02:23] niftylettuce has joined the channel [02:23] themiddleman_itv has joined the channel [02:24] mplabs: I already use JS in client side but I have never wrote any server side JS code, is it a better idea than to use something like Java with akka.io? [02:24] fakewaffle: ion_: What do you mean? [02:24] mplabs: The answer is obvious otherwise you wouldn't be here but the question is why it's a better idea [02:25] sorens3n has joined the channel [02:25] rbranson: C + libevent [02:25] wjwoodward has joined the channel [02:25] abraham has joined the channel [02:26] Guest36974 has joined the channel [02:27] wookiehang0ver has joined the channel [02:27] fakewaffle: I don't know what to do next :/ [02:27] mscdex: mplabs: because it's easy to do and fast [02:27] ckknight: hey all, what would you use to geolocate someone's IP address? I'd like to figure out what country, and hopefully what region or city within the country. [02:27] mscdex: ckknight: geoip [02:27] mscdex: ckknight: there's bindings for it [02:28] mscdex: mplabs: and it is really good at concurrency [02:30] rbranson: yeah like how it's single threaded, that's good for concurrency [02:31] mplabs: I think I will learn how to use it after to read the document jmoyers sent me [02:31] mplabs: by the way, the community (at least here) is absolutely bigger :) [02:31] rbranson: full of hipsters you mean? [02:31] ckknight: something can't be full of hipsters [02:31] ckknight: because then it's too popular [02:32] ckknight: and the hipsters won't be there [02:32] mscdex: mplabs: ryah's got some videos that might help too [02:32] Tobsn has joined the channel [02:32] jamescarr: aaaah [02:32] jamescarr: I'm going to be using coffeescript [02:32] jamescarr: g'day [02:32] rbranson: ckknight: don't say that. it'll see itself in the mirror [02:32] JoshC1 has joined the channel [02:33] podman: ckknight: https://github.com/kuno/GeoIP [02:33] mscdex: mplabs: here's one from about a year ago, but goes into detail about why and how: http://www.yuiblog.com/blog/2010/05/20/video-dahl/ and here's a newer one: http://www.youtube.com/watch?v=jo_B4LTHi3I [02:34] fbzhong has joined the channel [02:34] podman: ckknight: also, http://search.npmjs.org/#/geoip [02:34] mplabs: thank you so much [02:34] ckknight: podman: yeah [02:34] Emmanuel has joined the channel [02:35] CIA-103 has joined the channel [02:36] ChrisCiccone has joined the channel [02:36] MichaelCiccone has joined the channel [02:36] piscisaureus has joined the channel [02:37] ChrisCiccone: Okay where is he Mike... [02:37] tk has joined the channel [02:37] MichaelCiccone: dunno [02:37] zeade has joined the channel [02:38] madzak has joined the channel [02:38] MichaelCiccone: You're not worried that he has cost us thirty grand -- the guy you brought on to the deal -- and can't even close the deal? Unbelkievable Mike. [02:38] Xano has joined the channel [02:38] ChrisCiccone: MichaelCiccone: You brought him in you numbskull. [02:39] MichaelCiccone: okay let's just give him 15 minutes -- that's professional in New York [02:40] yozgrahame has joined the channel [02:40] PiersMorgan has joined the channel [02:40] PiersMorgan: Is this the meeting? [02:40] ChrisCiccone: PiersMorgan: You're late. [02:40] rbranson: not enough spectators for this [02:40] roar has joined the channel [02:41] PiersMorgan: rbranson: You're not in the meeting -- get fucked [02:41] rbranson: only if ur hot plz [02:41] dhasenan: PiersMorgan, you chose to meet on a channel with nearly 600 users. [02:41] ChrisCiccone: PiersMorgan: No, you get fucked you deal screwer. [02:42] rbranson: like you have to be 10gen employee hotz [02:42] ChrisCiccone: PiersMorgan is an idiot, I'm sorry. [02:42] dhasenan: In my town, you want to talk to someone, you talk in private. That way, the deal goes south, you get out the crowbar and take care of it like businessmen, nobody interfering. [02:42] ckknight: maybe it's just me, but can anyone get `npm install geoip` to work? [02:42] ChrisCiccone: dhasenan: We still do that. [02:44] ChrisCiccone: We just do it more professionally (i.e., get Piers Morgan fired from his job at CNN as the journalistic analogue to a bag of fake crack.) [02:44] dhasenan: That works, but me, I'm a traditionalist. [02:44] mplabs: ok, I have found many guides to learn about that. do you have anyone better than http://nodebeginner.org/? [02:44] PiersMorgan: I have bloody good ratings on CNN. [02:44] dget has joined the channel [02:45] mplabs: any one* [02:45] rbranson: are you even on your show? all i ever see when I flip past it is other mouthbreathers [02:45] matbee has joined the channel [02:45] mscdex: mplabs: http://nodebeginner.org/ http://nodetuts.com/ http://nodeguide.com/ http://howtonode.org/ [02:45] chouser has joined the channel [02:46] nerdfunk has joined the channel [02:46] ChrisCiccone: ChrisCiccone: And you banned Madonna from being interviewed on your show. A woman that I *love, and someone who doesn't even know who you are. [02:46] mscdex: mplabs: and of course there's always here, the mailing list, and the project wiki: https://github.com/joyent/node/wiki/ [02:46] rbranson: [02:47] nerdfunk: hello all [02:47] langworthy has joined the channel [02:47] mplabs: great! thank you all for now, I have enough to start! :) [02:49] ChrisCiccone_ has joined the channel [02:50] chouser: anyone here familiar with kanso? [02:50] ChrisCiccone_: Awful fight, but I think we've taught PiersMorgan not to play games banning a woman as awesome as Madonna from is boorish, philistine-mongering show. [02:51] ChrisCiccone_: *his [02:52] defstream_: what show is this? [02:53] podman: ckknight: what doesn't work when you do that? [02:53] ChrisCiccone_: Job done -- now I think I'll go jack off to Madonna to Like a Virgin and Ray of Light, listen to Lady Gaga, then write another thousand lines of world-dominating node.js :) [02:53] nerdfunk: evented fapping [02:53] podman: ckknight: do you have libgeoip installed? [02:54] ckknight: that might do it :P [02:54] ChrisCiccone_: nerdfunk: To Madonna's hotness, no less. [02:54] systemfault: Eww. [02:54] Nodemonster has joined the channel [02:54] systemfault: She used to be hot but now... [02:54] podman: madonna now or madonna 20 years ago? [02:54] ChrisPartridge: evented fapping.. hmm hate to be on the end of that callback [02:54] Nodemonster: Now of course. lol [02:55] nerdfunk: fap.on(" [02:55] nerdfunk: ... [02:55] systemfault: me.on('fap:end', ... [02:55] ChrisPartridge: fap.on('fail', function() { doctor.visit() }); [02:55] Nodemonster: I'd even -- dare I say it -- synonymously -- fap to Madonna. [02:55] nerdfunk: function(tissue){ [02:56] Nodemonster: Or synchronously [02:56] systemfault: me.on('fap:end', function(e) {clean(e.target); }); :/ [02:56] jtsnow has joined the channel [02:57] Nodemonster: fap.with(madonna); [02:57] brainproxy has joined the channel [02:57] Nodemonster: {target: madonna's face} [02:57] rbranson: Dim strFapResult = Fap "Madonna" [02:58] Nodemonster: Dim? [02:58] systemfault: VB.. [02:58] podman: lol [02:59] dhasenan: We take a dim view toward that around here. [02:59] Nodemonster: [awkward silence] [02:59] dhasenan: I'm sorry, father. I tried. I... tried... [03:00] gavin_huang has joined the channel [03:01] Nodemonster: The father at Mass told me I will go to hell for jacking off to pictures of Madonna wearing crosses and a wedding ring :( [03:01] jtsnow has joined the channel [03:01] Nodemonster: Actually, that was during the Confessional [03:01] JakeSays has joined the channel [03:01] systemfault: Nodemonster: Was he the same guy who said we we're going to die last week end? [03:02] Nodemonster: systemfault: No, he hates that guy. [03:02] systemfault: Ah ;) [03:02] JakeSays: so is there docs on building node.js with msvs? i cant seem to find any [03:02] systemfault: IMHO, I think he should be arrested.. and pass what's left of his life in jail [03:03] Nodemonster: yup [03:03] Nodemonster: I told the Father that jacking to Madonna is damn fun and so be it -- I'll pay the indulgence. [03:04] Nodemonster: It's weird that people lack the critical thinking to question WTF that guy wants the money for if we're at the end anyway. [03:05] Nodemonster: JakeSays: Why do you want to use Visual Studio to build node? Or do you mena for developing modules? [03:05] JakeSays: Nodemonster: i want to build node [03:05] systemfault: Nodemonster: Would you fap to that? http://www.youtube.com/watch?v=wS7Isqut_zI [03:06] systemfault: Ahh.. internet... [03:06] systemfault: ACTION cries. [03:06] Nodemonster: systemfault: Nope. [03:08] rbranson: JakeSays: pro tip: trying to use node.js in windows is just going to end up with you in tears [03:08] JakeSays: rbranson: and why is that? [03:08] darshanshankar has joined the channel [03:08] rbranson: JakeSays: because windows is a second-class platform for node. until someone comes along and makes everything work under windows, you're just going to be continually disappointed [03:09] rbranson: it's like trying to use anything .NET in Mono [03:09] rbranson: it works, kinda [03:09] JakeSays: rbranson: that's what i'm hoping to do. just wondering if there's some documentation [03:09] Nodemonster: rbranson: lol @ tears [03:09] rbranson: hoping to do what? [03:09] rbranson: make the ecosystem work under windows single-handedly? [03:10] Nodemonster: rbranson: Why not use gcc in cygwin? [03:10] rbranson: cygwin isn't windows [03:10] JakeSays: i'm not too concerned about the ecosystem. [03:10] JakeSays: just about my own needs. [03:10] chouser has left the channel [03:10] rbranson: your own needs don't involve things like npm and native extensions? [03:10] mertonium has joined the channel [03:10] Nodemonster: What do you need that's on Windows? [03:11] JakeSays: rbranson: not at the moment, no. [03:11] rbranson: have you ever written anything in node.js? [03:12] JakeSays: nope [03:12] rbranson: this channel is a ghetto [03:12] dustinwhittle has joined the channel [03:12] JakeSays: ghetto? [03:12] rbranson: yeah, werd [03:12] Nodemonster: It didn't used to be. :-( [03:13] rbranson: yeah i don't know what happened... like 6 months ago it was very different [03:13] JakeSays: its also short on straight answers. [03:13] Nodemonster: I kinda like my ghetto in Detroit though. [03:13] rbranson: JakeSays: I gave you an answer, just one you don't want to hear [03:13] Nodemonster: rbranson: Must mean node.js is taking off with the masses. :-) [03:14] JakeSays: rbranson: no, you gave me an opinion. [03:14] rbranson: there were a lot of people using it 6 months ago [03:14] rbranson: it's not an opinion lol [03:14] davidcoallier has joined the channel [03:14] rbranson: an opinion would be like "you're a fucking ass for trying to use node on windows" [03:15] JakeSays: yeah. you're right - this channel is a ghetto. [03:15] rbranson: just doing my part [03:16] Nodemonster: JakeSays: Any reasons why you've chosen node.js over solutions more well-supported on Windows? [03:16] jakehow has joined the channel [03:17] JakeSays: Nodemonster: i'm interested in server side js. [03:17] JoshC1: JakeSays: worked pretty easy with Cygwin [03:17] Nodemonster: I'd drop $10 bucks on a VPS host then. [03:18] rbranson: or he could drop $0 on a Linux VM [03:18] c4milo1 has left the channel [03:18] [[zz]] has joined the channel [03:18] Nodemonster: JakeSays: I do all of my node.js development on Windows and run it on my Linode VPS. [03:19] dgathright has joined the channel [03:21] Nodemonster: That way I can go to My Pictures and wack off to Madonna while I compile my v8.h node modules. :) [03:22] JakeSays: Nodemonster: well, its kind of impossible to step through node.js while its running on someone elses server [03:22] Swimming_bird has joined the channel [03:22] z8000 has joined the channel [03:22] rbranson: unpossible [03:22] mikey_p: seen kohai? [03:22] Nodemonster: JakeSays: Even with SSH? [03:22] mikey_p: :( [03:22] rbranson: kohai is dead as fk [03:22] rbranson: thank god [03:22] Nodemonster: rbranson: What is kohai? [03:23] mikey_p: awesome [03:23] rbranson: most annoying bot in the history of IRC [03:23] mikey_p: this channel is pretty noisy anyway [03:23] rbranson: mainly joins & parts [03:23] Nodemonster: I think PiersMorgan is prettty annoying. [03:23] jamescarr: wow... when you consider using a module and it tells you to install kiwi you know it's outdated ;) [03:23] JakeSays: Nodemonster: indeed he is [03:24] themiddleman_itv has joined the channel [03:24] JakeSays: Nodemonster: and i want to step through node.js itself - ya know, through the c++ parts. kinda hard to do remotely [03:25] Nodemonster: right [03:25] Nodemonster: JakeSays: I think you should get a Linux box then since you will be hosting on Linux anyway. [03:25] Nodemonster: What about node.js on Mac OS X? [03:26] JakeSays: no thanks. i'd rather have my rectum scraped than use a mac. [03:26] steph021 has joined the channel [03:26] yukihr has joined the channel [03:26] Nodemonster: lol [03:27] rbranson: i'd rather use windows than have my rectum scraped [03:28] ChrisPartridge: i'd rather not have my rectum scraped based on my OS choice.. ideally.. [03:28] rbranson: yeah, same [03:28] davidbanham: I'd like to put the nodeJS logo beside the HTML5 logo on my page, because that's the kind of hipster hacker I am. Is there an existing policy about use of the nodeJS logo? [03:28] Aria has joined the channel [03:29] rbranson: davidbanham: I hope Ryan would just say no to that on principle [03:29] seivan has joined the channel [03:29] Nodemonster: davidbanham: Don't forget your CSS3 :-) [03:30] Shrink has joined the channel [03:30] superjudge has joined the channel [03:31] Corren has joined the channel [03:31] davidbanham: Ah, on further reading there is a defined policy. Looks like I need written authorisation because this particular project is closed-source. Oh well! [03:31] davidbanham: http://nodejs.org/trademark-policy.pdf [03:33] davidbanham: Nodemonster: Had me worried I wasn't using any, for a minute there. Dug through my stylesheet and found a -moz-transform! Badge going on! [03:33] Nodemonster: Good good :) [03:34] Nodemonster: Also throw in a Madonna/Material Girl-inspired logo. [03:34] JakeSays: lol material girl.. thats so 80's [03:34] webglider has joined the channel [03:35] Nodemonster: I still love her Jake. [03:35] davidbanham: Needs more glossiness and rounded corners. [03:35] Nodemonster: And Material Girl is Forever (she's still making hits). [03:35] jdalton has joined the channel [03:36] jdalton has left the channel [03:39] ryah has joined the channel [03:39] Nodemonster: My boss is sexually attracted to the word HTML5. [03:40] boaz has joined the channel [03:41] Corren has joined the channel [03:43] skm has joined the channel [03:44] frostbytten has joined the channel [03:44] superjudge has joined the channel [03:44] frostbytten: Without using nginx or other web front end, can Node.js do url rewrite eg www.example.com -> example.com [03:45] Nodemonster: yes [03:45] frostbytten: *begs* I'm scratching my head, using express. How? [03:45] Nodemonster: redirect with the Location: header [03:45] willwhite has joined the channel [03:46] frostbytten: So, if using express I would have to use that on every path? [03:46] Nodemonster: or is that what you mean? [03:46] jamescarr: is there any modules for authentication already for express? [03:46] frostbytten: connect-auth [03:46] jamescarr: TJ has an example of "rolling your own", wondering if there is a module [03:46] jamescarr: ah [03:46] Nodemonster: I'm not sure abjo [03:47] Nodemonster: Is Express still changing a lot? [03:47] adnam: frostbytten: you can pass control to another route handler [03:47] superjudge has joined the channel [03:47] gavin_huang has joined the channel [03:48] adnam: don't remember exactly how, but i think i saw it on http://expressjs.com/guide.html [03:48] frostbytten: I guess by using req.header? [03:48] jacobolus has joined the channel [03:48] frostbytten: Could I add that as middleware as well? [03:48] adnam: frostbytten: depends on if you want to do a a http redirect or not i suppose [03:49] frostbytten: Yeah I do, because I need them to be on the right place. [03:49] frostbytten: So I guess only a route handler will do that? [03:50] frostbytten: Let me try it. [03:51] adnam: the domain name should be somewhere in `req` i suppose, and then to a `res.redirect` [03:52] adnam: you can make a handler app.get("*" and call `next` if domain name is correct [03:52] broofa has joined the channel [03:54] isaacs has joined the channel [03:55] Nodemonster: Just do it in nginx [03:55] jamescarr: doh... anyone got a good example of using any kind of provided authentication mechanism for simple username/passwords in node? [03:55] jamescarr: I mean, with express [03:55] jamescarr: all the projects I have seen (including one with connect-auth) still roll their own [03:56] ExsysTech has joined the channel [03:58] JakeSays: hmm. libuv built. thats a start. [04:00] seivan_ has joined the channel [04:00] frostbytten: Nodemonster: I would, wrote simple ass middleware to do the same thing. [04:01] frostbytten: if req.headers.host doesn't match what I want redirect it to what I want (with a proper url value as well) [04:01] tikva has joined the channel [04:02] jemeshsu has joined the channel [04:02] Nodemonster: I'd want to keep that stuff in an nginx config file to make it easier to maintain [04:02] idefine has joined the channel [04:03] willwhite has joined the channel [04:03] sonnym has joined the channel [04:04] niftylettuce: anyone here try Stylus? [04:04] niftylettuce: how can I configure it for spaces instead of tabs? \t vs ' ' [04:05] frostbytten: Nodemonster: I agree typically, but this is a client thing not a me thing. [04:05] idefine has joined the channel [04:05] jonaslund_ has joined the channel [04:05] willwhite has joined the channel [04:06] ryah has joined the channel [04:06] omni5cience has joined the channel [04:07] darshan-mobile has joined the channel [04:08] pzich_ has joined the channel [04:08] mavin|gone has joined the channel [04:08] mavin has joined the channel [04:08] janne has joined the channel [04:09] Martz has joined the channel [04:09] ivan_ has joined the channel [04:09] mlangenberg has joined the channel [04:09] anoop has joined the channel [04:10] russell_h has joined the channel [04:10] timmywil has joined the channel [04:12] perezd has joined the channel [04:13] Corren has joined the channel [04:13] FredFred has joined the channel [04:14] tikva has joined the channel [04:15] KirinDave has joined the channel [04:16] JakeSays: hmm. next thing to do will be to dump libev. [04:16] FredFred has joined the channel [04:17] MikeW has joined the channel [04:18] seivan has joined the channel [04:21] jerrysv has joined the channel [04:21] jerrysv: duncanbeevers: you really here? [04:22] addisonj has joined the channel [04:22] russell_h has joined the channel [04:24] jtsnow has joined the channel [04:25] FredFred has joined the channel [04:25] Casperin has joined the channel [04:26] Casperin: Quick question... What's a good module to use if you just want the basics of nodejs + couchdb (I'm totally new to nosql dbs) [04:27] rbranson: BerkeleyDB [04:29] Casperin: say what? That's a different db system, right? I want to use couchdb.. [04:29] sub_pop has joined the channel [04:29] yozgrahame has joined the channel [04:30] jerrysv has joined the channel [04:30] criswell has joined the channel [04:30] mikeal has joined the channel [04:32] dguttman has joined the channel [04:33] brettgoulder has joined the channel [04:34] dhasenan: Nodemailer [04:34] jesusabdullah: Casperin: look up "cradle" [04:35] jesusabdullah: Casperin: look up "cradle" [04:35] jesusabdullah: er [04:35] jesusabdullah: I'd do it for you but my poor computer's about to freeze up [04:35] jesusabdullah: ! [04:35] jesusabdullah: Casperin: Ope!I lied. https://github.com/cloudhead/cradle Maybe this will do you. [04:37] Casperin: I'm looking at it... I think I'll go with that. Thanks :) [04:40] Dreamer3 has joined the channel [04:41] freakazoid has left the channel [04:42] JakeSays: *sigh* this stuff was written by a bunch of C hacks. [04:42] Aria: Which was? [04:42] Corren has joined the channel [04:43] darshanshankar has joined the channel [04:43] JakeSays: eio at the moment [04:43] dhasenan: How sad -- AI is achieved in C. [04:43] dhasenan: It'd be 0.1 times the number of lines in python. [04:43] Aria: Oh, god, yeah, eio isn't so hot. [04:43] Aria: dhasenan: Sure, but it'd have to wait for itself constantly. [04:44] JakeSays: and c-ares was frustrating [04:44] xSmurf has joined the channel [04:44] JakeSays: and i'm not even going to bother with libev [04:45] Aria: libev is the best of the bunch [04:45] dnuke has joined the channel [04:45] antoinev1 has joined the channel [04:45] sonnym has joined the channel [04:45] Shrink has joined the channel [04:45] davidcoallier has joined the channel [04:45] tmpvar has joined the channel [04:45] jhurliman has joined the channel [04:45] chjj has joined the channel [04:45] giby has joined the channel [04:45] AndyDawson has joined the channel [04:45] maru_cc has joined the channel [04:45] KrooniX has joined the channel [04:45] stride has joined the channel [04:45] qbyt has joined the channel [04:45] ChrisBuchholz has joined the channel [04:45] framlin has joined the channel [04:45] rednul has joined the channel [04:45] voodootikigod has joined the channel [04:45] sugyan has joined the channel [04:45] Aria: c-ares is annoying perhaps mostly because dns is annoying. [04:45] Aikar has joined the channel [04:45] phiggins has joined the channel [04:45] KirinDave: JakeSays: Huh? [04:45] azeroth__ has joined the channel [04:45] kjeldahl has joined the channel [04:45] rbranson: ACTION gets some popcorn [04:45] Dreamer3__ has joined the channel [04:45] mikegerwitz has joined the channel [04:45] mikegerwitz has joined the channel [04:46] mykul has joined the channel [04:46] rick_h_ has joined the channel [04:46] tmm1 has joined the channel [04:46] JakeSays: all the libev author does is make excuse after excuse as to why libev won't work on windows. [04:46] rbranson: ... [04:47] Aria: Well, async IO /does/ work totally differently on Windows. [04:47] boaz has left the channel [04:47] JakeSays: yes, totally different is different than being broken. [04:47] Aria: Well, the way libev does it and is prepared for /is/ broken. [04:48] Aria: And worse, exists. [04:48] boaz has joined the channel [04:48] Aria: So it encourages people to use it since the API is a similar shape. [04:48] willwhite has joined the channel [04:48] rbranson: broken is temporary, shitty is forever [04:49] JakeSays: so the thing to do is to implement the proper solution instead of complaining that windows isnt posix [04:49] Aria: Evidence points to this broken being forever. [04:49] Aria: JakeSays: And rewrite libev to be something else entirely? .oO(like libuv) [04:49] JakeSays: so i would say libev was the wrong choice. [04:49] Aria: Why? It's simple and works really well. [04:50] Aria: And wraps the unix APIs neatly. [04:50] rbranson: as opposed to? [04:50] JakeSays: yeah. works really well on *nix [04:50] rbranson: libevent just uses select() on windows [04:50] Aria: Yeah, which I don't know if you know this, but select() on windows is fail. [04:51] Aria: Subject to some insane limits that won't show in a toy app but will fall over hard if pushed. [04:51] boaz has joined the channel [04:51] nilcolor has joined the channel [04:51] JakeSays: yes, select has its issues [04:51] sub_pop has joined the channel [04:51] Aria: JakeSays: I get the sense that you're trolling. You are aware that Ryah's working on integrating Windows IOCP, right? [04:51] Aria: Select has its issues as an API in general. [04:51] Aria: But Select on Windows is insane. It's JUST a toy. [04:52] JakeSays: Aria: no, i'm not trolling. [04:52] JakeSays: i did see mention of iocp somewhere [04:52] rbranson: IOCP isn't going to make node work well on windows overnight though [04:52] rbranson: still have all the infrastructure that's unix-centri [04:52] rbranson: c [04:52] Aria: 'kay. It just sounds a lot like you're trying to pick on every piece node uses. [04:52] Aria: rbranson: like? [04:52] rbranson: npm? [04:53] rbranson: any non-trivial native extension is _LIKELY_ broken on windows [04:53] JakeSays: Aria: no. not entirely. i'm just pushing back on all the windows haters [04:53] Aria: Well, sure. Node hasn't integrated into Windows yet; -) [04:53] rbranson: libev -> libuv will probably also break a lot of them by itself [04:53] Aria: Sure. [04:53] rictic has joined the channel [04:54] isaacs: rbranson, sure. [04:54] isaacs: rbranson: as it is, native modules are usually single-platform-specific [04:54] JakeSays: Aria: as a matter of fact, its the IOCP code i'm looking for [04:54] isaacs: rbranson: a lot of them dont' even work on all three of solaris, mac, and linux, or all linuxes even. [04:55] rbranson: isaacs: sure, but that's a matter of testing and tweaking out small bugs [04:55] Aria: Aaah! What are you looking in, JakeSays? node stable? [04:55] JakeSays: Aria: git/master [04:55] rbranson: JakeSays mistakes solid advice for hating [04:55] Aria: You want https://github.com/joyent/libuv [04:56] JakeSays: Aria: got that. just built it. [04:56] Aria: Yeah. That /is/ the IOCP stuff. There's no more [04:56] JakeSays: ok cool [04:56] Aria: Once that works well node has to be ported to it. [04:56] JakeSays: rbranson: your definition of solid advice is a bit off. [04:57] cpolis has joined the channel [04:58] JakeSays: and, frankly, i'm more interested in the relationship/integration between node.js and V8 [04:58] willwhite has joined the channel [04:59] rbranson: i'm sure you'll contribute something amazing to mankind with this knowledge, i personally can't wait [04:59] Aria: Ah, fun. Node is remarkably thin layers in places. [04:59] Aria: Its integration with v8 is that. It compiles a script and sets up an environment, then lets loose. [04:59] JakeSays: rbranson: more solid advice i see. [04:59] Aria: It's not complex. [04:59] rbranson: actually I'd just say I was being a dick [04:59] devrim has joined the channel [05:00] JakeSays: Aria: are native classes exposed through v8 extensions? [05:01] azir has joined the channel [05:02] Aria: Yes. [05:02] Aria: Node doesn't add much but a couple macros to simplify things. [05:02] JakeSays: ok cool [05:02] Aria: Node is almost entirely its eventloop and network layer. The rest is almost all V8. [05:03] k1ttty has joined the channel [05:03] Aria: It's a small, tight, focused project. I really respect ryah for keeping it so tight despite all the temptations and pressures to add more. [05:03] isaacs: yep. it's just what it says. evented IO for v8 [05:04] JakeSays: small and tight is good for sex, but not for features. [05:04] Aria: Heh. [05:04] isaacs: JakeSays: i disagree. [05:04] isaacs: about the features, i mean. [05:04] Aria: It's actually great for features when you're working in a language that has closures and is so flexible, and whose module system fits neatly into closures. [05:04] JakeSays: you prefer big adn loose? [05:04] JakeSays: oh. features. lol [05:05] jesusabdullah: Definitely don't like sprawling features [05:05] jesusabdullah: I can understand the desire for "batteries included," but the ease of installing npm and grabbing the thing you want that someone wrote mitigates that [05:05] ChrisPartridge: isaacs: What are your thoughts on a new cmd for npm called "adddep" - which essentially adds a dependency entry into the package.json? [05:05] jesusabdullah: Plus, some batteries kinda suck [05:06] isaacs: ChrisPartridge: already requested. kinda meh about it. probably not an added command, but a flag on install. [05:06] jmoyers has joined the channel [05:06] mscdex: we need the sanyo eneloop of modules! [05:06] jesusabdullah: Better to let the "free market" decide which batteries are good than to endorse any battery over the other [05:06] jesusabdullah: What's an eneloop? [05:06] gf3: ChrisPartridge: in terms of syntax, dep , seems friendlier [05:06] gf3: e.g.: dep add lol [05:07] jerrysv has joined the channel [05:07] gf3: dep remove lol [05:07] mscdex: jesusabdullah: one of the better rechargable batteries out there [05:07] ChrisPartridge: gf3: Not too worried about the implementation itself, but just seems more logical from a workflow point of view [05:07] jesusabdullah: I see! [05:07] jerrysv: duncanbeevers: ping? [05:07] Wa has joined the channel [05:07] JakeSays: Aria: i'm being charged with refactoring a huge asp.net site, with its 8-13 second page generation times, etc.. [05:07] jesusabdullah: Truth be told, there already are some "blessed" modules, in that the node.js docs point to them as good starting points [05:08] jesusabdullah: Oh gross D: [05:08] jesusabdullah: Bummer JakeSays [05:08] Aria: Fun! [05:08] jerrysv: ouch. [05:08] JakeSays: so i'm toying with ways to incorporate node.js into the refactor [05:08] jesusabdullah: I'm getting to play with bookmarklets right now :3 [05:08] jesusabdullah: Learning not-so-jquery DOM action [05:08] dnolen has joined the channel [05:08] jesusabdullah: AND trying to be relatively terse about it [05:08] jslatts has joined the channel [05:09] jesusabdullah: but it's hard when my laptop is struggling to do a jillion things at once! [05:09] jesusabdullah: SubStack: I think I need a moar betters laptop :C [05:09] JakeSays: so i'd like to build something around the node.js core that could handle the load [05:10] Aria: Nice. Though I'd want to know why it's so slow in the first place. [05:10] JakeSays: oh we know why [05:10] Aria: Sounds like your usual hell of no caching anywhere, huge number of database queries. [05:10] devrim has joined the channel [05:10] jerrysv: jakesays: why? [05:10] JakeSays: yup [05:10] jslatts: anyone here talented in the ways of waf? i have a addon building problem. I cannot for the life of me figure out how to include a local dependency [05:11] JakeSays: 10 years of bad, bad development [05:11] Aria: jslatts: "Good luck" but I can perhaps try to help. What do you mean, a local dependency? [05:11] pquerna: you can write bad node.js code too [05:11] jerrysv: jakesays: sounds familiar, but you can add caching and gain a lot of life [05:11] pquerna: don't let it fool you [05:11] jslatts: i have a library that I need to link against [05:11] rbranson: baby jesus is crying so much right now [05:11] Aria: node isn't gonna be a magic bullet to fix your problems, JakeSays. It still computes at the same speed ~everything else does. Though it may be different enough to make you drop bad habits and do things well. [05:11] jslatts: but it is just in the directory w/ my source code [05:11] jslatts: oh, hey, its pquerna! [05:12] pquerna: hi [05:12] jslatts: this is jslatts from spok-vegas [05:12] JakeSays: Aria: no, i know its not the magic bullet, but used properly, it could be very effective [05:12] pquerna: can you github link your waf or such? [05:12] pquerna: ah, nice [05:12] jslatts: i will, one sec [05:12] Aria: But, too, if it's enough of a buzzword to get buyin for a rewrite or a big-scale migration plan, that's a huge iwn. [05:12] pquerna: not neard of spok-vegas, just spokompton [05:12] jslatts: spokanistan? [05:12] pquerna: ah yeah, that was pretty good [05:13] pquerna: i think there was a shirt going around [05:13] JakeSays: Aria: something like a nodelet - js that is spun off to render parts of a page, etc.. [05:13] mscdex: jslatts: you mean you have the source for your dependency in your project? [05:13] Aria: JakeSays: That could help. That sounds like 'migration plan' talking more than anything. [05:13] abraham has joined the channel [05:14] JakeSays: ultimately i'd like to push all content generation out to the browsers [05:14] jslatts: here is my current wscript: https://gist.github.com/992592 [05:14] KirinDave: Aria: Actually computes lots of stuff significantly slower than many alterantives. [05:14] jslatts: and the lib i want to use is in deps/ [05:14] Aria: Heh, true that. [05:14] rbranson: KirinDave: like C#? [05:14] Aria: JakeSays: If browsers are your only consumers, win. Dont' make that assumption though. [05:14] Aria: (good for an app, lousy for a site) [05:14] JakeSays: they are. [05:15] Aria: Interesting. Web app, not web site? [05:15] tikva has joined the channel [05:15] JakeSays: heh. right now its more like a web sludge pond. [05:15] KirinDave: rbranson: Haskell too. Snap is kicking ass. http://snapframework.com/blog/2010/11/17/snap-0.3-benchmarks [05:15] JakeSays: but it screams to be a web app [05:15] Aria: Nice. [05:15] indutny has joined the channel [05:16] Aria: One day, I will write another web app that doesn't have to be a public facing page. [05:16] rbranson: KirinDave: oh snap, i hear there's this up and comer called C that's really making waves in the ultra-scientific hello world benchmark community [05:16] Aria: jslatts: you probably want to conf.check_lib in your configure, then yourtarget.uselib = ['YOURLIB'] in the build section [05:17] JakeSays: as an experiment last summer i rewrote our accounting and customer service applications as web apps.. entire UI was rendered client side via javascript. there were 88 lines of html. [05:17] KirinDave: rbranson: Um? [05:17] mscdex: jslatts: so the .h files and .a in "deps/" ? [05:17] jslatts: mscdex: yes it is [05:17] rbranson: KirinDave: totally just being an ass [05:17] jslatts: aria: i tried that, but it doesn't seem to look where i want it to [05:17] SubStack: jesusabdullah: hah @ batteries included === communism [05:18] jesusabdullah: SubStack: I know rite? XD [05:18] rbranson: KirinDave: have you used yesod? [05:18] jesusabdullah: Time to start the software tea party! [05:18] pquerna: jslatts: don't you need to just add lib? [05:18] KirinDave: rbranson: Nope. [05:18] JakeSays: depends on what the batteries are for - if batteries come with a dildo, then thats pretty handy. [05:18] Aria: jslatts: hm Might be that that's only for dynamic libs in the search path. [05:19] jslatts: conf.check(lib='mylib', uselib_store='MYLIB', mandatory = True) [05:19] superjudge has joined the channel [05:19] jesusabdullah: JakeSays: The best porn stores just have a selection of batteries *next* to the vibes [05:19] jesusabdullah: XD [05:19] jslatts: it reports it can't find it [05:19] rbranson: KirinDave: sorry I can't hear you over the neckbeard hormones [05:19] jesusabdullah: Also, javascript: Love it or GIT OUT [05:19] jslatts: pquerna: what do you mean add? how does it decide what path to use? [05:19] jesusabdullah: coffeescripters are bleeding-heart liberals that are going to destroy this ecosystem [05:20] jesusabdullah: I'm gonna write a blog post about this! SO much fun [05:20] mscdex: jslatts: try this: https://gist.github.com/992595 [05:20] JakeSays: i used to really dislike js until i started blending js with c++. [05:20] unomi has joined the channel [05:20] mscdex: jslatts: replacing 'mydep' with the actual static lib name [05:21] pquerna: jslatts: https://gist.github.com/992598 [05:21] pquerna: mscdex: uselib_local should do it i think [05:21] pquerna: though not used that before myself [05:22] pquerna: http://www.freehackers.org/~tnagy/wafbook/index.html#_library_interaction_uselib [05:23] mscdex: oh, isn't that if you have waf managing the build of the dependency though? [05:23] antlong: i have a question that i dont know enough about the terminology to ask, it involves a django admin, which has a model that takes file uploads. those files are pure js script. I was wondering if its possible to take those uploads, and while in the admin somewhere, have a section that would execute the code and return whatever [05:23] Aria: Sure, antlong. Shell out to node (or just plain v8) and run the script ... pass back what it spits out. [05:23] mscdex: antlong: sure, there's the 'vm' module [05:24] Aria: (or, wrap it in a server, use the vm module, and have django send the code on over the network to node) [05:24] rbranson: make sure you're executing as root [05:24] pquerna: mscdex: hmm, right, well in that case still should be able to just append the .a file to obj.staticlib [05:24] antlong: django is just kind of like the test container. what i do know - is where the files are saved [05:24] mscdex: antlong: actually yeah shell out to a node process and use the 'vm' module in that node script [05:24] jslatts: mscdex: that looks like it did it. well, at least it appears to link it. now i have new problems :) [05:24] KirinDave: rbranson: Dang, the benchmarks make me curious about Warp [05:25] antlong: mscdex thank you, how does that work [05:25] KirinDave: rbranson: http://www.yesodweb.com/static/benchmarks/2011-03-17/extra-large.png effff. [05:25] zpao has joined the channel [05:25] rbranson: KirinDave: hahaha and then you connect it to a data store and it becomes :( [05:25] KirinDave: rbranson: Redis. Solved. [05:25] mscdex: antlong: http://nodejs.org/docs/v0.4.8/api/vm.html [05:25] jslatts: mscdex & pquerna: thanks for the help [05:26] rbranson: pssht do I look like I'm made of RAM chipz? [05:26] KirinDave: rbranson: You're thinking Mongo. [05:26] antlong: mscdex thanks again. does this work with platforms like zombie and jellyfish? [05:26] Aria: KirinDave. ENOUNITS? [05:26] rbranson: oh sry, forgot about the web scales [05:26] KirinDave: Aria: http://www.yesodweb.com/blog/preliminary-warp-cross-language-benchmarks [05:27] lakin has joined the channel [05:27] niftylettuce: any Stylus folk online? [05:27] mscdex: antlong: not sure what those are, but that link is for node scripts [05:27] rbranson: i want to see an nginx and apache in there [05:27] KirinDave: rbranson: besides, I only care about it for restful service building. [05:28] Aria: ACTION goes to see what they actually measured. [05:28] Aria: Wish they showed latency. [05:28] KirinDave: rbranson: Most people use incredibly slow methodology for html generation. [05:28] Aria: and variability. [05:28] yukihr has left the channel [05:28] bad_at_math has joined the channel [05:28] rbranson: KirinDave: most people don't need anything better though honestly [05:28] mscdex: antlong: just start a child process that executes your node script that uses the vm module [05:28] xsyn has joined the channel [05:28] KirinDave: Aria: Well assuming that they're not just chucking back 500s it almost doesn't matter. [05:28] antlong: mscdex let me explain a bit of the structure actually [05:29] Aria: Not hardly. This is a pathological "just send back 4 bytes" test. [05:29] Aria: Heck, they're doing string->buffer conversion in node, and not in haskell. [05:29] rbranson: maybe because haskell doesn't have to? [05:29] Aria: node doesn't either. [05:29] SubStack: haskell sure does [05:30] niftylettuce: interpollatttionnnnn [05:30] SubStack: it's got BufferStrings [05:30] Aria: You can send a buffer and skip the string->buffer conversion on each hit. [05:30] antlong: i have hundreds of json tests, the go through a binarifier, then get spit out. each one is basically one test case. i have to open a url that is set in each case, some JS is executed on the page which says pass or fail [05:30] antlong: so i did this with selenium, and it worked - i tried it with zombie and jellyfish and it didnt [05:30] Aria: Gotta be executed within a DOM? [05:30] Aria: Fun! [05:30] SubStack: no wait, bytestring it's called [05:30] SubStack: been a while >_< [05:31] rbranson: either way, it's not far off from what node generally benches at [05:31] antlong: so technically i dont think i have a vm process [05:31] KirinDave: Aria: Wait... I do not think haskell strings are what you think they are compared to Node strings. [05:31] antlong: we have a tool that does the conversions (written in c) and the json files. the tests are assessed by whether the page says true or false when its opened [05:31] SubStack: KirinDave: String in haskell and String in javascript are pretty comparable [05:32] antlong: so i was hoping to be able to use node / jelly / zombie to handle that simple party [05:32] SubStack: each does unicode [05:32] Aria: KirinDave: Haskell's are a byte-string in this case. Node's are UCS-16. Probably. V8 strings are weird. [05:32] KirinDave: SubStack: Strings in node are linked lists? [05:32] yukihr has joined the channel [05:32] yukihr has left the channel [05:32] SubStack: *v8 [05:32] antlong: the mandatory require is javascript is parsed correctly, and a big plus would be if it was headless [05:32] KirinDave: Aria: So why did you say Node was doing more work? [05:32] Aria: KirinDave: Strings in v8 are chords, formatted in one of ASCII-7bit-padded-to-8 or UCS16. [05:32] Aria: So it's converting that to a buffer to send each time. [05:33] Aria: The haskell version is not -- it's storing a byteString, which is in network format. [05:33] KirinDave: Okay. [05:33] Aria: Node /has/ a network format, called ... Buffer! [05:33] mikeal has joined the channel [05:33] KirinDave: Aria: For Snap, that's not what its doing. [05:33] Aria: So if they'd bothered to add one line to the script, it'd be a fair bit faster. [05:33] Aria: Ah, I'm reading warp [05:33] KirinDave: For Warp, i'd have to check. [05:34] niftylettuce: i'm going to post this as an issue on github, but just in case you guys might be able to give a hand, I have defined several mixins for Stylus and it seems the mixins that are not being used in my stylesheets somehow want to get compiled as actual styles, therefore I can either comment it out or find a fix? Here is a link to the .styl file, line 33 is where I receive error on compiler, it states that n is null even though it is [05:34] niftylettuce: not being used http://pastie.org/private/qzyephtypbkf1fb3trvebw [05:35] antlong: so i guess the question is, i can do it in python, and i can try with node. but node hasnt reliably worked, theres always some error junk its barfing up, but in selenium or such, there are no problems [05:35] niftylettuce: even if i set n=1 i still get that n is null [05:36] liar has joined the channel [05:37] sugardave has joined the channel [05:42] yukihr has joined the channel [05:43] niftylettuce: it seems I resolved the issue simply be renaming my mixins (e.g. prepend(n) => prepend_(n) [05:43] tikva has joined the channel [05:47] brianmario has joined the channel [05:50] jacter has joined the channel [05:52] sechrist has joined the channel [05:52] levi501d has joined the channel [05:53] vikstrous has joined the channel [05:53] vikstrous: did i miss something or is setting middleware for a specific route not a part of the express documentation? https://github.com/visionmedia/express/blob/master/lib/http.js#L212 [05:54] amerine has joined the channel [05:54] aah has joined the channel [05:55] MichealBenedict has joined the channel [05:56] jmoyers: i think i've seen it... [05:56] jmoyers: http://expressjs.com/guide.html#route-middleware [05:56] mynyml has joined the channel [05:57] fmeyer has joined the channel [05:58] vikstrous: jmoyers: it shows passing 2 parameters to .get .post etc. but not to .use [05:59] seivan has joined the channel [06:01] aah: evening. trying to de-base64 / decrypt a string passed to me from a ruby function. anyone done this? ruby allows arbitrary length key / iv inputs to the underlying openssl libs, which (I think) openssl is happily truncating, while node gets very anal and requires exactly-correct-length key and IV. [06:02] swaj has joined the channel [06:02] aah: I've verified that the base64 method isn't the problem, and the key (while long) is equivalent to what's getting passed down in ruby, but I'm not getting.. anything usable from the decipher object. [06:03] aah: I think I'm blaming my Buffer handling. anyone done any of this? would love a hand. [06:05] rbranson: sorry, this channel is only for questions like "where r couchdb modulez?" [06:05] coreb1 has joined the channel [06:05] a2800276 has joined the channel [06:07] skm has joined the channel [06:07] aah: bummer. :P looks like user error anyway. I've been assuming my ciphertext was .. well, ciphertext. may have been random. doh. [06:07] Aria: Doh! [06:08] rbranson: SSL is not e-z p-z :( [06:08] rbranson: if only the world was a trustworthy place [06:08] eikaas has joined the channel [06:08] aah: I actually wasted a day trying to implement this damn thing in C using the openssl libs, before I finally decided to try in node one more time tonight. [06:08] aah: glad I did. also annoyed at myself. [06:08] idefine has left the channel [06:10] rbranson: heh, OpenSSL is soooo bad [06:10] rbranson: API-wise [06:10] Aria: Yes it is. [06:11] rbranson: "brought to you by the creators of perl..." [06:11] SamuraiJack has joined the channel [06:11] stride: hrhr [06:12] briznad has joined the channel [06:13] rputikar has joined the channel [06:14] coderendezvous has joined the channel [06:14] FireFly|n900 has joined the channel [06:16] Bonuspunkt has joined the channel [06:17] CIA-104 has joined the channel [06:19] coderendezvous has joined the channel [06:20] Emmanuel: doesn't some guy write something about SSL being coded by monkeys ? [06:21] davidcoallier has joined the channel [06:21] Emmanuel: security probably comes from the fact that the code is obscure [06:22] Aria: No, but some guy said something about OpenSSL being that way ;-) [06:23] steffkes has joined the channel [06:23] Emmanuel: d'oh, the link is down [06:24] Emmanuel: http://www.peereboom.us/assl/assl/html/openssl.html [06:24] btipling has joined the channel [06:26] level09_ has joined the channel [06:27] AvianFlu has joined the channel [06:28] DelvarWorld has joined the channel [06:28] WallyDater has joined the channel [06:29] DelvarWorld: is there a good tutorial on using npm to set up dependencies for your project - specifically making your own packages.json [06:29] isaacs: DelvarWorld: npm help json [06:29] DelvarWorld: perfect [06:29] isaacs: DelvarWorld: npm help developers [06:30] AvianFlu: you can also just find someone else's package.json, the syntax is pretty straightforward [06:30] `3rdEden has joined the channel [06:30] AvianFlu: there's worse places than JSON to cook up some copypasta :) [06:30] amerine has joined the channel [06:30] DelvarWorld: second question - I have a crappy but required library I forked from a couchdb client, is there a best practice way I should consider including the dependency in my project - should I make it an official npm package, or put it in a folder, or in node modules, or... [06:30] tikva has joined the channel [06:31] mhausenblas has joined the channel [06:31] tonymilne: isaacs: Is there a way for people to use something like package.json to manage dependencies on project, e.g. a web app, that is not a package or shareable in it's own right? [06:31] isaacs: you could publish it, or just install it in node_modules, and make it a bundledDependency [06:31] isaacs: tonymilne: yeah, just do that :) [06:32] isaacs: tonymilne: just don't publish it, if you don't want to [06:33] jacter has joined the channel [06:33] tonymilne: isaacs: hmm, because I wrote something uses npm.load within my app's start up routine, that i will eventually share with others, but i wondered what is the "best practice". (mine just uses an array of 'package@version' strings). [06:34] brimster has joined the channel [06:34] tonymilne: It doesn't factor in node version however. [06:35] tonymilne: So, if i put this into a package.json file, how would i npm update my dependencies? (it does however add a manual step for me) [06:35] isaacs: tonymilne: you could just have a package.json, and do `npm install` to install your deps [06:35] tonymilne: lol, perfect. thx. [06:35] isaacs: tonymilne: you could do `npm update` [06:35] skm has joined the channel [06:35] springify has joined the channel [06:35] isaacs: to update to newer versions, if you have a version range in your dependency and a new fix comes out [06:36] febits has joined the channel [06:39] reid has joined the channel [06:40] yozgrahame has joined the channel [06:40] carsonm has joined the channel [06:43] tikva has joined the channel [06:44] Renegade001 has joined the channel [06:45] langworthy has joined the channel [06:46] febits has joined the channel [06:46] FireFly has joined the channel [06:49] Spookz has joined the channel [06:49] Marak has joined the channel [06:49] Marak has left the channel [06:55] Marak has joined the channel [06:56] Marak: So I've setup a #nodesupport room where kohai is parked spitting out twitter on full blast. The room is dedicated to helping people solve quick and easy node.js issues ( as picked up on twitter and other real-time datasources ) [06:56] Marak has left the channel [06:56] OneBraveHog has joined the channel [06:56] mraleph has joined the channel [06:57] cnu has joined the channel [07:00] fangel has joined the channel [07:00] jbpros has joined the channel [07:01] emattias has joined the channel [07:03] fbzhong: indutny: hi, we got a mistake about the Context::New. The last argument global_object should be a global object created by Context::New. So that is why the test fail... [07:03] indutny: fbzhong: hi. so? [07:05] nivoc has joined the channel [07:06] temp01 has joined the channel [07:09] fbzhong: indutny: so, maybe the sandbox object should be the global object created by Context::New. [07:11] tk has joined the channel [07:11] kawaz_air has joined the channel [07:11] nivoc has joined the channel [07:11] indutny: fbzhong: omg, probably most simplier will be just properly copying properties from sandbox object to global [07:13] fbzhong: indutny: it may be work. If there is new function created in one Context, is it ok that copy the function to another Context and release the previous Context? [07:13] fbzhong: indutny: I have no idea on the things when Context released. [07:14] mAritz has joined the channel [07:14] indutny: fbzhong: AFAIK Context should be released when all code running in it is finished [07:15] Skola has joined the channel [07:15] fbzhong: indutny: do you know how to perperly copying properties between two object? [07:16] indutny: fbzhong: nope, and I'm not sure that it's possible... [07:16] qFox has joined the channel [07:16] ChrisA132 has joined the channel [07:17] kschzt has joined the channel [07:17] Skola: Good morning (/ night). I want different sections of my page that I GET with an ajax call to have different url's [07:17] fbzhong: indutny: I try it later :) [07:18] Skola: so for example I GET /blogpostX (within my index.html), and I want the URL to be domain.com/blogpostX [07:18] groom has joined the channel [07:18] Skola: so that people can bookmark shit [07:18] Skola: I'm using Express [07:18] seivan has joined the channel [07:18] Skola: is this possible? or should I reload the page in order to get a working unique url [07:19] Aria: Sounds like what you want is client side, not a function of express. [07:19] Aria: You want pushState or onhashchange type routing. [07:19] riven has joined the channel [07:19] riven has joined the channel [07:19] Skola: ok [07:20] DelvarWorld: so there is no way to auto generate a package.json file from your node_modules directory? [07:21] AvianFlu: lol sure there is [07:21] AvianFlu: just use the fs module to list the directory and grab the names... then stick 'em into some json and save it as package.json [07:22] chjj: Skola: full urls are almost never on the request line unfortunately [07:23] Skola: could I explicitly include it? [07:23] chjj: well, on the client side, it depends on what client youre using [07:24] chjj: but i think all web browsers only include the path and query string [07:24] chjj: they throw the hostname into the host header [07:25] Skola: but I mean, I could do something weird like use a hidden form instead of an anchor [07:25] Skola: and POST instead of GET [07:25] Skola: and for GET do something else [07:25] eee_mk has joined the channel [07:25] Skola: guess it's too hackish [07:25] chjj: that wouldnt change the uri on the request line [07:25] chjj: it would just change GET to POST [07:25] stonebranch has joined the channel [07:25] Skola: right of course [07:26] DelvarWorld: am I blind or is there really only one line of documentation for bundledDependencies [07:27] Skola: I could just let app.get 'website/post_x' have a reference to the AJAX Get [07:27] Skola: and load it that way [07:28] chjj: Skola: what are you trying to do? [07:28] Skola: I have "previews" of posts [07:28] Skola: for convenience let's say their just 's [07:28] djcoin has joined the channel [07:28] fbzhong_ has joined the channel [07:28] Skola: when click -> GET post and put it in a central area [07:29] gozala has joined the channel [07:29] Skola: but I want to have useful URL's for each post too [07:29] matjas has joined the channel [07:29] Skola: so that domain/blog_post serves my index.html, with the relevant blog_post in the center [07:31] chjj: ok, what does this have to do with a full url being in the request line? [07:31] Druide_ has joined the channel [07:32] Jonasbn_ has joined the channel [07:33] fille12 has joined the channel [07:33] fille12: yepp it did work [07:33] fille12: realy cooL! [07:33] fille12: http://www.mynodejs.com [07:34] mike5w3c_ has joined the channel [07:34] fille12: i will kill the server right now [07:34] fille12: sercvice temproarily unavailable [07:34] fille12: :P [07:35] [AD]Turbo has joined the channel [07:35] hellp has joined the channel [07:35] [AD]Turbo: hi there [07:38] dustinwhittle has joined the channel [07:38] davidcoa1lier has joined the channel [07:39] tikva has joined the channel [07:39] vDubG^ has joined the channel [07:40] bene1 has joined the channel [07:42] Yoric has joined the channel [07:42] Yoric has left the channel [07:43] gausby has joined the channel [07:44] TomY has joined the channel [07:45] uchuff has joined the channel [07:46] kawaz_air has joined the channel [07:47] ExsysHost has joined the channel [07:47] adambeynon has joined the channel [07:49] Bj_o_rn has joined the channel [07:50] AvianFlu: hey WallyDater GTFO! [07:51] ivanfi has joined the channel [07:52] AvianFlu: hey WallyDater GTFO! [07:52] AvianFlu: god damn it [07:54] troessner has joined the channel [07:57] dipser has joined the channel [07:58] pomodoro has joined the channel [07:58] hybsch has joined the channel [07:59] msucan has joined the channel [08:00] aliem has joined the channel [08:00] FireFly|n900 has joined the channel [08:01] MrTopf has joined the channel [08:01] jeremyselier has joined the channel [08:03] ewdafa has joined the channel [08:03] JoshC1 has joined the channel [08:05] fille12 has joined the channel [08:05] fille12: :d [08:06] cpolis has joined the channel [08:08] adrianmg has joined the channel [08:09] skm has joined the channel [08:10] zpao has joined the channel [08:10] tdegrunt has joined the channel [08:13] thron7 has joined the channel [08:13] SeyZ has joined the channel [08:14] jacter has joined the channel [08:15] truedat101 has joined the channel [08:16] bzinger has joined the channel [08:20] d0k has joined the channel [08:21] burningdog has joined the channel [08:21] sriley has joined the channel [08:26] thalll has joined the channel [08:27] fbzhong has joined the channel [08:27] minaguib has joined the channel [08:28] mscdex: hello world [08:28] Murugaratham has joined the channel [08:28] urlofmay has joined the channel [08:28] robinhoode has joined the channel [08:29] gozala has joined the channel [08:30] Aron has joined the channel [08:33] ParadoxQuine has joined the channel [08:34] lackac has joined the channel [08:36] jesusabdullah: Is there a js built-in for initializing lowercase? [08:36] jesusabdullah: ie, lowercase -> Lowercase ? [08:36] xsyn has joined the channel [08:37] jesusabdullah: ACTION doesn't think so but is checking [08:37] xsyn: Hey guys [08:37] xsyn: I'm having a bit trouble wrapping my head around callbacks [08:37] xsyn: I've got a node app with couchdb [08:37] mscdex: jesusabdullah: no [08:38] mscdex: xsyn: ok [08:38] xsyn: sorry, just fixing a gist [08:38] xsyn: I can do the data save, delete etc [08:38] xsyn: but when I try to res.redirect afterwards [08:39] xsyn: I get that the the object has no method [08:39] xsyn: Here: https://gist.github.com/992780 [08:39] xsyn: I've played a bit, but not sure what I'm doing wrong [08:40] seivan has joined the channel [08:41] Dreamer3 has joined the channel [08:42] sechrist has joined the channel [08:42] Charuru has joined the channel [08:42] mscdex: xsyn: you have two sets of req and res [08:42] mscdex: that might be the problem [08:43] xsyn: I thought I needed to pass that function through to the callback in the model [08:44] stonebranch has joined the channel [08:44] xsyn: Iwill try that though [08:44] fille12: http://www.mynodejs.com/ [08:44] fille12: :S [08:44] jesusabdullah: mscdex: thanks [08:45] sechrist: http://codename-intrusion.blogspot.com/2011/05/government-website-hacked-by.html [08:45] sechrist: tf [08:45] tbassetto has joined the channel [08:46] mscdex: xsyn: try something like this: https://gist.github.com/992793 [08:48] asabil has joined the channel [08:50] Rustem has joined the channel [08:51] xsyn: mscdex: it was the dual res, req [08:51] xsyn: thanks [08:51] Rustem: Hi [08:51] xsyn: fix0red [08:52] Rustem: Guys I have the following problem [08:52] mscdex: xsyn: cool [08:53] Rustem: when I am trying to configure ./configure node.js the cygwin gives me next error: "encoding problem with BOM" [08:53] _aron has joined the channel [08:53] Rustem: What should I do [08:54] OneBraveHog: install Ubuntu [08:54] framlin: lol [08:54] Rustem: :) [08:54] temp01 has joined the channel [08:54] pandark_: OneBraveHog: No, install Linux instead [08:54] OneBraveHog: I had a lot of problems with Cygwin - not just with node.js either. [08:55] OneBraveHog: pandark - true, I shouldn't be promoting different distributions. [08:55] Rustem: but iam working with kinect and silverlight [08:55] adelgado has joined the channel [08:56] OneBraveHog: Rustem- just in case you didn't know, Oracle has a free Virtual OS app called VirtualBox - lets you install many different OS's - free for VirtualBox - can come in handy if you want to just use linux from Windows. [08:56] OneBraveHog: that was my ultimate solution for learning. Still struggling to figure this all out. [08:57] Rustem: OOOh yeap, i know. Thank you. [08:57] OneBraveHog: node.js is a sought after solution though, I had one recruiter call me and said this job requires node.js, I said I'm still working on figuring out how to get it working - CLICK. I learned not to put things on my resume I'm interested in, only things I've mastered. [08:58] OneBraveHog: But for whatever reason - companies seem to be wanting to explore using node.js [08:58] OneBraveHog: I am not so sure of all the benefits - yet, but I find it very interesting. SOOOOOO much to learn, I think this is the most challenging channel I've come across for me on freenode. [08:58] Emmanuel: because JavaScript is the hype [08:58] skohorn has joined the channel [08:58] OneBraveHog: and perhaps rightly so. [08:59] Emmanuel: and node and is a freaking good way of JSing [08:59] OneBraveHog: My understanding is Javascript handles these multi-core chips well. [08:59] OneBraveHog: maybe it's simply the 'event loop' model. [09:05] level09 has joined the channel [09:05] adambeynon has joined the channel [09:06] tayy has joined the channel [09:07] herbySk has joined the channel [09:09] MrTopf has joined the channel [09:10] HerrTopf has joined the channel [09:12] markwubben has joined the channel [09:12] jetienne_ has joined the channel [09:13] jetienne has joined the channel [09:14] dies_el has joined the channel [09:14] jetienne has joined the channel [09:15] level09: when sending complex data throug websocket, do I need to serialize it ? or encapsulate it somehow ? [09:16] galaxywatcher has joined the channel [09:19] jelveh has joined the channel [09:20] hybsch has joined the channel [09:21] yozgrahame has joined the channel [09:27] neshaug has joined the channel [09:28] mhausenblas_ has joined the channel [09:32] MikeW has joined the channel [09:33] eldar has joined the channel [09:39] galaxywatcher has joined the channel [09:41] yozgrahame has joined the channel [09:43] jetienne: starting my first serious project with express, youhou :) [09:44] thalll has joined the channel [09:46] `3rdEden: \o/ [09:46] dgathright has joined the channel [09:47] fille12: im going to start with express.js soon [09:47] fille12: just got my vps to work with node.js [09:48] daveyjoe has joined the channel [09:48] sechrist: this \o/ thing is cool [09:48] fonziecc has joined the channel [09:49] daveyjoe: Hey, are the NodeConf videos going to be available online? [09:49] fille12: \o/ :D [09:50] bzinger has joined the channel [09:52] glimpsenirvana has joined the channel [09:55] tlrobinson_ has joined the channel [09:56] `3rdEden: /o/ [09:58] jetienne: `3rdEden: you are in a good mood :) [09:58] mscdex: jetienne: Y u no update node for natty? [09:59] fonziecc has joined the channel [10:00] galaxywatcher has joined the channel [10:00] jetienne: mscdex: sorry i had a rush of work. i have been slacking on node. i will fix it today. the reason is that i dont run natty, do fixing the compiling issue takes more time. [10:01] mscdex: you don't run natty? [10:01] mscdex: why is that? [10:01] jetienne: but pacmaze is doing great, and my new game is on express so i will be a lot more on node [10:01] jetienne: mscdex: their rewrite of the window manager scares me a lot [10:01] jetienne: mscdex: moreover i can not even test it without updating but their stuff doesnt run in a vm [10:02] jetienne: not too happy about this change [10:02] mscdex: jetienne: what do you mean it doesn't run in a vm? [10:02] sherod has joined the channel [10:02] mscdex: :S [10:02] indutny has joined the channel [10:02] mscdex: you mean unity or ? [10:02] jetienne: mscdex: the window manager requires opengl access. and it failed when i tried to run it in virtualbox [10:02] skm has joined the channel [10:03] mscdex: jetienne: and you had 3d support enabled right? [10:03] jetienne: additionnaly i do webgl game, so the window manager eating my resources when i dev... not too happy on this too [10:03] mscdex: in virtualbox [10:03] mscdex: i use xubuntu anyway [10:03] mscdex: i don't care for unity and all that new stuff [10:04] jetienne: mscdex: i clicked and it failed. but honnestly i tried to install last ubuntu only for 4h [10:04] ewdafa has joined the channel [10:04] mscdex: give me xfce any day [10:04] jetienne: mscdex: lucky you [10:04] mscdex: heh [10:04] jetienne: ok lets try again to install it in a vm to fix the deb :) [10:04] chjj: v8: /(){20000}/.test('a') [10:04] v8bot: chjj: true [10:05] mscdex: jetienne: only reason i brought it up is because someone was in here the other day wanting to use your repo on natty [10:05] jetienne: mscdex: i understand. this is cool, i needed to be reminded ·) [10:06] mscdex: i think they may have just downloaded the maverick .deb manually and installed that, not sure [10:07] Vertice has joined the channel [10:07] jetienne: mscdex: it likely works. i remove as many deps as i can in the .deb to avoid this [10:07] lgl has joined the channel [10:09] m00p has joined the channel [10:11] jhurliman has joined the channel [10:16] adambeynon has joined the channel [10:18] tdegrunt has joined the channel [10:21] fbzhong has left the channel [10:23] ExsysTech has joined the channel [10:23] sechrist has joined the channel [10:25] neshaug has joined the channel [10:26] neshaug has joined the channel [10:28] skohorn has joined the channel [10:30] skohorn has joined the channel [10:30] level09: when passing the node server url to the socket , should I add http ? [10:31] level09: it says node_server_url [10:33] mscdex: i think we're missing some context here level09 [10:33] mscdex: :) [10:34] mscdex: what says node_server_url? [10:34] level09: :D [10:34] level09: one sec [10:34] level09: http://socket.io/ [10:34] level09: the docs [10:35] level09: i think I got it now, but still cant get the socket.on('connect') to wrok [10:35] mscdex: no, you don't prepend 'http' because it's already there as you can see in the example [10:35] mscdex: it's just your hostname/ip [10:35] mscdex: oh, wait in socket.io js code... yeah don't use http [10:36] mscdex: so like 'localhost:8000' or something [10:36] level09: yeah thanks, it works now [10:36] `3rdEden: what he said [10:36] `3rdEden: ;D [10:37] level09: now trying to get the socket.on('connect') to work [10:37] level09: or at least socket.on('connection') on the server side :D [10:38] ewdafa has joined the channel [10:40] jarek has joined the channel [10:40] jarek has joined the channel [10:41] bkozal has joined the channel [10:42] temp01 has joined the channel [10:45] jetienne: Btw ryah is coming to paris on june 8th, register. http://parisnodemeetup.eventbrite.com/ [10:48] temp01 has joined the channel [10:49] seism has joined the channel [10:51] jkridner has joined the channel [10:51] christophsturm has joined the channel [10:52] mscdex: jetienne: still waiting for some east coast/midwest action [10:52] mscdex: :) [10:52] Nexxy has joined the channel [10:52] Nexxy has joined the channel [10:53] indutny has joined the channel [10:53] jacter has joined the channel [10:55] jetienne: mscdex: :) we had to work quite a bit to make it come. the event is organized by 'parisjs', a javascript paris organisation. im in the organisation. this meeting has been in the air for 2months. talking to joyent paris and all, finding place to host etc.. [10:55] jetienne: mscdex: so do the work and he will come :) [10:56] mscdex: heh [10:56] jetienne: (vm ubuntu installed...) [10:56] mscdex: :) [10:57] mscdex: i wonder how much better a node solution would be instead of phpvirtualbox [10:57] Nexxy: ;o [10:58] Nexxy: wow where has everyone been [10:58] mscdex: right here [10:58] mscdex: ! [10:58] Nexxy: oh [10:58] Nexxy: I guess I'm the one that was gone [10:58] mscdex: yeah [10:58] Nexxy: I built a serrrverrr!!! [10:58] mscdex: uh oh [10:59] dyer has joined the channel [10:59] dyer has joined the channel [10:59] Nexxy: it's delicious [10:59] mscdex: nexxy.js [10:59] Nexxy: 4U rack mount [10:59] Nexxy: all black [10:59] Nexxy: mmm [10:59] mscdex: oh, i thought you meant a node server [10:59] Nexxy: well yes [10:59] Nexxy: it's going to run several node apps [10:59] mscdex: software-wise [10:59] Nexxy: just getting the virtualization set up [11:00] Nexxy: KVM n stuff [11:00] mscdex: fun [11:00] Nexxy: jah~!1 [11:00] Nexxy: iz a 3.2ghz i5 quad core [11:00] Xano has joined the channel [11:00] Nexxy: wiff 8gb ddr3 and a 128gb SSD [11:00] mscdex: my pandaboard should be here tomorrow and hopefully i won't have any problems getting node on that sucker [11:00] Nexxy: but I'ma put another 8gb in [11:01] Nexxy: what! [11:01] Nexxy: pandaboard? ;o [11:01] mscdex: yeah, it's like a spiffier version of a beagleboard [11:01] paul_k has joined the channel [11:02] mscdex: dual core cortex-a9 [11:02] mscdex: 1gb ram [11:02] mscdex: built in wifi and bluetooth and ethernet [11:02] mscdex: dual hdmi [11:02] mscdex: :-D [11:02] Nexxy: ;o [11:02] mscdex: and usb and an sd slot [11:02] Nexxy: thank you. [11:02] mscdex: hah [11:02] slicky: are the return characters \r, \n only? isn't there another one? My mind is kinda bleh right now lol [11:02] Nexxy: I think you just saved me $300 [11:02] mscdex: $300? [11:03] Nexxy: approx [11:03] Nexxy has left the channel [11:03] Nexxy has joined the channel [11:03] Nexxy: ;/ [11:03] Nexxy: wrong... window... [11:03] matyr has joined the channel [11:03] mscdex: slicky: no, \r is carriage return, \n is newline. those are the "only two" [11:03] `3rdEden: Pff Nexxy no PCI ssd's? [11:04] Nexxy: sata III ? [11:04] mscdex: pandaboards are only $179 btw [11:04] mscdex: ;> [11:04] Lorentz: I should get a nexus s [11:05] Nexxy: well I was trying to figure out the best way to set up a thin client to connect to one of the virtual OSes [11:08] temp01 has joined the channel [11:10] jarek_ has joined the channel [11:12] burningdog has joined the channel [11:14] mhausenblas_ has joined the channel [11:14] burningdog_ has joined the channel [11:17] k1ttty has joined the channel [11:17] gavin_huang has joined the channel [11:19] dejanr has joined the channel [11:19] dejanr: hi anyone familiar with error on osx: execvp(): No such file or directory [11:19] dejanr: i googled, but no luck [11:19] dejanr: it has to do with forking, spawning processes on osx [11:20] dejanr: i tried xcode 3,4 reinstalled node npm couple of times, but same happends [11:20] mscdex: dejanr: where are you running into that error? with fork or doing child_process.spawn/exec ? [11:20] dejanr: doing child_process.spawn inside cake task [11:20] dejanr: coffee-script cake task [11:21] dejanr: when i start that task i get this error [11:21] dejanr: funnelnow git:master b/ cake start b9 [11:21] dejanr: execvp(): No such file or directory [11:21] mscdex: oh [11:21] mscdex: i'm not familiar with coffeescript stuff :\ [11:22] dejanr: i will try same code with nodejs [11:23] temp01 has joined the channel [11:27] SamuraiJack has joined the channel [11:27] temp01 has joined the channel [11:28] dejanr has left the channel [11:28] riven has joined the channel [11:28] riven has joined the channel [11:28] postwait has joined the channel [11:31] se1sm has joined the channel [11:38] beawesomeinstead has joined the channel [11:38] beawesomeinstead has joined the channel [11:39] stepheneb has joined the channel [11:43] Wizek has joined the channel [11:48] neoesque has joined the channel [11:49] pandeiro has joined the channel [11:50] rputikar has joined the channel [11:52] rick_h_ has left the channel [11:52] rick_h_ has joined the channel [11:53] Bradleymeck has joined the channel [11:55] ExsysTech has joined the channel [11:56] jbpros has joined the channel [11:58] cloudhead_ has joined the channel [11:58] mhausenblas_ has joined the channel [12:02] sjbreen has joined the channel [12:03] Dreamer3__ has joined the channel [12:04] tuhoojabotti has joined the channel [12:04] daveyjoe has joined the channel [12:06] Schmallon has joined the channel [12:06] paul_k has joined the channel [12:08] tiagoa has joined the channel [12:08] fmeyer has joined the channel [12:09] mehlah has joined the channel [12:10] cryptix has joined the channel [12:11] jacter has joined the channel [12:12] ErikC has joined the channel [12:12] msaniac has joined the channel [12:14] pengwynn has joined the channel [12:16] vdemedes has joined the channel [12:16] vdemedes: Hello [12:16] vdemedes: DELETE in knox does not work [12:16] msaniac has joined the channel [12:16] vdemedes: s3.delFile('/filename.png', function(err, res){ // ... }); [12:16] vdemedes: using this ^ [12:17] okuryu has joined the channel [12:17] vdemedes: and same situation with s3.del [12:17] vdemedes: oops, not delFile [12:17] vdemedes: deleteFile [12:17] vdemedes: does not delete files [12:17] JulioBarros has joined the channel [12:19] Silly_Wabbit has joined the channel [12:21] vdemedes: http://pastie.org/1975919 [12:22] vdemedes: just does anything [12:22] vdemedes: with no errors, etc [12:23] kriszyp has joined the channel [12:25] Guest27158 has joined the channel [12:26] dyer has joined the channel [12:26] dyer has joined the channel [12:27] mahna has joined the channel [12:28] Mrfloyd has joined the channel [12:29] devrim has joined the channel [12:29] tuhoojabotti has left the channel [12:30] mscdex: vdemedes: i'd submit an issue on the project's github repo [12:30] vdemedes: mscdex: thanks [12:32] pastak has joined the channel [12:36] miccolis has joined the channel [12:37] slaskis has joined the channel [12:38] qFxo has joined the channel [12:38] janne has joined the channel [12:39] pandeiro: easiest way to write debugging output to file would be...? [12:40] nexxy has joined the channel [12:40] nexxy has joined the channel [12:40] k1ttty has joined the channel [12:41] pandeiro: var --> buffer --> fs.write() ? surely there's an easier way? like &> log.txt in bash? [12:41] mscdex: pandeiro: depends on how you're writing debugging output [12:42] mscdex: you can still do redirection [12:42] pandeiro: for now just trying to examine a req object [12:42] mscdex: or you can use fs.open() with 'a' mode for append, then just write as much as you want and then fs.close() on process exit [12:43] mscdex: pandeiro: console.dir(obj) will show the object's properties on stdout [12:43] strmpnk has joined the channel [12:44] pandeiro: mscdex: i am using console.dir but the output is unwieldy [12:44] pandeiro: prefer to look at it in vim [12:44] pandeiro: i will need to transfer it to a buffer manually and fs.write() then? [12:45] mscdex: pandeiro: ok, then you can just fs.write() the contents of util.inspect(obj) [12:45] pandeiro: ah ok, little easier i guess [12:45] mscdex: if it's just a one time debug statement and you don't need append support, you can just use fs.writeFile [12:45] pandeiro: thanks mscdex [12:45] rgabo has joined the channel [12:46] pandeiro: i dont see writeFile in the docs (?) [12:46] pandeiro: writeSync? [12:46] mscdex: pandeiro: http://nodejs.org/docs/v0.4.8/api/fs.html#fs.writeFile [12:46] pandeiro: heh alphabetic listing ftw [12:47] mscdex: :) [12:47] pandeiro: cheers mscdex [12:47] pandeiro: that is exactly what i needed [12:48] JulioBarros has left the channel [12:49] brianseeders has joined the channel [12:49] JulioBarros has joined the channel [12:49] hybsch has joined the channel [12:50] JulioBarros has left the channel [12:51] ivanfi1 has joined the channel [12:51] ewdafa has joined the channel [12:51] davidcoallier has joined the channel [12:54] Swizec has joined the channel [12:55] brolin has joined the channel [12:56] arpegius has joined the channel [12:56] AaronMT has joined the channel [12:57] malkomalko has joined the channel [12:58] indutny_ic has joined the channel [13:01] davidcoallier has joined the channel [13:03] ngs has joined the channel [13:04] stepheneb has joined the channel [13:05] unomi has joined the channel [13:08] davidcoallier has joined the channel [13:08] quijote has joined the channel [13:12] highermath_away has joined the channel [13:12] highermath_away has joined the channel [13:12] zmbmartin: what are the benefits to using db session store? [13:12] riven has joined the channel [13:12] riven has joined the channel [13:13] davidcoallier has joined the channel [13:13] jonasen has joined the channel [13:13] `3rdEden: zmbmartin compared to? [13:14] zmbmartin: `3rdEden: just a standard cookie? [13:14] `3rdEden: zmbmartin db sessions needs cookies as well [13:14] ianward has joined the channel [13:14] `3rdEden: how else would they match the user to a sesison in the database? [13:15] sirkitree has joined the channel [13:15] zmbmartin: `3rdEden: ok then whatever express uses by default vs db. [13:15] `3rdEden: ah [13:15] zmbmartin: sorry newer to the whole sessions thing [13:15] `3rdEden: zmbmartin expresses uses the a memory based storage :p, so it's baseically just a javascript object in memory [13:16] hij1nx has joined the channel [13:16] `3rdEden: when your server dies all sessions will be gone [13:16] pomodoro has joined the channel [13:16] `3rdEden: if they are stored in a database, you wont lose them [13:16] zmbmartin: `3rdEden: is that the only difference? [13:16] `3rdEden: also, in a database allows you to scale across multiple processes as all process can access the sessions from the database [13:16] lukstr: zmbmartin: it allows you to do a lot of things you might not, like what `3rdEden just said as I started typing this [13:16] dransfim has joined the channel [13:17] lukstr: you can integrate sessions with other processes/services [13:17] dies-el has joined the channel [13:17] lukstr: or across a cluster [13:17] nexxy: riak session store ftw ;o [13:17] nexxy: built-in cluster! [13:17] davidsklar has joined the channel [13:17] zmbmartin: ok thanks guys [13:17] col3 has joined the channel [13:19] vdemedes has left the channel [13:20] thomblake has joined the channel [13:20] bkozal has joined the channel [13:20] benvds has joined the channel [13:21] catshirt has joined the channel [13:21] fermion has joined the channel [13:22] openbala has joined the channel [13:23] wink_ has joined the channel [13:23] boaz_ has joined the channel [13:24] dnolen has joined the channel [13:25] mike5w3c has joined the channel [13:25] jackhq has joined the channel [13:26] devrim1 has joined the channel [13:26] alex_b has joined the channel [13:27] knolan has joined the channel [13:29] dies_el has joined the channel [13:31] Poetro has joined the channel [13:31] xandrews has joined the channel [13:31] tuhoojabotti has joined the channel [13:32] hybsch has joined the channel [13:32] Avorin has joined the channel [13:32] tuhoojabotti: Anyone know why my dust.loadSource crashes my app? I just tried to run the example on the website. [13:32] tuhoojabotti: The compiled template I feed it looks fine. [13:32] tuhoojabotti: Or point me to dust channel. :P [13:33] sonnym has joined the channel [13:34] mike5w3c_ has joined the channel [13:35] benmonty has joined the channel [13:35] anoop has joined the channel [13:36] fmeyer has joined the channel [13:37] `3rdEden: tuhoojabotti http://tinyurl.com/3egcqmp [13:38] `3rdEden: ;D jokes aside. I don't think they have a IRC channel :p but most template languages compile to a JavaScript function [13:38] tuhoojabotti: Yeah, I tried googling.. [13:39] tuhoojabotti: And yes, it compiles into a js-function-string [13:39] tuhoojabotti: And the site tells me to feed it to loadSource, but it crashes [13:39] tuhoojabotti: http://akdubya.github.com/dustjs/#guide [13:39] Xano has joined the channel [13:40] zmbmartin: how do I use functions from another file that I require. like file test.js has function something so I require test = require('test'); ? [13:40] indutny_ic: some time ago I was developing template engine too. https://github.com/donnerjack13589/nTPL [13:41] tuhoojabotti: http://pastebin.com/6JVbE5Ft [13:41] daveyjoe has joined the channel [13:41] baoist has joined the channel [13:41] ExsysTech has joined the channel [13:42] quijote has joined the channel [13:42] pomodoro has joined the channel [13:43] uchuff has joined the channel [13:43] antlong has joined the channel [13:43] edude03 has joined the channel [13:44] seivan has joined the channel [13:44] nibblebot has joined the channel [13:44] burningdog has joined the channel [13:47] MattJ has joined the channel [13:48] TomY has joined the channel [13:49] zzak has joined the channel [13:49] zzak has joined the channel [13:49] broofa has joined the channel [13:50] matyr has joined the channel [13:51] galaxywatcher has joined the channel [13:52] baudehlo has joined the channel [13:52] timmywil has joined the channel [13:52] tuhoojabotti: Well I sent the creator a message via github. :p [13:53] rfay has joined the channel [13:53] willwhite has joined the channel [13:54] Spion_ has joined the channel [13:54] Spion_ has joined the channel [13:55] amocla has joined the channel [13:57] jslatts has joined the channel [13:57] hoodow has joined the channel [13:57] hoodow has joined the channel [13:57] jslatts has left the channel [14:00] FireFly|n900 has joined the channel [14:00] pomodoro has joined the channel [14:00] pifantastic has joined the channel [14:01] spasquali has joined the channel [14:01] iaincarsberg has left the channel [14:01] kawaz_air has joined the channel [14:01] _aron has joined the channel [14:02] malkomalko has joined the channel [14:04] mathieu has joined the channel [14:06] mertonium has joined the channel [14:07] bshumate has joined the channel [14:07] timmywil has joined the channel [14:09] Mrfloyd has joined the channel [14:09] adambeynon has joined the channel [14:09] catshirt has joined the channel [14:10] newy has joined the channel [14:10] Mrfloyd has joined the channel [14:10] Swimming_bird has joined the channel [14:11] fmeyer has joined the channel [14:12] jetienne has joined the channel [14:15] trotter has joined the channel [14:15] dcampano has joined the channel [14:15] brettgoulder has joined the channel [14:16] eikaas_ has joined the channel [14:16] se1sm has joined the channel [14:19] FireFly|n900 has joined the channel [14:19] FireFly|n900 has joined the channel [14:20] ryanfitz has joined the channel [14:20] yhahn has joined the channel [14:21] Bj_o_rn has joined the channel [14:21] jxck has joined the channel [14:22] brianc has joined the channel [14:22] kawaz_air has joined the channel [14:22] gtramont1na has joined the channel [14:23] michael has joined the channel [14:24] jpiche has joined the channel [14:24] http402 has joined the channel [14:24] softdrink has joined the channel [14:25] kkaefer: so, I'm compiling a C++ addon [14:25] kkaefer: and I added my .cc file in wconfig [14:25] kkaefer: and it seems to get linked [14:25] kkaefer: but when I run the js code, I get Symbol Not Found [14:25] caseywstark has joined the channel [14:25] lukstr: kkaefer: any more details? [14:26] kkaefer: [5/5] cxx_link: build/default/src/img_1.o build/default/src/reader_1.o build/default/src/blend_1.o build/default/src/image_1.o -> build/default/img.node [14:26] jtsnow has joined the channel [14:26] kkaefer: ImageReader is defined in reader.cc/reader.h [14:26] kkaefer: uncaught: Error: dlopen(/Users/kkaefer/Code/node/node-img/build/default/img.node, 1): Symbol not found: __ZTI11ImageReader [14:26] Turnit has joined the channel [14:28] stepheneb has joined the channel [14:28] Turnit: Is a string with a value of "" equal null? [14:28] kkaefer: no [14:29] lukstr: Turnit: off the top of my head no [14:29] Turnit: Does it equal ! [14:29] kkaefer: Turnit: well, it's easy to find out [14:29] kkaefer: start node [14:29] kkaefer: and type '' == null [14:29] lukstr: kkaefer: can you post your wscript? [14:30] davidcoallier has joined the channel [14:30] kkaefer: lukstr: https://gist.github.com/252ca898872c8715d308 [14:30] lukstr: kkaefer: out of curiosity why -O3 [14:31] kkaefer: I was doing benchmarking [14:31] dget has joined the channel [14:31] lukstr: kkaefer: good man [14:31] `3rdEden has joined the channel [14:31] lukstr: too often I see people just using it because it's "better" [14:31] lukstr: anyways [14:34] ezl has joined the channel [14:35] jtrudeau has joined the channel [14:35] kkaefer: lukstr: any idea? [14:35] lukstr: kkaefer: I'm not entirely convinced you're linking against libpng [14:36] lukstr: one sec [14:36] kkaefer: oh, linking against libpng is not the issue [14:36] kkaefer: reading pngs works just fine [14:36] kkaefer: ImageReader is a custom class I wrote [14:36] kkaefer: all of the other files link properly [14:36] kkaefer: just this one file doesn't [14:36] kkaefer: (I ran configure of course) [14:36] avalanche123 has joined the channel [14:36] lukstr: hm maybe you have something weird in there? [14:36] Turnit: I didn't realize node.js hjad a console mode. Cool, very useful :) [14:37] wink_: kkaefer: which of those .cc's define ImageReader? [14:38] lukstr: kkaefer: maybe you are not externing properly? [14:38] kkaefer: it's declared in reader.h and defined in reader.cc [14:38] jabowery has joined the channel [14:38] ceej has joined the channel [14:38] suresh has joined the channel [14:38] cloudhead has joined the channel [14:38] wink_: kkaefer: also, run node-waf -vvv configure build [14:39] wink_: turn verbosity way up and you'll be able to see the actual build commands [14:39] kkaefer: https://gist.github.com/980defde58781a5e8dd4 [14:40] lukstr: it looks to me like it's trying to call something that was mangled which was not actually mangled? :P [14:40] kkaefer: all the other classes etc I define work just fine [14:40] jabowery: I'm getting this error even though c-ares and c-ares-devel are installed and the latest version: [14:40] jabowery: $ node example.js node: symbol lookup error: node: undefined symbol: ares_library_init [14:41] wink_: kkaefer: that build looks to have completed, no? [14:41] jabowery: centos5 [14:41] kkaefer: yeah, I don't get any compiler errors or anything [14:41] kkaefer: and it seems to link all object files [14:41] mahna_ has joined the channel [14:41] wink_: but its when you run it? [14:42] kkaefer: but it can't find a symbol in the result [14:42] wink_: ahh [14:42] Turnit: How dop I convert an object to an array? [14:43] wink_: are you initing it properly? do you have your module on github? [14:43] Turnit: I am getting "Object has no method splice()" [14:43] kkaefer: wink_: yeah, let me just push the changes [14:43] Venom_X has joined the channel [14:43] saschagehlich has joined the channel [14:44] wink_: Turnit: the lack of splice is definitely a result of your object not being an array, where did the object come from and why isnt it already an array? [14:44] kkaefer: wink_: https://github.com/developmentseed/node-img [14:44] col3 has left the channel [14:44] kkaefer: run ./configure [14:44] kkaefer: and make test only=blend [14:45] newy has joined the channel [14:45] MrTopf has joined the channel [14:45] spasquali: any node.js libraries/modules/experiments working with VoltDB? [14:46] softdrink has joined the channel [14:46] wink_: kkaefer: k, sec [14:48] strmpnk has joined the channel [14:48] mertonium has joined the channel [14:50] Corren has joined the channel [14:50] landastronaut has joined the channel [14:50] kriszyp has joined the channel [14:52] springmeyer has joined the channel [14:52] bene1 has joined the channel [14:53] wink_: crap, kkaefer, i've gotta run for a bit, i'll ping you when i get back and see if you still need some help [14:54] kkaefer: ok, thanks anyway [14:55] nvoyager has joined the channel [14:56] SeyZ has joined the channel [14:56] Cheery has joined the channel [14:56] dyer has joined the channel [14:56] eguest309 has joined the channel [14:57] Cheery: from some reason when I use npm, I won't be able to 'require' the packages I've fetched [14:57] Cheery: unless I go into the directory where npm puts them into [14:58] slaskis: Cheery: which npm version? [14:58] d0k has joined the channel [14:58] jaw6 has joined the channel [14:58] Cheery: 1.0.6 [14:59] knolan has left the channel [14:59] telemachus: Did you install npm or the modules with sudo? (Or maybe how did you install them?) [14:59] slaskis: and it installs them in project_dir/node_modules properly? [15:00] Cheery: it installs them into .local/node/lib/node_modules/ [15:00] Cheery: $HOME/.local [15:00] slaskis: i think you should remove something from your ~/.npmrc [15:00] slaskis: like the path [15:01] slaskis: installing npm 1.0 should've cleaned that up though i though [15:01] slaskis: t [15:01] sub_pop has joined the channel [15:01] iori has joined the channel [15:01] telemachus: It's possible to say no to the cleanup, as I recall. [15:01] telemachus: (maybe by accident?) [15:02] zzak: you were an accident. [15:02] Cheery: there's only .npm/ [15:03] Cheery: require.paths seem to tell it. [15:03] ablemann has joined the channel [15:03] telemachus: zzak: Ouch [15:03] Cheery: they are all wrong [15:03] telemachus: :) [15:03] telemachus: ACTION gives cranky zzak more coffee [15:04] slaskis: no more beer for you zzak, zzak-- [15:05] jakehow has joined the channel [15:05] mitko has joined the channel [15:05] materialdesigner has joined the channel [15:05] ewdafa has joined the channel [15:06] spasquali has left the channel [15:06] Epeli has joined the channel [15:07] rfay has joined the channel [15:08] zzak: :( [15:08] gazumps has joined the channel [15:09] jlecker has joined the channel [15:09] jaw6: it seems like jsdom is not loading external javascripts. I've set FetchExternalResources and ProcessExternalResources, I've tried version 0.2 and 0.1.23, neither are making requests. (server logs show only the initial html request, nothing else happens.) am I missing something? [15:09] dyer has joined the channel [15:09] dyer has joined the channel [15:10] hij1nx has joined the channel [15:11] aheckmann has joined the channel [15:14] lluad has joined the channel [15:15] nexxy: jaw6, what is fetch set to? [15:15] colinclark has joined the channel [15:15] deedubs has joined the channel [15:15] sveimac has joined the channel [15:15] jaw6: nexxy: not sure I follow you? [15:16] deedubs: How are people handling private npm packages atm? [15:16] antlong has joined the channel [15:16] nexxy: FetchExternalResources [15:17] jaw6: ['script'] [15:18] davidcoallier has joined the channel [15:20] piscisaureus has joined the channel [15:20] m00p has joined the channel [15:20] spasquali has joined the channel [15:21] c4milo has joined the channel [15:21] thalll has joined the channel [15:22] BillyBreen has joined the channel [15:22] EvanCarroll: is there anything that bootstraps a new module? [15:22] EvanCarroll: like module-starter in the perl world? [15:23] lluad: npm init, maybe? [15:24] EvanCarroll: nifty. [15:25] EvanCarroll: at least a minor oversight that `npm init` isn't mentioned in the man pages for `npm` under developer usage, but rather just each step individually [15:25] seism has joined the channel [15:25] matbee has joined the channel [15:25] Cheery: does node.js have some cleaner way to say: "user:"+id+":name" ? [15:26] jxck has joined the channel [15:26] matbee: Cheery, it gets cleaner than that? [15:26] matbee: :P [15:27] lluad: Yeah, EvanCarroll. I stumbled across it at http://howtonode.org/how-to-module [15:28] rick_h_: Cheery: i've been using underscore.js and the underscore string module. It has a sprintf() [15:28] tim_smart has joined the channel [15:28] jackhq has joined the channel [15:28] colinclark_ has joined the channel [15:29] coderendezvous has joined the channel [15:29] isaacs has joined the channel [15:30] quijote has joined the channel [15:30] Corren has joined the channel [15:31] baudehlo has joined the channel [15:31] briznad has joined the channel [15:33] davidcoallier has joined the channel [15:33] nook has joined the channel [15:33] nilcolor has joined the channel [15:33] febits has joined the channel [15:34] jaw6: is anyone else using jsdom and finding it to load external javascripts? [15:35] newy has joined the channel [15:35] razvandme has joined the channel [15:35] lakin has joined the channel [15:36] deedubs: SubStack: ping re dnode ruby -> nodejs [15:36] razvandme: hello, i'm using coffee script and i'm having troube iterating through an object's properties [15:36] razvandme: can somebody help? [15:36] spasquali has joined the channel [15:37] suresh has joined the channel [15:37] devrim has joined the channel [15:38] malkomalko: Maximum call stack size exceeded.. recursive functions.. what gives? :) [15:39] nexxy: infinite loop! [15:39] nexxy: fixyer logic [15:39] tmpvar has joined the channel [15:39] Spion has joined the channel [15:40] suresh has joined the channel [15:41] Renegade001 has joined the channel [15:41] tjholowaychuk has joined the channel [15:41] deedubs: razvandme: #coffeescript [15:41] mamund: hello. looking for some general feedback here... [15:41] fostah has joined the channel [15:41] mamund: the common practice of inline functions (nesting) is a bit annoying to me... [15:42] mamund: so i have been doing it sliglty diff than most examples. [15:42] mamund: see here: https://gist.github.com/993374 [15:42] mamund: are any 'gotchas' that i will run into? perf issues? etc. [15:42] mamund: any advice, experience would be welcome. [15:42] mamund: thanks. [15:43] gsmcwhirter has joined the channel [15:43] msilverman2 has joined the channel [15:44] brianc: has anyone else noticed google's searches have really been wrong w/ github modules? [15:44] brianc: often times the original repository is no where to be found on the search results, only a few forks [15:45] harth has joined the channel [15:45] sveimac has joined the channel [15:48] daveyjoe has joined the channel [15:50] seivan has joined the channel [15:51] Cheery: is there some generic way to handle errors in node? [15:51] addisonj: does fs.stat return the size in bytes? [15:52] gsmcwhirter has joined the channel [15:52] dyer has joined the channel [15:52] dyer has joined the channel [15:52] bluesmoon_ has joined the channel [15:52] addisonj: nm, answered my own question :P [15:52] Yuffster_work has joined the channel [16:01] [[zz]] has joined the channel [16:01] jabowery: I had to install from source using: only-git-all-the-way.sh (but it has a missing . ~/.bashrc required to make npm) [16:01] eresair has joined the channel [16:01] aho has joined the channel [16:01] tjholowaychuk has joined the channel [16:01] blueadept has joined the channel [16:01] softdrink has joined the channel [16:01] sechrist has joined the channel [16:01] ebryn has joined the channel [16:01] donaldpcook has joined the channel [16:01] eresair has joined the channel [16:01] alecbenzer has joined the channel [16:01] jakehow has joined the channel [16:01] alecbenzer: does anyone know how to get express to serve static files? app.use(express.static(__dirname + '/pubic')); doesn't seem to be working for me [16:01] Cheery: http://paste.pocoo.org/show/395669/ <- can you comment on this? [16:01] context: alecbenzer: are your static files in project_root/public ? [16:02] context: cheery: does it work ? [16:02] secoif has joined the channel [16:02] Cheery: yes [16:02] alecbenzer: context: mhm [16:02] burningdog has joined the channel [16:02] lukstr: kkaefer: any luck yet? [16:02] kkaefer: lukstr: yes [16:02] kkaefer: I declared a virtual function but didn't define it [16:02] kkaefer: adding = 0; after the declaration solved the problem [16:02] alecbenzer: public/lol is a file, but localhost:8080/lol gives me Cannot GET /lol [16:02] davidcoallier has joined the channel [16:02] lgl has joined the channel [16:02] kkaefer: node-waf suppresses those errors [16:03] kkaefer: found it by removing --undefined in the generated configure script [16:03] ExsysTech has joined the channel [16:03] steph021 has joined the channel [16:03] steph021 has joined the channel [16:04] slloyd has joined the channel [16:07] lukstr: kkaefer: those are errors it really souldn't suppress -- I just removed --undefined and found the problem I guess right when you did :P [16:07] kkaefer: lukstr: thanks for your help [16:07] lukstr: np, not sure if you need that factory though ;) [16:07] lukstr: ls [16:07] lukstr: goddamn. [16:08] lukstr: ACTION coffees [16:08] kkaefer: lukstr: I'll also add a JPEG reader [16:08] lukstr: I missed a ^A a [16:08] lukstr: kkaefer: ah awesome [16:09] context: mmmm coffee [16:09] vipaca has joined the channel [16:09] vipaca has joined the channel [16:09] gf3: NO U [16:10] mertonium has joined the channel [16:10] pifantastic has joined the channel [16:11] philtor has joined the channel [16:12] kjeldahl has joined the channel [16:12] jacter has joined the channel [16:12] benmills has joined the channel [16:13] ryanfitz has joined the channel [16:14] jerrysv has joined the channel [16:14] tdegrunt has joined the channel [16:14] jerrysv: duncanbeevers: you around? [16:15] Bradleymeck has joined the channel [16:16] benmills: Would anyone be able to help me with a C++ addon question? [16:16] jerrysv: benmills: can try [16:16] sveimac has joined the channel [16:16] context: benmills: all i read was "is it ok if i ask a question?" [16:16] yozgrahame has joined the channel [16:17] benmills: So I have this markdown parsing lib (https://github.com/benmills/robotskirt) someone is using it in express but some times it either returns an extra char at the end of the string or returns nothing [16:17] donaldpcook has joined the channel [16:17] benmills: I guess my real question is, what is a good way to start debugging this? [16:18] pifantastic: benmills: I havent had that problem with node-markdown [16:18] wookiehangover has joined the channel [16:18] jerrysv: benmills: stupid question, are you using scope.Close() ? [16:18] tjholowaychuk: use github-flavored-markdown or w/e [16:18] FireFly|n900 has joined the channel [16:18] tjholowaychuk: node-markdown doesnt support html [16:18] tjholowaychuk: and has some other issues [16:18] benmills: yes [16:18] tjholowaychuk: double escaping [16:18] benmills: I'm sure I can use other libs, this is actually a lib I'm working on personally [16:19] pifantastic: tjholowaychuk: oh, thanks for the tip [16:19] benmills: Its a wrapper for upskirt the c lib that github uses [16:19] jerrysv: benmills: lots of tests that call gc liberally, with what you are parsing, what you expect [16:19] jerrysv: benmills: run them in a tight loop with lots of gc [16:19] benmills: ok [16:20] benmills: Are you saying run these tests with c++ code or js code? [16:20] jerrysv: benmills: and see if you can get a copy of the offending markdown, it may expose an issue more rapidly [16:20] jerrysv: js code [16:20] adambeynon has joined the channel [16:20] benmills: It doesn't seem to be related to the markdown string, I'm able to reproduce it with any markdown string [16:20] benmills: but thanks for the tip [16:22] isaacs has joined the channel [16:23] tmedema has joined the channel [16:23] alecbenzer: any ideas for stuff I could try with the static files thing? [16:25] eyesUnclouded has joined the channel [16:26] mAritz: i remember sometime back that there was a movement to standardize the way json responses are structured. does anyone have a link to that? [16:26] ryah has joined the channel [16:26] amerine has joined the channel [16:28] tmpvar has joined the channel [16:28] SubStack: deedubs: oh hello [16:28] deedubs: SubStack: sorry carry on figured it out :D [16:29] SubStack: ACTION carries on! [16:31] TooTallNate has joined the channel [16:32] adambeynon has joined the channel [16:32] fly-away has joined the channel [16:34] caolanm has joined the channel [16:34] pandeiro has joined the channel [16:35] dylang has joined the channel [16:35] ircretary has joined the channel [16:35] davidcoallier has joined the channel [16:36] pen_ has joined the channel [16:36] dingomanatee has joined the channel [16:37] mertonium has joined the channel [16:38] Bradleymeck: isaacs~ ping [16:39] isaacs: hi [16:39] Bradleymeck: so i have a question about executables with npm [16:39] isaacs: k [16:39] blueadept: anyone know a good way to count every second that a html5 audio or video plays with node? [16:40] antlong has left the channel [16:40] tonyskn has joined the channel [16:40] BillyBreen has joined the channel [16:41] catshirt has joined the channel [16:41] Bradleymeck: we have been testing our executables, and we cannot require the package that they are related to if there is a 2nd install (global or local) of it, because it will override our executable (we also cant use relative requires). Is there a decent way to use relative requires in an npm executable? [16:41] Bradleymeck: isaacs ^ (took longer than i thought to write) [16:42] isaacs: Bradleymeck: why can't you use relative requires? [16:42] dingomanatee has joined the channel [16:42] isaacs: Bradleymeck: all my executables use relative requires from the executable. that's how it's done. [16:42] tonyskn has left the channel [16:42] isaacs: qv npm, semver, glob, etc. [16:42] isaacs: er, glob doesn't have an exec, rather. [16:42] zmbmartin: how do you get the value of a select to be the selected value in jade? [16:43] tjholowaychuk: same way as html [16:43] newy has joined the channel [16:43] lukstr: zmbmartin: add a selected attribute? [16:43] Bradleymeck: isaacs mmm i was looking in /usr/local/bin and it appeared to have just done a quick copy of the file, maybe im missing something, but it doesnt appear to be running in the right directory (sec ill dig up a gist) [16:44] isaacs: Bradleymeck: it's a symlink [16:44] thalll has joined the channel [16:44] isaacs: Bradleymeck: and node does a realpath() on modules, so symlinks are safe. [16:44] Bradleymeck: https://gist.github.com/989467 [16:45] Bradleymeck: had 2 installs of jistu, 1 being deved on, 1 as a global install, they appeared to have gotten confused [16:45] isaacs: Bradleymeck: so... findit can't find seq? [16:45] isaacs: is that the problem? [16:45] wadey has joined the channel [16:46] Bradleymeck: isaacs thats the general thing we want to solve so yea [16:46] Bradleymeck: i put up a global install of seq after that message and it still gave that, so idk [16:46] sveimac has joined the channel [16:46] strmpnk has joined the channel [16:46] dguttman has joined the channel [16:47] isaacs: how is require-analyzer loading findit? [16:48] AvianFlu has joined the channel [16:48] jtsnow has joined the channel [16:48] AvianFlu: slicky++ [16:48] v8bot: AvianFlu has given a beer to slicky. slicky now has 1 beers. [16:48] perezd has joined the channel [16:48] isaacs: Bradleymeck: because just doing `npm install findit`, and then require("findit") works fine, and finds seq [16:49] Bradleymeck: findit = require('findit'); [16:49] Bradleymeck: and i can run findit's tests fine [16:49] isaacs: Bradleymeck: $ node [16:49] isaacs: > require("findit") [16:49] isaacs: { [Function: find] find: [Circular], findSync: [Function: findSync], sync: [Function: findSync] } [16:49] isaacs: works fine? [16:49] isaacs: what file is doing that? [16:49] Bradleymeck: just when i try to run the executable in /bin via the /usr/local/bin it seems to freak out [16:50] Bradleymeck: require-analyzer/lib/require-analyzer.js [16:50] isaacs: Bradleymeck: yeah, because those things aren't installed globally, maybe? [16:50] maqr has joined the channel [16:50] maqr has joined the channel [16:50] isaacs: or, aren't installed under require-analyzer? [16:50] arpegius has joined the channel [16:50] jbpros has joined the channel [16:50] Bradleymeck: they are in the npm ls tree [16:50] isaacs: Bradleymeck: yeah, locally [16:50] isaacs: Bradleymeck: but require-analyzer is installed globally [16:50] benmills: what about npm ls -g [16:50] benmills: ? [16:50] isaacs: Bradleymeck: npm ls -g [16:51] isaacs: npm install require-analyzer -g, and it works for me [16:51] samsonjs has joined the channel [16:51] isaacs: don't need to install anything else at the top level globally [16:52] openbala has joined the channel [16:52] _aron has joined the channel [16:52] benmills: If you want to install something and use it as a command (i.e. express) is there an easy way to do that without installing it globally? [16:52] isaacs: benmills: add ./node_modules/.bin to your PATH environ [16:52] isaacs: benmills: or run it in a "scripts" member in your package.json. [16:52] isaacs: benmills: or install globally and just `npm link express` in the projects that require() it [16:53] chrislorenz has joined the channel [16:53] isaacs: Bradleymeck: OH!! your'e developing ON require-analyzer. [16:53] isaacs: Bradleymeck: go into the folder, and do `npm link` [16:53] isaacs: that's the answer. [16:53] radicality has joined the channel [16:54] gtramont1na has joined the channel [16:54] msilverman2: Anyone know of a good alternative to zombie? Zombie is barfing on some javascript magic from a package called hicharts that we are using. [16:54] zmbmartin: when I console.log(user) I see a user role but in the jade template user.role shows undefined? [16:54] nhyyhn has joined the channel [16:54] Bradleymeck: i have both, but im trying something out, and i do have one that i ran npm link on and one that was installed from way ago, anywho i think i have a fix [16:55] isaacs: Bradleymeck: i'm pretty sure there's no bug there. just something wonky with your setup. [16:55] brianc: isaacs: one thing confusing about`npm link`. module-a you do "install . -g" and then in module-b you can "npm link module-a" right? [16:55] tjholowaychuk: zmbmartin can i see the res.render() call? [16:55] tjholowaychuk: or partial() [16:55] Bradleymeck: yea, im just trying to find out whats exactly is wrong though, it may not be npms fault (most likely) [16:55] isaacs: brianc: `npm link` (noargs) symlinks from the local -> global [16:55] nhyyhn: Q: on nodejs.org introduction video ryan says that an array is not a proper data structure for sockets in the chat app. So what is a proper one? Are there any data structures in js bedsides arrays? [16:56] brianc: AWESOME [16:56] brianc: that was the killer piece i was missing [16:56] isaacs: brianc: `npm link foo` links from foo(global) to foo(local), installing it if it's not already installed globally [16:56] isaacs: :) [16:57] brianc: so you can link from local to global and then from that global to another local, correct? [16:57] pandeiro: was express.bodyParser() formerly called bodyDecoder()? [16:57] gsmcwhirter: pandeiro, i believe so [16:57] brianc: that helps. yesterday i kept doing "npm install . -g" on module-a so the changes would show up in module-b and was thinking "surely I am doing this wrong" The "Warning! module-a is not a sym-link" was also a clue. :) [16:58] isaacs: brianc: yeah, that warning is going away, since it's actually kinda common to just have a single point-of-upgrades, but link it all over. [16:58] isaacs: brianc: bonus: npm link ../foo <-- like (cd ../foo; npm link); npm link foo [16:58] Bradleymeck: does link also link the executables? [16:58] brianc: isaacs: so baller [16:59] Corren has joined the channel [17:00] abraham has joined the channel [17:00] Bradleymeck: nm, thanks isaacs [17:00] openbala has left the channel [17:00] isaacs: Bradleymeck: yep, it does [17:00] Renegade001 has joined the channel [17:00] jackhq has joined the channel [17:01] isaacs: coming soon-ish: npm install --link <-- if any deps are already installed globally, and acceptable, link them. this is a little unsafe, but also super handy. [17:01] rictic has joined the channel [17:01] zmbmartin: tjholowaychuk: https://gist.github.com/993516 [17:02] rauchg has joined the channel [17:02] zmbmartin: tjholowaychuk: all other user attributes are there but role shows undefined [17:03] tjholowaychuk: zmbmartin and within users/edit is where you have the console.log() ? [17:03] tjholowaychuk: ditch locals: {} btw [17:03] FireFly|n900 has joined the channel [17:03] tjholowaychuk: res.render(view, { user: user, current_user: req.current_user }) [17:03] tjholowaychuk: etc [17:04] tjholowaychuk: looks fine though [17:04] tjholowaychuk: assuming you actually have a .role prop [17:04] pigmej has joined the channel [17:04] pigmej: hey [17:04] pigmej: someone mentioned here [17:05] pigmej: node config tool [17:05] pigmej: that was using json.. [17:05] tjholowaychuk: config tool? [17:05] pigmej: configuration files ;) [17:05] tjholowaychuk: config.json [17:05] tjholowaychuk: bam [17:05] tjholowaychuk: what else do you need [17:05] pigmej: well there was something 'ready' :) [17:06] tjholowaychuk: you just have to read the file [17:06] patcoll has joined the channel [17:06] dgathright has joined the channel [17:06] pigmej: sure [17:07] pigmej: https://github.com/nodejitsu/nconf [17:07] pigmej: ;-) [17:07] pigmej: that was it:) [17:07] zmbmartin: tjholowaychuk: I edited the gist https://gist.github.com/993516 to show user and current user. [17:07] tjholowaychuk: hm :s [17:07] tjholowaychuk: pigmej looks like crazy overkill to me [17:07] zmbmartin: seems fine [17:08] pigmej: why overkill ? [17:08] gsmcwhirter: zmbmartin, user.doc.role [17:08] gsmcwhirter: or change user: user to user: user.doc depending on what else you need [17:08] tjholowaychuk: zmbmartin that's a mongoose issue not express [17:09] italic has joined the channel [17:09] madzak has joined the channel [17:09] zmbmartin: gsmcwhirter: why would all the other attributes work without doc? that is weird.... [17:09] postwait has joined the channel [17:09] langworthy has joined the channel [17:09] pigmej: ok node-config is even better;) [17:10] italic: im debugging but on crash my terminal gets borked, suggestions? [17:10] gsmcwhirter: zmbmartin, no idea. i'm just looking at the data structures in the gist [17:10] dyer has joined the channel [17:10] dyer has joined the channel [17:11] e6nian has joined the channel [17:11] zmbmartin: gsmcwhirter: ok, anyway thanks. I didn't think to try that cause all the others are fine without that. [17:12] e6nian: where is the document of http.cat? [17:12] e6nian: I can't find it. [17:12] tjholowaychuk: e6nian i dont think anyone uses that anymore [17:12] tjholowaychuk: use http.get etc [17:13] e6nian: tjholowaychuk: all right. [17:19] zivester has joined the channel [17:25] mundanity has joined the channel [17:25] langworthy has joined the channel [17:25] eddanger has joined the channel [17:25] groom has joined the channel [17:25] kmiyashiro has joined the channel [17:25] jdalton has joined the channel [17:25] mike5w3c has joined the channel [17:25] sjbreen has joined the channel [17:25] sveimac has joined the channel [17:25] bene has joined the channel [17:25] dingomanatee has joined the channel [17:25] e6nian has joined the channel [17:25] dyer has joined the channel [17:25] postwait has joined the channel [17:25] madzak has joined the channel [17:25] italic has joined the channel [17:25] patcoll has joined the channel [17:25] FireFly|n900 has joined the channel [17:25] rauchg has joined the channel [17:25] rictic has joined the channel [17:25] jackhq has joined the channel [17:25] Renegade001 has joined the channel [17:25] abraham has joined the channel [17:25] Corren has joined the channel [17:25] gtramont1na has joined the channel [17:25] radicality has joined the channel [17:25] chrislorenz has joined the channel [17:25] samsonjs has joined the channel [17:25] arpegius has joined the channel [17:25] jbpros has joined the channel [17:25] maqr has joined the channel [17:25] perezd has joined the channel [17:25] jtsnow has joined the channel [17:25] AvianFlu has joined the channel [17:25] strmpnk has joined the channel [17:25] catshirt has joined the channel [17:25] BillyBreen has joined the channel [17:25] mertonium has joined the channel [17:25] pen has joined the channel [17:25] ircretary has joined the channel [17:25] pandeiro has joined the channel [17:25] caolanm has joined the channel [17:25] fly-away has joined the channel [17:25] TooTallNate has joined the channel [17:25] tmpvar has joined the channel [17:25] amerine has joined the channel [17:25] ryah has joined the channel [17:25] eyesUnclouded has joined the channel [17:25] tmedema has joined the channel [17:25] isaacs has joined the channel [17:25] donaldpcook has joined the channel [17:25] yozgrahame has joined the channel [17:25] bradleymeck_lunc has joined the channel [17:25] tdegrunt has joined the channel [17:25] jerrysv has joined the channel [17:25] ryanfitz has joined the channel [17:25] benmills has joined the channel [17:25] kjeldahl has joined the channel [17:25] philtor has joined the channel [17:25] pifantastic has joined the channel [17:25] vipaca has joined the channel [17:25] slloyd has joined the channel [17:25] steph021 has joined the channel [17:25] ExsysTech has joined the channel [17:25] lgl has joined the channel [17:25] secoif has joined the channel [17:25] jakehow has joined the channel [17:25] eresair has joined the channel [17:25] ebryn has joined the channel [17:25] sechrist has joined the channel [17:25] softdrink has joined the channel [17:25] blueadept has joined the channel [17:25] tjholowaychuk has joined the channel [17:25] aho has joined the channel [17:25] [[zz]] has joined the channel [17:25] Yuffster_work has joined the channel [17:25] bluesmoon_ has joined the channel [17:25] gsmcwhirter has joined the channel [17:25] seivan has joined the channel [17:25] msilverman2 has joined the channel [17:25] fostah has joined the channel [17:25] suresh has joined the channel [17:25] Spion has joined the channel [17:25] devrim has joined the channel [17:25] spasquali has joined the channel [17:25] razvandme has joined the channel [17:25] febits has joined the channel [17:25] nook has joined the channel [17:25] briznad has joined the channel [17:25] baudehlo has joined the channel [17:25] colinclark has joined the channel [17:25] matbee has joined the channel [17:25] c4milo has joined the channel [17:25] lluad has joined the channel [17:25] aheckmann has joined the channel [17:25] gazumps has joined the channel [17:25] Epeli has joined the channel [17:25] ewdafa has joined the channel [17:25] materialdesigner has joined the channel [17:25] ablemann has joined the channel [17:25] iori has joined the channel [17:25] sub_pop has joined the channel [17:25] jaw6 has joined the channel [17:25] d0k has joined the channel [17:25] eguest309 has joined the channel [17:25] Cheery has joined the channel [17:25] nvoyager has joined the channel [17:25] kriszyp has joined the channel [17:25] Venom_X has joined the channel [17:25] mahna_ has joined the channel [17:25] cloudhead has joined the channel [17:25] ceej has joined the channel [17:25] avalanche123 has joined the channel [17:25] jtrudeau has joined the channel [17:25] dget has joined the channel [17:25] stepheneb has joined the channel [17:25] jpiche has joined the channel [17:25] kawaz_air has joined the channel [17:25] brianc has joined the channel [17:25] Bj_o_rn has joined the channel [17:25] yhahn has joined the channel [17:25] dcampano has joined the channel [17:25] trotter has joined the channel [17:25] jetienne has joined the channel [17:25] Swimming_bird has joined the channel [17:25] Mrfloyd has joined the channel [17:25] timmywil has joined the channel [17:25] bshumate has joined the channel [17:25] hoodow has joined the channel [17:25] amocla has joined the channel [17:25] willwhite has joined the channel [17:25] matyr has joined the channel [17:25] broofa has joined the channel [17:25] nibblebot has joined the channel [17:25] edude03 has joined the channel [17:25] uchuff has joined the channel [17:25] baoist has joined the channel [17:25] anoop has joined the channel [17:25] hybsch has joined the channel [17:25] tuhoojabotti has joined the channel [17:25] xandrews has joined the channel [17:25] Poetro has joined the channel [17:25] alex_b has joined the channel [17:25] wink_ has joined the channel [17:25] fermion has joined the channel [17:25] thomblake has joined the channel [17:25] davidsklar has joined the channel [17:25] dransfim has joined the channel [17:25] sirkitree has joined the channel [17:25] ianward has joined the channel [17:25] jonasen has joined the channel [17:25] riven has joined the channel [17:25] highermath_away has joined the channel [17:25] unomi has joined the channel [17:25] ngs has joined the channel [17:25] indutny_ic has joined the channel [17:25] AaronMT has joined the channel [17:25] brolin has joined the channel [17:25] brianseeders has joined the channel [17:25] rgabo has joined the channel [17:25] nexxy has joined the channel [17:25] janne has joined the channel [17:25] slaskis has joined the channel [17:25] miccolis has joined the channel [17:25] pastak has joined the channel [17:25] Guest27158 has joined the channel [17:25] Silly_Wabbit has joined the channel [17:25] ErikC has joined the channel [17:25] cryptix has joined the channel [17:25] mehlah has joined the channel [17:25] tiagoa has joined the channel [17:25] Schmallon has joined the channel [17:25] cloudhead_ has joined the channel [17:25] rick_h_ has joined the channel [17:25] rputikar has joined the channel [17:25] Wizek has joined the channel [17:25] temp01 has joined the channel [17:25] SamuraiJack has joined the channel [17:25] jkridner has joined the channel [17:25] skohorn has joined the channel [17:25] Vertice has joined the channel [17:25] tlrobinson has joined the channel [17:25] eldar has joined the channel [17:25] MikeW has joined the channel [17:25] jelveh has joined the channel [17:25] markwubben has joined the channel [17:25] adelgado has joined the channel [17:25] asabil has joined the channel [17:25] stonebranch has joined the channel [17:25] Charuru has joined the channel [17:25] xsyn has joined the channel [17:25] lackac has joined the channel [17:25] robinhoode has joined the channel [17:25] urlofmay has joined the channel [17:25] minaguib has joined the channel [17:25] sriley has joined the channel [17:25] truedat101 has joined the channel [17:25] zpao has joined the channel [17:25] adrianmg has joined the channel [17:25] cpolis has joined the channel [17:25] aliem has joined the channel [17:25] msucan has joined the channel [17:25] dipser has joined the channel [17:25] Druide_ has joined the channel [17:25] matjas has joined the channel [17:25] djcoin has joined the channel [17:25] qFox has joined the channel [17:25] mAritz has joined the channel [17:25] cnu has joined the channel [17:25] carsonm has joined the channel [17:25] brimster has joined the channel [17:25] btipling has joined the channel [17:25] steffkes has joined the channel [17:25] CIA-104 has joined the channel [17:25] Bonuspunkt has joined the channel [17:25] coreb1 has joined the channel [17:25] swaj has joined the channel [17:25] levi501d has joined the channel [17:25] sugardave has joined the channel [17:25] liar has joined the channel [17:25] Wa has joined the channel [17:25] jmoyers has joined the channel [17:25] boaz has joined the channel [17:25] tmm1 has joined the channel [17:25] mikegerwitz has joined the channel [17:25] phiggins has joined the channel [17:25] Aikar has joined the channel [17:25] sugyan has joined the channel [17:25] voodootikigod has joined the channel [17:25] rednul has joined the channel [17:25] framlin has joined the channel [17:25] ChrisBuchholz has joined the channel [17:25] qbyt has joined the channel [17:25] stride has joined the channel [17:25] KrooniX has joined the channel [17:25] maru_cc has joined the channel [17:25] AndyDawson has joined the channel [17:25] giby has joined the channel [17:25] chjj has joined the channel [17:25] Shrink has joined the channel [17:25] antoinevg has joined the channel [17:25] dnuke has joined the channel [17:25] xSmurf has joined the channel [17:25] criswell has joined the channel [17:25] addisonj has joined the channel [17:25] russell_h has joined the channel [17:25] mlangenberg has joined the channel [17:25] ivan_ has joined the channel [17:25] Martz has joined the channel [17:25] mavin has joined the channel [17:25] pzich has joined the channel [17:25] jemeshsu has joined the channel [17:25] jacobolus has joined the channel [17:25] JakeSays has joined the channel [17:25] brainproxy has joined the channel [17:25] Tobsn has joined the channel [17:25] igl has joined the channel [17:25] matt_c has joined the channel [17:25] antti_s has joined the channel [17:25] shajith has joined the channel [17:25] bwinton has joined the channel [17:25] stephanepayrard_ has joined the channel [17:25] sdboyer has joined the channel [17:25] JianMeng has joined the channel [17:25] dcelix has joined the channel [17:25] gf3 has joined the channel [17:25] wilhelm has joined the channel [17:25] ion_ has joined the channel [17:25] Pathin has joined the channel [17:25] devaholic has joined the channel [17:25] zemm has joined the channel [17:25] AntelopeSalad has joined the channel [17:25] josephboyle has joined the channel [17:25] killfill has joined the channel [17:25] mjr_ has joined the channel [17:25] prettyrobots has joined the channel [17:25] brianloveswords has joined the channel [17:25] mscdex has joined the channel [17:25] sgimeno has joined the channel [17:25] nibbo has joined the channel [17:25] sivy has joined the channel [17:25] Virtuo has joined the channel [17:25] Guest55991 has joined the channel [17:25] pt_tr has joined the channel [17:25] teddy^ has joined the channel [17:25] hdon has joined the channel [17:25] mischief has joined the channel [17:25] easternbloc has joined the channel [17:25] Nomon has joined the channel [17:25] dantalizing_ has joined the channel [17:25] _ralph has joined the channel [17:25] johnnywengluu has joined the channel [17:25] matthijs has joined the channel [17:25] Knio has joined the channel [17:25] DTrejoAFKarchive has joined the channel [17:25] brianleroux has joined the channel [17:25] TheDeveloper has joined the channel [17:25] miloshadzic has joined the channel [17:25] whoops has joined the channel [17:25] bengl has joined the channel [17:25] CiRlE_ has joined the channel [17:25] ckknight has joined the channel [17:25] zcopley has joined the channel [17:25] beppu has joined the channel [17:25] AAA_awright has joined the channel [17:25] steffan has joined the channel [17:25] er1c_ has joined the channel [17:25] context has joined the channel [17:25] AdmGre has joined the channel [17:25] stagas has joined the channel [17:25] htoothrot has joined the channel [17:25] iFire has joined the channel [17:25] heavysixer has joined the channel [17:25] ByteCrunch has joined the channel [17:25] alek_br_ has joined the channel [17:25] pekim has joined the channel [17:25] raynos has joined the channel [17:25] segaway has joined the channel [17:25] azeroth_ has joined the channel [17:25] Nican_ has joined the channel [17:25] ptlo has joined the channel [17:25] mlins has joined the channel [17:25] bartt has joined the channel [17:25] spetrea has joined the channel [17:25] joshthecoder has joined the channel [17:25] sirdancealot has joined the channel [17:25] joshontheweb has joined the channel [17:25] migimunz has joined the channel [17:25] namelessnotion has joined the channel [17:25] gwoo has joined the channel [17:25] mintbridge has joined the channel [17:25] halfhalo has joined the channel [17:25] McMAGIC--Copy has joined the channel [17:25] apoc has joined the channel [17:25] bentkus has joined the channel [17:25] zmbmartin has joined the channel [17:25] wibblymat has joined the channel [17:25] tswicegood has joined the channel [17:25] pradeepto has joined the channel [17:25] rworth has joined the channel [17:25] mnemonic has joined the channel [17:25] pig_ has joined the channel [17:25] Treffynnon has joined the channel [17:25] Sami_ZzZ has joined the channel [17:25] tobmaster has joined the channel [17:25] SebastianFlyte has joined the channel [17:25] Lorentz has joined the channel [17:25] yokoe has joined the channel [17:25] ben_alman has joined the channel [17:25] actonapp has joined the channel [17:25] RushPL has joined the channel [17:25] alindeman has joined the channel [17:25] Draggor has joined the channel [17:25] dhasenan_ has joined the channel [17:25] jimt has joined the channel [17:25] jbergstroem has joined the channel [17:25] stisti has joined the channel [17:25] rphillips has joined the channel [17:25] raidfive has joined the channel [17:25] TroyMG has joined the channel [17:25] wonginator1221 has joined the channel [17:25] nuba has joined the channel [17:25] duncanbeevers has joined the channel [17:25] mif86 has joined the channel [17:25] jzacsh has joined the channel [17:25] Twelve-60 has joined the channel [17:25] tg has joined the channel [17:25] naneau has joined the channel [17:25] jdub has joined the channel [17:25] up_the_irons has joined the channel [17:25] Zarathust has joined the channel [17:25] hackeron has joined the channel [17:25] meso has joined the channel [17:25] alek_br has joined the channel [17:25] orospakr has joined the channel [17:25] jan____ has joined the channel [17:25] m3nt0r^aw has joined the channel [17:25] dans has joined the channel [17:25] SuMarDi has joined the channel [17:25] Minos has joined the channel [17:25] petermanser_ has joined the channel [17:25] Leonidas has joined the channel [17:25] telemachus has joined the channel [17:25] meatmanek has joined the channel [17:25] peol has joined the channel [17:25] caligula__ has joined the channel [17:25] nphase has joined the channel [17:25] messju has joined the channel [17:25] __main__ has joined the channel [17:25] Viper-7 has joined the channel [17:25] drudge has joined the channel [17:25] crodas has joined the channel [17:25] thoolihan has joined the channel [17:25] GriffenJBS has joined the channel [17:25] cm has joined the channel [17:25] slicky has joined the channel [17:25] __class__ has joined the channel [17:25] frodenius has joined the channel [17:25] zined__ has joined the channel [17:25] alexim has joined the channel [17:25] walkah has joined the channel [17:25] chulo has joined the channel [17:25] spaceinvader has joined the channel [17:25] kbni has joined the channel [17:25] olegp has joined the channel [17:25] sioked has joined the channel [17:25] taf2 has joined the channel [17:25] andyl has joined the channel [17:25] dpritchett has joined the channel [17:25] pquerna has joined the channel [17:25] jesusabdullah has joined the channel [17:25] Utkarsh has joined the channel [17:25] SvenDowideit has joined the channel [17:25] dnyy has joined the channel [17:25] lukstr has joined the channel [17:25] Jalava has joined the channel [17:25] stalled has joined the channel [17:25] keikubo has joined the channel [17:25] robhudson has joined the channel [17:25] flazz has joined the channel [17:25] else- has joined the channel [17:25] doki_pen has joined the channel [17:25] tanepiper has joined the channel [17:25] Guest74518 has joined the channel [17:25] lmorchard has joined the channel [17:25] mape has joined the channel [17:25] cincinnatus has joined the channel [17:25] gaving has joined the channel [17:25] DoNaLd` has joined the channel [17:25] monokrome has joined the channel [17:25] jhford has joined the channel [17:25] mikey_p has joined the channel [17:25] dabailey has joined the channel [17:25] catch has joined the channel [17:25] adnam has joined the channel [17:25] hoax__ has joined the channel [17:25] coffeecup has joined the channel [17:25] ivan has joined the channel [17:25] rbranson has joined the channel [17:25] ddollar has joined the channel [17:25] guybrush has joined the channel [17:25] ralphholzmann has joined the channel [17:25] cce has joined the channel [17:25] Ls_Away has joined the channel [17:25] wica has joined the channel [17:25] Garo_ has joined the channel [17:25] clee has joined the channel [17:25] jspiros has joined the channel [17:25] v8bot has joined the channel [17:25] dhasenan has joined the channel [17:25] PhilK has joined the channel [17:25] kawaz_home has joined the channel [17:25] kawaz has joined the channel [17:25] jeff_horton has joined the channel [17:25] marlun has joined the channel [17:25] lstoll has joined the channel [17:25] keeto has joined the channel [17:25] mattijs has joined the channel [17:25] neurone-1337 has joined the channel [17:25] cerisier has joined the channel [17:25] onar has joined the channel [17:25] mamund has joined the channel [17:25] Guest62417 has joined the channel [17:25] azend has joined the channel [17:25] heino_ has joined the channel [17:25] grncdr has joined the channel [17:25] Overv has joined the channel [17:25] Kami_ has joined the channel [17:25] Ned_ has joined the channel [17:25] lemon-tree has joined the channel [17:25] kaarlo has joined the channel [17:25] hipe has joined the channel [17:25] yenz has joined the channel [17:25] gdusbabek has joined the channel [17:25] ryan[WIN] has joined the channel [17:25] ec|detached has joined the channel [17:25] incon has joined the channel [17:25] swhit has joined the channel [17:25] Tobias| has joined the channel [17:25] dotcomstu has joined the channel [17:25] tjgillies has joined the channel [17:25] drogoh has joined the channel [17:25] madari has joined the channel [17:25] jfalvarez has joined the channel [17:25] throughnothing has joined the channel [17:25] mateu has joined the channel [17:25] sstephenson has joined the channel [17:25] mrkurt has joined the channel [17:25] mmso has joined the channel [17:25] s0enke has joined the channel [17:25] robotblake has joined the channel [17:25] Zelest has joined the channel [17:25] nail_ has joined the channel [17:25] steevel has joined the channel [17:25] Ezku\ has joined the channel [17:25] jakob` has joined the channel [17:25] ichilton has joined the channel [17:25] wano has joined the channel [17:25] augustl has joined the channel [17:25] systemfault has joined the channel [17:25] sgentle has joined the channel [17:25] wereHamster has joined the channel [17:25] EvanCarroll has joined the channel [17:25] tomaw has joined the channel [17:25] Will| has joined the channel [17:25] zhware has joined the channel [17:25] joshbaptiste has joined the channel [17:25] hide has joined the channel [17:25] Ian_Corne has joined the channel [17:25] webben has joined the channel [17:25] Pilate has joined the channel [17:25] marcab has joined the channel [17:25] skyler_brungardt has joined the channel [17:25] eventualbuddha has joined the channel [17:25] matti has joined the channel [17:25] pkrumins has joined the channel [17:25] vuliev has joined the channel [17:25] stbuehler has joined the channel [17:25] pandark_ has joined the channel [17:25] foobarfighter has joined the channel [17:25] Greyscale has joined the channel [17:25] jwm has joined the channel [17:25] chunhao has joined the channel [17:25] hal1on has joined the channel [17:25] davidban1am has joined the channel [17:25] mihar has joined the channel [17:25] geoffeg_ has joined the channel [17:25] jegade has joined the channel [17:25] Gruni has joined the channel [17:25] barodeur has joined the channel [17:25] wang has joined the channel [17:25] badboy_ has joined the channel [17:25] polyrhythmic has joined the channel [17:25] BHSPitRemote has joined the channel [17:25] md80 has joined the channel [17:25] persson has joined the channel [17:25] SubStack has joined the channel [17:25] ekes has joined the channel [17:25] chapel has joined the channel [17:25] jperras has joined the channel [17:25] jakeskik has joined the channel [17:25] inarru has joined the channel [17:25] jeedey has joined the channel [17:25] zmack has joined the channel [17:25] chrisdickinson has joined the channel [17:25] benatkin has joined the channel [17:25] zedas has joined the channel [17:25] lmatos has joined the channel [17:25] rudolfrck has joined the channel [17:25] nicobn has joined the channel [17:25] pdonald has joined the channel [17:25] tbranyen has joined the channel [17:25] [tm] has joined the channel [17:25] doffm has joined the channel [17:25] keyvan has joined the channel [17:25] mike27 has joined the channel [17:25] PrgmrBill has joined the channel [17:25] slpsys has joined the channel [17:25] Astro has joined the channel [17:25] micahjohnston has joined the channel [17:25] joeshaw has joined the channel [17:25] rudebwoy has joined the channel [17:25] sth has joined the channel [17:25] kkaefer has joined the channel [17:25] wao has joined the channel [17:25] Slashbunny has joined the channel [17:25] tolaine has joined the channel [17:25] mediacoder has joined the channel [17:25] mileswu has joined the channel [17:25] ysynopsis has joined the channel [17:25] mnbvasd has joined the channel [17:25] gaYak has joined the channel [17:25] shachaf has joined the channel [17:25] zum has joined the channel [17:25] Roelven has joined the channel [17:25] franck34 has joined the channel [17:25] termie has joined the channel [17:25] konobi has joined the channel [17:25] ollie has joined the channel [17:25] meder has joined the channel [17:25] zorzar has joined the channel [17:25] chrischris has joined the channel [17:25] _sri has joined the channel [17:25] ctime has joined the channel [17:25] roger_raymond has joined the channel [17:25] Gelegrodan has joined the channel [17:25] mysterion` has joined the channel [17:25] ajpiano has joined the channel [17:25] Connorhd has joined the channel [17:25] Prometheus has joined the channel [17:25] hucker has joined the channel [17:25] gbot2 has joined the channel [17:25] deebo has joined the channel [17:25] niclone has joined the channel [17:25] aakour has joined the channel [17:25] daed has joined the channel [17:25] Atmoz has joined the channel [17:25] kei has joined the channel [17:25] zed0 has joined the channel [17:25] DJBouche has joined the channel [17:25] adelcambre has joined the channel [17:25] stylus has joined the channel [17:25] dispalt has joined the channel [17:25] darklajid has joined the channel [17:25] morgabra has joined the channel [17:25] Sembiance has joined the channel [17:25] thermal has joined the channel [17:25] FMJaggy has joined the channel [17:25] inimino has joined the channel [17:25] thedjinn has joined the channel [17:25] steadicat has joined the channel [17:25] MaSch has joined the channel [17:25] stutter has joined the channel [17:25] kloeri has joined the channel [17:25] raz has joined the channel [17:25] blkcat has joined the channel [17:25] optixx has joined the channel [17:25] ivaldi has joined the channel [17:25] auscompgeek has joined the channel [17:25] mrkurt_ has joined the channel [17:25] sstephenson has joined the channel [17:25] chulo has joined the channel [17:26] caseywstark has joined the channel [17:28] ako has joined the channel [17:29] mraleph has joined the channel [17:30] jdalton has left the channel [17:31] isaacs: bradleymeck_lunc: because I haven't gotten around to https://github.com/isaacs/npm/issues/914 yet [17:31] tjholowaychuk: bradleymeck_lunc https://github.com/visionmedia/express/commit/6e69c880d956ee5713265f2d28206a6d66c4202e [17:32] rfay has joined the channel [17:33] Wizek: Which's the best unittesting module for Node? [17:33] hybsch has joined the channel [17:33] tjholowaychuk: Wizek really depends what you are testing [17:33] eguest309 has left the channel [17:34] harth has joined the channel [17:35] Wizek: tjholowaychuk, I've read some articles about TDD, it seems nice, would like to try it out, and thinking on where to start with node. [17:36] lukstr: TDD is lots of un [17:36] postwait: ryah: can you assign ownership of npm amqp to me? (postwait) [17:36] lukstr: f-un, even [17:36] ryah: postwait: how do i do that? [17:36] tjholowaychuk: Wizek well it depends if you are testing an app, library, etc [17:36] tjholowaychuk: different tools will work better depending on your situation [17:36] jerrysv: duncanbeevers: ping [17:36] pigmej has left the channel [17:36] lukstr: postwait: I assume you mean isaacs ? [17:37] postwait: lukstr: no [17:37] lakin has joined the channel [17:37] ryah: postwait: i just asked isaacs - you seem to be an owner now [17:38] postwait: sweet [17:38] davidwalsh has joined the channel [17:38] Wizek: tjholowaychuk, It's a server app. [17:39] tjholowaychuk: Wizek you might want to look into soda/selenium for acceptance tests [17:39] postwait: ryah: yup. great. published. [17:39] quijote has joined the channel [17:40] liar has joined the channel [17:40] ryah: postwait: sweet [17:40] ryah: updated amqp :) [17:41] _jdalton has joined the channel [17:44] davidwalsh has joined the channel [17:44] pt_tr has joined the channel [17:44] trumpetmic has joined the channel [17:45] Corren: ryah: do you have a recommendation on how to keep a node instance running? monit/etc [17:46] baudehlo: Corren: http://www.reddit.com/r/node/comments/hjopx/should_i_use_screen_to_keep_my_node_process/ [17:46] Corren: ty [17:46] Corren: looking [17:46] mahna_: Corren: Also http://dailyjs.com/2011/03/07/node-deployment/ [17:46] baudehlo: I use runit. But some people hate it. [17:46] liar has joined the channel [17:47] hosh_work has joined the channel [17:47] lluad: http://howtonode.org/deploying-node-upstart-monit too [17:47] sveimac has joined the channel [17:47] itissid has joined the channel [17:47] itissid: Hey is this the place to ask questions about express? [17:48] tjholowaychuk: itissid what's up? [17:48] Corren: i was reading that article: http://howtonode.org/deploying-node-upstart-monit [17:48] itissid: well I want to render basic HTML not jade templates [17:48] itissid: i used app.register('.html', require('jade')); [17:48] Corren: and 10 seconds (which the article uses) to detect a crash seems kind of high [17:48] itissid: I mean just .html files [17:48] Corren: obviously it's editiable, but I wonder why you can't have something auto-restart on exit, rather than via polling [17:49] tjholowaychuk: itissid that would register .html to use jade as a template engine [17:49] Swizec has joined the channel [17:49] tjholowaychuk: which doesnt make sense :p [17:49] itissid: yeah [17:49] tjholowaychuk: html is not a template engine [17:49] itissid: I mean what do i have to do to get the HTML to be rendered as is [17:49] tjholowaychuk: do you mean you want something like ejs?

<%= title %>

? [17:49] itissid: NO just old plain HTML [17:49] tjholowaychuk: ok well use the static() middleware to serve static files or res.sendfile() [17:49] tjholowaychuk: though you wont be needing node if you are serving static html lol [17:50] tjholowaychuk: but yeah avoiding the view system for that is ideal [17:51] baudehlo: Corren: that's what runit does (restart on exit) [17:51] DelvarWorld has joined the channel [17:51] itissid: let me see [17:51] Corren: it does? [17:51] Corren: looking ty [17:51] baudehlo: yes. Runit is basically an open source version of daemontools. [17:51] baudehlo: but slightly more modern [17:51] deedubs has joined the channel [17:51] reid has joined the channel [17:51] Corren: rgr [17:52] baudehlo: we use daemontools at $work, so it makes me familiar with the runit model of things. [17:52] _jdalton has left the channel [17:52] baudehlo: plus I like the fact that it comes with log tools that auto-rotate logs. [17:52] `3rdEden has joined the channel [17:52] Corren: nice [17:53] Corren: we're hoping to release a friends & family release next week, and making my node servers robust is a concern ;_) [17:54] quijote has joined the channel [17:54] ExsysTech has joined the channel [17:54] mAritz: tjholowaychuk: is it intended that connects bodyParser silently fails/hangs if there is no body in the request? [17:54] nook has joined the channel [17:54] sjbreen_ has joined the channel [17:54] tjholowaychuk: mAritz: nope [17:54] mAritz: (i'm not trying to be an ass, though that sounded like it, sorry. :D ) [17:55] mAritz: tjholowaychuk: okay, because i think that's what's happening to me right now :) [17:55] tjholowaychuk: probably just an edge case since it's pretty rare to POST without a body etc [17:55] Wizek: tjholowaychuk, Will try... Do you use these? [17:55] btipling has joined the channel [17:55] tjholowaychuk: Wizek which? [17:55] tjholowaychuk: sorry i forgot [17:55] tjholowaychuk: what were talking about [17:55] baudehlo: Corren: the one thing I wish runit could automate is some sort of alerting/emailing on process crash [17:56] Corren: so does using runit require moving off of init.d ? [17:56] Corren: or can they co-exist? [17:56] Wizek: tjholowaychuk, soda/selenium [17:56] tjholowaychuk: ohh [17:56] tjholowaychuk: yeah we do [17:56] baudehlo: Corren: they can co-exist, but debian does bad stuff if you install it. [17:56] baudehlo: via apt-get anyway [17:56] rphillips has joined the channel [17:56] Corren: debian or ubuntu or both [17:56] mAritz: tjholowaychuk: i would agree, however it appears that once such a request hangs, all other requests to the same url (even simple gets that shouldn't go through the bodyparser) will not be processed. [17:57] baudehlo: no idea about ubuntu. Who uses ubuntu on servers? [17:57] Corren: ACTION does [17:57] ayo has joined the channel [17:57] tjholowaychuk: mAritz: yeah definitely not ideal [17:57] tjholowaychuk: one sec [17:57] Corren: don't a lot of ppl? [17:57] baudehlo: *shrug* I'm just joshing. [17:57] baudehlo: I'd install it manually though. [17:58] baudehlo: it will then nicely co-exist with init.d [17:58] lukstr: startup? [17:58] lukstr: er [17:58] baudehlo: debian expects if you install runit, you're going to convert all your init.d stuff to runit scripts. [17:58] baudehlo: which is annoying. [17:58] lukstr: upstart [17:58] Wizek: tjholowaychuk, And would you say that you build according to TDD process? Or something else? [17:58] baudehlo: I'm sure there's a way around that. [17:59] cloudhead has joined the channel [17:59] superjudge has joined the channel [17:59] Mrfloyd has joined the channel [17:59] lluad: Ubuntu lts on servers is pretty common amongst my customers. More than even RHEL. [17:59] tjholowaychuk: Wizek im not religious about it, but yeah i write tests for everything i write [17:59] tjholowaychuk: usually not much for web apps though [17:59] tjholowaychuk: kinda overrated IMO [17:59] cloudhead_ has joined the channel [17:59] mAritz: tjholowaychuk: hmm.. just looked at the tests. there is a "test POST with no data". but i guess that doesn't cover the case where a GET requests is sent with Content-Type:application/json and no body. :D [17:59] jerrysv: we're still running centos here, but run ubuntu personally [17:59] tjholowaychuk: if all my supporting libraries are well tested then im happy [18:00] tjholowaychuk: mAritz: oh, well... dont have a GET with content-type and no body lol [18:00] tjholowaychuk: that doesnt make sense [18:00] tjholowaychuk: is it backbone again? [18:00] jlecker has joined the channel [18:00] mAritz: yeah, it is. :D [18:01] tjholowaychuk: hahaha [18:01] tjholowaychuk: knew it [18:01] mAritz: tjholowaychuk: okay, the "other requests with the same domain" thing appears to be only in other tabs of the same browser. [18:01] tjholowaychuk: he was supposed to fix that bug [18:01] mAritz: in that case, just ignore me :) [18:01] mAritz: yeah, i'm going to tell him :D [18:01] tjholowaychuk: he was just naively setting the content type at all times from what i remember [18:01] tjholowaychuk: went through this on the ML [18:02] tjholowaychuk: mAritz maybe he just didnt release yet [18:02] mAritz: yep, that's exactly what's happening [18:03] mcluskydodallas has joined the channel [18:03] mattly has joined the channel [18:03] Corren: upstart doesn't restart on exit though does it? [18:03] c4milo: Corren: what do you mean? [18:04] mAritz: one problem though: one could use this to make express servers have a lot of req.on('data') listeners hanging. aka, ddos with increased cpu/memory consumption [18:04] Corren: I think I'm confused ;) reading about upstart [18:05] tjholowaychuk: mAritz yeah I can easily ignore GET/HEAD [18:05] davidcoallier has joined the channel [18:05] mAritz: yep :) [18:05] baudehlo: Corren: seems it can: http://upstart.ubuntu.com/cookbook/#respawn [18:05] Corren: lol that's exactly what I'm looking at righ tnow [18:05] dingomanatee has joined the channel [18:05] pifantastic has joined the channel [18:05] baudehlo: why the hell is that whole cookbook on one page. [18:06] `3rdEden: so you can search the whole cookbook [18:06] `3rdEden: ;D [18:06] addisonj: hrm... seem to be having trouble with connect-form and express, anyone have a good working example? currently using req.form.complete, but that doesn't seem to fire... [18:06] baudehlo: an option for it is fine. Like the "all.html" page for node. [18:07] baudehlo: but jeez, make the default a multi-page load. [18:07] tjholowaychuk: addisonj the express repo has an example [18:07] mAritz: tjholowaychuk: do you want me to create a github issue about this? [18:07] tjholowaychuk: mAritz nah im on it [18:07] mAritz: cool, thanks :) [18:07] multipass has joined the channel [18:08] tjholowaychuk: a GET with content-type does not hang for me though [18:08] addisonj: tjholowaychuk, yeah, thats what I based it off of, but i get a timeout, i am only uploading like 800 bytes, [18:08] kmwallio has joined the channel [18:08] multipass: fostah: node.chipotle [18:08] tjholowaychuk: addisonj weird not sure, might be a formidable issue [18:08] fille12 has joined the channel [18:08] tjholowaychuk: connect-form is just a wrapper [18:08] fille12: hallo ! [18:09] fille12: got a question about the express.js example [18:09] tjholowaychuk: which one? [18:09] fille12: where express.static is defined [18:10] tjholowaychuk: mAritz https://github.com/senchalabs/connect/commit/c87a768fb5ce5b05993be09bf3b6bd2ba9cb35e1 [18:10] tjholowaychuk: fille12 connect [18:10] tjholowaychuk: senchalabs/connect on github [18:10] davidcoallier has joined the channel [18:10] mAritz: well, that has a body... an empty one, but it's a body. :D [18:10] dingomanatee: pyrotechnick: in the house? [18:11] tjholowaychuk: mAritz depends on what assert.response is doign haha, been a while since i looked at it [18:11] thomblake1 has joined the channel [18:11] keeth has joined the channel [18:11] mAritz: https://gist.github.com/993681 [18:11] fille12: app.use(express. etc [18:11] mAritz: these are the headers that cause the failing for me [18:12] mAritz: (and no body whatsoever according to chrome dev tool) [18:13] tjholowaychuk: hmm assert.response shouldn't be writing a body either [18:13] tjholowaychuk: i'll try with telnet [18:14] ruquay` has joined the channel [18:14] fille12: no one here that can help med with it? [18:14] brettgoulder has joined the channel [18:14] tjholowaychuk: fille12 it's defined in connect [18:15] fille12: aaa okej [18:15] sechrist has joined the channel [18:15] fille12: i need to get it ? [18:15] fille12: ohh [18:15] fille12: thanks ! [18:15] eddanger has joined the channel [18:16] tjholowaychuk: fille12 well no express.static should access it [18:16] tjholowaychuk: but the code itself is in connect [18:16] fille12: witch one is stable? [18:17] fille12: right now i just following the examples [18:17] fille12: :D [18:17] tjholowaychuk: express is built on top of connect [18:17] Corren: baudehlo: the problem with upstart is you have to switch to it completely [18:17] fille12: so how can i miss connect [18:17] tjholowaychuk: mAritz https://gist.github.com/993694 [18:17] tjholowaychuk: seems fine to me [18:17] ruquay` has joined the channel [18:17] sveimac has joined the channel [18:17] mAritz: weird [18:18] mAritz: :( [18:18] addisonj: am i going somewhere wrong with this using connect-form https://gist.github.com/993686 [18:18] tjholowaychuk: subsequent requests are fine as well [18:18] fille12: so what do i need to do [18:18] fille12: download connect? [18:19] c4milo: does anyone know how could I connect to a socket.io server from Java? [18:19] tjholowaychuk: fille12 no lol it's a dependency of express [18:19] tjholowaychuk: if you installed express [18:19] tjholowaychuk: then it has connect [18:19] Opaque has joined the channel [18:20] fille12: yes. i understand but what do i need to require [18:20] fille12: :( [18:20] tobiassjosten has joined the channel [18:20] jaw6 has joined the channel [18:21] ruquay` has joined the channel [18:22] rictic has joined the channel [18:22] zmbmartin: anyone know of an up to date ubuntu lucid 10.04 ppa for nodejs or is building by hand the best? [18:22] langworthy has joined the channel [18:23] SubStack: zmbmartin: compile it [18:23] KirinDave has joined the channel [18:23] SubStack: node moves too quickly right now to rely on distro package managers [18:23] c4milo: zmbmartin: it's pretty straightforward [18:23] mikeal has joined the channel [18:24] pifantastic_ has joined the channel [18:26] brettgoulder has joined the channel [18:27] zmbmartin: ok thanks guys [18:27] fille12: hrm im dumb :( [18:27] `3rdEden: printscreen, preserved for future trolling [18:28] hellp has joined the channel [18:29] fille12: express is not defined [18:29] dies_el has joined the channel [18:29] tjholowaychuk: fille12 require('express') [18:30] nexxy: `3rdEden, no trolling. [18:30] admc has joined the channel [18:30] nexxy: ACTION revokes `3rdEden's trolling license [18:31] benmonty has joined the channel [18:31] brownies has joined the channel [18:31] fille12: i got it working [18:32] `3rdEden: awww :3 I still got print screen of tj coding in coffeescript [18:32] fille12: app.use(express.methodOverride()); [18:32] fille12: complaing on this line [18:32] FireFly|n900 has joined the channel [18:32] `3rdEden: Willing to abuse that screenshot if my licence is revoked nexxy [18:32] nexxy: which screenshot? ;o [18:34] `3rdEden: http://dl.dropbox.com/u/1381492/shots/tjcoffeescript.png nexxy :3 [18:34] fille12: omg [18:34] nexxy: lolcoffeescript [18:34] fille12: so first var express = require ('express'); [18:34] `3rdEden: I should soo post that in the rails coffeescript commit ;) [18:34] fille12: then [18:35] tjholowaychuk: haha [18:35] fille12: app = require('express').createServer() [18:35] fille12: u need to update the docs [18:35] MrTopf has joined the channel [18:35] tjholowaychuk: ohhh ruby ppl [18:35] fille12: ohh chaining .. [18:35] tjholowaychuk: fille12 the docs are not a node guide [18:35] tjholowaychuk: you have to know node basics first [18:36] tjholowaychuk: i dont want to explain everything in there [18:36] piscisaureus has joined the channel [18:36] tdegrunt has joined the channel [18:36] fille12: true true, [18:36] fille12: im the first that asked? [18:37] stephank has joined the channel [18:37] pandeiro: tjholowaychuk: the docs are good but you could add the tidbit about session needing to come before router in the config that i asked about yesterday :) [18:37] tjholowaychuk: pandeiro i thought i did [18:37] tjholowaychuk: ill have a look [18:37] tjholowaychuk: it's common sense if you know what app.router is [18:37] tjholowaychuk: but most people just seem to plop it in [18:37] tjholowaychuk: without knowing what it is [18:37] fille12: and add the line var = require('express'); [18:37] col3 has joined the channel [18:37] halfhalo: plop [18:37] sorens3n has joined the channel [18:37] col3: has anyone installed node.js on media temple grid server? [18:38] tjholowaychuk: fille12 http://expressjs.com/guide.html#creating-a server [18:38] tjholowaychuk: that's already there [18:38] tjholowaychuk: woah space lol [18:38] catshirt has joined the channel [18:38] tjholowaychuk: it's not my fault if you didnt look past the home page :p [18:38] pandeiro: because the example you give actually doesnt use the same config block style that's the default [18:38] fille12: lno its not [18:38] pandeiro: (yes it makes sense about the router but only after you explained it) [18:38] tjholowaychuk: pandeiro you dont have to use configure() [18:38] tjholowaychuk: only if you actually separate envs [18:39] fille12: the require('express').createServer() is there [18:39] digilink has joined the channel [18:39] tilgovi has joined the channel [18:39] fille12: not require('express') [18:39] pandeiro: just sayin, since many of us noobs will be working from the default template... [18:39] darshanshankar has joined the channel [18:39] tjholowaychuk: fille12 that's implied if you want to access methods.. [18:39] tjholowaychuk: you have to learn node a bit first my friend [18:39] toadflax has joined the channel [18:39] fille12: i dident [18:39] col3: has anyone installed node.js on a media temple grid server? [18:39] addisonj: what I have noticed with tj's projects, what you need to really know is in the docs, but you must read carefully and completely :) [18:39] fille12: i followed your guide step by step [18:39] rphillips has joined the channel [18:40] fille12: and i got error with express undfiend [18:40] tjholowaychuk: addisonj as you would with anything really [18:40] pandeiro: addisonj: and maybe abstain from any drug use for several years prior [18:40] fille12: then i included the require('express') [18:40] fille12: and it worked [18:40] addisonj: fille12, if you use express to generate a scaffold, all those little details are taken care off, i might reccomend that route [18:40] nexxy: lol [18:40] tauren has joined the channel [18:40] tjholowaychuk: yeah, i can't explain the uber basics of node [18:40] nexxy: addisonj, docs? what docs? [18:40] tjholowaychuk: that's not related [18:40] nexxy: ;x [18:41] nexxy: tj doesn't document [18:41] tahu has joined the channel [18:41] aliem has joined the channel [18:41] tjholowaychuk: haha i'll show you document [18:41] fille12: well the socket.io docs is not that good but the could add the line io = require('socket.io') [18:41] sechrist: tjholowaychuk: when is .7 coming out?!?1/?!1!!11one [18:42] tjholowaychuk: sechrist dunno i have nothing to do with that haha [18:42] nexxy: sechrist, you forgot the ~ [18:42] sechrist: yep [18:42] sechrist: damn [18:42] sechrist: rauchg: .7? [18:42] `3rdEden: sechrist poke rauchg [18:42] rauchg: oh [18:42] rauchg: server's done :D [18:42] sechrist: !poke rauchg [18:42] `3rdEden: HA! [18:42] sechrist: :D! [18:42] mahna has joined the channel [18:42] rauchg: will work on the client tonight [18:42] sechrist: fuck yes [18:42] `3rdEden: So it's done tomorrow ;) [18:43] lukstr: isaacs: your race condition makes me jealous. I have a race condition that only appears in release builds due to compiler optimization. *sigh* other people's code... :( [18:43] isaacs: heh :) [18:43] isaacs: it was stupid easy to work around, too [18:44] isaacs: just gather up the cb's so that i don't try to fetch the same url or pkg@version more than once. [18:44] isaacs: and then call all the cb's when it's done [18:44] lukstr: yup [18:45] nexxy: dat aint true async [18:45] nexxy: dat aint keepin it real [18:45] rauchg: https://github.com/LearnBoost/Socket.IO-node/compare/c30a8edcc0...14c96c143c [18:45] rauchg: i added rooms :D [18:45] rauchg: socket.join('some room') [18:45] rauchg: socket.broadcast.to('some room').send('woot'); [18:45] rauchg: sockets.in('some room').emit('tobi'); [18:45] tuhoojabotti: pubnub! [18:45] tjholowaychuk: rauchg thems be a lot of tests! [18:46] markwubben has joined the channel [18:46] jacobolus has joined the channel [18:47] caolanm has joined the channel [18:47] zackattack has joined the channel [18:48] sveimac has joined the channel [18:48] FireFly|n900 has joined the channel [18:48] `3rdEden: but the question is.. rauchg does it scale? [18:48] `3rdEden: ;D [18:49] whobutsb has joined the channel [18:49] ardcore has joined the channel [18:49] whobutsb: Hello All [18:49] whobutsb: I was wondering if I could get some pointers [18:50] ardcore has left the channel [18:50] jerrysv: whobutsb: (unsigned char *) ? [18:50] dguttman has joined the channel [18:50] whobutsb: lol [18:50] whobutsb: I have a rather large dataset that I'm trying to insert in to a mongodb store and I wanted to practice my node [18:51] Cheery: whobutsb: okay [18:51] Cheery: I don't know much yet about node though. [18:52] whobutsb: here is the pastebin file [18:52] whobutsb: http://pastebin.com/zTdbxPdM [18:52] whobutsb: so whats happening is i'm opening the DB [18:52] whobutsb: authenticating [18:52] whobutsb: choose the collection [18:52] whobutsb: and then reading a CSV file [18:52] jbpros has joined the channel [18:53] bentruyman has joined the channel [18:53] col3: anyone in here successfully install node.js on a media temple grid server? [18:53] whobutsb: i'm taking the data and adding keys to the values [18:53] matyr has joined the channel [18:53] whobutsb: then its looping through the data and inserting the data in to the collection [18:53] whobutsb: the issue is nodejs can process the data a lot faster than mongodb can insert it [18:54] steffan has joined the channel [18:54] whobutsb: any way to have the loop 'wait' until the insert is finished? [18:54] whobutsb: i know its not really the node way of doing things, because the app should never wait on input/output [18:54] Cheery: I haven't seen anything like 'sleep' [18:56] Cheery: I had a question of my own, but I forgot it so badly. [18:58] baudehlo has joined the channel [18:58] Cheery: I'm annoyed from my shortened short-term memory. >:/ [18:58] ardcore has joined the channel [18:58] whobutsb: haha, well when you think of it i can try and answer [18:58] whobutsb: i'm also learning as well [18:59] insin has joined the channel [18:59] Cheery: It's not like I would forget anything coding related.. but while ago I was going to ask something likely hard stuff but forgot it entirely. [18:59] Cheery: well if it matters I will figure it out soon again. [18:59] mscdex: must've turned out to be something easy [19:00] mscdex: ;) [19:00] ardcore has left the channel [19:00] dgathright has joined the channel [19:00] matyr has joined the channel [19:00] Cheery: node + jsdom + jquery is quite cool combo. [19:01] jbpros has joined the channel [19:02] whobutsb: has anyone else tried using nodejs with mongodb? [19:02] Cheery: I have never used mongodb. [19:03] duncanbeevers: We used jsdom to move all of our old jsunit tests out of the browser. Not painless, but better than what we had before. [19:04] wink_: whobutsb: lots have [19:04] tmpvar: duncanbeevers, nice, I just did the same thing with jasmine [19:04] avalanche123 has joined the channel [19:04] tmpvar: i'd say the process was relatively painless [19:04] whobutsb: wink_: you have? [19:04] wink_: yes [19:04] tmpvar: jsdom.env, ftw! [19:04] whobutsb: wink_: care to give me some hints? [19:04] itissid: tjholowaychuk, So i am trying to set up my routing for CSS and JS etc with: app.get('/css/*'. function(req,res){ res.render( '/public/stylesheets/'+req.params[0]) }). BUt i still get the error "failed to locate view "/public/stylesheets/index.css" [19:05] wink_: whobutsb: i'd be glad to, what would you like hints on? :> [19:05] Cheery: NOW I REMEMBER. [19:05] whobutsb: wink_: here is teh file i'm working on http://pastebin.com/zTdbxPdM [19:05] itissid: I am using just static HTML no jade.. [19:05] Cheery: I were going to ask. how hard is it to delay the http connection such that I can continuously push stuff to the client through a connection? [19:05] itissid: with : app.use(express.static(__dirname + '/views')); [19:05] duncanbeevers: tmpvar: Nice. Good to hear other success stories. [19:06] jacobfogg has joined the channel [19:06] Cheery: scuh stuff that'd be extreemeely useful in doing games and such. [19:06] whobutsb: wink_: i'm trying to insert the csv rows in to mongodb [19:06] wink_: whobutsb: on the surface it looks ok, whats wrong with it? [19:06] whobutsb: in the loop .on('data', function().... [19:07] whobutsb: wink_: it cycles through the data faster than mongodb can insert [19:07] tjholowaychuk: itissid js and css are not templates lol... [19:07] tjholowaychuk: those are static files as well [19:07] strmpnk has joined the channel [19:07] whobutsb: wink_: towards the end it will throw and out of memory failure [19:08] wink_: ah, you're using mongodb-native right? [19:08] whobutsb: yeah i'am [19:08] quijote has joined the channel [19:08] catshirt has joined the channel [19:09] phil_ has joined the channel [19:09] itissid: tjholowaychuk, Oops..yeah sorry I must be drunk.. So how do I map js and CSS files to directories .. I dont wnat to expose my directory structure in my HTML... [19:09] eldar has joined the channel [19:09] duncanbeevers: Cheery: Take a look at Socket.io http://socket.io/ [19:09] ezl has joined the channel [19:09] brianmario has joined the channel [19:09] wink_: whobutsb: how big is your csv? [19:09] whobutsb: around 175mb [19:09] tjholowaychuk: itissid typically people do app.use(express.static(__dirname + '/public'); and GET /stylesheets/main.css etc [19:09] itissid: Ok so res.send works.. [19:10] wink_: yeah, mongodb-native will choke on any large amount of data [19:10] phil_: I'm having some trouble recovering from a Node exception, if anyone has a second. [19:10] wink_: i've got a binding i use, its not as complete feature wise as mongodb-native, but it'll sling large datasets all day [19:11] wink_: from what you're doing, you may want to give that a go, you're not using anything i havent implemented yet [19:11] Cheery: ookay.. I can use this and redis to make some games. :) [19:11] whobutsb: wink_: yeah i'd definitely give it a try [19:11] wink_: whobutsb: https://github.com/w1nk/node-mongodb [19:11] wink_: it's messy, but for your application should work far better. [19:12] whobutsb: wink_: any way to make the on('data') loop wait until the insert is finished before sending more data to the functino? [19:12] whobutsb: wink_: thank you! [19:13] wink_: whobutsb: there is a .drain() event you can listen for that should do what you want [19:13] whobutsb: the drain event on the mongo insert function? [19:13] wink_: pass username: '', password: '' into the connect call for authing [19:15] whobutsb: wink_: downloading now [19:15] wink_: it fires 'drained' on the connection when it has sent all the data to mongo [19:15] wink_: it could be extended to fire after each insert though if you wanted [19:16] eddanger has joined the channel [19:16] sandropadin has joined the channel [19:16] omni5cience has joined the channel [19:16] SuMarDi has joined the channel [19:17] whobutsb: wink_: quick question on your library [19:17] whobutsb: for your library do i just need to require your monogdb.js file into my script? Or do i need to also run the shell commands too? [19:18] sveimac has joined the channel [19:18] wink_: you need to compile it, follow the installation section in the readme [19:19] eddanger has left the channel [19:20] mnemonic has joined the channel [19:20] jmoyers has joined the channel [19:21] lackac has joined the channel [19:21] whobutsb: wink_: will do [19:21] wink_: just hit me up if you have any problems [19:22] avalanche123 has joined the channel [19:22] wink_: i'll help you between meetings ;> [19:24] brolin has joined the channel [19:25] whobutsb: wink_: the build failed when running node-waf configure build [19:25] whobutsb: wink_: Build failed: -> task failed (err #1): [19:25] whobutsb: {task: cxx_link Connection_1.o,MongoConnection_1.o,bson_1.o -> mongo.node} [19:25] sjbreen has joined the channel [19:25] wink_: whobutsb: run with node-waf -vvv configure build [19:25] wink_: and pastebin the output [19:25] whobutsb: wink_: thanks! [19:25] wink_: or gist or whatever [19:26] whobutsb: wink_: http://pastebin.com/9LiKdqD2 [19:27] context: mmm. do i want to go to WindyCityDB ? [19:27] spasquali: any node.js modules for VoltDB? [19:28] whobutsb: wink_: am i trying to build this in the wrong directory? [19:28] wink_: whobutsb: did you run the update-mongo-driver script? [19:28] http402 has joined the channel [19:28] whobutsb: i did i'll run it again [19:29] whobutsb: wink_: Current branch master is up to date. [19:29] whobutsb: ./update-mongo-c-driver.sh: 11: scons: not found [19:29] wink_: install scons ;> [19:30] whobutsb: what is scons? [19:30] podman has joined the channel [19:30] mertonium has joined the channel [19:30] wink_: yet another build system :< [19:30] whobutsb: ahhh [19:30] wink_: i just havent gotten around to unscrewing that [19:30] rphillip- has joined the channel [19:30] nilcolor has joined the channel [19:30] podman: hij1nx: around? [19:31] whobutsb: there we go [19:31] whobutsb: wink_: build successful! [19:31] wink_: sweet, you should be off and running then ;> [19:31] wink_: use the examples to reorg what you've got and it should just run [19:33] zmbmartin: what is the best way to send email with an express app? [19:34] addisonj: hrmm... curious, so I was having trouble with connect-form, it would just not complete, but then I took out an auth middleware and then it worked... [19:35] reid has joined the channel [19:35] addisonj: makes me wonder if I am losing my session or something funky [19:36] FireFly|n900 has joined the channel [19:37] nibblebo_ has joined the channel [19:38] piscisaureus has joined the channel [19:38] sechrist has joined the channel [19:38] eb4890 has joined the channel [19:39] whobutsb: wink_: i'm a bit naive but where in your project folder do you drop in the mongodb.js file? [19:39] NeCkEr has joined the channel [19:39] whobutsb: say i have index.js in the directory [19:39] whobutsb: can i drop mongodb.js right next to it? [19:39] wink_: whobutsb: no, leave it where it sits, just require it [19:40] aheckmann has joined the channel [19:41] NetRoY has joined the channel [19:41] whobutsb: wink_: i'm sorry for my naivety but i dropped your dir (mongodb) into the same folder as my index.js file [19:41] wink_: that works [19:41] whobutsb: and i'm requiring it by var mongodb = require('mongodb/lib/mongodb'); ? [19:42] wink_: should be [19:42] addisonj: why not npm? [19:43] whobutsb: addisonj: no npm installer file [19:43] wink_: should be, i've not had time to package it, since it's dependent on the mongo libs [19:43] context: whobutsb: you should be using npm. [19:43] whobutsb: context: i usually do [19:44] context: well.. we have no clue what 'mongodb.js' is :/ [19:44] wink_: context: hes asking me directly ;> [19:45] NetRoY has joined the channel [19:45] Casperin has joined the channel [19:46] whobutsb: wink_: can i show you an error im getting? [19:46] wink_: sure [19:46] eldios has joined the channel [19:46] xsyn has joined the channel [19:46] whobutsb: wink_: http://pastebin.com/g1BDMbd8 [19:46] wink_: put your code in there too [19:47] addisonj: whobutsb, paste line 134 as well [19:47] whobutsb: http://pastebin.com/4x84KbyX [19:48] NetRoY has joined the channel [19:48] tjholowaychuk has joined the channel [19:48] sveimac has joined the channel [19:49] tomaw_ has joined the channel [19:49] wink_: whobutsb: one sec [19:49] whobutsb: wink_: np [19:49] tjholowaychuk has joined the channel [19:50] NetRoY has joined the channel [19:51] digilink: hi any support here for npm? I believe it installed but its unable to fetch packages doing an "npm list" [19:51] wink_: whobutsb: im gonna msg you so we can not spam the chan ;> [19:51] isaacs: digilink: what version of npm you using? [19:51] isaacs: npm -v [19:51] digilink: 1.0.6 [19:51] Cheery: digilink: the depedency tree looks pretty cool :P [19:51] digilink: I installed using the script method as root [19:52] isaacs: digilink: great. [19:52] isaacs: digilink: ls isn't how you fetch packages. [19:52] dies_el has joined the channel [19:52] isaacs: digilink: you're looking for "search", perhaps? [19:52] evilhackerdude has joined the channel [19:52] greg_ has joined the channel [19:52] stisti has joined the channel [19:53] digilink: well I figured that portion out, and I installed express as an example using npm install express, however when I issue "node install express" I get several errors [19:53] addisonj: node doesn't install anything... what exactly are your trying to do [19:54] malkomalko: does querystring.stringify not properly handle a field with an array of objects? [19:54] digilink: lol... well honestly trying to learn how this all works, I'm a complete noob. I'm following a Linux Journal article (may 2011 for reference) [19:54] malkomalko: looks like it's returning empty strings [19:54] norviller has joined the channel [19:55] addisonj: digilink, may I recommend this as a good readup, its a long series on how to build a webapp http://dailyjs.com/2010/11/01/node-tutorial/ [19:56] addisonj: it goes from installation to a fully functional webapp [19:56] trumpetmic has joined the channel [19:56] digilink: ahh perfect... thank you! [19:56] digilink: I will definitely be reading this [19:56] addisonj: np [19:57] Xano has joined the channel [19:57] jakehow has joined the channel [19:57] addisonj: but just a quick note to clear up your confusion, npm is a package manager, node is the binary that actually runs your code [19:59] NetRoY has left the channel [20:00] keeth has joined the channel [20:00] malkomalko: anybody? :) [20:00] digilink: addisonj: thanks, how would one list out the available packages? If I issue npm list it comes back empty... [20:00] jstroem has joined the channel [20:01] mertonium has joined the channel [20:03] strmpnk has joined the channel [20:06] brownies has joined the channel [20:07] jackhq has joined the channel [20:08] jhurliman has joined the channel [20:11] davidcoallier has joined the channel [20:12] baudehlo_ has joined the channel [20:17] patcito has joined the channel [20:17] MichealBenedict has joined the channel [20:18] gozala has joined the channel [20:18] jaw6 has joined the channel [20:19] sveimac has joined the channel [20:19] baudehlo has left the channel [20:20] ryah: we seem to hover around 666 users. [20:21] baudehlo has joined the channel [20:21] `3rdEden: ryah I guess its time to take over the world, now that we have 666 users [20:22] podman has joined the channel [20:22] BillyBreen: down to 665 now. someone got raptured. [20:23] thalll has joined the channel [20:23] mahna: nodejitsu in the house? [20:23] `3rdEden: He got sacrificed to the sun god BillyBreen ;D [20:24] jerrysv: mahna: try #nodejitsu [20:24] Hamms has joined the channel [20:25] wadey has joined the channel [20:25] col3: ryah: what would be your os of choice for running node? [20:25] ako has joined the channel [20:26] mahna: jerrysv: thx [20:28] `3rdEden: I would put my pennies on Solaris col3 ;D [20:28] sechrist: lmao [20:28] col3: sechrist: why you laugh? [20:28] sechrist: someone got raptured [20:28] Bonuspunkt: no its windows ^^ [20:29] `3rdEden: ;D [20:29] windows: muhahahaha [20:29] sechrist: I was actually impressed [20:29] sorens3n has joined the channel [20:29] sechrist: yesterday I saw that windows 7 has the nice window organization with keyboard hotkeys [20:29] sechrist: and all kinds of stuff [20:29] sechrist: I bought an app to do that on my mac [20:30] sorens3n: how often do you use them? [20:30] sechrist: on mac? [20:30] sechrist: errday [20:30] Bonuspunkt: well it isnt that good at win7 [20:30] sechrist: well I have windowkeys and divvy [20:30] sorens3n: i just use the half-window snap [20:30] sechrist: I don't use divvy much since it's a mouse thing [20:30] sorens3n: or ctrl+left ctrl+right [20:30] sorens3n: er, win key [20:32] Bonuspunkt: btw any news for node 0.5? [20:32] DelvarWorld: npm - if my library is a "bundledDependency" - how exactly do I set it up in my project [20:32] sveimac has joined the channel [20:32] isaacs: DelvarWorld: npm install some-lib [20:32] isaacs: DelvarWorld: or npm link it [20:33] DelvarWorld: I did npm install node_modules/my_thing [20:33] DelvarWorld: no output, but my project still can't find it when I run it [20:34] DelvarWorld: hmmm wait, I'm trying to require ./my_thing , let me not do that [20:35] DelvarWorld: that did it [20:35] marque has joined the channel [20:35] baudehlo has left the channel [20:36] baudehlo has joined the channel [20:37] baudehlo has left the channel [20:37] kriskowal has joined the channel [20:37] baudehlo has joined the channel [20:38] mikegerwitz: isaacs: I noticed that npm, when invoked as root, does not give root privileges to any scripts (e.g. postinstall). Which is good. But I'm looking to place a file in /usr/local/share/info (only if -g is used). I know you provide an option for installing man pages, but not texinfo. Can you suggest anything in this case? [20:38] baudehlo has left the channel [20:38] liar has joined the channel [20:39] isaacs: mikegerwitz: print a message to stdout telling the user to do it. [20:39] cryptix: im experiementing with backbone, node and socket.io… but i have a problem with the order of which my .js files are loaded… when my browser loads models.js it says Backbone is undefined, right after that exception it failes because of the incomplete model but then Backbone is defined.. can somebody help me with that? [20:39] baudehlo has joined the channel [20:39] isaacs: mikegerwitz: i'd prefer that packages not write to /usr/local/share in ways that npm doesn't manage, at least, not automatically [20:39] isaacs: mikegerwitz: otherwise you end up with situations where `npm uninstall ` doesn't clean up properly. [20:39] isaacs: (bt, dt) [20:40] DelvarWorld: isaacs: should I put my bundledDependency in node_modules, or in its own folder off root? [20:41] Guest80321 has joined the channel [20:41] mikegerwitz: isaacs: Fair enough. I don't suppose you'd accept a patch for texinfo, should I have the time? man pages aren't suitable for large manuals and texinfo is fairly standard. [20:43] isaacs: mikegerwitz: sure, that'd be fine. grep through the code for "man" and mirror that. [20:43] mikegerwitz: isaacs: Great. thanks [20:43] isaacs: mikegerwitz: it's in a fair number of places, but the big ones are lib/utils/read-json.js, build, and unbuild [20:43] baudehlo: hey isaacs; how does npm install its man pages? Do you ship it out with man format pages already, or does it use something to build them? [20:44] darshanshankar has joined the channel [20:44] isaacs: baudehlo: i use ronn pre-publish to generate them from markdown [20:44] mikegerwitz: isaacs: sounds good. I'll dig around. [20:44] xsyn has joined the channel [20:44] isaacs: ACTION back to hacking, check back from 1600-2000 PDT [20:44] dmitry_ has joined the channel [20:44] baudehlo: ok cool, I'll have to have a look at that. [20:45] baudehlo: ACTION would like man-style pages for Haraka if possible [20:45] kriskowal has joined the channel [20:45] admc has joined the channel [20:46] KilljoyCorry has joined the channel [20:47] kriskowal: isaacs: ran into an odd problem using npm on ubuntu with an http_proxy and firewall. i don't suppose you handle esoteric edge cases. [20:47] BillyBreen has joined the channel [20:47] kriskowal: isaacs: i'm guessing that problem goes down deep; does node respect http{,s}_proxy? [20:48] maushu has joined the channel [20:49] addisonj: anyone smarter than I want to help me understand a problem I am having? look here https://gist.github.com/994044 [20:49] tjholowaychuk: addisonj if it doesn't work with that middleware [20:49] tjholowaychuk: im assuming it's doing something wrong [20:50] tjholowaychuk: oh you have it below [20:50] addisonj: :) [20:50] addisonj: works fine for my other routes... just not that one [20:50] ardcore has joined the channel [20:51] tjholowaychuk: its because you are losing data events [20:51] tjholowaychuk: during that async chunk [20:51] tjholowaychuk: for the query [20:51] tjholowaychuk: that's my guess [20:52] addisonj: hrm... so somewhat like a race condition? [20:52] tjholowaychuk: kinda, a very reproducable one [20:52] tjholowaychuk: connect handles that in the session middleware with a pause util [20:53] springmeyer has joined the channel [20:54] T0bsn has joined the channel [20:54] addisonj: hrm... so I need to make sure that query has returned before the form finished uploading, correct? [20:54] T0bsn has joined the channel [20:55] kschzt has joined the channel [20:55] SubStack: isaacs: sometimes when people `npm install .` my modules that have very long dependency chains npm isn't fetching all of the deps so they've got to go in and `npm install .` in the node_module dirs [20:55] FireFly|n900 has joined the channel [20:55] kschzt: !seen miksago yawl [20:56] xsyn has joined the channel [20:56] isaacs: SubStack: got an example i can reproduce? [20:56] isaacs: SubStack: there IS a race condition that can make things fail sometimes in 1.0.6 at the cache-add step, but i fixed that in 1.0.7 [20:56] SubStack: I don't sadly! [20:56] kschzt: or pgriess :) [20:56] isaacs: don't be sad, it's ok. [20:56] SubStack: seems intermittent but dominictarr and pkrumins have both encountered this [20:56] SubStack: could be the race condition then, I'll upgrade [20:57] SubStack: these were both on 1.0.6 [20:57] tomaw_ has joined the channel [20:57] kschzt: anyone working with raw web socket protocol 76? why choose delimiters over length-specified tcp packets? [20:57] ncb000gt has joined the channel [20:58] sandropadin has left the channel [20:58] kschzt: parsing that high-bit-set length-specified web socket spec is 60% faster [20:58] xsyn_ has joined the channel [20:58] kschzt: but it's reserved for future use and nobody uses it :( [20:59] kschzt: i want to use it for node-to-node n-to-n [20:59] amerine has joined the channel [20:59] josephboyle1 has joined the channel [20:59] whobutsb has left the channel [21:03] jacter1 has joined the channel [21:05] kschzt: bleh, according to spec, let's just take the first, 0x80 for utf8 length-specified frames [21:05] skm has joined the channel [21:06] dmitry_ has joined the channel [21:06] eb4890 has joined the channel [21:07] jamesarosen has joined the channel [21:07] mertonium has joined the channel [21:07] thomblake1: looking for a good emacs mode or editor that supports 'npm style' - see stackoverflow question 6144930 http://stackoverflow.com/questions/6144930/emacs-js-mode-for-npm-style [21:07] sveimac has joined the channel [21:09] ryanfitz has joined the channel [21:10] kschzt: I stopped reading at [21:10] kschzt: Keep lines shorter than 80 characters. [21:10] zackattack has joined the channel [21:11] thomblake1 has left the channel [21:11] kschzt: why does npm need a coding style guideline? [21:11] piscisaureus has joined the channel [21:12] piscisaureus has joined the channel [21:12] kschzt: https://github.com/isaacs/npm/blob/master/doc/coding-style.md NO [21:12] hassox has joined the channel [21:13] gazumps has joined the channel [21:13] forzan has joined the channel [21:14] MrTopf has joined the channel [21:14] stepheneb has joined the channel [21:14] http402 has joined the channel [21:16] kschzt: actually I mostly agree :) [21:16] kschzt: hate comma first and 2 char whitespace [21:17] kschzt: whatever [21:17] tbranyen: kschzt: lol and telling people not to use semicolons [21:17] tbranyen: wtf xD [21:17] kschzt: i never put comma first and always use tabs [21:17] addisonj: i like semicolons in js [21:17] kschzt: always name my functions and never put braces on next line [21:18] kschzt: (undefined shit could happen if you do) [21:18] rphillips has joined the channel [21:18] kschzt: me too, always semicolons, it's completeness [21:18] nibblebo_: using vows, I have sequential vows but it doesn't make semantic sense that the context names get inherited for each item in the sequence. Is there a better way to do sequential tests that don't inherit context name? [21:19] kschzt: if I see a missed semicolon it's as if the statement isn't complete -- and it could continue on the next line with a dot or a plus or whatever [21:19] bartt1 has joined the channel [21:19] kschzt: for safety's sake, semicolon terminate [21:19] kschzt: :) [21:20] rphillips has joined the channel [21:20] pt_tr has joined the channel [21:20] addisonj: to each his own though :P [21:21] kschzt: sure :) [21:21] kschzt: not with the braces thing though, [21:21] kschzt: return \n { object } returns undefined - danger [21:23] jbpros has joined the channel [21:23] wadey: is anyone here using cluster with an init.d script or something similar? [21:23] wadey: I'm wondering what people are using to daemonize it [21:24] Poetro1 has joined the channel [21:24] wadey: (since SIGUSR2 will restart the master process, which can confuse some of those tools) [21:24] Poetro1 has joined the channel [21:25] Silly_Wabbit has joined the channel [21:26] kschzt: been playing with replacing amqp with zeromq last 2 weeks [21:26] baudehlo: wadey: I use runit. [21:27] kschzt: turns out zeromq 2.1.7 is very unstable, the main problem for me was presence, considered using raw tcp until realized node-websocket-server is actually quite solid .. the protocol needs a length-specified frame [21:28] kschzt: this driver for Node https://github.com/JustinTulloss/zeromq.node is great, but the underlying C code is not [21:29] rbranson: hater... you got beef? ship some code [21:29] kschzt: node-amqp works great, the only problem is RabbitMQ doesn't scale very well [21:29] rbranson: orly? [21:29] kschzt: rbranson, who? [21:29] hansschmucker has joined the channel [21:29] rbranson: how big scale you need bro? [21:29] syskk has joined the channel [21:30] caseywstark has joined the channel [21:30] kschzt: zeromq? mostly problems with identities of peers reusing the same ports [21:30] jonaslund: mickey scale! [21:30] kschzt: jonas ^_^ [21:30] rbranson: zeromq isn't analogous to amqp/rabbitmq anyway [21:30] kschzt: it is a messaging paradigm [21:31] kschzt: so what I'm doing now [21:31] rbranson: zeromq has more in common with protobuf than rabbitmq [21:31] kschzt: what [21:31] rbranson: you heard [21:31] kschzt: rbranson, zeromq is 'sockets on steroids' [21:31] kschzt: it's super cool [21:32] kschzt: but my main problem was I could never get any idea of presence of peers [21:32] kschzt: you know, like, peer connected or disconnected [21:32] kschzt: so I would handshake [21:32] kschzt: and see oh, this guy is here [21:32] kschzt: then continue to handshake with them [21:32] kschzt: then they would die [21:32] kschzt: and heartbeat messages would queue for them [21:33] rbranson: i don't think that's the point of zmq, that would require complexity that some people don't need [21:33] bloodsucker has joined the channel [21:33] kschzt: someone else would connect to the same ip/port as them, with a _different identity_, ie. some totally different service picking the same port by chance [21:33] kschzt: and the old queue would be sent to the _wrong destination_ [21:34] rbranson: sounds like you're using something not designed for identity as an identity [21:34] rbranson: last i heard HTTP didn't track clients by source IP/port either, but maybe I'm wrong [21:34] kschzt: i was using the zeromq 'envelope' as identity, which is pretty much what it was meant for [21:34] kschzt: nah dude that's how zeromq works [21:35] kschzt: there's some serious peer / presence issues in the drivers [21:35] kschzt: lots of stupid assert()s [21:35] minaguib has joined the channel [21:35] kschzt: read this http://news.ycombinator.com/item?id=2428004 [21:35] rbranson: sounds like you have some srs chops though, shouldn't be a problem to fix it up in a jiffy [21:36] syskk: rofl [21:36] addisonj: hehe http://github-high-scores.heroku.com/ kinda like this [21:36] kschzt: yeah what i did, is replace all of it with node-websocket-server and node-websocket-client ^_^ :D [21:36] kschzt: with a discovery/name service [21:36] rbranson: websocket is web scale eh? [21:36] kschzt: sure, it's just a tcp framing protocol [21:36] rbranson: so it provides identity too? [21:37] hybsch has joined the channel [21:37] kschzt: no [21:37] amocla has joined the channel [21:37] kschzt: i added an identity handshake [21:37] rbranson: oh, so you have to add that just like you would under zeromq? [21:37] kschzt: ja [21:37] kschzt: no, zeromq provides 'identity [21:37] amerine has joined the channel [21:37] Opaque has joined the channel [21:37] kschzt: it provides an envelope, in fact, which i suppose is meant to provide trace of where the message came from [21:38] sveimac has joined the channel [21:38] rbranson: yeah, it tells you source IP and port, but how is that an identity? [21:38] kschzt: but it really doesn't work right, yet [21:38] v0idless- has joined the channel [21:38] amocla has left the channel [21:39] ArtistConk1 has joined the channel [21:39] kschzt: hmm no there's the zeromq url, like tcp://127.0.0.1:1234/ that is your other endpoint you connect to [21:39] kschzt: then you discover their identity, ONLY AFTER you first talk to them [21:39] kschzt: which means you can't know who they are [21:39] rbranson: sounds like you're doing the same thing with websocket [21:39] kschzt: which is pretty much my problem [21:39] kschzt: kinda [21:39] kschzt: what I'm doing with websocket [21:40] rbranson: ZeroMQ doesn't expressly provide an authentication layer [21:40] kschzt: is I have a url like ws://127.0.0.1:12353/myServiceEndpointName/ [21:40] jeff_horton has joined the channel [21:41] kschzt: and each Node process has 1 node-websocket-server instance, with its own http.server thing, and then serves multiple 'identity'-like endpoints [21:41] kschzt: like in the above case, the identity of the bind() is myServiceEndpointName [21:41] ArtistConk has joined the channel [21:41] kschzt: then I can have ws://127.0.0.1/12353/otherEndpoint etc, which is a direct benefit of HTTP and WS [21:42] kschzt: one WS server port per process, multiple endpoints [21:42] kschzt: right [21:42] kschzt: then how easy is it now to add things like GET /stats to that, monitoring the whole system [21:43] dyer has joined the channel [21:43] dyer has joined the channel [21:43] hassox has joined the channel [21:44] jelveh has joined the channel [21:44] kschzt: the service and client endpoints discover eachother through a service/name discovery, and form p2p connections, no central broker required, all messaging patterns supported (which must be implemented) [21:44] tjholowaychuk has joined the channel [21:44] Country has joined the channel [21:45] kschzt: so eliminating my final SPOF, Rabbit [21:45] rbranson: i still don't see where ZMQ is falling short, other than in supporting HTTP [21:45] kschzt: rbranson, identity. if identityA uses port 1024 first, then dies, I don't know, until I heartbeat-timeout them [21:45] rbranson: you can assign identities and subscription keys with durable sockets [21:46] kschzt: rbranson, if another peer bind()s to the same port (1024), they will be sent any pending messages regardless of their identity [21:46] kschzt: rbranson, in my thing, the first free port will be grabbed [21:46] piscisaureus has joined the channel [21:46] tim_smart: kschzt: Why not just do some sort of channel system, based on the HTTP route [21:47] kschzt: rbranson, and the clients will queue messages to those sockets indefinitely (?) and send them to whoever connects to that socket [21:47] rbranson: erm, i don't think so [21:47] rbranson: identities can be assigned as strings with durable sockets [21:47] kschzt: rbranson, trust me, I debugged that one for days [21:47] kschzt: it's a bug in zeromq or a design flaw [21:47] kschzt: that's how it is in 2.1.7 [21:47] kschzt: the peer / identity discovery _isn't there_ [21:48] rbranson: it's rather amazing that you and you alone have finally hit the web scales enough to finally find this flaw [21:48] kschzt: (read the HN post http://news.ycombinator.com/item?id=2428004) [21:48] kschzt: tim_smart, say again? [21:48] kschzt: tim_smart, I'm doing 'channel' or endpoints through the req.url [21:48] gtramont1na has joined the channel [21:49] Swizec has joined the channel [21:49] tim_smart: kschzt: Ah right, that is pretty standard I thought [21:49] kschzt: tim_smart, great :) [21:50] minaguib_ has joined the channel [21:50] rbranson: i mean none of the ZMQ things I've done have ever had this problem [21:50] itissid: Hey whats the idea behind npm installing node module in local directory? [21:50] kschzt: well the WS solution works great, the parsing is slightly inefficient, but I can always throw in that 0x80 special packet type [21:50] kschzt: and length-specify it [21:51] tim_smart: itissid: Being awesome, and making deployment / bootstrap less painful. [21:51] isaacs: kriskowal: npm handles the http_proxy variable. [21:51] isaacs: kriskowal: node does not [21:51] isaacs: kriskowal: you can also set the `--proxy` config explicitly [21:52] isaacs: kriskowal: also, it doesn't differentiate between https_proxy and http_proxy [21:52] tim_smart: Less painful that this mysql query I'm running anyway [21:52] itissid: tim_smart, Its just that it eats a lot of space in all my projects.. [21:52] ardcore has left the channel [21:52] isaacs: kriskowal: and only does basic/proxy auth, not any ntlm craziness [21:52] tim_smart: itissid: You must have some crazy dependencies :/ [21:53] kschzt: rbranson, I was using xrep to xrep sockets [21:53] keeth has joined the channel [21:53] kschzt: rbranson, because i always need bidirectional and there might not be a response [21:54] itissid: tim_smart, was this done to avoid breaking different projects due to upgrades in global modules? [21:54] caseywstark has joined the channel [21:54] kschzt: looking forward to publishing this stuff, if I get the permission :) [21:54] tim_smart: itissid: isaacs <- [21:55] itissid: Like if node modules were global and accessed by multiple projects then it would seem that updating one may break others.. [21:55] itissid: By breaking i am referring to projects.. [21:55] tim_smart: itissid: You could have different versions for different packages before I think [21:55] brettgoulder has joined the channel [21:56] gtramont1na_ has joined the channel [21:56] itissid: tim_smart, AFAIR npm used to install modules as global resources no? [21:56] duncanbeevers: itissid: Precisely. A module you depend on could depend on an older version of a module you use in the top-level project without locking the top-level project to the older version. [21:56] isaacs: itissid: no longer. [21:56] isaacs: itissid: now it instals them locally [21:56] isaacs: itissid: there are many reasons for this. the api and resulting structure is more elegant, beautiful, and easier to manage. [21:57] kschzt: ... [21:57] isaacs: duncanbeevers: that actually worked in npm 0.x, as well. [21:57] captain_morgan has joined the channel [21:57] morganallen_ has joined the channel [21:57] kschzt: i hate it installing shit in `pwd` [21:57] isaacs: duncanbeevers: npm has always freed us from the tyranny of dependency hell [21:57] kschzt: never the right place [21:57] isaacs: kschzt: i disagree. [21:57] markwubben has joined the channel [21:57] jerrysv: there are many layers of hell [21:57] tim_smart: I disagree as well [21:57] isaacs: kschzt: you don't sit in your project folder hwne you'er doing stuff? [21:57] isaacs: i do. [21:58] itissid: isaacs, before this change was it possible that different projects referred to different versions of node modules, which were at the global level then? [21:58] isaacs: that's where you do your git commands and open files from [21:58] morganallen_ has left the channel [21:58] isaacs: itissid: yes. [21:58] itissid: and that was messy? [21:58] isaacs: itissid: but it was not as stable or elegant. [21:58] isaacs: yes. [21:58] itissid: hmm [21:58] kschzt: i usually sit in subfolders of a larger git project [21:58] isaacs: it was always tricky to know whether or not something was still needed, etc. [21:58] isaacs: kschzt: if you're in a subfolder of a package, it'll use the root. [21:58] kschzt: so i am learning to use -g always [21:58] isaacs: kschzt: defined by the existence of a package.json or a node_modules folder. [21:59] isaacs: that is a bad habit. you should avoid it. [21:59] kylefox has joined the channel [21:59] itissid: sweet thanks.. [21:59] kschzt: mk [21:59] tjholowaychuk: local ftw [21:59] kschzt: rgr [21:59] mikey_p: local is freaking brilliant [21:59] tjholowaychuk: global doesnt make sense at all unless you are just trying something out quickly [21:59] slicky: agreed [21:59] mikey_p: and nested dependencies are even better [21:59] tanepiper: just .gitignore node_modules and use your package.json ! [21:59] slicky: I've been having to reinstall all node modules every nvm version upgrade [22:00] slicky: now it's much better :) [22:00] tbranyen: I <3 global you'll never take it away! [22:00] syskk has joined the channel [22:00] hassox has joined the channel [22:00] context: what [22:00] syskk has left the channel [22:01] olalonde has joined the channel [22:01] liar has joined the channel [22:01] context: [22:01] tjholowaychuk: [22:01] tjholowaychuk: [22:01] tjholowaychuk: self-closing complain [22:01] kschzt: whitespace complaint [22:01] strmpnk has joined the channel [22:02] mertonium has joined the channel [22:03] kschzt: pgriess? micheil? [22:03] mraleph has joined the channel [22:03] mikeal has joined the channel [22:03] rbranson: fuck this i'm going back to PHP complaint [22:03] mraleph has joined the channel [22:04] jerrysv: as long as there's not another multi hour discussion on xhtml :/ [22:04] eldar has joined the channel [22:04] kschzt: i want to agree with pgriess and micheil that it's a good idea to use 0x80 for length-specified in the longer term [22:04] kschzt: :) [22:04] rbranson: jerrysv: we nearly averted disaster when the web was on the precipice of turning xhtml, and then thankfully it was saved. oh precious web. [22:05] rbranson: *other broad-brushing, dogmatic anti-xml statements* [22:05] brianloveswords has joined the channel [22:06] dgathright has joined the channel [22:06] wadey has joined the channel [22:06] kschzt: <3 node.js aww hugz [22:07] itissid: Has some one debugged express in node inspector? [22:07] itissid: express projects* [22:08] kschzt: i used node-inspector a couple times, not particularly with express [22:08] itissid: I assumed it would work but its not quite working [22:08] wadey: ryah: is it intended that you can only call ChildProcess.kill once? [22:09] wadey: I want to send SIGHUP multiple times [22:09] wadey: but this prevents that: https://github.com/joyent/node/blob/master/lib/child_process.js#L260 [22:09] rbranson: ouch [22:10] groom has joined the channel [22:10] Fodi69 has joined the channel [22:10] darshanshankar has joined the channel [22:10] kschzt: itissid, how not so? :) it worked pretty well for me, I should use it more [22:11] T0bsn has joined the channel [22:11] davidbanham has joined the channel [22:11] kschzt: so cool to be able to attach a webkit debugger to a running v8 process! [22:12] Fodi69: hi, can I access the `req` and `res` objects from an outer class to enable me to get the session objects? [22:12] wadey: ryah: perhaps I'll come to Node office hours and bug you about it :) [22:12] ryah: wadey: in sf again? [22:12] ryah: wadey: or - you said you were moving here, right? [22:12] wadey: ryah: yeah, moved out here for real this time :) (still finding an apartment though) [22:12] ezl has joined the channel [22:12] ryah: wadey: im going to be around until 6p - isaacs going to hold down the fort until 8 [22:13] wadey: ryah: ah, awesome [22:14] sechrist has joined the channel [22:15] lakin has joined the channel [22:17] Wizek: Fodi69, Can you not access them from the variable which is created from `http.createServer()` ? [22:17] Wizek: I mean some sort of store [22:17] trotter has joined the channel [22:18] Wizek: where all the current connections req and res objects are held [22:18] tjholowaychuk: Fodi69 you can use the sess store directly but it is reasonably coupled with req right now [22:18] puffpio has joined the channel [22:18] tjholowaychuk: I plan on improving that but it's not the top of my list right now [22:18] softdrink: is anyone using hashrocket's dotmatrix stuff? [22:19] hosh_work_ has joined the channel [22:19] brimster has joined the channel [22:21] kschzt: so how have you solved your distributed computing / clustering needs? Cluster? [22:21] kschzt: https://github.com/LearnBoost/cluster haven't tried it [22:21] msdark has joined the channel [22:21] msdark: Hi!! .. first time in the node.js channel .. [22:22] msdark: (and sorry for my english) [22:22] msdark: i have a question.. if any of you can't answer would be great [22:22] msdark: .. it's possible to stream video data to a webpage with node.js ?? [22:23] msdark: the idea is use a player like flowplayer no show video [22:23] fljitovak has joined the channel [22:23] wadey: ryah: any ideas on the SIGHUP issue above? [22:23] ParadoxQuine has joined the channel [22:23] kschzt: msdark: possible? yes [22:24] baudehlo: wadey: I'd say that looks like a bug fwiw. [22:24] kschzt: msdark, if you just want to buffer files to flowplayer from disk, use nginx [22:25] ParadoxQuine: how do i quickly change where npm puts modules? i just upgraded from 0.x to 1.x and they're all in my home folder now [22:28] wadey: perhaps I'll do 'git blame' to try to figure out why that killed check was added [22:28] jerrysv: /topic npm -g (if you want the old way), or just roll with it [22:29] kschzt: jerrysv, I have to reorganise a lot of stuff to understand the new model [22:30] kschzt: I still don't get how installing shit to `pwd` is going to work [22:30] kschzt: ok wait, I actually npm link everything on my dev box [22:30] justinTNT has joined the channel [22:31] jerrysv: kschzt: just been a very popular question today :) [22:31] liar has joined the channel [22:31] baudehlo: msdark: you could probably easily port this from php: http://www.flashcomguru.com/index.cfm/2005/11/2/Streaming-flv-video-via-PHP-take-two [22:31] kschzt: which does it globally anyway ^_^ and I just have to add -g to my deployment scripts [22:31] sirdancealot has joined the channel [22:31] mscdex: PHP! [22:31] itissid: kschzt, gotit [22:31] baudehlo: mscdex: shush you! [22:31] kschzt: jerrysv, yeah it's pissed me off a lot a while ago too, so I totally understand [22:32] kschzt: -g ftw [22:33] yhahn has left the channel [22:33] jerrysv: kschzt: i actually like the change, it just took a couple of minutes of reworking my thoughts [22:33] kschzt: npm is super awesome sauce, but has given me enough trouble already :) [22:33] kschzt: jerrysv, right [22:34] jTNT has joined the channel [22:34] kschzt: here's hoping i don't have to reset npm manually very soon again [22:34] kschzt: on a production box [22:34] jerrysv: kschzt: 1.0 means ready for production as per semver [22:34] kschzt: ! [22:35] isaacs: jerrysv: ha! [22:35] kschzt: :) [22:35] Dngoins has joined the channel [22:35] isaacs: jerrysv: everyone has their own ideas of what semantics semver actually is saying [22:35] isaacs: 1.0 --> no major API changes prior to 1.1 [22:35] jerrysv: isaacs: just quoting the FAQ :) [22:36] isaacs: i don't expect any architectural changes in npm any time before November. [22:36] jerrysv: isaacs: (and seeing if you're paying attention still) [22:36] isaacs: and when i say "i don't expect", i mean, "i guarantee there won't be any" [22:36] kschzt: isaacs, npm is awesome, we couldn't live without it! [22:36] isaacs: 0.2-0.3-1.0 was very tumultuous [22:36] kschzt: we're just complaining about 'change' [22:36] isaacs: kschzt: yeah, i moved a lot of cheese :) [22:37] ceej has joined the channel [22:38] jerrysv: isaacs: i was the one bugging you about analytics at the nodeconf breakfast [22:38] rfay has joined the channel [22:38] isaacs: jerrysv: oh, kewl :) nice to meet you [22:38] jerrysv: isaacs: indeed! [22:39] msdark: the idea is: I have an app in C++ to capture and process images .. with this i push the image data (RGB data) to a node.js server using thrift [22:39] msdark: so in the node.js i have a RGB data of every frame [22:39] kschzt: msdark, right [22:39] msdark: now i wan't to send this data to the webpage and play wit flowplayer or html5 video tag [22:39] isaacs: kschzt: so, where this approach really shines is if you have a bunch of different node programs with different deps. [22:39] sechrist has joined the channel [22:39] isaacs: kschzt: cd some-project; npm install; cd some-other-project; npm install; etc. [22:40] msdark: so i simple send the data (raw or encode) to the webpage and with javascript put into video tag or flowplayer??? [22:40] kschzt: isaacs, I have one huge git repo with 12 big node projects, each with their own deps [22:40] kschzt: isaacs, some shared deps of course [22:41] kschzt: isaacs, i almost never work in the root folder [22:41] msdark: thanks baudehlo i will try this [22:41] isaacs: kschzt: you should probably have 12 git repos [22:41] isaacs: kschzt: rather than one big one [22:41] kschzt: isaacs, but npm link works, which I've always used on dev boxes, then hudson builds and my deployment scripts just have to -g that shit [22:42] kschzt: isaacs yeah probably, it would make some things easier [22:42] isaacs: kschzt: but, why not just cd into each of those and do your npm installing there? ther'es no rule that says you must have 1:1 git-repo:npm-package setup [22:42] kschzt: isaacs like deploying and killing and restarting a particular service. yes [22:42] isaacs: as a series of "steps" to get from here to there, you could just pull out the packages to separate git repos one at a time, and have them be git submodules [22:43] isaacs: then when the parent repo is nothing but submodules, you can kill it. [22:43] kschzt: isaacs, I would have to do it more than 12 times .. cd into each one of them? really? no [22:43] kschzt: isaacs, yeah, that's the better plan, 12 repos [22:43] kschzt: 12 deployment plans ^_^ w007 [22:43] kschzt: :D [22:44] kschzt: well it's better anyhow than 1 that incurs downtime for all [22:44] mscdex: msdark: have you seen this fwiw?: https://github.com/pkrumins/node-video [22:44] kschzt: isaacs, yeah man! [22:44] msdark: yes... mscdex i take a look [22:44] mscdex: ok [22:44] isaacs: kschzt: also, that has the advantage is that you don't have to check out *everything* if you only work on one or two of those [22:44] msdark: and try to install to test but i have some issues (snow leopard) [22:44] fakewaffle has joined the channel [22:45] msdark: i look in to this module (node-video) [22:45] kschzt: isaacs yeah, but try tracking 12 * 4 branches [22:45] msdark: but the stream part is not yet complete [22:45] kschzt: :s [22:45] isaacs: kschzt: i find it harder when they're all in one repo [22:45] v0idless-_ has joined the channel [22:45] isaacs: kschzt: then you have to branch everything to branch anything [22:45] kschzt: isaacs mmm [22:46] isaacs: anyway... that's not an easy problem. but in my experience, cutting things into smaller pieces tends to make it easier, not harder. [22:46] catshirt has joined the channel [22:46] mscdex: msdark: well the author is in here (pkrumins) so you might ping him about it [22:46] kschzt: yeah i think you are on to something and I've been thinking / meaning to split them [22:46] duncanbeevers: If that * 4 thins is because you want to do the same thing to all 12 repos, it sounds like that stuff should be factored out and included as a submodule in those 12 repos, helping isolate those changes. [22:46] msdark: ok thanks mscdex [22:46] kschzt: it certainly makes deploying pieces much much easier [22:46] msdark: pkrumnis your the autor of node-video right? [22:47] msdark: i post a issue in github about installing in mac os x [22:47] kschzt: because the "thing" as a whole doesn't change very often, but the pieces might do daily [22:47] kschzt: and you could do daily roll-outs of a particular service, even automatically, if you pieced them out [22:48] kschzt: for some services in certain cases you could even do hotswap :) [22:49] kschzt: or just go to an older service, yo, this service v2 is up over there, new peeps are already using it, once you're done serving your customers, go ahead and please die [22:49] aheckmann has joined the channel [22:49] mscdex: msdark: i think the build error is due to the old buffer api being used [22:50] kschzt: so a message to the older service to very gracefully die, once the new service has new clients [22:50] mscdex: msdark: try applying this patch: https://github.com/substack/node-video/commit/4d946ce235246d96c9dc059027a0ae78b539d4e9.patch [22:50] msdark: i don't know so much... i'm very new with node ... but i'm trying to study and understand the code of node-video [22:50] msdark: i will try this mscdex [22:50] softdrink: hooray for service-based architectures [22:50] kschzt: (accept no new connections, messages, handle the ones pending and exit) [22:50] GasbaKid has joined the channel [22:50] skm has joined the channel [22:51] kschzt: getting ahead of myself a bit there :) [22:51] jmoyers has joined the channel [22:52] TooTallNate has joined the channel [22:52] msdark: mscdex now works!!! ... [22:52] msdark: thanks a lot [22:52] mscdex: cool :) [22:52] msdark: now i will make some test to check if the idea works [22:52] itissid: My node-mongodb build is failing tracked it down to https://github.com/orlandov/node-mongodb/issues/8 [22:53] itissid: Is orlandov here? [22:54] kschzt: itissid, why are you using orlandov's driver? [22:54] KirinDave has joined the channel [22:54] NetRoY has joined the channel [22:54] itissid: kschzt, Which one is good? [22:54] mscdex: itissid: looks like you're missing a library [22:54] itissid: lmongoc [22:54] itissid: lbson [22:55] kschzt: itissid https://github.com/christkv/node-mongodb-native [22:55] kschzt: itissid with my patches I am using https://github.com/rocketpack/node-mongodb-native [22:55] raynos: I'm looking for client-side npm. Is anyone working on an implementation? [22:55] itissid: kschzt, What version of monogo is supported? [22:55] isaacs: raynos: such a thing is a contradiction. but perhaps EnderJS is sorta what you mean? [22:56] raynos: isaacs: I looked at ender and found it lacking, wondered if something similar existed [22:56] isaacs: raynos: it uses npm (server-side) to assemble a bunch of client-side libs into a nice tidy little thingie you can download. [22:56] tjholowaychuk: raynos https://github.com/visionmedia/asset [22:56] itissid: kschzt, i have 1.8.1 on my pc [22:56] tjholowaychuk: might kinda be what you want [22:56] isaacs: raynos: or you could check out browserify [22:56] kschzt: itissid, 1.8 replica sets working fine with my driver [22:56] itissid: Cool [22:56] msdark: pkrumins node-video can work for my needs?? push rgb data (encode or raw) to a webpage and play into html video tag or a player (like flowplayer) ?? [22:56] kschzt: itissid, however my patches don't pass christkv's tests so start with them :) [22:56] msdark: or i need something else (like the StreamingVideo part) ?? [22:57] itissid: kschzt, you take replica sets to be the acid test for compatibility :) [22:57] kschzt: itissid, the replica set support however is broken [22:57] kschzt: itissid, haha quite :D [22:57] itissid: mongo changes a lot.. [22:57] kschzt: i've used the latest patch in rocketpack/mongo for months now without any issues [22:57] brianloveswords has joined the channel [22:58] postwait has joined the channel [22:58] kschzt: 1.7 up [22:58] dispalt has left the channel [22:58] dispalt has joined the channel [22:59] wjwoodward has joined the channel [23:00] kschzt: honestly I've been too lazy / didn't care to fix the tests :s heh [23:00] jaket has joined the channel [23:00] kschzt: but it's been in production for months [23:01] insin has joined the channel [23:01] kschzt: specifically worked on reconnection and replica sets. yeah [23:02] mertonium has joined the channel [23:02] kschzt: rauchg so what's up with mongoose? [23:02] raynos: isaacs: I think I want browserify. Thanks. Didn't realise I could tell it to load from npm ;) [23:03] springmeyer_ has joined the channel [23:03] alex_b_ has joined the channel [23:03] kschzt: rauchg, i've patched mongoose a lot and haven't switched to the new version with the Builder pattern for Models (I fn hate it) [23:03] willwhite has joined the channel [23:03] isaacs: raynos: i don't use browserify myself. but it seems pretty nice. [23:03] kschzt: itissid, are you using some abstraction between node and mongo driver? [23:04] kschzt: itissid, mongoose et al? [23:04] isaacs: raynos: i think SubStack was talking about getting some automated thing that'll detect browserify-ability in npm packages, and then be able to filter or something [23:04] SubStack: raynos: browserify doesn't load from npm as such, but you can use modules that you've installed with npm in it [23:04] raynos: I just wanted a packager that allows me to package local files and files from npm. That's about it. Ender didnt play nicely with local files [23:04] SubStack: isaacs: I sure am! [23:04] SubStack: http://github.com/substack/testling [23:04] kschzt: i've used mongoose a lot, but lately, as I get to know the API better and better, I've just been bypassing the Mongoose API :) [23:04] raynos: SubStack: Oh it doesn't use npm to load them for me :( [23:04] msdark: bye [23:04] SubStack: raynos: no but you just npm install them first [23:05] mikeal1 has joined the channel [23:05] kriskowal has joined the channel [23:05] SubStack: you probably don't want your bundler to start installing its stuff from npm by itself [23:05] SubStack: when you can just npm install . [23:05] raynos: SubStack: I guess so. [23:06] itissid: kschzt, Abstractions not yet.. [23:06] kschzt: itissid, good :) [23:06] blackdog has joined the channel [23:06] itissid: Why !? [23:07] kschzt: itissid, Hibernate experience :D [23:07] itissid: kschzt, Hmm Is this like django models?\ [23:07] duncanbeevers: SubStack: I'd love to see a deeper explanation of the reasoning behind some of the Browserify stuff. I was frankly shocked by the size of the generated payload. [23:07] kschzt: itissid, yeah mongoose is kinda similar [23:08] raynos: SubStack: Are those your drawings? [23:08] SubStack: raynos: yes [23:08] duncanbeevers: And lots of weird code like [].forEach(function(a) { something[a] = something['fs']; }) [23:08] kschzt: itissid, just had horrible experiences with Hibernate-like stuff that intends to completely abstract away the db [23:08] itissid: My god so many layers of abstraction! [23:08] SubStack: duncanbeevers: those are alises [23:08] kschzt: itissid, don't do that!!! [23:08] SubStack: duncanbeevers: minifying is for minifiers [23:08] raynos: SubStack++ [23:08] v8bot: raynos has given a beer to SubStack. SubStack now has 31 beers. [23:08] itissid: kschzt, Well I am guessing with JS goodness making your own custom abstraction should be a breeze.. [23:09] SubStack: duncanbeevers: the point of browserify is to let you write your browser code exactly like your node code [23:09] hassox has joined the channel [23:09] SubStack: because writing code for browsers sucks and writing node is awesome [23:09] duncanbeevers: Perhaps I'm explaning myself poorly. The decision to include require in the global browser namespace seemed a little odd. [23:09] SubStack: how else? [23:09] tmpvar: SubStack, i must admit require('module').immediateAccess is nice [23:09] kschzt: itissid, yeah I wouldn't be very afraid of just writing a query engine and then an implementation of that for mongodb [23:09] SubStack: yeah require('module', cb) is crazy annoying [23:10] tmpvar: (been working with require.js) lately [23:10] supster has joined the channel [23:10] tmpvar: s/) lately/lately) [23:10] daveyjoe has joined the channel [23:10] kschzt: itissid, especially for JS/Node/Mongo, as the model is essentially _the same_ (dynamic) .. no need to transform xml or stupid shit [23:10] tmpvar: define(['a','b','c'], function() { return { my : module } }); [23:11] SubStack: tmpvar: you can do relative requires and everything with browserify [23:11] tmpvar: SubStack, sounds sexy :) [23:11] SubStack: and you can use your favorite flow control lib from npm [23:11] tmpvar: haha [23:11] tmpvar: conductor? [23:11] SubStack: probably so long as it doesn't do fs or net things [23:11] tmpvar: it does not [23:12] kschzt: tmpvar, SubStack, what are you talking about [23:12] kschzt: changes to require()? [23:12] ryah: wadey: what's the sighup issue? [23:12] pifantastic has joined the channel [23:12] tmpvar: thats interesting, ill give it a whirl tonight SubStack [23:12] SubStack: kschzt: browserify [23:13] kschzt: ah.. [23:14] raynos: SubStack: Does it extend array.prototype internally somewhere? [23:14] SubStack: raynos: es5-shim does [23:14] SubStack: if you're missing stuff [23:14] raynos: Can I turn that off? [23:14] SubStack: shim : false [23:15] nivoc has joined the channel [23:15] SubStack: it's in the readme [23:15] tmpvar: it'd be interesting if you could patch the browser on a case by case basis with feature detection.. collect a list and send it to the server to get a bundle of shims [23:16] kschzt: substack, does require() document.write() the script tag or xhr eval or css eval it? :) and do I have a choice? [23:16] raynos: SubStack: Thanks. Should have looked at the readme, dont think it was mentioned on the website [23:16] SubStack: tmpvar: that could be nifty [23:16] tmpvar: kschzt, if i had to guess... none of the above [23:16] SubStack: if you can trust the reported user-agent [23:16] SubStack: tmpvar: correct, none of those [23:16] SubStack: those are silly [23:16] kschzt: uh huh? [23:17] captain_morgan has joined the channel [23:17] morganallen_ has joined the channel [23:17] SubStack: kschzt: browserify is a bundler [23:17] tmpvar: kschzt, another guess.. all of your libs are bundled ..... [23:17] tmpvar: hah [23:17] SubStack: it makes a single /browserify.js file with everything [23:17] tmpvar: cached on first load, good to go [23:17] SubStack: yep [23:17] kschzt: k [23:17] kschzt: loaded how? [23:17] tmpvar: [23:18] wadey: ryah: sorry, missed your response [23:18] wadey: I'll paste again: [23:18] wadey: [15:08] ryah: is it intended that you can only call ChildProcess.kill once? [23:18] wadey: [15:09] I want to send SIGHUP multiple times [23:18] wadey: [15:09] but this prevents that: https://github.com/joyent/node/blob/master/lib/child_process.js#L260 [23:18] kschzt: ok [23:18] SubStack: tmpvar: and if you specify entry points that is the only script tag you'll need [23:19] ryah: wadey: why does that prevent it? [23:19] ryah: oh i see [23:19] puffpio has joined the channel [23:19] SubStack: or you can have another script tag right after that calls require() [23:19] ryah: wadey: yeah - we should fix that. [23:19] tmpvar: SubStack, what do you mean by multiple entry points? [23:19] wadey: ryah: noticed it when I was trying to have cluster send SIGHUP to the worker processes [23:19] ryah: wadey: you can use process.kill() until we fix it [23:19] wadey: it would work the first time [23:20] wadey: ryah: ah, good idea [23:20] tmpvar: SubStack: specifying them I mean [23:20] kschzt: substack, so like a lot of the page is rendered and formed before you have access to it through browserify scripts? [23:20] SubStack: tmpvar: the entry field to browserify() [23:20] nivoc1 has joined the channel [23:21] SubStack: tmpvar: like this: https://github.com/substack/node-browserify/tree/master/examples/entry [23:21] tjholowaychuk: ryah it looks like ChildProcess#kill() has the nul signal bug [23:21] SubStack: only has a single