poetry2nix
poetry2nix copied to clipboard
Distinguish sdist overrides from wheel overrides
We build from source as a first priority, meaning that most of our overrides are created only with source builds in mind. Some overrides break when they are installed as wheels instead, meaning that we need a way to distinguish these overrides to determine which one to apply and when.
A previous attempt exists at https://github.com/nix-community/poetry2nix/pull/103.
Also see issue https://github.com/nix-community/poetry2nix/issues/98.
I think that's related but I also hit this when disabling wheel and the project is poetry based, for instance recent versions of importlib-metadata only have a pyproject.toml
note: keeping build directory '/tmp/nix-build-python3.9-importlib-metadata-4.11.2.drv-0'
error: builder for '/nix/store/q98xyw4qccpzpma0jmkigd46cjn4pv3p-python3.9-importlib-metadata-4.11.2.drv' failed with exit code 1;
last 17 log lines:
> Sourcing python-remove-tests-dir-hook
> Sourcing python-catch-conflicts-hook.sh
> Sourcing python-remove-bin-bytecode-hook.sh
> Sourcing pip-build-hook
> Using pipBuildPhase
> Using pipShellHook
> Sourcing pip-install-hook
> Using pipInstallPhase
> Sourcing python-imports-check-hook.sh
> Using pythonImportsCheckPhase
> Sourcing python-namespaces-hook
> unpacking sources
> unpacking source archive /nix/store/r06rdpnigfccyinggqivhsvywl11y1b5-importlib_metadata-4.11.2.tar.gz
> source root is importlib_metadata-4.11.2
> setting SOURCE_DATE_EPOCH to timestamp 1645990898 of file importlib_metadata-4.11.2/setup.cfg
> patching sources
> substitute(): ERROR: file 'setup.py' does not exist
For full logs, run 'nix log /nix/store/q98xyw4qccpzpma0jmkigd46cjn4pv3p-python3.9-importlib-metadata-4.11.2.drv'.