diff --git a/pkgs/development/python-modules/caldav/2.nix b/pkgs/development/python-modules/caldav/2.nix new file mode 100644 index 000000000000..f96cff3b0806 --- /dev/null +++ b/pkgs/development/python-modules/caldav/2.nix @@ -0,0 +1,85 @@ +{ + buildPythonPackage, + dnspython, + fetchFromGitHub, + hatch-vcs, + hatchling, + icalendar, + icalendar-searcher, + lib, + lxml, + manuel, + niquests, + proxy-py, + pyfakefs, + pytest-asyncio, + pytestCheckHook, + python, + python-dateutil, + pyyaml, + radicale, + recurring-ical-events, + toPythonModule, + tzlocal, + vobject, + writableTmpDirAsHomeHook, +}: + +buildPythonPackage rec { + pname = "caldav"; + version = "2.2.6"; + pyproject = true; + + src = fetchFromGitHub { + owner = "python-caldav"; + repo = "caldav"; + tag = "v${version}"; + hash = "sha256-xtxWDlYESIwkow/YdjaUAkJ/x2jdUyhqfSRycJVLncY="; + }; + + build-system = [ + hatch-vcs + hatchling + ]; + + dependencies = [ + dnspython + lxml + niquests + icalendar + icalendar-searcher + recurring-ical-events + python-dateutil + pyyaml + ]; + + pythonImportsCheck = [ "caldav" ]; + + nativeCheckInputs = [ + manuel + proxy-py + pyfakefs + pytestCheckHook + (toPythonModule (radicale.override { python3 = python; })) + tzlocal + vobject + writableTmpDirAsHomeHook + ]; + + disabledTests = [ + # test contacts CalDAV servers on the internet + "test_rfc8764_test_conf" + # succeeds with Xandikos but fails with Radicale + "testConfigfile" + ]; + + __darwinAllowLocalNetworking = true; + + meta = { + changelog = "https://github.com/python-caldav/caldav/blob/${src.tag}/CHANGELOG.md"; + description = "CalDAV (RFC4791) client library"; + homepage = "https://github.com/python-caldav/caldav"; + license = lib.licenses.asl20; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 47db72e8d5be..3288394554b2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2472,6 +2472,8 @@ self: super: with self; { caldav = callPackage ../development/python-modules/caldav { }; + caldav_2 = callPackage ../development/python-modules/caldav/2.nix { }; + callee = callPackage ../development/python-modules/callee { }; calmjs = callPackage ../development/python-modules/calmjs { };