1{ 2 lib, 3 buildPythonPackage, 4 cwl-upgrader, 5 cwlformat, 6 fetchFromGitHub, 7 jsonschema, 8 packaging, 9 pytest-mock, 10 pytest-xdist, 11 pytestCheckHook, 12 pythonOlder, 13 rdflib, 14 requests, 15 ruamel-yaml, 16 schema-salad, 17 setuptools, 18}: 19 20buildPythonPackage rec { 21 pname = "cwl-utils"; 22 version = "0.37"; 23 pyproject = true; 24 25 disabled = pythonOlder "3.8"; 26 27 src = fetchFromGitHub { 28 owner = "common-workflow-language"; 29 repo = "cwl-utils"; 30 tag = "v${version}"; 31 hash = "sha256-OD8Nz8SIqB0Ie3S5663sQg3GjlCkC+qBvOXM9HZNuQU="; 32 }; 33 34 build-system = [ setuptools ]; 35 36 dependencies = [ 37 cwl-upgrader 38 packaging 39 rdflib 40 requests 41 ruamel-yaml 42 schema-salad 43 ]; 44 45 nativeCheckInputs = [ 46 cwlformat 47 jsonschema 48 pytest-mock 49 pytest-xdist 50 pytestCheckHook 51 ]; 52 53 pythonImportsCheck = [ "cwl_utils" ]; 54 55 disabledTests = [ 56 # Don't run tests which require Node.js 57 "test_context_multiple_regex" 58 "test_value_from_two_concatenated_expressions" 59 "test_graph_split" 60 "test_caches_js_processes" 61 "test_load_document_with_remote_uri" 62 # Don't run tests which require network access 63 "test_remote_packing" 64 "test_remote_packing_github_soft_links" 65 "test_cwl_inputs_to_jsonschema" 66 ]; 67 68 meta = with lib; { 69 description = "Utilities for CWL"; 70 homepage = "https://github.com/common-workflow-language/cwl-utils"; 71 changelog = "https://github.com/common-workflow-language/cwl-utils/releases/tag/v${version}"; 72 license = licenses.asl20; 73 maintainers = with maintainers; [ fab ]; 74 }; 75}