3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/pkgs/development/interpreters/python
zimbatm c409f69480
pythonPackages.pip: make reproducible (#102222)
The previous attempt wasn't covering all of the bases. It relied on
invoking that pip-install-hook, and didn't apply to pip itself.

The core issue is that the generated .pyc files embed some of the
temporary paths, which are randomly generated. See
https://r13y.com/diff/bf8c3ca3148ebff9ecf41f294cc60b9f209c006d49699e356969ff32d736f1c6-8806a7cca91fdd300e48736bfcd57c4d0b54c1cc2fd61609f35143170862b59c.html

In this new attempt, the approach is to patch the TempFile
implementation directly, so that it creates stable temporary
directories. We also assume that if SOURCE_DATE_EPOCH is set, we are in
a scenario where reproducible builds are desirable and enter that
branch.

See also https://github.com/pypa/pip/issues/7808
2020-10-31 21:24:36 +01:00
..
catch_conflicts
cpython python310: init at 3.10a1 2020-10-19 09:31:27 -07:00
graalpython pythonInterpreters.graalpython37: init 2019-10-22 09:16:18 +02:00
hooks pythonPackages.pip: make reproducible (#102222) 2020-10-31 21:24:36 +01:00
manylinux Fix manylinux packages 2019-12-13 11:40:44 +01:00
pypy pypy, pypy3: 7.1.1 -> 7.3.1 2020-08-10 15:42:42 -07:00
tests python.tests: don't mix the two types of tests 2020-08-30 12:59:24 +02:00
update-python-libraries update-python-libraries: allow for top-level attrs to be updated with github fetcher 2020-10-15 12:10:08 -07:00
default.nix python310: init at 3.10a1 2020-10-19 09:31:27 -07:00
fetchpypi.nix pythonPackages.fetchPypi: support SRI hashes 2019-07-11 18:01:04 +02:00
mk-python-derivation.nix mk-python-derivation: document pyproject format 2020-09-16 17:38:41 +02:00
run_setup.py
setup-hook.nix
setup-hook.sh python: make it possible to disable the python setup-hook 2019-04-28 09:20:41 +02:00
sitecustomize.py Python: fix virtualenv with Python 2 2020-05-24 10:43:24 +02:00
tests.nix python.tests: don't mix the two types of tests 2020-08-30 12:59:24 +02:00
with-packages.nix
wrap-python.nix
wrap.sh python.pkgs.wrapPython: get rid of warning 2019-12-30 16:46:55 +01:00
wrapper.nix Python: introduce NIX_PYTHONPREFIX in order to set site.PREFIXES 2020-03-14 21:39:31 +00:00