Merge remote-tracking branch 'upstream/master' into staging

This commit is contained in:
Tuomas Tynkkynen
2018-02-11 02:10:02 +02:00
126 changed files with 5893 additions and 2880 deletions

View File

@@ -0,0 +1,28 @@
{ buildPythonPackage, python, lib, fetchFromGitHub
, mock
}:
buildPythonPackage rec {
pname = "arxiv2bib";
version = "1.0.8";
# Missing tests on Pypi
src = fetchFromGitHub {
owner = "nathangrigg";
repo = "arxiv2bib";
rev = version;
sha256 = "1kp2iyx20lpc9dv4qg5fgwf83a1wx6f7hj1ldqyncg0kn9xcrhbg";
};
# Required for tests only
checkInputs = [ mock ];
checkPhase = "${python.interpreter} -m unittest discover -s tests";
meta = with lib; {
description = "Get a BibTeX entry from an arXiv id number, using the arxiv.org API";
homepage = http://nathangrigg.github.io/arxiv2bib/;
license = licenses.bsd3;
maintainers = [ maintainers.nico202 ];
};
}

View File

@@ -1,47 +1,40 @@
{ stdenv, fetchFromGitHub, buildPythonPackage, isPy3k
{ lib, fetchPypi, buildPythonPackage, isPy3k
, nose
, parameterized
, mock
, glibcLocales
, six
, jdatetime
, pyyaml
, dateutil
, umalqurra
, pytz
, tzlocal
, regex
, ruamel_yaml }:
buildPythonPackage rec {
pname = "dateparser";
version = "0.6.0";
version = "0.7.0";
src = fetchFromGitHub {
owner = "scrapinghub";
repo = pname;
rev = "refs/tags/v${version}";
sha256 = "0q2vyzvlj46r6pr0s6m1a0md1cpg9nv1n3xw286l4x2cc7fj2g3y";
src = fetchPypi {
inherit pname version;
sha256 = "940828183c937bcec530753211b70f673c0a9aab831e43273489b310538dff86";
};
# Replace nose-parameterized by parameterized
prePatch = ''
sed -i s/nose_parameterized/parameterized/g tests/*.py
sed -i s/nose-parameterized/parameterized/g tests/requirements.txt
'';
# Upstream Issue: https://github.com/scrapinghub/dateparser/issues/364
disabled = isPy3k;
checkInputs = [ nose parameterized mock glibcLocales ];
checkInputs = [ nose mock parameterized six glibcLocales ];
preCheck =''
# skip because of missing convertdate module, which is an extra requirement
rm tests/test_jalali.py
'';
propagatedBuildInputs = [ six jdatetime pyyaml dateutil
umalqurra pytz tzlocal regex ruamel_yaml ];
propagatedBuildInputs = [
# install_requires
dateutil pytz regex tzlocal
# extra_requires
jdatetime ruamel_yaml umalqurra
];
meta = with stdenv.lib;{
meta = with lib; {
description = "Date parsing library designed to parse dates from HTML pages";
homepage = https://github.com/scrapinghub/dateparser;
license = licenses.bsd3;

View File

@@ -0,0 +1,29 @@
{ buildPythonPackage, lib, fetchFromGitHub
, requests
, nose, vcrpy
}:
buildPythonPackage rec {
pname = "habanero";
version = "0.6.0";
# Install from Pypi is failing because of a missing file (Changelog.rst)
src = fetchFromGitHub {
owner = "sckott";
repo = pname;
rev = "v${version}";
sha256 = "1l2cgl6iiq8jff2w2pib6w8dwaj8344crhwsni2zzq0p44dwi13d";
};
propagatedBuildInputs = [ requests ];
checkInputs = [ nose vcrpy ];
checkPhase = "make test";
meta = {
description = "Python interface to Library Genesis";
homepage = http://habanero.readthedocs.io/en/latest/;
license = lib.licenses.mit;
maintainers = [ lib.maintainers.nico202 ];
};
}

View File

@@ -2,7 +2,7 @@
, fetchPypi
, mock
, unittest2
, msgpack
, msgpack-python
, requests
, flask
, gevent
@@ -22,7 +22,7 @@ buildPythonPackage rec {
sed -i s/"pyzmq=="/"pyzmq>="/ setup.py
'';
propagatedBuildInputs = [ msgpack requests flask gevent pyzmq ];
propagatedBuildInputs = [ msgpack-python requests flask gevent pyzmq ];
buildInputs = [ mock unittest2 ];
meta = {

View File

@@ -0,0 +1,28 @@
{ buildPythonPackage
, fetchPypi
, pytest
, lib
}:
buildPythonPackage rec {
pname = "msgpack";
version = "0.5.4";
src = fetchPypi {
inherit pname version;
sha256 = "13ckbs2qc4dww7fddnm9cw116j4spgxqab49ijmj6jr178ypwl80";
};
checkPhase = ''
py.test
'';
checkInputs = [ pytest ];
meta = {
homepage = https://github.com/msgpack/msgpack-python;
description = "MessagePack serializer implementation for Python";
license = lib.licenses.asl20;
# maintainers = ?? ;
};
}

View File

@@ -0,0 +1,41 @@
{ buildPythonPackage
, fetchPypi
, lib
, nose
, msgpack
, greenlet
, trollius
, pythonOlder
, isPyPy
}:
buildPythonPackage rec {
pname = "neovim";
version = "0.2.1";
src = fetchPypi {
inherit pname version;
sha256 = "16vzxmp7f6dl20n30j5cwwvrjj5h3c2ch8ldbss31anf36nirsdp";
};
checkInputs = [ nose ];
checkPhase = ''
nosetests
'';
# Tests require pkgs.neovim,
# which we cannot add because of circular dependency.
doCheck = false;
propagatedBuildInputs = [ msgpack ]
++ lib.optional (!isPyPy) greenlet
++ lib.optional (pythonOlder "3.4") trollius;
meta = {
description = "Python client for Neovim";
homepage = "https://github.com/neovim/python-client";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ garbas ];
};
}

View File

@@ -0,0 +1,21 @@
{ buildPythonPackage, lib, fetchPypi }:
buildPythonPackage rec {
pname = "papis-python-rofi";
version = "1.0.2";
src = fetchPypi {
inherit pname version;
sha256 = "13k6mw2nq923zazs77hpmh2s96v6zv13g7p89510qqkvp6fiml1v";
};
# No tests existing
doCheck = false;
meta = {
description = "A Python module to make simple GUIs with Rofi";
homepage = https://github.com/alejandrogallo/python-rofi;
license = lib.licenses.mit;
maintainers = [ lib.maintainers.nico202 ];
};
}

View File

@@ -1,19 +1,19 @@
{ stdenv, buildPythonPackage, isPy3k, fetchPypi }:
{ stdenv, buildPythonPackage, isPy3k, fetchFromGitHub }:
buildPythonPackage rec {
pname = "pyhomematic";
version = "0.1.38";
version = "0.1.39";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "15b09ppn5sn3vpnwfb7gygrvn5v65k3zvahkfx2kqpk1xah0mqbf";
# PyPI tarball does not include tests/ directory
src = fetchFromGitHub {
owner = "danielperna84";
repo = pname;
rev = version;
sha256 = "1g181x2mrhxcaswr6vi2m7if97wv4rf2g2pny60334sciga8njfz";
};
# Tests reuire network access
doCheck = false;
meta = with stdenv.lib; {
description = "Python 3 Interface to interact with Homematic devices";
homepage = https://github.com/danielperna84/pyhomematic;

View File

@@ -0,0 +1,28 @@
{ buildPythonPackage, python, lib, fetchPypi
, isPy3k
, requests
}:
buildPythonPackage rec {
pname = "pylibgen";
version = "1.3.1";
src = fetchPypi {
inherit pname version;
sha256 = "1rviqi3rf62b43cabdy8c2cdznjv034mp0qrfrzvkih4jlkhyfrh";
};
disabled = !isPy3k;
propagatedBuildInputs = [ requests ];
# It's not using unittest
checkPhase = "${python.interpreter} tests/test_pylibgen.py -c 'test_api_endpoints()'";
meta = {
description = "Python interface to Library Genesis";
homepage = https://pypi.org/project/pylibgen/;
license = lib.licenses.mit;
maintainers = [ lib.maintainers.nico202 ];
};
}

View File

@@ -0,0 +1,27 @@
{ buildPythonPackage, lib, fetchFromBitbucket
, parse
}:
buildPythonPackage rec {
pname = "pyparser";
version = "1.0";
# Missing tests on Pypi
src = fetchFromBitbucket {
owner = "rw_grim";
repo = pname;
rev = "v${version}";
sha256 = "0aplb4zdpgbpmaw9qj0vr7qip9q5w7sl1m1lp1nc9jmjfij9i0hf";
};
postPatch = "sed -i 's/parse==/parse>=/' requirements.txt";
propagatedBuildInputs = [ parse ];
meta = {
description = "Simple library that makes it easier to parse files";
homepage = https://bitbucket.org/rw_grim/pyparser;
license = lib.licenses.gpl3;
maintainers = [ lib.maintainers.nico202 ];
};
}

View File

@@ -24,6 +24,10 @@ buildPythonPackage rec {
propagatedBuildInputs = [ flask decorator httpbin six requests ];
checkPhase = ''
py.test
'';
meta = {
description = "Easily test your HTTP library against a local copy of httpbin.org";
homepage = https://github.com/kevin1024/pytest-httpbin;

View File

@@ -0,0 +1,28 @@
{ buildPythonPackage, lib, fetchPypi, file, stdenv }:
buildPythonPackage rec {
pname = "python-magic";
version = "0.4.13";
src = fetchPypi {
inherit pname version;
sha256 = "128j9y30zih6cyjyjnxhghnvpjm8vw40a1q7pgmrp035yvkaqkk0";
};
postPatch = ''
substituteInPlace magic.py --replace "ctypes.util.find_library('magic')" "'${file}/lib/libmagic${stdenv.hostPlatform.extensions.sharedLibrary}'"
'';
doCheck = false;
# TODO: tests are failing
#checkPhase = ''
# ${python}/bin/${python.executable} ./test.py
#'';
meta = {
description = "A python interface to the libmagic file type identification library";
homepage = https://github.com/ahupp/python-magic;
license = lib.licenses.mit;
};
}

View File

@@ -0,0 +1,31 @@
{ stdenv, fetchPypi, buildPythonPackage, certifi, future, urllib3 }:
buildPythonPackage rec {
pname = "python-telegram-bot";
version = "9.0.0";
src = fetchPypi {
inherit pname version;
sha256 = "0a5b4wfc6ms7kblynw2h3ygpww98kyz5n8iibqbdyykwx8xj7hzm";
};
prePatch = ''
rm -rf telegram/vendor
substituteInPlace telegram/utils/request.py \
--replace "import telegram.vendor.ptb_urllib3.urllib3 as urllib3" "import urllib3 as urllib3" \
--replace "import telegram.vendor.ptb_urllib3.urllib3.contrib.appengine as appengine" "import urllib3.contrib.appengine as appengine" \
--replace "from telegram.vendor.ptb_urllib3.urllib3.connection import HTTPConnection" "from urllib3.connection import HTTPConnection" \
--replace "from telegram.vendor.ptb_urllib3.urllib3.util.timeout import Timeout" "from urllib3.util.timeout import Timeout"
'';
propagatedBuildInputs = [ certifi future urllib3 ];
doCheck = false;
meta = with stdenv.lib; {
description = "This library provides a pure Python interface for the Telegram Bot API.";
homepage = https://python-telegram-bot.org;
license = licenses.lgpl3;
maintainers = with maintainers; [ veprbl ];
};
}

View File

@@ -26,8 +26,10 @@ buildPythonPackage rec {
substituteInPlace requirements.txt --replace "ipaddress>=1.0.16" ""
'';
# Skip a failing test until fixed upstream:
# https://github.com/meejah/txtorcon/issues/250
checkPhase = ''
pytest .
pytest --ignore=test/test_util.py .
'';
meta = {