Commit graph

10 commits

Author SHA1 Message Date
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