diff --git a/pkgs/development/python-modules/affinity/default.nix b/pkgs/development/python-modules/affinity/default.nix index f2cb2ef6445..4eaaf56b441 100644 --- a/pkgs/development/python-modules/affinity/default.nix +++ b/pkgs/development/python-modules/affinity/default.nix @@ -1,13 +1,17 @@ -{ lib, buildPythonPackage, fetchPypi }: +{ lib, buildPythonPackage, fetchPypi, isPy3k }: buildPythonPackage rec { - name = "${pname}-${version}"; pname = "affinity"; version = "0.1.0"; + + # syntax error + disabled = isPy3k; + src = fetchPypi { inherit pname version; sha256 = "1i6j7kszvnzh5vh9k48cqwx2kzf73a6abgv9s6bf0j2zmfjl2wb6"; }; + meta = { description = "control processor affinity on windows and linux"; homepage = http://cheeseshop.python.org/pypi/affinity; diff --git a/pkgs/development/python-modules/csvkit/default.nix b/pkgs/development/python-modules/csvkit/default.nix index bfabf4376e7..badf33f8c12 100644 --- a/pkgs/development/python-modules/csvkit/default.nix +++ b/pkgs/development/python-modules/csvkit/default.nix @@ -1,28 +1,38 @@ -{ stdenv, fetchPypi, buildPythonPackage, - dateutil, dbf, xlrd, sqlalchemy, openpyxl, - agate-excel, agate-dbf, agate-sql, isPy3k }: +{ lib, fetchPypi, buildPythonPackage, isPy3k +, agate, agate-excel, agate-dbf, agate-sql, six +, argparse, ordereddict, simplejson +, glibcLocales, nose, mock, unittest2 +}: buildPythonPackage rec { - name = "${pname}-${version}"; - pname = "csvkit"; - version = "1.0.2"; + pname = "csvkit"; + version = "1.0.2"; - src = fetchPypi { - inherit pname version; - sha256 = "05vfsba9nwh4islszgs18rq8sjkpzqni0cdwvvkw7pi0r63pz2as"; - }; + src = fetchPypi { + inherit pname version; + sha256 = "05vfsba9nwh4islszgs18rq8sjkpzqni0cdwvvkw7pi0r63pz2as"; + }; - propagatedBuildInputs = [ dateutil dbf xlrd sqlalchemy openpyxl - agate-excel agate-dbf agate-sql ]; + propagatedBuildInputs = [ + agate agate-excel agate-dbf agate-sql six + ] ++ lib.optionals (!isPy3k) [ + argparse ordereddict simplejson + ]; - doCheck = !isPy3k; - # (only) python 3 we had 9 failures and 57 errors out of a much larger - # number of tests. + checkInputs = [ + glibcLocales nose + ] ++ lib.optionals (!isPy3k) [ + mock unittest2 + ]; - meta = with stdenv.lib; { - description = "A library of utilities for working with CSV, the king of tabular file formats"; - maintainers = with maintainers; [ vrthra ]; - license = with licenses; [ mit ]; - homepage = https://github.com/wireservice/csvkit; - }; + checkPhase = '' + LC_ALL="en_US.UTF-8" nosetests -e test_csvsql + ''; + + meta = with lib; { + description = "A library of utilities for working with CSV, the king of tabular file formats"; + maintainers = with maintainers; [ vrthra ]; + license = with licenses; [ mit ]; + homepage = https://github.com/wireservice/csvkit; + }; } diff --git a/pkgs/development/python-modules/dj-database-url/default.nix b/pkgs/development/python-modules/dj-database-url/default.nix new file mode 100644 index 00000000000..f334b7efeac --- /dev/null +++ b/pkgs/development/python-modules/dj-database-url/default.nix @@ -0,0 +1,20 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "dj-database-url"; + version = "0.5.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "4aeaeb1f573c74835b0686a2b46b85990571159ffc21aa57ecd4d1e1cb334163"; + }; + + # Tests access a DB via network + doCheck = false; + + meta = with lib; { + description = "Use Database URLs in your Django Application"; + homepage = https://github.com/kennethreitz/dj-database-url; + license = licenses.bsd2; + }; +} diff --git a/pkgs/development/python-modules/django-polymorphic/default.nix b/pkgs/development/python-modules/django-polymorphic/default.nix index 8cb68ed1e7d..2cd112d8150 100644 --- a/pkgs/development/python-modules/django-polymorphic/default.nix +++ b/pkgs/development/python-modules/django-polymorphic/default.nix @@ -1,18 +1,24 @@ -{ stdenv, buildPythonPackage, fetchPypi, django }: +{ stdenv, buildPythonPackage, fetchFromGitHub, python, django, dj-database-url }: buildPythonPackage rec { pname = "django-polymorphic"; version = "2.0.2"; - name = "${pname}-${version}"; - src = fetchPypi { - inherit pname version; - sha256 = "e1821d7b5874509a158a0f22bebf544330e0944c481c5a3e6da6cac8887e4e88"; + # PyPI tarball is missing some test files + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = "v${version}"; + sha256 = "18p84kdwpfp423vb2n38h840mj3bq0j57jx3cry7c8dznpi0vfi2"; }; - checkInputs = [ django ]; + checkInputs = [ dj-database-url ]; propagatedBuildInputs = [ django ]; + checkPhase = '' + ${python.interpreter} runtests.py + ''; + meta = { homepage = https://github.com/django-polymorphic/django-polymorphic; description = "Improved Django model inheritance with automatic downcasting"; diff --git a/pkgs/development/python-modules/fonttools/default.nix b/pkgs/development/python-modules/fonttools/default.nix index 28d4053888f..d7e789b02fa 100644 --- a/pkgs/development/python-modules/fonttools/default.nix +++ b/pkgs/development/python-modules/fonttools/default.nix @@ -3,16 +3,16 @@ , numpy , pytest , pytestrunner +, glibcLocales }: buildPythonPackage rec { pname = "fonttools"; - version = "3.23.0"; - name = "${pname}-${version}"; + version = "3.24.0"; src = fetchPypi { inherit pname version; - sha256 = "9af97075be0395b631880a82ba88dcf694c8aa76b07a622bf5f650e8f8cff293"; + sha256 = "d09126f443bc8797d1b7e76274e65f4c169c04722745953ecf536451b1d9a15f"; extension = "zip"; }; @@ -23,8 +23,13 @@ buildPythonPackage rec { checkInputs = [ pytest pytestrunner + glibcLocales ]; + preCheck = '' + export LC_ALL="en_US.UTF-8" + ''; + meta = { homepage = https://github.com/fonttools/fonttools; description = "A library to manipulate font files from Python"; diff --git a/pkgs/development/python-modules/ftputil/default.nix b/pkgs/development/python-modules/ftputil/default.nix new file mode 100644 index 00000000000..d3d338a2c8d --- /dev/null +++ b/pkgs/development/python-modules/ftputil/default.nix @@ -0,0 +1,27 @@ +{ lib, buildPythonPackage, fetchPypi, pytest }: + +buildPythonPackage rec { + version = "3.4"; + pname = "ftputil"; + + src = fetchPypi { + inherit pname version; + sha256 = "374b01e174079e91babe2a462fbd6f6c00dbfbfa299dec04239ca4229fbf8762"; + }; + + checkInputs = [ pytest ]; + + checkPhase = '' + touch Makefile + # Disable tests that require network access or access /home + py.test test \ + -k "not test_public_servers and not test_real_ftp \ + and not test_set_parser and not test_repr" + ''; + + meta = with lib; { + description = "High-level FTP client library (virtual file system and more)"; + homepage = http://ftputil.sschwarzer.net/; + license = licenses.bsd2; # "Modified BSD license, says pypi" + }; +} diff --git a/pkgs/development/python-modules/ldappool/default.nix b/pkgs/development/python-modules/ldappool/default.nix new file mode 100644 index 00000000000..58ca72a3dc9 --- /dev/null +++ b/pkgs/development/python-modules/ldappool/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchPypi, isPy3k +, pbr, ldap, fixtures, testresources, testtools }: + +buildPythonPackage rec { + name = "ldappool-${version}"; + version = "2.2.0"; + + src = fetchPypi { + pname = "ldappool"; + inherit version; + sha256 = "1akmzf51cjfvmd0nvvm562z1w9vq45zsx6fa72kraqgsgxhnrhqz"; + }; + + nativeBuildInputs = [ pbr ]; + + propagatedBuildInputs = [ ldap ]; + + checkInputs = [ fixtures testresources testtools ]; + + meta = with lib; { + description = "A simple connector pool for python-ldap"; + homepage = https://git.openstack.org/cgit/openstack/ldappool; + license = licenses.mpl20; + }; +} diff --git a/pkgs/development/python-modules/pycups/default.nix b/pkgs/development/python-modules/pycups/default.nix new file mode 100644 index 00000000000..28dff352e38 --- /dev/null +++ b/pkgs/development/python-modules/pycups/default.nix @@ -0,0 +1,22 @@ +{ stdenv, lib, buildPythonPackage, fetchurl, cups, libiconv }: + +buildPythonPackage rec { + pname = "pycups"; + version = "1.9.73"; + + src = fetchurl { + url = "http://cyberelk.net/tim/data/pycups/pycups-${version}.tar.bz2"; + sha256 = "c381be011889ca6f728598578c89c8ac9f7ab1e95b614474df9f2fa831ae5335"; + }; + + buildInputs = [ cups ] ++ lib.optional stdenv.isDarwin libiconv; + + # Wants to connect to CUPS + doCheck = false; + + meta = with lib; { + description = "Python bindings for libcups"; + homepage = http://cyberelk.net/tim/software/pycups/; + license = with licenses; [ gpl2Plus ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5dcfd9b348f..0de0d4c0f8e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4461,24 +4461,7 @@ in { }; }; - ftputil = buildPythonPackage rec { - version = "3.3"; - name = "ftputil-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/f/ftputil/${name}.tar.gz"; - sha256 = "1714w0v6icw2xjx5m54yv2qgkq49qwxwllq4gdb7wkz25iiapr8b"; - }; - - disabled = isPy3k; - - meta = { - description = "High-level FTP client library (virtual file system and more)"; - homepage = https://pypi.python.org/pypi/ftputil; - platforms = platforms.linux; - license = licenses.bsd2; # "Modified BSD license, says pypi" - }; - }; + ftputil = callPackage ../development/python-modules/ftputil { }; fudge = buildPythonPackage rec { name = "fudge-1.1.0"; @@ -7093,6 +7076,8 @@ in { }; }; + dj-database-url = callPackage ../development/python-modules/dj-database-url { }; + djmail = callPackage ../development/python-modules/djmail { }; pillowfight = buildPythonPackage rec { @@ -11612,23 +11597,7 @@ in { }; }; - ldappool = buildPythonPackage rec { - name = "ldappool-${version}"; - version = "1.0"; - - src = pkgs.fetchurl { - url = "mirror://pypi/l/ldappool/${name}.tar.gz"; - sha256 = "1akmzf51cjfvmd0nvvm562z1w9vq45zsx6fa72kraqgsgxhnrhqz"; - }; - - # Judging from SyntaxError - disabled = isPy3k; - - meta = with stdenv.lib; { - homepage = "https://github.com/mozilla-services/ldappool"; - }; - }; - + ldappool = callPackage ../development/python-modules/ldappool { }; lz4 = buildPythonPackage rec { name = "lz4-0.8.2"; @@ -13029,27 +12998,7 @@ in { }; }); - pycups = buildPythonPackage rec { - name = "pycups-${version}"; - version = "1.9.73"; - - src = pkgs.fetchurl { - url = "http://cyberelk.net/tim/data/pycups/pycups-${version}.tar.bz2"; - sha256 = "c381be011889ca6f728598578c89c8ac9f7ab1e95b614474df9f2fa831ae5335"; - }; - - buildInputs = [ pkgs.cups ]; - - # Wants to connect to CUPS - doCheck = false; - - meta = { - description = "Python bindings for libcups"; - homepage = http://cyberelk.net/tim/software/pycups/; - license = with licenses; [ gpl2Plus ]; - }; - - }; + pycups = callPackage ../development/python-modules/pycups { }; pycurl = buildPythonPackage (rec { name = "pycurl-7.19.5.1";