mirror of
https://github.com/python/cpython.git
synced 2025-12-10 19:10:59 +00:00
There are plenty of legitimate scripts in the tree that begin with a
`#!`, but also a few that seem to be marked executable by mistake.
Found them with this command -- it gets executable files known to Git,
filters to the ones that don't start with a `#!`, and then unmarks
them as executable:
$ git ls-files --stage \
| perl -lane 'print $F[3] if (!/^100644/)' \
| while read f; do
head -c2 "$f" | grep -qxF '#!' \
|| chmod a-x "$f"; \
done
Looking at the list by hand confirms that we didn't sweep up any
files that should have the executable bit after all. In particular
* The `.psd` files are images from Photoshop.
* The `.bat` files sure look like things that can be run.
But we have lots of other `.bat` files, and they don't have
this bit set, so it must not be needed for them.
Automerge-Triggered-By: @benjaminp
|
||
|---|---|---|
| .. | ||
| builtin | ||
| data | ||
| data01 | ||
| data02 | ||
| data03 | ||
| extension | ||
| frozen | ||
| import_ | ||
| namespace_pkgs | ||
| source | ||
| zipdata01 | ||
| zipdata02 | ||
| __init__.py | ||
| __main__.py | ||
| abc.py | ||
| fixtures.py | ||
| test_abc.py | ||
| test_api.py | ||
| test_lazy.py | ||
| test_locks.py | ||
| test_main.py | ||
| test_metadata_api.py | ||
| test_namespace_pkgs.py | ||
| test_open.py | ||
| test_path.py | ||
| test_pkg_import.py | ||
| test_read.py | ||
| test_resource.py | ||
| test_spec.py | ||
| test_threaded_import.py | ||
| test_util.py | ||
| test_windows.py | ||
| test_zip.py | ||
| threaded_import_hangers.py | ||
| util.py | ||