Commit Graph

84 Commits

Author SHA1 Message Date
Arnout Engelen
17c840055e setuptools: stable file ordering for sdist
We already re-pack the source distribution to make the
timestamps consistent, but the result is still not
entirely stable because by default tar does not sort
the files in the archive deterministically. This PR
makes sure the entries are sorted by name.

https://github.com/NixOS/nixpkgs/issues/105502
2020-12-08 05:28:38 +01:00
Frederik Rietdijk
ea0bf3c70a python3Packages.setuptools: 47.3.1 -> 50.3.1 2020-12-01 14:44:23 +01:00
Basile Henry
548db366fd
pythonPackages.setuptools: reproducible sdist (#104009)
* setuptools: Remove date from release tag

* setuptools: Fix timestamps in sdist

* setuptools: Move untar/retar to buildPhase

* setuptools: Reproducible 44.0

* setuptools: Use $SOURCE_DATE_EPOCH for src

Co-authored-by: Pavol Rusnak <pavol@rusnak.io>

Co-authored-by: Pavol Rusnak <pavol@rusnak.io>
2020-11-18 15:41:27 +01:00
Jonathan Ringer
798c2d8bc1 python3Packages.setuptools: 46.1.3 -> 47.3.1 2020-07-02 17:12:44 +02:00
Daiderd Jordan
b7ddbd52bd
treewide: replace SRI hashes 2020-06-01 15:24:19 +02:00
Frederik Rietdijk
5113af0250 pythonPackages.setuptools: 45.2.0 -> 46.1.3 2020-05-11 22:12:09 +02:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Jonathan Ringer
c3c47544e0 python2Packages.setuptools: freeze at 44.0.0 2020-03-01 21:29:28 -08:00
Jonathan Ringer
6181bfc353 pythonPackages.setuptools: 44.0.0 -> 45.2.0 2020-03-01 21:29:28 -08:00
Frederik Rietdijk
a3f40b507f pythonPackages.setuptools: 42.0.2 -> 44.0.0 2020-01-04 15:24:43 +01:00
Frederik Rietdijk
573b9ccfef python.pkgs.setuptools: 41.6.0 -> 42.0.2 2019-12-15 16:23:16 +01:00
Jonathan Ringer
1c27e73f8c pythonPackages.setuptools: 41.4.0 -> 41.6.0 2019-11-22 08:40:02 +01:00
Frederik Rietdijk
56727dc1ff Python: setuptools/wheel/pip now bootstrap from source
Since wheel support was introduced in 2015 we always relied on pre-built
wheels for bootstrapping. Now, we can bootstrap directly from the
sources of these packages in git.

The `bootstrapped-pip` packages is used to build `pip`, `setuptools` and `wheel`,
after which those packages are used to build everything else.

Note that when building `bootstrapped-pip` some errors are shown.
These are not important, the build actually does succeed and work as intended.
2019-10-20 19:48:00 +02:00
Frederik Rietdijk
501314c9e8 pythonPackages.setuptools: 41.4.0 2019-10-18 09:53:55 +02:00
Eric Culp
90be4c2c78 pythonPackages.setuptools: Remove windows files and make reproducible
- setuptools includes *.exe files by default, but can be excluded with an ENV variable.
- setuptools was built as an egg, which had reproducibility problems. Instead use a wheel

These are various *.exe and *.xml files used only on windows. setuptools
includes them by default since it normally creates a single release for
all operating systems.

This reduces the size from 1020.0K to 801.6K according to `nix-path -sh`.

The egg is a zip file. setuptools leaves timestamps in the egg,
which makes the build unreproducible. Unfortunately the files aren't
compressed so the size of setuptools increases to 2.3M from 0.8M
according to `nix path-info -sh`.

With this change, setuptools is reproducible according to

    nix-build -A python37Packages.setuptools --check
2019-10-14 08:44:43 +02:00
Frederik Rietdijk
0570a6b126 python.pkgs.setuptools: 0.33.4 -> 0.33.6 2019-09-06 15:18:45 +02:00
Frederik Rietdijk
f7e28bf5d8 Split buildPythonPackage into setup hooks
This commit splits the `buildPythonPackage` into multiple setup hooks.

Generally, Python packages are built from source to wheels using `setuptools`.
The wheels are then installed with `pip`. Tests were often called with
`python setup.py test` but this is less common nowadays. Most projects
now use a different entry point for running tests, typically `pytest`
or `nosetests`.

Since the wheel format was introduced more tools were built to generate these,
e.g. `flit`. Since PEP 517 is provisionally accepted, defining a build-system
independent format (`pyproject.toml`), `pip` can now use that format to
execute the correct build-system.

In the past I've added support for PEP 517 (`pyproject`) to the Python
builder, resulting in a now rather large builder. Furthermore, it was not possible
to reuse components elsewhere. Therefore, the builder is now split into multiple
setup hooks.

The `setuptoolsCheckHook` is included now by default but in time it should
be removed from `buildPythonPackage` to make it easier to use another hook
(curently one has to pass in `dontUseSetuptoolsCheck`).
2019-09-06 15:18:45 +02:00
Frederik Rietdijk
58dba9ee3e python: setuptools: 41.0.0 -> 41.0.1 2019-04-24 18:43:26 +02:00
Frederik Rietdijk
7629c4f9dc pythonPackages.setuptools: 40.8.0 -> 41.0.0 2019-04-18 12:42:43 +02:00
Frederik Rietdijk
87ce3fa021 python: setuptools: 40.6.3 -> 40.8.0 2019-02-17 14:40:41 +01:00
Frederik Rietdijk
e7f05dff34 python: setuptools: 40.6.2 -> 40.6.3 2019-01-18 09:37:10 +01:00
Frederik Rietdijk
f665828fa3 Python: improve cross-compilation
This changeset allows for cross-compilation of Python packages. Packages
built with buildPythonPackage are not allowed to refer to the build
machine. Executables that have shebangs will refer to the host.
2019-01-04 10:45:22 +01:00
Frederik Rietdijk
faf47b0c23 python: setuptools: 40.5.0 -> 40.6.2 2018-12-03 16:50:40 +01:00
Frederik Rietdijk
2da03a2ccf python: setuptools: 40.4.3 -> 40.5.0 2018-12-03 16:50:35 +01:00
Frederik Rietdijk
5bdb08a402 python: setuptools: 40.2.0 -> 40.4.3 2018-10-24 20:05:44 +02:00
Frederik Rietdijk
d9cb046ac8 python: setuptools: 40.0.0 -> 40.2.0 2018-08-25 18:07:16 +02:00
Frederik Rietdijk
16bd495463 python: setuptools: 39.2.0 -> 40.0.0 2018-07-26 12:43:14 +02:00
Frederik Rietdijk
4eb3784c55 python.pkgs.setuptools: 39.0.1 -> 39.2.0 2018-06-22 13:09:37 +02:00
Frederik Rietdijk
58cdabf9cf python.pkgs.setuptools: 38.4.1 -> 39.0.1 2018-04-08 11:36:07 +02:00
Frederik Rietdijk
50c978fae0 python: setuptools: 38.4.0 -> 38.4.1 2018-02-26 19:04:25 +01:00
Will Dietz
e33499bd30 python setuptools: fix for cross (nativeBuildInputs) 2018-01-22 17:19:02 -06:00
Frederik Rietdijk
3726bbc262 python: setuptools: 38.2.5 -> 38.4.0 2018-01-07 09:47:14 +01:00
Frederik Rietdijk
d3b85a4607 python.pkgs.setuptools: 38.2.3 -> 38.2.5 2017-12-31 11:01:56 +01:00
Orivej Desh
19b82ec144 Revert "pythonPackages.setuptools: make compatible with hasPythonModule"
The packages with this change can not be evaluated with `nix-env --drv-path` or
`hydra-eval-jobs`: 859dc02fa3

This reverts commit 859dc02fa3.
2017-12-08 14:21:20 +00:00
Asko Soukka
859dc02fa3 pythonPackages.setuptools: make compatible with hasPythonModule 2017-12-08 08:55:53 +01:00
Spencer Baugh
70c1899768 python.pkgs.setuptools: 36.7.1 -> 38.2.3 2017-12-07 14:14:15 +01:00
Frederik Rietdijk
24b7b3e49f python.pkgs.setuptools: 36.4.0/36.6.0 -> 36.7.1 2017-11-23 15:11:03 +01:00
Pascal Wittmann
24e87b49b6
Change many homepage urls from http to https #30636 2017-11-10 22:13:46 +01:00
Frederik Rietdijk
7ce848309e python.pkgs: updates 2017-10-27 21:34:42 +02:00
Frederik Rietdijk
a26ae760e2 python.pkgs.setuptools: upgrade to 36.4.0 2017-09-07 15:06:22 +02:00
Frederik Rietdijk
d58e1f1c7b python.pkgs: many updates 2017-08-25 19:36:14 +02:00
Michael Weiss
4b0afc169d zpl*: Fix the attribute name of the license
This was simply a typo since the license was added in 2013.
2017-08-06 13:49:18 +02:00
Frederik Rietdijk
6dfbfd6a07 python.pkgs.setuptools: 30.2.0 -> 36.0.1 2017-06-01 18:24:58 +02:00
Frederik Rietdijk
47d4575255 pythonPackages.setuptools: 28.8.0 -> 30.2.0 2016-12-05 17:33:21 +01:00
Frederik Rietdijk
d83d2ba4f3 pythonPackages.setuptools: 26.1.1 -> 28.8.0 2016-11-15 00:05:56 +01:00
Frederik Rietdijk
9a851907a8 pythonPackages.setuptools: 19.4 -> 26.1.1 2016-09-01 16:16:31 +02:00
Frederik Rietdijk
8fad3e81b0 pythonPackages.setuptools: specify priority
Both python3 and setuptools come with easy-install. For some magic
reason this hasn't caused any collisions yet, but it does with #17428.
We hereby prioritize the version that comes with setuptools.
2016-08-02 12:23:15 +02:00
Frederik Rietdijk
def310df45 pythonPackages.setuptools: fix for use in buildEnv
pythonPath needs to be set for it to be included in buildEnv.
This will also fix tox.
2016-07-02 23:44:10 +02:00
Frederik Rietdijk
d5e6a4494a Python: use PyPI mirror (#15001)
* mirrors: add pypi

* Python: Use pypi mirror for all PyPI packages
2016-04-26 13:38:03 +01:00
Corey Farwell
beabbc228c Fetch setuptools from PyPi via HTTPS. 2016-03-22 15:10:08 -04:00