{ lib , fetchFromGitHub , git , nodejs , python3 }: python3.pkgs.buildPythonApplication rec { pname = "cwltool"; version = "3.1.20230213100550"; format = "setuptools"; src = fetchFromGitHub { owner = "common-workflow-language"; repo = pname; rev = "refs/tags/${version}"; hash = "sha256-BtHkIVadcccnYYX8lRqiCzO+/qFeBaZfdUuu6qrjysk="; }; postPatch = '' substituteInPlace setup.py \ --replace "ruamel.yaml >= 0.15, < 0.17.22" "ruamel.yaml" \ --replace "prov == 1.5.1" "prov" \ --replace "setup_requires=PYTEST_RUNNER," "" ''; nativeBuildInputs = [ git ]; propagatedBuildInputs = with python3.pkgs; [ argcomplete bagit coloredlogs cwl-utils mypy-extensions prov psutil pydot rdflib requests ruamel-yaml schema-salad shellescape typing-extensions ]; nativeCheckInputs = with python3.pkgs; [ mock nodejs pytest-mock pytest-httpserver pytest-xdist pytestCheckHook ]; disabledTests = [ "test_content_types" "test_env_filtering" "test_http_path_mapping" "test_modification_date" ]; disabledTestPaths = [ "tests/test_udocker.py" "tests/test_provenance.py" ]; pythonImportsCheck = [ "cwltool" ]; meta = with lib; { description = "Common Workflow Language reference implementation"; homepage = "https://www.commonwl.org"; changelog = "https://github.com/common-workflow-language/cwltool/releases/tag/${version}"; license = with licenses; [ asl20 ]; maintainers = with maintainers; [ veprbl ]; }; }