Also use the same source filter for path deps.
The default source filter currently filters:
- Filters gitignore (if it exists, non-recursive)
- Filters pycache/pyc files
- Uses cleanSourceFilter to filter out .git/.hg, .o/.so, editor backup files & nix result symlinks
We need to check pyproject.toml & poetry.lock constraints
_separately_.
Consider the following scenario:
- `poetry` depends on `tox` which in turn depends on `virtualenv`.
- `poetry` _also_ depends directly on virtualenv, but only for older
python versions.
In this case we don't want `virtualenv` as a direct input to `poetry`
but we _do_ want it as an input for `tox`.
This adds the convenience functions withDefaults and
withoutDefaults which simply wrap the provided argument in a list
either with or without the default poetry overrides.
Tests have also been adapted to make use of `withDefaults` where
appropriate.
- Renamed mkPoetryPython to mkPoetryPackages as it's more descriptive
We intend to expose this function soon so a better name is in order.
- Put TOML parsing inside mkPoetryPackages to unify parsing and avoid double parsing.
This is not required for private repos where builtins.fetchGit would
suffice but _is_ required for Hydra (nixpkgs) where builtins.fetchGit is not allowed.
Drp `poetrylock` and `pyproject` mandatory arguments
without default values and drops `src` from `mkPoetryPyhon`.
Fix test invocations with invalid arguments.
- Extract utility functions to ./lib.nix
- Extract buildPythonPackage to ./mk-poetry-dep.nix
- Replace some functions with existing builtin functions
- Use lib.partition for python package splitting
- Drop package filtering on the top-level and leave it to pep425.nix
Provides a `select` function that picks the most appropriate `.whl` file
based on platform, arch, python version and manylinux/OSX - version.
- Adds unit tests for pep425
- Adds test for manylinux support
- Fixes overrides: `passhtru` must be extended, not overwritten
- Don't strip python packages: this screws up manylinux binaries