Merge remote-tracking branch 'upstream/release-20.03' into add-tensorflow-2

This commit is contained in:
John Ericson
2020-03-30 17:47:59 +00:00
728 changed files with 30898 additions and 23705 deletions

View File

@@ -3,14 +3,14 @@
buildPythonPackage rec {
pname = "acoustics";
version = "0.2.3";
version = "0.2.4";
checkInputs = [ pytest ];
propagatedBuildInputs = [ numpy scipy matplotlib pandas tabulate ];
src = fetchPypi {
inherit pname version;
sha256 = "ca663059d61fbd2899aed4e3cedbc3f983aa67afd3ae1617db3c59b724206fb3";
sha256 = "8ccb68ac258ba81a0b9064523e85eae013f9bfce7244d01db42d7d2d21d712cc";
};
checkPhase = ''

View File

@@ -1,4 +1,5 @@
{ lib
, stdenv
, buildPythonPackage
, fetchPypi
, pythonOlder
@@ -54,6 +55,7 @@ buildPythonPackage rec {
and not handle_keepalive_on_closed_connection \
and not proxy_https_bad_response \
and not partially_applied_handler \
${lib.optionalString stdenv.is32bit "and not test_cookiejar"} \
and not middleware" \
--ignore=test_connector.py
'';

View File

@@ -1,4 +1,4 @@
{ stdenv, lib, buildPythonPackage, python, fetchFromGitHub, isPy3k
{ stdenv, lib, buildPythonPackage, python, fetchFromGitHub, fetchpatch, isPy3k
, notmuch, urwid, urwidtrees, twisted, python_magic, configobj, mock, file, gpgme
, service-identity
, gnupg ? null, sphinx, awk ? null, procps ? null, future ? null
@@ -19,6 +19,15 @@ buildPythonPackage rec {
sha256 = "sha256-WUwOJcq8JE7YO8sFeZwYikCRhpufO0pL6MKu54ZYsHI=";
};
patches = [
# can't compose email if signature is set: https://github.com/pazz/alot/issues/1468
(fetchpatch {
name = "envelope-body.patch";
url = "https://github.com/pazz/alot/commit/28a4296c7f556c251d71d9502681980d46d9fa55.patch";
sha256 = "1iwvmjyz4mh1g08vr85ywhah2xarcqg8dazagygk19icgsn45w06";
})
];
nativeBuildInputs = lib.optional withManpage sphinx;
propagatedBuildInputs = [

View File

@@ -137,6 +137,8 @@ buildPythonPackage rec {
substituteInPlace setup.py \
--replace "flask>=1.1.0, <2.0" "flask" \
--replace "jinja2>=2.10.1, <2.11.0" "jinja2" \
--replace "pandas>=0.17.1, <1.0.0" "pandas" \
--replace "flask-caching>=1.3.3, <1.4.0" "flask-caching" \
--replace "flask-appbuilder>=1.12.5, <2.0.0" "flask-appbuilder" \
--replace "pendulum==1.4.4" "pendulum" \
@@ -156,7 +158,7 @@ buildPythonPackage rec {
--replace "sqlalchemy~=1.3" "sqlalchemy" \
--replace "gunicorn>=19.5.0, <20.0" "gunicorn" \
--replace "werkzeug>=0.14.1, <0.15.0" "werkzeug"
# dumb-init is only needed for CI and Docker, not relevant for NixOS.
substituteInPlace setup.py \
--replace "'dumb-init>=1.2.2'," ""

View File

@@ -9,21 +9,26 @@
, pytest
, pytest-astropy
, astropy-helpers
, isPy3k
}:
buildPythonPackage rec {
pname = "astroquery";
version = "0.3.10";
version = "0.4";
src = fetchPypi {
inherit pname version;
sha256 = "1ce57a8792c7d5d74206d797d379de6da35d56be433ea5840c41a49f202e2fab";
sha256 = "1ddwnj9vpvxkrfb45c4pwv5f5za9kn2q0040dpw2ymj2bwlpl61h";
};
disabled = !isPy3k;
propagatedBuildInputs = [ astropy requests keyring beautifulsoup4 html5lib ];
nativeBuildInputs = [ astropy-helpers ];
# Tests disabled until pytest-astropy has been updated to include pytest-astropy-header
doCheck = false;
checkInputs = [ pytest pytest-astropy ];
# Disable automatic update of the astropy-helper module

View File

@@ -3,7 +3,7 @@
sqlalchemy_migrate, dateutil, txaio, autobahn, pyjwt, pyyaml, treq,
txrequests, pyjade, boto3, moto, mock, python-lz4, setuptoolsTrial,
isort, pylint, flake8, buildbot-worker, buildbot-pkg, buildbot-plugins,
parameterized, git, openssh, glibcLocales }:
parameterized, git, openssh, glibcLocales, nixosTests }:
let
withPlugins = plugins: buildPythonPackage {
@@ -25,11 +25,11 @@ let
package = buildPythonPackage rec {
pname = "buildbot";
version = "2.6.0";
version = "2.7.0";
src = fetchPypi {
inherit pname version;
sha256 = "1l3ajhy68jddbgbizaa5hq65lgqkll6389hss4p2j36cbxbn7hiv";
sha256 = "0jj8fh611n7xc3vsfbgpqsllp38cfj3spkr2kz3ara2x7jvh3406";
};
propagatedBuildInputs = [
@@ -91,6 +91,7 @@ let
passthru = {
inherit withPlugins;
tests.buildbot = nixosTests.buildbot;
};
meta = with lib; {

View File

@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "buildbot-pkg";
version = "2.6.0";
version = "2.7.0";
src = fetchPypi {
inherit pname version;
sha256 = "07ynk46c9h47ibbdm93h15xbrzflsl4llm0jr4c8pm6krs6byb4z";
sha256 = "03zb09r8w8dvd9qas7h6gdwlqc7q482ikph6h3708lpnkn72xdkb";
};
postPatch = ''

View File

@@ -7,14 +7,12 @@
src = fetchPypi {
inherit pname version;
sha256 = "0njix8g6g1dgfviick55p9calm82nnkhhgkikh7a5yvqk524cprg";
sha256 = "1d8xdk4rq4p3fw03cvz7d1pmpjjbyrnzzjifzv46q88vk7jakgxi";
};
# Remove unneccessary circular dependency on buildbot
postPatch = ''
sed -i setup.py \
-e "/import buildbot/d" \
-e "s/'buildbot',//"
sed -i "s/'buildbot'//" setup.py
'';
buildInputs = [ buildbot-pkg mock ];
@@ -36,7 +34,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "1wmay9bbb1wwf0zh9rw95swmdc7bxabgvx2n6dyyzs4p8k92px10";
sha256 = "03pl75avi6cmmhjvfn0a0b4drn35yv37kvgn04zjdwa3m6p3haa8";
};
buildInputs = [ buildbot-pkg ];
@@ -58,7 +56,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "14b28vpkk68yk6zmdd64n7izb1r3barb7y711n4g37skqd13jygb";
sha256 = "0rzjk3qmlvid8qag3r00zaszchncl1nl8l2yapvc1zqh2dqlln58";
};
buildInputs = [ buildbot-pkg ];
@@ -80,7 +78,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "1m8kbycjq7jsl72xbrzjj48hb65r53lfxx78yvlnhc2f9ian5vnh";
sha256 = "1n4j73y9kwfqk7dz1fh1bpan68vlpnbz7idxpmsphyay8w8y9dd4";
};
buildInputs = [ buildbot-pkg ];
@@ -102,7 +100,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "1sbp13qimv8kc7dp0xz1pmda1x1n4948zgrz2pc45rwlbbn5h69r";
sha256 = "1babkcgxczs6zfk2b6jmsy2vwbrgdydrp2px1mfwa3wmv8fwlssg";
};
buildInputs = [ buildbot-pkg ];

View File

@@ -3,11 +3,11 @@
buildPythonPackage (rec {
pname = "buildbot-worker";
version = "2.6.0";
version = "2.7.0";
src = fetchPypi {
inherit pname version;
sha256 = "0hr42fp3sw6c59qahihm9440618z7prwsy4z0ax553zvw47pc22l";
sha256 = "1vwy46acvczgk1hhpsqdwpcw55j4hm5pkw6j01f92axiga8r5jk6";
};
propagatedBuildInputs = [ twisted future ];

View File

@@ -1,5 +1,6 @@
{ lib
, buildPythonPackage
, fetchpatch
, fetchPypi
}:
@@ -12,9 +13,12 @@ buildPythonPackage rec {
sha256 = "54c38050039232e1db4ad7375cfce6748d7b41c29e95a081c8a6d2c30364a2ce";
};
postPatch = ''
substituteInPlace src/tests/test.py --replace "DocumentationTestCase" "NoDocumentation"
'';
patches = [
(fetchpatch {
url = https://github.com/micheles/decorator/commit/3265f2755d16c0a3dfc9f1feee39722ddc11ee80.patch;
sha256 = "1q5nmff30vccqq5swf2ivm8cn7x3lhz8c9qpj0zddgs2y7fw8syz";
})
];
meta = with lib; {
homepage = https://pypi.python.org/pypi/decorator;

View File

@@ -3,7 +3,6 @@
, fetchPypi
, pytest
, pytest-repeat
, pytest-faulthandler
, pytest-timeout
, mock
, joblib
@@ -36,7 +35,7 @@ buildPythonPackage rec {
sha256 = "d37a5c5be992f3b16db24b54d2801cbe370990fbc63089c6e7ef40d6f03cf5dd";
};
checkInputs = [ pytest pytest-repeat pytest-faulthandler pytest-timeout mock joblib ];
checkInputs = [ pytest pytest-repeat pytest-timeout mock joblib ];
propagatedBuildInputs = [
click cloudpickle dask msgpack psutil six
sortedcontainers tblib toolz tornado zict pyyaml mpi4py bokeh
@@ -54,7 +53,7 @@ buildPythonPackage rec {
meta = {
description = "Distributed computation in Python.";
homepage = https://distributed.readthedocs.io/en/latest/;
homepage = "https://distributed.readthedocs.io/en/latest/";
license = lib.licenses.bsd3;
platforms = lib.platforms.x86; # fails on aarch64
maintainers = with lib.maintainers; [ teh costrouc ];

View File

@@ -1,9 +1,7 @@
{ stdenv, buildPythonPackage, fetchFromGitHub, python,
django, six
}:
if stdenv.lib.versionAtLeast django.version "2.0"
then throw "django-compat requires django < 2.0"
else
buildPythonPackage rec {
pname = "django-compat";
version = "1.0.15";
@@ -16,6 +14,10 @@ buildPythonPackage rec {
sha256 = "1pr6v38ahrsvxlgmcx69s4b5q5082f44gzi4h3c32sccdc4pwqxp";
};
patches = [
./fix-tests.diff
];
checkPhase = ''
runHook preCheck

View File

@@ -0,0 +1,56 @@
diff -ur a/compat/tests/settings.py b/compat/tests/settings.py
--- a/compat/tests/settings.py 2020-03-06 15:32:07.548482597 +0100
+++ b/compat/tests/settings.py 2020-03-06 22:19:25.422934249 +0100
@@ -16,11 +16,12 @@
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
+ 'django.contrib.messages',
'compat',
'compat.tests.test_app',
]
-MIDDLEWARE_CLASSES = (
+MIDDLEWARE = (
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
@@ -43,6 +44,7 @@
'django.template.context_processors.i18n',
'django.template.context_processors.tz',
'django.template.context_processors.request',
+ 'django.contrib.messages.context_processors.messages',
],
'loaders': [
'django.template.loaders.filesystem.Loader',
diff -ur a/compat/tests/test_compat.py b/compat/tests/test_compat.py
--- a/compat/tests/test_compat.py 2020-03-06 15:32:07.548482597 +0100
+++ b/compat/tests/test_compat.py 2020-03-06 15:37:39.202835075 +0100
@@ -9,7 +9,7 @@
from django.core.serializers.json import DjangoJSONEncoder
from django.test import TestCase, SimpleTestCase
from django.test.client import RequestFactory
-from django.contrib.auth.views import logout
+from django.contrib.auth.views import auth_logout
try:
from django.urls import NoReverseMatch
except ImportError:
@@ -103,7 +103,7 @@
Tests that passing a view name to ``resolve_url`` will result in the
URL path mapping to that view name.
"""
- resolved_url = resolve_url(logout)
+ resolved_url = resolve_url(auth_logout)
self.assertEqual('/accounts/logout/', resolved_url)
'''
diff -ur a/compat/tests/urls.py b/compat/tests/urls.py
--- a/compat/tests/urls.py 2020-03-06 15:32:07.548482597 +0100
+++ b/compat/tests/urls.py 2020-03-06 15:34:25.962377799 +0100
@@ -2,5 +2,5 @@
from django.contrib.auth import views
urlpatterns = [
- url(r'^accounts/logout/$', views.logout, name='logout'),
+ url(r'^accounts/logout/$', views.auth_logout, name='logout'),
]

View File

@@ -2,18 +2,18 @@
buildPythonPackage rec {
pname = "django-gravatar2";
version = "1.4.2";
version = "1.4.4";
src = fetchPypi {
inherit pname version;
sha256 = "1qsv40xywbqsf4mkrmsswrpzqd7nfljxpfiim9an2z3dykn5rka6";
sha256 = "1vn921fb6jjx7rf5dzhy66rkb71nwmh9ydd0xs9ys72icw4jh4y8";
};
doCheck = false;
meta = with stdenv.lib; {
description = "Essential Gravatar support for Django";
homepage = https://github.com/twaddington/django-gravatar;
homepage = "https://github.com/twaddington/django-gravatar";
license = licenses.mit;
};
}

View File

@@ -1,33 +1,40 @@
{ buildPythonPackage
, fetchPypi
, lib
, isPy3k
, six
, attrs
, pytest
, testtools
}:
buildPythonPackage rec {
version = "1.1.0";
pname = "effect";
disabled = (!isPy3k);
src = fetchPypi {
inherit pname version;
sha256 = "7affb603707c648b07b11781ebb793a4b9aee8acf1ac5764c3ed2112adf0c9ea";
};
checkInputs = [
pytest
testtools
];
propagatedBuildInputs = [
six
attrs
];
checkPhase = ''
pytest
'';
meta = with lib; {
description = "Pure effects for Python";
homepage = https://github.com/python-effect/effect;
homepage = "https://github.com/python-effect/effect";
license = licenses.mit;
};
}

View File

@@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, fetchurl
, uvicorn
, starlette
, pydantic
@@ -10,11 +11,12 @@
, pyjwt
, passlib
, aiosqlite
, peewee
}:
buildPythonPackage rec {
pname = "fastapi";
version = "0.45.0";
version = "0.49.0";
format = "flit";
disabled = !isPy3k;
@@ -22,7 +24,7 @@ buildPythonPackage rec {
owner = "tiangolo";
repo = "fastapi";
rev = version;
sha256 = "1qwh382ny6qa3zi64micdq4j7dc64zv4rfd8g91j0digd4rhs6i1";
sha256 = "1dw5f2xvn0fqqsy29ypba8v3444cy7dvc7gkpmnhshky0rmfni3n";
};
propagatedBuildInputs = [
@@ -37,16 +39,9 @@ buildPythonPackage rec {
pyjwt
passlib
aiosqlite
peewee
];
# starlette pinning kept in place due to 0.12.9 being a hard
# dependency luckily fastapi is currently the only dependent on
# starlette. Please remove pinning when possible
postPatch = ''
substituteInPlace pyproject.toml \
--replace "pydantic >=0.32.2,<=0.32.2" "pydantic"
'';
checkPhase = ''
pytest --ignore=tests/test_default_response_class.py
'';

View File

@@ -3,13 +3,13 @@ thrift, pytest, python-snappy, lz4 }:
buildPythonPackage rec {
pname = "fastparquet";
version = "0.3.2";
version = "0.3.3";
src = fetchFromGitHub {
owner = "dask";
repo = pname;
rev = version;
sha256 = "142kmyddaq6mvmca23abwns1csn8f3lk9c8mbxwxrg4wa1dh0lb4";
sha256 = "1vnxr4r0bia2zi9csjw342l507nic6an4hr5xb3a36ggqlbaa0g5";
};
postPatch = ''

View File

@@ -1,18 +1,27 @@
{ stdenv, fetchPypi, buildPythonPackage }:
{ lib, fetchPypi, buildPythonPackage }:
buildPythonPackage rec {
pname = "faulthandler";
version = "3.1";
version = "3.2";
src = fetchPypi {
inherit pname version;
sha256 = "83301ffab03c86b291677b64b5cec7026f412cbda5ebd27e4cb3338452c40021";
sha256 = "08ybjjdrfp01syckksxzivqhn6b0yhmc17kdxh77h0lg6rvgvk8y";
};
meta = {
# This may be papering over a real failure where the env var activation route
# for faulthandler does not appear to work. That said, since all other tests
# pass and since this module is python 2 only (it was upstreamed into the
# interpreter itself as of python 3.3 and is disabled ) this just disables the
# test to fix the build. From inspecting Hydra logs and git bisect, the commit
# that broke it is this one:
# https://github.com/NixOS/nixpkgs/commit/90be4c2c7875c9487508d95b5c638d97e2903ada
patches = [ ./disable-env-test.patch ];
meta = with lib; {
description = "Dump the Python traceback";
license = stdenv.lib.licenses.bsd2;
maintainers = with stdenv.lib.maintainers; [ sauyon ];
homepage = https://faulthandler.readthedocs.io/;
license = licenses.bsd2;
maintainers = with maintainers; [ sauyon ];
homepage = "https://faulthandler.readthedocs.io/";
};
}

View File

@@ -0,0 +1,13 @@
diff --git a/tests.py b/tests.py
index e5a2811..16e7a0f 100644
--- a/tests.py
+++ b/tests.py
@@ -394,7 +394,7 @@ class FaultHandlerTests(unittest.TestCase):
print(faulthandler.is_enabled())
""",
env=dict(os.environ, PYTHONFAULTHANDLER='x'))
- self.assertEqual(output, ["True"])
+ #self.assertEqual(output, ["True"])
self.assertEqual(exitcode, 0)
output, exitcode = self.get_output("""

View File

@@ -14,6 +14,8 @@
, gmsh
, python
, stdenv
, openssh
, fetchurl
}:
let
@@ -21,12 +23,11 @@ let
in
buildPythonPackage rec {
pname = "fipy";
version = "3.3";
version = "3.4.1";
src = fetchPypi {
pname = "FiPy";
inherit version;
sha256 = "11agpg3d6yrns8igkpml1mxy3mkqkjq2yrw1mw12y07dkk12ii19";
src = fetchurl {
url = "https://github.com/usnistgov/fipy/releases/download/${version}/FiPy-${version}.tar.gz";
sha256 = "0078yg96fknqhywn1v26ryc5z47c0j0c1qwz6p8wsjn0wmzggaqk";
};
propagatedBuildInputs = [
@@ -38,11 +39,13 @@ in
mpi4py
future
scikit-fmm
openssh
] ++ lib.optionals isPy27 [ pysparse ] ++ not_darwin_inputs;
checkInputs = not_darwin_inputs;
checkPhase = ''
export OMPI_MCA_plm_rsh_agent=${openssh}/bin/ssh
${python.interpreter} setup.py test --modules
'';

View File

@@ -1,30 +1,27 @@
{ lib, fetchFromGitHub, buildPythonPackage, fetchpatch, flake8, six }:
{ lib, isPy27, fetchFromGitHub, buildPythonPackage, fetchpatch, flake8, six }:
buildPythonPackage rec {
pname = "flake8-future-import";
version = "0.4.5";
version = "0.4.6";
# PyPI tarball doesn't include the test suite
src = fetchFromGitHub {
owner = "xZise";
repo = "flake8-future-import";
rev = version;
sha256 = "00fpxa6g8cabybnciwnpsbg60zhgydc966jgwyyggw1pcg0frdqr";
sha256 = "00q8n15xdnvqj454arn7xxksyrzh0dw996kjyy7g9rdk0rf8x82z";
};
patches = [
# Add Python 3.7 support. Remove with the next release
(fetchpatch {
url = https://github.com/xZise/flake8-future-import/commit/cace194a44d3b95c9c1ed96640bae49183acca04.patch;
sha256 = "17pkqnh035j5s5c53afs8bk49bq7lnmdwqp5k7izx7sw80z73p9r";
})
];
propagatedBuildInputs = [ flake8 six ];
meta = {
homepage = https://github.com/xZise/flake8-future-import;
# Upstream disables this test case naturally on python 3, but it also fails
# inside NixPkgs for python 2. Since it's going to be deleted, we just skip it
# on py2 as well.
patches = lib.optionals isPy27 [ ./skip-test.patch ];
meta = with lib; {
description = "A flake8 extension to check for the imported __future__ modules to make it easier to have a consistent code base";
license = lib.licenses.mit;
homepage = "https://github.com/xZise/flake8-future-import";
license = licenses.mit;
};
}

View File

@@ -0,0 +1,13 @@
diff --git a/test_flake8_future_import.py b/test_flake8_future_import.py
index 84fde59..345f23f 100644
--- a/test_flake8_future_import.py
+++ b/test_flake8_future_import.py
@@ -230,7 +230,7 @@ class TestBadSyntax(TestCaseBase):
"""Test using various bad syntax examples from Python's library."""
-@unittest.skipIf(sys.version_info[:2] >= (3, 7), 'flake8 supports up to 3.6')
+@unittest.skip("Has issue with installed path for flake8 in python2")
class Flake8TestCase(TestCaseBase):
"""

View File

@@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "ftfy";
version = "5.6";
version = "5.7";
# ftfy v5 only supports python3. Since at the moment the only
# packages that use ftfy are spacy and textacy which both support
# python 2 and 3, they have pinned ftfy to the v4 branch.
@@ -20,7 +20,7 @@ buildPythonPackage rec {
src = fetchPypi {
inherit pname version;
sha256 = "1k4vr5rfa62yafwpmb4827n50pwb79if0vhg1y4yqbb0bv20jxbd";
sha256 = "1j143kfpnskksfzs0pnr37kwph6m7c71p8gdldv26x2b7arwiyb7";
};
propagatedBuildInputs = [

View File

@@ -13,10 +13,11 @@ buildPythonPackage rec {
checkPhase = ''
touch Makefile
# Disable tests that require network access or access /home
# Disable tests that require network access or access /home or assume execution before year 2020
py.test test \
-k "not test_public_servers and not test_real_ftp \
and not test_set_parser and not test_repr"
and not test_set_parser and not test_repr \
and not test_conditional_upload and not test_conditional_download_with_older_target"
'';
meta = with lib; {

View File

@@ -0,0 +1,39 @@
{ stdenv, buildPythonPackage, fetchPypi
, coverage
, mock
, pytest
, pytestcov
, setuptools
}:
buildPythonPackage rec {
pname = "gunicorn";
version = "19.10.0";
src = fetchPypi {
inherit pname version;
sha256 = "1080jk1ly8j0rc6lv8i33sj94rxjaskd1732cdq5chdqb3ij9ppr";
};
propagatedBuildInputs = [ setuptools ];
checkInputs = [ pytest mock pytestcov coverage ];
prePatch = ''
substituteInPlace requirements_test.txt --replace "==" ">=" \
--replace "coverage>=4.0,<4.4" "coverage"
'';
# better than no tests
checkPhase = ''
$out/bin/gunicorn --help > /dev/null
'';
pythonImportsCheck = [ "gunicorn" ];
meta = with stdenv.lib; {
homepage = "https://github.com/benoitc/gunicorn";
description = "WSGI HTTP Server for UNIX";
license = licenses.mit;
};
}

View File

@@ -5,11 +5,11 @@
buildPythonPackage rec {
pname = "gym";
version = "0.15.4";
version = "0.16.0";
src = fetchPypi {
inherit pname version;
sha256 = "3b930cbe1c76bbd30455b5e82ba723dea94159a5f988e927f443324bf7cc7ddd";
sha256 = "06h5b639nmzhmy4m1j3vigm86iv5pv7k8jy6xpldyd4jdlf37nn5";
};
postPatch = ''
@@ -26,7 +26,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "A toolkit by OpenAI for developing and comparing your reinforcement learning agents";
homepage = https://gym.openai.com/;
homepage = "https://gym.openai.com/";
license = licenses.mit;
maintainers = with maintainers; [ hyphon81 ];
};

View File

@@ -37,6 +37,7 @@ buildPythonPackage rec {
"tests.functional.test_httplib2.test_callback_response"
"tests.functional.test_requests.test_streaming_responses"
"tests.functional.test_httplib2.test_callback_response"
"tests.functional.test_requests.test_httpretty_should_allow_adding_and_overwritting_by_kwargs_u2"
];
meta = with stdenv.lib; {

View File

@@ -16,7 +16,6 @@
buildPythonPackage rec {
pname = "ipykernel";
version = "5.1.4";
disabled = pythonOlder "3.4";
src = fetchPypi {
inherit pname version;
@@ -38,12 +37,23 @@ buildPythonPackage rec {
preCheck = ''
export HOME=$(mktemp -d)
'';
disabledTests = lib.optionals stdenv.isDarwin [
disabledTests = lib.optionals stdenv.isDarwin ([
# see https://github.com/NixOS/nixpkgs/issues/76197
"test_subprocess_print"
"test_subprocess_error"
"test_ipython_start_kernel_no_userns"
];
] ++ lib.optionals (pythonOlder "3.8") [
# flaky test https://github.com/ipython/ipykernel/issues/485
"test_shutdown"
# test regression https://github.com/ipython/ipykernel/issues/486
"test_sys_path_profile_dir"
"test_save_history"
"test_help_output"
"test_write_kernel_spec"
"test_ipython_start_kernel_userns"
"ZMQDisplayPublisherTests"
]);
# Some of the tests use localhost networking.
__darwinAllowLocalNetworking = true;

View File

@@ -1,5 +1,9 @@
{ stdenv, buildPythonPackage, fetchPypi
, pytest, markupsafe }:
{ stdenv
, buildPythonPackage
, isPy3k
, fetchPypi
, pytest
, markupsafe }:
buildPythonPackage rec {
pname = "Jinja2";
@@ -13,6 +17,10 @@ buildPythonPackage rec {
checkInputs = [ pytest ];
propagatedBuildInputs = [ markupsafe ];
# Multiple tests run out of stack space on 32bit systems with python2.
# See https://github.com/pallets/jinja/issues/1158
doCheck = !stdenv.is32bit || isPy3k;
checkPhase = ''
pytest -v tests
'';

View File

@@ -2,9 +2,11 @@
, buildPythonPackage
, fetchPypi
, twisted
, passlib
, pycrypto
, pyopenssl
, pyparsing
, service-identity
, zope_interface
, isPy3k
}:
@@ -19,7 +21,7 @@ buildPythonPackage rec {
};
propagatedBuildInputs = [
twisted pycrypto pyopenssl pyparsing zope_interface
twisted passlib pycrypto pyopenssl pyparsing service-identity zope_interface
];
disabled = isPy3k;
@@ -32,4 +34,4 @@ buildPythonPackage rec {
homepage = https://github.com/twisted/ldaptor;
license = lib.licenses.mit;
};
}
}

View File

@@ -0,0 +1,27 @@
{ stdenv, buildPythonPackage, fetchgit, pkgconfig, lxml, libvirt, nose }:
buildPythonPackage rec {
pname = "libvirt";
version = "5.9.0";
src = fetchgit {
url = git://libvirt.org/libvirt-python.git;
rev = "v${version}";
sha256 = "0qvr0s7yasswy1s5cvkm91iifk33pb8s7nbb38zznc46706b358r";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libvirt lxml ];
checkInputs = [ nose ];
checkPhase = ''
nosetests
'';
meta = with stdenv.lib; {
homepage = http://www.libvirt.org/;
description = "libvirt Python bindings";
license = licenses.lgpl2;
maintainers = [ maintainers.fpletz ];
};
}

View File

@@ -2,12 +2,12 @@
buildPythonPackage rec {
pname = "libvirt";
version = "5.4.0";
version = "6.1.0";
src = assert version == libvirt.version; fetchgit {
url = git://libvirt.org/libvirt-python.git;
rev = "v${version}";
sha256 = "0ja35z90i3m7vsjfpzfm7awkmja3h0150376i5pzmf2q8vp61fi5";
sha256 = "0h3w1p5y4kg2hdbhxmg4lphcnmr7979iwi0m750f8vzbfccsrp7k";
};
nativeBuildInputs = [ pkgconfig ];

View File

@@ -4,11 +4,11 @@
buildPythonPackage rec {
pname = "mautrix";
version = "0.4.1";
version = "0.4.2";
src = fetchPypi {
inherit pname version;
sha256 = "0mfxfc1y317h90h1jx7amsk09jwzxbvfc75qxzl9nf8ah432yfpr";
sha256 = "0f8pzi7ip82p7hn6d9xrgp5wsl4s3w6gmjsgb8gjy2606f7czqyg";
};
propagatedBuildInputs = [

View File

@@ -2,13 +2,13 @@
buildPythonPackage rec {
pname = "mkl-service";
version = "2.1.0";
version = "2.3.0";
src = fetchFromGitHub {
owner = "IntelPython";
repo = "mkl-service";
rev = "v${version}";
sha256 = "1bnpgx629rxqf0yhn0jn68ypj3dqv6njc3981j1g8j8rsm5lycrn";
sha256 = "1b4dkkl439rfaa86ywzc2zf9ifawhvdlaiqcg0il83cn5bzs7g5z";
};
MKLROOT = mkl;

View File

@@ -1,12 +1,12 @@
{ stdenv, buildPythonPackage, fetchPypi, isPy3k, funcsigs, pytest, numpy }:
buildPythonPackage rec {
version = "1.2.0";
version = "1.2.1";
pname = "mockito";
src = fetchPypi {
inherit pname version;
sha256 = "2a1cbae9d0aef4ae7586b03f2a463e8c5ba96aa937c0535ced4a5621f851feeb";
sha256 = "1ilj73bdk81v4l7ir6hbfvmslzbsxkgvz1asngbyf7w5gl2y5nyf";
};
propagatedBuildInputs = stdenv.lib.optionals (!isPy3k) [ funcsigs ];
@@ -20,7 +20,7 @@ buildPythonPackage rec {
meta = with stdenv.lib; {
description = "Spying framework";
homepage = https://github.com/kaste/mockito-python;
homepage = "https://github.com/kaste/mockito-python";
license = licenses.mit;
maintainers = [ maintainers.marsam ];
};

View File

@@ -1,9 +1,7 @@
{ lib, buildPythonPackage, fetchFromGitHub
, python3, protobuf3_6
}:
{ lib, buildPythonPackage, fetchFromGitHub, python, protobuf3_6 }:
let
python = python3.override {
py = python.override {
packageOverrides = self: super: {
protobuf = super.protobuf.override {
protobuf = protobuf3_6;
@@ -21,7 +19,7 @@ in buildPythonPackage rec {
sha256 = "1jscmc5s7mwx43gvxjlqc30ylp5jjpmkqx7s3b9nllbh926p3ixg";
};
propagatedBuildInputs = with python.pkgs; [ protobuf dnspython ];
propagatedBuildInputs = with py.pkgs; [ protobuf dnspython ];
# Tests are failing (TODO: unknown reason)
# TypeError: __init__() missing 1 required positional argument: 'string'

View File

@@ -3,22 +3,23 @@
, fetchFromGitHub
, mock
, pytest
, requests
, unittest2
, six
}:
buildPythonPackage rec {
pname = "ntlm-auth";
version = "1.0.3";
version = "1.4.0";
src = fetchFromGitHub {
owner = "jborean93";
repo = "ntlm-auth";
rev = "v${version}";
sha256 = "09f2g4ivfi9lh1kr30hlg0q4n2imnvmd79w83gza11q9nmhhiwpz";
sha256 = "168k3ygwbvnfcwn7q1nv3vvy6b9jc4cnpix0xgg5j8av7v1x0grn";
};
checkInputs = [ mock pytest unittest2 ];
checkInputs = [ mock pytest requests unittest2 ];
propagatedBuildInputs = [ six ];
# Functional tests require networking
@@ -28,8 +29,8 @@ buildPythonPackage rec {
meta = with lib; {
description = "Calculates NTLM Authentication codes";
homepage = https://github.com/jborean93/ntlm-auth;
license = licenses.lgpl3;
homepage = "https://github.com/jborean93/ntlm-auth";
license = licenses.mit;
maintainers = with maintainers; [ elasticdog ];
platforms = platforms.all;
};

View File

@@ -1,4 +1,5 @@
{ stdenv
, pythonOlder
, fetchPypi
, python
, buildPythonPackage
@@ -15,6 +16,8 @@
buildPythonPackage rec {
version = "0.48.0";
pname = "numba";
# uses f-strings
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;

View File

@@ -1,6 +1,6 @@
{ lib, buildPythonPackage, isPy27, fetchPypi
, jsonschema, pyyaml, six, pathlib
, mock, pytest, pytestcov, pytest-flake8, tox }:
, mock, pytest, pytestcov, pytest-flake8, tox, setuptools }:
buildPythonPackage rec {
pname = "openapi-spec-validator";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
sha256 = "1kav0jlgdpgwx4am09ja7cr8s1g8h8a7j8mcfy1cfjr8fficg2g4";
};
propagatedBuildInputs = [ jsonschema pyyaml six ]
propagatedBuildInputs = [ jsonschema pyyaml six setuptools ]
++ (lib.optionals (isPy27) [ pathlib ]);
checkInputs = [ mock pytest pytestcov pytest-flake8 tox ];

View File

@@ -1,5 +1,5 @@
{ lib, buildPythonPackage, fetchPypi, callPackage
, isPy27, isPy34
, isPy27, isPy34, pythonOlder
, cleo
, requests
, cachy
@@ -7,7 +7,6 @@
, pyrsistent
, pyparsing
, cachecontrol
, lockfile
, pkginfo
, html5lib
, shellingham
@@ -17,42 +16,43 @@
, pathlib2
, virtualenv
, functools32
, clikit
, keyring
, pexpect
, importlib-metadata
, pytest
, jsonschema
, intreehooks
, lockfile
}:
let
cleo6 = cleo.overridePythonAttrs (oldAttrs: rec {
version = "0.6.8";
src = fetchPypi {
inherit (oldAttrs) pname;
inherit version;
sha256 = "06zp695hq835rkaq6irr1ds1dp2qfzyf32v60vxpd8rcnxv319l5";
};
});
glob2 = callPackage ./glob2.nix { };
in buildPythonPackage rec {
pname = "poetry";
version = "0.12.17";
version = "1.0.3";
src = fetchPypi {
inherit pname version;
sha256 = "0gxwcd65qjmzqzppf53x51sic1rbcd9py6cdzx3aprppipimslvf";
sha256 = "0fx1ilgkrsqjjnpgv5zljsp0wpcsywdqvvi8im9z396qq6qpk830";
};
postPatch = ''
substituteInPlace setup.py --replace \
"requests-toolbelt>=0.8.0,<0.9.0" \
"requests-toolbelt>=0.8.0,<0.10.0" \
--replace 'pyrsistent>=0.14.2,<0.15.0' 'pyrsistent>=0.14.2,<0.16.0'
substituteInPlace pyproject.toml \
--replace "pyrsistent = \"^0.14.2\"" "pyrsistent = \"^0.15.0\"" \
--replace "requests-toolbelt = \"^0.8.0\"" "requests-toolbelt = \"^0.9.0\"" \
--replace "importlib-metadata = {version = \"~1.1.3\", python = \"<3.8\"}" \
"importlib-metadata = {version = \"~1.3.0\", python = \"<3.8\"}"
'';
format = "pyproject";
nativeBuildInputs = [ intreehooks ];
propagatedBuildInputs = [
cachy
cleo6
cleo
clikit
requests
cachy
requests-toolbelt
@@ -60,13 +60,16 @@ in buildPythonPackage rec {
pyrsistent
pyparsing
cachecontrol
lockfile
pkginfo
html5lib
shellingham
tomlkit
pexpect
keyring
lockfile
] ++ lib.optionals (isPy27 || isPy34) [ typing pathlib2 glob2 ]
++ lib.optionals isPy27 [ virtualenv functools32 subprocess32 ];
++ lib.optionals isPy27 [ virtualenv functools32 subprocess32 ]
++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ];
postInstall = ''
mkdir -p "$out/share/bash-completion/completions"
@@ -85,7 +88,7 @@ in buildPythonPackage rec {
'';
meta = with lib; {
homepage = https://github.com/sdispater/poetry;
homepage = "https://python-poetry.org/";
description = "Python dependency management and packaging made easy";
license = licenses.mit;
maintainers = with maintainers; [ jakewaksbaum ];

View File

@@ -3,15 +3,16 @@
, fetchPypi
, libGLU, libGL
, xorg
, numpy
}:
buildPythonPackage rec {
pname = "pybullet";
version = "2.6.1";
version = "2.6.6";
src = fetchPypi {
inherit pname version;
sha256 = "c6da064687ae481c73b744b9f3a62d8231349a6bf368d7a2e564f71ef73e9403";
sha256 = "1lsvjqij1vb9w8j6lvnq7lppflc7svz4cj37n74q67mb46gq3dxr";
};
buildInputs = [
@@ -19,6 +20,8 @@ buildPythonPackage rec {
xorg.libX11
];
propagatedBuildInputs = [ numpy ];
patches = [
# make sure X11 and OpenGL can be found at runtime
./static-libs.patch

View File

@@ -1,13 +1,13 @@
diff --git a/setup.py b/setup.py
index 98efabdbf..e69e79084 100644
index 6f7bd7589..321fc6ab0 100644
--- a/setup.py
+++ b/setup.py
@@ -563,6 +563,8 @@ print("-----")
@@ -465,6 +465,8 @@ print("-----")
extensions = []
+libraries += [ "X11", "GL" ] # statically link x11 and opengl
+
pybullet_ext = Extension("pybullet",
sources = sources,
libraries = libraries,
pybullet_ext = Extension(
"pybullet",
sources=sources,

View File

@@ -1,14 +1,14 @@
{ stdenv
, buildPythonPackage
, fetchPypi
, isPy3k
, isPyPy
, six
}:
buildPythonPackage rec {
version = "0.12.0";
pname = "pyfribidi";
disabled = isPy3k || isPyPy;
disabled = isPyPy;
src = fetchPypi {
inherit pname version;
@@ -16,6 +16,10 @@ buildPythonPackage rec {
sha256 = "64726a4a56783acdc79c6b9b3a15f16e6071077c897a0b999f3b43f744bc621c";
};
patches = stdenv.lib.optional stdenv.cc.isClang ./pyfribidi-clang.patch;
propagatedBuildInputs = [ six ];
meta = with stdenv.lib; {
description = "A simple wrapper around fribidi";
homepage = https://github.com/pediapress/pyfribidi;

View File

@@ -0,0 +1,17 @@
diff --git a/pyfribidi.c b/pyfribidi.c
index 9a0120d..238134a 100644
--- a/pyfribidi.c
+++ b/pyfribidi.c
@@ -148,10 +148,11 @@ init_pyfribidi (void)
{
#if PY_MAJOR_VERSION >= 3
PyObject *module = PyModule_Create (&pyfribidi_moduledef);
+ if (module == NULL) return NULL;
#else
PyObject *module = Py_InitModule ("_pyfribidi", PyfribidiMethods);
+ if (module == NULL) return;
#endif
- if (module == NULL) return NULL;
PyModule_AddIntConstant (module, "RTL", (long) FRIBIDI_TYPE_RTL);
PyModule_AddIntConstant (module, "LTR", (long) FRIBIDI_TYPE_LTR);

View File

@@ -1,47 +1,62 @@
diff a/pyproj/datadir.py b/pyproj/datadir.py
--- a/pyproj/datadir.py
+++ b/pyproj/datadir.py
@@ -52,6 +52,7 @@ def get_data_dir():
str: The valid data directory.
"""
+ return "@proj@/share/proj"
# to avoid re-validating
global _VALIDATED_PROJ_DATA
diff -Nur a/pyproj/datadir.py b/pyproj/datadir.py
--- a/pyproj/datadir.py 2020-03-24 12:53:39.417440608 +0100
+++ b/pyproj/datadir.py 2020-03-24 12:56:19.870089479 +0100
@@ -66,9 +66,7 @@
if _VALIDATED_PROJ_DATA is not None:
diff a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -16,7 +16,7 @@ INTERNAL_PROJ_DIR = os.path.join(CURRENT_FILE_PATH, "pyproj", BASE_INTERNAL_PROJ
return _VALIDATED_PROJ_DATA
global _USER_PROJ_DATA
- internal_datadir = os.path.join(
- os.path.dirname(os.path.abspath(__file__)), "proj_dir", "share", "proj"
- )
+ internal_datadir = "@proj@/share/proj"
proj_lib_dirs = os.environ.get("PROJ_LIB", "")
prefix_datadir = os.path.join(sys.prefix, "share", "proj")
diff -Nur a/setup.py b/setup.py
--- a/setup.py 2020-03-24 12:53:39.415440624 +0100
+++ b/setup.py 2020-03-24 12:52:05.311232522 +0100
@@ -11,7 +11,7 @@
PROJ_MIN_VERSION = parse_version("6.2.0")
CURRENT_FILE_PATH = os.path.dirname(os.path.abspath(__file__))
BASE_INTERNAL_PROJ_DIR = "proj_dir"
-INTERNAL_PROJ_DIR = os.path.join(CURRENT_FILE_PATH, "pyproj", BASE_INTERNAL_PROJ_DIR)
+INTERNAL_PROJ_DIR = "@proj@"
def check_proj_version(proj_dir):
"""checks that the PROJ library meets the minimum version"""
- proj = os.path.join(proj_dir, "bin", "proj")
+ proj = "@proj@/bin/proj"
proj_ver_bytes = subprocess.check_output(proj, stderr=subprocess.STDOUT)
proj_ver_bytes = (proj_ver_bytes.decode("ascii").split()[1]).strip(",")
proj_version = parse_version(proj_ver_bytes)
@@ -33,6 +33,7 @@ def get_proj_dir():
"""
This function finds the base PROJ directory.
"""
+ return "@proj@"
proj_dir = os.environ.get("PROJ_DIR")
if proj_dir is None and os.path.exists(INTERNAL_PROJ_DIR):
proj_dir = INTERNAL_PROJ_DIR
@@ -56,6 +57,7 @@ def get_proj_libdirs(proj_dir):
"""
This function finds the library directories
"""
+ return ["@proj@/lib"]
proj_libdir = os.environ.get("PROJ_LIBDIR")
libdirs = []
if proj_libdir is None:
@@ -77,6 +79,7 @@ def get_proj_incdirs(proj_dir):
"""
This function finds the include directories
"""
+ return ["@proj@/include"]
proj_incdir = os.environ.get("PROJ_INCDIR")
incdirs = []
if proj_incdir is None:
@@ -146,7 +146,7 @@
# By default we'll try to get options PROJ_DIR or the local version of proj
proj_dir = get_proj_dir()
library_dirs = get_proj_libdirs(proj_dir)
- include_dirs = get_proj_incdirs(proj_dir)
+ include_dirs = get_proj_incdirs("@projdev@")
# setup extension options
ext_options = {
diff -Nur a/test/conftest.py b/test/conftest.py
--- a/test/conftest.py 2020-03-24 12:53:39.417440608 +0100
+++ b/test/conftest.py 2020-03-24 23:16:47.373972786 +0100
@@ -1,6 +1,7 @@
import os
import shutil
import tempfile
+import stat
import pytest
@@ -17,6 +18,15 @@
with tempfile.TemporaryDirectory() as tmpdir:
tmp_data_dir = os.path.join(tmpdir, "proj")
shutil.copytree(data_dir, tmp_data_dir)
+
+ # Data copied from the nix store is readonly (causes cleanup problem).
+ # Make it writable.
+ for r, d, files in os.walk(tmp_data_dir):
+ os.chmod(r, os.stat(r).st_mode | stat.S_IWUSR)
+ for f in files:
+ fpath = os.path.join(r, f)
+ os.chmod(fpath, os.stat(fpath).st_mode | stat.S_IWUSR)
+
try:
os.remove(os.path.join(str(tmp_data_dir), "ntv2_0.gsb"))
except OSError:

View File

@@ -1,20 +1,22 @@
{ lib, buildPythonPackage, fetchFromGitHub, python, pkgs, pythonOlder, substituteAll
{ lib, buildPythonPackage, fetchFromGitHub, python, pkgs, pythonOlder, isPy27, substituteAll
, aenum
, cython
, pytest
, mock
, numpy
, shapely
}:
buildPythonPackage rec {
pname = "pyproj";
version = "2.2.2";
version = "2.6.0";
disabled = isPy27;
src = fetchFromGitHub {
owner = "pyproj4";
repo = "pyproj";
rev = "v${version}rel";
sha256 = "0mb0jczgqh3sma69k7237i38h09gxgmvmddls9hpw4f3131f5ax7";
sha256 = "0fyggkbr3kp8mlq4c0r8sl5ah58bdg2mj4kzql9p3qyrkcdlgixh";
};
# force pyproj to use ${pkgs.proj}
@@ -22,13 +24,14 @@ buildPythonPackage rec {
(substituteAll {
src = ./001.proj.patch;
proj = pkgs.proj;
projdev = pkgs.proj.dev;
})
];
buildInputs = [ cython pkgs.proj ];
propagatedBuildInputs = [
numpy
numpy shapely
] ++ lib.optional (pythonOlder "3.6") aenum;
checkInputs = [ pytest mock ];
@@ -38,6 +41,9 @@ buildPythonPackage rec {
checkPhase = ''
pytest . -k 'not alternative_grid_name \
and not transform_wgs84_to_alaska \
and not transformer_group__unavailable \
and not transform_group__missing_best \
and not datum \
and not repr' \
--ignore=test/test_doctest_wrapper.py \
--ignore=test/test_datadir.py

View File

@@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "pysam";
version = "0.15.3";
version = "0.15.4";
# Fetching from GitHub instead of PyPi cause the 0.13 src release on PyPi is
# missing some files which cause test failures.
@@ -23,26 +23,35 @@ buildPythonPackage rec {
owner = "pysam-developers";
repo = "pysam";
rev = "v${version}";
sha256 = "0g6md20gsr24pdr9b8nj403w31ixfjv8bjhdvg3x476kjiq1kvyb";
sha256 = "04w6h6mv6lsr74hj9gy4r2laifcbhgl2bjcr4r1l9r73xdd45mdy";
};
nativeBuildInputs = [ samtools ];
buildInputs = [ bzip2 curl cython lzma zlib ];
checkInputs = [ pytest bcftools htslib samtools ];
checkInputs = [ pytest bcftools htslib ];
checkPhase = "py.test";
preInstall = ''
# tests require samtools<=1.9
doCheck = false;
preCheck = ''
export HOME=$(mktemp -d)
make -C tests/pysam_data
make -C tests/cbcf_data
'';
meta = {
homepage = https://pysam.readthedocs.io/;
pythonImportsCheck = [
"pysam"
"pysam.bcftools"
"pysam.libcutils"
"pysam.libcvcf"
];
meta = with lib; {
description = "A python module for reading, manipulating and writing genome data sets";
maintainers = with lib.maintainers; [ unode ];
license = lib.licenses.mit;
homepage = "https://pysam.readthedocs.io/";
maintainers = with maintainers; [ unode ];
license = licenses.mit;
platforms = [ "i686-linux" "x86_64-linux" ];
};
}

View File

@@ -2,6 +2,7 @@
, buildPythonPackage
, isPy3k
, fetchFromGitHub
, fetchpatch
, substituteAll
, xmlsec
, cryptography, defusedxml, future, pyopenssl, dateutil, pytz, requests, six
@@ -27,8 +28,19 @@ buildPythonPackage rec {
src = ./hardcode-xmlsec1-path.patch;
inherit xmlsec;
})
# remove on next release
(fetchpatch {
name = "fix-test-dates.patch";
url = "https://github.com/IdentityPython/pysaml2/commit/1d97d2d26f63e42611558fdd0e439bb8a7496a27.patch";
sha256 = "0r6d6hkk6z9yw7aqnsnylii516ysmdsc8dghwmgnwvw6cm7l388p";
})
];
postPatch = ''
# fix failing tests on systems with 32bit time_t
sed -i 's/2999\(-.*T\)/2029\1/g' tests/*.xml
'';
propagatedBuildInputs = [ cryptography defusedxml future pyopenssl dateutil pytz requests six ];
checkInputs = [ mock pyasn1 pymongo pytest responses ];

View File

@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "pytesseract";
version = "0.3.2";
version = "0.3.3";
src = fetchPypi {
inherit pname version;
sha256 = "1b6hmz9dqfn8il1g5vyz6izsxqjrbvrr2gs8gwwadyz8fx4vghx8";
sha256 = "0lml55jrvdzy9fm31zpw64fqc4d6p5djg1ax2kgnimzfscxghh8h";
};
patches = [

View File

@@ -1,34 +0,0 @@
{ lib
, buildPythonPackage
, fetchPypi
, setuptools_scm
, pytest
, pytest-mock
, pythonOlder
, faulthandler
}:
buildPythonPackage rec {
pname = "pytest-faulthandler";
version = "2.0.1";
src = fetchPypi {
inherit pname version;
sha256 = "ed72bbce87ac344da81eb7d882196a457d4a1026a3da4a57154dacd85cd71ae5";
};
nativeBuildInputs = [ setuptools_scm pytest ];
checkInputs = [ pytest-mock ];
propagatedBuildInputs = lib.optional (pythonOlder "3.0") faulthandler;
checkPhase = ''
py.test
'';
meta = {
description = "Py.test plugin that activates the fault handler module for tests";
homepage = https://github.com/pytest-dev/pytest-faulthandler;
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ costrouc ];
};
}

View File

@@ -21,7 +21,10 @@ buildPythonPackage rec {
};
checkInputs = [ pytest pexpect ];
checkPhase = ''pytest -ra'';
checkPhase = ''
# test_suppresses_timeout_when_pdb_is_entered fails under heavy load
pytest -ra -k 'not test_suppresses_timeout_when_pdb_is_entered'
'';
meta = with lib;{
description = "py.test plugin to abort hanging tests";

View File

@@ -34,7 +34,7 @@ buildPythonPackage rec {
description = "Python bindings for the remote Jenkins API";
homepage = https://pypi.python.org/pypi/python-jenkins;
license = licenses.bsd3;
maintainers = with maintainers; [ ma27 ];
maintainers = with maintainers; [ ];
};
}

View File

@@ -1,6 +1,8 @@
{ lib
, buildPythonPackage
, fetchPypi
, isPy38
, kerberos
, mock
, pytest
, requests
@@ -12,6 +14,7 @@
buildPythonPackage rec {
pname = "pywinrm";
version = "0.4.1";
disabled = isPy38;
src = fetchPypi {
inherit pname version;
@@ -19,13 +22,16 @@ buildPythonPackage rec {
};
checkInputs = [ mock pytest ];
propagatedBuildInputs = [ requests requests_ntlm six xmltodict ];
propagatedBuildInputs = [ requests requests_ntlm six kerberos xmltodict ];
meta = with lib; {
description = "Python library for Windows Remote Management";
homepage = https://github.com/diyan/pywinrm/;
homepage = "https://github.com/diyan/pywinrm";
license = licenses.mit;
maintainers = with maintainers; [ elasticdog ];
maintainers = with maintainers; [
elasticdog
kamadorueda
];
platforms = platforms.all;
};
}

View File

@@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchpatch
, numpy
, astropy
, astropy-healpix
@@ -24,6 +25,12 @@ buildPythonPackage rec {
nativeBuildInputs = [ astropy-helpers cython ];
# Fix tests
patches = [ (fetchpatch {
url = "https://github.com/astropy/reproject/pull/218/commits/4661e075137424813ed77f1ebcbc251fee1b8467.patch";
sha256 = "13g3h824pqn2lgypzg1b87vkd44y7m302lhw3kh4rfww1dkzhm9v";
}) ];
# Disable automatic update of the astropy-helper module
postPatch = ''
substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False"

View File

@@ -1,9 +1,11 @@
{ stdenv, buildPythonPackage, fetchPypi, nose }:
{ stdenv, buildPythonPackage, fetchPypi, pythonAtLeast, nose }:
buildPythonPackage rec {
pname = "rope";
version = "0.14.0";
disabled = pythonAtLeast "3.8"; # 0.17 should support Python 3.8
src = fetchPypi {
inherit pname version;
sha256 = "1bwayj0hh459s3yh0sdrxksr9wfilgi3a49izfaj06kvgyladif5";

View File

@@ -1,7 +1,28 @@
{ lib, buildPythonPackage, fetchPypi, wheel, setuptools, packaging
, cmake, ninja, cython, codecov, coverage, six, virtualenv, pathpy
, pytest, pytestcov, pytest-virtualenv, pytest-mock, pytestrunner
, requests, flake8 }:
{ lib
, buildPythonPackage
, fetchPypi
, fetchpatch
, distro
, packaging
, setuptools
, wheel
# Test Inputs
, cmake
, codecov
, coverage
, cython
, flake8
, ninja
, pathpy
, pytest
, pytestcov
, pytest-mock
, pytestrunner
, pytest-virtualenv
, requests
, six
, virtualenv
}:
buildPythonPackage rec {
pname = "scikit-build";
@@ -12,15 +33,41 @@ buildPythonPackage rec {
sha256 = "7342017cc82dd6178e3b19377389b8a8d1f8b429d9cdb315cfb1094e34a0f526";
};
propagatedBuildInputs = [ wheel setuptools packaging ];
checkInputs = [
cmake ninja cython codecov coverage six pathpy
pytest pytestcov pytest-mock pytest-virtualenv pytestrunner
requests flake8
propagatedBuildInputs = [
distro
packaging
setuptools
wheel
];
checkInputs = [
cmake
codecov
coverage
cython
flake8
ninja
pathpy
pytest
pytestcov
pytest-mock
pytestrunner
pytest-virtualenv
requests
six
virtualenv
];
dontUseCmakeConfigure = true;
# scikit-build PR #458. Remove in version > 0.10.0
patches = [
(fetchpatch {
name = "python38-platform_linux_distribution-fix-458";
url = "https://github.com/scikit-build/scikit-build/commit/faa7284e5bc4c72bc8744987acdf3297b5d2e7e4.patch";
sha256 = "1hgl3cnkf266zaw534b64c88waxfz9721wha0m6j3hsnxk76ayjv";
})
];
disabledTests = lib.concatMapStringsSep " and " (s: "not " + s) ([
"test_hello_develop" # tries setuptools develop install
"test_source_distribution" # pip has no way to install missing dependencies
@@ -35,9 +82,9 @@ buildPythonPackage rec {
'';
meta = with lib; {
homepage = http://scikit-build.org/;
description = "Improved build system generator for CPython C/C++/Fortran/Cython extensions";
homepage = "http://scikit-build.org/";
license = with licenses; [ mit bsd2 ]; # BSD due to reuses of PyNE code
maintainers = [ maintainers.FlorianFranzen ];
maintainers = with maintainers; [ FlorianFranzen ];
};
}

View File

@@ -0,0 +1,33 @@
{ lib
, buildPythonPackage
, fetchPypi
, nose
, pandas
, matplotlib
}:
buildPythonPackage rec {
pname = "seaborn";
version = "0.9.1";
src = fetchPypi {
inherit pname version;
sha256 = "da33aa8c20a9a342ce73831d02831a10413f54a05471c7f31edf34f225d456ae";
};
checkInputs = [ nose ];
propagatedBuildInputs = [ pandas matplotlib ];
checkPhase = ''
nosetests -v
'';
# Computationally very demanding tests
doCheck = false;
meta = {
description = "Statisitical data visualization";
homepage = "http://stanford.edu/~mwaskom/software/seaborn/";
license = with lib.licenses; [ bsd3 ];
maintainers = [ ];
};
}

View File

@@ -13,11 +13,11 @@
buildPythonPackage rec {
name = "sfepy_${version}";
version = "2019.2";
version = "2019.4";
src = fetchurl {
url="https://github.com/sfepy/sfepy/archive/release_${version}.tar.gz";
sha256 = "17dj0wbchcfa6x27yx4d4jix4z4nk6r2640xkqcsw0mf62x5l1pj";
sha256 = "1l9vgcw09l6bwhgfzlbn68fzpvns25r6nkd1pcp7hz5165hs6zzn";
};
propagatedBuildInputs = [
@@ -33,6 +33,7 @@ buildPythonPackage rec {
postPatch = ''
# broken test
rm tests/test_homogenization_perfusion.py
rm tests/test_splinebox.py
# slow tests
rm tests/test_input_*.py

View File

@@ -4,19 +4,20 @@
, canonicaljson
, unpaddedbase64
, pynacl
, typing-extensions
}:
buildPythonPackage rec {
pname = "signedjson";
version = "1.0.0";
version = "1.1.0";
src = fetchgit {
url = "https://github.com/matrix-org/python-signedjson.git";
rev = "refs/tags/v${version}";
sha256 = "0b8xxhc3npd4567kqapfp4gs7m0h057xam3an7424az262ind82n";
sha256 = "18s388hm3babnvakbbgfqk0jzq25nnznvhygywd3azp9b4yzmd5c";
};
propagatedBuildInputs = [ canonicaljson unpaddedbase64 pynacl ];
propagatedBuildInputs = [ canonicaljson unpaddedbase64 pynacl typing-extensions ];
meta = with stdenv.lib; {
homepage = https://pypi.org/project/signedjson/;

View File

@@ -0,0 +1,72 @@
{
lib
, buildPythonPackage
, fetchFromGitHub
, cloudpickle
, ipykernel
, wurlitzer
, jupyter_client
, pyzmq
, numpy
, pandas
, scipy
, matplotlib
, xarray
, pytest
, flaky
, isPy3k
}:
buildPythonPackage rec {
pname = "spyder-kernels";
version = "0.5.2";
src = fetchFromGitHub {
owner = "spyder-ide";
repo = "spyder-kernels";
rev = "v0.5.2";
sha256 = "1yan589g0470y61bcyjy3wj13i94ndyffckqdyrg97vw2qhfrisb";
};
# requirement xarray not available on Py2k
disabled = !isPy3k;
propagatedBuildInputs = [
cloudpickle
ipykernel
wurlitzer
jupyter_client
pyzmq
];
checkInputs = [
numpy
pandas
scipy
matplotlib
xarray
pytest
flaky
];
# skipped tests:
# turtle requires graphics
# cython test fails, I don't think this can ever access cython?
# umr pathlist test assumes standard directories, not compatible with nix
checkPhase = ''
export JUPYTER_RUNTIME_DIR=$(mktemp -d)
pytest -x -vv -k '\
not test_turtle_launch \
and not test_umr_skip_cython \
and not test_umr_pathlist' \
-W 'ignore::DeprecationWarning' \
spyder_kernels
'';
meta = with lib; {
description = "Jupyter kernels for Spyder's console";
homepage = "https://github.com/spyder-ide/spyder-kernels";
license = licenses.mit;
maintainers = with maintainers; [ gebner marcus7070 ];
};
}

View File

@@ -0,0 +1,70 @@
{ stdenv, buildPythonPackage, fetchPypi, makeDesktopItem, jedi, pycodestyle,
psutil, pyflakes, rope, numpy, scipy, matplotlib, pylint, keyring, numpydoc,
qtconsole, qtawesome, nbconvert, mccabe, pyopengl, cloudpickle, pygments,
spyder-kernels_0_5, qtpy, pyzmq, chardet
, pyqtwebengine
}:
buildPythonPackage rec {
pname = "spyder";
version = "3.3.6";
src = fetchPypi {
inherit pname version;
sha256 = "1z7qw1h3rhca12ycv8xrzw6z2gf81v0j6lfq9kpwh472w4vk75v1";
};
nativeBuildInputs = [ pyqtwebengine.wrapQtAppsHook ];
propagatedBuildInputs = [
jedi pycodestyle psutil pyflakes rope numpy scipy matplotlib pylint keyring
numpydoc qtconsole qtawesome nbconvert mccabe pyopengl cloudpickle spyder-kernels_0_5
pygments qtpy pyzmq chardet pyqtwebengine
];
# There is no test for spyder
doCheck = false;
desktopItem = makeDesktopItem {
name = "Spyder";
exec = "spyder";
icon = "spyder";
comment = "Scientific Python Development Environment";
desktopName = "Spyder";
genericName = "Python IDE";
categories = "Application;Development;Editor;IDE;";
};
postPatch = ''
# remove dependency on pyqtwebengine
# this is still part of the pyqt 5.11 version we have in nixpkgs
sed -i /pyqtwebengine/d setup.py
substituteInPlace setup.py --replace "pyqt5<5.13" "pyqt5"
'';
# Create desktop item
postInstall = ''
mkdir -p $out/share/icons
cp spyder/images/spyder.svg $out/share/icons
cp -r $desktopItem/share/applications/ $out/share
'';
dontWrapQtApps = true;
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
meta = with stdenv.lib; {
description = "Scientific python development environment";
longDescription = ''
Spyder (previously known as Pydee) is a powerful interactive development
environment for the Python language with advanced editing, interactive
testing, debugging and introspection features.
'';
homepage = "https://github.com/spyder-ide/spyder/";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ gebner ];
};
}

View File

@@ -1,7 +1,7 @@
{ lib
, stdenv
, buildPythonPackage
, fetchPypi
, fetchFromGitHub
, aiofiles
, graphene
, itsdangerous
@@ -20,12 +20,20 @@
buildPythonPackage rec {
pname = "starlette";
version = "0.13.0";
# This is not the latest version of Starlette, however, later
# versions of Starlette break FastAPI due to
# https://github.com/tiangolo/fastapi/issues/683. Please update when
# possible. FastAPI is currently Starlette's only dependent.
version = "0.12.9";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "6bd414152d40d000ccbf6aa40ed89718b40868366a0f69fb83034f416303acef";
src = fetchFromGitHub {
owner = "encode";
repo = pname;
rev = version;
sha256 = "0w44s8ynzy8w8dgm755c8jina9i4dd87vqkcv7jc1kwkg384w9i5";
};
propagatedBuildInputs = [

View File

@@ -2,13 +2,13 @@
buildPythonPackage rec {
pname = "swagger-spec-validator";
version = "2.4.3";
version = "2.5.0";
src = fetchFromGitHub {
owner = "Yelp";
repo = "swagger_spec_validator";
rev = "v" + version;
sha256 = "02f8amc6iq2clxxmrz8hirbb57sizaxijp0higqy16shk63ibalw";
sha256 = "0qlkiyncdh7cdyjvnwjpv9i7y75ghwnpyqkkpfaa8hg698na13pw";
};
checkInputs = [

View File

@@ -16,12 +16,12 @@
}:
buildPythonPackage rec {
pname = "Twisted";
version = "19.10.0";
version = "20.3.0";
src = fetchPypi {
inherit pname version;
extension = "tar.bz2";
sha256 = "7394ba7f272ae722a74f3d969dcf599bc4ef093bc392038748a490f1724a515d";
sha256 = "040yzha6cyshnn6ljgk2birgh6mh2cnra48xp5ina5vfsnsmab6p";
};
propagatedBuildInputs = [ zope_interface incremental automat constantly hyperlink pyhamcrest attrs setuptools ];

View File

@@ -1,5 +1,17 @@
{ stdenv, lib, buildPythonPackage, fetchPypi, python, zlib, clang
, ncurses, pytest, docutils, pygments, numpy, scipy, scikitlearn }:
{ stdenv
, lib
, fetchPypi
, buildPythonPackage
, cmake
, python
, zlib
, ncurses
, pytest
, docutils
, pygments
, numpy
, scipy
, scikitlearn }:
buildPythonPackage rec {
pname = "vowpalwabbit";
@@ -10,21 +22,27 @@ buildPythonPackage rec {
sha256 = "bd4c7e49a6ddaa1afedf97b22b822c7322328d686d45151b47a5127fc409c2af";
};
# Should be fixed in next Python release after 8.5.0:
# https://github.com/JohnLangford/vowpal_wabbit/pull/1533
patches = [
./vowpal-wabbit-find-boost.diff
nativeBuildInputs = [
cmake
];
# vw tries to write some explicit things to home
# python installed: The directory '/homeless-shelter/.cache/pip/http'
preInstall = ''
export HOME=$PWD
'';
buildInputs = [
docutils
ncurses
pygments
python.pkgs.boost
zlib.dev
];
nativeBuildInputs = [ clang ];
buildInputs = [ python.pkgs.boost zlib.dev ncurses pytest docutils pygments ];
propagatedBuildInputs = [ numpy scipy scikitlearn ];
propagatedBuildInputs = [
numpy
scikitlearn
scipy
];
# Python build script uses CMake, but we don't want CMake to do the
# configuration.
dontUseCmakeConfigure = true;
# Python ctypes.find_library uses DYLD_LIBRARY_PATH.
preConfigure = lib.optionalString stdenv.isDarwin ''
@@ -34,12 +52,12 @@ buildPythonPackage rec {
checkPhase = ''
# check-manifest requires a git clone, not a tarball
# check-manifest --ignore "Makefile,PACKAGE.rst,*.cc,tox.ini,tests*,examples*,src*"
${python.interpreter} setup.py check -mrs
${python.interpreter} setup.py check -ms
'';
meta = with lib; {
description = "Vowpal Wabbit is a fast machine learning library for online learning, and this is the python wrapper for the project.";
homepage = https://github.com/JohnLangford/vowpal_wabbit;
homepage = "https://github.com/JohnLangford/vowpal_wabbit";
license = licenses.bsd3;
broken = stdenv.isAarch64;
maintainers = with maintainers; [ teh ];

View File

@@ -1,34 +0,0 @@
--- vowpalwabbit-8.5.0.orig/setup.py 2018-09-03 20:32:39.000000000 +0200
+++ vowpalwabbit-8.5.0/setup.py 2018-09-03 20:34:09.000000000 +0200
@@ -23,18 +23,11 @@
def find_boost():
"""Find correct boost-python library information """
- if system == 'Linux':
+ if system == 'Linux' or system == 'Darwin':
# use version suffix if present
- boost_lib = 'boost_python-py{v[0]}{v[1]}'.format(v=sys.version_info)
- if sys.version_info.major == 3:
- for candidate in ['-py36', '-py35', '-py34', '3']:
- boost_lib = 'boost_python{}'.format(candidate)
- if find_library(boost_lib):
- exit
+ boost_lib = 'boost_python{v[0]}{v[1]}'.format(v=sys.version_info)
if not find_library(boost_lib):
boost_lib = "boost_python"
- elif system == 'Darwin':
- boost_lib = 'boost_python-mt' if sys.version_info[0] == 2 else 'boost_python3-mt'
elif system == 'Cygwin':
boost_lib = 'boost_python-mt' if sys.version_info[0] == 2 else 'boost_python3-mt'
else:
--- vowpalwabbit-8.5.0.orig/src/Makefile 2018-09-03 20:32:40.000000000 +0200
+++ vowpalwabbit-8.5.0/src/Makefile 2018-09-03 21:42:30.000000000 +0200
@@ -37,7 +37,7 @@
NPROCS:=$(shell grep -c ^processor /proc/cpuinfo)
endif
ifeq ($(UNAME), Darwin)
- LIBS = -lboost_program_options-mt -lboost_serialization-mt -l pthread -l z
+ LIBS = -lboost_program_options -lboost_serialization -l pthread -l z
# On Macs, the location isn't always clear
# brew uses /usr/local
# but /opt/local seems to be preferred by some users

View File

@@ -1,4 +1,4 @@
{ stdenv, buildPythonPackage, fetchPypi
{ lib, buildPythonPackage, fetchPypi
, setuptools_scm, pathpy, nbconvert
, pytest }:
@@ -11,11 +11,10 @@ buildPythonPackage rec {
sha256 = "b8a9bdcfa4b705d72b55b218658bc9403c157db7b57a14158253c98d03ab713d";
};
# Python 3.7 compatibility
# See https://github.com/zimmermanncode/zetup/pull/1
# Python 3.8 compatibility
postPatch = ''
substituteInPlace zetup/zetup_config.py \
--replace "'3.6']" "'3.6', '3.7']"
--replace "'3.7']" "'3.7', '3.8']"
'';
checkPhase = ''
@@ -25,11 +24,9 @@ buildPythonPackage rec {
checkInputs = [ pytest pathpy nbconvert ];
propagatedBuildInputs = [ setuptools_scm ];
meta = with stdenv.lib; {
description = ''
Zimmermann's Extensible Tools for Unified Project setups
'';
homepage = https://github.com/zimmermanncode/zetup;
meta = with lib; {
description = "Zimmermann's Extensible Tools for Unified Project setups";
homepage = "https://github.com/zimmermanncode/zetup";
license = licenses.gpl3Plus;
platforms = platforms.unix;
};