diff options
Diffstat (limited to 'pkgs/development/python-modules')
15 files changed, 347 insertions, 24 deletions
diff --git a/pkgs/development/python-modules/audio-metadata/default.nix b/pkgs/development/python-modules/audio-metadata/default.nix new file mode 100644 index 000000000000..633daab7d4e3 --- /dev/null +++ b/pkgs/development/python-modules/audio-metadata/default.nix @@ -0,0 +1,37 @@ +{ lib, buildPythonPackage, fetchPypi, pythonOlder +, attrs +, bidict +, bitstruct +, more-itertools +, pprintpp +}: + +buildPythonPackage rec { + pname = "audio-metadata"; + version = "0.3.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "1jd0wzhh9as2qyiwggqmvsbsm5nlb73qnxix2mcar53cddvwrvj7"; + }; + + propagatedBuildInputs = [ + attrs + bidict + bitstruct + more-itertools + pprintpp + ]; + + # No tests + doCheck = false; + + disabled = pythonOlder "3.6"; + + meta = with lib; { + homepage = https://github.com/thebigmunch/audio-metadata; + description = "A library for reading and, in the future, writing metadata from audio files"; + license = licenses.mit; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/bidict/default.nix b/pkgs/development/python-modules/bidict/default.nix new file mode 100644 index 000000000000..ed99686ed27b --- /dev/null +++ b/pkgs/development/python-modules/bidict/default.nix @@ -0,0 +1,42 @@ +{ lib, buildPythonPackage, fetchPypi +, setuptools_scm +, sphinx +, hypothesis +, py +, pytest +, pytest-benchmark +, sortedcollections +, sortedcontainers +}: + +buildPythonPackage rec { + pname = "bidict"; + version = "0.17.5"; + + src = fetchPypi { + inherit pname version; + sha256 = "1icj0fnfx47n6i33pj5gfrmd1rzpvah1jihhdhqiqx2cy9rs6x4c"; + }; + + nativeBuildInputs = [ setuptools_scm ]; + propagatedBuildInputs = [ sphinx ]; + + checkInputs = [ + hypothesis + py + pytest + pytest-benchmark + sortedcollections + sortedcontainers + ]; + checkPhase = '' + pytest tests + ''; + + meta = with lib; { + homepage = https://github.com/jab/bidict; + description = "Efficient, Pythonic bidirectional map data structures and related functionality"; + license = licenses.mpl20; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/bitstruct/default.nix b/pkgs/development/python-modules/bitstruct/default.nix new file mode 100644 index 000000000000..2bc4a5bbb616 --- /dev/null +++ b/pkgs/development/python-modules/bitstruct/default.nix @@ -0,0 +1,18 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "bitstruct"; + version = "6.0.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "1znqgy2ikdqn6n6mv1ccfbl0q7x65bh3i9ph0yjl4rihwvxyg9fg"; + }; + + meta = with lib; { + homepage = https://github.com/eerimoq/bitstruct; + description = "Python bit pack/unpack package"; + license = licenses.mit; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/click-default-group/default.nix b/pkgs/development/python-modules/click-default-group/default.nix new file mode 100644 index 000000000000..673a570c61f0 --- /dev/null +++ b/pkgs/development/python-modules/click-default-group/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchFromGitHub, click, pytest }: + +buildPythonPackage rec { + pname = "click-default-group"; + version = "1.2"; + + # No tests in Pypi tarball + src = fetchFromGitHub { + owner = "click-contrib"; + repo = "click-default-group"; + rev = "v${version}"; + sha256 = "0lm2k4jvy4ilvv91niawklfnp5mp7wa8c1bicsqdfzrxmw7jliwp"; + }; + + propagatedBuildInputs = [ click ]; + + checkInputs = [ pytest ]; + + meta = with lib; { + homepage = https://github.com/click-contrib/click-default-group; + description = "Group to invoke a command without explicit subcommand name"; + license = licenses.bsd3; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/django-compat/default.nix b/pkgs/development/python-modules/django-compat/default.nix index d575c1b674b0..32d85cfadd71 100644 --- a/pkgs/development/python-modules/django-compat/default.nix +++ b/pkgs/development/python-modules/django-compat/default.nix @@ -1,36 +1,31 @@ { stdenv, buildPythonPackage, fetchFromGitHub, python, - django, django_nose, six + django, six }: buildPythonPackage rec { pname = "django-compat"; - version = "1.0.14"; + version = "1.0.15"; # the pypi packages don't include everything required for the tests src = fetchFromGitHub { owner = "arteria"; repo = "django-compat"; rev = "v${version}"; - sha256 = "11g6ra6djkchqk44v8k7biaxd1v69qyyyask5l92vmrvb0qiwvm8"; + sha256 = "1pr6v38ahrsvxlgmcx69s4b5q5082f44gzi4h3c32sccdc4pwqxp"; }; checkPhase = '' runHook preCheck - # we have to do a little bit of tinkering to convince the tests to run against the installed package, not the - # source directory - mkdir -p testbase/compat - pushd testbase - # note we're not copying the direct contents of compat/ (notably __init__.py) so python won't recognize this as a - # package, but the tests need to be in a specific path for the test templates to get picked up. - cp -r ../compat/tests compat/ - cp ../runtests.py . - ${python.interpreter} runtests.py compat/tests - popd + # to convince the tests to run against the installed package, not the source directory, we extract the + # tests directory from it then dispose of the actual source + mv compat/tests . + rm -r compat + substituteInPlace runtests.py --replace compat.tests tests + ${python.interpreter} runtests.py runHook postCheck ''; - checkInputs = [ django_nose ]; propagatedBuildInputs = [ django six ]; meta = with stdenv.lib; { diff --git a/pkgs/development/python-modules/django-hijack-admin/default.nix b/pkgs/development/python-modules/django-hijack-admin/default.nix index e6cd5a3482fe..005d61acab9b 100644 --- a/pkgs/development/python-modules/django-hijack-admin/default.nix +++ b/pkgs/development/python-modules/django-hijack-admin/default.nix @@ -2,14 +2,14 @@ django_hijack, django_nose }: buildPythonPackage rec { pname = "django-hijack-admin"; - version = "2.1.5"; + version = "2.1.10"; # the pypi packages don't include everything required for the tests src = fetchFromGitHub { owner = "arteria"; repo = "django-hijack-admin"; rev = "v${version}"; - sha256 = "02j75blvkjiz5mv5wc4jxl27rgmjsrl6l67a3p8342jwazzsm6jg"; + sha256 = "0m98lchp2y43886n67j4s7miyd50pg2r5r966vjnxmd7nx7qkihf"; }; checkInputs = [ django_nose ]; @@ -17,13 +17,21 @@ buildPythonPackage rec { checkPhase = '' runHook preCheck + + # we have to do a little bit of tinkering to convince the tests to run against the installed package, not the + # source directory + mkdir testbase + pushd testbase + mv ../runtests.py . ${python.interpreter} runtests.py hijack_admin + popd + runHook postCheck ''; meta = with stdenv.lib; { description = "Admin integration for django-hijack"; - homepage = https://github.com/arteria/django-hijack; + homepage = https://github.com/arteria/django-hijack-admin; license = licenses.mit; maintainers = with maintainers; [ lsix ]; }; diff --git a/pkgs/development/python-modules/django-hijack/default.nix b/pkgs/development/python-modules/django-hijack/default.nix index bdf503cd8492..f41e7d146c97 100644 --- a/pkgs/development/python-modules/django-hijack/default.nix +++ b/pkgs/development/python-modules/django-hijack/default.nix @@ -3,15 +3,14 @@ }: buildPythonPackage rec { pname = "django-hijack"; - version = "2.1.9"; - name = pname + "-" + version; + version = "2.1.10"; # the pypi packages don't include everything required for the tests src = fetchFromGitHub { owner = "arteria"; repo = "django-hijack"; rev = "v${version}"; - sha256 = "109xi93xj37ycdsvainybhg89pcb5sawv6w80px4r6fjvaq4732c"; + sha256 = "01fwkjdzvw0yx2spwi7zc1yy64ndq1y72bfmk7kxnq5x803m2ak6"; }; checkInputs = [ django_nose ]; @@ -24,7 +23,7 @@ buildPythonPackage rec { # source directory mkdir testbase pushd testbase - cp ../runtests.py . + mv ../runtests.py . ${python.interpreter} runtests.py hijack popd diff --git a/pkgs/development/python-modules/glances/default.nix b/pkgs/development/python-modules/glances/default.nix index f25723e7ec72..9670428a3e5f 100644 --- a/pkgs/development/python-modules/glances/default.nix +++ b/pkgs/development/python-modules/glances/default.nix @@ -6,14 +6,14 @@ buildPythonPackage rec { name = "glances-${version}"; - version = "3.0.2"; + version = "3.1.0"; disabled = isPyPy; src = fetchFromGitHub { owner = "nicolargo"; repo = "glances"; rev = "v${version}"; - sha256 = "1jkjblfk4gbr00j7lny7ajiizzqnp0p1yhzfi14074gwk38z0q14"; + sha256 = "0zjpp017i8b8bijdaj85rya7rmdqh4g8vkb42q14q2sw6agxz3zi"; }; patches = lib.optional doCheck ./skip-failing-tests.patch; diff --git a/pkgs/development/python-modules/google-music-proto/default.nix b/pkgs/development/python-modules/google-music-proto/default.nix new file mode 100644 index 000000000000..b2196c8748ce --- /dev/null +++ b/pkgs/development/python-modules/google-music-proto/default.nix @@ -0,0 +1,37 @@ +{ lib, buildPythonPackage, fetchPypi, pythonOlder +, attrs +, audio-metadata +, marshmallow +, pendulum +, protobuf +}: + +buildPythonPackage rec { + pname = "google-music-proto"; + version = "2.2.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "008nap32hcrlnkkqkf462vwnm6xzrn6fj71lbryfmrakad7rz7bc"; + }; + + propagatedBuildInputs = [ + attrs + audio-metadata + marshmallow + pendulum + protobuf + ]; + + # No tests + doCheck = false; + + disabled = pythonOlder "3.6"; + + meta = with lib; { + homepage = https://github.com/thebigmunch/google-music-proto; + description = "Sans-I/O wrapper of Google Music API calls"; + license = licenses.mit; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/google-music-utils/default.nix b/pkgs/development/python-modules/google-music-utils/default.nix new file mode 100644 index 000000000000..d7fb8a917076 --- /dev/null +++ b/pkgs/development/python-modules/google-music-utils/default.nix @@ -0,0 +1,35 @@ +{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder +, audio-metadata, multidict, wrapt +, pytest +}: + +buildPythonPackage rec { + pname = "google-music-utils"; + version = "2.0.0"; + + # Pypi tarball doesn't contain tests + src = fetchFromGitHub { + owner = "thebigmunch"; + repo = "google-music-utils"; + rev = version; + sha256 = "0i5zcr1ypnxizi41s3lrplz9m9rmb56s5iihjx61kbybxcq2b6gk"; + }; + + propagatedBuildInputs = [ + audio-metadata multidict wrapt + ]; + + checkInputs = [ pytest ]; + checkPhase = '' + pytest + ''; + + disabled = pythonOlder "3.6"; + + meta = with lib; { + homepage = https://github.com/thebigmunch/google-music-utils; + description = "A set of utility functionality for google-music and related projects"; + license = licenses.mit; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/google-music/default.nix b/pkgs/development/python-modules/google-music/default.nix new file mode 100644 index 000000000000..b0fe0f8a2544 --- /dev/null +++ b/pkgs/development/python-modules/google-music/default.nix @@ -0,0 +1,39 @@ +{ lib, buildPythonPackage, fetchPypi, pythonOlder +, appdirs +, audio-metadata +, google-music-proto +, protobuf +, requests_oauthlib +, tenacity +}: + +buildPythonPackage rec { + pname = "google-music"; + version = "3.0.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "13i9nd62wqfg0f5r7ykr15q83397vdpw0js50fy5nbgs33sbf6b7"; + }; + + propagatedBuildInputs = [ + appdirs + audio-metadata + google-music-proto + protobuf + requests_oauthlib + tenacity + ]; + + # No tests + doCheck = false; + + disabled = pythonOlder "3.6"; + + meta = with lib; { + homepage = https://github.com/thebigmunch/google-music; + description = "A Google Music API wrapper"; + license = licenses.mit; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/logzero/default.nix b/pkgs/development/python-modules/logzero/default.nix new file mode 100644 index 000000000000..098d9f3e06d8 --- /dev/null +++ b/pkgs/development/python-modules/logzero/default.nix @@ -0,0 +1,23 @@ +{ lib, buildPythonPackage, fetchPypi, pytest }: + +buildPythonPackage rec { + pname = "logzero"; + version = "1.5.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "0hli2wgwxxackrk1ybmlpdd0rzms6blm11zzwlvrzykd8cp1xyil"; + }; + + checkInputs = [ pytest ]; + checkPhase = '' + pytest + ''; + + meta = with lib; { + homepage = https://github.com/metachris/logzero; + description = "Robust and effective logging for Python 2 and 3"; + license = licenses.mit; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/pprintpp/default.nix b/pkgs/development/python-modules/pprintpp/default.nix new file mode 100644 index 000000000000..daf9d0062fb2 --- /dev/null +++ b/pkgs/development/python-modules/pprintpp/default.nix @@ -0,0 +1,30 @@ +{ lib, fetchpatch, buildPythonPackage, fetchPypi, python, nose, parameterized }: + +buildPythonPackage rec { + pname = "pprintpp"; + version = "0.4.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "00v4pkyiqc0y9qjnp3br58a4k5zwqdrjjxbcsv39vx67w84630pa"; + }; + + patches = [ + (fetchpatch { + url = "https://github.com/wolever/pprintpp/commit/873217674cc824b4c1cfdad4867c560c60e8d806.patch"; + sha256 = "0rqxzxawr83215s84mfzh1gnjwjm2xv399ywwcl4q7h395av5vb3"; + }) + ]; + + checkInputs = [ nose parameterized ]; + checkPhase = '' + ${python.interpreter} test.py + ''; + + meta = with lib; { + homepage = https://github.com/wolever/pprintpp; + description = "A drop-in replacement for pprint that's actually pretty"; + license = licenses.bsd2; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} diff --git a/pkgs/development/python-modules/pyaxmlparser/default.nix b/pkgs/development/python-modules/pyaxmlparser/default.nix index 0721c0d449c7..c5be26bd9b73 100644 --- a/pkgs/development/python-modules/pyaxmlparser/default.nix +++ b/pkgs/development/python-modules/pyaxmlparser/default.nix @@ -28,7 +28,8 @@ buildPythonPackage rec { meta = with stdenv.lib; { description = "Python3 Parser for Android XML file and get Application Name without using Androguard"; homepage = https://github.com/appknox/pyaxmlparser; - license = licenses.mit; + # Files from Androguard are licensed ASL 2.0 + license = with licenses; [ mit asl20 ]; maintainers = with maintainers; [ ma27 ]; }; } diff --git a/pkgs/development/python-modules/tenacity/default.nix b/pkgs/development/python-modules/tenacity/default.nix new file mode 100644 index 000000000000..596fa6b825fc --- /dev/null +++ b/pkgs/development/python-modules/tenacity/default.nix @@ -0,0 +1,34 @@ +{ lib, buildPythonPackage, fetchPypi, isPy27 +, pbr, six, futures, monotonic +, pytest, sphinx, tornado +}: + +buildPythonPackage rec { + pname = "tenacity"; + version = "5.0.2"; + + src = fetchPypi { + inherit pname version; + sha256 = "1rjbj9wks7b7n75mbm01y0g2ngyai8yi05ck9gicmcdyix7vw42c"; + }; + + nativeBuildInputs = [ pbr ]; + propagatedBuildInputs = [ six ] + ++ lib.optionals isPy27 [ futures monotonic ]; + + checkInputs = [ pytest sphinx tornado ]; + checkPhase = (if isPy27 then '' + pytest --ignore='tenacity/tests/test_asyncio.py' + '' else '' + pytest + '') + '' + sphinx-build -a -E -W -b doctest doc/source doc/build + ''; + + meta = with lib; { + homepage = https://github.com/jd/tenacity; + description = "Retrying library for Python"; + license = licenses.asl20; + maintainers = with maintainers; [ jakewaksbaum ]; + }; +} |