at 23.05-pre 1.8 kB view raw
1{ lib 2, buildPythonPackage 3, pythonOlder 4, fetchPypi 5, click 6, click-default-group 7, docformatter 8, jinja2 9, toposort 10, lxml 11, requests 12, pytestCheckHook 13}: 14 15buildPythonPackage rec { 16 pname = "xsdata"; 17 version = "22.11"; 18 19 disabled = pythonOlder "3.7"; 20 21 format = "setuptools"; 22 23 src = fetchPypi { 24 inherit pname version; 25 hash = "sha256-3A2vyK6UdelWSzcN7pzPz6xKnU3X+rum7dKzl6OfWoc="; 26 }; 27 28 postPatch = '' 29 substituteInPlace setup.cfg \ 30 --replace "--benchmark-skip" "" 31 ''; 32 33 passthru.optional-dependencies = { 34 cli = [ 35 click 36 click-default-group 37 docformatter 38 jinja2 39 toposort 40 ]; 41 lxml = [ 42 lxml 43 ]; 44 soap = [ 45 requests 46 ]; 47 }; 48 49 checkInputs = [ 50 pytestCheckHook 51 ] ++ passthru.optional-dependencies.cli 52 ++ passthru.optional-dependencies.lxml 53 ++ passthru.optional-dependencies.soap; 54 55 disabledTestPaths = [ 56 "tests/integration/benchmarks" 57 ]; 58 59 pythonImportsCheck = [ 60 "xsdata.formats.dataclass.context" 61 "xsdata.formats.dataclass.models.elements" 62 "xsdata.formats.dataclass.models.generics" 63 "xsdata.formats.dataclass.parsers" 64 "xsdata.formats.dataclass.parsers.handlers" 65 "xsdata.formats.dataclass.parsers.nodes" 66 "xsdata.formats.dataclass.serializers" 67 "xsdata.formats.dataclass.serializers.config" 68 "xsdata.formats.dataclass.serializers.mixins" 69 "xsdata.formats.dataclass.serializers.writers" 70 "xsdata.models.config" 71 "xsdata.utils.text" 72 ]; 73 74 meta = { 75 description = "Python XML Binding"; 76 homepage = "https://github.com/tefra/xsdata"; 77 changelog = "https://github.com/tefra/xsdata/blob/v${version}/CHANGES.rst"; 78 license = lib.licenses.mit; 79 maintainers = with lib.maintainers; [ dotlambda ]; 80 }; 81}