Merge staging at '8d490ca9934d0c01e1e9ade455657e54e2e843c0' into master

This commit is contained in:
Frederik Rietdijk
2018-02-26 13:05:32 +01:00
33 changed files with 389 additions and 267 deletions

View File

@@ -1,15 +1,23 @@
{ stdenv, buildPythonPackage, fetchurl, six }:
{ stdenv, buildPythonPackage, fetchFromGitHub, async-timeout, pytest, pytest-asyncio }:
buildPythonPackage rec {
version = "2.1.5";
version = "2.1.6";
pname = "asgiref";
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://pypi/a/asgiref/${name}.tar.gz";
sha256 = "1a46196df28c67e046a54cc537ce5a8f6a59eb68649f54680d7e4fc3b113ab1b";
# PyPI tarball doesn't include tests directory
src = fetchFromGitHub {
owner = "django";
repo = pname;
rev = version;
sha256 = "12p1i2ai03x2hx6b3i7xgicyfi2x11is6pkbdac4jpz7fmbz3zlh";
};
propagatedBuildInputs = [ six ];
propagatedBuildInputs = [ async-timeout ];
checkInputs = [ pytest pytest-asyncio ];
checkPhase = ''
py.test
'';
meta = with stdenv.lib; {
description = "Reference ASGI adapters and channel layers";

View File

@@ -1,20 +1,31 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchFromGitHub
, pyparsing
, future
, nose
, glibcLocales
}:
buildPythonPackage rec {
pname = "bibtexparser";
version = "1.0.1";
name = "${pname}-${version}";
src = fetchPypi {
inherit pname version;
sha256 = "cc41cdd8332c2bf44b97daf1f135f4f267c3b744c33976655cd270b66f964c0a";
# PyPI tarball does not ship tests
src = fetchFromGitHub {
owner = "sciunto-org";
repo = "python-${pname}";
rev = "v${version}";
sha256 = "0lmlarkfbq2hp1wa04a62245jr2mqizqsdlgilj5aq6vy92gr6ai";
};
# No tests in archive
doCheck = false;
propagatedBuildInputs = [ pyparsing future ];
checkInputs = [ nose glibcLocales ];
checkPhase = ''
LC_ALL="en_US.UTF-8" nosetests
'';
meta = {
description = "Bibtex parser for python 2.7 and 3.3 and newer";

View File

@@ -0,0 +1,27 @@
{ lib, buildPythonPackage, fetchPypi, chardet, hypothesis }:
buildPythonPackage rec {
pname = "binaryornot";
version = "0.4.4";
src = fetchPypi {
inherit pname version;
sha256 = "359501dfc9d40632edc9fac890e19542db1a287bbcfa58175b66658392018061";
};
prePatch = ''
# See https://github.com/audreyr/binaryornot/issues/40
substituteInPlace tests/test_check.py \
--replace "average_size=512" "average_size=128"
'';
propagatedBuildInputs = [ chardet ];
checkInputs = [ hypothesis ];
meta = with lib; {
homepage = https://github.com/audreyr/binaryornot;
description = "Ultra-lightweight pure Python package to check if a file is binary or text";
license = licenses.bsd3;
};
}

View File

@@ -1,11 +1,10 @@
{stdenv, lib, buildPythonPackage, fetchPypi, coverage, bash, which, writeText}:
{stdenv, lib, buildPythonPackage, fetchPypi, bash, which, writeText}:
buildPythonPackage rec {
name = "${pname}-${version}";
version = "0.7";
pname = "cram";
buildInputs = [ coverage which ];
checkInputs = [ which ];
src = fetchPypi {
inherit pname version;
@@ -13,20 +12,13 @@ buildPythonPackage rec {
};
postPatch = ''
patchShebangs scripts/cram
substituteInPlace tests/test.t \
--replace "/bin/bash" "${bash}/bin/bash"
'';
# This testing is copied from Makefile. Simply using `make test` doesn't work
# because it uses the unpatched `scripts/cram` executable which has a bad
# shebang. Also, for some reason, coverage fails on one file so let's just
# ignore that one.
checkPhase = ''
# scripts/cram tests
#COVERAGE=${coverage}/bin/coverage $out/bin/cram tests
#${coverage}/bin/coverage report --fail-under=100
COVERAGE=coverage $out/bin/cram tests
coverage report --fail-under=100 --omit="*/_encoding.py,*/__main__.py"
scripts/cram tests
'';
meta = {

View File

@@ -1,4 +1,4 @@
{ stdenv, buildPythonPackage, fetchPypi, blessings, mock, nose, pyte, pytest, wcwidth }:
{ stdenv, buildPythonPackage, fetchPypi, blessings, mock, nose, pyte, wcwidth, typing }:
buildPythonPackage rec {
pname = "curtsies";
@@ -8,12 +8,12 @@ buildPythonPackage rec {
sha256 = "89c802ec051d01dec6fc983e9856a3706e4ea8265d2940b1f6d504a9e26ed3a9";
};
propagatedBuildInputs = [ blessings wcwidth pyte ];
propagatedBuildInputs = [ blessings wcwidth typing ];
checkInputs = [ nose mock pytest ];
checkInputs = [ mock pyte nose ];
checkPhase = ''
py.test
nosetests tests
'';
meta = with stdenv.lib; {

View File

@@ -1,19 +1,31 @@
{ stdenv, buildPythonPackage, fetchPypi,
asgiref, autobahn, twisted, hypothesis
{ stdenv, buildPythonPackage, isPy3k, fetchFromGitHub
, asgiref, autobahn, twisted, pytestrunner
, hypothesis, pytest, pytest-asyncio
}:
buildPythonPackage rec {
pname = "daphne";
name = "${pname}-${version}";
version = "2.0.3";
src = fetchPypi {
inherit pname version;
sha256 = "bb2075ce35ca00f2e5440cc034dfebd5c00d346de62ea45f099db089b868c31f";
disabled = !isPy3k;
src = fetchFromGitHub {
owner = "django";
repo = pname;
rev = version;
sha256 = "1rdnzpgyk5cnx4xc3c7k11v2x9xpihgjpq14fib80jfpcqggw687";
};
buildInputs = [ hypothesis ];
nativeBuildInputs = [ pytestrunner ];
propagatedBuildInputs = [ asgiref autobahn twisted ];
checkInputs = [ hypothesis pytest pytest-asyncio ];
checkPhase = ''
# Other tests fail, seems to be due to filesystem access
py.test -k "test_cli or test_utils"
'';
meta = with stdenv.lib; {
description = "Django ASGI (HTTP/WebSocket) server";
license = licenses.bsd3;

View File

@@ -1,21 +1,24 @@
{ stdenv, fetchPypi, buildPythonPackage, aenum, isPy3k }:
{ stdenv, fetchPypi, buildPythonPackage, aenum, isPy3k, pythonOlder, enum34, python }:
buildPythonPackage rec {
pname = "dbf";
version = "0.96.8";
name = "${pname}-${version}";
src = fetchPypi {
inherit pname version;
sha256 = "1z8n7s4cka6x9ybh4qpfhj51v2qrk38h2f06npizzhm0hmn6r3v1";
};
propagatedBuildInputs = [ aenum ];
propagatedBuildInputs = [ aenum ] ++ stdenv.lib.optional (pythonOlder "3.4") [ enum34 ];
doCheck = !isPy3k;
# tests are not yet ported.
# https://groups.google.com/forum/#!topic/python-dbase/96rx2xmCG4w
checkPhase = ''
${python.interpreter} dbf/test.py
'';
meta = with stdenv.lib; {
description = "Pure python package for reading/writing dBase, FoxPro, and Visual FoxPro .dbf files";
homepage = "https://pypi.python.org/pypi/dbf";

View File

@@ -1,12 +1,13 @@
{ stdenv, fetchPypi, buildPythonPackage, hidapi
{ stdenv, fetchPypi, buildPythonPackage, isPy3k, hidapi
, pycrypto, pillow, protobuf, future, ecpy
}:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "ECPy";
version = "0.8.3";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "ef3d95419d53368f52fb7d4b883b8df0dfc2dd19a76243422d24981c3e5f27bd";

View File

@@ -1,6 +1,6 @@
{ lib, buildPythonPackage, fetchPypi, pythonOlder,
# Build inputs
dateutil, six, ipaddress ? null,
dateutil, six, text-unidecode, ipaddress ? null,
# Test inputs
email_validator, nose, mock, ukpostcodeparser }:
@@ -8,12 +8,11 @@ assert pythonOlder "3.3" -> ipaddress != null;
buildPythonPackage rec {
pname = "Faker";
version = "0.8.8";
name = "${pname}-${version}";
version = "0.8.11";
src = fetchPypi {
inherit pname version;
sha256 = "e928cf853ef69d7471421f2a3716a1239e43de0fa9855f4016ee0c9f1057328a";
sha256 = "126kdy6lj10rwgchzz0lzjabx0zcyskamhn0qib67k69fcksjmq8";
};
checkInputs = [
@@ -26,6 +25,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [
dateutil
six
text-unidecode
] ++ lib.optional (pythonOlder "3.3") ipaddress;
meta = with lib; {

View File

@@ -0,0 +1,26 @@
{ lib, buildPythonPackage, fetchPypi, isPy3k, colorama, coverage, termstyle, unidecode, mock, backports_shutil_get_terminal_size }:
buildPythonPackage rec {
pname = "green";
version = "2.12.0";
src = fetchPypi {
inherit pname version;
sha256 = "8cdd2934eff754c9664f373ee0d77cb1cb35dbbf3b719b8ae3b059718db875df";
};
prePatch = ''
# See https://github.com/CleanCut/green/pull/182
substituteInPlace setup.py --replace python-termstyle termstyle
'';
propagatedBuildInputs = [
colorama coverage termstyle unidecode
] ++ lib.optionals (!isPy3k) [ mock backports_shutil_get_terminal_size ];
meta = with lib; {
description = "Python test runner";
homepage = https://github.com/CleanCut/green;
license = licenses.mit;
};
}

View File

@@ -0,0 +1,48 @@
{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, writeText, configparser, six, pytest, glibcLocales }:
buildPythonPackage rec {
pname = "konfig";
version = "1.1";
# konfig unconditionaly depend on configparser, even if it is part of
# the standard library in python 3.2 or above.
disabled = isPy3k;
# PyPI tarball is missing utf8.ini, required for tests
src = fetchFromGitHub {
owner = "mozilla-services";
repo = pname;
rev = version;
sha256 = "1h780fbrv275dcik4cs3rincza805z6q726b48r4a0qmh5d8160c";
};
propagatedBuildInputs = [ configparser six ];
patches = [ (writeText "konfig.patch" ''
diff --git a/setup.py b/setup.py
index 96fd858..bb4db06 100644
--- a/setup.py
+++ b/setup.py
@@ -20,7 +20,7 @@ setup(name='konfig',
author_email="tarek@mozilla.com",
include_package_data=True,
install_requires = [
- 'configparser', 'argparse', 'six'
+ 'configparser', 'six'
],
zip_safe=False,
classifiers=classifiers,
'') ];
checkInputs = [ pytest glibcLocales ];
checkPhase = ''
LC_ALL=en_US.utf8 pytest -v konfig/tests
'';
meta = with lib; {
description = "Yet Another Config Parser";
homepage = "https://github.com/mozilla-services/konfig";
license = licenses.mpl20;
};
}

View File

@@ -1,12 +1,9 @@
{ lib
, buildPythonPackage
, pythonOlder
, isPy35
, isPy36
, fetchPypi
, hypothesis
, pytestcache
, pytestcov
, pytestflakes
, pytestpep8
, pytest
@@ -19,10 +16,9 @@ buildPythonPackage rec {
pname = "natsort";
version = "5.2.0";
buildInputs = [
checkInputs = [
hypothesis
pytestcache
pytestcov
pytestflakes
pytestpep8
pytest
@@ -41,7 +37,7 @@ buildPythonPackage rec {
# testing based on project's tox.ini
checkPhase = ''
pytest --doctest-modules natsort
pytest --flakes --pep8 --cov natsort --cov-report term-missing
pytest --flakes --pep8
'';
meta = {

View File

@@ -3,32 +3,24 @@
, fetchPypi
, nose
, decorator
, isPy36
, isPyPy
}:
buildPythonPackage rec {
pname = "networkx";
version = "1.11";
# Currently broken on PyPy.
# https://github.com/networkx/networkx/pull/1361
disabled = isPyPy;
version = "2.1";
src = fetchPypi {
inherit pname version;
sha256 = "1f74s56xb4ggixiq0vxyfxsfk8p20c7a099lpcf60izv1php03hd";
extension = "zip";
sha256 = "64272ca418972b70a196cb15d9c85a5a6041f09a2f32e0d30c0255f25d458bb1";
};
checkInputs = [ nose ];
propagatedBuildInputs = [ decorator ];
# 17 failures with 3.6 https://github.com/networkx/networkx/issues/2396#issuecomment-304437299
doCheck = !(isPy36);
meta = {
homepage = "https://networkx.github.io/";
description = "Library for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks";
license = lib.licenses.bsd3;
};
}
}

View File

@@ -3,7 +3,6 @@
buildPythonPackage rec {
pname = "pomegranate";
version = "0.8.1";
name = "${pname}-${version}";
src = fetchFromGitHub {
repo = pname;
@@ -21,5 +20,9 @@ buildPythonPackage rec {
homepage = https://github.com/jmschrei/pomegranate;
license = licenses.mit;
maintainers = with maintainers; [ rybern ];
# "pomegranate does not yet work with networkx 2.0"
# see https://github.com/jmschrei/pomegranate/issues/209
broken = true;
};
}

View File

@@ -7,6 +7,8 @@
, six
, pydotplus
, rdflib
, pydot
, glibcLocales
}:
buildPythonPackage rec {
@@ -18,6 +20,10 @@ buildPythonPackage rec {
sha256 = "640dc158d931403bc6c1a0ad80702caae71f810bac21f90ec605865c8444b7bb";
};
prePatch = ''
substituteInPlace setup.py --replace "six==1.10.0" "six>=1.10.0"
'';
propagatedBuildInputs = [
lxml
networkx
@@ -26,7 +32,15 @@ buildPythonPackage rec {
pydotplus
rdflib
];
doCheck = false; # takes ~60 mins
checkInputs = [
pydot
glibcLocales
];
preCheck = ''
export LC_ALL="en_US.utf-8"
'';
meta = with stdenv.lib; {
description = "A Python library for W3C Provenance Data Model (PROV)";

View File

@@ -1,4 +1,4 @@
{ lib, buildPythonPackage, fetchPypi, isPy3k, pytest, mock, setuptools_scm }:
{ lib, buildPythonPackage, fetchPypi, fetchpatch, isPy3k, pytest, mock, setuptools_scm }:
buildPythonPackage rec {
pname = "pytest-mock";
@@ -9,6 +9,11 @@ buildPythonPackage rec {
sha256 = "8ed6c9ac6b7565b226b4da2da48876c9198d76401ec8d9c5e4c69b45423e33f8";
};
patches = fetchpatch {
url = "${meta.homepage}/pull/107.patch";
sha256 = "07p7ra6lilfv04wyxc855zmfwxvnpmi9s0v6vh5bx769cj9jwxck";
};
propagatedBuildInputs = [ pytest ] ++ lib.optional (!isPy3k) mock;
nativeBuildInputs = [ setuptools_scm ];

View File

@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "pytest-xdist";
version = "1.22.0";
version = "1.22.1";
src = fetchPypi {
inherit pname version;
sha256 = "65228a859191f2c74ee68c127317eefe35eedd3d43fc1431f19240663b0cafcd";
sha256 = "fcd6f36bab93b0b24ec45ca12f798b9b3af71da826db0b0794b358d2f5c038de";
};
nativeBuildInputs = [ setuptools_scm ];

View File

@@ -0,0 +1,24 @@
{ lib, buildPythonPackage, fetchPypi, nose, six, colorama, termstyle }:
buildPythonPackage rec {
pname = "rednose";
version = "1.3.0";
src = fetchPypi {
inherit pname version;
sha256 = "6da77917788be277b70259edc0bb92fc6f28fe268b765b4ea88206cc3543a3e1";
};
prePatch = ''
substituteInPlace setup.py --replace "six==1.10.0" "six>=1.10.0"
'';
checkInputs = [ six ];
propagatedBuildInputs = [ nose colorama termstyle ];
meta = with lib; {
description = "A python nose plugin adding color to console results";
homepage = https://github.com/JBKahn/rednose;
license = licenses.mit;
};
}

View File

@@ -0,0 +1,20 @@
{ lib, buildPythonPackage, fetchPypi }:
buildPythonPackage rec {
pname = "termstyle";
version = "0.1.11";
src = fetchPypi {
inherit pname version;
sha256 = "ef74b83698ea014112040cf32b1a093c1ab3d91c4dd18ecc03ec178fd99c9f9f";
};
# Only manual tests
doCheck = false;
meta = with lib; {
description = "Console colouring for python";
homepage = "https://pypi.python.org/pypi/python-termstyle/0.1.10";
license = licenses.bsdOriginal;
};
}

View File

@@ -0,0 +1,23 @@
{ lib, buildPythonPackage, fetchPypi, pytest }:
buildPythonPackage rec {
pname = "text-unidecode";
version = "1.1";
src = fetchPypi {
inherit pname version;
sha256 = "1l081m1w8ibbx684ca71ibdy68iwqsivy6rf6yqvysdclzldbbyh";
};
checkInputs = [ pytest ];
checkPhase = ''
py.test
'';
meta = with lib; {
description = "The most basic Text::Unidecode port";
homepage = https://github.com/kmike/text-unidecode;
license = licenses.artistic1;
};
}

View File

@@ -0,0 +1,21 @@
{ lib, buildPythonPackage, fetchPypi
, wrapGAppsHook, gobjectIntrospection, pygobject3, graphviz, gnome3 }:
buildPythonPackage rec {
pname = "xdot";
version = "0.9";
src = fetchPypi {
inherit pname version;
sha256 = "01v9vmgdxz1q2m2vq2b4aqx4ycw7grc0l4is673ygvyg9rk02dx3";
};
nativeBuildInputs = [ wrapGAppsHook ];
propagatedBuildInputs = [ gobjectIntrospection pygobject3 graphviz gnome3.gtk ];
meta = with lib; {
description = "xdot.py is an interactive viewer for graphs written in Graphviz's dot";
homepage = https://github.com/jrfonseca/xdot.py;
license = licenses.lgpl3Plus;
};
}