Doc: how to create a Python wheel

This commit is contained in:
Frederik Rietdijk 2016-08-13 14:18:59 +02:00
parent 49222660fc
commit 6f1551d597

View file

@ -748,6 +748,23 @@ in newpkgs.python35.withPackages (ps: [ps.blaze])
```
The requested package `blaze` depends upon `pandas` which itself depends on `scipy`.
### `python setup.py bdist_wheel` cannot create .whl
Executing `python setup.py bdist_wheel` fails with
```
ValueError: ZIP does not support timestamps before 1980
```
This is because files are included that depend on items in the Nix store which have a timestamp of, that is, it corresponds to January the 1st, 1970 at 00:00:00. And as the error informs you, ZIP does not support that.
Fortunately `bdist_wheel` takes into account `SOURCE_DATE_EPOCH`. On Nix this value is set to 1. By setting it to a value correspond to 1980 or later it is possible to build wheels.
Use 1980 as timestamp:
```
SOURCE_DATE_EPOCH=315532800 python3 setup.py bdist_wheel
```
or the current time:
```
SOURCE_DATE_EPOCH=$(date +%s) python3 setup.py bdist_wheel
```
### `install_data` / `data_files` problems