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/development/python-modules/caldav/default.nix b/pkgs/development/python-modules/caldav/default.nix index 2ad6b596042d..057a14eb3a5f 100644 --- a/pkgs/development/python-modules/caldav/default.nix +++ b/pkgs/development/python-modules/caldav/default.nix @@ -16,6 +16,7 @@ hatch-vcs, proxy-py, pyfakefs, + pytest-asyncio, python-dateutil, pyyaml, toPythonModule, @@ -27,14 +28,14 @@ buildPythonPackage rec { pname = "caldav"; - version = "2.2.6"; + version = "3.2.1"; pyproject = true; src = fetchFromGitHub { owner = "python-caldav"; repo = "caldav"; tag = "v${version}"; - hash = "sha256-xtxWDlYESIwkow/YdjaUAkJ/x2jdUyhqfSRycJVLncY="; + hash = "sha256-SCqc0MVxKaHpES+NkDcaItHlkk0kCFj6kFqH8k08vdA="; }; build-system = [ @@ -57,6 +58,7 @@ buildPythonPackage rec { manuel proxy-py pyfakefs + pytest-asyncio pytestCheckHook (toPythonModule (radicale.override { python3 = python; })) tzlocal @@ -65,11 +67,6 @@ buildPythonPackage rec { (toPythonModule (xandikos.override { python3Packages = python.pkgs; })) ]; - disabledTests = [ - # test contacts CalDAV servers on the internet - "test_rfc8764_test_conf" - ]; - __darwinAllowLocalNetworking = true; pythonImportsCheck = [ "caldav" ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index e930d470b54a..ec971815ffd5 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -86,6 +86,8 @@ let ]; }); + caldav = self.caldav_2; + gspread = super.gspread.overridePythonAttrs (oldAttrs: rec { version = "5.12.4"; src = fetchFromGitHub { 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 { };