diff --git a/pkgs/development/python-modules/pytest-xdist/1.nix b/pkgs/development/python-modules/pytest-xdist/1.nix new file mode 100644 index 000000000000..6dc4b666db54 --- /dev/null +++ b/pkgs/development/python-modules/pytest-xdist/1.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchPypi, buildPythonPackage, execnet, pytest +, setuptools_scm, pytest-forked, filelock, psutil, six, isPy3k }: + +buildPythonPackage rec { + pname = "pytest-xdist"; + version = "1.34.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "1vh4ps32lp5ignch5adbl3pgchvigdfmrl6qpmhxih54wa1qw3il"; + }; + + nativeBuildInputs = [ setuptools_scm pytest ]; + checkInputs = [ pytest filelock ]; + propagatedBuildInputs = [ execnet pytest-forked psutil six ]; + + # Encountered a memory leak + # https://github.com/pytest-dev/pytest-xdist/issues/462 + doCheck = !isPy3k; + + checkPhase = '' + # Excluded tests access file system + py.test testing -k "not test_distribution_rsyncdirs_example \ + and not test_rsync_popen_with_path \ + and not test_popen_rsync_subdir \ + and not test_init_rsync_roots \ + and not test_rsyncignore" + ''; + + meta = with stdenv.lib; { + description = "py.test xdist plugin for distributed testing and loop-on-failing modes"; + homepage = "https://github.com/pytest-dev/pytest-xdist"; + license = licenses.mit; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pytest-xdist/2.nix b/pkgs/development/python-modules/pytest-xdist/2.nix deleted file mode 100644 index cc58c5ab6bde..000000000000 --- a/pkgs/development/python-modules/pytest-xdist/2.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ stdenv, fetchPypi, buildPythonPackage, execnet, pytest_6 -, setuptools_scm, pytest-forked, filelock, psutil, six, isPy3k }: - -buildPythonPackage rec { - pname = "pytest-xdist"; - version = "2.1.0"; - disabled = !isPy3k; - - src = fetchPypi { - inherit pname version; - sha256 = "0wh6pn66nncfs6ay0n863bgyriwsgppn8flx5l7551j1lbqkinc2"; - }; - - nativeBuildInputs = [ setuptools_scm pytest_6 ]; - checkInputs = [ pytest_6 filelock ]; - propagatedBuildInputs = [ execnet pytest-forked psutil six ]; - - # pytest6 doesn't allow for new lines - # capture_deprecated not compatible with latest pytest6 - checkPhase = '' - # Excluded tests access file system - export HOME=$TMPDIR - pytest -n $NIX_BUILD_CORES \ - -k "not (distribution_rsyncdirs_example or rsync or warning_captured_deprecated_in_pytest_6)" - ''; - - meta = with stdenv.lib; { - description = "py.test xdist plugin for distributed testing and loop-on-failing modes"; - homepage = "https://github.com/pytest-dev/pytest-xdist"; - license = licenses.mit; - maintainers = with maintainers; [ dotlambda ]; - }; -} diff --git a/pkgs/development/python-modules/pytest-xdist/default.nix b/pkgs/development/python-modules/pytest-xdist/default.nix index 56e3f3cad59c..cc58c5ab6bde 100644 --- a/pkgs/development/python-modules/pytest-xdist/default.nix +++ b/pkgs/development/python-modules/pytest-xdist/default.nix @@ -1,30 +1,27 @@ -{ stdenv, fetchPypi, buildPythonPackage, execnet, pytest +{ stdenv, fetchPypi, buildPythonPackage, execnet, pytest_6 , setuptools_scm, pytest-forked, filelock, psutil, six, isPy3k }: buildPythonPackage rec { pname = "pytest-xdist"; version = "2.1.0"; + disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "82d938f1a24186520e2d9d3a64ef7d9ac7ecdf1a0659e095d18e596b8cbd0672"; + sha256 = "0wh6pn66nncfs6ay0n863bgyriwsgppn8flx5l7551j1lbqkinc2"; }; - nativeBuildInputs = [ setuptools_scm pytest ]; - checkInputs = [ pytest filelock ]; + nativeBuildInputs = [ setuptools_scm pytest_6 ]; + checkInputs = [ pytest_6 filelock ]; propagatedBuildInputs = [ execnet pytest-forked psutil six ]; - # Encountered a memory leak - # https://github.com/pytest-dev/pytest-xdist/issues/462 - doCheck = !isPy3k; - + # pytest6 doesn't allow for new lines + # capture_deprecated not compatible with latest pytest6 checkPhase = '' # Excluded tests access file system - py.test testing -k "not test_distribution_rsyncdirs_example \ - and not test_rsync_popen_with_path \ - and not test_popen_rsync_subdir \ - and not test_init_rsync_roots \ - and not test_rsyncignore" + export HOME=$TMPDIR + pytest -n $NIX_BUILD_CORES \ + -k "not (distribution_rsyncdirs_example or rsync or warning_captured_deprecated_in_pytest_6)" ''; meta = with stdenv.lib; { diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8e68f3b97939..707ba3e085c3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5815,11 +5815,10 @@ in { pytest-watch = callPackage ../development/python-modules/pytest-watch { }; - pytest_xdist_1 = callPackage ../development/python-modules/pytest-xdist { }; - - pytest_xdist_2 = callPackage ../development/python-modules/pytest-xdist/2.nix { }; - - pytest_xdist = self.pytest_xdist_2; + pytest_xdist = if isPy27 then + callPackage ../development/python-modules/pytest-xdist/1.nix { } + else + callPackage ../development/python-modules/pytest-xdist { }; pytest-xprocess = callPackage ../development/python-modules/pytest-xprocess { };