1{ gevent
2, buildPythonPackage
3, fetchFromGitHub
4, hostname
5, pytest
6, lib, stdenv
7}:
8
9buildPythonPackage rec {
10 pname = "ruffus";
11 version = "2.8.4";
12
13 src = fetchFromGitHub {
14 owner = "cgat-developers";
15 repo = pname;
16 rev = "v${version}";
17 sha256 = "0fnzpchwwqsy5h18fs0n90s51w25n0dx0l74j0ka6lvhjl5sxn4c";
18 };
19
20 propagatedBuildInputs = [ gevent ];
21
22 nativeCheckInputs = [
23 hostname
24 pytest
25 ];
26
27 # tests very flaky & hang often on darwin
28 doCheck = !stdenv.isDarwin;
29 # test files do indeed need to be executed separately
30 checkPhase = ''
31 pushd ruffus/test
32 rm test_with_logger.py # spawns 500 processes
33 for f in test_*.py ; do
34 HOME=$TMPDIR pytest -v --disable-warnings $f
35 done
36 popd
37 '';
38 pythonImportsCheck = [ "ruffus" ];
39
40 meta = with lib; {
41 description = "Light-weight Python Computational Pipeline Management";
42 homepage = "http://www.ruffus.org.uk";
43 license = licenses.mit;
44 maintainers = [ maintainers.kiwi ];
45 };
46}
47