gisle / tcl.pm

Tcl extension module for Perl
http://search.cpan.org/dist/Tcl
9 stars 8 forks source link

Whack the executable permissions mole :^) #21

Closed chrstphrchvz closed 5 years ago

chrstphrchvz commented 5 years ago

Got set again in 8935cbb97e5.

@vadrer Does git config core.filemode false not make a difference? To correct myself from earlier, I see now that this can be set/unset --global-ly , but I don't know if that only affects future repos and not existing ones, i.e. whether the older per-repo setting overrides the --global one.

vadrer commented 5 years ago

I see your point and agree with you Soon I will defend this problem.

But is it actually pain in the (_|_) ? what we gain on resolving this problem? What do we loose?

chrstphrchvz commented 5 years ago

It isn't a pain; I admit there are more important things to worry about.

Tcl.pm and Tcl.xs don't benefit from having executable permissions, so they might as well not be set. For Makefile.PL, aside from it being useless to have executable permissions without also having a shebang line, this is what some others in the CPAN community say: https://cpants.cpanauthors.org/release/VKON/Tcl-1.27https://cpants.cpanauthors.org/kwalitee/buildtool_not_executable

Kwalitee Indicator: buildtool_not_executable

The build tool (Build.PL/Makefile.PL) is executable. This is bad because you should specify which perl you want to use while installing.

How to fix

Change the permissions of Build.PL/Makefile.PL to not-executable.

git config core.filemode false is just an attempt to prevent Windows machines from setting executable permissions on files they touch during commits.