diff --git a/pkgs/development/python-modules/exchangelib/default.nix b/pkgs/development/python-modules/exchangelib/default.nix index c41b04790836..c568583dd378 100644 --- a/pkgs/development/python-modules/exchangelib/default.nix +++ b/pkgs/development/python-modules/exchangelib/default.nix @@ -1,40 +1,77 @@ -{ lib, fetchFromGitHub, buildPythonPackage, - pythonOlder, - lxml, tzlocal, python-dateutil, pygments, requests-kerberos, - defusedxml, cached-property, isodate, requests_ntlm, dnspython, - psutil, requests-mock, pyyaml, - oauthlib, requests_oauthlib, tzdata, - flake8, backports-zoneinfo +{ lib +, backports-datetime-fromisoformat +, backports-zoneinfo +, buildPythonPackage +, cached-property +, defusedxml +, dnspython +, fetchFromGitHub +, flake8 +, isodate +, lxml +, oauthlib +, psutil +, pygments +, python-dateutil +, pythonOlder +, pytz +, pyyaml +, requests +, requests_ntlm +, requests_oauthlib +, requests-kerberos +, requests-mock +, tzdata +, tzlocal }: buildPythonPackage rec { pname = "exchangelib"; - version = "4.4.0"; - disabled = pythonOlder "3.5"; + version = "4.5.0"; + disabled = pythonOlder "3.6"; - # tests are not present in the PyPI version src = fetchFromGitHub { owner = "ecederstrand"; repo = pname; rev = "v${version}"; - sha256 = "0d6hfbawp68x18ryxamkamf8kgc55xbrll89g3swrqnm2rrhzrqf"; + sha256 = "sha256-MtWcqsbKls9I7Oj0UlJzWtHsNfAxk4+ojSgK50ljEfs="; }; - checkInputs = [ psutil requests-mock pyyaml - flake8 - ]; propagatedBuildInputs = [ - lxml tzlocal tzdata python-dateutil pygments requests-kerberos - defusedxml cached-property isodate requests_ntlm dnspython - oauthlib requests_oauthlib + cached-property + defusedxml + dnspython + isodate + lxml + oauthlib + pygments + requests + requests_ntlm + requests_oauthlib + requests-kerberos + tzdata + tzlocal ] ++ lib.optionals (pythonOlder "3.9") [ backports-zoneinfo + ] ++ lib.optionals (pythonOlder "3.7") [ + backports-datetime-fromisoformat ]; + checkInputs = [ + flake8 + psutil + python-dateutil + pytz + pyyaml + requests-mock + ]; + + pythonImportsCheck = [ "exchangelib" ]; + meta = with lib; { description = "Client for Microsoft Exchange Web Services (EWS)"; - homepage = "https://github.com/ecederstrand/exchangelib"; - license = licenses.bsd2; + homepage = "https://github.com/ecederstrand/exchangelib"; + license = licenses.bsd2; maintainers = with maintainers; [ catern ]; }; }