[00:00] sreeix has joined the channel [00:03] benvie: not sure if ti has it but check out es5-ext [00:03] benvie: I know it has a lot of things in that area [00:03] benvie: really awesome lib, deserves more press [00:04] ben_alman: is there a way i can test to see if my npm module has been run globally? [00:05] ben_alman: wonder if i can look @ module.id [00:05] totallymike has joined the channel [00:06] larsschenk has joined the channel [00:06] larsschenk has left the channel [00:07] McMAGIC--Copy has joined the channel [00:08] PPaul has joined the channel [00:08] brngardner has joined the channel [00:09] dnolen has joined the channel [00:09] willwhite has joined the channel [00:09] dgathright has joined the channel [00:10] TheAlphaNerd has joined the channel [00:10] TheAlphaNerd has joined the channel [00:11] colinclark has joined the channel [00:12] jgaui has joined the channel [00:14] ag4ve: marcuswestin thanks now i'm going between uglify and packnode [00:14] skm has joined the channel [00:15] ramitos has joined the channel [00:17] plato: if I instantiate two objects with the same properties separately, they are not equal [00:17] plato: is the interpreter giving them some internal memory ID and checking that? [00:18] wdbl has joined the channel [00:18] plato: and is there a way to access it for debugging? i am having some problems passing an object by reference in a recursive function [00:18] payara has joined the channel [00:18] AviMarcus: ag4ve, what's the point of using the encryption? [00:19] AviMarcus: if you have the password, I presume you could reverse engineer the lib and get the uglified code? [00:19] AviMarcus: which well, would look ugly as heck. but still, the code. [00:20] darrenlooby has joined the channel [00:21] piscisaureus_ has joined the channel [00:21] dylang has joined the channel [00:22] ag4ve: i guess i want something as obfuscated as compiled code - make all of the function names and variables hex values and call it a day. [00:22] indy3 has joined the channel [00:22] carlyle has joined the channel [00:23] payara: I want the same thing [00:23] ryanRT has joined the channel [00:23] payara: I have to ship some code to a customer but retain IP [00:23] ag4ve: i want to be able to deliver a node server with code on it, and be somewhat ok (besides legally) if someone else sees the code [00:23] milani_ has joined the channel [00:24] ag4ve: and, i think uglify is what i want (more features than packnode... [00:24] richcollins: Any ideas why node can't find my package here? [00:24] richcollins: https://gist.github.com/59c62607f3a441b40655 [00:25] payara: so I uglify and then do some basic encyption and make the key "copyright " so they could unencrypt and reverse uglify if they wanted but because it would be a conscious step with a placed copyright notice and hint (the key) then I think legally I am about as protected as I can be [00:25] bartt has joined the channel [00:25] artusrocha has joined the channel [00:25] payara: that is essentially my deploy script - uglify and then packnode [00:26] bartt1 has joined the channel [00:26] dwhittle has joined the channel [00:26] ljharb: payara: what legal protection are you looking for? code that executes on a browser can't be hidden from the browser [00:27] payara: missed the start of the discussion but I am shipping a server [00:27] cjm has joined the channel [00:27] payara: the main issue for me is whether the customer starts to reuse the code in other projects without permission [00:28] bartt has joined the channel [00:28] TooTallNate: get better customers? :p [00:28] TooTallNate: i kid [00:28] payara: they have to get it as the node instance is on their server but I they would have to take definite conscious steps to ignore the copyright notice and decrypt/reverse engineer [00:28] ljharb: payara: you have absolutely no way to stop them from doing that [00:28] ljharb: payara: nor could you possible be liable for anything if they do [00:28] bartt has joined the channel [00:29] payara: no, but they would have a compliance issue [00:29] ljharb: payara: and the only way you can get them on that is if you find a legal way of proving they've done that, which on server software is virtually impossible [00:29] ag4ve: pokoli: as AviMarcus pointed out, i don't really think packnode is needed with uglify [00:29] payara: big enterprises don't like compliance risk [00:29] ljharb: the compliance risk is out of your hands once youve shipped them the server [00:29] ljharb: if they want compliance from you, you need to be managing the server [00:29] andrewdeandrade has joined the channel [00:29] TooTallNate: imo, take a page out of mysql's book. Open source it; offer enterprise support [00:29] ljharb: pretty sure that's true with anything - if you send me something, and i tinker with it, i void any warranties you have on it [00:29] payara: no - if they use my code in their projects and this is discovered then that is not good for them [00:30] ag4ve: in fact, look what packnode is doing - i think that can be a post processor [00:30] ljharb: payara: correct. it's no concern of yours otherwise. [00:30] payara: I don't mind them interfacing with the runtime of course [00:30] ljharb: payara: it's their server. they can do whatever they want and there is nothing you can do to stop them [00:31] ljharb: in many countries, they even have the legal right to do whatever they want at that point, including messing with the software, because they now own the server [00:31] payara: yes, but the software delivered is part of an OEM package and they have to honour the IP delivered with that [00:31] ag4ve: you can reverse engineer anything. but, the point is to raise the bar of shit you have to go through to extrace and reuse the code [00:31] langworthy has joined the channel [00:31] ljharb: payara: but there is literally nothing you can do to block them from NOT honoring the IP. [00:31] payara: in Europe you can reverse engineer with a view to better interoperability [00:31] payara: which is quite different from pulling out entire chunks or algorithms and working it into your own code [00:32] ljharb: payara: if you're trying to actually prevent them from doing that, that's one thing - and the best solution the industry has found is SaaS. if you're worried about your legal liability, you have none once they start making changes. [00:32] payara: re the compromise - I know. This is the best compromise I could come up with at present for the effort I spent [00:32] payara: prevent may be too big a word [00:32] payara: discourage perhaps better [00:33] AviMarcus: it would certainly discourage. [00:33] seanstickle has joined the channel [00:33] AviMarcus: but if you're giving them the password to actually use it then that would mean the have the ability to decode. [00:33] payara: yes - my other product is a SaaS one (but no node connection there yet) [00:33] AviMarcus: I suppose there's no one-way compiling available yet... [00:33] payara: to get uglified code - yes [00:34] AviMarcus: ah true. uglified code is pretty darn ugly! [00:34] payara: I think the closest I ever saw was microsoft giving you a partially encrypted VM so the standard IL would look weird [00:35] MrTopf has joined the channel [00:36] payara: but in general, if it executes on a machine then you can find out what it is doing and build a model of what code that compiled to that might look like (apart from on some special processor I think - but that just shifts how much effort you have to spend looking) [00:37] ag4ve: i plan to see how i can keep people out on different levels - disk encryption, selinux, etc. but i'll be doing this at the code level too since i can [00:37] achiu has joined the channel [00:37] localhost has joined the channel [00:37] payara: ag4ve: sorry - missed the start of the discussion; what are you trying to do? [00:38] jakehow has joined the channel [00:38] pandeiro has joined the channel [00:38] ag4ve: i think i started the obfuscation discussion :) [00:38] AviMarcus: payara, provide code to do stuff that they can't access, I presume. [00:38] AviMarcus: well ag4ve that only adds to uglify the encode part [00:38] AviMarcus: you only wanted the uglify part? [00:39] iangreenleaf has joined the channel [00:39] AviMarcus: anyway. 2:40am. gotta go to sleep. 'night [00:39] sammmy: I need to get nodemon to work properly in order to build front-end code because my front-end files are js files! I can't seem to get nodemon to ignore my public directly. Here's my issue: https://github.com/remy/nodemon/issues/75 If anyone could give me some input on this, that would be greatly appreciated. r: [00:39] payara: 9:40am here - morning! [00:40] ljharb: sammmy: make a .nodemonignore file [00:40] ljharb: and just have it ignore your public and views directories [00:40] ag4ve: heh, 8:40pm here [00:40] sammmy: ljharb: read the github issue. ;P [00:40] HacDan has joined the channel [00:40] slajax has joined the channel [00:41] ljharb: i'm using the node 0.6.11 and nodemon 0.6.7 and it works fine [00:41] ljharb: but i'm not on windows, so maybe that's the problem [00:41] ljharb: in my nodemonignore tho, it says "/public/*" - no "./" [00:41] plato: sigh [00:41] PPaul has joined the channel [00:42] plato: does anyone have anything bookmarked about passing objects by reference [00:42] ljharb: objects are always passed by reference, it's js [00:43] Rage21 has joined the channel [00:43] chilts: plato: what do you need to know? [00:43] chilts: I mean, what's confusing you? [00:43] lukegalea has joined the channel [00:43] plato: chilts i'm trying to make my code readable enough to pastebin [00:43] TheAlphaNerd has joined the channel [00:43] TheAlphaNerd has joined the channel [00:43] BillyBreen has joined the channel [00:43] Rage21: having a rough time finishing off an node app -- anyone available for hire? [00:43] chilts: oh, ok, I thought you had a question about references [00:44] sammmy: ljharb: I'll try changing it to what you have and see if it works. [00:44] insin has joined the channel [00:44] chilts: Rage21: plenty of people, what do you need? [00:44] dragansah has joined the channel [00:44] sammmy: ljharb: nope. :\ Could be windows [00:44] Rage21: chilts: its a pretty cool app, about 80% done.. but just some misc things to get completed [00:45] phlff has joined the channel [00:45] postwait has joined the channel [00:47] plato: chilts is there a way to get the memory address of an object? That would help me debugging, so I could see if I am somehow making a copy instead of a reference [00:47] dnyy_ has joined the channel [00:48] ag4ve: plato: i seriously doube it. [00:48] PPaul has joined the channel [00:48] benvie: hah I kind of did that [00:48] chilts: plato: if it's an object, it'll be a reference [00:48] Druid_ has joined the channel [00:48] benvie: https://github.com/Benvie/reified/blob/master/proxy/index.js [00:48] chilts: if it's a string or number or boolean it'll be a copy [00:49] benvie: and if it's a proxy that looks like and object but points to a buffer [00:49] meso__ has joined the channel [00:50] evilnate has joined the channel [00:51] qubit[0|1] has joined the channel [00:53] pizthewiz has joined the channel [00:54] exchgr has joined the channel [00:55] emperor has joined the channel [00:56] sammmy: ljharb: But regardless of if it's because I'm using windows, I need to get it to work on windows. [00:57] ljharb: indeed [00:57] sammmy: ljharb: Like, do you know what could be causing it to not work on Windows? I know I had to change fs.watchFile to fs.watch on line 195 (like I mentioned in my github issue). [00:57] h4mz1d has joined the channel [00:57] payara: sammy: there is nodemonw which is windows specific but I don't know if it handles ignore files [00:57] ljharb: i'm not sure - windows has a funky file system [00:57] sberryman has joined the channel [00:58] bartt1 has joined the channel [00:58] PPaul has joined the channel [00:59] bartt1 has joined the channel [00:59] sammmy: payara: npm install nodemonw? [00:59] payara: think it was a direct download - will try and dig out the link [01:00] payara: seems it is deprecated now as "nodemon works on windows"...https://github.com/cenanozen/nodemonw#readme [01:00] TheFuzzball has joined the channel [01:01] sammmy: payara: yeah I found that. :\ [01:01] sammmy: Only the thing is nodemon DOESN'T work on windows. -.- [01:01] sammmy: I tried \ slashes instead of / in my .nodemonignore, but no luck. :\ [01:02] payara: I can give you a copy of the old nodemonw executable if you can't get it/want it [01:04] PPaul has joined the channel [01:05] sammmy: payara: I don't know if I want to use it if it's depreciated [01:05] payara: no worries [01:06] sammmy: yes worries. I my server restarts everytime I edit my front-end js files. :( [01:06] sberryman has left the channel [01:06] sammmy: I'm just going to not use nodemon while working on the front-end, until remy helps me solve this issue on github. ;P [01:07] rwaldron has joined the channel [01:07] payara: sammmy: I mean't no worries as in no problem, not that it shouldn't worry you and is safe ;-) [01:07] monokrome has joined the channel [01:07] sammmy: O.o? [01:07] ag4ve: how do i list req.param? [01:08] ag4ve: err, in english, how do i get the list of params i sent? [01:08] CoverSli1e has joined the channel [01:08] sammmy: ag4ve: get? [01:09] whaley has joined the channel [01:09] ag4ve: console.log( req.param ) gives a function prototype for req.query [01:09] MitchW has joined the channel [01:11] payara: ag4ve: require('url').parse [01:12] payara: ag4ve: (request.url, true).query['paramname'] [01:12] ehazlett has joined the channel [01:12] payara: ag4ve: sorry should have all been on a single line [01:12] monokrome has joined the channel [01:12] TooTallNate: ag4ve: (assuming you're using express) console.log(req.params) [01:13] TooTallNate: ag4ve: Object.keys(req.params) [01:13] ag4ve: express, yes. didn't know there was a .params... must have just read req.param [01:13] urlisse has joined the channel [01:13] yogig has joined the channel [01:16] alejandromg has joined the channel [01:17] ag4ve: meh, no params, but now i see what url.js does. might be useful on many fronts :) [01:17] dmojoryder has joined the channel [01:20] evilnate has joined the channel [01:21] TooTallNate: ag4ve: req.params uses url.parse() internally [01:21] TooTallNate: ag4ve: and req.param('blah') is a convience function that checks both req.params.blah and req.body.blah [01:22] qbit_: ohsnap - i have been using my own thinger to do exactly that [01:22] qbit_: ++ for reading documentation eh? [01:22] purr: Let it be known that qbit_ loves for reading documentation eh?. [01:22] TooTallNate: wtf++? [01:22] qbit_: ha [01:22] qbit_: ++ shashank? [01:22] purr: Let it be known that qbit_ loves shashank?. [01:23] qbit_: huh [01:23] TooTallNate: ++ TooTallNate :D [01:23] purr: Let it be known that TooTallNate loves TooTallNate :D. [01:23] whitglint has joined the channel [01:23] qbit_: haha [01:23] TooTallNate: damn bots [01:23] softdrink has joined the channel [01:28] neoesque has joined the channel [01:28] ag4ve: ++ bots :) [01:28] purr: Let it be known that ag4ve loves bots :). [01:28] panchot has joined the channel [01:28] SubStack: ACTION sent a pull request https://github.com/nrf110/deepmerge/pull/2 [01:32] bhunt has joined the channel [01:32] h4mz1d has joined the channel [01:35] abraxas has joined the channel [01:35] PPaul has joined the channel [01:36] jxson_ has joined the channel [01:37] RORgasm has joined the channel [01:38] jerrysv has joined the channel [01:39] darrenlooby has joined the channel [01:40] kinginky has joined the channel [01:41] retornam has joined the channel [01:41] andre_pl has joined the channel [01:42] andre_pl: i'm a bit confused by how querystring module's parse function works.. can anyone explain the results of this little snippet? http://pastebin.com/zwsmcpF8 [01:42] kyledr_ has joined the channel [01:43] jryans has joined the channel [01:44] JoshRWeinstein has joined the channel [01:45] jerrysv has joined the channel [01:45] dekub has joined the channel [01:45] chadskidmore has joined the channel [01:45] vbabiy has joined the channel [01:46] jacobolus has joined the channel [01:47] petschm has joined the channel [01:47] lohkey has joined the channel [01:48] stevengill has joined the channel [01:49] jacobolu_ has joined the channel [01:51] yhahn has joined the channel [01:51] brianseeders has joined the channel [01:51] PPaul has joined the channel [01:52] wilmoore has joined the channel [01:53] kinginky: andre_pl: any luck?? [01:53] andre_pl: nope [01:53] andre_pl: well, i know WHY [01:53] kinginky: hmm [01:53] andre_pl: but no solution [01:53] andre_pl: other than parse it myself [01:53] kinginky: well, why?? [01:54] ljharb_ has joined the channel [01:54] langworthy has joined the channel [01:54] andre_pl: qs.parse expects utf8 and that's not utf8..i guess. [01:54] kinginky: ljharb_: howdy :] [01:54] andre_pl: that's what I gleaned from this: http://comments.gmane.org/gmane.comp.lang.javascript.nodejs/15601 [01:54] kinginky: andre: couldn't you modify the module and use your own custom version? [01:55] andre_pl: i can parse the url myself yeah, but that's no fun :P [01:55] andre_pl: oh well [01:55] kinginky: lol true dat [01:55] kinginky: there has to be a solution tho [01:56] ljharb__ has joined the channel [01:56] kyledr has joined the channel [01:58] DraftDay: is there an ide for developing the server side code that does hinting [01:58] PPaul has joined the channel [01:58] DraftDay: addon for vim or nano? [01:59] alejandromg has joined the channel [01:59] kinginky: DraftDay: dunno if it's exactly what u want but what about cloud9? [01:59] DraftDay: nah [02:00] sawgij has joined the channel [02:00] DraftDay: i guess i could probably setup netbeans [02:00] ag4ve: hummm, anyone use passport? it doesn't seem passport-local provides a user profile <=> db schema translation or objects. is this correct? [02:00] evilnate: andre_pl: at the bottom of that mailing list thread it says they fixed it [02:02] andre_pl: didn't work for me.. [02:02] ljharb: ag4ve: i'm using it but i'm using passport-twitter - and i still had to do my own (un)serialization [02:02] andre_pl: i just parsed the querystring myself though [02:02] andre_pl: works fine [02:03] ag4ve: ljharb: that's where this would go? passport.deserializeUser ? [02:04] PPaul has joined the channel [02:04] ljharb: i made a passport.serializeUser and a passport.deserializeUser [02:04] ag4ve: though, i guess i'll just look at what passport-facebook, passport-twitter, etc did and go with it [02:04] yhahn: anyone having issues with npm tonight? [02:05] ag4ve: ah [02:05] isaacs: yhahn: yeah, it hiccuped a little while ago [02:06] isaacs: seems to be working fine now, though [02:06] Emmanuel` has joined the channel [02:06] maxogden: SubStack: you should put seaport and friends on top of npm [02:06] yhahn: hrm, what sort of hiccup? still having issues here [02:06] a_suenami has joined the channel [02:06] isaacs: yhahn: was getting ETIMEOUT, but now it seems ok, at least from where i am [02:07] isaacs: erm, nvm [02:07] isaacs: ECONNREFUSED [02:07] isaacs: JasonSmith: I SUMMON THEE! [02:07] redir has joined the channel [02:07] JasonSmith: I HEAR AND OBEY, MASTER [02:07] JasonSmith: checking now [02:07] yhahn: lol [02:07] maxogden: i choose you, iriscouch! [02:08] isaacs: JasonSmith: thanks :) [02:08] YoY has joined the channel [02:08] maxogden: iriscouch casts restart. it's super effective! [02:09] tommyvyo has joined the channel [02:10] kinginky: wtf is up with NPM freezing in the middle of an install. i think it's losing connection or something. [02:10] JasonSmith: Working on this now /cc isaacs kinginky [02:11] polardude has joined the channel [02:11] kinginky: ah sweet. what can i do to help?? [02:11] zdk has joined the channel [02:11] JasonSmith: Problem identified and a fix is underway [02:11] isaacs: sweet! [02:12] JasonSmith: One of the "HA" proxies is not keeping up with the other. [02:12] JasonSmith: brb [02:12] kinginky: isaacs, aren't you a big part of node.js?? [02:12] kinginky: or is that my imagination playing tricks on me? [02:13] jerrysv has joined the channel [02:14] isaacs: kinginky: yes, i make the builds and write npm and talk to people a lot about it. [02:15] kinginky: isaacs: i see you in here a lot. super cools, man. wish i was advanced enough to work on something as popular and useful as NPM. [02:15] SubStack: maxogden: on top of npm how do you mean? [02:15] kinginky: i use it daily though, so kudos and thank you. [02:15] phlff has joined the channel [02:15] dylang: I noticed if you search http://search.npmjs.org/ for express, request, mongodb, and other popular modules they don't show up in the results. this must be great for noobs. [02:16] SubStack: maxogden: you can already put couchdbs entries in seaport [02:16] jxson has joined the channel [02:16] phlff: Strange, I haven't changed any code, but I did update everything in npm including mongoose. Now I'm getting this "error: Cannot call method 'virtual' of undefined" during my db init. Anyone know what's going on? [02:16] rook2pawn has joined the channel [02:17] phlff: I notice I'm running 2.5.13 but the docs on the mongoose site look like htey're for 2.5.10. Did virtual get deprectated? [02:18] bradleymeck has joined the channel [02:19] TooTallNate: phlff: not that i know of [02:20] phlff: TooTallNate: doh, just found it……programmer error :) [02:20] yhpark has joined the channel [02:20] westg has joined the channel [02:20] socketio\test\79 has joined the channel [02:21] zodiak has joined the channel [02:21] Radium has joined the channel [02:22] kyledr_ has joined the channel [02:22] JasonSmith: NPM service restored /cc isaacs kinabalu [02:22] cody1 has joined the channel [02:22] JasonSmith: also cc kinginky [02:22] isaacs: JasonSmith: thanks! [02:22] cody1: can anyone point me in the right direction with this: https://gist.github.com/916737b50bf97735c672 [02:22] JasonSmith: Puta madre. The whole box powered down [02:22] JasonSmith: I am working on our own DNS server to do HA for situations like this [02:23] totallymike has joined the channel [02:23] Hebo has joined the channel [02:24] JasonSmith: cody1: please retry. You bumped into a brief NPM service issue. Sorry for the trouble [02:24] JasonSmith: isaacs: Would you take a patch request to retry once or twice for seemingly transient HTTP errors? :) [02:24] cody1: ah thanks JasonSmith [02:24] scwh has joined the channel [02:25] petschm has joined the channel [02:25] isaacs: JasonSmith: most people try a few times when it fails anyway [02:26] isaacs: JasonSmith: and if it's in the cache, then GETs are quietly ignored. [02:26] isaacs: if they error, i mean [02:26] isaacs: or 404 [02:27] robhawkes has joined the channel [02:27] stevengill has joined the channel [02:27] PPaul has joined the channel [02:28] qos has joined the channel [02:28] prettyrobots has joined the channel [02:29] prettyrobots has left the channel [02:29] theturtle32_ has joined the channel [02:29] prettyro_ has joined the channel [02:29] subbyyy has joined the channel [02:29] prettyro_: Hello. [02:29] kinginky: JasonSmith: u fixed it ^_^ [02:29] kinginky: thx! [02:30] joshthecoder has joined the channel [02:30] prettyrobots: What's it called when you create a function by wrapping another function. [02:30] jsurfer has joined the channel [02:30] kinginky: a callback?? [02:30] andre_pl: closure? [02:30] prettyrobots: It's not curry. [02:30] prettyrobots: But, it's like curry, just doesn't mean that there is only one argument. [02:30] prettyrobots: Not a callback. [02:31] prettyrobots: Closure. [02:31] prettyrobots: Okay. [02:31] totallymike: partially called functions [02:31] kinginky: lol [02:31] cipher__ has joined the channel [02:31] pizthewiz has joined the channel [02:32] dylang has joined the channel [02:33] prettyrobots: totallymike: Are you suggesting this? http://en.wikipedia.org/wiki/Partial_derivative [02:33] dnyy has joined the channel [02:33] PPaul has joined the channel [02:35] eduardostalinho has joined the channel [02:35] MrTopf has joined the channel [02:36] scwh has joined the channel [02:36] CIA-19: node: 03isaacs 07master * rcda3b6f 10/ (171 files in 28 dirs): Upgrade npm to 1.1.14 - http://git.io/mxDV5Q [02:38] sawgij has joined the channel [02:38] cody1: https://gist.github.com/a8c5e2df508dc455b999 ive tried npm install websocket and tried adding it to my package.json [02:38] lazyshot has joined the channel [02:40] bkaney has joined the channel [02:40] cody1: eh just needed a npm update [02:40] Hamms has joined the channel [02:41] owen1: how to make rest calls using node? [02:41] owen1: get/post/put etc [02:41] thinkt4nk has joined the channel [02:43] kinginky: owen1: http://www.google.com/webhp?sourceid=chrome-instant&ix=sea&ie=UTF-8&ion=1#hl=en&output=search&sclient=psy-ab&q=rest%20calls%20in%20node.js&oq=&aq=&aqi=&aql=&gs_l=&pbx=1&fp=8092ef85812fc61a&ix=sea&ion=1&bav=on.2,or.r_gc.r_pw.r_qf.,cf.osb&biw=1024&bih=682 [02:43] kirbysayshi has joined the channel [02:45] avalanche123|h has joined the channel [02:45] PPaul has joined the channel [02:46] meso_ has joined the channel [02:46] CIA-19: node: 03isaacs 07master * r8a15147 10/ src/node.js : [02:46] CIA-19: node: Reapply "debug: Wait 50ms before running the main module" [02:46] CIA-19: node: This reapplies commit c781f17742170f2e127f9ee6652c56b406c30586 [02:46] CIA-19: node: This reverts commit 00224771e32e4d051e5ea33b7e854f0031359912 - http://git.io/ypf9Yg [02:46] conancat has joined the channel [02:46] YoY has joined the channel [02:46] scwh has left the channel [02:46] scwh has joined the channel [02:47] timoxley has joined the channel [02:47] prettyrobots: totallymike: Okay. I found the language I'm looking for. Thanks. [02:48] totallymike: Neat. Was that what you wanted? [02:48] stevengill_ has joined the channel [02:55] orlandovftw has joined the channel [02:58] Edisto has joined the channel [02:59] thinkt4nk has joined the channel [02:59] hipertracker has joined the channel [02:59] eduardostalinho has joined the channel [03:00] nateps has joined the channel [03:01] zeade has joined the channel [03:02] CIA-19: node: 03isaacs 07master * r4b64542 10/ (199 files in 18 dirs): Upgrade V8 to 3.9.24.6 - http://git.io/FKbCkQ [03:02] CIA-19: node: 03isaacs 07master * raf90faf 10/ deps/v8/build/common.gypi : Patches floating on V8 - http://git.io/gg374w [03:03] kirbysayshi has joined the channel [03:03] Radium has joined the channel [03:04] jxson has joined the channel [03:06] qos has joined the channel [03:11] jgornick has joined the channel [03:13] willwhite has joined the channel [03:13] CIA-19: node: 03Shigeki Ohtsu 07master * rb521ff3 10/ lib/tty.js : tty: add keypress event for backwards-compat - http://git.io/d8o9-A [03:13] CIA-19: node: 03Shigeki Ohtsu 07master * r238e12a 10/ lib/tty.js : tty: show deprecated warn of tty.setRawMode() - http://git.io/o4r4iQ [03:13] CIA-19: node: 03Shigeki Ohtsu 07master * r26b6da1 10/ (doc/api/readline.markdown doc/api/tty.markdown): doc: change stability index of tty and readline to Unstable - http://git.io/H-mOMg [03:14] ramkamx has joined the channel [03:14] gerard0 has joined the channel [03:15] wdbl has joined the channel [03:15] westg: anyone here that works with mongoose [03:15] jgornick has joined the channel [03:16] Brandon_R has joined the channel [03:16] zdk has joined the channel [03:16] Brandon_R: hi guys [03:16] Sulfur has joined the channel [03:18] michaelmartinez has joined the channel [03:18] anphonic has joined the channel [03:20] hij1nx has joined the channel [03:20] jacobolus has joined the channel [03:20] rurufufuss has joined the channel [03:22] cconstantine_ has joined the channel [03:22] Knowledge has joined the channel [03:23] Blorb has joined the channel [03:24] panchot has joined the channel [03:24] Axsuul has joined the channel [03:24] baudehlo has joined the channel [03:26] zivester has joined the channel [03:26] brngardner has joined the channel [03:27] babab00m has joined the channel [03:29] ljharb: westg: #mongoosejs [03:30] Clordio_ has joined the channel [03:30] timoxley: owen1 https://github.com/mikeal/request request.head, sorry [03:31] TheAlphaNerd has joined the channel [03:32] kordless has joined the channel [03:33] khrome has joined the channel [03:33] gavin_huang has joined the channel [03:33] tommyvyo has joined the channel [03:34] hij1nx has joined the channel [03:34] Spion has joined the channel [03:34] anphonic: does node.js have a method to get around browser xss restrictions for pulling an xml feed? restricted to just the proper xml of course [03:34] OmidRaha has joined the channel [03:35] polardude has joined the channel [03:35] jxson has joined the channel [03:36] erujolc has joined the channel [03:36] SubStack: yay https://github.com/nrf110/deepmerge/pull/2 [03:36] ljharb: anphonic: if any server had a method to get around a restriction like that, there'd be no need for a restriction [03:37] zeade has joined the channel [03:37] RORgasm has joined the channel [03:37] bandu has joined the channel [03:39] kordless has joined the channel [03:39] Radium has joined the channel [03:40] adamstantonvan has joined the channel [03:41] rtgibbons has joined the channel [03:43] markq has joined the channel [03:44] nerdy_ has joined the channel [03:46] westg has joined the channel [03:50] lohkey has joined the channel [03:50] hij1nx has joined the channel [03:50] timoxley: I really wish "coffeescript discourages contribution" wasn't true. [03:51] eventualbuddha has joined the channel [03:51] tbranyen: timoxley: it so is [03:51] tbranyen: i was very reluctant to contribute to DocumentUp [03:51] tbranyen: but i still did [03:53] timoxley: tbranyen good for you for crossing the interracial divide. [03:53] polardude has joined the channel [03:53] hipertracker_ has joined the channel [03:53] tbranyen: yeah i wasn't too happy about it [03:53] tbranyen: luckily it was a simple fix [03:53] HacDan has joined the channel [03:54] HacDan has joined the channel [03:55] timoxley: tbranyen you're lucky you can still write javascript [03:55] petschm has joined the channel [03:55] tbranyen: timoxley: i am a human, i have free will... indeed =) [03:56] ybit: anyone feel like walking me through creatinga model [03:56] ybit: a model in railway [03:58] ybit: i think i have a handle on the controllers and views [03:59] jerrysv has joined the channel [03:59] meandi111 has joined the channel [04:00] kriskowal has joined the channel [04:04] r04r has joined the channel [04:04] erujolc has joined the channel [04:05] jesusabdullah: Oy, any express users here? [04:05] jesusabdullah: What do you call a function that returns a middleware? [04:05] TheyCallMeBruce has joined the channel [04:06] jesusabdullah: Because it's not a middleware, but it's almost as common as middleware itself and I want to refer to such a thing in a wrapper function I'm writing [04:06] TheyCallMeBruce: how do i stop a function from running over and over when its inside a server script? [04:06] jesusabdullah: wrapMiddlewareFactory() seems like a dumb name to me [04:06] jesusabdullah: Any suggestions? [04:07] ljharb: jesusabdullah: it's a function. that returns a middleware. call it "getMiddleware" or something [04:08] jesusabdullah: but I'm not getting a middleware [04:08] jesusabdullah: I want a one-word noun for the fucker [04:08] r04r has joined the channel [04:10] jesusabdullah: I guess 'Factory' is as good as any other. :6 [04:11] cconstantine_ has joined the channel [04:13] ljharb: stop hating on verbs. http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html [04:13] ljharb: what does it DO. it doesn't "factor". [04:14] timoxley: Anyone here use any kind of formal/informal modelling tools/diagramming for planning their software? [04:14] r04r has joined the channel [04:14] dr0id has joined the channel [04:15] jesusabdullah: ljharb: The verb is 'wrap' [04:15] jesusabdullah: The metaphor is such that I'm wrapping a "thing" [04:15] ljharb: jesusabdullah: what are you wrapping it with [04:16] jesusabdullah: https://github.com/jesusabdullah/node-equip [04:17] nsolsen has joined the channel [04:17] jesusabdullah: It's an interesting use case [04:17] ljharb: ok so "equip" both creates and wraps a middleware [04:17] polardude has joined the channel [04:17] ljharb: *creates a function that returns a wrapped middleware [04:17] ljharb: and "wrapFactory" or whatever wraps the middleware that a function already returns? [04:18] jesusabdullah: yes, equip normally wraps a middleware, but I also want to wrap the function that returns a middleware, which takes the arguments passed to the middleware generator thing and returns a wrapped middleware [04:18] MT_ has joined the channel [04:18] maxogden: yo dog [04:18] ljharb: what happens if i just do app.use(function () { return equip(giveMeMyMiddleware); }); ? [04:18] ljharb: lol [04:18] ljharb: i mean app.use(function () { return equip(giveMeMyMiddleware.apply(null, arguments); }); [04:18] jesusabdullah: more succinctly: https://github.com/jesusabdullah/node-equip/blob/master/lib/index.js#L51-59 [04:18] jesusabdullah: Like, it's not hard, it's just a convenience method [04:18] jesusabdullah: It totally works [04:19] jesusabdullah: I just think "wrapFactory" isn't a very good commando name [04:19] jsurfer_ has joined the channel [04:19] jesusabdullah: could go to 'wrap' but that's pretty generic. Plus, equip is already a wrapper [04:19] maxogden: wrapquip [04:19] maxogden: ewrap [04:20] jesusabdullah: not feelin' them [04:20] maxogden: falafel [04:21] maxogden: tortilla [04:21] maxogden: sarong [04:21] maxogden: plastic [04:21] maxogden: cling [04:21] ljharb: hm [04:21] zeade has joined the channel [04:22] ljharb: is there no way to determine if a function is middleware versus returns middleware? [04:22] jesusabdullah: not reliably [04:22] jesusabdullah: they're both functions [04:22] ljharb: also, what's the use case for having a function that returns a middleware versus just having a middleware itself? [04:22] ljharb: (that does things conditionally) [04:22] Brandon_R: hi [04:22] jesusabdullah: ljharb: app.use(middlewarething(options)); [04:22] jesusabdullah: middlewarething is a function that returns a middleware [04:23] jesusabdullah: and in my case, I'm making a library that exports a wrapped function [04:23] jesusabdullah: so that express users don't need to know it's wrapped [04:23] ljharb: jesusabdullah: app.use(equip(middlewarething(options))); ? [04:23] jesusabdullah: no [04:23] jesusabdullah: module.exports = equip.wrapFactory(middlewareThing); [04:23] jesusabdullah: and then [04:23] jesusabdullah: app.use(require('./middleware')(options)); [04:24] jesusabdullah: flatiron.app.use(require('./middleware'), options); [04:24] jesusabdullah: flatiron.app.router.on('*', require('./middleware')(options)); [04:24] jesusabdullah: Y'know [04:24] polardude has joined the channel [04:24] ljharb: hm [04:25] maxogden: let it be known that substack is currently drawing a cow [04:25] jesusabdullah: I habeeb it [04:25] jesusabdullah: Is it a JERSEY? [04:25] maxogden: the situation? [04:27] jesusabdullah: oh man you missed it [04:27] jesusabdullah: somehow New Jersey came up in conversation [04:27] jesusabdullah: and old Jersey, or just Jersey [04:28] jesusabdullah: and I said, "like a Jersey cow?" [04:28] jesusabdullah: Marak says, "What, Snooki?" [04:28] jesusabdullah: *rimshot* [04:29] markq has joined the channel [04:34] hij1nx has joined the channel [04:34] jesusabdullah: If anybody comes up with a better name for equip.wrapFactory lemme know! Im gonna see if I can get more tests working [04:34] jesusabdullah: THIS LIBRARY IS RELEASING TONIGHT >:| [04:35] jesusabdullah: and by "this library" I mean ecstatic 0.2.0 [04:35] ljharb: would it be easier to just hijack app.use, so that you only have to deal with middlewares themselves? [04:35] jesusabdullah: nope [04:35] jesusabdullah: The api is exactly 100% what I want except for the shitty name [04:36] MrTopf has joined the channel [04:36] erujolc_ has joined the channel [04:36] PPaul has joined the channel [04:37] ag4ve: why is chrome saying that my express.session cookie is 'http' and not 'secure'? [04:38] tuhoojabotti: because it's not https? [04:38] langworthy has joined the channel [04:39] ag4ve: the data is going over https [04:41] niloy has joined the channel [04:41] enjalot has joined the channel [04:41] Blorb has joined the channel [04:44] tuhoojabotti: Well according to Chrome the cookie is not. [04:44] tuhoojabotti: :U [04:44] ascarter has joined the channel [04:46] ljharb: ag4ve: the cookie has to be set secure separately, on the server http://en.wikipedia.org/wiki/HTTP_cookie#Secure_and_HttpOnly [04:47] ag4ve: ACTION looks for back under express's session api... [04:48] ljharb: ag4ve: https://github.com/visionmedia/express/issues/967 ? [04:49] hgg has joined the channel [04:50] maletor has joined the channel [04:51] jerrysv has joined the channel [04:51] fUD has joined the channel [04:52] fUD: Hi - how does npm setup the load path, I'm running a shell from within emacs but it can't find one of the npm modules when doing a require. [04:52] ag4ve: ljharb: awesome :) [04:52] nicholas_ has joined the channel [04:54] take_cheeze1 has joined the channel [04:54] jerrysv has joined the channel [04:55] markq has joined the channel [04:57] Brandon_R: does libuv have async callbacks? [04:58] OmidRaha has joined the channel [05:02] nerdy_ has joined the channel [05:03] jryans has joined the channel [05:03] fangel has joined the channel [05:07] gozala has joined the channel [05:08] mikeric has joined the channel [05:08] Stoobles has joined the channel [05:09] njain has joined the channel [05:09] yhahn has left the channel [05:09] PPaul has joined the channel [05:10] thetony: fUD: npm will install to node_modules in whatever directory you called it from unless using the -g flag [05:10] blendedbychris has joined the channel [05:12] tornad has joined the channel [05:13] zackattack has joined the channel [05:15] Morkel has joined the channel [05:15] fUD: thetony: its installed in the .npm directory in my home. But for some reason when I run node under emacs (a js-hint mode) it fails to find the 'formiddable' package but when I do require('formiddable') in a shell it works fine.. [05:15] maxogden: fUD: http://nodejs.org/api/modules.html has lotsa explanation [05:16] fUD: maxogden: let me se.. [05:16] Morkel has joined the channel [05:18] igl1 has joined the channel [05:19] dgathright has joined the channel [05:24] bearnard has joined the channel [05:24] ljharb has joined the channel [05:24] bicranial has joined the channel [05:25] evilnate has joined the channel [05:27] ag4ve: if i have a login page and i try to store req.session.email in handlers, i don't seem to be able to see that in the same request? [05:27] xbayrockx has joined the channel [05:28] ag4ve: eh, heh, maybe it is and i'm being stupid and looking at the wrong branch :( [05:32] Morkel has joined the channel [05:33] babab00m has joined the channel [05:37] Morkel has joined the channel [05:38] RORgasm has joined the channel [05:38] mxbtty has joined the channel [05:38] ewalker has joined the channel [05:40] westg has joined the channel [05:40] sanu has joined the channel [05:41] mxbtty has joined the channel [05:41] lzskiss has joined the channel [05:42] Morkel has joined the channel [05:45] markq has joined the channel [05:46] whaley has joined the channel [05:47] nateps has joined the channel [05:48] westg has joined the channel [05:48] evilnate has joined the channel [05:48] sh1mmer has joined the channel [05:48] yawNO has joined the channel [05:48] fangel has joined the channel [05:52] evilnate has joined the channel