Commit graph

269 commits

Author SHA1 Message Date
TLP49i7_ae
c2d5f95bb8 add parameter to choose nixpkgs version (show it in --version) and add examples 2020-10-08 11:58:34 +07:00
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
7ed1116bd1 update nixpkgs and fix nix tests 2020-10-07 23:23:52 +07:00
DavHau
c89fbb88b4 fix: select correct wheel + add tests for it 2020-10-07 22:56:33 +07:00
DavHau
252b8b8a95 update deps-db and add twine to dev shell 2020-10-07 12:19:02 +07:00
DavHau
83ca142093 add: withDot package selection feature (flakes) 2020-10-07 12:18:02 +07:00
DavHau
ced54d27a1 package-fix: remove patches for httpx 2020-10-07 12:17:00 +07:00
DavHau
b0d0081d3d fix: unwanted python buildInput inheritance when overriding nixpkgs 2020-10-06 21:30:07 +07:00
DavHau
8de0d2ceda fix: select wrong python version for wheel 2020-10-06 13:34:12 +07:00
DavHau
2ee3786b06 remove useless trace in mariadb fix 2020-10-03 17:36:21 +07:00
DavHau
4564b6db53 export fetchPypiSdist and fetchPypiWheel 2020-10-03 16:56:11 +07:00
DavHau
59ae625c23 add fix for mariadb (but: package not yet available) 2020-10-03 16:54:28 +07:00
DavHau
91a263d5f4 fix-package: pyqt5 from nixpkgs and wheel 2020-09-22 17:49:28 +07:00
DavHau
7e81743f97 fix: nixpkgs packages with identical versions swallowed 2020-09-22 17:47:29 +07:00
DavHau
ac05859dcb version 2.4.1 2020-09-21 13:29:56 +07:00
DavHau
b7e05a1739 fix: null value in get_passthru. fixes #131 2020-09-21 12:30:55 +07:00
DavHau
c06f58f3b8 package-fix: allow sdist provider for pip 2020-09-21 12:30:19 +07:00
DavHau
1d7ca9fb7e fix-package: remove reproducible.patch from pip versions older than 20.0 2020-09-21 12:16:03 +07:00
DavHau
4070c03e71 fix: wrong provider detected in fixes for sdist packages 2020-09-21 12:01:00 +07:00
DavHau
b37d9bb196 version 2.4.0 2020-09-20 17:41:35 +07:00
DavHau
460501c1ae pump pypi deps and nixpkgs 2020-09-20 15:56:18 +07:00
DavHau
b3a42dfa91 fix: provider check in conditions for fixes 2020-09-20 15:30:20 +07:00
DavHau
fb0aa8f926 fix: wheels with multiple python versions in filename (pyqt5) 2020-09-16 11:16:03 +07:00
DavHau
7efb5de273 add fix for orange 3 2020-09-16 02:11:48 +07:00
DavHau
d401de7b87 stop unifying pkg-names -> fixes passthru inf. recursions 2020-09-15 13:48:35 +07:00
DavHau
bc2157e530 fix get_passthru; fix problem with dot in names 2020-09-13 21:52:52 +07:00
DavHau
7098c4b6e6 fix passthru already defined 2020-09-13 21:42:07 +07:00
DavHau
57ac0f997c Merge branch 'fixes2' into dev
# Conflicts:
#	mach_nix/generators/overides_generator.py
2020-09-13 21:38:29 +07:00
DavHau
976c4461c8 feature: fixes.nix 2020-09-13 21:34:54 +07:00
DavHau
02d2779810 inherit passthru from nixpkgs 2020-09-12 20:19:41 +07:00
DavHau
de1a164858 version 2.3.0 2020-08-26 13:19:25 +07:00
DavHau
76238f2825 automatically detect name and version from source 2020-08-25 10:11:08 +07:00
DavHau
83385f91ee fix bug: buildInputs with dot in name 2020-08-24 14:33:27 +07:00
DavHau
e7c549084e fix version filtering bug introduced by 944d50cd09 2020-08-23 20:11:49 +07:00
DavHau
edd42746a4 update deps db and nixpkgs 2020-08-23 19:41:50 +07:00
DavHau
944d50cd09 fix: don't user normalized version to reference package
(fixed #93, fixes #92, fixes #82)
2020-08-23 19:39:47 +07:00
DavHau
662407c0f3 remove rec from overrides (fixes #97) 2020-08-20 14:36:20 +07:00
DavHau
6a8718b7e1 fix bug introduced by quoting top level attr names 2020-08-20 14:32:57 +07:00
DavHau
0963d72ba8 fix top level deps with dot in name (fixes #83) 2020-08-18 13:07:04 +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
dd71ac96d5 fix ResolutionImpossible error msg; fix crash on packages with dot in name 2020-08-12 00:15:12 +07:00
DavHau
e160c5c93a force pip from nixpkgs; remove importmagic3 default providers
- fixes #61
2020-08-12 00:15:12 +07:00
Sylvain Fankhauser
67226aae7a
Always quote package names (#71)
Since they can contain characters that have a meaning in Nix, such as a dot, for
example in the package "zope.interface".
2020-08-12 00:13:53 +07:00
DavHau
1652e31ce3
Dev (#63)
* fix abi tag for python 3.8

* handle circular deps; print info ResolutionImpossible; add tests

* fix readme

* version 2.2.1
2020-08-11 18:40:10 +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
9f12a12b03 improve nixpkgs name mapping 2020-08-08 17:08:11 +07:00
DavHau
3b4db038b6 get platform and system from nix env 2020-08-08 17:08:11 +07:00
DavHau
17aa8ceedd respect requires_python for wheels, support macos, add caching 2020-08-08 17:08:11 +07:00
DavHau
c8936715d2 rename overlays_generator -> overrides_generator 2020-07-30 20:59:08 +07:00
Siddharth Verma
da74d4b31f
Fix broken wheels (#49)
* Added dontStrip to mkPython
2020-07-27 11:13:43 +07:00
DavHau
fc45307520 version 2.1.0 2020-07-04 12:50:07 +00:00
DavHau
c708c5a7cb fix error when package == null 2020-07-03 05:18:38 +00:00
DavHau
12cde636cc version 2.0.1 2020-06-29 15:01:35 +00:00
DavHau
b7be58294d use 'pname' and 'version' instead of name 2020-06-28 13:56:54 +00:00
DavHau
a1f4a672c7 filter out unwanted buildInputs when overriding python packages 2020-06-28 13:11:44 +00:00
DavHau
995e7d1ef4 fix bug: some deps with markers were ignored (fixes #26) 2020-06-28 06:15:09 +00:00
DavHau
c8f6586e20 cleanup leftover code of removed functionality 'prefer_nixpkgs' 2020-06-28 02:32:19 +00:00
DavHau
e06dba1f2f always override python pkgs from nixpkgs (fixes #28) 2020-06-28 02:15:32 +00:00
Matías Lang
06a80810d1
Fix AttributeError when nix-build fails (#30)
Since commit fa2bb2d33f, the nix-build
subprocess is called without capture_output=True. Therefore, proc.stderr
is None. The subprocess stderr is already being dumped to stderr, so
there is no need for doing a print.
2020-06-27 12:47:56 +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
9cdd2b74ee
strictly disable overlays (#17) 2020-05-07 03:53:44 +00:00
DavHau
8b7559dc12
Improve docs, examples, add Dockerfile (#6)
* add simple and advanced usage examples and readme

* add Dockerfile for debugging non-nixos installation

* fix readme
2020-04-27 09:45:49 +00:00
DavHau
d5f91dbb95 bump version to 1.0.0 2020-04-24 10:44:49 +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
422b2b307e improve cmdline UI 2020-04-23 04:26:23 +00:00
DavHau
1c364f82ac improve installation for other platforms 2020-04-23 03:54:23 +00:00
DavHau
f576b6abe4 update pypi-deps-db commit 2020-04-22 11:01:11 +00:00
DavHau
454ec4ebe9 init 2020-04-22 09:46:03 +00:00