{ 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.5.0"; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "ecederstrand"; repo = pname; rev = "v${version}"; sha256 = "sha256-MtWcqsbKls9I7Oj0UlJzWtHsNfAxk4+ojSgK50ljEfs="; }; propagatedBuildInputs = [ 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; maintainers = with maintainers; [ catern ]; }; }