biome: 1.9.2 -> 1.9.3 (#349335)
[NixPkgs.git] / pkgs / development / python-modules / exchangelib / default.nix
blob0f6e58d0cb2cbb7b0708ac44b2ef90b75c2d26ff
2   lib,
3   backports-zoneinfo,
4   buildPythonPackage,
5   cached-property,
6   defusedxml,
7   dnspython,
8   fetchFromGitHub,
9   flake8,
10   isodate,
11   lxml,
12   oauthlib,
13   psutil,
14   pygments,
15   python-dateutil,
16   pythonOlder,
17   pytz,
18   pyyaml,
19   requests,
20   requests-ntlm,
21   requests-gssapi,
22   requests-oauthlib,
23   requests-kerberos,
24   requests-mock,
25   setuptools,
26   tzdata,
27   tzlocal,
30 buildPythonPackage rec {
31   pname = "exchangelib";
32   version = "5.4.3";
33   pyproject = true;
35   disabled = pythonOlder "3.8";
37   src = fetchFromGitHub {
38     owner = "ecederstrand";
39     repo = "exchangelib";
40     rev = "refs/tags/v${version}";
41     hash = "sha256-SX5F0OXKdxA2HoDwvCe4M7RftdjUEdQuFbxRyuABC4E=";
42   };
44   pythonRelaxDeps = [ "defusedxml" ];
46   build-system = [ setuptools ];
48   dependencies = [
49     cached-property
50     defusedxml
51     dnspython
52     isodate
53     lxml
54     oauthlib
55     pygments
56     requests
57     requests-ntlm
58     requests-oauthlib
59     requests-kerberos
60     tzdata
61     tzlocal
62   ] ++ lib.optionals (pythonOlder "3.9") [ backports-zoneinfo ];
64   optional-dependencies = {
65     complete = [
66       requests-gssapi
67       # requests-negotiate-sspi
68     ];
69     kerberos = [ requests-gssapi ];
70     # sspi = [
71     #   requests-negotiate-sspi
72     # ];
73   };
75   nativeCheckInputs = [
76     flake8
77     psutil
78     python-dateutil
79     pytz
80     pyyaml
81     requests-mock
82   ];
84   pythonImportsCheck = [ "exchangelib" ];
86   meta = with lib; {
87     description = "Client for Microsoft Exchange Web Services (EWS)";
88     homepage = "https://github.com/ecederstrand/exchangelib";
89     changelog = "https://github.com/ecederstrand/exchangelib/blob/v${version}/CHANGELOG.md";
90     license = licenses.bsd2;
91     maintainers = with maintainers; [ catern ];
92   };