[00:01] AaronMT has joined the channel [00:01] rurufufuss has joined the channel [00:02] Draco_ has joined the channel [00:03] mara has left the channel [00:03] neurodrone has joined the channel [00:05] zomg: Hmm.. I wonder if I should make my mongoose models actually be the objects I'm storing in memory while the app is running.. [00:05] avih has joined the channel [00:06] zomg: I have some objects which stay in memory to do various things, but their configuration is stored in mongo... now they just go out of sync whenever I forget to have the in memory ones be updated when saving changes to the configuration [00:07] zurh has left the channel [00:09] devdazed has joined the channel [00:11] RLa: zomg, can't you just sync them [00:11] saidinesh5: Ahh .. the 0.6.6 branch seems to properly install node-waf .. looks like the build system has been changed or something.. [00:11] zomg: RLa: Sure but I keep forgetting to do it whenever I add some new code which changes stuff :D [00:12] zomg: Perhaps I'll just change it so that the configuration object is referenced to from the in-memory object, that way I wouldn't need to copy values all over the place [00:13] devaholic has joined the channel [00:13] RLa: i have an app where i have generic 'stores' and i'm using events to automatically invalidate caches, screen data etc. [00:13] pizthewiz has joined the channel [00:14] booo has joined the channel [00:15] RLa: i have bool flags here that mark whether data is dirty and should be updated, an even would only change that flag [00:15] RLa: it gives very low overhead [00:17] omenar has joined the channel [00:17] pointlessjon has joined the channel [00:17] pointlessjon has left the channel [00:18] catb0t has joined the channel [00:18] pyparadigm has joined the channel [00:19] avih has joined the channel [00:19] JaKWaC has joined the channel [00:21] dubenstein_ has joined the channel [00:21] fomatin has joined the channel [00:25] k1ttty has joined the channel [00:25] fomatin has left the channel [00:26] cyborg has joined the channel [00:26] cyborg: join #soundcloud [00:26] cyborg has left the channel [00:29] hipsters_ has joined the channel [00:30] dubenstein_ has joined the channel [00:31] devongovett has joined the channel [00:33] avih has joined the channel [00:34] socketio\test\60 has joined the channel [00:35] duffman has joined the channel [00:36] Industrial: WOnder if I can use Cloud9 as the Editor/IDE, use NodeJS as the platform and use a hosting service, all so I can do everything from the browser:P? [00:36] Industrial: Can I do that, deploy to e.g. heroku/joyent from cloud9? [00:36] cylradia has joined the channel [00:37] fomatin_ has joined the channel [00:38] fomatin_ has joined the channel [00:39] Industrial: oh i see, add a deploy target [00:43] ryanfitz has joined the channel [00:45] janne has joined the channel [00:46] cody-- has joined the channel [00:48] avih has joined the channel [00:53] cyborg has joined the channel [00:53] cyborg: happy xmas noders [00:53] orospakr: So, node's FS module seems to assume that all filesystem pathnames are in UTF8. [00:53] orospakr: This is both broken and sad. :( [00:54] orospakr: It should use buffers by default. [00:54] orospakr: I realized this when I got strings back from readdir() with bogus character in them, that if subimitted to open/stat/whatever, will fail with ENOENT. [00:54] orospakr: and then I said, "wait, shit, those are JS strings I'm getting back as filenames. well crap." [00:55] [[zzz]] has joined the channel [00:55] orospakr: it should be returning Buffers, while supporting the input of strings for convenience. [00:55] orospakr: POSIX pathnames are octet strings, *not* UTF8. [00:55] RLa: i think this has something to do with v8 encodings support [00:56] orospakr: RLa, yeah, but encodings are kind of out of scope for filenames. I mean, I may want to render them to an encoded string at some point, but when I'm still using them at the FS level, UTF-8 or any other encoding is out of scope. [00:57] fomatin_ has joined the channel [00:57] TheJH: orospakr, there's an open issue on GH [00:57] orospakr: TheJH, ah, good to hear. [00:57] hostsamurai has joined the channel [00:58] ger^kallisti has joined the channel [00:59] TheJH: orospakr, https://github.com/joyent/node/issues/2387 [00:59] avih has joined the channel [00:59] zodiak has joined the channel [01:00] mmalecki: orospakr: it was TheJH :) [01:01] mmalecki: (that tweet) [01:01] orospakr: heh! [01:02] avih has joined the channel [01:02] mmalecki: orospakr: we have this funny bot at #nodejitsu that lets us tweet stuff from the irc [01:02] TheJH: and it shows some node-related tweets [01:02] mmalecki: orospakr: https://github.com/nodejitsu/kohai :) [01:04] fomatin_ has joined the channel [01:05] JaKWaC has joined the channel [01:06] Charuru has joined the channel [01:08] TheJH: nickp_, ping [01:10] TheJH: meh [01:11] TheJH: anyone here with publish access to "connect"? [01:11] TheJH: on npm [01:12] djQuery has joined the channel [01:12] c4milo has joined the channel [01:17] tk has joined the channel [01:17] disappearedng has joined the channel [01:17] disappearedng: hey does node have client side debugging? [01:17] avih has joined the channel [01:18] neoesque has joined the channel [01:18] JaKWaC has joined the channel [01:19] insin: like https://github.com/dannycoates/node-inspector ? [01:23] bemson has joined the channel [01:24] avalanche123 has joined the channel [01:24] socket has joined the channel [01:24] bemson: I've built/installed a local npm module, but don't know how to test it [01:24] Aria: npm test? [01:24] mehlah has joined the channel [01:24] bemson: Aria: I'll look that up - thanks! [01:26] bemson: Well the test file I made is failing with "node -e test.'s" [01:26] ryanfitz has joined the channel [01:26] bemson: i get some ridiculous errs of files I haven't written (mostly internal I thought) [01:27] bemson: http://pastebin.com/SjwYQtF9 [01:27] bemson: it may be that my npm module has errs? It's not failing in my quint tests [01:27] bemson: … not sure what the problem is [01:28] tokuzfunpi has joined the channel [01:28] bemson: would someone take a look at that pastebin to let me know if it's my node or my module code [01:29] socket has left the channel [01:30] mansoor has joined the channel [01:31] bemson: okay - here's an easier one [01:32] bemson: node -e "console.log [01:32] hotroot has joined the channel [01:32] bemson: node -e "console.log( [01:32] bemson: node -e "console.log('echo')" [01:32] bemson: ..sheesh [01:32] bemson: well, that line works [01:32] bemson: but when I put the same line in a js file it fails [01:32] hotroot has left the channel [01:33] bemson: any ideas? [01:34] bemson: k, just noticed that I can't pass a file with "-e" argument [01:35] bemson: it works now with a simple "node test.'s" [01:35] kazupon has joined the channel [01:37] hipsters_ has joined the channel [01:37] brianseeders has joined the channel [01:37] Charuru has joined the channel [01:39] icewhite has joined the channel [01:40] idle-boy has joined the channel [01:42] xyos has joined the channel [01:43] amigojapan has joined the channel [01:43] JaKWaC: When your redirect output of a program is it buffered before its written to a file? (etc: node script.js >> log.stdout) I'm running a `tail -f` and I don't see the output till after the program finishes. [01:45] Charuru has joined the channel [01:47] wink_ has joined the channel [01:47] otakutomo has joined the channel [01:49] Shaunzie has joined the channel [01:50] zodiak: this is perhaps a bit of a 'duh' question/statement.. but.. I normally use scheme and have gotten into clojure, and I have been trying to write node.js in an OO style.. is node/js more fp ? [01:50] zodiak: I notice my node methods all being about 5-6 lines long.. and it reminds me of clojure a fair bit.. am I mad ? [01:50] zomg: I guess it depends [01:51] zomg: When you have state and methods which act on the state you can use OO, when you have lists and such you can map/filter/reduce over them etc. [01:51] zodiak: zomg, so (in your mind) it's sort of a hybrid of the two ? [01:51] zomg: Something like that yeah [01:51] Charuru has joined the channel [01:52] zodiak: zomg, interesting. I am wondering, which is the way you (personally) write node/js .. more OO or FP ? [01:53] zodiak: I think I may have been doing js all wrong these years :) [01:53] jesusabdullah: You really want both. [01:53] mandric has joined the channel [01:53] jesusabdullah: Keep in mind, OO doesn't mean classes [01:54] zodiak: jesusabdullah, no, I understand OO != only classes (encapsuation, extension, etc) [01:54] jesusabdullah: right [01:54] jesusabdullah: but you're not mad for seeing fp in js [01:54] zodiak: it's .. definitely curious. [01:54] zodiak: huzzah! [01:54] Shaunzie has joined the channel [01:55] jesusabdullah: zodiak: http://javascript.crockford.com/javascript.html ctrl-f lisp [01:55] KShiho has joined the channel [01:55] jesusabdullah: Not that I'm much of a crockford fan but, yeah [01:55] zomg: zodiak: I tend to use whichever seems to suit the task best [01:55] zodiak: *reading* [01:56] zodiak: HAH! lisp in c's clothing.. interesting :D [01:56] jesusabdullah: Like, the lisp-like features are intentional [01:56] jesusabdullah: yeah [01:56] jesusabdullah: it's fairly well-known [01:56] zomg: I use map and filter a lot when working with arrays if I need to get a subset or some specific data out (say ID's of all objects) [01:56] zodiak: zomg, right! I found a library called Udon the other day. Lots of map/foldl etc [01:56] zomg: but I also use "classes" when it seems reasonable [01:56] zodiak: jesusabdullah, *phew* :D [01:57] Charuru has joined the channel [01:57] zodiak: thanks for the heads up .. and confirming I am not (that) mad ;) [01:57] zomg: hehe =) [01:57] insin: JavaScript's tagline should be "yeah, well, that's just like your opinion, or something" [01:57] zomg: Although I don't really consider JS that functional... say compare to Haskell it's nothing like that =) [01:58] zodiak: zomg, well, no. it's not =that= level of crazy ;) [01:58] zomg: It just has the convenient fp-ish ability to pass functions around and anonymous funcs etc. [01:58] zodiak: then again, I loathe how scala is trying to blend oo and fp .. that language.. bothers me. it .. jst feels .. 'wrong' [01:58] zomg: Yeah I've heard that comment about Scala before [01:58] zodiak: hard to explain. personal bias I reckon. [01:58] jesusabdullah: insin: That's just, like your opinion, man. [01:58] insin: 'xactly [01:59] jesusabdullah: js has gotten into its share of tumbles too [02:00] Dmitrijus: ;] [02:00] Dmitrijus: no way js is functional [02:00] zodiak: Dmitrijus, well, no, not 'pure' functional, as it doesn't really have the notion of 'pure functions' [02:00] zodiak: but.. it's definitely.. well. I ~feel~ fp is lurking under the covers ;) [02:01] zodiak: (there I go, using my 'feeling words' again) [02:01] dthompso99 has joined the channel [02:01] zodiak: as I said, open to be wrong/mad :D [02:02] zomg: Are you a woman? You seem to feel a lot of things [02:02] zomg: ;> [02:03] zodiak: zomg, it's what 6 years of therapy and about 20 of irc have taught me. make sure to express feelings clearly [02:03] zodiak: otherwise people take your statements as facts and .. flame on [02:03] zomg: haha [02:03] fomatin has joined the channel [02:03] zomg: that was a way too honest reply to my stupid joke [02:03] zodiak: zomg, meh .. it's all good. I am also canadian so .. we tend to express our feelings a lot ;D [02:03] Dmitrijus: zodiak: well, having pure functions is much more important imo :) [02:04] zodiak: Dmitrijus, agreed. I *heart* clojure for it's purity, but I also *heart* node for it's "get stuff done' ;> [02:04] Dmitrijus: zodiak: i mean, hey, you can even pass functions in c! :) [02:05] zodiak: Dmitrijus, if I ever write a webapp in C, please shoot me [02:05] Shaunzie: zodiak: It's not that bad ^_^ [02:05] equark has joined the channel [02:05] TheJH: http://blog.fefe.de/ - a very minimalistic blog (no comments or whatever), written in C by Fefe :D [02:05] zodiak: Shaunzie, you are evil incarnate sir/madam [02:06] zodiak: the only thing that could be worse than a C webapp, would be a C++ with STL webapp [02:06] TheJH: well, you can't say it's slow :D [02:06] zodiak: haH! [02:06] Shaunzie: C++ would actually be better cause it would be easier than C :P [02:07] zodiak: oh mercy. have you ever tried debugging C++ errors with a STL problem ? half a page output.. bleurgh :) [02:07] Dmitrijus: oh dude [02:07] Dmitrijus: c++ is the crap++ [02:07] Dmitrijus: c++ IS NO WAY EASIER [02:07] Shaunzie: O.O [02:08] tjfontaine: blame gnu, clang+llvm is better [02:08] Shaunzie: STL isn't that bad :-/ [02:10] tjfontaine: also re: c++ webapp an interesting framework is http://www.webtoolkit.eu/wt it didn't make me want to completely tear out my eyes [02:10] jesusabdullah: I suspect that c++'s biggest problem is just its size, and that if you stick to a manageable subset you're okay [02:10] jesusabdullah: my understanding are that a lot of projects end up choosing some manageable subset of c++ to focus on, often dictated by their choices in libraries [02:10] jesusabdullah: but idk that much about it truth be told [02:10] jesusabdullah: I just read wikipedia sometimes :) [02:10] Dmitrijus: jesusabdullah: true indeed :) [02:11] plutoniix has joined the channel [02:11] Dmitrijus: jesusabdullah: but why not just choose c? [02:11] TroyMG has joined the channel [02:11] tjfontaine: because sometimes not having to rewrite an object model is helpful [02:11] TroyMG: anyone know of an alternative to https://github.com/caolan/forms that is actually maintained? [02:12] wookiehangover has joined the channel [02:12] Dmitrijus: but let's stop this eternal c++ flamewar and continue on having silence related to node.js :) [02:12] jarek has joined the channel [02:12] jesusabdullah: Dmitrijus: Maybe you like some of c++'s features but not all of them [02:13] jesusabdullah: for example, I believe v8 uses templates like crazy [02:13] jesusabdullah: At least, this is what I've heard [02:13] jesusabdullah: maybe templates are really cool or something XD [02:13] Shaunzie: TroyMG: not that I know of , but I stopped looking. I ended up making better use of partials, helpers and node-validator+express-validator [02:13] jesusabdullah: tjfontaine: have you heard of the gobject system? [02:13] Aria: V8 uses templates, but not in crazy ways. [02:13] tjfontaine: jesusabdullah: have you *looked* at that awful copypaste mess? [02:13] Aria: Actually, it's a reasonably good problem space for templates. [02:13] TroyMG: thanks Shaunzie. thats too bad, but I guess I'll go down the same path [02:13] jesusabdullah: Aria: But to a significant capacity right? That's what I meant [02:14] Aria: (Since it's managing another language's resources, templates are a reasonable fit.) [02:14] Aria: ("Typenameonourside") [02:14] pointlessjon has joined the channel [02:14] Dmitrijus: Aria: hm, cool :) [02:14] tjfontaine: also you dont' get to argue the weight of c++ and suggest gobject in the same conversation [02:14] Shaunzie: Templates are actually kinda cool when used well. Really cool, scary as hell, but still really cool :3 [02:15] Aria: V8 doesn't exercise templates in ways that make the size balloon -- STL, on the other hand, does. Watch compilation time go through the roof as the compiler makes specializations for each instance of a type when it's used pervasively. [02:15] jesusabdullah: tjfontaine: I haven't! I just think it's interesting that they would develop this gobject thing instead of using c++ [02:15] jesusabdullah: I wonder why they did it [02:15] Aria: V8 keeps the number of combinations down. [02:15] Dmitrijus: Shaunzie: well, complex, harder to debug and so on. :) [02:15] Aria: Hehe. gobject is actually also really excellent. It's pretty much OOP done in C as well as you can do OOP in C. It's clean, extensible, understandable. [02:16] Dmitrijus: Aria: yep [02:16] Aria: Also, closer to the metal than most uses of C++ [02:16] Aria: You can really see what it's doing. [02:16] tjfontaine: gobject has its use cases, but it's not a swiss army knife to be sure [02:16] Shaunzie: Dmitrijus: yah more or less. but sometimes the benefits out way the risks :3 [02:17] Dmitrijus: Shaunzie: _sometimes_ :) [02:18] pointlessjon has left the channel [02:18] mansoor has joined the channel [02:19] butu5 has joined the channel [02:21] a_suenami has joined the channel [02:26] wink has joined the channel [02:31] JaKWaC has joined the channel [02:32] devongovett has joined the channel [02:35] wink has joined the channel [02:36] hotroot has joined the channel [02:37] hotroot has left the channel [02:37] blueadept` has joined the channel [02:38] devdazed has joined the channel [02:40] Kami_: idm [02:42] replore has joined the channel [02:42] replore_ has joined the channel [02:45] pointlessjon has joined the channel [02:46] Dmitrijus: Kami_: idm? [02:46] pointlessjon has left the channel [02:46] ryan_stevens has joined the channel [02:48] TimTim has joined the channel [02:52] ChrisMatthieu has joined the channel [02:54] boehm has joined the channel [02:55] ryanfitz has joined the channel [02:56] wink_ has joined the channel [02:59] kriskropd has joined the channel [03:02] k1ttty has joined the channel [03:05] ChrisMatthieu has joined the channel [03:13] Cake has joined the channel [03:15] blaenk has joined the channel [03:15] blaenk has joined the channel [03:17] wink has joined the channel [03:17] marcello3d has joined the channel [03:23] Brandon_R has joined the channel [03:23] Brandon_R: hey guys [03:23] Brandon_R: what is string decoder in node.js? [03:23] Brandon_R: it isn't in the docs [03:23] pizthewiz_ has joined the channel [03:25] m00p has joined the channel [03:25] marcello3d has joined the channel [03:25] TheDeveloper has joined the channel [03:26] Lingerance: Brandon_R: "string decoder"? [03:26] fcuk has joined the channel [03:26] Brandon_R: http://nodejs.org/docs/latest/api/string_decoder.html [03:27] Brandon_R: is that like some sort of encryption module [03:27] nicholasf: hi, so what's currently the best resource for learning node.js [03:27] nicholasf: ? [03:28] sriley has joined the channel [03:28] jhurliman has joined the channel [03:28] Brandon_R: just getting in there and writiing an app i would say is the best way to learn [03:28] pusewicz_ has joined the channel [03:29] Lingerance: Brandon_R: I think it's for utf stuff [03:29] Lingerance: crypto is for encryption [03:30] iaincarsberg has joined the channel [03:31] fomatin has left the channel [03:31] jayniz has joined the channel [03:31] jayniz has joined the channel [03:31] jayniz has joined the channel [03:31] Brandon_R: kool [03:31] dnyy has joined the channel [03:31] ChrisMatthieu has joined the channel [03:33] necromancer has joined the channel [03:33] Marak has joined the channel [03:33] chunhao_ has joined the channel [03:33] strax has joined the channel [03:34] thelifelessone has joined the channel [03:36] JakeyChan has joined the channel [03:36] TimTim has joined the channel [03:36] matjas has joined the channel [03:37] romainhuet has joined the channel [03:37] Me1000 has joined the channel [03:37] owenb has joined the channel [03:38] blaenk: hey how can I close stdout? it seems that since 0.6.1 you cannot [03:38] Aria: ! [03:38] blaenk: I want to do it because of a bug in a program I have to use, where it blocks if you run an external process that writes to stdout [03:38] blaenk: http://stackoverflow.com/questions/2394750/what-happens-when-a-process-is-forked/2394960#2394960 [03:38] McMAGIC--Copy has joined the channel [03:39] blaenk: supposedly if you close stdout it will have nothing to read/wait on and so it doesn't block [03:39] Cake has left the channel [03:39] Brandon_R: what do you guys think of zeromq? [03:39] Brandon_R: in node [03:40] MrNko has joined the channel [03:40] Draco__ has joined the channel [03:40] dekz has joined the channel [03:41] garann has joined the channel [03:41] jhurliman has joined the channel [03:42] zomg: Brandon_R: must be good if BF3 uses it! [03:42] Aria: Interesting protocol. [03:42] zomg: although not in node :P [03:43] Brandon_R: zeromq looks like it would be good in node [03:43] Brandon_R: same concepts like asyncio and epoll/kqueue etc [03:43] tylergillies has joined the channel [03:44] Aria: blaenk: new fs.SyncWriteStream(1).end() [03:44] terite has joined the channel [03:44] blaenk: Aria: thank you I will try that [03:44] robb1e_ has joined the channel [03:45] Aria: Brandon_R: It insists on threading. Its runtime is kind of "we take over for you", which isn't so friendly to node -- it works, but it's a bit alien. But the concepts and goals are very node-like. [03:45] Brandon_R: that's where i became a little iffy too [03:45] blaenk: Aria: I think it worked :) thank you, seems like that's the work around to just doing process.stdout.end() [03:45] Aria: Yep. [03:45] kriszyp has joined the channel [03:45] olegp has joined the channel [03:45] Aria: I'm not sure why process.stdout is disallowed now. [03:45] Aria: I blame windows. [03:46] Outsider__ has joined the channel [03:46] blaenk: haha [03:46] mmalecki: disallowed? [03:46] Aria: (I'd love to see zeromq's protocols implemented in node, without 0mq's runtime) [03:46] meandi4 has joined the channel [03:46] Aria: mmalecki: process.stdout.end() [03:46] Raynos has joined the channel [03:46] Aria: try it. [03:46] mmalecki: why the hell? [03:47] Aria: I'd love to know. [03:47] Lingerance: Aria: there is a zmq module... [03:47] mmalecki: meh, I'm going to sleep anyway, 04:47, lol [03:47] Aria: Lingerance: Right, which is a binding to the zmq runtime [03:47] Lingerance: Ah [03:47] Lingerance: What's so bad about their runtime? [03:48] Aria: It's alien to node, it pretends to be socketey, but it's not at all. [03:48] Dmitrijus: mmalecki: haha, where do you live? i have the same time! :) [03:48] mmalecki: night, #node.js. marry christmas, if there's still christmas somwehre [03:48] mmalecki: Dmitrijus: Poland [03:48] mmalecki: Dmitrijus: you? [03:48] Dmitrijus: mmalecki: netherlands, isee :) [03:48] Brandon_R: so zeromq's ideas in node sounds fun [03:48] mmalecki: Dmitrijus: hah :), silly timezones [03:48] dr0id has joined the channel [03:48] mmalecki: but yeah, anyway, night [03:48] Dmitrijus: bye :) [03:48] ryanfitz has joined the channel [03:50] hcchien has joined the channel [03:51] jergason has joined the channel [03:53] Brandon_R: why not just a zeromq bindings since it's c++ [03:53] strmpnk has joined the channel [03:53] Brandon_R: zeromq is mean't to be language agnostic [03:53] harthur has joined the channel [03:54] pksunkara has joined the channel [03:55] sveisvei has joined the channel [03:55] piscisaureus_ has joined the channel [03:58] socketio\test\87 has joined the channel [04:01] Shaunzie has joined the channel [04:04] ryanseddon has joined the channel [04:04] jeremyselier has joined the channel [04:05] blissdev has joined the channel [04:05] ncb000gt has joined the channel [04:05] tahu has joined the channel [04:07] duffman has joined the channel [04:11] jyp has joined the channel [04:12] marshall: hey node [04:13] marshall: how do I re-require a module that I've just edited without exiting the REPL? [04:15] Aria: munge require.cache [04:15] marshall: munge? [04:15] cmwelsh has joined the channel [04:15] mattly has joined the channel [04:15] bradwright has joined the channel [04:15] Aria: delete require.cache[require.resolve('yourlib')] [04:15] Aria: munge means "mess with". Sorry. [04:15] BruNeX has joined the channel [04:16] JasonSmith has joined the channel [04:16] duncanbeevers has joined the channel [04:16] metadaddy has joined the channel [04:16] TheJH: node agent is stupid. hold open those connections! :( [04:17] TheJH: if I have a DB, I want a bunch of persistent connections, not one per request :( [04:18] Aria: The http agent? [04:18] Aria: You don't have to use it. [04:22] TheJH: Aria, well, I want pooling and so on [04:22] TheJH: Aria, and I want request to work with it [04:23] Aria: Aaah. [04:23] Aria: So you just want a delay before the close-if-nothing-is-waiting? [04:24] enmand has joined the channel [04:24] harthur has joined the channel [04:27] lmatteis has joined the channel [04:27] majek has joined the channel [04:27] _th_n has joined the channel [04:28] Nomon__ has joined the channel [04:29] gavin_huang has joined the channel [04:35] hij1nx has joined the channel [04:36] sheng_ has joined the channel [04:37] luoluoluo has joined the channel [04:40] jyp_cloud has joined the channel [04:40] screenm0nkey has joined the channel [04:40] marshall: Aria: oh, thanks. [04:40] salazr_ has joined the channel [04:40] dscape has joined the channel [04:40] Hosh has joined the channel [04:41] marshall: now I'm having trouble looking over some database tasks [04:41] marshall: I'm trying to write a pair of functions that, when given a list of database names, it will try to create those databases [04:42] marshall: of course, the database creation part is async and it simply isn't working [04:42] marshall: and I have no idea why [04:42] marshall: I'll draw up an example [04:43] paulmillr has joined the channel [04:44] paulmillr: hey folks [04:44] jeremyselier_ has joined the channel [04:45] paulmillr: My class extends EventEmitter. Would it be idiomatic to emit events with errors? [04:45] paulmillr: this.emit(‘write’, error, result) [04:45] paulmillr: Or I need to emit another event? [04:45] paulmillr: this.emit(‘writeError’, error) [04:46] context: paulmillr: id stick to convention [04:46] pusewicz__ has joined the channel [04:46] joeyang has joined the channel [04:46] RushPL_ has joined the channel [04:46] context: its what people are use to, its what they expect [04:46] ryanseddon_ has joined the channel [04:47] Lingerance has joined the channel [04:47] paulmillr: yea, I know convention on callbacks, but it isn’t a callback. it is event. [04:48] marshall: http://codr.cc/s/9f3d77da/js [04:49] Sami_ZzZ_ has joined the channel [04:50] zomg: paulmillr: don't they usually come with an 'error' event.. so I'd use something like that [04:50] zomg: Do note that if you emit an 'error' it will always cause an exception to be thrown if you don't have a listener for it [04:51] paulmillr: nice. thanks for info [04:51] paulmillr has left the channel [04:52] zomg: marshall: is that a question in disguise? [04:52] k1ttty has joined the channel [04:53] CarterL has joined the channel [04:54] kazupon has joined the channel [04:54] remysharp has joined the channel [04:54] justicefries has joined the channel [04:55] Wizek_ has joined the channel [04:55] fomatin has joined the channel [04:55] dshaw_ has joined the channel [04:56] marshall: zomg: I asked the question before I wrote that codr [04:57] marshall: zomg: I'm trying to loop over some database names and create each one asyncronously, but it's not working at all [04:57] context: marshall: "isnt working" [04:57] marshall: zomg: any idea why? [04:57] context: please explain "it dont work" more [04:57] marshall: context: only the last item in the list of database names gets created [04:57] sveisvei has joined the channel [04:58] context: well create_the_db is being called. did you try checning the err object ? [04:58] context: id look there and check your create_the_db code [04:59] zomg: marshall: the issue is the typical closure in a loop issue [04:59] context: ahh, hahaha [04:59] context: zomg: good catch [05:00] zomg: https://developer.mozilla.org/en/JavaScript/Guide/Closures#Creating_closures_in_loops:_A_common_mistake [05:00] zomg: marshall: check that if you don't know what I mean :) [05:00] skm has joined the channel [05:00] marshall: ok [05:01] marshall: ACTION was just starting to think he knew javascript [05:01] zomg: hehe [05:02] zomg: Most people will stumble with that specific case, but once you understand how closures work it's pretty straightforward [05:02] shiawuen has joined the channel [05:07] merlin83 has joined the channel [05:08] _unary has joined the channel [05:08] JakeyChan has joined the channel [05:10] context: http://www.giantfreakinrobot.com/cool-stuff/sex-green-women-dennis-hof-opening-scifi-themed-brothel-nevada.html [05:10] context: can you say hot ! [05:10] luoluoluo has joined the channel [05:10] zechola has joined the channel [05:12] bneil_ has joined the channel [05:13] zechola has left the channel [05:14] jesusabdullah: wat [05:20] chakrit has joined the channel [05:24] mike5w3c has joined the channel [05:25] crcn has joined the channel [05:25] OmidRaha has joined the channel [05:25] windsurf_ has joined the channel [05:27] notifybot has joined the channel [05:28] kriszyp has joined the channel [05:29] windsurf_ has joined the channel [05:30] Swimming_Bird has joined the channel [05:32] windsurf_ has joined the channel [05:32] tytsim has joined the channel [05:33] k1ttty has joined the channel [05:33] Shaunzie has joined the channel [05:34] kriszyp2 has joined the channel [05:37] Aria: Yarr. Screw it, I'm going to bed. [05:37] otakutomo has joined the channel [05:37] Aria: the port to Windows has killed SCM_RIGHTS support in the generic case so badly that I can't do what I want without a lot of C++. [05:38] kejun has joined the channel [05:38] nicholasf: what's the best lib to use for unit testing my express app? [05:42] rgl has joined the channel [05:43] otakutomo has joined the channel [05:43] thelifelessone: can anyone tell me why express isn't serving my static files? [05:44] thelifelessone: I've configured it exactly the same way as the example project does, and I've even tried passing them through a route, and it still refuses to work. [05:44] shiawuen has joined the channel [05:45] devaholic has joined the channel [05:45] nicholasf: thelifelessone: you're still having this problem? [05:45] thelifelessone: nicholasf: Yep. [05:45] thelifelessone: I can't figure out why the hell it refuses to work [05:46] TroyMG: nicholasf: mocha is pretty sweet http://visionmedia.github.com/mocha/ [05:47] nicholasf: TroyMG: cheers, I'm looking into node-jasmine right now [05:47] notifybot1 has joined the channel [05:47] nicholasf: ACTION looks at mocha [05:49] nicholasf: yeh ok, I'll give mocha a go [05:49] rgl has joined the channel [05:53] nicholasf: thelifelessone: I'm a bit suspect about what you are doing but I'll paste a sample of my express server that serves from a static dir to you [05:54] nicholasf: https://gist.github.com/1522832 [05:55] equark has joined the channel [05:58] k1ttty has joined the channel [05:59] smatrix has joined the channel [06:00] ikuramedia has joined the channel [06:00] Shaunzie has joined the channel [06:01] Wa has joined the channel [06:04] kazupon has joined the channel [06:06] benvie: are you guys ready for more color in node? [06:06] Dmitrijus: wait, what? [06:07] benvie: my update to util.inspect should land sometime soon [06:07] Lingerance: My code is plenty colorful enough [06:07] benvie: actually a lot more than color [06:07] benvie: but also has color [06:07] Dmitrijus: awesome [06:08] ger^kallisti has joined the channel [06:08] Dmitrijus: ACTION dislikes color, but likes updates! :) [06:08] Dmitrijus: colors* [06:08] pquerna: more color, more updates [06:08] pquerna: are you not pleased! [06:08] benvie: yeah the color can be turned off [06:08] TroyMG: out of curiosity, does console.log(o) pass through to util.inspect if o is not a string? [06:08] benvie: yeah all the console stuff does [06:09] benvie: er [06:09] benvie: if you inspect an object [06:09] mike5w3c has joined the channel [06:09] Dmitrijus: benvie: sure sure :) [06:09] benvie: if it's formatted it's util.inspect [06:09] TroyMG: k, thats what I thought [06:09] TroyMG: I stopped using util.inspect because console.log seemed to do the same thing if passed an object rather than a string [06:10] benvie: util.inspect just let's you set the options manually [06:10] benvie: like if you want more depth [06:10] benvie: I have another project for adding a lot more stuff to the repl too [06:10] TroyMG: ah, k thanks [06:10] benvie: like .depth 4 [06:10] benvie: .hiddens [06:10] benvie: .colors [06:10] benvie: .builtins [06:10] benvie: toggles for that stuff [06:10] davetayls has joined the channel [06:11] TroyMG: nice. looking fwd to the colors :-) [06:11] benvie: also fixed contexts, the ability to generate more contexts and cycle through them [06:11] benvie: with color coded labeling for them [06:11] benvie: it's awesome [06:11] windsurf_ has joined the channel [06:12] benvie: http://bbenvie.com/img/inspect.png [06:12] benvie: that's with hiddens showing [06:12] benvie: hidden properties are darker [06:12] benvie: readonly only are cyan [06:12] benvie: dark and bight representing enumerable or not [06:12] IrishGringo has joined the channel [06:13] kishoreyekkanti has joined the channel [06:13] benvie: useless hidden properties on functions are hidden so inspecting with hiddens on isn't filled with clutter [06:13] Draco_ has joined the channel [06:14] benvie: it quotes strings with the quote that would result in the least amount of backslashes to escape the string so most of the time quotes don't need to be escaped [06:14] davetayls has joined the channel [06:14] cyborg: b [06:14] TroyMG: thats clever [06:15] benvie: the test cases for that are funny [06:15] benvie: assert.equal(util.inspect("''\""), '"\'\'\\""'); [06:15] Shaunzie: https://github.com/tblobaum/express-subdomains === love [06:17] TroyMG: Shaunzie: thats slick. watched [06:19] benvie: also an addition to the repl so that if you type a builtin libraries name as a command it auto requires it for you [06:19] benvie: fs [06:19] benvie: and adds it to the context [06:20] Lingerance: Huzzah! [06:20] Lingerance: That'll be in 0.6.7? [06:21] benvie: no, that one I'm waiting for feedback on the pull request [06:21] benvie: submitted it during the christmas exodus [06:21] benvie: the more complicated context stuff I'm going to make as a module for now [06:22] benvie: that completely redoes the way things are set up in new VM contexts because the way node does it now is broken. But having fixed it with some javascript magic, it's friggen awesome [06:22] benvie: I set it up so pageup, pagedown cycles the contexts [06:22] benvie: and they're all isolated contexts with their own stuff and inspect works [06:23] notifybot2 has joined the channel [06:23] benvie: you can add new ones with ctrl+insert and delete them with ctrl+delete [06:23] harthur has joined the channel [06:23] benvie: and by adding a module command to the repl you can require modules on the context without having to ever expose the require function or anything to the context [06:25] wookiehangover has joined the channel [06:25] jergason_ has joined the channel [06:28] _unary has joined the channel [06:29] Tobsn has joined the channel [06:33] sharkbird has joined the channel [06:34] notifybot3 has joined the channel [06:35] snearch has joined the channel [06:36] Shaunzie has joined the channel [06:37] notifybot4 has joined the channel [06:38] butu5 has joined the channel [06:41] insin has joined the channel [06:43] SamuraiJack has joined the channel [06:44] notifybot5 has joined the channel [06:45] notifybot6 has joined the channel [06:45] notifybot7 has joined the channel [06:45] devaholic: hm [06:45] butu5: yup.. bit annoying? [06:46] fomatin has left the channel [06:46] devaholic: not yet [06:46] harthur has joined the channel [06:49] notifybot8 has joined the channel [06:49] kazupon has joined the channel [06:50] Druide_ has joined the channel [06:52] dr0id: hi /notifybot[\d]?/ [06:55] butu5: dr0id: it won't do anything as of.. u want it do something?? any standard? [06:55] dr0id: yes [06:58] butu5: dr0id: currently it just read from #node.js channel and sending me some notification [07:01] CoverSlide has joined the channel [07:01] harthur has joined the channel [07:02] tokuz has joined the channel [07:06] RobWC has joined the channel [07:06] RobWC has left the channel [07:06] dexter_e has joined the channel [07:07] butu5 has left the channel [07:07] pronam has joined the channel [07:08] koo0 has joined the channel [07:08] koo3 has joined the channel [07:10] hotchkiss has joined the channel [07:11] boltR has joined the channel [07:12] boltR has joined the channel [07:15] aoberoi has joined the channel [07:16] kazupon has joined the channel [07:17] mikedeboer has joined the channel [07:18] brianloveswords has joined the channel [07:26] sh1mmer has joined the channel [07:27] savetheinternet has joined the channel [07:32] tytsim_ has joined the channel [07:32] joestein has joined the channel [07:34] Squeese has joined the channel [07:35] coderzach has joined the channel [07:37] tokuz has joined the channel [07:39] eddyb has joined the channel [07:39] eddyb: what's the standard way right now to create a native module? [07:39] eddyb: I mean, the building system and stuff [07:41] ivanfi has joined the channel [07:43] beawesomeinstead has joined the channel [07:44] eladb has joined the channel [07:45] captain_morgan has joined the channel [07:47] OmidRaha has joined the channel [07:48] Morkel has joined the channel [07:49] snearch has joined the channel [07:55] rendar has joined the channel [07:58] deoxxa: is there a way to make node-binary loop over a single buffer until it's completely drained? [07:58] deoxxa: .loop seems to almost do it, but it'd be recursive [07:59] deoxxa: which isn't exactly what i want [08:00] xy has joined the channel [08:00] eladb: anyone knows of a good way to autogen metadata on REST interfaces from node.js code? [08:01] admc has joined the channel [08:03] mikedeboer has joined the channel [08:04] HT has joined the channel [08:05] wmage has joined the channel [08:06] Me1000 has joined the channel [08:06] confoocious has joined the channel [08:06] braoru has joined the channel [08:06] tab1293 has joined the channel [08:07] luke` has joined the channel [08:07] mytrile has joined the channel [08:08] mytrile: Hey, guys. Can you recommend me a module for creating fake request for testing purposes ? [08:10] FiveLemon has joined the channel [08:15] epeleg has joined the channel [08:16] epeleg: can anyone here help with compilation of node.js in debian lenny ? [08:16] jyp has joined the channel [08:17] epeleg: anyone here at all? [08:17] Neil__ has joined the channel [08:18] neshaug has joined the channel [08:18] epeleg: can anyone here help with compilation of node.js in debian lenny ? [08:20] hlysig has joined the channel [08:20] hlysig: Morning. [08:20] franky has joined the channel [08:23] shinuza has joined the channel [08:24] aliem has joined the channel [08:25] paera has left the channel [08:26] RobWC has joined the channel [08:27] deoxxa: epeleg: asking every minute or so won't help - but since you seem to have figured that out, what's up? [08:27] deoxxa: epeleg: where are you up to so far? [08:28] michaelhartau has joined the channel [08:28] fangel has joined the channel [08:28] idefine has joined the channel [08:31] ablomen has joined the channel [08:31] jyp has joined the channel [08:32] context: dead night on irc [08:32] Druide_ has joined the channel [08:35] notifybot9 has joined the channel [08:36] CIA-109: node: 03koichik 07master * rb962ff3 10/ lib/tls.js : [08:36] CIA-109: node: tls: fix test-https-client-reject fails [08:36] CIA-109: node: Fixes #2417. - http://git.io/_SkASA [08:38] koo1 has joined the channel [08:39] p1d has joined the channel [08:40] erikzaadi has joined the channel [08:41] secoif has joined the channel [08:43] kazupon has joined the channel [08:44] mehlah has joined the channel [08:45] epeleg: deoxxa: I have tried git clone https://github.com/joyent/node.git [08:45] mehlah has joined the channel [08:45] epeleg: deoxxa: but I get error: The requested URL returned error: 403 [08:45] jbpros has joined the channel [08:46] epeleg: deoxxa: I am new to the unix arena [08:46] CIA-109: node: 03koichik 07v0.6 * ra337ac7 10/ (lib/http.js test/simple/test-http-pipe-fs.js): [08:46] CIA-109: node: http: fix XMLHttpRequest piped in a writable file stream hangs next request [08:46] CIA-109: node: Fixes #2263. - http://git.io/4wTdeQ [08:46] CIA-109: node: 03koichik 07v0.6 * re1c043f 10/ (13 files): [08:46] CIA-109: node: docs: fix docs to not suggest variable leaks [08:46] CIA-109: node: Fixes #2106. - http://git.io/ZucbaQ [08:47] fcoury has joined the channel [08:47] matjas has joined the channel [08:48] tomh has joined the channel [08:48] majek has joined the channel [08:48] ryanseddon_ has joined the channel [08:49] dnyy has joined the channel [08:51] mara has joined the channel [08:51] necromancer has joined the channel [08:51] _unary has joined the channel [08:52] fcuk has joined the channel [08:52] garann has joined the channel [08:55] shinuza has joined the channel [08:56] idea-squirrel has joined the channel [08:56] raincole has joined the channel [08:57] halfh has joined the channel [08:57] larssmit has joined the channel [08:59] tiglionabbit has joined the channel [08:59] daleharvey has joined the channel [08:59] jstonne has joined the channel [09:00] cmwelsh has joined the channel [09:00] ncb000gt has joined the channel [09:02] herbySk has joined the channel [09:04] andrew12: wow [09:05] jstonne has left the channel [09:06] jhurliman has joined the channel [09:08] kishoreyekkanti has joined the channel [09:08] rgl has joined the channel [09:08] amigojapan has joined the channel [09:09] Node has joined the channel [09:09] Raynos has joined the channel [09:10] djazz has joined the channel [09:11] djazz: im getting an error after a while on my http node.js server: src/uv-common.c:58: uv_err_name: Assertion `0' failed. Aborted (SIGABRT) [09:12] djazz: no js error [09:12] ger^kallisti has joined the channel [09:16] chjj: djazz: looks like there was no specified error number in the error map if that assertion failed: https://github.com/joyent/node/blob/master/deps/uv/include/uv.h#L69 [09:18] djazz: hm? [09:18] chjj: djazz: what version? [09:18] djazz: v0.6.1 [09:19] djazz: but i upgraded to 0.6.6 now [09:19] chjj: hmm [09:20] mytrile: epeleg: Download the tar.gz from the website [09:20] chjj: djazz: just curious, are you on windows? [09:20] churp has joined the channel [09:20] djazz: no, linux [09:21] djazz: ubuntu 10.04.3 [09:21] chjj: weird [09:21] cclarke has joined the channel [09:21] mytrile: epeleg: http://nodejs.org/dist/v0.6.6/node-v0.6.6.tar.gz [09:21] chjj: should probably post an issue if you get it again [09:21] djazz: chjj: i found this https://github.com/joyent/libuv/issues/206 [09:21] chjj: with 0.6.6 [09:22] chjj: :O [09:22] djazz: its closed [09:22] djazz: ah [09:22] djazz: ye [09:22] chjj: yeah, must be fixed now then [09:22] djazz: i run 11 nodejs servers, on different ports [09:23] djazz: http/websocket servers [09:23] mike5w3c has joined the channel [09:24] jstonne has joined the channel [09:25] `3rdEden has joined the channel [09:25] jstonne has left the channel [09:25] jstonne has joined the channel [09:25] rgl has joined the channel [09:29] k1ttty has joined the channel [09:29] ppcano has joined the channel [09:32] ppcano has joined the channel [09:34] hugdubois has joined the channel [09:35] hugdubois has joined the channel [09:38] eladb has joined the channel [09:42] Shaunzie has joined the channel [09:42] adambeynon has joined the channel [09:48] Wizek has joined the channel [09:48] eladb_ has joined the channel [09:49] vol4ok has joined the channel [09:50] ppcano has joined the channel [09:52] fly-away has joined the channel [09:53] mattgifford has joined the channel [09:56] boehm has joined the channel [09:56] matejv has joined the channel [09:57] socketio\test\27 has joined the channel [09:57] eladb has joined the channel [09:57] matejv has joined the channel [10:01] defied has joined the channel [10:04] context: djazz: use anything to manage them? [10:05] JakeyChan has joined the channel [10:05] mechanicles has joined the channel [10:05] mechanicles: Hi [10:05] mechanicles: all [10:06] p1d has joined the channel [10:06] davetayls: hey, does anyone know any good node modules for indexing and searching a bunch of text logs [10:06] insin has joined the channel [10:07] djazz: the servers? no.. [10:07] djazz: vnc? [10:07] djazz: :) [10:07] mechanicles: Please tell me, how to set environment variables in nodejs, means if i'm in production I want to set one url reference and if I'm in development I want to set other url. How could I do that? [10:13] erikzaadi has joined the channel [10:13] otakutomo has joined the channel [10:14] LeMike has joined the channel [10:14] context: davetayls: a doc store. mongo, Riak or something similar. [10:14] bergie has joined the channel [10:15] arcanis has joined the channel [10:15] context: or an normal db with something like ElasticSearch or solr [10:16] mikeal has joined the channel [10:16] davetayls: context: ok, i'll read up on those...they are all foreign to me :oS [10:17] davetayls: context: thanks for the pointer [10:17] FG has joined the channel [10:18] hackband has joined the channel [10:18] context: mechanicles: process.env [10:18] context: mechanicles: http://nodejs.org/docs/latest/api/process.html [10:19] context: davetayls: those are what i would use. not sure on specific modules [10:22] kazupon has joined the channel [10:22] djazz: context: how you mean manage? [10:22] djazz: handle crashes etc? [10:24] insin: anyone using mocha with Node's assert module? Is it expected/right that it eats the description of why a test failed if you provide a message when doing an assertion? [10:25] liar has joined the channel [10:26] mechanicles: context: thanks... [10:26] maushu|working has joined the channel [10:30] jimt has joined the channel [10:33] lzskiss has joined the channel [10:33] djazz1 has joined the channel [10:35] secoif has joined the channel [10:35] JakeyChan_ has joined the channel [10:39] versicolor has joined the channel [10:44] boogley has joined the channel [10:45] praveen_ has joined the channel [10:47] praveen_: Hi All [10:47] praveen_: latest build of node.js failed [10:47] praveen_: http://stackoverflow.com/questions/8643635/node-js-build-failed-with-task-cxx-node-zlib-cc [10:47] praveen_: Build failed: -> task failed (err #1): {task: cxx node_zlib.cc -> node_zlib_5.o} make: * [program] Error 1 [10:48] praveen_: any help or workaround? [10:49] `3rdEden: any node-mongodb-native users around? [10:51] d0k has joined the channel [10:52] __doc__ has joined the channel [10:53] Leemp has joined the channel [10:55] Shaunzie: `3rdEden: vicariously through mongoose :-/ [10:55] `3rdEden: Shaunzie have you ever closed your mongodb server while you where connected with hit? [10:56] `3rdEden: Because the node-mongodb-native driver keeps reporting it's connected, while the server is dead. [10:56] Shaunzie: Are you sure it's actually hitting the server? [10:58] Cromulent has joined the channel [10:58] Shaunzie: Even if mongd isn't running, it's still possible to launch my app which uses mongoose. [10:58] Shaunzie: I can navigate around to all all the pages until I actually hit the server, then node crashes like a fat mat after thanksgiving :D [10:59] avih has joined the channel [11:01] dexter_e has joined the channel [11:06] harthur has joined the channel [11:08] shinuza: praveen_: what version of g++? [11:08] Sami_ZzZ_ has joined the channel [11:08] praveen_: @shinuza, after installing openssl-devel i am able to do make install [11:08] praveen_: thanks [11:09] stagas has joined the channel [11:10] praveen_: # node bash: node: command not found [11:10] josh-k has joined the channel [11:10] praveen_: after successful installtion, node command is not working [11:10] praveen_: what setting is required in PATH [11:11] shinuza: praveen_: `which node` [11:11] praveen_: node.js [11:11] praveen_: on linux [11:11] shinuza: then that [11:11] shinuza: :) [11:11] `3rdEden: shinuza lol, sure I can navigate around and get tons of 500 errors on my app. But the connection is still shown as connected, and the mongodb driver isn't even attempting to reconnect :) [11:11] shinuza: if you did set a prefix I guess it should be in /usr/local/bin/ [11:11] praveen_: i am able to see man node [11:11] shinuza: didn't* [11:12] rai has joined the channel [11:12] praveen_: let me check [11:12] shinuza: `3rdEden: hum ok, probably not me you were looking for [11:12] `3rdEden: =p [11:12] shinuza: :p [11:12] `3rdEden: shinuza thanks for your input non the less <3! [11:13] shinuza: my pleasure [11:13] shinuza: beer? [11:13] praveen_: echo $PATH /sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin [11:14] adrianF has joined the channel [11:15] shinuza: praveen_: ls /usr/local/bin [11:15] shinuza: praveen_: ls /usr/local/bin | grep node [11:15] shinuza: even better [11:16] tomgallacher has joined the channel [11:17] TheJH has joined the channel [11:17] grekko has joined the channel [11:18] mendel_ has joined the channel [11:20] nicholasf has joined the channel [11:20] k1ttty has joined the channel [11:21] jstonne has joined the channel [11:23] jstonne has joined the channel [11:25] jstonne has joined the channel [11:30] p1d has joined the channel [11:30] AviMarcus has joined the channel [11:33] fairwinds_ has joined the channel [11:34] nassosdim has joined the channel [11:36] metalball2 has joined the channel [11:37] TheMoonMaster has joined the channel [11:37] hipsters_ has joined the channel [11:38] shedinja has joined the channel [11:39] Leemp2 has joined the channel [11:44] d0k_ has joined the channel [11:44] benvie: I wish windows has more than 16 colors [11:51] JKarsrud has joined the channel [11:54] Leemp has joined the channel [11:54] insin: is there a way to explicitly control whitespace before/after elements/text in Jade? [12:01] louissmit has joined the channel [12:03] eddyb: can I get an example of a native module? [12:09] stagas has joined the channel [12:10] shinuza: eddyb: in c++? [12:10] eddyb: yes [12:10] shinuza: https://github.com/shinuza/node-cc-module-boilerplate [12:10] eddyb: I hope that's with gyp [12:11] eddyb: dammit [12:11] eddyb: shinuza: does it work in the latest release? [12:11] shinuza: eddyb: yes [12:11] eddyb: I heard waf was deprecated :| [12:11] ryanfitz has joined the channel [12:11] shinuza: eddyb: probably, I hope it will be because the version bundled with nodejs is super outdated [12:12] shinuza: it does compile properly with the latest node version [12:12] shinuza: the example doesn't provide input on non-blocking ops tho [12:13] eddyb: let me see what files are installed by the nodejs package... [12:15] eddyb: shinuza: there's no gyp installed [12:15] cryptix has joined the channel [12:15] louissmit has joined the channel [12:15] shinuza: eddyb: is this supposed to be a problem? [12:16] eddyb: I think indutny lied/confused me [12:16] eddyb: ok, so I can just reuse some simple waf script [12:17] shinuza: eddyb: as of now yes [12:17] shinuza: but now that you mention it, there are some gyp references in the HEAD of the node git repo [12:18] jyp_cloud has joined the channel [12:18] shinuza: maybe there will be a move towards this in the future [12:19] Leemp2 has joined the channel [12:19] shinuza: eddyb: I think both gyp and waf are bundled [12:19] shinuza: fuck [12:19] shinuza: :) [12:20] eddyb: shinuza: HEAD uses gyp [12:20] eddyb: actually, 0.6 uses gyp [12:20] eddyb: but it's not used for .node modules [12:21] shinuza: ok [12:21] eddyb: [14:20] eddyb: node is going to use gyp since 0.7.x version [12:22] eddyb: not sure how proper is "going to .... since .... " :) [12:22] shinuza: ok [12:23] shinuza: going to [12:26] MerlinDMC has joined the channel [12:31] socketio\test\01 has joined the channel [12:33] FilipeDias has joined the channel [12:37] davetayls has joined the channel [12:38] hij1nx has joined the channel [12:38] booo has joined the channel [12:40] dscape has joined the channel [12:40] hipsters_ has joined the channel [12:42] cjroebuck has joined the channel [12:42] piscisaureus_ has joined the channel [12:43] tytsim_ has joined the channel [12:49] Leemp has joined the channel [12:51] CrisO has joined the channel [12:53] k1ttty has joined the channel [12:56] N0va` has joined the channel [12:59] amigojapan has joined the channel [13:03] fangel has joined the channel [13:04] louissmit has joined the channel [13:05] svnlto has joined the channel [13:05] josh_k has joined the channel [13:05] tomlion has joined the channel [13:06] thalll has joined the channel [13:06] minerale has joined the channel [13:06] minerale has joined the channel [13:10] rachet has joined the channel [13:11] kishoreyekkanti has joined the channel [13:12] wingie has joined the channel [13:12] wingie: whats the difference between having "0.9" and "0.9.x" as version nr in a package.json file? [13:14] stagas has joined the channel [13:14] FG_ has joined the channel [13:16] Emmanuel has joined the channel [13:16] jetienne has joined the channel [13:16] erichynds has joined the channel [13:17] erichynds has joined the channel [13:18] nail_: wingie: there's none [13:19] wingie: nail_: aight [13:22] kyonsalt has joined the channel [13:23] tuhoojabotti: Hmm [13:24] fumanchu182 has joined the channel [13:24] tuhoojabotti: Has anyone written HTCPCP module extending node's http module? [13:26] wingie: trying to install dnode but I get "Error: `tar "-zmvxpf" ..." [13:27] fangel has joined the channel [13:28] wingie: im on mac os x and it seems that dnode is using another version of tar [13:28] wingie: anyone knows how to solve this problem? [13:29] aliem has joined the channel [13:30] matejv has joined the channel [13:32] andrewfff has joined the channel [13:34] p1d has joined the channel [13:37] socialhack has joined the channel [13:39] adrianF has joined the channel [13:39] Emmanuel has joined the channel [13:40] zomg: wingie: you could try installing tar from macports, iirc it has those flags the osx one doesn't [13:43] wingie: hate macport :( [13:44] Edy has joined the channel [13:44] Edy has joined the channel [13:44] wingie: i created an issue .. perhaps another flag could be used so it will work on Mac [13:46] wingie: https://github.com/isaacs/npm/issues/1819 [13:47] devdazed has joined the channel [13:48] flip_digits has joined the channel [13:50] neurodrone has joined the channel [13:52] p1d has joined the channel [13:57] brianseeders has joined the channel [13:59] stagas has joined the channel [14:00] ovaillancourt has joined the channel [14:01] lazyshot has joined the channel [14:01] ph^ has joined the channel [14:03] RLa has joined the channel [14:04] hotchkiss has joined the channel [14:05] munichlinux has joined the channel [14:07] V1 has joined the channel [14:09] stinnes has joined the channel [14:10] Cromulent has joined the channel [14:12] pronam has joined the channel [14:13] webguynow has joined the channel [14:15] pandeiro has joined the channel [14:16] kriszyp has joined the channel [14:20] cody-- has joined the channel [14:23] devdazed has joined the channel [14:26] joshsmith has joined the channel [14:26] FG has joined the channel [14:27] postwait has joined the channel [14:29] postwait: pquerna / ryah : looks like all the multicast/broadcast stuff on dgram is "not implemented" in v0.6? [14:31] OmidRaha has left the channel [14:34] dambalah has joined the channel [14:34] socketio\test\25 has joined the channel [14:35] martndemus has joined the channel [14:35] draginx has joined the channel [14:36] draginx: Why does http://danieldurante.com/ show up as 404 on IE but not in Chrome? O_o [14:37] carlyle has joined the channel [14:37] socketio\test\41 has joined the channel [14:38] socketio\test\40 has joined the channel [14:38] ppcano has joined the channel [14:39] bnoordhuis has joined the channel [14:39] yorick: I want to make a site with some registering + authentication and then some user administration (with privileges that can be allocated) [14:39] yorick: is there any framework for this? what database should I use? [14:40] mongrelion: there are plenty of web frameworks for nodejs out there [14:41] wbednarski has joined the channel [14:41] mongrelion: expressjs, geddyjs, flatironjs, just to list a few [14:42] _eddyb_ has joined the channel [14:43] mongrelion: and I think either relational or no-relational databases fit your need, yorick [14:43] kishoreyekkanti has joined the channel [14:44] yorick: mongrelion: it's mostly for a data-viewing webinterface. the admin sets up devices and sets up users to be able to access certain devices. the data may come from elsewhere, it is frequently updated [14:46] mongrelion: I'd go for mongodb in that case [14:46] hij1nx has joined the channel [14:46] xy has joined the channel [14:46] mongrelion: painless denormalization :D [14:47] juria_roberts has joined the channel [14:50] wingie: yorick: i would use express since its the most mature one [14:51] wingie: and have a look at Neo4j and see if it fits [14:51] yorick: wingie: does it work with 0.6? [14:51] wingie: good for handling user privilegies [14:51] wingie: yes [14:51] wingie: im on 0.6.6 [14:52] pickels_ has joined the channel [14:53] xemium99 has joined the channel [14:53] xemium99 has left the channel [14:54] stagas has joined the channel [14:54] churp has joined the channel [14:55] herbySk has joined the channel [14:56] hipsters_ has joined the channel [14:57] jimt_ has joined the channel [14:58] idle-boy has joined the channel [14:59] wmage has joined the channel [15:00] draginx1 has joined the channel [15:01] thomblake has joined the channel [15:01] jstash has joined the channel [15:01] Salam has joined the channel [15:03] cstamas has joined the channel [15:03] thomblake has left the channel [15:03] cstamas: hi [15:03] cstamas: I am having build problems with node 0.6.6 [15:04] CarterL has joined the channel [15:04] cstamas: http://pastebin.com/6gLfRewg [15:04] cstamas: thx [15:05] wmage: I got 99 problems but a build ain't one [15:05] wmage: sorry I'm not helpful [15:05] cstamas: :) [15:06] rsa3173 has joined the channel [15:06] rsa3173 has left the channel [15:07] davidwalsh has joined the channel [15:09] enmand has joined the channel [15:09] socialhack has joined the channel [15:09] rsa3173 has joined the channel [15:10] descipher has joined the channel [15:12] mandric has joined the channel [15:12] nrstott has joined the channel [15:12] descipher has joined the channel [15:13] Swimming_Bird has joined the channel [15:13] cnu has joined the channel [15:14] cstamas: wtf? node needs zsh? [15:14] zemanel has joined the channel [15:14] level09 has joined the channel [15:15] Lingerance: cstamas: It does not [15:15] kishoreyekkanti has joined the channel [15:15] descipher has joined the channel [15:15] cstamas: Lingerance: I installed zsh, now it builds ok [15:16] cstamas: I am building in a zsh environment [15:16] Lingerance: Probably an env-var difference [15:16] napperjabber has joined the channel [15:16] draginx1 has left the channel [15:16] cstamas: maybe then some enviroment thing [15:16] cstamas: Lingerance: yup [15:16] cstamas: i took a while to find out [15:16] cstamas: strace to the rescue [15:17] rope has joined the channel [15:17] ppcano has joined the channel [15:18] Neil__ has joined the channel [15:18] equark has joined the channel [15:18] descipher has joined the channel [15:19] ChrisMatthieu has joined the channel [15:20] heavysixer has joined the channel [15:21] skylamer` has joined the channel [15:21] RLa: anyone tied backend written in qt into node js? [15:21] luoluoluo has joined the channel [15:22] RLa: i wonder what options are there [15:23] bshumate has joined the channel [15:23] RLa: run qt backend as normal app and communicate through stdin/out or make native module out of it [15:25] davetayls has joined the channel [15:26] mike5w3c has joined the channel [15:28] napperjabber has joined the channel [15:29] socialhack has joined the channel [15:29] socialhack has joined the channel [15:31] hemanth has joined the channel [15:33] hemanth: new to node, trying to get "test" out of the ulr like example.com/test ; url.parse(req.url).pathname will give be /test [15:33] hemanth: which is the right way of doing it ? [15:33] BrianE has joined the channel [15:34] cjm has joined the channel [15:34] hemanth: SubStack: meow [15:34] mongrelion: hemanth: fancy a middleware? :) [15:35] jmar777 has joined the channel [15:35] niloy has joined the channel [15:36] hemanth: replace(/.*\/|\.[^.]*$/g, ''); ? [15:36] niloy: hi, can someone tell me if accessing mac address is possible in node? [15:36] hemanth: mongrelion: kina ;) [15:36] mongrelion: hemanth: use connect :) [15:36] hemanth: niloy: yes [15:36] hemanth: mongrelion: roger that [15:37] niloy: hemanth: can you plz tell me how? [15:39] cjm has joined the channel [15:40] magnetik has joined the channel [15:42] socialhack_ has joined the channel [15:42] hemanth: niloy: require('child_process').spawn() [15:42] magnetik: hi [15:43] magnetik: I'm using a https.createServer but I want to save a few things related to each "session", is there any support buit-in in node ? [15:43] level09 has joined the channel [15:43] yungchunglin has joined the channel [15:43] socialhack has joined the channel [15:44] churp has joined the channel [15:44] CarlosC has joined the channel [15:44] wbednarski has joined the channel [15:44] cjm has joined the channel [15:46] CarlosC has joined the channel [15:46] fermion has joined the channel [15:46] niloy_ has joined the channel [15:46] niloy_: is it possible to access mac address of hosts connecting via http? [15:47] slickplaid: niloy_, no. I don't believe so. [15:47] slickplaid: http://stackoverflow.com/questions/3309122/get-mac-address-from-http-request [15:47] niloy_: slidckplaid: is it an issue with node or just the way tcp/ip stack is built? [15:48] piscisaureus_: hey, any npm experts here? [15:48] niloy_: slickplaid: thanks [15:49] slickplaid: niloy_, the way networking works, not an issue with node. [15:49] slickplaid: piscisaureus_, i hear isaacs is pretty good at it [15:49] piscisaureus_: yeah but isaacs is not around [15:50] piscisaureus_: I am looking for an npm command that reads package.json and installs all dependencies [15:50] slickplaid: doesn't `npm install .` work? [15:50] tuhoojabotti: :D [15:50] Venom_X has joined the channel [15:51] hij1nx has joined the channel [15:53] piscisaureus_: hmm [15:53] piscisaureus_: :-) [15:53] niloy_: how can I check in node if a particular package is installed or not? [15:53] MUILTR has joined the channel [15:54] tuhoojabotti: niloy_: Apparently, it is possible to get mac address from the router with an iframe exploit. [15:54] tuhoojabotti: :D [15:54] mongrelion: lol [15:54] niloy_: tuhoojabotti: really? but I am talking about node here? [15:55] tuhoojabotti: niloy_: Sure, but yeah the point is you can't [15:55] tuhoojabotti: http://www.youtube.com/watch?v=2ctRfWnisSk it's funny though [15:55] slickplaid: s/cant/shouldnt/ [15:56] slickplaid: if you really want their mac address, you can probably get it somehow [15:56] tuhoojabotti: True [15:56] slickplaid: but the question is, do you /really/ need it? [15:56] slickplaid: kind of a privacy thing, I would think [15:56] niloy_: i made a nodejs server for use in our office, I want to be able to display names instead of IP, but everyone has dynamic IP, so mac address would help [15:57] c4milo has joined the channel [15:57] Pilate: or you could just implement some sort of auth [15:57] slickplaid: niloy_, if you network is set up properly, you can probably get it... but why use a MAC address for that? why not auth or ip? [15:57] tuhoojabotti: set up static ips [15:57] matejv has joined the channel [15:57] niloy_: everyone has dynamic IP, auth is overkill [15:58] Pilate: 'enter your name' is more overkill than trying to get mac addresses via a router exploit? [15:58] slickplaid: cookies? sessions? trivial to implement [15:58] niloy_: 'enter your name' is simple but can be faked too easily [15:58] slickplaid: ahh you guys are killing me... I'm suppose to be working :D [15:58] RLa: display names instead of IP <- what names? human or dns? [15:58] Pilate: youre using it for your office [15:58] niloy_: RLa: human names [15:59] tuhoojabotti: Some one kick slickplaid [15:59] niloy_: Pilate: yes [15:59] Pilate: how much of a problem will 'faking' be? and if faking is an issue, you can fake mac addresses [15:59] Pilate: in which case your whole system is garbage [15:59] slickplaid: tuhoojabotti, don't tempt them, I've been kicked out of here before :D [15:59] niloy_: Pilate: I know, but they aint that tech savvy [15:59] tuhoojabotti: lol [15:59] RLa: is there central ldap in office, mybe you can use that? [16:00] christophsturm has joined the channel [16:00] slickplaid: how big of an office? how many segments? Just rig the dhcp to hand out static ip's for each mac [16:00] slickplaid: then you have an IP tied to the mac address [16:01] slickplaid: then use the IP [16:01] niloy_: slickplaid: that is possible, but thats not my job! [16:01] criswell has joined the channel [16:03] _unary has joined the channel [16:03] slickplaid: there is probably a hundered and one ways you can go about this, but every one we've suggested you don't want to do... why are you so hung up on the mac address solution and *only* using a mac address? [16:03] tuhoojabotti: niloy_: It's actually in the beginning of this http://www.youtube.com/watch?v=vJtmZZGcR54 [16:04] niloy_: because its transparent to the end user, appears like a magic :D [16:04] niloy_: tujoojabotti: lemme check it out [16:05] tjfontaine: you could use the node pcap stuff and get the mac address that way [16:05] tjfontaine: lots of overhead [16:05] iRoj has joined the channel [16:06] tjfontaine: get a request, look at the ip, do an arp request [16:06] wankdanker has joined the channel [16:06] herbySk has joined the channel [16:08] socialhack has joined the channel [16:08] niloy_: tjfontaine: thanks, will look into it, do you have a link? [16:09] dmojoryder has left the channel [16:09] niloy_: tujoojabotti: the link seems interesting, thanks [16:09] hipsters_ has joined the channel [16:09] socialhack has joined the channel [16:11] tuhoojabotti: niloy_: It's tuhoojabotti. But yeah, it's funny. [16:12] tjfontaine: niloy_: quick and easy would be on request, pass the ip and exec arp command line [16:12] IrishGringo has joined the channel [16:12] niloy_: tjfontaine: oh yeh thanks [16:13] jaha has joined the channel [16:14] k1ttty has joined the channel [16:14] koo0 has joined the channel [16:14] albertosh has joined the channel [16:14] boltR has joined the channel [16:18] wbednarski has joined the channel [16:21] isufy has joined the channel [16:21] wbednarski has joined the channel [16:21] aaronmcadam has joined the channel [16:24] cstamas: github seems to have errors [16:26] bkaney has joined the channel [16:26] neurodrone has joined the channel [16:28] plutoniix has joined the channel [16:29] blueadept has joined the channel [16:30] jaequery has joined the channel [16:31] mandric has joined the channel [16:33] xemium99 has joined the channel [16:33] CarterL has joined the channel [16:33] xemium99 has left the channel [16:35] davetayls has joined the channel [16:37] zwiep: any good example / blog online that explains in detail how to create your own Readable/Writable Stream? [16:38] FG has joined the channel [16:40] jyp has joined the channel [16:42] cjm has joined the channel [16:43] EuroNerd has joined the channel [16:43] ovaillancourt has joined the channel [16:45] Brandon_R has joined the channel [16:46] kishoreyekkanti has joined the channel [16:46] Brandon_R: Hey guys [16:47] confoocious has joined the channel [16:47] patcito has joined the channel [16:49] lzskiss has joined the channel [16:51] caolanm has joined the channel [16:54] tbranyen has joined the channel [16:55] txdv: whats with the common.js site? [16:55] EhevuTov has joined the channel [16:56] AndreasMadsen has joined the channel [16:56] kenperkins has joined the channel [16:57] GrizzLyCRO has joined the channel [16:59] Brandon_R: u9 [17:00] piscisaureus_ has joined the channel [17:00] addisonj has joined the channel [17:00] ryan_stevens has joined the channel [17:00] captain_morgan has joined the channel [17:02] Wizek has joined the channel [17:03] mansoor has joined the channel [17:03] meandi4 has joined the channel [17:03] stagas has joined the channel [17:04] kishoreyekkanti_ has joined the channel [17:05] fangel has joined the channel [17:05] magnetik has joined the channel [17:06] kitt has joined the channel [17:07] MUILTR has joined the channel [17:09] shripadk has joined the channel [17:10] Somebi has joined the channel [17:11] Cromulent has joined the channel [17:13] Wizek-other has joined the channel [17:14] cclarke has joined the channel [17:18] CrypticSwarm has joined the channel [17:19] hellp has joined the channel [17:21] ChrisMatthieu has joined the channel [17:21] bemson has joined the channel [17:22] cjlicata has joined the channel [17:24] mbrevoort has joined the channel [17:28] ryan_stevens has joined the channel [17:31] cclarke has joined the channel [17:32] cjm has joined the channel [17:32] socialhack has joined the channel [17:32] isufy has joined the channel [17:33] markdaws has joined the channel [17:33] stagas has joined the channel [17:34] cclarke has joined the channel [17:34] carlyle has joined the channel [17:37] braoru has joined the channel [17:37] cclarke has joined the channel [17:37] synkro has joined the channel [17:37] cstamas: I am watching http://www.youtube.com/watch?v=7lP0sBwv46c [17:37] cstamas: but i do not have hookio-repl [17:38] pksunkara: cstamas: which hookio version are you using? [17:38] pksunkara: if 0.8.x, try hookio --repl [17:38] cstamas: oh, ok [17:38] cstamas: I tried with one dash [17:39] cstamas: thx [17:39] Naked has joined the channel [17:39] Naked: arrrhg, this is driving me nuts! [17:40] piscisaureus_ has joined the channel [17:40] Naked: where in nodejs is the behaviour implemented that when a stream's 'data' listener throws an exception, an 'error' is emitted and the stream is closed? [17:40] akiva has joined the channel [17:40] zmbmartin has joined the channel [17:40] Naked: I've tried to trace this from the source code from both 0.4.12 which is in debian and 0.6.6 which is the latest [17:40] zmbmartin has left the channel [17:41] paq has joined the channel [17:41] Naked: there seems to be a plain self.emit('data', value); call with no try/catch block around it - and this function seems to be called directly as an onread callback from the C-side [17:42] notifybot has joined the channel [17:42] notifybot1 has joined the channel [17:42] FG has joined the channel [17:42] Naked: and the C-side seems to call FatalException if the callback given there throws something [17:43] churp has joined the channel [17:44] Swimming_Bird has joined the channel [17:44] cjm has joined the channel [17:45] Naked: I'm getting a bit desperate here... [17:46] jsurfer has joined the channel [17:47] JaKWaC has joined the channel [17:47] AndreasMadsen: Naked: What is the problem really? [17:47] JaKWaC has joined the channel [17:48] slloyd_air has joined the channel [17:49] mattgifford has joined the channel [17:49] Naked: AndreasMadsen: the plain EventEmitter doesn't catch exceptions, so calling emit() on it will just propagate the exception to the caller if some listener throws an exception [17:49] Naked: AndreasMadsen: however, this doesn't seem to be the case for TCP connections, where if a 'data' event listener throws an exception, an 'error' event is emitted and the stream closed [17:50] Naked: AndreasMadsen: and I'm trying to find out the lines in the code where this behaviour is implemented... [17:50] AndreasMadsen: Naked: I have seen that code line - standby [17:50] Naked: AndreasMadsen: for 'connect' event this is obvious: try { this.emit('connect'); } catch (e) { this.destroy(e); return; } [17:51] Naked: AndreasMadsen: but I can't find out which part of code does it for 'data' [17:51] Naked: AndreasMadsen: thanks for looking in to it [17:51] PhilK has joined the channel [17:52] cclarke has joined the channel [17:52] AndreasMadsen: Naked: This was the code I was thinking about https://github.com/joyent/node/blob/master/lib/events.js#L40-54 but that is not you issue, right? [17:53] Naked: AndreasMadsen: no - that handles the special case where if an 'error' event is emitted in *any* eventemitter, and there are no listeners for it, an exception is propagated [17:53] AndreasMadsen: Naked: I know, just wanted to be sure will look intro the exact issue :) [17:54] Naked: AndreasMadsen: yeah, thanks [17:54] Naked: whoops, let me rework my test... [17:55] alexzin has joined the channel [17:55] FG has joined the channel [17:55] Naked: AndreasMadsen: found out why I couldn't locate the code... there isn't one! the exception is thrown to uncaughtExceptionHandler... [17:55] Naked: AndreasMadsen: my test was actually in 'connect' by accident [17:55] Naked: venting publicly about problems seems to help... :-) [17:56] AndreasMadsen: connect as in module or event [17:56] Naked: AndreasMadsen: 'connect' event - for which the try catch exists as I showed... [17:57] kyonsalt: any1 ever wrote db/schema.js for railway. Give me a copy. [17:57] AndreasMadsen: Naked: Well the best kind of help to give is the one where you don't to anything and everybody is happy :) [17:57] Naked: AndreasMadsen: true, that :) [17:57] Naked: afk -> [17:58] fomatin has joined the channel [17:58] Fredrik1994 has joined the channel [17:58] N0va` has joined the channel [18:02] pgherveou has joined the channel [18:02] pgherveou has joined the channel [18:04] lzskiss has joined the channel [18:05] stonebranch has joined the channel [18:07] kishoreyekkanti has joined the channel [18:08] cclarke has joined the channel [18:09] shinuza has joined the channel [18:09] jamesbathgate has joined the channel [18:10] ChrisMatthieu_ has joined the channel [18:10] akter has joined the channel [18:12] cclarke has joined the channel [18:12] oznn has joined the channel [18:13] Nathan has joined the channel [18:17] Shaunzie has joined the channel [18:20] eb4890 has joined the channel [18:22] zeunix has joined the channel [18:22] martndemus has joined the channel [18:25] brianloveswords has joined the channel [18:28] stagas has joined the channel [18:30] socialhack_ has joined the channel [18:30] liar has joined the channel [18:31] luke` has joined the channel [18:32] snearch has joined the channel [18:33] snearch has joined the channel [18:34] EyePulp has joined the channel [18:37] AndreasMadsen: .. 3..toString() [18:37] catb0t: "3" [18:37] flagg0204 has joined the channel [18:37] AndreasMadsen: .. [0] === false [18:37] catb0t: false [18:37] AndreasMadsen: .. [0] === true [18:37] catb0t: false [18:37] AndreasMadsen: Oh dear [18:40] Venom_X: .. [0] == false [18:40] catb0t: true [18:40] Venom_X: .. [0] == true [18:40] catb0t: false [18:41] tbranyen: .. 3.toString() [18:41] catb0t: Exception: SyntaxError: Unexpected token ILLEGAL [18:41] tbranyen: heh what a crap interpreter [18:42] TheJH: tbranyen, no, that's the fault of the spec [18:42] AndreasMadsen: tbranyen: Year i just hit the [0] issue when doing if (arr && arr[0]) [18:43] cmr: .. process.kill(process.pid) [18:43] catb0t: Exception: ReferenceError: process is not defined [18:43] StanlySoManly has joined the channel [18:43] cmr: Darn [18:43] AndreasMadsen: cmr: Nice try [18:43] Venom_X: .. process.kill(0) [18:43] catb0t: Exception: ReferenceError: process is not defined [18:43] tbranyen: leet hacks [18:43] stagas has joined the channel [18:43] TheJH: cmr, Venom_X, that code doesn't run inside node [18:44] ivanfi has left the channel [18:44] swaj: behold the best christmas tree ever :) http://boingboing.net/2011/12/24/portal-xmas-tree.html [18:44] TheJH: cmr, Venom_X, it runs inside of a nearly-vanilla v8 [18:44] Venom_X: oh [18:45] AndreasMadsen: .. [0] === [0] [18:45] catb0t: false [18:46] AndreasMadsen: Oh, dear JavaScript you can be the worst possible wife [18:46] AndreasMadsen: I have leaned to accept: [18:46] AndreasMadsen: .. NaN === NaN [18:46] catb0t: false [18:46] AndreasMadsen: But not [0] === [0] [18:47] swaj: .. [] === [] [18:47] catb0t: false [18:47] TheJH: AndreasMadsen, erm... if you make two new arrays, they are different arrays although they contain the same stuff [18:47] cmr: Same gotcha as python [18:47] swaj: yeah seems pretty standard for me [18:47] cmr: except they use 'is' instead of === [18:47] swaj: since it's a reference type, no? [18:47] cmr: (identity and not equality) [18:48] TheJH: AndreasMadsen, when `a === b`, applying stuff to a means that it also has to happen for b [18:48] defunctzombie has joined the channel [18:48] defunctzombie has left the channel [18:48] TheJH: AndreasMadsen, var a=[],b=[]; a.push(1) // now a and b contain different stuff [18:49] pgherveou has joined the channel [18:51] swaj: .. [0] == [0] [18:51] catb0t: false [18:52] tomgallacher has joined the channel [18:52] pig has joined the channel [18:56] chrispaterson has joined the channel [18:57] V1 has joined the channel [18:57] chrispaterson: Can anyone recommend a deferred object module? [18:58] tbranyen: underscore.deferred [18:58] chrispaterson: Thanks tbranyen [18:59] blup has joined the channel [18:59] devdazed: hi all, when writing integers to a buffer, how would I write a 64 bit integer, or long? [19:00] devdazed: in the docs I see writeInt32LE and writeInt32BE but no writeInt64 [19:00] davehamptonusa has joined the channel [19:00] Sami_ZzZ_ has joined the channel [19:02] maushu has joined the channel [19:02] idle-boy has joined the channel [19:03] mraleph has joined the channel [19:04] piscisaureus__ has joined the channel [19:04] munro: devdazed: LE stands for little endian and BE stands for big endian, so you have to figure out what you mean by 64 bit integer, endianness is very import when writing network applications [19:04] neilk_ has joined the channel [19:04] devdazed: i understand what byte order is [19:04] devdazed: i want to know how to write a long, as the only 64 bit option is double [19:04] devdazed: and that does not pack the same as a long [19:05] levi501d has joined the channel [19:05] napperjabber has joined the channel [19:05] devdazed: and if it matters, I need to write in big endian [19:05] jsvana: Does anyone here use Stylus for their stylesheets? I'm using what the JavaScript API reference says to use to compile, but the render function is failing and saying that the string of stylus code has no function 'replace'. [19:06] levi501d has joined the channel [19:07] markdaws has joined the channel [19:08] markdaws has joined the channel [19:08] bemson has joined the channel [19:08] munro: devdazed: ah, I see what you mean, you'll have to roll your own writeInt64BE, using writeInt32BE, javascript can't native handle properly represent 64 ints, but I think BigNum can [19:08] munro: https://github.com/jtobey/javascript-bignum [19:08] davehamptonusa: Looking for the best npm installable Deferred Object module (as in CommonJS Promises/A) Any suggestions [19:08] rgl has joined the channel [19:08] jorgen_ has joined the channel [19:08] AndreasM_ has joined the channel [19:09] devdazed: munro: i was under the impression that a javascript number was 64 bits, is it not? [19:09] ChrisMatthieu_ has joined the channel [19:11] braoru has joined the channel [19:12] munro: devdazed: 64 bit floating points, but not integers [19:12] devdazed: oh, i see [19:12] devdazed: ill have a look at bigint. thanks munro [19:13] Shaunzie has joined the channel [19:13] munro: devdazed: https://github.com/substack/node-bigint <-- ah SubStack has a libgmp wrapper! BigNum is very slow because it's all native JS math [19:15] devdazed: ok, ill have a look. thanks again [19:15] blueadept has joined the channel [19:15] blueadept has joined the channel [19:16] blueadept: would anyone might know why if javascript might be failing to init a click event after a mustache.js template has loaded data on to the screen? [19:16] blueadept: same html, markup, but after mustache.js loads the new data, jquery events break [19:17] duffman has joined the channel [19:17] metalball2 has joined the channel [19:17] metalball2 has left the channel [19:20] davehamptonusa: Looking for the best npm installable Deferred Object module (as in CommonJS Promises/A) Any suggestions [19:20] wmage has joined the channel [19:21] mmalecki: ryah: hey. it'd be cool to update the intro video, it's confusing people now: https://twitter.com/mattwilcox/status/151744358687850496 [19:22] agnat_ has joined the channel [19:22] admc has joined the channel [19:23] zeunix has joined the channel [19:23] redir_ has joined the channel [19:24] ryah: if only we had a better intro video [19:24] tab1293 has joined the channel [19:24] davetayls has joined the channel [19:24] tbranyen: i will make said video using a chris rock soundboard [19:25] mmalecki: ryah: oh? hire Marak, he'll rap some introduction :) [19:25] mmalecki: s/hire/ask/ [19:28] nopnop has joined the channel [19:28] BrianE has joined the channel [19:28] addisonj: does anyone know of a socket.io store that uses mongodb instead of redis? [19:28] iRoj has joined the channel [19:29] addisonj: my search is proving fruitless [19:33] aliem_ has joined the channel [19:38] jocafa has joined the channel [19:39] josephmoniz has joined the channel [19:41] subbyyy has joined the channel [19:44] igl1 has joined the channel [19:45] marcello3d has joined the channel [19:45] Guest18468 has joined the channel [19:45] rudolfrck has joined the channel [19:50] erikzaadi has joined the channel [19:51] AviMarcus has joined the channel [19:52] martndem_ has joined the channel [19:52] admc has joined the channel [19:52] TheIronWolf has joined the channel [19:53] iRoj has joined the channel [19:58] Nathan has joined the channel [19:59] nrstott has joined the channel [20:02] shinuza has joined the channel [20:04] stagas has joined the channel [20:07] FG_ has joined the channel [20:07] Magnars has joined the channel [20:07] FG has joined the channel [20:10] LeMike has joined the channel [20:10] FG has joined the channel [20:13] luke`_ has joined the channel [20:14] feeeR has joined the channel [20:16] insin: MOCHA: Y U MAKE WRITE TEST() FOR EVERY OUTPUT LINE? yunoguy.gif [20:17] louissmit has joined the channel [20:18] nathanpalmer has joined the channel [20:18] stefpb has joined the channel [20:20] wmage: which is the best testing framework [20:20] wmage: ACTION grabs popcorn [20:21] orospakr: Is there ever a reason the callback supplied to fs.readdir() might be called with the files parameter being undefined? [20:21] erichynds has joined the channel [20:22] mmalecki: wmage++ [20:23] orospakr: wmage, mmalecki, how does it compare to jasmine? [20:23] marcello3d has joined the channel [20:23] wmage: jasmine looks very nice too [20:23] wmage: all I've tried is nodeunit [20:24] wmage: and I want something better [20:24] josephmoniz: vows looks promising [20:24] TheJH: orospakr, yes, if the error is set [20:24] josephmoniz: i <3 error handling in node [20:24] nrstott: ive been using taps recently [20:24] orospakr: TheJH, oh wow, I am retarded today. thanks. [20:25] cmr: I've also been using node-tap. I like it quite a bit. [20:25] josephmoniz: in haskell theres a data type for what node.js uses (error, [rest]) for, it's called Either [20:25] orospakr: hey, here's one: what is folks' favourite logging framework? I've written my own somewhere, but honestly, if there's a well-recommended one, I'll gladly use it. [20:26] FG: wiston [20:26] josephmoniz: everywhere i've worked uses syslog at the end of the day [20:26] josephmoniz: syslog to graylog2 looks pretty cool [20:26] superjudge has joined the channel [20:26] orospakr: josephmoniz, hm. if there's a good js logging lib that can optionally output to syslog, that's definitely a plus. [20:27] josephmoniz: iirc winston should be able to do that, and if it can't out of the box you can write a module for it fairly easily [20:28] piscisaureus has joined the channel [20:28] jhurliman has joined the channel [20:28] figital has joined the channel [20:29] jesusabdullah: I believe there is a syslog plugin for winston [20:29] jesusabdullah: I know it's been talked about at least [20:29] MatthewS has joined the channel [20:30] TimTim has joined the channel [20:32] churp has joined the channel [20:32] mmalecki: yes, there is [20:33] mmalecki: in indexzero's repos [20:36] asc_ has joined the channel [20:38] stagas has joined the channel [20:40] devinus has joined the channel [20:41] orospakr: what's the best way to schedule something onto the next mainloop iteration, rather than setTimeout(cb, 0)? [20:41] tbranyen: orospakr: nextTick [20:41] orospakr: aha! [20:41] orospakr: I suspected I would recognize it the minute I heard it [20:41] josephmoniz: nextTick makes me cringe [20:41] orospakr: thanks. [20:42] bemson: josephmoniz: is it bad form? - I'm a node-newb... [20:42] josephmoniz: you should never use nextTick to do work that should be shipped to a worker node instead [20:42] asc_: hi, i have a build problem with node-v0.6.6 on osx.5.8 (Leopard). Anybody still using node on 10.5.8 ? [20:42] orospakr: josephmoniz, I'm recursing through callbacks of readdir, and I think that I need to break out of the callback from readdir, otherwise I leak the directory stream descriptors. [20:42] josephmoniz: if you have nodes serving clients then you want their event loops spinning as fast as possible [20:42] josephmoniz: anything that will take time should be shipped off to worker nodes [20:43] FiveLemon has left the channel [20:43] josephmoniz: using request/response patterns with message brokers should suffice [20:43] orospakr: feh. it didn't work. [20:43] bemson: josephmoniz: taking time is the criteria then? A delayed server response should not use nextTick but setTimout [20:43] devongovett has joined the channel [20:43] josephmoniz: IE: RabbitMQ, redis message passing, Postgres NOTIFY/SUBSCRIBE [20:43] orospakr: josephmoniz, oh, ah, that's a different class of problem that's out of scope for this. [20:44] josephmoniz: bemson: nope [20:44] josephmoniz: anything thats going to take time shouldn't take place in the client serving node process [20:44] orospakr: I only use things like nextTick if I want to continue my current scope, and and push something out, not to deal with time-consuming stuff. [20:44] josephmoniz: in a perfect world the client serving node process should have it's event loops spinning as fast as possible [20:45] GrizzLyCRO has joined the channel [20:45] bemson: josephmoniz: I understand about "going to take time", but what if I want the server to take it's time, even though it's not doing anything rigorous - like delaying a server response [20:45] josephmoniz: bemson: you can delay response with a timeout [20:45] bemson: josephmoniz: is that not the same as setTimeout? [20:45] Cromulent has joined the channel [20:45] josephmoniz: bemson: yes that is [20:46] josephmoniz: time delays caused by computation is what i was referring to [20:46] bemson: josephmoniz: okay. I was confused there for a bit - I get the concern about computational delays [20:46] bemson: josephmoniz: thx for clarifying things for me [20:46] josephmoniz: IE: anything that gets in the way of the event loop spinning as fast as it can [20:46] bemson: josephmoniz: claro [20:47] wmage: anybody used Mocha with CoffeeScript? [20:47] tjbell has joined the channel [20:48] bemson_ has joined the channel [20:49] fly-away has joined the channel [20:51] redir has joined the channel [20:52] akter: wmage: I did a while ago. [20:52] adrianmg has joined the channel [20:52] wmage: akter: is it straightforward? [20:52] brianc1 has joined the channel [20:52] akter: Yea. [20:52] wmage: cool [20:52] wmage: I'm gonna try it when I'm done with reddit [20:52] wmage: meh [20:52] akter: I did the pull request for it :) tj hated me. [20:52] adrianmg has left the channel [20:57] akter: is there any good date libs for nodejs? Working with the native date is a pain. So far http://momentjs.com/ looks nice, but maybe someone got any other suggestions? [20:57] tbranyen: i think moment is the date lib of choice atm [20:57] eb4890 has joined the channel [20:57] akter: cool [20:58] stagas has joined the channel [20:59] franky has joined the channel [20:59] blup has joined the channel [20:59] Naked: calling destroySoon() on a tcp connection may mean the connection is never closed, right? that is, in the case that the write buffers are permanently full as the other end does not read anything? or is there a timer or something to finally clean it up? [21:00] Leemp2 has joined the channel [21:00] Heisenmink has joined the channel [21:08] stagas has joined the channel [21:11] fangel has joined the channel [21:11] asc_ has left the channel [21:11] stonebranch has joined the channel [21:14] fangel_ has joined the channel [21:14] mbrevoort has joined the channel [21:19] eb4890 has joined the channel [21:20] Me1000 has joined the channel [21:20] bradleymeck has joined the channel [21:23] N0va has joined the channel [21:25] pizthewiz has joined the channel [21:26] josephmoniz has joined the channel [21:27] schlitzer|freihe has joined the channel [21:27] mike5w3c has joined the channel [21:27] rurufufuss has joined the channel [21:28] mikeal has joined the channel [21:30] BrianE has joined the channel [21:31] level09 has joined the channel [21:32] Shaunzie has joined the channel [21:33] cognominal has joined the channel [21:35] iRoj has joined the channel [21:35] kriszyp has joined the channel [21:36] martndemus has joined the channel [21:38] strevat_ has joined the channel [21:39] brian has joined the channel [21:41] AAA_awright has joined the channel [21:41] jbpros has joined the channel [21:42] ChrisMatthieu has joined the channel [21:43] EhevuTov_ has joined the channel [21:45] willwhite has joined the channel [21:45] ixti has joined the channel [21:46] bls has joined the channel [21:46] PureRumble has joined the channel [21:46] thalll has joined the channel [21:47] Sorella has joined the channel [21:47] jgornick has joined the channel [21:47] PureRumble: Hi all! I've got class MyError inheriting from Error with util.inherits(MyError, Error) [21:47] PureRumble: In MyError constructor I do MyError.super_.call(this, "some error-msg") [21:47] bradleymeck: inheriting errors will not give you stack traces [21:48] PureRumble: That's not my question/problem [21:48] PureRumble: But then when I do throw new MyError(), I don't get the error-message "some error-msg" [21:49] PureRumble: However, if I go this.message="some error-msg" instead of the MyError.super_ call, then the message gets properly set [21:49] LeMike has joined the channel [21:50] PureRumble: But I'm trying to understand, what am I doing wrong here? Aint MyError.super_.call the proper way to invoke the superconstructor from a constructor? Why won't it properly set attributes? [21:50] cognominal_ has joined the channel [21:50] zomg: PureRumble: no idea tbh. Had same issue, decided to ignore [21:51] zomg: There's a few guides online which showed how to do it and it was supposedly setting the message, but it didn't work [21:51] nathanpalmer has joined the channel [21:51] bradleymeck: don't extend error [21:52] PureRumble: ok, what do you suggest if I want my own custom errors? [21:52] PureRumble: sorry for being so java/c++-ish :) [21:52] bradleymeck: use error, set properties, is there a reason you need to classify your errors using instanceof or prototype out methods unique to them? [21:53] jacobolus has joined the channel [21:54] PureRumble: I'm mainly concerned with using try/catch - blocks with instanceof in the latter. This way I can in relevant scenarios keep track of what type of error has occured and act on it [21:55] FG_ has joined the channel [21:55] PureRumble: You know, just like the "old-school" way of doing in other languages: try/catch(a)/catch(b)/catch(c)... and so on [21:55] josephmoniz: you shouldn't use exceptions in node.js [21:55] josephmoniz: node.js has a great error passing paradigm [21:55] josephmoniz: in haskell it's called the Either data type [21:56] josephmoniz: http://josephmoniz.github.com/blog/2011/12/14/js-pass-pattern/ << how i deal with errors in node [21:56] orospakr: how do I build a node module in place? I've manually checked something out into my project's node_modules. [21:56] bradleymeck: you should use errors if you call things with bad arguments and/or need stack traces but thats besides the point. [21:57] josephmoniz: errors good, exceptions bad [21:57] josephmoniz: thow + exceptions are great for crashing programs [21:57] bradleymeck: purerumble don't deal with errors as types, check values relating to how to deal with the error (a common step is to give err.code equal to the kind of http code it should reply with) [21:57] josephmoniz: and i'm not being sarcastic when i say that, you should use them like asserts [21:57] dubenstein has joined the channel [21:57] martndemus has joined the channel [21:58] EuroNerd has joined the channel [21:59] bradleymeck: typing your errors will still make you do the above but in a non-abstract and per type way (generally) which is :( [21:59] FIQ has joined the channel [22:00] martndemus has joined the channel [22:00] k1ttty has joined the channel [22:02] ryanfitz has joined the channel [22:03] PureRumble: bradleymeck, so to distinguish among various scenarios when some Error occurs, you suggest to use an ordinary Error-obj and to piggy-back it with some attributes? [22:03] dubenstein has joined the channel [22:04] PureRumble: Like say for instance you access some DB from your code, and for some bizarre reason you need to know if it was an insert or delete that went wrong in the case of an error. How would you do it? :) [22:04] bradleymeck: PureRumble, correct, piggy back it with relevant info to how to deal with the error, not with what the error is (error inspection is something that should be logged and dealt with when you don't know what to do with an error programatically (generally a restart)). [22:04] bradleymeck: so for your example [22:05] JaKWaC has joined the channel [22:05] dubenstein has joined the channel [22:06] bradleymeck: I would say that the current request flat out failed, then reboot the server, if this is a transaction with multiple steps things get interesting [22:06] bradleymeck: if you can deal with the transaction failing return something with .code of 500 or so [22:07] bradleymeck: multistep transactions will need to have an ORM or something keep track of steps for rollback [22:07] bradleymeck: does that make sense PureRumble ? [22:07] cognominal has joined the channel [22:08] martndemus has joined the channel [22:09] NothingMan65 has joined the channel [22:10] Naked: do note that not everybody agrees that piggypacking stuff into plain Errors is the way to go in Javascript, or in Node [22:10] Naked: if you want to do it by your own Error classes, you can find a short solution here: http://jayyy0v.wordpress.com/2011/12/08/creating-custom-error-extending-error-type-in-node-js/ [22:11] Naked: or, a solution that explains more here: http://stackoverflow.com/a/8460753/146423 [22:11] Naked: (do note that the link is to the "fully capable" answer - the other answers are not really good) [22:11] cognominal_ has joined the channel [22:12] Naked: those have stacktraces and follow the correct "error" behavior in everything [22:12] bradleymeck: Naked, the only thing you get with custom errors is the instanceof operator :/ [22:12] bradleymeck: and that generally is abused [22:12] ben_alman: damn, jshint install failure :/ [22:12] ben_alman: (bug reported to npm) [22:14] martndemus has joined the channel [22:14] Naked: bradleymeck: ...and actual prototypal class behaviour of custom errors, if you have custom methods or override something etc. [22:15] bradleymeck: Naked, if your errors are taking action instead of the actor that caused the error :( [22:15] ben_alman: when i'm dealing with simple internal errors i'll often just throw {name: "SomeError", message: "This is the rror message"}; [22:15] ben_alman: it doesn't log as pretty but it's just as functional if errors will always be consumed by code [22:16] Naked: ben_alman: which fails even the isError test... [22:16] ben_alman: again, simple internal errors [22:16] ben_alman: what is "the isError test" ? [22:16] pquerna: Marak: nice post :) [22:16] ben_alman: e instanceof Error ? [22:16] Naked: ben_alman: util.isError() [22:17] willwhite has joined the channel [22:17] ben_alman: ah. i wasn't thinking node-specific js [22:17] ben_alman: just generic js [22:18] tbranyen: why would you want to know if you had an error object or not? [22:18] Naked: bradleymeck: yes, you can structure all your classes so that no values have any functionality, only static class method [22:18] bradleymeck: tbranyen, you generally don't care but you might want a stack trace (i know we log a ton of errors even if they never reach top scope) [22:19] ben_alman: yeah {} error object won't log pretty-like [22:19] Naked: tbranyen: the common use case for that (for me) is to promote thrown strings and other stuff in to actual error objects so they have the usual toString() behavior and have .stack etc. [22:19] tbranyen: thats fair enough, wonder if node.js uses that function internally [22:20] bradleymeck: Naked you don't have to have everything static, but an error value taking action is eventually going to cause the problem of the caller wanting to know the problem and deal with it (or not deal with it for that matter) [22:20] ben_alman: throw {name: "SomeError", message: "This is the rror message", toString: Error.prototype.toString}; [22:20] ben_alman: heh [22:20] nicholasf has joined the channel [22:20] ben_alman: that's pretty lightweight [22:21] qbit_: is there a particular mdns lib that the hook.io dudes are using? [22:22] martndemus has joined the channel [22:23] Naked: bradleymeck: I'm not talking about error values "taking action" - simply that they might have other useful functions besides toString [22:23] EhevuTov has joined the channel [22:23] bradleymeck: qbit_, https://github.com/agnat/node_mdns [22:25] NHQ has joined the channel [22:25] zomg: Related to the custom errors discussion http://twitter.com/cowboy/statuses/151790124206792704 [22:25] PureRumble: Naked, bradleymeck, thx for your input. Looked it through and made my decision. Hopefully it's a good one :) [22:25] qbit_: bradleymeck: cool [22:26] pickels_ has joined the channel [22:26] NHQ: Question: when reading a file to convert it to an Array Buffer, how does one guess if should be 8, 16 or 32 bit? [22:27] kriskropd has joined the channel [22:27] martndemus has joined the channel [22:27] PureRumble: NHQ, you mean if the buffer should consist of 8, 16 or 32 integer bits? [22:27] NHQ: yes [22:28] PureRumble: NHQ, what difference does it make how big the integers are? [22:29] PureRumble: a file = stream of bits. A buffer = stream of bits. Doesnt matter how the buff represents the bits internally. Or am I missing something here? [22:29] NHQ: Its just that I tested sending an .rtf document as an array buffer. When I packed it up as 8bit unsigned, node transcoded it accurately. When I sent it as a 16 bit unsigned array, it did not "turn out" [22:29] booo has joined the channel [22:30] luxigo has joined the channel [22:30] NHQ: I should say that I used Chromes toArrayBuffer method for files [22:31] yorick: what data storage should I use for storage of my user database? basic json files? [22:31] relix has joined the channel [22:31] PureRumble: NHQ, sorry, beyond me :/ [22:32] NHQ: @yorick that is what I do when i'm prototyping [22:32] mara has left the channel [22:33] bemson: I'm building an npm module called Flow - it's a framework and there may be several plugins eventually... [22:33] monokrome has joined the channel [22:33] bemson: the first plugin is called "core", and wondered if I should name it's npm module "Flow-core" [22:33] zwiep: question, example on stream documentation to emulate cat: first it resumes process.stdin, next it sets up the pipe to process.stdout. i would expect the other way around since a readable stream could start emitting the moment you resume it? [22:34] bemson: etc, etc,… I guess there are a lot of "jquery-x" npm modules, ya? [22:34] BrianE has joined the channel [22:35] bradleymeck: bemson sounds fine, if you need a plugin system you might also want to look to broadway as a way to manage plugins in the future [22:35] chapel: any news on nodeconf? [22:35] bemson: I recall viewing that repo a while back… have you used it? [22:36] bradleymeck: zwiep, events happen on the next tick you have until the stack unwinds to set everything up [22:36] bemson: bradleymeck: sorry, that question about broadway was to you - have you used it? [22:37] bradleymeck: bemson, yep, we use it quite a bit since we made it XP, have made several plugins for haibu/haibu-carapace for internal use as well as some public ones [22:37] bemson: k - I'll consider it - for now "Flow-x" will have to do [22:37] bemson: bradleymeck: thx for the tip! [22:38] bradleymeck: hopefully peerDependencies will get into npm soon [22:38] Morkel has joined the channel [22:38] zwiep: bradleymeck, trying to wrap my head around your answer.. err.. [22:39] bradleymeck: zwiep since node is a single thread no events will be queued up and fired until the stack unwinds since they must be added to the event loop [22:39] BrianE has joined the channel [22:39] bradleymeck: similar to how setTimeout in a browser will not fire until the stack unwinds [22:40] styol has joined the channel [22:41] jsurfer has joined the channel [22:41] bradleymeck: by stack unwinding i mean all current functions have completed and returned (or thrown,... or yielded when v8 gets that...) [22:41] zwiep: bradleymeck, i build a simple readable stream that emits data immediately after resuming; when i do that before setting up the pipe, nothing happens [22:42] zwiep: so after your response i would not expect that to happen [22:43] bradleymeck: if you manually emit data on a custom readable stream it will happen ASAP (before the stack unwinds) node avoids this by using process.nextTick [22:45] dwhittle has joined the channel [22:46] zwiep: hmm interesting, didn't know this nextTick [22:46] franky has joined the channel [22:48] enmand has joined the channel [22:48] V1 has joined the channel [22:49] shinuza has joined the channel [22:49] bkaney has joined the channel [22:49] zwiep: so i have this stream that just emits numbers, how should i do the emitting? what i did now was pause the stream by default, and on resume emit a number and pause again [22:50] bradleymeck: you don't need to pause unless you are doing some sort of buffering [22:50] zwiep: works in a pipe, but guess that's not the way to do it [22:50] `3rdEden has joined the channel [22:53] josephmoniz: Nodes EventEmitter doesn't use process.nextTick [22:53] `3rdEden has joined the channel [22:53] josephmoniz: https://github.com/joyent/node/blob/master/lib/events.js [22:53] josephmoniz: zwiep: just extend EventEmitter [22:53] laprice has joined the channel [22:53] zwiep: i'm extending Stream now [22:54] josephmoniz: thats fine, Stream already extends EventEmitter [22:55] josephmoniz: fyi: Stream also doesn't use process.nextTick [22:55] V1 has joined the channel [22:56] V1: >_< FUUU stupid wifi connection [22:57] mmalecki: `3rdEden: that's only IRC, it was way more fun when skype crashed on me during nodeup [22:57] pizthewiz has joined the channel [22:57] draginx has joined the channel [22:57] draginx has joined the channel [22:57] einaros: *yawn* [22:58] zwiep: hmm.. basically now my pause() implementation is empty and resume just emits a number everytime it's called [22:58] neilk_: I'm writing a library. I'd like to load a configuration file relative to the library's location. Is there a standard way to do that? Do I need packages forthis? [22:58] mmalecki: einaros: oh yes :/ [22:58] einaros: t'is late [22:58] mmalecki: einaros: YOU HAVE TO WRITE CODE. NO SLEEP. [22:58] mmalecki: einaros: what timezone, btw? [22:58] wbednarski has joined the channel [22:59] `3rdEden: mmalecki in the Node Knockout 2010 my wifi died one hour before the deadline, that was waaay more fun [22:59] koo0 has joined the channel [22:59] mbrevoort has joined the channel [22:59] mmalecki: `3rdEden: oh. did you sort it out? [22:59] einaros: mmalecki: utc+1 [22:59] `3rdEden: mmalecki: yeh my internet came back 2 minutes before the deadline [23:00] `3rdEden: so I just enough time to the final push ;p [23:00] kriszyp has joined the channel [23:00] mmalecki: einaros: same as mine, I think [23:00] einaros: `3rdEden: swap providers and buy a cable [23:00] mmalecki: `3rdEden: hahaha, nice [23:00] `3rdEden: einaros: I already swapped providers and I'm to lazy to pull a cable [23:00] `3rdEden: ;D [23:00] einaros: then download the internet and go offline [23:00] einaros: [23:01] mmalecki: `3rdEden: git ftw, btw [23:01] `3rdEden: einaros: I doubt I will be able to download 0.0% before my connection drops again :p [23:01] mmalecki: imagine that with svn XD [23:01] PureRumble: Boys, give me a nicer way to do this -> if( params ) { path += "?" + params; } :) [23:02] astropirate has joined the channel [23:02] mmalecki: PureRumble: params && path += "params" [23:02] zwiep: alright, talking about sleep, sounds like a good idea :) [23:02] `3rdEden: mmalecki i'll rather not imagine that, as I'm going to bed soon and I don't want to have those scarry svn based nightmares [23:02] mmalecki: PureRumble: params && (path += "params"), actually [23:03] jbpros_ has joined the channel [23:03] `3rdEden: mmalecki actually params && (path += "?" + params); ;D [23:03] PureRumble: mmalecki, so you're suggestion is a bit error-prine, is that it? [23:03] mmalecki: `3rdEden: oh, sorry :(. yeah, well, I'm way too young to have tried svn for realz, but I did and I hate it [23:03] tab1293 has joined the channel [23:03] PureRumble: mmalecki, I mean error-prone of course :) [23:03] chapel: PureRumble: path += params ? ('?' + params) : ''; [23:04] chapel: mine gives you an alternative in case you want else inline [23:04] PureRumble: chapel, Ah forgot about that one! Rather safe and neat! Thx :D [23:05] `3rdEden: it's not saver then mmalecki's example [23:05] Shaunzie has joined the channel [23:05] chapel: yeah, safeness is relative there [23:05] einaros: `3rdEden: what did your travel arrangements for nodesummit end up being? [23:05] PureRumble: [23:05] `3rdEden: einaros: I still got to book a hotel :$ [23:05] chapel: is there going to be a nodeconf? [23:06] PureRumble: 3rdEden, it is considering that you dont have to be concerned with operator-priority, ie missing on some ( and ) [23:06] `3rdEden: einaros but i'm fling to SF on 22Jan and leaving again 28Jan [23:07] `3rdEden: chapel: http://nodesummit.com [23:07] chapel: I know about summit [23:07] `3rdEden: oh [23:07] `3rdEden: ;p [23:07] chapel: there isn't going to be a nodeconf? [23:07] chapel: like last year? [23:08] chapel: http://2011.nodeconf.com/ [23:08] einaros: `3rdEden: which airline / time on jan 22nd? [23:09] `3rdEden: einaros: KLM at 10:20 AM [23:09] einaros: sneaky, I'm on the same plane [23:10] `3rdEden: really? [23:10] erichynds has joined the channel [23:10] einaros: yes [23:10] `3rdEden: einaros flight KL 0605? [23:10] einaros: `3rdEden: hang on, will confirm [23:11] einaros: `3rdEden: aye, that's the one [23:11] Wa has joined the channel [23:11] `3rdEden: einaros ;D [23:11] `3rdEden: awesome [23:12] socialhack has joined the channel [23:12] XVICODANA has joined the channel [23:13] XVICODANA has left the channel [23:13] einaros: :D [23:13] einaros: sleep calls, g'nite! [23:14] `3rdEden: nite [23:16] cjm has joined the channel [23:17] jspiros has joined the channel [23:19] nathanpalmer has joined the channel [23:21] ryan_stevens has joined the channel [23:22] nopnop has left the channel [23:22] jaw6 has joined the channel [23:22] equark_ has joined the channel [23:23] iigrat has joined the channel [23:24] ph^ has joined the channel [23:25] maxogden: chapel: nodeconf will be later in the year [23:25] chapel: well that I know [23:25] chapel: just wish there was some info [23:25] chapel: so I could plan something [23:26] maxogden: chapel: 2-3 months is ample time, no? [23:26] chapel: well I guess [23:26] chapel: :P [23:26] chapel: jsconf is april in arizona this year [23:30] ben_alman: anyone have any scripts written around pulling down the latest stable node and installing it besides nave and nvm? [23:30] ZeepZop has joined the channel [23:31] thalll has joined the channel [23:32] joeytwiddle has joined the channel [23:32] mrdnk has joined the channel [23:33] criswell has joined the channel [23:34] bergie has joined the channel [23:34] cstamas has left the channel [23:34] chapel: seems like it would be pretty easy to script [23:34] dambalah has left the channel [23:35] Shaunzie: yay I just deleted 2 days worth of work cause I didn't commit! errfert… -.- I need booze stat….. [23:36] Shaunzie: omg! I love Apple… I'm officially fanboy for life! :D :D :D :D :D…. I still want booze though >.> [23:36] cmr: lol [23:38] rwaldron has joined the channel [23:40] cognominal has joined the channel [23:41] cody-- has joined the channel [23:42] socialhack has joined the channel [23:43] herbySk has joined the channel [23:46] wbednarski has joined the channel [23:47] Industrial: This is my problem with adopting functional programming: I don't know how to program parts of the application if I'm not using OO things like Controllers, Models, Views for e.g. a HTTP app. [23:47] Industrial: I could use a map instead of an each or a for in a model method :P [23:47] Industrial: That's about my use of functional programming right now :\ [23:48] Industrial: Not sure how to improve this or say build the whole system in [23:49] mrdnk: @Industrial - JavaScript: The Good Parts is really good for learning javascript inc... the functional programming aspects [23:49] jzacsh has joined the channel [23:49] jzacsh has joined the channel [23:50] Industrial: mrdnk: I understand what a monad and a map and a reduce and partial application etc are [23:51] Industrial: What I don't understand is how it can replace my thinking of objects as collections of properties to pass around and modify [23:51] Industrial: e.g. side-effect free [23:51] Industrial: because that's how I think about data :p [23:51] shinuza has joined the channel [23:53] brianseeders has joined the channel [23:54] c4milo has joined the channel [23:54] ben_alman: is there any reason that the osx .pkg installer requires root permissions? it's only installing into /usr/local, which homebrew does just fine without needing root permissions [23:55] greekmale has joined the channel [23:56] descipher has joined the channel [23:57] mrdnk: Industrial: OK; know more than me then. [23:59] EhevuTov_ has joined the channel [23:59] piscisaureus__ has joined the channel