Commit graph

35 commits

Author SHA1 Message Date
DavHau
856ebd4240 remove last impurities 2020-10-08 01:50:34 +07:00
DavHau
6bf7d93260 relocate pypi-fetcher interface into mach-nix and remove impurities 2020-10-07 23:36:08 +07:00
DavHau
83ca142093 add: withDot package selection feature (flakes) 2020-10-07 12:18:02 +07:00
DavHau
02e36525eb fix flakes 2020-10-04 02:11:50 +07:00
DavHau
469891f8d0 allow to pass derivation as src to buildPythonPackage 2020-10-03 22:08:28 +07:00
DavHau
ea5662c765 add: raise error if python version of any extra_pkg doesn't match 2020-10-03 21:59:47 +07:00
DavHau
4564b6db53 export fetchPypiSdist and fetchPypiWheel 2020-10-03 16:56:11 +07:00
DavHau
19635bf953 improve error message when autodetecting pname fails 2020-10-03 16:53:21 +07:00
DavHau
393cdb9d8f add: export also overlay + nixpkgs in passthru of mkPython 2020-09-29 17:10:46 +07:00
DavHau
0730565673 fix: mkPython.passthru.selectPkgs 2020-09-28 12:23:09 +07:00
DavHau
a01821000c add mach-nix overrides to passthru of mkPython 2020-09-28 11:09:25 +07:00
DavHau
93bcd6b159 fix: pname/version null in buildPythonPackage 2020-09-28 11:09:00 +07:00
DavHau
348ee92dc1 feature: alternative mod function with more arguments 2020-09-22 17:48:35 +07:00
DavHau
bbc6199e3d fix: extra_pkgs don't end up in python env 2020-09-21 13:15:14 +07:00
DavHau
f71f371479 add: fixes.nix feature for buildPythonPackage 2020-09-21 12:14:48 +07:00
DavHau
5269a1f4eb fix: respect manually set 'propagatedBuildInputs' for buildPythonPackage 2020-09-20 16:59:17 +07:00
DavHau
f17b361603 fix collision when using simple overrides inside extra_pkgs 2020-09-20 16:36:28 +07:00
DavHau
b3a42dfa91 fix: provider check in conditions for fixes 2020-09-20 15:30:20 +07:00
DavHau
780766f68a improve error handling when extracting metadata 2020-09-20 14:35:50 +07:00
DavHau
73d1769db6 allow string for python argument 2020-09-16 11:14:28 +07:00
DavHau
e1341dc5fb allow to set passthru for buildPythonPackage 2020-09-16 11:13:09 +07:00
DavHau
a7ebb1f086 fix extras for buildPythonPackage 2020-09-16 00:37:16 +07:00
DavHau
976c4461c8 feature: fixes.nix 2020-09-13 21:34:54 +07:00
DavHau
7d27c66933 handle overrides for extra_pkgs 2020-09-12 00:54:26 +07:00
DavHau
d658b4154f add underscore override system 2020-08-26 15:24:50 +07:00
DavHau
b74899ffb6 allow calling mkPython and buildPythonPackage with a single argument 2020-08-25 15:21:49 +07:00
DavHau
2cf62ad225 add 'add_requirements' to buildPythonPackage 2020-08-25 10:38:30 +07:00
DavHau
76238f2825 automatically detect name and version from source 2020-08-25 10:11:08 +07:00
DavHau
b230865660 automatically extract requirements in buildPythonPackage 2020-08-24 18:20:29 +07:00
DavHau
f0b3b3c8e5
version 2.2.2 (#88)
# 2.2.2 (17 Aug 2020)

### Fixes
 - Packages with dot in name led to invalid nix expression
 - Problem generating error message for resolution impossible errors
 - `buildPythonPackage` of mach-nix failed if arguments like `pkgs` were passed.
 - When overriding packages, mach-nix now falls back to using `overrideAttrs` if `overridePythonAttrs` is not available.
 
### Package Fixes:
 - pip: installation failed. Fixed by forcing `nixpkgs` provider
 - gdal: building from sdist doesn't work. Fixed by forcing `nixpkgs` provider

### Development
 - Merged project `pypi-crawlers` into mach-nix (was separated project before)
2020-08-17 18:16:56 +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
a5c33aec75 add buildPythonPackage and buildPythonApplication 2020-07-03 11:10:02 +00: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
fa2bb2d33f
Improvements (#3)
* edd print version and improve UI

* default.nix return attributes

* add readme

* fix readme
2020-04-24 10:35:42 +00:00
DavHau
454ec4ebe9 init 2020-04-22 09:46:03 +00:00