python3-pip: remove unneeded reproducible.patch

Since "python_pep517: use installer instead of pip" pip is no longer
used in builds, and therefore doesn't need to behave reproducibly.

I have submitted the patch upstream; upstream have suggested that the
way it had been used previously is non-reproducible by design, and
if pip is again brought into builds in the future, we should use
specific options for reproducibility:

https://github.com/pypa/pip/issues/11424

(From OE-Core rev: 654f9d5088d00ee27b4d2f7b3bb371195de52247)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Alexander Kanavin
2022-09-01 09:21:25 +02:00
committed by Richard Purdie
parent 598f3dfd49
commit 84146661b5
2 changed files with 0 additions and 84 deletions

View File

@@ -1,83 +0,0 @@
Pip installed wheels are not reproducible currently. The direct_url
files encode an installation path and the installed wheels compile
the python files at their location, not their final install location
which is incorrect.
To fix this, simply disable the direct_urls and pass the "root" to
the python compile function to strip that path out of the compiled
files.
A version of this patch, perhaps stripping root from the direct_urls
may be something that could be considered by upstream.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Upstream-Status: Submitted [https://github.com/pypa/pip/issues/11424]
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
---
src/pip/_internal/operations/install/wheel.py | 5 ++++-
src/pip/_internal/req/req_install.py | 5 ++++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/pip/_internal/operations/install/wheel.py b/src/pip/_internal/operations/install/wheel.py
index 1af8978..3e48f9b 100644
--- a/src/pip/_internal/operations/install/wheel.py
+++ b/src/pip/_internal/operations/install/wheel.py
@@ -434,6 +434,7 @@ def _install_wheel(
warn_script_location: bool = True,
direct_url: Optional[DirectUrl] = None,
requested: bool = False,
+ root: str = None,
) -> None:
"""Install a wheel.
@@ -610,7 +611,7 @@ def _install_wheel(
with warnings.catch_warnings():
warnings.filterwarnings("ignore")
for path in pyc_source_file_paths():
- success = compileall.compile_file(path, force=True, quiet=True)
+ success = compileall.compile_file(path, force=True, quiet=True, stripdir=root)
if success:
pyc_path = pyc_output_path(path)
assert os.path.exists(pyc_path)
@@ -721,6 +722,7 @@ def install_wheel(
warn_script_location: bool = True,
direct_url: Optional[DirectUrl] = None,
requested: bool = False,
+ root: str = None,
) -> None:
with ZipFile(wheel_path, allowZip64=True) as z:
with req_error_context(req_description):
@@ -733,4 +735,5 @@ def install_wheel(
warn_script_location=warn_script_location,
direct_url=direct_url,
requested=requested,
+ root=root,
)
diff --git a/src/pip/_internal/req/req_install.py b/src/pip/_internal/req/req_install.py
index a1e376c..4c3f1bb 100644
--- a/src/pip/_internal/req/req_install.py
+++ b/src/pip/_internal/req/req_install.py
@@ -779,7 +779,9 @@ class InstallRequirement:
assert self.local_file_path
direct_url = None
# TODO this can be refactored to direct_url = self.download_info
- if self.editable:
+ if '_PYTHON_SYSCONFIGDATA_NAME' in os.environ:
+ direct_url = None
+ elif self.editable:
direct_url = direct_url_for_editable(self.unpacked_source_directory)
elif self.original_link:
direct_url = direct_url_from_link(
@@ -796,6 +798,7 @@ class InstallRequirement:
warn_script_location=warn_script_location,
direct_url=direct_url,
requested=self.user_supplied,
+ root=root,
)
self.install_succeeded = True
return
--
2.25.1