diff --git a/Makefile b/Makefile --- a/Makefile +++ b/Makefile @@ -15,6 +15,7 @@ test: test-clean: rm -rf coverage.xml htmlcov junit.xml pylint.log result find . -type d -name "__pycache__" -prune -exec rm -rf '{}' ';' + find . -type f \( -iname '.coverage.*' \) -exec rm '{}' ';' test-only: PYTHONHASHSEED=random \ @@ -22,7 +23,7 @@ test-only: --cov=vcsserver --cov-report=term-missing --cov-report=html vcsserver generate-pkgs: - nix-shell pkgs/shell-generate.nix --command "pip2nix generate --licenses" + nix-shell pkgs/shell-generate.nix --command "pip2nix generate --licenses --no-binary :all:" pip-packages: python ${OUTDATED_PACKAGES} diff --git a/default.nix b/default.nix --- a/default.nix +++ b/default.nix @@ -33,20 +33,22 @@ let # Evaluates to the last segment of a file system path. basename = path: with pkgs.lib; last (splitString "/" path); + startsWith = prefix: full: let + actualPrefix = builtins.substring 0 (builtins.stringLength prefix) full; + in actualPrefix == prefix; # source code filter used as arugment to builtins.filterSource. src-filter = path: type: with pkgs.lib; let ext = last (splitString "." path); + parts = last (splitString "/" path); in !builtins.elem (basename path) [ ".git" ".hg" "__pycache__" ".eggs" ".idea" ".dev" "node_modules" "node_binaries" "build" "data" "result" "tmp"] && !builtins.elem ext ["egg-info" "pyc"] && - # TODO: johbo: This check is wrong, since "path" contains an absolute path, - # it would still be good to restore it since we want to ignore "result-*". - !hasPrefix "result" path; + !startsWith "result" (basename path); sources = let @@ -55,6 +57,7 @@ let all isString attrValues; + sourcesConfig = pkgs.config.rc.sources or {}; in # Ensure that sources are configured as strings. Using a path @@ -82,20 +85,25 @@ let # expose following attributed outside passthru = { pythonPackages = self; + vcs_pkgs = pkgs; }; + buildInputs = + attrs.buildInputs or [] ++ [ + + ]; + + #NOTE: option to inject additional propagatedBuildInputs propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ pkgs.git pkgs.subversion ]; - # set some default locale env variables - LC_ALL = "en_US.UTF-8"; - LOCALE_ARCHIVE = - if pkgs.stdenv.isLinux - then "${pkgs.glibcLocales}/lib/locale/locale-archive" - else ""; + preBuild = '' + export NIX_PATH=nixpkgs=${pkgs.path} + export SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt + ''; # Add bin directory to path so that tests can find 'vcsserver'. preCheck = '' @@ -126,6 +134,8 @@ let # python based programs need to be wrapped mkdir -p $out/bin + + # required binaries from dependencies ln -s ${self.python}/bin/python $out/bin/ ln -s ${self.gunicorn}/bin/gunicorn $out/bin/ ln -s ${self.pyramid}/bin/prequest $out/bin/ @@ -161,6 +171,7 @@ let }); }; + basePythonPackages = with builtins; if isAttrs pythonPackages then pythonPackages @@ -168,22 +179,14 @@ let getAttr pythonPackages pkgs; pythonGeneratedPackages = import ./pkgs/python-packages.nix { - inherit - pkgs; - inherit - (pkgs) - fetchurl - fetchgit - fetchhg; + inherit pkgs; + inherit (pkgs) fetchurl fetchgit fetchhg; }; pythonVCSServerOverrides = import ./pkgs/python-packages-overrides.nix { - inherit - pkgs - basePythonPackages; + inherit pkgs basePythonPackages; }; - # Apply all overrides and fix the final package set myPythonPackagesUnfix = with pkgs.lib; (extends pythonExternalOverrides diff --git a/pkgs/python-packages-overrides.nix b/pkgs/python-packages-overrides.nix --- a/pkgs/python-packages-overrides.nix +++ b/pkgs/python-packages-overrides.nix @@ -16,13 +16,13 @@ in self: super: { "cffi" = super."cffi".override (attrs: { - buildInputs = [ + buildInputs = with self; attrs.buildInputs ++ [ pkgs.libffi ]; }); "gevent" = super."gevent".override (attrs: { - propagatedBuildInputs = attrs.propagatedBuildInputs ++ [ + propagatedBuildInputs = with self; attrs.propagatedBuildInputs ++ [ # NOTE: (marcink) odd requirements from gevent aren't set properly, # thus we need to inject psutil manually self."psutil" @@ -39,15 +39,17 @@ self: super: { "subvertpy" = super."subvertpy".override (attrs: { SVN_PREFIX = "${pkgs.subversion.dev}"; - propagatedBuildInputs = [ + nativeBuildInputs = with self; attrs.nativeBuildInputs ++ [ pkgs.apr.dev pkgs.aprutil + ]; + buildInputs = with self; [ pkgs.subversion ]; }); "mercurial" = super."mercurial".override (attrs: { - propagatedBuildInputs = [ + nativeBuildInputs = with self; attrs.nativeBuildInputs ++ [ # self.python.modules.curses ]; }); @@ -59,10 +61,19 @@ self: super: { }); "pygit2" = super."pygit2".override (attrs: { - propagatedBuildInputs = attrs.propagatedBuildInputs ++ [ + nativeBuildInputs = with self; attrs.nativeBuildInputs ++ [ pkgs.libffi pkgs.libgit2rc ]; + buildInputs = with self; attrs.buildInputs ++ [ + pkgs.libgit2rc + ]; + }); + + "py" = super."py".override (attrs: { + buildInputs = with self; attrs.buildInputs ++ [ + self."setuptools-scm" + ]; }); # Avoid that base packages screw up the build process diff --git a/pkgs/python-packages.nix b/pkgs/python-packages.nix --- a/pkgs/python-packages.nix +++ b/pkgs/python-packages.nix @@ -1,1090 +1,1535 @@ -# Generated by pip2nix 0.8.0.dev1 -# See https://github.com/johbo/pip2nix +# Generated by pip2nix 0.9.0 +# See https://github.com/nix-community/pip2nix { pkgs, fetchurl, fetchgit, fetchhg }: self: super: { - "atomicwrites" = super.buildPythonPackage { - name = "atomicwrites-1.3.0"; - doCheck = false; + "atomicwrites" = super.buildPythonPackage rec { + pname = "atomicwrites"; + version = "1.4.0"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/ec/0f/cd484ac8820fed363b374af30049adc8fd13065720fd4f4c6be8a2309da7/atomicwrites-1.3.0.tar.gz"; - sha256 = "19ngcscdf3jsqmpcxn6zl5b6anmsajb6izp1smcd1n02midl9abm"; + url = "https://files.pythonhosted.org/packages/55/8d/74a75635f2c3c914ab5b3850112fd4b0c8039975ecb320e4449aa363ba54/atomicwrites-1.4.0.tar.gz"; + sha256 = "0yla2svfhfqrcj8qbyqzx7wi4jy0dwcxvlkg0k3zjd54s5m3jw5f"; }; - meta = { - license = [ pkgs.lib.licenses.mit ]; - }; - }; - "attrs" = super.buildPythonPackage { - name = "attrs-19.3.0"; + format = "setuptools"; doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/98/c3/2c227e66b5e896e15ccdae2e00bbc69aa46e9a8ce8869cc5fa96310bf612/attrs-19.3.0.tar.gz"; - sha256 = "0wky4h28n7xnr6xv69p9z6kv8bzn50d10c3drmd9ds8gawbcxdzp"; - }; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "backports.shutil-get-terminal-size" = super.buildPythonPackage { - name = "backports.shutil-get-terminal-size-1.0.0"; - doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/ec/9c/368086faa9c016efce5da3e0e13ba392c9db79e3ab740b763fe28620b18b/backports.shutil_get_terminal_size-1.0.0.tar.gz"; - sha256 = "107cmn7g3jnbkp826zlj8rrj19fam301qvaqf0f3905f5217lgki"; - }; - meta = { - license = [ pkgs.lib.licenses.mit ]; - }; - }; - "beautifulsoup4" = super.buildPythonPackage { - name = "beautifulsoup4-4.6.3"; - doCheck = false; + "attrs" = super.buildPythonPackage rec { + pname = "attrs"; + version = "19.3.0"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/88/df/86bffad6309f74f3ff85ea69344a078fc30003270c8df6894fca7a3c72ff/beautifulsoup4-4.6.3.tar.gz"; - sha256 = "041dhalzjciw6qyzzq7a2k4h1yvyk76xigp35hv5ibnn448ydy4h"; - }; - meta = { - license = [ pkgs.lib.licenses.mit ]; + url = "https://files.pythonhosted.org/packages/98/c3/2c227e66b5e896e15ccdae2e00bbc69aa46e9a8ce8869cc5fa96310bf612/attrs-19.3.0.tar.gz"; + sha256 = "0wky4h28n7xnr6xv69p9z6kv8bzn50d10c3drmd9ds8gawbcxdzp"; }; - }; - "cffi" = super.buildPythonPackage { - name = "cffi-1.12.3"; + format = "setuptools"; doCheck = false; - propagatedBuildInputs = [ - self."pycparser" + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."wheel" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/93/1a/ab8c62b5838722f29f3daffcc8d4bd61844aa9b5f437341cc890ceee483b/cffi-1.12.3.tar.gz"; - sha256 = "0x075521fxwv0mfp4cqzk7lvmw4n94bjw601qkcv314z5s182704"; - }; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "configobj" = super.buildPythonPackage { - name = "configobj-5.0.6"; + "backports.shutil-get-terminal-size" = super.buildPythonPackage rec { + pname = "backports.shutil-get-terminal-size"; + version = "1.0.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/ec/9c/368086faa9c016efce5da3e0e13ba392c9db79e3ab740b763fe28620b18b/backports.shutil_get_terminal_size-1.0.0.tar.gz"; + sha256 = "107cmn7g3jnbkp826zlj8rrj19fam301qvaqf0f3905f5217lgki"; + }; + format = "setuptools"; doCheck = false; - propagatedBuildInputs = [ - self."six" - ]; - src = fetchurl { - url = "https://code.rhodecode.com/upstream/configobj/artifacts/download/0-012de99a-b1e1-4f64-a5c0-07a98a41b324.tar.gz?md5=6a513f51fe04b2c18cf84c1395a7c626"; - sha256 = "0kqfrdfr14mw8yd8qwq14dv2xghpkjmd3yjsy8dfcbvpcc17xnxp"; - }; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { - license = [ pkgs.lib.licenses.bsdOriginal ]; + license = [ pkgs.lib.licenses.mit ]; }; }; - "configparser" = super.buildPythonPackage { - name = "configparser-4.0.2"; - doCheck = false; + "beautifulsoup4" = super.buildPythonPackage rec { + pname = "beautifulsoup4"; + version = "4.6.3"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/16/4f/48975536bd488d3a272549eb795ac4a13a5f7fcdc8995def77fbef3532ee/configparser-4.0.2.tar.gz"; - sha256 = "1priacxym85yjcf68hh38w55nqswaxp71ryjyfdk222kg9l85ln7"; + url = "https://files.pythonhosted.org/packages/88/df/86bffad6309f74f3ff85ea69344a078fc30003270c8df6894fca7a3c72ff/beautifulsoup4-4.6.3.tar.gz"; + sha256 = "041dhalzjciw6qyzzq7a2k4h1yvyk76xigp35hv5ibnn448ydy4h"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "contextlib2" = super.buildPythonPackage { - name = "contextlib2-0.6.0.post1"; - doCheck = false; + "cffi" = super.buildPythonPackage rec { + pname = "cffi"; + version = "1.12.3"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/02/54/669207eb72e3d8ae8b38aa1f0703ee87a0e9f88f30d3c0a47bebdb6de242/contextlib2-0.6.0.post1.tar.gz"; - sha256 = "0bhnr2ac7wy5l85ji909gyljyk85n92w8pdvslmrvc8qih4r1x01"; - }; - meta = { - license = [ pkgs.lib.licenses.psfl ]; + url = "https://files.pythonhosted.org/packages/93/1a/ab8c62b5838722f29f3daffcc8d4bd61844aa9b5f437341cc890ceee483b/cffi-1.12.3.tar.gz"; + sha256 = "0x075521fxwv0mfp4cqzk7lvmw4n94bjw601qkcv314z5s182704"; }; - }; - "cov-core" = super.buildPythonPackage { - name = "cov-core-1.15.0"; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ - self."coverage" + self."pycparser" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/4b/87/13e75a47b4ba1be06f29f6d807ca99638bedc6b57fa491cd3de891ca2923/cov-core-1.15.0.tar.gz"; - sha256 = "0k3np9ymh06yv1ib96sb6wfsxjkqhmik8qfsn119vnhga9ywc52a"; - }; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "coverage" = super.buildPythonPackage { - name = "coverage-4.5.4"; - doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/85/d5/818d0e603685c4a613d56f065a721013e942088047ff1027a632948bdae6/coverage-4.5.4.tar.gz"; - sha256 = "0p0j4di6h8k6ica7jwwj09azdcg4ycxq60i9qsskmsg94cd9yzg0"; - }; - meta = { - license = [ pkgs.lib.licenses.asl20 ]; - }; - }; - "decorator" = super.buildPythonPackage { - name = "decorator-4.1.2"; - doCheck = false; + "configobj" = super.buildPythonPackage rec { + pname = "configobj"; + version = "5.0.6"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/bb/e0/f6e41e9091e130bf16d4437dabbac3993908e4d6485ecbc985ef1352db94/decorator-4.1.2.tar.gz"; - sha256 = "1d8npb11kxyi36mrvjdpcjij76l5zfyrz2f820brf0l0rcw4vdkw"; - }; - meta = { - license = [ pkgs.lib.licenses.bsdOriginal { fullName = "new BSD License"; } ]; + url = "https://code.rhodecode.com/upstream/configobj/artifacts/download/0-012de99a-b1e1-4f64-a5c0-07a98a41b324.tar.gz?md5=6a513f51fe04b2c18cf84c1395a7c626"; + sha256 = "0kqfrdfr14mw8yd8qwq14dv2xghpkjmd3yjsy8dfcbvpcc17xnxp"; }; - }; - "dogpile.cache" = super.buildPythonPackage { - name = "dogpile.cache-0.9.0"; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ - self."decorator" + self."six" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/ac/6a/9ac405686a94b7f009a20a50070a5786b0e1aedc707b88d40d0c4b51a82e/dogpile.cache-0.9.0.tar.gz"; - sha256 = "0sr1fn6b4k5bh0cscd9yi8csqxvj4ngzildav58x5p694mc86j5k"; - }; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "dogpile.core" = super.buildPythonPackage { - name = "dogpile.core-0.4.1"; - doCheck = false; + "configparser" = super.buildPythonPackage rec { + pname = "configparser"; + version = "4.0.2"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/0e/77/e72abc04c22aedf874301861e5c1e761231c288b5de369c18be8f4b5c9bb/dogpile.core-0.4.1.tar.gz"; - sha256 = "0xpdvg4kr1isfkrh1rfsh7za4q5a5s6l2kf9wpvndbwf3aqjyrdy"; - }; - meta = { - license = [ pkgs.lib.licenses.bsdOriginal ]; + url = "https://files.pythonhosted.org/packages/16/4f/48975536bd488d3a272549eb795ac4a13a5f7fcdc8995def77fbef3532ee/configparser-4.0.2.tar.gz"; + sha256 = "1priacxym85yjcf68hh38w55nqswaxp71ryjyfdk222kg9l85ln7"; }; - }; - "dulwich" = super.buildPythonPackage { - name = "dulwich-0.13.0"; + format = "setuptools"; doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/84/95/732d280eee829dacc954e8109f97b47abcadcca472c2ab013e1635eb4792/dulwich-0.13.0.tar.gz"; - sha256 = "0f1jwvrh549c4rgavkn3wizrch904s73s4fmrxykxy9cw8s57lwf"; - }; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."wheel" + self."setuptools-scm" + ]; + propagatedBuildInputs = []; meta = { - license = [ pkgs.lib.licenses.gpl2Plus ]; + license = [ pkgs.lib.licenses.mit ]; }; }; - "enum34" = super.buildPythonPackage { - name = "enum34-1.1.10"; - doCheck = false; + "contextlib2" = super.buildPythonPackage rec { + pname = "contextlib2"; + version = "0.6.0.post1"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/11/c4/2da1f4952ba476677a42f25cd32ab8aaf0e1c0d0e00b89822b835c7e654c/enum34-1.1.10.tar.gz"; - sha256 = "0j7ji699fwswm4vg6w1v07fkbf8dkzdm6gfh88jvs5nqgr3sgrnc"; + url = "https://files.pythonhosted.org/packages/02/54/669207eb72e3d8ae8b38aa1f0703ee87a0e9f88f30d3c0a47bebdb6de242/contextlib2-0.6.0.post1.tar.gz"; + sha256 = "0bhnr2ac7wy5l85ji909gyljyk85n92w8pdvslmrvc8qih4r1x01"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { - license = [ pkgs.lib.licenses.bsdOriginal ]; + license = [ pkgs.lib.licenses.psfl ]; }; }; - "funcsigs" = super.buildPythonPackage { - name = "funcsigs-1.0.2"; - doCheck = false; + "cov-core" = super.buildPythonPackage rec { + pname = "cov-core"; + version = "1.15.0"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/94/4a/db842e7a0545de1cdb0439bb80e6e42dfe82aaeaadd4072f2263a4fbed23/funcsigs-1.0.2.tar.gz"; - sha256 = "0l4g5818ffyfmfs1a924811azhjj8ax9xd1cffr1mzd3ycn0zfx7"; - }; - meta = { - license = [ { fullName = "ASL"; } pkgs.lib.licenses.asl20 ]; + url = "https://files.pythonhosted.org/packages/4b/87/13e75a47b4ba1be06f29f6d807ca99638bedc6b57fa491cd3de891ca2923/cov-core-1.15.0.tar.gz"; + sha256 = "0k3np9ymh06yv1ib96sb6wfsxjkqhmik8qfsn119vnhga9ywc52a"; }; - }; - "gevent" = super.buildPythonPackage { - name = "gevent-1.5.0"; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ - self."greenlet" + self."coverage" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/5a/79/2c63d385d017b5dd7d70983a463dfd25befae70c824fedb857df6e72eff2/gevent-1.5.0.tar.gz"; - sha256 = "0aac3d4vhv5n4rsb6cqzq0d1xx9immqz4fmpddw35yxkwdc450dj"; - }; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "gprof2dot" = super.buildPythonPackage { - name = "gprof2dot-2017.9.19"; - doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/9d/36/f977122502979f3dfb50704979c9ed70e6b620787942b089bf1af15f5aba/gprof2dot-2017.9.19.tar.gz"; - sha256 = "17ih23ld2nzgc3xwgbay911l6lh96jp1zshmskm17n1gg2i7mg6f"; - }; - meta = { - license = [ { fullName = "GNU Lesser General Public License v3 or later (LGPLv3+)"; } { fullName = "LGPL"; } ]; - }; - }; - "greenlet" = super.buildPythonPackage { - name = "greenlet-0.4.15"; - doCheck = false; + "coverage" = super.buildPythonPackage rec { + pname = "coverage"; + version = "4.5.4"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/f8/e8/b30ae23b45f69aa3f024b46064c0ac8e5fcb4f22ace0dca8d6f9c8bbe5e7/greenlet-0.4.15.tar.gz"; - sha256 = "1g4g1wwc472ds89zmqlpyan3fbnzpa8qm48z3z1y6mlk44z485ll"; - }; - meta = { - license = [ pkgs.lib.licenses.mit ]; - }; - }; - "gunicorn" = super.buildPythonPackage { - name = "gunicorn-19.9.0"; - doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/47/52/68ba8e5e8ba251e54006a49441f7ccabca83b6bef5aedacb4890596c7911/gunicorn-19.9.0.tar.gz"; - sha256 = "1wzlf4xmn6qjirh5w81l6i6kqjnab1n1qqkh7zsj1yb6gh4n49ps"; - }; - meta = { - license = [ pkgs.lib.licenses.mit ]; - }; - }; - "hg-evolve" = super.buildPythonPackage { - name = "hg-evolve-9.1.0"; - doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/20/36/5a6655975aa0c663be91098d31a0b24841acad44fe896aa2bdee77c6b883/hg-evolve-9.1.0.tar.gz"; - sha256 = "1mna81cmzxxn7s2nwz3g1xgdjlcc1axkvfmwg7gjqghwn3pdraps"; + url = "https://files.pythonhosted.org/packages/85/d5/818d0e603685c4a613d56f065a721013e942088047ff1027a632948bdae6/coverage-4.5.4.tar.gz"; + sha256 = "0p0j4di6h8k6ica7jwwj09azdcg4ycxq60i9qsskmsg94cd9yzg0"; }; - meta = { - license = [ { fullName = "GPLv2+"; } ]; - }; - }; - "hgsubversion" = super.buildPythonPackage { - name = "hgsubversion-1.9.3"; - doCheck = false; - propagatedBuildInputs = [ - self."mercurial" - self."subvertpy" - ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/a3/53/6d205e641f3e09abcf1ddaed66e5e4b20da22d0145566d440a02c9e35f0d/hgsubversion-1.9.3.tar.gz"; - sha256 = "0nymcjlch8c4zjbncrs30p2nrbylsf25g3h6mr0zzzxr141h3sig"; - }; - meta = { - license = [ pkgs.lib.licenses.gpl1 ]; - }; - }; - "hupper" = super.buildPythonPackage { - name = "hupper-1.10.2"; + format = "setuptools"; doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/41/24/ea90fef04706e54bd1635c05c50dc9cf87cda543c59303a03e7aa7dda0ce/hupper-1.10.2.tar.gz"; - sha256 = "0am0p6g5cz6xmcaf04xq8q6dzdd9qz0phj6gcmpsckf2mcyza61q"; - }; - meta = { - license = [ pkgs.lib.licenses.mit ]; - }; - }; - "importlib-metadata" = super.buildPythonPackage { - name = "importlib-metadata-1.6.0"; - doCheck = false; - propagatedBuildInputs = [ - self."zipp" - self."pathlib2" - self."contextlib2" - self."configparser" - ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/b4/1b/baab42e3cd64c9d5caac25a9d6c054f8324cdc38975a44d600569f1f7158/importlib_metadata-1.6.0.tar.gz"; - sha256 = "07icyggasn38yv2swdrd8z6i0plazmc9adavsdkbqqj91j53ll9l"; - }; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.asl20 ]; }; }; - "ipdb" = super.buildPythonPackage { - name = "ipdb-0.13.2"; + "cython" = super.buildPythonPackage rec { + pname = "cython"; + version = "0.29.17"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/99/36/a3dc962cc6d08749aa4b9d85af08b6e354d09c5468a3e0edc610f44c856b/Cython-0.29.17.tar.gz"; + sha256 = "1wnaz40hdw4mg5acz5gqb6bhjhn4cvfxg0xdzfy7aa6qn665hqb3"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ pkgs.lib.licenses.asl20 { fullName = "Apache"; } ]; + }; + }; + "decorator" = super.buildPythonPackage rec { + pname = "decorator"; + version = "4.1.2"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/bb/e0/f6e41e9091e130bf16d4437dabbac3993908e4d6485ecbc985ef1352db94/decorator-4.1.2.tar.gz"; + sha256 = "1d8npb11kxyi36mrvjdpcjij76l5zfyrz2f820brf0l0rcw4vdkw"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ pkgs.lib.licenses.bsdOriginal { fullName = "new BSD License"; } ]; + }; + }; + "dogpile.cache" = super.buildPythonPackage rec { + pname = "dogpile.cache"; + version = "0.9.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/ac/6a/9ac405686a94b7f009a20a50070a5786b0e1aedc707b88d40d0c4b51a82e/dogpile.cache-0.9.0.tar.gz"; + sha256 = "0sr1fn6b4k5bh0cscd9yi8csqxvj4ngzildav58x5p694mc86j5k"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ - self."setuptools" - self."ipython" + self."decorator" ]; + meta = { + license = [ pkgs.lib.licenses.bsdOriginal ]; + }; + }; + "dogpile.core" = super.buildPythonPackage rec { + pname = "dogpile.core"; + version = "0.4.1"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/0e/77/e72abc04c22aedf874301861e5c1e761231c288b5de369c18be8f4b5c9bb/dogpile.core-0.4.1.tar.gz"; + sha256 = "0xpdvg4kr1isfkrh1rfsh7za4q5a5s6l2kf9wpvndbwf3aqjyrdy"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ pkgs.lib.licenses.bsdOriginal ]; + }; + }; + "dulwich" = super.buildPythonPackage rec { + pname = "dulwich"; + version = "0.13.0"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/2c/bb/a3e1a441719ebd75c6dac8170d3ddba884b7ee8a5c0f9aefa7297386627a/ipdb-0.13.2.tar.gz"; - sha256 = "0jcd849rx30y3wcgzsqbn06v0yjlzvb9x3076q0yxpycdwm1ryvp"; + url = "https://files.pythonhosted.org/packages/84/95/732d280eee829dacc954e8109f97b47abcadcca472c2ab013e1635eb4792/dulwich-0.13.0.tar.gz"; + sha256 = "0f1jwvrh549c4rgavkn3wizrch904s73s4fmrxykxy9cw8s57lwf"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ pkgs.lib.licenses.gpl2Plus ]; }; + }; + "enum34" = super.buildPythonPackage rec { + pname = "enum34"; + version = "1.1.10"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/11/c4/2da1f4952ba476677a42f25cd32ab8aaf0e1c0d0e00b89822b835c7e654c/enum34-1.1.10.tar.gz"; + sha256 = "0j7ji699fwswm4vg6w1v07fkbf8dkzdm6gfh88jvs5nqgr3sgrnc"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "ipython" = super.buildPythonPackage { - name = "ipython-5.1.0"; + "funcsigs" = super.buildPythonPackage rec { + pname = "funcsigs"; + version = "1.0.2"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/94/4a/db842e7a0545de1cdb0439bb80e6e42dfe82aaeaadd4072f2263a4fbed23/funcsigs-1.0.2.tar.gz"; + sha256 = "0l4g5818ffyfmfs1a924811azhjj8ax9xd1cffr1mzd3ycn0zfx7"; + }; + format = "setuptools"; doCheck = false; - propagatedBuildInputs = [ + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ { fullName = "ASL"; } pkgs.lib.licenses.asl20 ]; + }; + }; + "gevent" = super.buildPythonPackage rec { + pname = "gevent"; + version = "1.5.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/5a/79/2c63d385d017b5dd7d70983a463dfd25befae70c824fedb857df6e72eff2/gevent-1.5.0.tar.gz"; + sha256 = "0aac3d4vhv5n4rsb6cqzq0d1xx9immqz4fmpddw35yxkwdc450dj"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ self."setuptools" - self."decorator" - self."pickleshare" - self."simplegeneric" - self."traitlets" - self."prompt-toolkit" - self."pygments" - self."pexpect" - self."backports.shutil-get-terminal-size" + self."wheel" + self."cython" + self."cffi" + self."greenlet" + ]; + propagatedBuildInputs = [ + self."greenlet" + ]; + meta = { + license = [ pkgs.lib.licenses.mit ]; + }; + }; + "gprof2dot" = super.buildPythonPackage rec { + pname = "gprof2dot"; + version = "2017.9.19"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/9d/36/f977122502979f3dfb50704979c9ed70e6b620787942b089bf1af15f5aba/gprof2dot-2017.9.19.tar.gz"; + sha256 = "17ih23ld2nzgc3xwgbay911l6lh96jp1zshmskm17n1gg2i7mg6f"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ { fullName = "GNU Lesser General Public License v3 or later (LGPLv3+)"; } { fullName = "LGPL"; } ]; + }; + }; + "greenlet" = super.buildPythonPackage rec { + pname = "greenlet"; + version = "0.4.15"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/f8/e8/b30ae23b45f69aa3f024b46064c0ac8e5fcb4f22ace0dca8d6f9c8bbe5e7/greenlet-0.4.15.tar.gz"; + sha256 = "1g4g1wwc472ds89zmqlpyan3fbnzpa8qm48z3z1y6mlk44z485ll"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ pkgs.lib.licenses.mit ]; + }; + }; + "gunicorn" = super.buildPythonPackage rec { + pname = "gunicorn"; + version = "19.9.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/47/52/68ba8e5e8ba251e54006a49441f7ccabca83b6bef5aedacb4890596c7911/gunicorn-19.9.0.tar.gz"; + sha256 = "1wzlf4xmn6qjirh5w81l6i6kqjnab1n1qqkh7zsj1yb6gh4n49ps"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ pkgs.lib.licenses.mit ]; + }; + }; + "hg-evolve" = super.buildPythonPackage rec { + pname = "hg-evolve"; + version = "9.1.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/20/36/5a6655975aa0c663be91098d31a0b24841acad44fe896aa2bdee77c6b883/hg-evolve-9.1.0.tar.gz"; + sha256 = "1mna81cmzxxn7s2nwz3g1xgdjlcc1axkvfmwg7gjqghwn3pdraps"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ { fullName = "GPLv2+"; } ]; + }; + }; + "hgsubversion" = super.buildPythonPackage rec { + pname = "hgsubversion"; + version = "1.9.3"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/a3/53/6d205e641f3e09abcf1ddaed66e5e4b20da22d0145566d440a02c9e35f0d/hgsubversion-1.9.3.tar.gz"; + sha256 = "0nymcjlch8c4zjbncrs30p2nrbylsf25g3h6mr0zzzxr141h3sig"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."mercurial" + self."subvertpy" + ]; + meta = { + license = [ pkgs.lib.licenses.gpl1 ]; + }; + }; + "hupper" = super.buildPythonPackage rec { + pname = "hupper"; + version = "1.10.2"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/41/24/ea90fef04706e54bd1635c05c50dc9cf87cda543c59303a03e7aa7dda0ce/hupper-1.10.2.tar.gz"; + sha256 = "0am0p6g5cz6xmcaf04xq8q6dzdd9qz0phj6gcmpsckf2mcyza61q"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."wheel" + ]; + propagatedBuildInputs = []; + meta = { + license = [ pkgs.lib.licenses.mit ]; + }; + }; + "importlib-metadata" = super.buildPythonPackage rec { + pname = "importlib-metadata"; + version = "1.6.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/b4/1b/baab42e3cd64c9d5caac25a9d6c054f8324cdc38975a44d600569f1f7158/importlib_metadata-1.6.0.tar.gz"; + sha256 = "07icyggasn38yv2swdrd8z6i0plazmc9adavsdkbqqj91j53ll9l"; + }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."wheel" + self."setuptools-scm" + ]; + propagatedBuildInputs = [ + self."configparser" + self."contextlib2" self."pathlib2" - self."pexpect" + self."zipp" ]; + meta = { + license = [ pkgs.lib.licenses.asl20 ]; + }; + }; + "ipdb" = super.buildPythonPackage rec { + pname = "ipdb"; + version = "0.13.2"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/89/63/a9292f7cd9d0090a0f995e1167f3f17d5889dcbc9a175261719c513b9848/ipython-5.1.0.tar.gz"; - sha256 = "0qdrf6aj9kvjczd5chj1my8y2iq09am9l8bb2a1334a52d76kx3y"; + url = "https://files.pythonhosted.org/packages/2c/bb/a3e1a441719ebd75c6dac8170d3ddba884b7ee8a5c0f9aefa7297386627a/ipdb-0.13.2.tar.gz"; + sha256 = "0jcd849rx30y3wcgzsqbn06v0yjlzvb9x3076q0yxpycdwm1ryvp"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."ipython" + self."setuptools" + ]; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "ipython-genutils" = super.buildPythonPackage { - name = "ipython-genutils-0.2.0"; + "ipython" = super.buildPythonPackage rec { + pname = "ipython"; + version = "5.10.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/b6/73/c8f68b3a7d0deece3d2f7ab727fbf262bfca7475330b44043a5503b3aa7a/ipython-5.10.0.tar.gz"; + sha256 = "1vjgfayfsjkwsccizpmr8gfg6p1sr9513bxnyzg0v45h5g8f5yfi"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."backports.shutil-get-terminal-size" + self."decorator" + self."pathlib2" + self."pexpect" + self."pickleshare" + self."prompt-toolkit" + self."pygments" + self."setuptools" + self."simplegeneric" + self."traitlets" + ]; + meta = { + license = [ pkgs.lib.licenses.bsdOriginal ]; + }; + }; + "ipython-genutils" = super.buildPythonPackage rec { + pname = "ipython-genutils"; + version = "0.2.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/e8/69/fbeffffc05236398ebfcfb512b6d2511c622871dca1746361006da310399/ipython_genutils-0.2.0.tar.gz"; sha256 = "1a4bc9y8hnvq6cp08qs4mckgm6i6ajpndp4g496rvvzcfmp12bpb"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "mako" = super.buildPythonPackage { - name = "mako-1.1.0"; - doCheck = false; - propagatedBuildInputs = [ - self."markupsafe" - ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/b0/3c/8dcd6883d009f7cae0f3157fb53e9afb05a0d3d33b3db1268ec2e6f4a56b/Mako-1.1.0.tar.gz"; - sha256 = "0jqa3qfpykyn4fmkn0kh6043sfls7br8i2bsdbccazcvk9cijsd3"; - }; - meta = { - license = [ pkgs.lib.licenses.mit ]; - }; - }; - "markupsafe" = super.buildPythonPackage { - name = "markupsafe-1.1.1"; - doCheck = false; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/b9/2e/64db92e53b86efccfaea71321f597fa2e1b2bd3853d8ce658568f7a13094/MarkupSafe-1.1.1.tar.gz"; - sha256 = "0sqipg4fk7xbixqd8kq6rlkxj664d157bdwbh93farcphf92x1r9"; - }; - meta = { - license = [ pkgs.lib.licenses.bsdOriginal pkgs.lib.licenses.bsd3 ]; - }; - }; - "mercurial" = super.buildPythonPackage { - name = "mercurial-5.1.1"; - doCheck = false; + "mercurial" = super.buildPythonPackage rec { + pname = "mercurial"; + version = "5.1.1"; src = fetchurl { url = "https://files.pythonhosted.org/packages/22/39/e1a95f6048aa0785b82f5faad8281ae7320894a635cb4a57e19479639c92/mercurial-5.1.1.tar.gz"; sha256 = "17z42rfjdkrks4grzgac66nfh285zf1pwxd2zwx1p71pw2jqpz1m"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.gpl1 pkgs.lib.licenses.gpl2Plus ]; }; }; - "mock" = super.buildPythonPackage { - name = "mock-3.0.5"; - doCheck = false; - propagatedBuildInputs = [ - self."six" - self."funcsigs" - ]; + "mock" = super.buildPythonPackage rec { + pname = "mock"; + version = "3.0.5"; src = fetchurl { url = "https://files.pythonhosted.org/packages/2e/ab/4fe657d78b270aa6a32f027849513b829b41b0f28d9d8d7f8c3d29ea559a/mock-3.0.5.tar.gz"; sha256 = "1hrp6j0yrx2xzylfv02qa8kph661m6yq4p0mc8fnimch9j4psrc3"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."funcsigs" + self."six" + ]; meta = { license = [ pkgs.lib.licenses.bsdOriginal { fullName = "OSI Approved :: BSD License"; } ]; }; }; - "more-itertools" = super.buildPythonPackage { - name = "more-itertools-5.0.0"; - doCheck = false; - propagatedBuildInputs = [ - self."six" - ]; + "more-itertools" = super.buildPythonPackage rec { + pname = "more-itertools"; + version = "5.0.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/dd/26/30fc0d541d9fdf55faf5ba4b0fd68f81d5bd2447579224820ad525934178/more-itertools-5.0.0.tar.gz"; sha256 = "1r12cm6mcdwdzz7d47a6g4l437xsvapdlgyhqay3i2nrlv03da9q"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."six" + ]; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "msgpack-python" = super.buildPythonPackage { - name = "msgpack-python-0.5.6"; - doCheck = false; + "msgpack-python" = super.buildPythonPackage rec { + pname = "msgpack-python"; + version = "0.5.6"; src = fetchurl { url = "https://files.pythonhosted.org/packages/8a/20/6eca772d1a5830336f84aca1d8198e5a3f4715cd1c7fc36d3cc7f7185091/msgpack-python-0.5.6.tar.gz"; sha256 = "16wh8qgybmfh4pjp8vfv78mdlkxfmcasg78lzlnm6nslsfkci31p"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.asl20 ]; }; }; - "packaging" = super.buildPythonPackage { - name = "packaging-20.3"; + "packaging" = super.buildPythonPackage rec { + pname = "packaging"; + version = "20.3"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/65/37/83e3f492eb52d771e2820e88105f605335553fe10422cba9d256faeb1702/packaging-20.3.tar.gz"; + sha256 = "18xpablq278janh03bai9xd4kz9b0yfp6vflazn725ns9x3jna9w"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ self."pyparsing" self."six" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/65/37/83e3f492eb52d771e2820e88105f605335553fe10422cba9d256faeb1702/packaging-20.3.tar.gz"; - sha256 = "18xpablq278janh03bai9xd4kz9b0yfp6vflazn725ns9x3jna9w"; - }; meta = { license = [ pkgs.lib.licenses.bsdOriginal { fullName = "BSD or Apache License, Version 2.0"; } pkgs.lib.licenses.asl20 ]; }; }; - "pastedeploy" = super.buildPythonPackage { - name = "pastedeploy-2.1.0"; - doCheck = false; + "pastedeploy" = super.buildPythonPackage rec { + pname = "pastedeploy"; + version = "2.1.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/c4/e9/972a1c20318b3ae9edcab11a6cef64308fbae5d0d45ab52c6f8b2b8f35b8/PasteDeploy-2.1.0.tar.gz"; sha256 = "16qsq5y6mryslmbp5pn35x4z8z3ndp5rpgl42h226879nrw9hmg7"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "pathlib2" = super.buildPythonPackage { - name = "pathlib2-2.3.5"; - doCheck = false; - propagatedBuildInputs = [ - self."six" - self."scandir" - ]; + "pathlib2" = super.buildPythonPackage rec { + pname = "pathlib2"; + version = "2.3.5"; src = fetchurl { url = "https://files.pythonhosted.org/packages/94/d8/65c86584e7e97ef824a1845c72bbe95d79f5b306364fa778a3c3e401b309/pathlib2-2.3.5.tar.gz"; sha256 = "0s4qa8c082fdkb17izh4mfgwrjd1n5pya18wvrbwqdvvb5xs9nbc"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."scandir" + self."six" + ]; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "pexpect" = super.buildPythonPackage { - name = "pexpect-4.8.0"; - doCheck = false; - propagatedBuildInputs = [ - self."ptyprocess" - ]; + "pexpect" = super.buildPythonPackage rec { + pname = "pexpect"; + version = "4.8.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/e5/9b/ff402e0e930e70467a7178abb7c128709a30dfb22d8777c043e501bc1b10/pexpect-4.8.0.tar.gz"; sha256 = "032cg337h8awydgypz6f4wx848lw8dyrj4zy988x0lyib4ws8rgw"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."ptyprocess" + ]; meta = { license = [ pkgs.lib.licenses.isc { fullName = "ISC License (ISCL)"; } ]; }; }; - "pickleshare" = super.buildPythonPackage { - name = "pickleshare-0.7.5"; - doCheck = false; - propagatedBuildInputs = [ - self."pathlib2" - ]; + "pickleshare" = super.buildPythonPackage rec { + pname = "pickleshare"; + version = "0.7.5"; src = fetchurl { url = "https://files.pythonhosted.org/packages/d8/b6/df3c1c9b616e9c0edbc4fbab6ddd09df9535849c64ba51fcb6531c32d4d8/pickleshare-0.7.5.tar.gz"; sha256 = "1jmghg3c53yp1i8cm6pcrm280ayi8621rwyav9fac7awjr3kss47"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."pathlib2" + ]; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "plaster" = super.buildPythonPackage { - name = "plaster-1.0"; - doCheck = false; - propagatedBuildInputs = [ - self."setuptools" - ]; + "plaster" = super.buildPythonPackage rec { + pname = "plaster"; + version = "1.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/37/e1/56d04382d718d32751017d32f351214384e529b794084eee20bb52405563/plaster-1.0.tar.gz"; sha256 = "1hy8k0nv2mxq94y5aysk6hjk9ryb4bsd13g83m60hcyzxz3wflc3"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."setuptools" + ]; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "plaster-pastedeploy" = super.buildPythonPackage { - name = "plaster-pastedeploy-0.7"; + "plaster-pastedeploy" = super.buildPythonPackage rec { + pname = "plaster-pastedeploy"; + version = "0.7"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/99/69/2d3bc33091249266a1bd3cf24499e40ab31d54dffb4a7d76fe647950b98c/plaster_pastedeploy-0.7.tar.gz"; + sha256 = "1zg7gcsvc1kzay1ry5p699rg2qavfsxqwl17mqxzr0gzw6j9679r"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."wheel" + ]; propagatedBuildInputs = [ self."pastedeploy" self."plaster" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/99/69/2d3bc33091249266a1bd3cf24499e40ab31d54dffb4a7d76fe647950b98c/plaster_pastedeploy-0.7.tar.gz"; - sha256 = "1zg7gcsvc1kzay1ry5p699rg2qavfsxqwl17mqxzr0gzw6j9679r"; - }; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "pluggy" = super.buildPythonPackage { - name = "pluggy-0.13.1"; - doCheck = false; - propagatedBuildInputs = [ - self."importlib-metadata" - ]; + "pluggy" = super.buildPythonPackage rec { + pname = "pluggy"; + version = "0.13.1"; src = fetchurl { url = "https://files.pythonhosted.org/packages/f8/04/7a8542bed4b16a65c2714bf76cf5a0b026157da7f75e87cc88774aa10b14/pluggy-0.13.1.tar.gz"; sha256 = "1c35qyhvy27q9ih9n899f3h4sdnpgq027dbiilly2qb5cvgarchm"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."setuptools-scm" + self."wheel" + ]; + propagatedBuildInputs = [ + self."importlib-metadata" + ]; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "prompt-toolkit" = super.buildPythonPackage { - name = "prompt-toolkit-1.0.18"; + "prompt-toolkit" = super.buildPythonPackage rec { + pname = "prompt-toolkit"; + version = "1.0.18"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/c5/64/c170e5b1913b540bf0c8ab7676b21fdd1d25b65ddeb10025c6ca43cccd4c/prompt_toolkit-1.0.18.tar.gz"; + sha256 = "09h1153wgr5x2ny7ds0w2m81n3bb9j8hjb8sjfnrg506r01clkyx"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ self."six" self."wcwidth" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/c5/64/c170e5b1913b540bf0c8ab7676b21fdd1d25b65ddeb10025c6ca43cccd4c/prompt_toolkit-1.0.18.tar.gz"; - sha256 = "09h1153wgr5x2ny7ds0w2m81n3bb9j8hjb8sjfnrg506r01clkyx"; - }; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "psutil" = super.buildPythonPackage { - name = "psutil-5.7.0"; - doCheck = false; + "psutil" = super.buildPythonPackage rec { + pname = "psutil"; + version = "5.7.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/c4/b8/3512f0e93e0db23a71d82485ba256071ebef99b227351f0f5540f744af41/psutil-5.7.0.tar.gz"; sha256 = "03jykdi3dgf1cdal9bv4fq9zjvzj9l9bs99gi5ar81sdl5nc2pk8"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "ptyprocess" = super.buildPythonPackage { - name = "ptyprocess-0.6.0"; - doCheck = false; + "ptyprocess" = super.buildPythonPackage rec { + pname = "ptyprocess"; + version = "0.6.0"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/7d/2d/e4b8733cf79b7309d84c9081a4ab558c89d8c89da5961bf4ddb050ca1ce0/ptyprocess-0.6.0.tar.gz"; - sha256 = "1h4lcd3w5nrxnsk436ar7fwkiy5rfn5wj2xwy9l0r4mdqnf2jgwj"; + url = "https://code.rhodecode.com/upstream/ptyprocess/artifacts/download/0-c8b019b1-c4d3-46ac-a0ad-1206ec3fb3cb.tar.gz?sha256=50394f2c5e117fcab4360bf99c8bc40be7211ee1a5860aeb3809b44249550c3e"; + sha256 = "0ghcam4l5d0973mhm1m5w4g23rqbqj5rry8b6ssclzqibqn4yfah"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { - license = [ ]; + license = [ { fullName = "ISC License (ISCL)"; } ]; }; }; - "py" = super.buildPythonPackage { - name = "py-1.8.0"; - doCheck = false; + "py" = super.buildPythonPackage rec { + pname = "py"; + version = "1.8.1"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/f1/5a/87ca5909f400a2de1561f1648883af74345fe96349f34f737cdfc94eba8c/py-1.8.0.tar.gz"; - sha256 = "0lsy1gajva083pzc7csj1cvbmminb7b4l6a0prdzyb3fd829nqyw"; + url = "https://files.pythonhosted.org/packages/bd/8f/169d08dcac7d6e311333c96b63cbe92e7947778475e1a619b674989ba1ed/py-1.8.1.tar.gz"; + sha256 = "1ajjazg3913n0sp3vjyva9c2qh5anx8ziryng935f89604a0h9sy"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "pycparser" = super.buildPythonPackage { - name = "pycparser-2.20"; - doCheck = false; + "pycparser" = super.buildPythonPackage rec { + pname = "pycparser"; + version = "2.20"; src = fetchurl { url = "https://files.pythonhosted.org/packages/0f/86/e19659527668d70be91d0369aeaa055b4eb396b0f387a4f92293a20035bd/pycparser-2.20.tar.gz"; sha256 = "1w0m3xvlrzq4lkbvd1ngfm8mdw64r1yxy6n7djlw6qj5d0km6ird"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "pygit2" = super.buildPythonPackage { - name = "pygit2-0.28.2"; + "pygit2" = super.buildPythonPackage rec { + pname = "pygit2"; + version = "0.28.2"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/4c/64/88c2a4eb2d22ca1982b364f41ff5da42d61de791d7eb68140e7f8f7eb721/pygit2-0.28.2.tar.gz"; + sha256 = "11kzj5mjkspvplnpdb6bj8dcj6rgmkk986k8hjcklyg5yaxkz32d"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."pycparser" + self."cffi" + ]; propagatedBuildInputs = [ self."cffi" self."six" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/4c/64/88c2a4eb2d22ca1982b364f41ff5da42d61de791d7eb68140e7f8f7eb721/pygit2-0.28.2.tar.gz"; - sha256 = "11kzj5mjkspvplnpdb6bj8dcj6rgmkk986k8hjcklyg5yaxkz32d"; - }; meta = { license = [ { fullName = "GPLv2 with linking exception"; } ]; }; }; - "pygments" = super.buildPythonPackage { - name = "pygments-2.4.2"; - doCheck = false; + "pygments" = super.buildPythonPackage rec { + pname = "pygments"; + version = "2.4.2"; src = fetchurl { url = "https://files.pythonhosted.org/packages/7e/ae/26808275fc76bf2832deb10d3a3ed3107bc4de01b85dcccbe525f2cd6d1e/Pygments-2.4.2.tar.gz"; sha256 = "15v2sqm5g12bqa0c7wikfh9ck2nl97ayizy1hpqhmws5gqalq748"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "pyparsing" = super.buildPythonPackage { - name = "pyparsing-2.4.7"; - doCheck = false; + "pyparsing" = super.buildPythonPackage rec { + pname = "pyparsing"; + version = "2.4.7"; src = fetchurl { url = "https://files.pythonhosted.org/packages/c1/47/dfc9c342c9842bbe0036c7f763d2d6686bcf5eb1808ba3e170afdb282210/pyparsing-2.4.7.tar.gz"; sha256 = "1hgc8qrbq1ymxbwfbjghv01fm3fbpjwpjwi0bcailxxzhf3yq0y2"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "pyramid" = super.buildPythonPackage { - name = "pyramid-1.10.4"; + "pyramid" = super.buildPythonPackage rec { + pname = "pyramid"; + version = "1.10.4"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/c2/43/1ae701c9c6bb3a434358e678a5e72c96e8aa55cf4cb1d2fa2041b5dd38b7/pyramid-1.10.4.tar.gz"; + sha256 = "0rkxs1ajycg2zh1c94xlmls56mx5m161sn8112skj0amza6cn36q"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."wheel" + ]; propagatedBuildInputs = [ self."hupper" self."plaster" self."plaster-pastedeploy" + self."repoze.lru" self."setuptools" self."translationstring" self."venusian" self."webob" self."zope.deprecation" self."zope.interface" - self."repoze.lru" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/c2/43/1ae701c9c6bb3a434358e678a5e72c96e8aa55cf4cb1d2fa2041b5dd38b7/pyramid-1.10.4.tar.gz"; - sha256 = "0rkxs1ajycg2zh1c94xlmls56mx5m161sn8112skj0amza6cn36q"; - }; meta = { license = [ { fullName = "Repoze Public License"; } { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ]; }; }; - "pyramid-mako" = super.buildPythonPackage { - name = "pyramid-mako-1.1.0"; - doCheck = false; - propagatedBuildInputs = [ - self."pyramid" - self."mako" - ]; + "pytest" = super.buildPythonPackage rec { + pname = "pytest"; + version = "4.6.9"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/63/7b/5e2af68f675071a6bad148c1c393928f0ef5fcd94e95cbf53b89d6471a83/pyramid_mako-1.1.0.tar.gz"; - sha256 = "1qj0m091mnii86j2q1d82yir22nha361rvhclvg3s70z8iiwhrh0"; - }; - meta = { - license = [ { fullName = "Repoze Public License"; } { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ]; + url = "https://files.pythonhosted.org/packages/ec/2e/1602fca477ab3ccb1952f07db0536b60b6afafec16eced8063b553001509/pytest-4.6.9.tar.gz"; + sha256 = "0fgkmpc31nzy97fxfrkqbzycigdwxwwmninx3qhkzp81migggs0r"; }; - }; - "pytest" = super.buildPythonPackage { - name = "pytest-4.6.5"; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."setuptools-scm" + self."wheel" + ]; propagatedBuildInputs = [ + self."atomicwrites" + self."attrs" + self."funcsigs" + self."importlib-metadata" + self."more-itertools" + self."packaging" + self."pathlib2" + self."pluggy" self."py" self."six" - self."packaging" - self."attrs" - self."atomicwrites" - self."pluggy" - self."importlib-metadata" self."wcwidth" - self."funcsigs" - self."pathlib2" - self."more-itertools" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/2a/c6/1d1f32f6a5009900521b12e6560fb6b7245b0d4bc3fb771acd63d10e30e1/pytest-4.6.5.tar.gz"; - sha256 = "0iykwwfp4h181nd7rsihh2120b0rkawlw7rvbl19sgfspncr3hwg"; - }; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "pytest-cov" = super.buildPythonPackage { - name = "pytest-cov-2.7.1"; + "pytest-cov" = super.buildPythonPackage rec { + pname = "pytest-cov"; + version = "2.8.1"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/13/8a/51f54b43a043c799bceca846594b9a310823a3e52df5ec27109cccba90f4/pytest-cov-2.8.1.tar.gz"; + sha256 = "0avzlk9p4nc44k7lpx9109dybq71xqnggxb9f4hp0l64pbc44ryc"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ - self."pytest" self."coverage" + self."pytest" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/bb/0f/3db7ff86801883b21d5353b258c994b1b8e2abbc804e2273b8d0fd19004b/pytest-cov-2.7.1.tar.gz"; - sha256 = "0filvmmyqm715azsl09ql8hy2x7h286n6d8z5x42a1wpvvys83p0"; - }; meta = { license = [ pkgs.lib.licenses.bsdOriginal pkgs.lib.licenses.mit ]; }; }; - "pytest-profiling" = super.buildPythonPackage { - name = "pytest-profiling-1.7.0"; - doCheck = false; - propagatedBuildInputs = [ - self."six" - self."pytest" - self."gprof2dot" - ]; + "pytest-profiling" = super.buildPythonPackage rec { + pname = "pytest-profiling"; + version = "1.7.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/39/70/22a4b33739f07f1732a63e33bbfbf68e0fa58cfba9d200e76d01921eddbf/pytest-profiling-1.7.0.tar.gz"; sha256 = "0abz9gi26jpcfdzgsvwad91555lpgdc8kbymicmms8k2fqa8z4wk"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools-git" + ]; + propagatedBuildInputs = [ + self."gprof2dot" + self."pytest" + self."six" + ]; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "pytest-runner" = super.buildPythonPackage { - name = "pytest-runner-5.1"; - doCheck = false; + "pytest-runner" = super.buildPythonPackage rec { + pname = "pytest-runner"; + version = "5.2"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/d9/6d/4b41a74b31720e25abd4799be72d54811da4b4d0233e38b75864dcc1f7ad/pytest-runner-5.1.tar.gz"; - sha256 = "0ykfcnpp8c22winj63qzc07l5axwlc9ikl8vn05sc32gv3417815"; + url = "https://files.pythonhosted.org/packages/5b/82/1462f86e6c3600f2471d5f552fcc31e39f17717023df4bab712b4a9db1b3/pytest-runner-5.2.tar.gz"; + sha256 = "0awll1bva5zy8cspsxcpv7pjcrdf5c6pf56nqn4f74vvmlzfgiwn"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + self."setuptools" + self."wheel" + self."setuptools-scm" + ]; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "pytest-sugar" = super.buildPythonPackage { - name = "pytest-sugar-0.9.2"; + "pytest-sugar" = super.buildPythonPackage rec { + pname = "pytest-sugar"; + version = "0.9.3"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/ba/35/edf24df4b2fe7d9005bdb9d166c18ae9cefd8b664e7fb2c8dfb7bc9db184/pytest-sugar-0.9.3.tar.gz"; + sha256 = "1i0hv3h49zvl62jbiyjag84carbrp3zprqzxffdr291nxavvac0n"; + }; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ + self."packaging" self."pytest" self."termcolor" - self."packaging" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/55/59/f02f78d1c80f7e03e23177f60624c8106d4f23d124c921df103f65692464/pytest-sugar-0.9.2.tar.gz"; - sha256 = "1asq7yc4g8bx2sn7yy974mhc9ywvaihasjab4inkirdwn9s7mn7w"; - }; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "pytest-timeout" = super.buildPythonPackage { - name = "pytest-timeout-1.3.3"; - doCheck = false; - propagatedBuildInputs = [ - self."pytest" - ]; + "pytest-timeout" = super.buildPythonPackage rec { + pname = "pytest-timeout"; + version = "1.3.3"; src = fetchurl { url = "https://files.pythonhosted.org/packages/13/48/7a166eaa29c1dca6cc253e3ba5773ff2e4aa4f567c1ea3905808e95ac5c1/pytest-timeout-1.3.3.tar.gz"; sha256 = "1cczcjhw4xx5sjkhxlhc5c1bkr7x6fcyx12wrnvwfckshdvblc2a"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."pytest" + ]; meta = { license = [ pkgs.lib.licenses.mit { fullName = "DFSG approved"; } ]; }; }; - "redis" = super.buildPythonPackage { - name = "redis-3.4.1"; - doCheck = false; + "redis" = super.buildPythonPackage rec { + pname = "redis"; + version = "3.4.1"; src = fetchurl { url = "https://files.pythonhosted.org/packages/ef/2e/2c0f59891db7db087a7eeaa79bc7c7f2c039e71a2b5b0a41391e9d462926/redis-3.4.1.tar.gz"; sha256 = "07yaj0j9fs7xdkg5bg926fa990khyigjbp31si8ai20vj8sv7kqd"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "repoze.lru" = super.buildPythonPackage { - name = "repoze.lru-0.7"; - doCheck = false; + "repoze.lru" = super.buildPythonPackage rec { + pname = "repoze.lru"; + version = "0.7"; src = fetchurl { url = "https://files.pythonhosted.org/packages/12/bc/595a77c4b5e204847fdf19268314ef59c85193a9dc9f83630fc459c0fee5/repoze.lru-0.7.tar.gz"; sha256 = "0xzz1aw2smy8hdszrq8yhnklx6w1r1mf55061kalw3iq35gafa84"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ { fullName = "Repoze Public License"; } { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ]; }; }; - "rhodecode-vcsserver" = super.buildPythonPackage { - name = "rhodecode-vcsserver-4.19.0"; - buildInputs = [ - self."pytest" - self."py" - self."pytest-cov" - self."pytest-sugar" + "rhodecode-vcsserver" = super.buildPythonPackage rec { + pname = "rhodecode-vcsserver"; + version = "4.19.0"; + src = ./.; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ self."pytest-runner" - self."pytest-profiling" - self."pytest-timeout" - self."gprof2dot" - self."mock" + ]; + propagatedBuildInputs = [ + self."beautifulsoup4" + self."configobj" self."cov-core" self."coverage" - self."webtest" - self."beautifulsoup4" - self."configobj" - ]; - doCheck = true; - propagatedBuildInputs = [ - self."configobj" + self."decorator" self."dogpile.cache" self."dogpile.core" - self."decorator" self."dulwich" - self."hgsubversion" + self."gevent" + self."gprof2dot" + self."greenlet" + self."gunicorn" self."hg-evolve" - self."mako" - self."markupsafe" + self."hgsubversion" + self."ipdb" + self."ipython" self."mercurial" + self."mock" self."msgpack-python" self."pastedeploy" - self."pyramid" - self."pyramid-mako" + self."py" self."pygit2" - self."repoze.lru" + self."pyramid" + self."pytest" + self."pytest-cov" + self."pytest-profiling" + self."pytest-runner" + self."pytest-sugar" + self."pytest-timeout" self."redis" + self."repoze.lru" self."simplejson" + self."six" self."subprocess32" self."subvertpy" - self."six" self."translationstring" + self."waitress" self."webob" + self."webtest" self."zope.deprecation" self."zope.interface" - self."gevent" - self."greenlet" - self."gunicorn" - self."waitress" - self."ipdb" - self."ipython" - self."pytest" - self."py" - self."pytest-cov" - self."pytest-sugar" - self."pytest-runner" - self."pytest-profiling" - self."pytest-timeout" - self."gprof2dot" - self."mock" - self."cov-core" - self."coverage" - self."webtest" - self."beautifulsoup4" ]; - src = ./.; meta = { license = [ { fullName = "GPL V3"; } { fullName = "GNU General Public License v3 or later (GPLv3+)"; } ]; }; }; - "scandir" = super.buildPythonPackage { - name = "scandir-1.10.0"; - doCheck = false; + "scandir" = super.buildPythonPackage rec { + pname = "scandir"; + version = "1.10.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/df/f5/9c052db7bd54d0cbf1bc0bb6554362bba1012d03e5888950a4f5c5dadc4e/scandir-1.10.0.tar.gz"; sha256 = "1bkqwmf056pkchf05ywbnf659wqlp6lljcdb0y88wr9f0vv32ijd"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.bsdOriginal { fullName = "New BSD License"; } ]; }; }; - "setproctitle" = super.buildPythonPackage { - name = "setproctitle-1.1.10"; - doCheck = false; + "setproctitle" = super.buildPythonPackage rec { + pname = "setproctitle"; + version = "1.1.10"; src = fetchurl { url = "https://files.pythonhosted.org/packages/5a/0d/dc0d2234aacba6cf1a729964383e3452c52096dc695581248b548786f2b3/setproctitle-1.1.10.tar.gz"; sha256 = "163kplw9dcrw0lffq1bvli5yws3rngpnvrxrzdw89pbphjjvg0v2"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "setuptools" = super.buildPythonPackage { - name = "setuptools-44.1.0"; - doCheck = false; + "setuptools-git" = super.buildPythonPackage rec { + pname = "setuptools-git"; + version = "1.2"; src = fetchurl { - url = "https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"; - sha256 = "1jja896zvd1ppccnjbhkgagxbwchgq6vfamp6qn1hvywq6q9cjkr"; + url = "https://files.pythonhosted.org/packages/05/97/dd99fa9c0d9627a7b3c103a00f1566d8193aca8d473884ed258cca82b06f/setuptools_git-1.2-py2.py3-none-any.whl"; + sha256 = "1yjc97r57mfsrvb3yx45cc1aryf6m9kbkmrhlfsv95vxrv64sxp7"; + }; + format = "wheel"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; + meta = { + license = [ pkgs.lib.licenses.bsdOriginal ]; }; + }; + "setuptools-scm" = super.buildPythonPackage rec { + pname = "setuptools-scm"; + version = "3.5.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/4b/c1/118ec08816737cc46b4dd93b22f7a138fbfb14b53f4b4718fd9983e70a50/setuptools_scm-3.5.0-py2.py3-none-any.whl"; + sha256 = "13z30zcwzp1g9g27xv91yrhhbsx2ljw0xkvb36vkx9708cyxn8qd"; + }; + format = "wheel"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "simplegeneric" = super.buildPythonPackage { - name = "simplegeneric-0.8.1"; - doCheck = false; + "simplegeneric" = super.buildPythonPackage rec { + pname = "simplegeneric"; + version = "0.8.1"; src = fetchurl { url = "https://files.pythonhosted.org/packages/3d/57/4d9c9e3ae9a255cd4e1106bb57e24056d3d0709fc01b2e3e345898e49d5b/simplegeneric-0.8.1.zip"; sha256 = "0wwi1c6md4vkbcsfsf8dklf3vr4mcdj4mpxkanwgb6jb1432x5yw"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ + pkgs."unzip" + ]; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.zpl21 ]; }; }; - "simplejson" = super.buildPythonPackage { - name = "simplejson-3.16.0"; - doCheck = false; + "simplejson" = super.buildPythonPackage rec { + pname = "simplejson"; + version = "3.16.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/e3/24/c35fb1c1c315fc0fffe61ea00d3f88e85469004713dab488dee4f35b0aff/simplejson-3.16.0.tar.gz"; sha256 = "19cws1syk8jzq2pw43878dv6fjkb0ifvjpx0i9aajix6kc9jkwxi"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ { fullName = "Academic Free License (AFL)"; } pkgs.lib.licenses.mit ]; }; }; - "six" = super.buildPythonPackage { - name = "six-1.11.0"; - doCheck = false; + "six" = super.buildPythonPackage rec { + pname = "six"; + version = "1.11.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/16/d8/bc6316cf98419719bd59c91742194c111b6f2e85abac88e496adefaf7afe/six-1.11.0.tar.gz"; sha256 = "1scqzwc51c875z23phj48gircqjgnn3af8zy2izjwmnlxrxsgs3h"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "subprocess32" = super.buildPythonPackage { - name = "subprocess32-3.5.4"; - doCheck = false; + "subprocess32" = super.buildPythonPackage rec { + pname = "subprocess32"; + version = "3.5.4"; src = fetchurl { url = "https://files.pythonhosted.org/packages/32/c8/564be4d12629b912ea431f1a50eb8b3b9d00f1a0b1ceff17f266be190007/subprocess32-3.5.4.tar.gz"; sha256 = "17f7mvwx2271s1wrl0qac3wjqqnrqag866zs3qc8v5wp0k43fagb"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.psfl ]; }; }; - "subvertpy" = super.buildPythonPackage { - name = "subvertpy-0.10.1"; - doCheck = false; + "subvertpy" = super.buildPythonPackage rec { + pname = "subvertpy"; + version = "0.10.1"; src = fetchurl { url = "https://files.pythonhosted.org/packages/9d/76/99fa82affce75f5ac0f7dbe513796c3f37311ace0c68e1b063683b4f9b99/subvertpy-0.10.1.tar.gz"; sha256 = "061ncy9wjz3zyv527avcrdyk0xygyssyy7p1644nhzhwp8zpybij"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.lgpl21Plus pkgs.lib.licenses.gpl2Plus ]; }; }; - "termcolor" = super.buildPythonPackage { - name = "termcolor-1.1.0"; - doCheck = false; + "termcolor" = super.buildPythonPackage rec { + pname = "termcolor"; + version = "1.1.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz"; sha256 = "0fv1vq14rpqwgazxg4981904lfyp84mnammw7y046491cv76jv8x"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "traitlets" = super.buildPythonPackage { - name = "traitlets-4.3.3"; - doCheck = false; - propagatedBuildInputs = [ - self."ipython-genutils" - self."six" - self."decorator" - self."enum34" - ]; + "traitlets" = super.buildPythonPackage rec { + pname = "traitlets"; + version = "4.3.3"; src = fetchurl { url = "https://files.pythonhosted.org/packages/75/b0/43deb021bc943f18f07cbe3dac1d681626a48997b7ffa1e7fb14ef922b21/traitlets-4.3.3.tar.gz"; sha256 = "1xsrwgivpkxlbr4dfndfsi098s29yqgswgjc1qqn69yxklvfw8yh"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."decorator" + self."enum34" + self."ipython-genutils" + self."six" + ]; meta = { license = [ pkgs.lib.licenses.bsdOriginal ]; }; }; - "translationstring" = super.buildPythonPackage { - name = "translationstring-1.3"; - doCheck = false; + "translationstring" = super.buildPythonPackage rec { + pname = "translationstring"; + version = "1.3"; src = fetchurl { url = "https://files.pythonhosted.org/packages/5e/eb/bee578cc150b44c653b63f5ebe258b5d0d812ddac12497e5f80fcad5d0b4/translationstring-1.3.tar.gz"; sha256 = "0bdpcnd9pv0131dl08h4zbcwmgc45lyvq3pa224xwan5b3x4rr2f"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ { fullName = "BSD-like (http://repoze.org/license.html)"; } ]; }; }; - "venusian" = super.buildPythonPackage { - name = "venusian-1.2.0"; - doCheck = false; + "venusian" = super.buildPythonPackage rec { + pname = "venusian"; + version = "1.2.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/7e/6f/40a9d43ac77cb51cb62be5b5662d170f43f8037bdc4eab56336c4ca92bb7/venusian-1.2.0.tar.gz"; sha256 = "0ghyx66g8ikx9nx1mnwqvdcqm11i1vlq0hnvwl50s48bp22q5v34"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ]; }; }; - "waitress" = super.buildPythonPackage { - name = "waitress-1.3.1"; - doCheck = false; + "waitress" = super.buildPythonPackage rec { + pname = "waitress"; + version = "1.3.1"; src = fetchurl { url = "https://files.pythonhosted.org/packages/a6/e6/708da7bba65898e5d759ade8391b1077e49d07be0b0223c39f5be04def56/waitress-1.3.1.tar.gz"; sha256 = "1iysl8ka3l4cdrr0r19fh1cv28q41mwpvgsb81ji7k4shkb0k3i7"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.zpl21 ]; }; }; - "wcwidth" = super.buildPythonPackage { - name = "wcwidth-0.1.9"; - doCheck = false; + "wcwidth" = super.buildPythonPackage rec { + pname = "wcwidth"; + version = "0.1.9"; src = fetchurl { url = "https://files.pythonhosted.org/packages/25/9d/0acbed6e4a4be4fc99148f275488580968f44ddb5e69b8ceb53fc9df55a0/wcwidth-0.1.9.tar.gz"; sha256 = "1wf5ycjx8s066rdvr0fgz4xds9a8zhs91c4jzxvvymm1c8l8cwzf"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "webob" = super.buildPythonPackage { - name = "webob-1.8.5"; - doCheck = false; + "webob" = super.buildPythonPackage rec { + pname = "webob"; + version = "1.8.5"; src = fetchurl { url = "https://files.pythonhosted.org/packages/9d/1a/0c89c070ee2829c934cb6c7082287c822e28236a4fcf90063e6be7c35532/WebOb-1.8.5.tar.gz"; sha256 = "11khpzaxc88q31v25ic330gsf56fwmbdc9b30br8mvp0fmwspah5"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = []; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "webtest" = super.buildPythonPackage { - name = "webtest-2.0.34"; - doCheck = false; - propagatedBuildInputs = [ - self."six" - self."webob" - self."waitress" - self."beautifulsoup4" - ]; + "webtest" = super.buildPythonPackage rec { + pname = "webtest"; + version = "2.0.34"; src = fetchurl { url = "https://files.pythonhosted.org/packages/2c/74/a0e63feee438735d628631e2b70d82280276a930637ac535479e5fad9427/WebTest-2.0.34.tar.gz"; sha256 = "0x1y2c8z4fmpsny4hbp6ka37si2g10r5r2jwxhvv5mx7g3blq4bi"; }; - meta = { - license = [ pkgs.lib.licenses.mit ]; - }; - }; - "zipp" = super.buildPythonPackage { - name = "zipp-1.2.0"; + format = "setuptools"; doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; propagatedBuildInputs = [ - self."contextlib2" + self."beautifulsoup4" + self."six" + self."waitress" + self."webob" ]; - src = fetchurl { - url = "https://files.pythonhosted.org/packages/78/08/d52f0ea643bc1068d6dc98b412f4966a9b63255d20911a23ac3220c033c4/zipp-1.2.0.tar.gz"; - sha256 = "1c91lnv1bxjimh8as27hz7bghsjkkbxn1d37xq7in9c82iai0167"; - }; meta = { license = [ pkgs.lib.licenses.mit ]; }; }; - "zope.deprecation" = super.buildPythonPackage { - name = "zope.deprecation-4.4.0"; + "zipp" = super.buildPythonPackage rec { + pname = "zipp"; + version = "1.2.0"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/78/08/d52f0ea643bc1068d6dc98b412f4966a9b63255d20911a23ac3220c033c4/zipp-1.2.0.tar.gz"; + sha256 = "1c91lnv1bxjimh8as27hz7bghsjkkbxn1d37xq7in9c82iai0167"; + }; + format = "setuptools"; doCheck = false; - propagatedBuildInputs = [ + buildInputs = []; + checkInputs = []; + nativeBuildInputs = [ self."setuptools" + self."wheel" + self."setuptools-scm" ]; + propagatedBuildInputs = [ + self."contextlib2" + ]; + meta = { + license = [ pkgs.lib.licenses.mit ]; + }; + }; + "zope.deprecation" = super.buildPythonPackage rec { + pname = "zope.deprecation"; + version = "4.4.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/34/da/46e92d32d545dd067b9436279d84c339e8b16de2ca393d7b892bc1e1e9fd/zope.deprecation-4.4.0.tar.gz"; sha256 = "1pz2cv7gv9y1r3m0bdv7ks1alagmrn5msm5spwdzkb2by0w36i8d"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."setuptools" + ]; meta = { license = [ pkgs.lib.licenses.zpl21 ]; }; }; - "zope.interface" = super.buildPythonPackage { - name = "zope.interface-4.6.0"; - doCheck = false; - propagatedBuildInputs = [ - self."setuptools" - ]; + "zope.interface" = super.buildPythonPackage rec { + pname = "zope.interface"; + version = "4.6.0"; src = fetchurl { url = "https://files.pythonhosted.org/packages/4e/d0/c9d16bd5b38de44a20c6dc5d5ed80a49626fafcb3db9f9efdc2a19026db6/zope.interface-4.6.0.tar.gz"; sha256 = "1rgh2x3rcl9r0v0499kf78xy86rnmanajf4ywmqb943wpk50sg8v"; }; + format = "setuptools"; + doCheck = false; + buildInputs = []; + checkInputs = []; + nativeBuildInputs = []; + propagatedBuildInputs = [ + self."setuptools" + ]; meta = { license = [ pkgs.lib.licenses.zpl21 ]; }; }; - -### Test requirements - - } diff --git a/pkgs/shell-generate.nix b/pkgs/shell-generate.nix --- a/pkgs/shell-generate.nix +++ b/pkgs/shell-generate.nix @@ -4,7 +4,11 @@ with pkgs.lib; -let _pythonPackages = pythonPackages; in +let + _pythonPackages = pythonPackages; + +in + let pythonPackages = getAttr _pythonPackages pkgs; @@ -18,14 +22,24 @@ in pkgs.stdenv.mkDerivation { name = "pip2nix-generated"; + buildInputs = [ + # Allows to generate python packages pip2nix.pip2nix pythonPackages.pip-tools + # compile using ffi + pkgs.libffi + pkgs.apr pkgs.aprutil - pkgs.libffi ]; + LC_ALL = "en_US.UTF-8"; + LOCALE_ARCHIVE = + if pkgs.stdenv.isLinux + then "${pkgs.glibcLocales}/lib/locale/locale-archive" + else ""; + shellHook = '' runHook preShellHook echo "Setting SVN_* variables" @@ -36,7 +50,14 @@ pkgs.stdenv.mkDerivation { preShellHook = '' echo "Starting Generate Shell" + # set unpack source date to 1980 to fix ZIP problems that does not support <1980 + export SOURCE_DATE_EPOCH=315532800 + export TMPDIR=/tmp + # Custom prompt to distinguish from other dev envs. - export PS1="\n\[\033[1;32m\][Generate-shell:\w]$\[\033[0m\] " + export PS1="\n\[\033[1;32m\][pip2nix-generate-shell]$\[\033[0m\] " + + export PYCURL_SSL_LIBRARY=openssl + ''; } diff --git a/requirements.txt b/requirements.txt --- a/requirements.txt +++ b/requirements.txt @@ -9,14 +9,12 @@ decorator==4.1.2 dulwich==0.13.0 hgsubversion==1.9.3 hg-evolve==9.1.0 -mako==1.1.0 -markupsafe==1.1.1 + mercurial==5.1.1 msgpack-python==0.5.6 pastedeploy==2.1.0 pyramid==1.10.4 -pyramid-mako==1.1.0 pygit2==0.28.2 repoze.lru==0.7 @@ -39,7 +37,7 @@ waitress==1.3.1 ## debug ipdb==0.13.2 -ipython==5.1.0 +ipython==5.10.0 ## test related requirements -r requirements_test.txt diff --git a/requirements_pinned.txt b/requirements_pinned.txt --- a/requirements_pinned.txt +++ b/requirements_pinned.txt @@ -1,6 +1,6 @@ # contains not directly required libraries we want to pin the version. -atomicwrites==1.3.0 +atomicwrites==1.4.0 attrs==19.3.0 contextlib2==0.6.0.post1 cffi==1.12.3 @@ -16,3 +16,6 @@ scandir==1.10.0 setproctitle==1.1.10 venusian==1.2.0 wcwidth==0.1.9 + +# ptyprocess backport, pypi version doesn't support egg/source installs on python 2.X +https://code.rhodecode.com/upstream/ptyprocess/artifacts/download/0-c8b019b1-c4d3-46ac-a0ad-1206ec3fb3cb.tar.gz?sha256=50394f2c5e117fcab4360bf99c8bc40be7211ee1a5860aeb3809b44249550c3e#egg=ptyprocess==0.6.0.rhodecode-upstream1 diff --git a/requirements_test.txt b/requirements_test.txt --- a/requirements_test.txt +++ b/requirements_test.txt @@ -1,9 +1,9 @@ # test related requirements -pytest==4.6.5 -py==1.8.0 -pytest-cov==2.7.1 -pytest-sugar==0.9.2 -pytest-runner==5.1.0 +pytest==4.6.9 +py==1.8.1 +pytest-cov==2.8.1 +pytest-sugar==0.9.3 +pytest-runner==5.2.0 pytest-profiling==1.7.0 pytest-timeout==1.3.3 gprof2dot==2017.9.19 diff --git a/setup.py b/setup.py --- a/setup.py +++ b/setup.py @@ -36,7 +36,6 @@ except ImportError: # for pip <= 9.0.3 from pip.download import PipSession - if sys.version_info < (2, 7): raise Exception('VCSServer requires Python 2.7 or later') @@ -113,7 +112,7 @@ setup( keywords=keywords, license=__license__, author=__author__, - author_email='admin@rhodecode.com', + author_email='support@rhodecode.com', url=__url__, setup_requires=setup_requirements, install_requires=install_requirements, diff --git a/shell.nix b/shell.nix --- a/shell.nix +++ b/shell.nix @@ -15,7 +15,7 @@ let vcs-pythonPackages = vcsserver.pythonPackages; -in vcsserver.override (attrs: { +in vcsserver.override (attrs: rec { # Avoid that we dump any sources into the store when entering the shell and # make development a little bit more convenient. src = null; @@ -32,7 +32,6 @@ in vcsserver.override (attrs: { attrs.propagatedBuildInputs ++ []; - # Make sure we execute both hooks shellHook = '' runHook preShellHook @@ -40,17 +39,18 @@ in vcsserver.override (attrs: { ''; preShellHook = '' - echo "Entering VCS-Shell" + echo "Entering vcsserver-shell" # Custom prompt to distinguish from other dev envs. - export PS1="\n\[\033[1;32m\][VCS-shell:\w]$\[\033[0m\] " + export PS1="\n\[\033[1;32m\][vcsserver-shell:\w]$\[\033[0m\] " # Set locale + export LOCALE_ARCHIVE="${pkgs.glibcLocales}/lib/locale/locale-archive" export LC_ALL="en_US.UTF-8" # Setup a temporary directory. tmp_path=$(mktemp -d) - export PATH="$tmp_path/bin:$PATH" + export PATH="${pkgs.subversion}/bin:${pkgs.git}/bin:${vcs-pythonPackages.mercurial}/bin:$tmp_path/bin:$PATH" export PYTHONPATH="$tmp_path/${vcs-pythonPackages.python.sitePackages}:$PYTHONPATH" mkdir -p $tmp_path/${vcs-pythonPackages.python.sitePackages}