Commit graph

24 commits

Author SHA1 Message Date
Jean-Paul Calderone
4d2cc6c6fe try just ignoring direct references 2021-11-12 09:16:07 -05:00
Florian Finkernagel
2d1efda0b6 correctly parse requirements that end in a stray comma 2021-10-27 11:03:18 +02:00
Tom Prince
338d99091b Switch PyVer to use packaging.version exclusively. 2021-10-12 14:26:52 -06:00
Tom Prince
624edfc3ea Add PEP440 prerelease version handling.
This switches to using `packaging.version` for version numbers
and `packaging.specifiers` for handling specifiers, the later
which implements the PEP440 logic for prereleases.
2021-10-12 13:06:03 -06:00
Tom Prince
2b87c68edb Add a special case for pytz>dev.
This deals with the workaround described in https://github.com/pypa/pip/issues/974#issuecomment-22641489.
2021-10-12 17:13:55 -06:00
Tom Prince
23a910dbc2 Require a separator when multiple specifiers are in a requirement. 2021-10-12 15:40:05 -06:00
Tom Prince
7aad9f0f9d Delete some dead code. 2021-10-12 12:12:49 -06:00
DavHau
b56a541af1 chore: remove debugging leftovers 2021-10-15 14:09:58 +07:00
DavHau
17c0c9d390 fix: requirements parsing 2021-06-09 13:10:33 +07:00
DavHau
65ea580168 improve requirements parsing 2021-06-06 14:57:04 +07:00
DavHau
e365b8582f fix version bug and requirements parsing 2020-11-21 13:34:51 +07:00
DavHau
26829fc9f4 fix: strip requirements lines before parsing 2020-11-21 10:44:21 +07:00
DavHau
fe7c806088 fix requirements parsing 2020-11-21 01:23:44 +07:00
DavHau
3ff3501551 reimplement requirement and version parsing 2020-11-21 00:08:20 +07:00
DavHau
f69e56c381 conda: only ignore simple builds during environment.yml parsing 2020-11-20 10:50:12 +07:00
DavHau
bd3b69eef0 symlink conda extra files to root dir 2020-11-19 01:09:56 +07:00
DavHau
21f195dec4 fix requirements parsing 2020-11-17 19:49:44 +07:00
DavHau
55f0bfbc4e continue work on conda 2020-11-17 18:29:44 +07:00
DavHau
678d716d1e WIP conda: add crawler for conda channels 2020-10-27 09:46:33 +07:00
DavHau
0925bc4147 WIP: conda 2020-10-26 01:09:37 +07:00
DavHau
a20691048e
version 2.2.0 (#60)
# 2.2.0 (09 Aug 2020)
Improved success rate, MacOS support, bugfixes, optimizations

### Features
 - Improved selection of wheel releases. MacOS is now supported and architectures besides x86_64 should be handled correctly.
 - Whenever mach-nix resolves dependencies, a visualization of the resulting dependency tree is printed on the terminal. 
 - The dependency DB is now accessed through a caching layer which reduces the resolver's CPU time significantly for larger environments.
 - The python platform context is now generated from the nix build environment variable `system`. This should decrease the chance of impurities during dependency resolution.
 
### Fixes
 - The requires_python attribute of wheels was not respected. This lead to failing builds especially for older python versions. Now `requires_python` is part of the dependency graph and affects resolution.
 - Detecting the correct package name for python packages in nixpkgs often failed since the attribute names don't follow a fixed schema. This lead to a handful of different errors in different situations. Now the package names are extracted from the pypi `url` inside the `src` attribute which is much more reliable. For packages which are not fetched from pypi, the `pname` attribute is used as fallback.
 - Fixed bug which lead to the error `attribute 'sdist' missing` if a package from the nixpkgs provider was used which doesn't publish it's source on pypi. (For example `tensorflow`)
 
### Other Changes
 - Mach-nix now uses a revision of the nixpkgs-unstable branch instead of nixos-20.03 as base fo the tool and the nixpkgs provider.
 - Updated revision of the dependency DB
2020-08-09 20:24:12 +07:00
DavHau
17aa8ceedd respect requires_python for wheels, support macos, add caching 2020-08-08 17:08:11 +07:00
DavHau
d37c1eb362
Version 2.0.0 (#20)
See Changelog.md for changes.

* adapt data interface for new sdist dependency graph format

* change wording in readme

* wheel support + concept providers

* overlay support WIP

* overlay support

* extras support for nixpkgs

* machnix as overrides

* granular provider settings + custom autoPatchelfHook

* improve overlay generator, remove prefer_new

* unify nixpkgs src

* update interface, bump version and examples

* fixes and updated docs
2020-05-19 09:46:48 +00:00
DavHau
454ec4ebe9 init 2020-04-22 09:46:03 +00:00