Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove node_modules from .cfignore #8

Closed
dotchev opened this issue Sep 28, 2015 · 5 comments
Closed

Remove node_modules from .cfignore #8

dotchev opened this issue Sep 28, 2015 · 5 comments

Comments

@dotchev
Copy link
Contributor

dotchev commented Sep 28, 2015

There are several good reasons to avoid npm install during productive use.
Currently npm does not guarantee that you will get the same (bit for bit) dependencies as during your tests. So this results in the following risks:

  • Security: you cannot verify that malicious code is not injects in some of your dependencies
  • Stability: the content of some dependency could change without changing its version or even npm registry could be down

So it should be possible to push an app with pre-downloaded dependencies, i.e. with node_modules.
Currently this is not possible as .cfignore skips node_modules from cf push.

@pmuellr
Copy link
Member

pmuellr commented Sep 28, 2015

It's true that there are good reasons to avoid npm install. However, there are also good reasons to use npm install. Is there a way we can support both scenarios?

I think if you're going to remove node_modules from .cfignore, you prolly want to remove it from .gitignore as well.

Perhaps the best story for folks who want a customized version, is to fork the project, change whatever you want, and then in your package.json, reference cfenv via a git url.

@dotchev
Copy link
Contributor Author

dotchev commented Sep 28, 2015

Some people do commit node_modules in git, others download them during build and some run npm install during deployment (e.g. cf push).
See http://www.letscodejavascript.com/v3/blog/2014/03/the_npm_debacle.

In any case it should be up to the application to decide. A dependency should not force a particular process. One can easily add/remove node_modules in .cfignore and/or .gitignore at the root of their app.

@pmuellr
Copy link
Member

pmuellr commented Sep 29, 2015

So, looking at this again, I think you're right. Would you like to send a PR with the fixed .cfignore file?

pmuellr added a commit that referenced this issue Sep 29, 2015
Fix #8 - Remove node_modules from .cfignore
@pmuellr
Copy link
Member

pmuellr commented Sep 29, 2015

@dotchev - I updated npm to a 1.0.1 with your fix. Please test and post results back here.

@pmuellr pmuellr reopened this Sep 29, 2015
@pmuellr
Copy link
Member

pmuellr commented Oct 9, 2015

closing as I believe this has been resolved

@pmuellr pmuellr closed this as completed Oct 9, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants