From b438d47344dd72ccf3847eac4caa2c83d9b1b696 Mon Sep 17 00:00:00 2001 From: Tomas Hrnciar Date: Wed, 1 Apr 2020 11:56:22 +0200 Subject: [PATCH] Remove shebang from nonexecutable script When packaging pip in Fedora, we have realised that there is a nonexecutable file with a shebang line. It seems that the primary purpose of this file is to be imported from Python code and hence the shebang appears to be unnecessary. Shebangs are hard to handle when doing downstream packaging because it makes sense for upstream to use `#!/usr/bin/env python` while in the RPM package, we need to avoid that and use a more specific interpreter. Since the shebang was unused, I propose to remove it to avoid the problems. We have found more shebangs but in vendored packages. I have also opened PRs there: https://github.com/ActiveState/appdirs/pull/144 https://github.com/psf/requests/pull/5410 https://github.com/chardet/chardet/pull/192 x --- news/7959.trivial | 17 +++++++++++++++++ src/pip/_internal/__init__.py | 1 - 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 news/7959.trivial diff --git a/news/7959.trivial b/news/7959.trivial new file mode 100644 index 00000000000..dffd57a83ff --- /dev/null +++ b/news/7959.trivial @@ -0,0 +1,17 @@ +Removes shebang from nonexecutable script. + +When packaging pip in Fedora, we have realised +that there is a nonexecutable file with a shebang line. + +It seems that the primary purpose of this file is to be imported from Python +code and hence the shebang appears to be unnecessary. + +Shebangs are hard to handle when doing downstream packaging because it makes +sense for upstream to use ``#!/usr/bin/env python`` while in the RPM package, we +need to avoid that and use a more specific interpreter. Since the shebang was +unused, I propose to remove it to avoid the problems. + +We have found more shebangs but in vendored packages. I have also opened PRs there: +https://github.com/ActiveState/appdirs/pull/144 +https://github.com/psf/requests/pull/5410 +https://github.com/chardet/chardet/pull/192 diff --git a/src/pip/_internal/__init__.py b/src/pip/_internal/__init__.py index 3aa8a4693ff..264c2cab88d 100755 --- a/src/pip/_internal/__init__.py +++ b/src/pip/_internal/__init__.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python import pip._internal.utils.inject_securetransport # noqa from pip._internal.utils.typing import MYPY_CHECK_RUNNING