1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 hypothesis,
6 libtool,
7 libxml2,
8 libxslt,
9 lxml,
10 pkg-config,
11 pkgconfig,
12 pytestCheckHook,
13 setuptools-scm,
14 xmlsec,
15}:
16
17buildPythonPackage rec {
18 pname = "xmlsec";
19 version = "1.3.16";
20 pyproject = true;
21
22 src = fetchPypi {
23 inherit pname version;
24 hash = "sha256-K2xwVExtHUygBqqjFJWODvNRTcgf/94bI/LsQaV5H50=";
25 };
26
27 build-system = [ setuptools-scm ];
28
29 nativeBuildInputs = [
30 pkg-config
31 pkgconfig
32 ];
33
34 buildInputs = [
35 xmlsec
36 libxslt
37 libxml2
38 libtool
39 ];
40
41 propagatedBuildInputs = [ lxml ];
42
43 nativeCheckInputs = [
44 pytestCheckHook
45 hypothesis
46 ];
47
48 disabledTestPaths = [
49 # Full git clone required for test_doc_examples
50 "tests/test_doc_examples.py"
51 # test_reinitialize_module segfaults python
52 # https://github.com/mehcode/python-xmlsec/issues/203
53 "tests/test_xmlsec.py"
54 ];
55
56 pythonImportsCheck = [ "xmlsec" ];
57
58 meta = with lib; {
59 description = "Python bindings for the XML Security Library";
60 homepage = "https://github.com/mehcode/python-xmlsec";
61 changelog = "https://github.com/xmlsec/python-xmlsec/releases/tag/${version}";
62 license = licenses.mit;
63 maintainers = with maintainers; [ zhaofengli ];
64 };
65}