This repository has been archived by the owner on Oct 7, 2022. It is now read-only.
Releases: nix-community/pypi2nix
Releases · nix-community/pypi2nix
v2.0.0
This release of pypi2nix
is not backwards compatible with v1.8.1
. The command line interface changed.
CLI
- The
-V/--python-version
argument is not mandatory anymore. The python version isnixpkgs.python3
. You can specify the desired python version via itsnixpkgs
name, e.g.python35
orpython27
. --default-overrides
is now the default. You can disable the use of the default overrides by specifying--no-default-overrides
.- Logging works slightly different now. You can specify the verbosity of the logger via
-v
and-q
.-v
increases the verbosity by 1 level and-q
decreases it by the same amount. The levels areERROR
,WARNING
,INFO
andDEBUG
, whereINFO
is the default.
Functional Changes
pypi2nix
is now stricter when it comes to the packages it consumes. Ifpypi2nix
encounters environment markers that are not part of PEP 508 it will output warnings or even abort.pypi2nix
can now detect build dependencies of packages that utilizepyproject.toml
orsetup.cfg
.pypi2nix
now packages all dependencies which includessetuptools
andpip
. In previous versions ofpypi2nix
those packages were ignored by the program.- More kinds of license classifiers are recognized by the license detection routine.
Dump of git log
Test pypi upload (#357)
Merge pull request #355 from seppeljordan/bdist-msi
Merge pull request #356 from seppeljordan/update-readme-overrides
Merge pull request #354 from seppeljordan/update-dependencies
Introduce release type bdist_msi
--default-overrides is not discouraged anymore, adjust README.rst
Update development dependencies
Remove debugging print statement
Fix license detection (#353)
Improve warnings for unknown package type (#352)
Download necessary python sources instead of including them in package (#351)
Refactor bootstrap.nix (#350)
Remove setupcfg package from development environment (#349)
Remove dependency to setupcfg and use setuptools.config instead (#347)
Clearify README.rst about supported systems and nixpkgs channels (#348)
Update dependencies (#346)
Remove TO_IGNORE list of forbidden requirements (#343)
Use --default-overrides by default (#342)
Allow for 'sys.platform' in environment markers (#340)
Implement method to get sources directly from requirements_collector (#338)
Print warning when using --build-directory option (#336)
Update dependencies (#334)
Improve local path handling in requirements.txt files (#332)
Allow environment marker variable 'python_implementation' (#329)
README.rst was lying about development environment (#330)
Remove unnecessary dependencies (#328)
Remove unnecessary overrides in requirements_override.nix (#327)
Fix build for supported nixpkgs channels (#326)
Update pip wheel (#325)
Let user select build folder via CLI (#322)
Do not patch bootstrapped-pip in generated requirements.nix (#323)
Enable extras support (#320)
Nuke custom environment marker implementation in favor of packaging.markers implementation (#319)
Make existing contextmanagers exception safe (#318)
Update pip wheel (#317)
Fixes #315 (#316)
Refactor python_version (#313)
Update python requirements
Implement script that updates python dependencies for development environment
Seperate command line interface from program logic (#312)
Extend readme (#311)
Refactor cli.py (#310)
Add option to avoid emitting extra build deps (#285)
Fix newlines of cmd output (#309)
Move all metadata from setup.py to setup.cfg (#307)
Reorganize maintenance scripts and update README.rst in that regard (#306)
Check if patchPhase is present on bootstrapped-pip requirements.nix (#308)
Implement script to update pip wheel (#305)
Refactor pip (#299)
Improve license detection (#295)
Let logger respect verbose flag and use it consitently (#293)
Change references of garbas/pypi2nix to nix-community/pypi2nix (#291)
Add test_serpy_0_1_1.py to travis integration tests (#290)
Fix issue with setup requirements not being installed (#289)
Implement warnings for unparsable build inputs of packages (#288)
Update dependencies (#286)
Fix bug that caused specified build inputs from requirement files to be ignored (#277)
overrides: Fix small typo in error message (#283)
cli: Do not pick up NIX_PATH as default nix_path (#282)
cmd: Don't default to merging stdout with stderr (#281)
Autodetect setup requirements for PEP 517 and setup.cfg packages
Refactor ``pip.nix`` (#272)
Massive refactoring and some code changes (#271)
Fix nativeBuildInputs in mkDerivation (#266)
Refactor stage1, stage2 and requirements file handling (#265)
Fix bug in stage1 error handling (#264)
Refactor stage1.py for better maintainability (#263)
forgot to change checkInputs to buildInputs accross nix files
quick fix without regenerating requirements.nix
typo
this should be more backwards compatible solution
setup_requires environment should be bound/constrained to requirements_files (#260)
fixing flake8 example
adding connexion example to gitignore
too verbose in flake8 example
fix flake8 and connexion example
i hope i'm not blowing up the clousure size, we'll see, but this makes it work
updating pypi2nix dependencies and deps.nix
fix cachix
Clean up docs (#250)
Convert Header to str (#249)
Revert disabling checkPhase and installCheckPhase (#247)
even on failure copy over already created wheels
update deps
black
fix, i forgot to take extras into the account
fix installation instructions
adding a case for bsd3 license, fixing #228 (#243)
-r includes in requirements file (#242)
more cleanup (#241)
README.rst: add environment variable example (#239)
updating pypi2nix dependencies (#237)
read version correctly
bumping major version due to recent rework of stage2
updating dependencies and rework of stage2 (#200)
Add support for LGPLv3+ license (#229)
Support pip constraints files (-c syntax in requirements.txt files) (#219)
Support Python 3.7 (#213)
Allow for an `overrides` argument to `requirements.nix`. (#197)
Re-raise exception instead of raising a new one to avoid messing with the stack trace (#211)
Support 'MPL2' too as a short name for the Mozilla Public License (#212)
remove build directory between pip download and pip wheel invokation
Add an `interpreterWithPackages` function like that from nixpkgs. fixes #195
Add source filter to release.nix
Install nixpkgs.nix-prefetch-git on travis build server
Use nix_prefetch_github packages instead of custom prefetch mechanism
Set checkPhase and installCheckPhase to "" when generating expressions
Update requirements.nix
remove vulnix example since they don't use buildout anymore
looks like pypi2nix was only working with python35
local wheels cache was ignored so far
empy fix
travis: excaping multiline openssl command
Fixes #185
new fetchFromGitHub uses source as top folder name (#184)
using garbas.si ssh pubkey insteal of ssh_known_hosts addon (#183)
Fix .travis.yml (#182)
nix-push -> nix copy
Fixes #178
Github prefetch method now also works for fixed output derivations
pip wheel cache (#176)
Implement custom prefetch_github mechanism (#177)
fixing examples and using --default-overrides flag (#172)
Define an overrides class for github repos
Do not fetch submodules with git type overrides
setuptools: 34.4.1 -> 38.2.5
travis: sometimes we need a bit more time to build scipy
travis: suppress nix-build output
Fix minor typo in requirements.nix.j2 template
Use prefetch_git utils function consistently
Patch nix-prefetch-git in utils.py instead of stage2.py
Overhaul nix file generation
Fix to use cleanSource for path sources
Update zc.buildout to 2.9.5, #158
Use python 3.6 by default, #158
Don't use bare except statement
Update overlay example in README.rst
v1.8.1
- Allow pypi2nix to be packaged for installation with pip, @seppeljordan, #153
- Implement flag,
--default-overrides
, to use overrides from nixpkgs-python, @seppeljordan, #138 - Detect
MPL-2.0
license as itself, @nlewo, #155 - Adapt handling of "Zope Pulic License" to changes in
nixpkgs
, @seppeljordan, #151 - Fix issue with
pip
wanting to delete build artifacts, @garbas
v1.8.0
- the code now conforms to pep8, @seppeljordan, #105
release.nix
should usecallPackage
instead of listing all of the arguments, @globin, #107- combine
requirements.nix
andrequirements_generated.nix
into one, @seppeljordan, #108 - new cli option (
-O
) to point to customrequirements_override.nix
file, @seppeljordan, #109, #119 - replace
nix-prefetch-scripts
withnix-prefetch-git
andnix-prefetch-hg
, @seppeljordan, #118 - only check for extensions for available releases, @garbas, 36591bf
- zc.recipe.egg was not imported in buildout environment, @garbas, 3529107
- added python36 support, @garbas, f08c361
- add ability to handle extras with local paths via requirements.txt file, @garbas, 25ae5f9
- adding pillow, connexion and aiohttp examples, @garbas, f1d9e52
- multiple people reporting problems with pypi2nix and helping them:
- @copumpkin -> #104
- @exarkun -> #110
- @jlesquembre -> #116
- @blakesweeney -> #117
v1.7.0
v1.6.0
- add a notice that
pypi2nix
(for now) only works with latest unstable channel -E/--extra-build-inputs
option is now documented in README.rst, #93- Add support for "-e git+" resources in requirement files
pypi2nix
can now buildscipy
/numpy
, looksexamples/
folder how to make it work, #84- building all examples also on darwin platform
- setting SOURCE_DATE_EPOCH to a value after 1980, #87
- provide nicer error when http like requirement is present
--setup-requires
option to install pip packages before building wheels, #82-E/--extra-build-inputs
can now be specified multiple times- include
nix
as a dependency ofpypi2nix
sincenix-shell
is used in stage1
v1.5.0
- fixed a bug with relative paths in requirements files, #68
- ask to report an issue when not known issue is raised, #55
- nicer error message when no source distribution is found, #78
pip wheel
errors are now re-raised and caught in python, #77- using
sha256
instead ofmd5
- *_cache_dir variables not getting set if you specify cache_dir from the cli [Matt Billenstein]
- Add pip_build_dir -- pip was filling up /run on Ubuntu [Matt Billenstein]
- renaming
python.pkgs
->python.packages
v1.4.0
- release version detection improved, using pkg_resource to parse version
- buildout support (eg.
pypi2nix -V 2.7 -b buildout.cfg
) - pip cache is now in pypi2nix cache
- creating
requirements_frozen.txt
alongside.nix
files. it can be useful for pip/virtualenv - increased timeout when fetching resources from pypi
- license is now also recognized using classifiers
- output in console is now minimal,
-v/--verbose
added for debugging purposes - stage1 isnt failing with correct error code. now i'm checking for Error string.
- SSL_CERT_FILE exported in stage1
requirements.nix
improved a bit- improved travis builds
v1.3.0
- support for
-e
option, #32 - support for URLs in
requirements.txt
. now it is possible to install Pillow from my fork. All you need to do is puthttps://github.com/garbas/Pillow/archive/pkg-config.tar.gz#egg=Pillow
into yourrequirements.txt
, #54 - use requests library instead of aiohttp, which fixed
concurrent.futures._base.TimeoutError
errors, #51 - during stage1 LANG is set to
en_US.UTF-8
- parent python environment was causing recursion
v1.2.0
- adding support for darwin platform
- fetching metadata from pypi using aiohttp, #42
- for sources use
sha256
instead ofmd5
. whensha256
is not provided we download package and calculate it, #41 - python version option (
-V
) is now a required option, #39 python
"object" now has apkgs_top_level
list of all top level packages, #38- an option
-T
added to turndoCheck=true;
for all generated packages, #36 - detect more licenses, #29
- multiple
requirements.txt
can now be provided when calling pypi2nix, #34 - run
nix-shell
with--pure
option