at master 1.3 kB view raw
1{ 2 gevent, 3 buildPythonPackage, 4 fetchFromGitHub, 5 hostname, 6 pytest, 7 pythonAtLeast, 8 lib, 9 stdenv, 10}: 11 12buildPythonPackage rec { 13 pname = "ruffus"; 14 version = "2.8.4"; 15 format = "setuptools"; 16 17 src = fetchFromGitHub { 18 owner = "cgat-developers"; 19 repo = "ruffus"; 20 rev = "v${version}"; 21 sha256 = "0fnzpchwwqsy5h18fs0n90s51w25n0dx0l74j0ka6lvhjl5sxn4c"; 22 }; 23 24 propagatedBuildInputs = [ gevent ]; 25 26 nativeCheckInputs = [ 27 hostname 28 pytest 29 ]; 30 31 # tests very flaky & hang often on darwin 32 doCheck = !stdenv.hostPlatform.isDarwin; 33 checkPhase = 34 # https://docs.python.org/3/whatsnew/3.13.html#re 35 lib.optionalString (pythonAtLeast "3.13") '' 36 substituteInPlace ruffus/test/test_ruffus_utility.py \ 37 --replace-fail re.error re.PatternError 38 '' 39 # test files do indeed need to be executed separately 40 + '' 41 pushd ruffus/test 42 rm test_with_logger.py # spawns 500 processes 43 for f in test_*.py ; do 44 HOME=$TMPDIR pytest -v --disable-warnings $f 45 done 46 popd 47 ''; 48 pythonImportsCheck = [ "ruffus" ]; 49 50 meta = with lib; { 51 description = "Light-weight Python Computational Pipeline Management"; 52 homepage = "http://www.ruffus.org.uk"; 53 license = licenses.mit; 54 maintainers = [ ]; 55 }; 56}