diff --git a/pkgs/development/python-modules/caldav/default.nix b/pkgs/development/python-modules/caldav/default.nix index 6d63948032ef..e6835896bd1a 100644 --- a/pkgs/development/python-modules/caldav/default.nix +++ b/pkgs/development/python-modules/caldav/default.nix @@ -1,8 +1,10 @@ { lib, buildPythonPackage, + dnspython, fetchFromGitHub, icalendar, + icalendar-searcher, lxml, manuel, pytestCheckHook, @@ -23,14 +25,14 @@ buildPythonPackage rec { pname = "caldav"; - version = "2.1.0"; + version = "2.2.1"; pyproject = true; src = fetchFromGitHub { owner = "python-caldav"; repo = "caldav"; tag = "v${version}"; - hash = "sha256-iVM3dBG2CNaMOUlEM0nGVKYUZHfX0LKjars7HJ1QWC0="; + hash = "sha256-FsIF4BcwAUyYw8J7o4j4CnSd8eIc1Yd5WtxErC6RZ7Y="; }; build-system = [ @@ -39,9 +41,11 @@ buildPythonPackage rec { ]; dependencies = [ + dnspython lxml requests icalendar + icalendar-searcher recurring-ical-events ]; @@ -57,6 +61,11 @@ buildPythonPackage rec { (toPythonModule (xandikos.override { python3Packages = python.pkgs; })) ]; + disabledTests = [ + # test contacts CalDAV servers on the internet + "test_rfc8764_test_conf" + ]; + pythonImportsCheck = [ "caldav" ]; meta = with lib; { diff --git a/pkgs/development/python-modules/icalendar-searcher/default.nix b/pkgs/development/python-modules/icalendar-searcher/default.nix new file mode 100644 index 000000000000..7f74cb63aa2c --- /dev/null +++ b/pkgs/development/python-modules/icalendar-searcher/default.nix @@ -0,0 +1,53 @@ +{ + buildPythonPackage, + fetchFromGitHub, + icalendar, + lib, + poetry-core, + poetry-dynamic-versioning, + pyicu, + pytestCheckHook, + recurring-ical-events, +}: + +buildPythonPackage rec { + pname = "icalendar-searcher"; + version = "1.0.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "python-caldav"; + repo = "icalendar-searcher"; + tag = "v${version}"; + hash = "sha256-RwWm41+7AyoqwVGBaa+50ljUILJG5kCD4LMsULWjVEM="; + }; + + build-system = [ + poetry-core + poetry-dynamic-versioning + ]; + + dependencies = [ + icalendar + recurring-ical-events + ]; + + optional-dependencies = { + collation = [ pyicu ]; + }; + + pythonImportsCheck = [ "icalendar_searcher" ]; + + nativeCheckInputs = [ + pytestCheckHook + ] + ++ lib.concatAttrValues optional-dependencies; + + meta = { + changelog = "https://github.com/python-caldav/icalendar-searcher/blob/${src.tag}/CHANGELOG.md"; + description = "Search, filter and sort iCalendar components"; + homepage = "https://github.com/python-caldav/icalendar-searcher"; + license = lib.licenses.agpl3Only; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index be3582af3f87..00be61f86bc3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7103,6 +7103,8 @@ self: super: with self; { icalendar-compatibility = callPackage ../development/python-modules/icalendar-compatibility { }; + icalendar-searcher = callPackage ../development/python-modules/icalendar-searcher { }; + icalevents = callPackage ../development/python-modules/icalevents { }; icdiff = callPackage ../development/python-modules/icdiff { };