tsd icon indicating copy to clipboard operation
tsd copied to clipboard

tsd --save flag modifies permissions of parent directories unnecessarily

Open joshuacc opened this issue 10 years ago • 3 comments

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. :smile:

Thanks!

joshuacc avatar Feb 12 '15 20:02 joshuacc

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?

vchrm avatar Jul 28 '15 18:07 vchrm

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

igorbt avatar Aug 11 '15 10:08 igorbt

Spent also several hours debugging this.

karmux avatar Jan 16 '16 16:01 karmux