00:00:50  <Leerp3>mattpardee_: ping
00:00:53  <mattpardee>pong
00:00:56  <mattpardee>sup
00:01:24  <Leerp3>I'm curious, would the filesystem features we discussed earlier (things that would allow `npm link` to exist) ever work on c9.io?
00:01:36  <mattpardee>what does npm link do
00:01:39  <Leerp3>Seeing as two different projects could be on entirely different file systems
00:02:00  <Leerp3>mattpardee: `npm link` is a dev tool that allows you to install a package from a local location, by a symlink
00:02:21  <Leerp3>mattpardee: That package is then updated live, anytime you make changes (because it's just a symlink)
00:02:33  <mattpardee>oh
00:02:57  <mattpardee>that seems slightly dangerous
00:03:01  <mattpardee>how do you use it?
00:03:06  <mattpardee>by you I mean you specifically
00:03:24  <Leerp3>mattpardee: You mean on c9? or in existing ways
00:03:32  <mattpardee>existing ways
00:04:17  <Leerp3>mattpardee: You would use it when you are developing two packages that might depend on eachother, or one on the other. For example, say you write a website and then you write a library for that website. The library is generic enough that you want to make it it's own package
00:04:49  <Leerp3>So, you link the library to the website, and now when you make changes to the library your website code sees those changes instantly
00:05:03  <mattpardee>that sounds insane to me, but OK i see the usecase
00:05:05  <mattpardee>during development
00:05:21  <mattpardee>rapid development anyway
00:05:23  <Leerp3>mattpardee: The other solution would involve constantly "rm -rf node_modules/libpackage; npm install libpackage"
00:05:31  <mattpardee>not exactly you can do npm update
00:05:35  <mattpardee>modifying your package.json
00:05:41  <mattpardee>and that way you are always certain you want to update that package
00:05:47  <mattpardee>because it might break something with your code
00:05:53  <mattpardee>god forbid that symlink makes its way into production
00:05:57  <mattpardee>I mean that sounds really dangerous to me
00:06:14  <Leerp3>mattpardee: God forbid you use `node_modules` into production..
00:06:16  <Leerp3>That shouldn't happen.
00:06:29  <Leerp3>Ie, compiled code in node_modules would bleed into production.
00:06:29  <mattpardee>what happens when you push a symlinked NPM package into another environment
00:06:30  <mattpardee>just curious
00:06:48  <Leerp3>mattpardee: You don't.. i'm confused on your statement :s
00:06:59  <mattpardee>you're symlinked to another lib
00:07:09  <mattpardee>a symlink by its nature means the thing you're linking to is somewhere else
00:07:20  <mattpardee>and you push your codebase somewhere else
00:07:23  <mattpardee>what happens to that symlink?
00:07:25  <Leerp3>Yes, but you don't take node_modules with you between locations
00:07:27  <mattpardee>it now points to nowhere
00:07:29  <Leerp3>You don't commit node_modules
00:07:36  <mattpardee>gotcha
00:07:40  <mattpardee>I wasn't being sarcastic
00:07:44  <Leerp3>I know
00:08:11  <Leerp3>node_modules is intended to be compiled for that exact environment. Especially if one of the libraries within it actually has real compiled code
00:08:15  <mattpardee>anyway my point stands
00:08:33  <Leerp3>If it has compiled code and you bring it with you to another environment, say, a different OS. A broken symlink won't be the only problem
00:08:34  <mattpardee>you push that thing into production and it had been symlinked to another location, no? so maybe that symlink points to code that works
00:08:38  <mattpardee>but the original package location hasn't been updated
00:08:52  <Leerp3>mattpardee: nono, again, you don't push node_modules
00:08:55  <mattpardee>I know
00:08:57  <mattpardee>that's not what I'm saying
00:09:05  <Leerp3>mattpardee: How would it make it into production then?
00:09:05  <mattpardee>in your development codebase you're symlinked to code that works
00:09:13  <mattpardee>then you push your code somewhere else
00:09:19  <Leerp3>mattpardee: No, only node_modules is symlinked
00:09:28  <mattpardee>listen
00:09:33  <Leerp3>The symlink file exists at node_modules/package
00:09:46  <Leerp3>In your package.json file, you simply require "package" like you normally would
00:09:49  <mattpardee>you push your codebase somewhere else and the deployment environment pulls down the packages listed in package.json
00:10:08  <mattpardee>what if that symlinked package hasn't been pushed
00:10:19  <mattpardee>so your new code is depending on an old version of the package
00:10:37  <mattpardee>in this scenario
00:10:49  <Leerp3>Yes, but there is no possible workaround for that lol
00:10:50  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
00:10:57  <mattpardee>yes there is: don't use symlinks! :-)
00:11:10  <Leerp3>mattpardee: The only solution would be to always, for every package, push public code
00:11:13  <Leerp3>Every time
00:11:20  <Leerp3>That's not development :s
00:11:25  <mattpardee>sure it is
00:11:30  <mattpardee>it doesn't have to be public though
00:11:33  <mattpardee>anyway
00:11:36  <mattpardee>It's not safe
00:11:46  <mattpardee>symlinking basically says, "I'm confident I can keep track of this package"
00:11:56  <mattpardee>but try that technique when your codebase gets large enough where you can't keep track of it anymore
00:12:00  <mattpardee>that's a recipe for disaster
00:12:06  <mattpardee>or when you have multiple developers
00:12:19  <Leerp3>mattpardee: I disagree heavily :P
00:12:42  <Leerp3>mattpardee: If you push code to the master repo that depends on a version you have on your computer, *you* made the mistake
00:12:43  <mattpardee>it's like saying, OK here I am working on node_modules/ace/node_modules/dryice/node_modules/mkdirp
00:12:51  <Leerp3>Not the symlink, and not your local code
00:13:20  <mattpardee>Leerp3 yes but we choose sound development techniques because they're sound
00:13:33  <mattpardee>because they don't break our code because of a slight of mind
00:13:53  <Leerp3>mattpardee: To be fair, the master repo on cloud9 is horrible xD
00:14:10  <mattpardee>ok
00:14:21  <mattpardee>I'm off
00:14:21  <Leerp3>At any rate, supporting npm features shouldn't be at cloud9's decision
00:14:24  <mattpardee>ttyl
00:14:27  <Leerp3>Later.
00:27:41  * mattpardeequit
00:28:01  * mattpardeejoined
00:44:48  * adrianFquit (Quit: bye)
01:07:04  * mattpardeequit (Ping timeout: 240 seconds)
01:08:05  * hipertrackerquit (Quit: hipertracker)
01:08:55  * hipertrackerjoined
01:21:04  * mattpardee_quit (Quit: Computer has gone to sleep.)
01:24:01  * Leerp3part ("Leaving")
02:02:04  * hipertrackerquit (Quit: hipertracker)
02:45:14  * mattpardeejoined
04:53:21  * mattpardee_joined
05:10:52  * ricklonpart
05:53:08  * hipertrackerjoined
06:46:21  * hipertrackerquit (Quit: hipertracker)
07:27:13  * jkridnerquit (Read error: Connection reset by peer)
07:27:24  * jkridner__joined
09:13:33  * mAritzjoined
09:19:26  * hipertrackerjoined
10:02:44  * mattpardee_quit (Quit: Computer has gone to sleep.)
11:33:20  * Garrickquit (Remote host closed the connection)
11:34:43  * Raynosquit (Remote host closed the connection)
11:42:52  * Garrickjoined
11:47:46  * Raynosjoined
11:50:40  * hipertrackerquit (Quit: hipertracker)
11:55:09  * hipertrackerjoined
12:18:06  * hipertrackerquit (Quit: hipertracker)
12:19:42  * hipertrackerjoined
13:01:29  * hipertrackerquit (Quit: hipertracker)
13:15:17  * mAritzquit (Quit: Leaving)
16:45:07  * mrkeejoined
16:45:57  * mrkeepart
16:57:59  * mrkeejoined
17:02:34  <mrkee>Hi guys, I've signed up for free account with cloud9ide. When I try to create new workspace, under my projects I get notification that it is processing, after some times it just stops, and on main window cloning workspace, nothing else. I am using 1.0.1180.79 on macosx 10.7.4.
17:11:50  * mattpardee_joined
17:29:38  * mattpardee_quit (Quit: Computer has gone to sleep.)
18:11:43  * mrkeepart
18:33:29  * mAritzjoined
18:49:54  * rimanjoined
18:50:18  <riman>anyone has problem editing workspace ?
18:51:08  <riman>i click on the 'Edit workspace' button and it spins for a minute and nothing happens
18:52:35  <riman>btw i just created an account..so am i doing something wrong ?
18:58:36  * rimanpart
19:09:55  * hipertrackerjoined
19:27:02  * jkridner__quit (Read error: Connection reset by peer)
19:27:23  * jkridnerjoined
19:50:01  * adrianFjoined
19:56:42  * mattpardee_joined
19:57:49  * mattpardee_quit (Client Quit)
21:21:44  * adrianFquit (Read error: Connection timed out)
21:23:04  * piscisaureus_joined
21:52:04  * piscisaureus_quit (Ping timeout: 260 seconds)
21:56:18  * piscisaureus_joined
22:08:21  * mattpardee_joined
22:15:47  * hipertrackerquit (Quit: hipertracker)
22:17:03  * hipertrackerjoined
22:22:44  * mattpardee_quit (Quit: Computer has gone to sleep.)
22:26:05  * mattpardee_joined
22:28:45  * piscisaureus_quit (Ping timeout: 252 seconds)
22:43:19  * mattpardee_quit (Quit: Computer has gone to sleep.)
22:47:29  * mAritzquit (Quit: Leaving)