Skip to content
This repository has been archived by the owner on Apr 30, 2019. It is now read-only.

tsd --save flag modifies permissions of parent directories unnecessarily #125

Open
joshuacc opened this issue Feb 12, 2015 · 3 comments
Open

Comments

@joshuacc
Copy link

Using tsd 0.6.0-beta.5.

I have a directory structure that looks like this: /var/www/applications/my-app/tsd.json. Anytime I run tsd with the --save flag, it sets the my-app folder's permissions to 744. As a result, the apache user can no longer execute the application contained in my-app.

The problem appears to be caused by this line.

I can probably put together a pull request to fix the issue, but in order to do so, I have a couple of questions.

  1. Why does tsd traverse the parent directories? Is there any reason it couldn't just start from the project root where it is being run?
  2. Why is tsd modifying permissions on existing directories?
  3. Why is tsd specifying an exact set of permissions rather than just u+w in order to guarantee write permissions exist?

I spent quite a while (several days) on this seemingly random failure, and want to make sure others don't run into the same thing. 😄

Thanks!

@vchrm
Copy link

vchrm commented Jul 28, 2015

Unfortunately others do run into the same thing. We have been struggling with this issue for months now. After each tsd call (from cli as well as with gulp-tsd) we need to change permissions to our own folders back again :-(.

My only question is: Why does tsd have to touch the permissions at all? Default mkdir() call creates the directory under default permissions (given by process' umask). Why is not this sufficient?

@igorbt
Copy link

igorbt commented Aug 11, 2015

The same happens in our setup. Any chance this bug will be fixed soon?

@karmux
Copy link

karmux commented Jan 16, 2016

Spent also several hours debugging this.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants