diff options
author | Silvan Mosberger <infinisil@icloud.com> | 2018-10-12 14:06:41 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-12 14:06:41 +0200 |
commit | c26d6001eda50cec98e4d92e994b5538437d4da3 (patch) | |
tree | ef6831fa9a68125bd9594aecd6120a22f4972b58 /pkgs | |
parent | 2434a2ee3a2920f98162e86e35a23d071041cf55 (diff) | |
parent | 73c523a605d455eacee45d7cb811dfba45103e8b (diff) | |
download | nixlib-c26d6001eda50cec98e4d92e994b5538437d4da3.tar nixlib-c26d6001eda50cec98e4d92e994b5538437d4da3.tar.gz nixlib-c26d6001eda50cec98e4d92e994b5538437d4da3.tar.bz2 nixlib-c26d6001eda50cec98e4d92e994b5538437d4da3.tar.lz nixlib-c26d6001eda50cec98e4d92e994b5538437d4da3.tar.xz nixlib-c26d6001eda50cec98e4d92e994b5538437d4da3.tar.zst nixlib-c26d6001eda50cec98e4d92e994b5538437d4da3.zip |
Merge pull request #45890 from lopsided98/buildbot-python3
buildbot: Python 3 support and other improvements
Diffstat (limited to 'pkgs')
20 files changed, 425 insertions, 330 deletions
diff --git a/pkgs/development/python-modules/astroid/1.6.nix b/pkgs/development/python-modules/astroid/1.6.nix new file mode 100644 index 000000000000..ca26da5a3737 --- /dev/null +++ b/pkgs/development/python-modules/astroid/1.6.nix @@ -0,0 +1,39 @@ +{ lib, fetchPypi, buildPythonPackage, pythonOlder, isPyPy +, lazy-object-proxy, six, wrapt, enum34, singledispatch, backports_functools_lru_cache +, pytest +}: + +buildPythonPackage rec { + pname = "astroid"; + version = "1.6.5"; + + src = fetchPypi { + inherit pname version; + sha256 = "0fir4b67sm7shcacah9n61pvq313m523jb4q80sycrh3p8nmi6zw"; + }; + + # From astroid/__pkginfo__.py + propagatedBuildInputs = [ + lazy-object-proxy + six + wrapt + enum34 + singledispatch + backports_functools_lru_cache + ]; + + checkInputs = [ pytest ]; + + checkPhase = '' + # test_builtin_help is broken + pytest -k "not test_builtin_help" astroid + ''; + + meta = with lib; { + description = "An abstract syntax tree for Python with inference support"; + homepage = https://github.com/PyCQA/astroid; + license = licenses.lgpl2; + platforms = platforms.all; + maintainers = with maintainers; [ nand0p ]; + }; +} diff --git a/pkgs/development/python-modules/astroid/default.nix b/pkgs/development/python-modules/astroid/default.nix index ccf6f4055269..d773c08e189a 100644 --- a/pkgs/development/python-modules/astroid/default.nix +++ b/pkgs/development/python-modules/astroid/default.nix @@ -22,8 +22,8 @@ buildPythonPackage rec { checkInputs = [ pytestrunner pytest ]; meta = with lib; { - description = "A abstract syntax tree for Python with inference support"; - homepage = https://bitbucket.org/logilab/astroid; + description = "An abstract syntax tree for Python with inference support"; + homepage = https://github.com/PyCQA/astroid; license = licenses.lgpl2; platforms = platforms.all; maintainers = with maintainers; [ nand0p ]; diff --git a/pkgs/development/python-modules/autobahn/default.nix b/pkgs/development/python-modules/autobahn/default.nix index 04aa9411247e..f618b05373a7 100644 --- a/pkgs/development/python-modules/autobahn/default.nix +++ b/pkgs/development/python-modules/autobahn/default.nix @@ -1,7 +1,6 @@ -{ stdenv, buildPythonPackage, fetchPypi, isPy3k, isPy33, - unittest2, mock, pytest, trollius, asyncio, - pytest-asyncio, futures, cffi, - six, twisted, txaio, zope_interface +{ lib, buildPythonPackage, fetchPypi, isPy3k, isPy33, + six, txaio, twisted, zope_interface, cffi, asyncio, trollius, futures, + mock, pytest }: buildPythonPackage rec { pname = "autobahn"; @@ -12,21 +11,18 @@ buildPythonPackage rec { sha256 = "b69858e0be4bff8437b0bd82a0db1cbef7405e16bd9354ba587c043d6d5e1ad9"; }; - # Upstream claim python2 support, but tests require pytest-asyncio which - # is pythn3 only. Therefore, tests are skipped for python2. - doCheck = isPy3k; - checkInputs = stdenv.lib.optionals isPy3k [ unittest2 mock pytest pytest-asyncio ]; - propagatedBuildInputs = [ cffi six twisted zope_interface txaio ] ++ - (stdenv.lib.optional isPy33 asyncio) ++ - (stdenv.lib.optionals (!isPy3k) [ trollius futures ]); + propagatedBuildInputs = [ six txaio twisted zope_interface cffi ] ++ + (lib.optional isPy33 asyncio) ++ + (lib.optionals (!isPy3k) [ trollius futures ]); + checkInputs = [ mock pytest ]; checkPhase = '' runHook preCheck USE_TWISTED=true py.test $out runHook postCheck ''; - meta = with stdenv.lib; { + meta = with lib; { description = "WebSocket and WAMP in Python for Twisted and asyncio."; homepage = "https://crossbar.io/autobahn"; license = licenses.mit; diff --git a/pkgs/development/python-modules/buildbot/default.nix b/pkgs/development/python-modules/buildbot/default.nix new file mode 100644 index 000000000000..0110aa92c061 --- /dev/null +++ b/pkgs/development/python-modules/buildbot/default.nix @@ -0,0 +1,94 @@ +{ stdenv, lib, buildPythonPackage, fetchPypi, makeWrapper, isPy3k, + python, twisted, jinja2, zope_interface, future, sqlalchemy, + sqlalchemy_migrate, dateutil, txaio, autobahn, pyjwt, treq, txrequests, + txgithub, pyjade, boto3, moto, mock, lz4, setuptoolsTrial, isort, pylint, + flake8, buildbot-worker, buildbot-pkg, glibcLocales }: + +let + withPlugins = plugins: buildPythonPackage { + name = "${package.name}-with-plugins"; + phases = [ "installPhase" "fixupPhase" ]; + buildInputs = [ makeWrapper ]; + propagatedBuildInputs = plugins ++ package.propagatedBuildInputs; + + installPhase = '' + makeWrapper ${package}/bin/buildbot $out/bin/buildbot \ + --prefix PYTHONPATH : "${package}/${python.sitePackages}:$PYTHONPATH" + ln -sfv ${package}/lib $out/lib + ''; + + passthru = package.passthru // { + withPlugins = morePlugins: withPlugins (morePlugins ++ plugins); + }; + }; + + package = buildPythonPackage rec { + pname = "buildbot"; + version = "1.4.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "0dfa926nh642i3bnpzlz0q347zicyx6wswjfqbniri59ya64fncx"; + }; + + propagatedBuildInputs = [ + # core + twisted + jinja2 + zope_interface + future + sqlalchemy + sqlalchemy_migrate + dateutil + txaio + autobahn + pyjwt + + # tls + twisted.extras.tls + ]; + + checkInputs = [ + treq + txrequests + pyjade + boto3 + moto + mock + lz4 + setuptoolsTrial + isort + pylint + flake8 + buildbot-worker + buildbot-pkg + glibcLocales + ]; + + patches = [ + # This patch disables the test that tries to read /etc/os-release which + # is not accessible in sandboxed builds. + ./skip_test_linux_distro.patch + ]; + + LC_ALL = "en_US.UTF-8"; + + # TimeoutErrors on slow machines -> aarch64 + doCheck = !stdenv.isAarch64; + + postPatch = '' + substituteInPlace buildbot/scripts/logwatcher.py --replace '/usr/bin/tail' "$(type -P tail)" + ''; + + passthru = { + inherit withPlugins; + }; + + meta = with lib; { + homepage = http://buildbot.net/; + description = "Buildbot is an open-source continuous integration framework for automating software build, test, and release processes"; + maintainers = with maintainers; [ nand0p ryansydnor ]; + license = licenses.gpl2; + }; + }; +in package diff --git a/pkgs/development/tools/build-managers/buildbot/pkg.nix b/pkgs/development/python-modules/buildbot/pkg.nix index 11f5be4e98e9..b9358b1c420b 100644 --- a/pkgs/development/tools/build-managers/buildbot/pkg.nix +++ b/pkgs/development/python-modules/buildbot/pkg.nix @@ -1,24 +1,21 @@ -{ stdenv, buildPythonPackage, fetchPypi, setuptools }: +{ lib, buildPythonPackage, fetchPypi, setuptools }: buildPythonPackage rec { - name = "${pname}-${version}"; pname = "buildbot-pkg"; - version = "1.2.0"; + version = "1.4.0"; src = fetchPypi { inherit pname version; - sha256 = "70f429311c5812ffd334f023f4f50b904be5c672c8674ee6d28a11a7c096f18a"; + sha256 = "06f4jvczbg9km0gfmcd1ljplf5w8za27i9ap9jnyqgh3j77smd7a"; }; - propagatedBuildInputs = [ setuptools ]; - postPatch = '' # Their listdir function filters out `node_modules` folders. # Do we have to care about that with Nix...? substituteInPlace buildbot_pkg.py --replace "os.listdir = listdir" "" ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = http://buildbot.net/; description = "Buildbot Packaging Helper"; maintainers = with maintainers; [ nand0p ryansydnor ]; diff --git a/pkgs/development/python-modules/buildbot/plugins.nix b/pkgs/development/python-modules/buildbot/plugins.nix new file mode 100644 index 000000000000..bdc67d178d44 --- /dev/null +++ b/pkgs/development/python-modules/buildbot/plugins.nix @@ -0,0 +1,103 @@ +{ lib, buildPythonPackage, fetchPypi, buildbot, buildbot-pkg }: + +{ + www = buildPythonPackage rec { + pname = "buildbot_www"; + inherit (buildbot-pkg) version; + + # NOTE: wheel is used due to buildbot circular dependency + format = "wheel"; + + src = fetchPypi { + inherit pname version format; + sha256 = "1m5dsp1gn9m5vfh5hnqp8g6hmhw1f1ydnassd33nhk521f2akz0v"; + }; + + meta = with lib; { + homepage = http://buildbot.net/; + description = "Buildbot UI"; + maintainers = with maintainers; [ nand0p ryansydnor ]; + license = licenses.gpl2; + }; + }; + + console-view = buildPythonPackage rec { + pname = "buildbot-console-view"; + inherit (buildbot-pkg) version; + + src = fetchPypi { + inherit pname version; + sha256 = "0vblaxmihgb4w9aa5q0wcgvxs7qzajql8s22w0pl9qs494g05s9r"; + }; + + propagatedBuildInputs = [ buildbot-pkg ]; + checkInputs = [ buildbot ]; + + meta = with lib; { + homepage = http://buildbot.net/; + description = "Buildbot Console View Plugin"; + maintainers = with maintainers; [ nand0p ryansydnor ]; + license = licenses.gpl2; + }; + }; + + waterfall-view = buildPythonPackage rec { + pname = "buildbot-waterfall-view"; + inherit (buildbot-pkg) version; + + src = fetchPypi { + inherit pname version; + sha256 = "18v1a6dapwjc2s9hi0cv3ry3s048w84md908zwaa3033gz3zwzy7"; + }; + + propagatedBuildInputs = [ buildbot-pkg ]; + checkInputs = [ buildbot ]; + + meta = with lib; { + homepage = http://buildbot.net/; + description = "Buildbot Waterfall View Plugin"; + maintainers = with maintainers; [ nand0p ryansydnor ]; + license = licenses.gpl2; + }; + }; + + grid-view = buildPythonPackage rec { + pname = "buildbot-grid-view"; + inherit (buildbot-pkg) version; + + src = fetchPypi { + inherit pname version; + sha256 = "0iawsy892v6rn88hsgiiwaf689jqzhnb2wbxh6zkz3c0hvq4g0qd"; + }; + + propagatedBuildInputs = [ buildbot-pkg ]; + checkInputs = [ buildbot ]; + + meta = with lib; { + homepage = http://buildbot.net/; + description = "Buildbot Grid View Plugin"; + maintainers = with maintainers; [ nand0p ]; + license = licenses.gpl2; + }; + }; + + wsgi-dashboards = buildPythonPackage rec { + pname = "buildbot-wsgi-dashboards"; + inherit (buildbot-pkg) version; + + src = fetchPypi { + inherit pname version; + sha256 = "00cpjna3bffh1qbq6a3sqffd1g7qhbrmn9gpzxf9k38jam6jgfpz"; + }; + + propagatedBuildInputs = [ buildbot-pkg ]; + checkInputs = [ buildbot ]; + + meta = with lib; { + homepage = http://buildbot.net/; + description = "Buildbot WSGI dashboards Plugin"; + maintainers = with maintainers; [ ]; + license = licenses.gpl2; + }; + }; +} diff --git a/pkgs/development/tools/build-managers/buildbot/skip_test_linux_distro.patch b/pkgs/development/python-modules/buildbot/skip_test_linux_distro.patch index 8fe5c7b56b4f..8fe5c7b56b4f 100644 --- a/pkgs/development/tools/build-managers/buildbot/skip_test_linux_distro.patch +++ b/pkgs/development/python-modules/buildbot/skip_test_linux_distro.patch diff --git a/pkgs/development/tools/build-managers/buildbot/worker.nix b/pkgs/development/python-modules/buildbot/worker.nix index 4fabad9d3701..4e54276f8aed 100644 --- a/pkgs/development/tools/build-managers/buildbot/worker.nix +++ b/pkgs/development/python-modules/buildbot/worker.nix @@ -1,23 +1,23 @@ -{ stdenv, pythonPackages }: +{ lib, buildPythonPackage, fetchPypi, python, setuptoolsTrial, mock, twisted, future }: -pythonPackages.buildPythonApplication (rec { - name = "${pname}-${version}"; +buildPythonPackage (rec { pname = "buildbot-worker"; version = "1.4.0"; - src = pythonPackages.fetchPypi { + src = fetchPypi { inherit pname version; sha256 = "12zvf4c39b6s4g1f2w407q8kkw602m88rc1ggi4w9pkw3bwbxrgy"; }; - buildInputs = with pythonPackages; [ setuptoolsTrial mock ]; - propagatedBuildInputs = with pythonPackages; [ twisted future ]; + propagatedBuildInputs = [ twisted future ]; + + checkInputs = [ setuptoolsTrial mock ]; postPatch = '' substituteInPlace buildbot_worker/scripts/logwatcher.py --replace '/usr/bin/tail' "$(type -P tail)" ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = http://buildbot.net/; description = "Buildbot Worker Daemon"; maintainers = with maintainers; [ nand0p ryansydnor ]; diff --git a/pkgs/development/python-modules/hyperlink/default.nix b/pkgs/development/python-modules/hyperlink/default.nix index 53a245c45dcf..2e2e4e1cb774 100644 --- a/pkgs/development/python-modules/hyperlink/default.nix +++ b/pkgs/development/python-modules/hyperlink/default.nix @@ -11,12 +11,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ idna ]; - checkInputs = [ pytest ]; - - checkPhase = '' - py.test $out - ''; - meta = with stdenv.lib; { description = "A featureful, correct URL for Python"; license = licenses.mit; diff --git a/pkgs/development/python-modules/pylint/1.9.nix b/pkgs/development/python-modules/pylint/1.9.nix new file mode 100644 index 000000000000..ad3140cf1572 --- /dev/null +++ b/pkgs/development/python-modules/pylint/1.9.nix @@ -0,0 +1,49 @@ +{ stdenv, lib, buildPythonPackage, fetchPypi, python, astroid, six, isort, + mccabe, configparser, backports_functools_lru_cache, singledispatch, + pytest, pytestrunner, pyenchant }: + +buildPythonPackage rec { + pname = "pylint"; + version = "1.9.2"; + + src = fetchPypi { + inherit pname version; + sha256 = "1cxr1j037hsm4spmvl64v2j2rdq72pc2z0gnn3iggd4np6y21wpz"; + }; + + checkInputs = [ pytest pytestrunner pyenchant ]; + + propagatedBuildInputs = [ astroid six isort mccabe configparser backports_functools_lru_cache singledispatch ]; + + postPatch = lib.optionalString stdenv.isDarwin '' + # Remove broken darwin test + rm -vf pylint/test/test_functional.py + ''; + + checkPhase = '' + pytest pylint/test -k "not ${lib.concatStringsSep " and not " ( + [ # Broken test + "test_good_comprehension_checks" + # See PyCQA/pylint#2535 + "test_libmodule" ] ++ + # Disable broken darwin tests + lib.optionals stdenv.isDarwin [ + "test_parallel_execution" + "test_py3k_jobs_option" + ] + )}" + ''; + + postInstall = '' + mkdir -p $out/share/emacs/site-lisp + cp "elisp/"*.el $out/share/emacs/site-lisp/ + ''; + + meta = with lib; { + homepage = https://github.com/PyCQA/pylint; + description = "A bug and style checker for Python"; + platforms = platforms.all; + license = licenses.gpl1Plus; + maintainers = with maintainers; [ nand0p ]; + }; +} diff --git a/pkgs/development/python-modules/pylint/default.nix b/pkgs/development/python-modules/pylint/default.nix index c9a44548c142..4f4eb3cfc731 100644 --- a/pkgs/development/python-modules/pylint/default.nix +++ b/pkgs/development/python-modules/pylint/default.nix @@ -1,5 +1,5 @@ -{ stdenv, buildPythonPackage, fetchPypi, python, pythonOlder, astroid, isort, - pytest, pytestrunner, mccabe, pytest_xdist, pyenchant }: +{ stdenv, lib, buildPythonPackage, fetchPypi, python, pythonOlder, astroid, + isort, mccabe, pytest, pytestrunner, pyenchant }: buildPythonPackage rec { pname = "pylint"; @@ -12,21 +12,25 @@ buildPythonPackage rec { sha256 = "31142f764d2a7cd41df5196f9933b12b7ee55e73ef12204b648ad7e556c119fb"; }; - checkInputs = [ pytest pytestrunner pytest_xdist pyenchant ]; + checkInputs = [ pytest pytestrunner pyenchant ]; propagatedBuildInputs = [ astroid isort mccabe ]; - postPatch = '' + postPatch = lib.optionalString stdenv.isDarwin '' # Remove broken darwin test rm -vf pylint/test/test_functional.py ''; checkPhase = '' - cat pylint/test/test_self.py - # Disable broken darwin tests - pytest pylint/test -k "not test_parallel_execution \ - and not test_py3k_jobs_option \ - and not test_good_comprehension_checks" + pytest pylint/test -k "not ${lib.concatStringsSep " and not " ( + # Broken test + [ "test_good_comprehension_checks" ] ++ + # Disable broken darwin tests + lib.optionals stdenv.isDarwin [ + "test_parallel_execution" + "test_py3k_jobs_option" + ] + )}" ''; postInstall = '' @@ -34,8 +38,8 @@ buildPythonPackage rec { cp "elisp/"*.el $out/share/emacs/site-lisp/ ''; - meta = with stdenv.lib; { - homepage = https://www.logilab.org/project/pylint; + meta = with lib; { + homepage = https://github.com/PyCQA/pylint; description = "A bug and style checker for Python"; platforms = platforms.all; license = licenses.gpl1Plus; diff --git a/pkgs/development/python-modules/sphinx-jinja/default.nix b/pkgs/development/python-modules/sphinx-jinja/default.nix new file mode 100644 index 000000000000..375f59ec3f91 --- /dev/null +++ b/pkgs/development/python-modules/sphinx-jinja/default.nix @@ -0,0 +1,27 @@ +{ lib, buildPythonPackage, fetchPypi, pbr, sphinx, sphinx-testing, nose, glibcLocales }: + +buildPythonPackage rec { + pname = "sphinx-jinja"; + version = "1.1.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "02pgp9pbn0zrs0lggrc74mv6cvlnlq8wib84ga6yjvq30gda9v8q"; + }; + + buildInputs = [ pbr ]; + propagatedBuildInputs = [ sphinx ]; + + checkInputs = [ sphinx-testing nose glibcLocales ]; + + checkPhase = '' + # Zip (epub) does not support files with epoch timestamp + LC_ALL="en_US.UTF-8" nosetests -e test_build_epub + ''; + + meta = with lib; { + description = "Sphinx extension to include jinja templates in documentation"; + maintainers = with maintainers; [ nand0p ]; + license = licenses.mit; + }; +} diff --git a/pkgs/development/python-modules/sqlalchemy-migrate/default.nix b/pkgs/development/python-modules/sqlalchemy-migrate/default.nix index 8a5609c1cd9f..41269aa6567f 100644 --- a/pkgs/development/python-modules/sqlalchemy-migrate/default.nix +++ b/pkgs/development/python-modules/sqlalchemy-migrate/default.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPythonPackage, fetchPypi, python +{ stdenv, buildPythonPackage, fetchPypi, fetchpatch, python , unittest2, scripttest, pytz, pylint, mock , testtools, pbr, tempita, decorator, sqlalchemy , six, sqlparse, testrepository @@ -12,6 +12,12 @@ buildPythonPackage rec { sha256 = "0ld2bihp9kmf57ykgzrfgxs4j9kxlw79sgdj9sfn47snw3izb2p6"; }; + # See: https://review.openstack.org/#/c/608382/ + patches = [ (fetchpatch { + url = https://github.com/openstack/sqlalchemy-migrate/pull/18.patch; + sha256 = "1qyfq2m7w7xqf0r9bc2x42qcra4r9k9l9g1jy5j0fvlb6bvvjj07"; + }) ]; + checkInputs = [ unittest2 scripttest pytz mock testtools testrepository ]; propagatedBuildInputs = [ pbr tempita decorator sqlalchemy six sqlparse ]; @@ -32,10 +38,8 @@ buildPythonPackage rec { ${python.interpreter} setup.py test ''; - doCheck = true; - meta = with stdenv.lib; { - homepage = http://code.google.com/p/sqlalchemy-migrate/; + homepage = https://github.com/openstack/sqlalchemy-migrate; description = "Schema migration tools for SQLAlchemy"; license = licenses.asl20; maintainers = with maintainers; [ makefu ]; diff --git a/pkgs/development/python-modules/tempita/default.nix b/pkgs/development/python-modules/tempita/default.nix new file mode 100644 index 000000000000..318c47d21608 --- /dev/null +++ b/pkgs/development/python-modules/tempita/default.nix @@ -0,0 +1,21 @@ +{ lib, buildPythonPackage, fetchFromGitHub, nose }: + +buildPythonPackage rec { + version = "0.5.3-2016-09-28"; + name = "tempita-${version}"; + + src = fetchFromGitHub { + owner = "gjhiggins"; + repo = "tempita"; + rev = "47414a7c6e46a9a9afe78f0bce2ea299fa84d10"; + sha256 = "0f33jjjs5rvp7ar2j6ggyfykcrsrn04jaqcq71qfvycf6b7nw3rn"; + }; + + buildInputs = [ nose ]; + + meta = { + homepage = https://github.com/gjhiggins/tempita; + description = "A very small text templating language"; + license = lib.licenses.mit; + }; +} diff --git a/pkgs/development/python-modules/trollius/default.nix b/pkgs/development/python-modules/trollius/default.nix index 6d43aa8da869..01ad57e55d7d 100644 --- a/pkgs/development/python-modules/trollius/default.nix +++ b/pkgs/development/python-modules/trollius/default.nix @@ -1,45 +1,49 @@ -{ lib, stdenv, buildPythonPackage, fetchPypi, isPy27, isPyPy, mock, futures }: +{ lib, stdenv, buildPythonPackage, fetchPypi, isPy3k, mock, unittest2, six, futures }: + buildPythonPackage rec { pname = "trollius"; - version = "1.0.4"; + version = "2.2"; src = fetchPypi { inherit pname version; - sha256 = "0xny8y12x3wrflmyn6xi8a7n3m3ac80fgmgzphx5jbbaxkjcm148"; + sha256 = "093978388qvw5hyscbbj062dbdc2761xs9yzrq26mh63g689lnxk"; }; - checkInputs = [ mock ]; + checkInputs = [ mock ] ++ lib.optional (!isPy3k) unittest2; - propagatedBuildInputs = lib.optionals (isPy27 || isPyPy) [ futures ]; + propagatedBuildInputs = [ six ] ++ lib.optional (!isPy3k) futures; patches = [ ./tests.patch ]; - # Some of the tests fail on darwin with `error: AF_UNIX path too long' - # because of the *long* path names for sockets - patchPhase = lib.optionalString stdenv.isDarwin '' - sed -i -e "s|test_create_ssl_unix_connection|skip_test_create_ssl_unix_connection|g" tests/test_events.py - sed -i -e "s|test_create_unix_connection|skip_test_create_unix_connection|g" tests/test_events.py - sed -i -e "s|test_create_unix_server_existing_path_nonsock|skip_test_create_unix_server_existing_path_nonsock|g" tests/test_unix_events.py - sed -i -e "s|test_create_unix_server_existing_path_sock|skip_test_create_unix_server_existing_path_sock|g" tests/test_unix_events.py - sed -i -e "s|test_create_unix_server_ssl_verified|skip_test_create_unix_server_ssl_verified|g" tests/test_events.py - sed -i -e "s|test_create_unix_server_ssl_verify_failed|skip_test_create_unix_server_ssl_verify_failed|g" tests/test_events.py - sed -i -e "s|test_create_unix_server_ssl|skip_test_create_unix_server_ssl|g" tests/test_events.py - sed -i -e "s|test_create_unix_server|skip_test_create_unix_server|g" tests/test_events.py - sed -i -e "s|test_open_unix_connection_error|skip_test_open_unix_connection_error|g" tests/test_streams.py - sed -i -e "s|test_open_unix_connection_no_loop_ssl|skip_test_open_unix_connection_no_loop_ssl|g" tests/test_streams.py - sed -i -e "s|test_open_unix_connection|skip_test_open_unix_connection|g" tests/test_streams.py - sed -i -e "s|test_pause_reading|skip_test_pause_reading|g" tests/test_subprocess.py - sed -i -e "s|test_read_pty_output|skip_test_read_pty_output|g" tests/test_events.py - sed -i -e "s|test_start_unix_server|skip_test_start_unix_server|g" tests/test_streams.py - sed -i -e "s|test_unix_sock_client_ops|skip_test_unix_sock_client_ops|g" tests/test_events.py - sed -i -e "s|test_write_pty|skip_test_write_pty|g" tests/test_events.py + postPatch = '' + # Overrides PYTHONPATH causing dependencies not to be found + sed -i -e "s|test_env_var_debug|skip_test_env_var_debug|g" tests/test_tasks.py + '' + lib.optionalString stdenv.isDarwin '' + # Some of the tests fail on darwin with `error: AF_UNIX path too long' + # because of the *long* path names for sockets + sed -i -e "s|test_create_ssl_unix_connection|skip_test_create_ssl_unix_connection|g" tests/test_events.py + sed -i -e "s|test_create_unix_connection|skip_test_create_unix_connection|g" tests/test_events.py + sed -i -e "s|test_create_unix_server_existing_path_nonsock|skip_test_create_unix_server_existing_path_nonsock|g" tests/test_unix_events.py + sed -i -e "s|test_create_unix_server_existing_path_sock|skip_test_create_unix_server_existing_path_sock|g" tests/test_unix_events.py + sed -i -e "s|test_create_unix_server_ssl_verified|skip_test_create_unix_server_ssl_verified|g" tests/test_events.py + sed -i -e "s|test_create_unix_server_ssl_verify_failed|skip_test_create_unix_server_ssl_verify_failed|g" tests/test_events.py + sed -i -e "s|test_create_unix_server_ssl|skip_test_create_unix_server_ssl|g" tests/test_events.py + sed -i -e "s|test_create_unix_server|skip_test_create_unix_server|g" tests/test_events.py + sed -i -e "s|test_open_unix_connection_error|skip_test_open_unix_connection_error|g" tests/test_streams.py + sed -i -e "s|test_open_unix_connection_no_loop_ssl|skip_test_open_unix_connection_no_loop_ssl|g" tests/test_streams.py + sed -i -e "s|test_open_unix_connection|skip_test_open_unix_connection|g" tests/test_streams.py + sed -i -e "s|test_pause_reading|skip_test_pause_reading|g" tests/test_subprocess.py + sed -i -e "s|test_read_pty_output|skip_test_read_pty_output|g" tests/test_events.py + sed -i -e "s|test_start_unix_server|skip_test_start_unix_server|g" tests/test_streams.py + sed -i -e "s|test_unix_sock_client_ops|skip_test_unix_sock_client_ops|g" tests/test_events.py + sed -i -e "s|test_write_pty|skip_test_write_pty|g" tests/test_events.py ''; meta = with stdenv.lib; { - description = "Port of the Tulip project (asyncio module, PEP 3156) on Python 2"; - homepage = "https://bitbucket.org/enovance/trollius"; + description = "Port of the asyncio project to Python 2.7"; + homepage = https://github.com/vstinner/trollius; license = licenses.asl20; maintainers = with maintainers; [ garbas ]; }; diff --git a/pkgs/development/tools/build-managers/buildbot/default.nix b/pkgs/development/tools/build-managers/buildbot/default.nix deleted file mode 100644 index adb279cdea68..000000000000 --- a/pkgs/development/tools/build-managers/buildbot/default.nix +++ /dev/null @@ -1,95 +0,0 @@ -{ stdenv, openssh, buildbot-worker, buildbot-pkg, pythonPackages, runCommand, makeWrapper }: - -let - withPlugins = plugins: runCommand "wrapped-${package.name}" { - buildInputs = [ makeWrapper ] ++ plugins; - propagatedBuildInputs = package.propagatedBuildInputs; - passthru.withPlugins = moarPlugins: withPlugins (moarPlugins ++ plugins); - } '' - makeWrapper ${package}/bin/buildbot $out/bin/buildbot \ - --prefix PYTHONPATH : "${package}/lib/python2.7/site-packages:$PYTHONPATH" - ln -sfv ${package}/lib $out/lib - ''; - - package = pythonPackages.buildPythonApplication rec { - name = "${pname}-${version}"; - pname = "buildbot"; - version = "1.2.0"; - - src = pythonPackages.fetchPypi { - inherit pname version; - sha256 = "02gwmls8kgm6scy36hdy0bg645zs1pxlrgwkcn79wrl7cfmabcbv"; - }; - - buildInputs = with pythonPackages; [ - lz4 - txrequests - pyjade - boto3 - moto - txgithub - mock - setuptoolsTrial - isort - pylint - astroid - pyflakes - openssh - buildbot-worker - buildbot-pkg - treq - ]; - - propagatedBuildInputs = with pythonPackages; [ - # core - twisted - jinja2 - zope_interface - sqlalchemy - sqlalchemy_migrate - future - dateutil - txaio - autobahn - pyjwt - distro - - # tls - pyopenssl - service-identity - idna - - # docs - sphinx - sphinxcontrib-blockdiag - sphinxcontrib-spelling - pyenchant - docutils - ramlfications - sphinx-jinja - - ]; - - patches = [ - # This patch disables the test that tries to read /etc/os-release which - # is not accessible in sandboxed builds. - ./skip_test_linux_distro.patch - ]; - - # TimeoutErrors on slow machines -> aarch64 - doCheck = !stdenv.isAarch64; - - postPatch = '' - substituteInPlace buildbot/scripts/logwatcher.py --replace '/usr/bin/tail' "$(type -P tail)" - ''; - - passthru = { inherit withPlugins; }; - - meta = with stdenv.lib; { - homepage = http://buildbot.net/; - description = "Buildbot is an open-source continuous integration framework for automating software build, test, and release processes"; - maintainers = with maintainers; [ nand0p ryansydnor ]; - license = licenses.gpl2; - }; - }; -in package diff --git a/pkgs/development/tools/build-managers/buildbot/plugins.nix b/pkgs/development/tools/build-managers/buildbot/plugins.nix deleted file mode 100644 index 430cdee3ca8c..000000000000 --- a/pkgs/development/tools/build-managers/buildbot/plugins.nix +++ /dev/null @@ -1,105 +0,0 @@ -{ stdenv, pythonPackages, buildbot-pkg }: - -{ - www = pythonPackages.buildPythonPackage rec { - name = "${pname}-${version}"; - pname = "buildbot_www"; - version = buildbot-pkg.version; - - # NOTE: wheel is used due to buildbot circular dependency - format = "wheel"; - - src = pythonPackages.fetchPypi { - inherit pname version format; - sha256 = "001kxjcyn5sxiq7m1izy4djj7alw6qpgaid4f518s9xgm4a8hwcb"; - }; - - meta = with stdenv.lib; { - homepage = http://buildbot.net/; - description = "Buildbot UI"; - maintainers = with maintainers; [ nand0p ryansydnor ]; - license = licenses.gpl2; - }; - }; - - console-view = pythonPackages.buildPythonPackage rec { - name = "${pname}-${version}"; - pname = "buildbot-console-view"; - version = buildbot-pkg.version; - - src = pythonPackages.fetchPypi { - inherit pname version; - sha256 = "11p9l9r9rh8cq0ihzjcdxfbi55n7inbsz45zqq67rkvqn5nhj5b6"; - }; - - propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ]; - - meta = with stdenv.lib; { - homepage = http://buildbot.net/; - description = "Buildbot Console View Plugin"; - maintainers = with maintainers; [ nand0p ryansydnor ]; - license = licenses.gpl2; - }; - }; - - waterfall-view = pythonPackages.buildPythonPackage rec { - name = "${pname}-${version}"; - pname = "buildbot-waterfall-view"; - version = buildbot-pkg.version; - - src = pythonPackages.fetchPypi { - inherit pname version; - sha256 = "1yx63frfpbvwy4hfib1psyq5ad0wysyzfrla8d7lgbdaip021wzw"; - }; - - propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ]; - - meta = with stdenv.lib; { - homepage = http://buildbot.net/; - description = "Buildbot Waterfall View Plugin"; - maintainers = with maintainers; [ nand0p ryansydnor ]; - license = licenses.gpl2; - }; - }; - - grid-view = pythonPackages.buildPythonPackage rec { - name = "${pname}-${version}"; - pname = "buildbot-grid-view"; - version = buildbot-pkg.version; - - src = pythonPackages.fetchPypi { - inherit pname version; - sha256 = "06my75hli3w1skdkx1qz6zqw2wckanhrcvlqm4inylj9v9pcrgv6"; - }; - - propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ]; - - meta = with stdenv.lib; { - homepage = http://buildbot.net/; - description = "Buildbot Grid View Plugin"; - maintainers = with maintainers; [ nand0p ]; - license = licenses.gpl2; - }; - }; - - wsgi-dashboards = pythonPackages.buildPythonPackage rec { - name = "${pname}-${version}"; - pname = "buildbot-wsgi-dashboards"; - version = buildbot-pkg.version; - - src = pythonPackages.fetchPypi { - inherit pname version; - sha256 = "073gz44fa5k1p8k46k0ld9gg16j8zdj6sc297qfyqpiw28ybhc5s"; - }; - - propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ]; - - meta = with stdenv.lib; { - homepage = http://buildbot.net/; - description = "Buildbot WSGI dashboards Plugin"; - maintainers = with maintainers; [ ]; - license = licenses.gpl2; - }; - }; - -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index fe0d3816413e..0abf0e608466 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -49,6 +49,11 @@ mapAliases ({ bashCompletion = bash-completion; # Added 2016-09-28 bridge_utils = bridge-utils; # added 2015-02-20 btrfsProgs = btrfs-progs; # added 2016-01-03 + buildbot = pythonPackages.buildbot; # added 2018-10-11 + buildbot-full = pythonPackages.buildbot-full; # added 2018-10-11 + buildbot-pkg = pythonPackages.buildbot-pkg; # added 2018-10-11 + buildbot-ui = pythonPackages.buildbot-ui; # added 2018-10-11 + buildbot-worker = pythonPackages.buildbot-worker; # added 2018-10-11 bundler_HEAD = bundler; # added 2015-11-15 cantarell_fonts = cantarell-fonts; # added 2018-03-03 checkbashism = checkbashisms; # added 2016-08-16 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5495b34960de..cac87f62a2bf 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8135,21 +8135,6 @@ with pkgs; buck = callPackage ../development/tools/build-managers/buck { }; - buildbot = callPackage ../development/tools/build-managers/buildbot { - pythonPackages = python2Packages; - }; - buildbot-worker = callPackage ../development/tools/build-managers/buildbot/worker.nix { - pythonPackages = python2Packages; - }; - buildbot-pkg = callPackage ../development/tools/build-managers/buildbot/pkg.nix { - inherit (python2Packages) buildPythonPackage fetchPypi setuptools; - }; - buildbot-plugins = callPackages ../development/tools/build-managers/buildbot/plugins.nix { - pythonPackages = python2Packages; - }; - buildbot-ui = buildbot.withPlugins (with self.buildbot-plugins; [ www ]); - buildbot-full = buildbot.withPlugins (with self.buildbot-plugins; [ www console-view waterfall-view grid-view wsgi-dashboards ]); - buildkite-agent = buildkite-agent2; buildkite-agent2 = callPackage ../development/tools/continuous-integration/buildkite-agent/2.x.nix { }; buildkite-agent3 = callPackage ../development/tools/continuous-integration/buildkite-agent/3.x.nix { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1b4abe4a327a..57f8c947fcc5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -738,7 +738,8 @@ in { # argparse is part of stdlib in 2.7 and 3.2+ argparse = null; - astroid = callPackage ../development/python-modules/astroid { }; + astroid = if isPy3k then callPackage ../development/python-modules/astroid { } + else callPackage ../development/python-modules/astroid/1.6.nix { }; attrdict = callPackage ../development/python-modules/attrdict { }; @@ -1420,6 +1421,13 @@ in { bugzilla = callPackage ../development/python-modules/bugzilla { }; + buildbot = callPackage ../development/python-modules/buildbot { }; + buildbot-plugins = pkgs.recurseIntoAttrs (callPackage ../development/python-modules/buildbot/plugins.nix { }); + buildbot-ui = self.buildbot.withPlugins (with self.buildbot-plugins; [ www ]); + buildbot-full = self.buildbot.withPlugins (with self.buildbot-plugins; [ www console-view waterfall-view grid-view wsgi-dashboards ]); + buildbot-worker = callPackage ../development/python-modules/buildbot/worker.nix { }; + buildbot-pkg = callPackage ../development/python-modules/buildbot/pkg.nix { }; + check-manifest = callPackage ../development/python-modules/check-manifest { }; devpi-common = callPackage ../development/python-modules/devpi-common { }; @@ -10226,7 +10234,8 @@ in { pygpgme = callPackage ../development/python-modules/pygpgme { }; - pylint = callPackage ../development/python-modules/pylint { }; + pylint = if isPy3k then callPackage ../development/python-modules/pylint { } + else callPackage ../development/python-modules/pylint/1.9.nix { }; pyopencl = callPackage ../development/python-modules/pyopencl { }; @@ -12977,26 +12986,7 @@ in { }; }); - sphinx-jinja = buildPythonPackage (rec { - name = "${pname}-${version}"; - pname = "sphinx-jinja"; - version = "0.2.1"; - src = pkgs.fetchurl { - url = "mirror://pypi/s/${pname}/${name}.tar.gz"; - sha256 = "1zsnhc573rvaww9qqyzs4f5h4hhvxklvppv14450vi5dk8rij81z"; - }; - buildInputs = with self; [ sphinx-testing pytest pbr]; - propagatedBuildInputs = with self; [ sphinx blockdiag ]; - checkPhase = '' - py.test -k "not test_build_epub" - ''; - disabled = isPy3k; - meta = { - description = "includes jinja templates in a documentation"; - maintainers = with maintainers; [ nand0p ]; - license = licenses.mit; - }; - }); + sphinx-jinja = callPackage ../development/python-modules/sphinx-jinja { }; sphinx_pypi_upload = buildPythonPackage (rec { name = "Sphinx-PyPI-upload-0.2.1"; @@ -13329,24 +13319,7 @@ in { }; }; - tempita = buildPythonPackage rec { - version = "0.5.2"; - name = "tempita-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/T/Tempita/Tempita-${version}.tar.gz"; - sha256 = "cacecf0baa674d356641f1d406b8bff1d756d739c46b869a54de515d08e6fc9c"; - }; - - disabled = isPy3k; - - buildInputs = with self; [ nose ]; - - meta = { - homepage = http://pythonpaste.org/tempita/; - description = "A very small text templating language"; - }; - }; + tempita = callPackage ../development/python-modules/tempita { }; terminado = callPackage ../development/python-modules/terminado { }; |