1{
2 lib,
3 fetchPypi,
4 buildPythonPackage,
5 execnet,
6 pytest,
7 setuptools-scm,
8 pytest-forked,
9 filelock,
10 psutil,
11 six,
12 isPy3k,
13}:
14
15buildPythonPackage rec {
16 pname = "pytest-xdist";
17 version = "1.34.0";
18
19 src = fetchPypi {
20 inherit pname version;
21 sha256 = "1vh4ps32lp5ignch5adbl3pgchvigdfmrl6qpmhxih54wa1qw3il";
22 };
23
24 nativeBuildInputs = [
25 setuptools-scm
26 pytest
27 ];
28 nativeCheckInputs = [
29 pytest
30 filelock
31 ];
32 propagatedBuildInputs = [
33 execnet
34 pytest-forked
35 psutil
36 six
37 ];
38
39 # Encountered a memory leak
40 # https://github.com/pytest-dev/pytest-xdist/issues/462
41 doCheck = !isPy3k;
42
43 checkPhase = ''
44 # Excluded tests access file system
45 py.test testing -k "not test_distribution_rsyncdirs_example \
46 and not test_rsync_popen_with_path \
47 and not test_popen_rsync_subdir \
48 and not test_init_rsync_roots \
49 and not test_rsyncignore"
50 '';
51
52 meta = with lib; {
53 description = "py.test xdist plugin for distributed testing and loop-on-failing modes";
54 homepage = "https://github.com/pytest-dev/pytest-xdist";
55 license = licenses.mit;
56 maintainers = with maintainers; [ dotlambda ];
57 };
58}