1{ lib
2, python-dateutil
3, buildPythonPackage
4, emoji
5, fetchFromGitHub
6, freezegun
7, tzdata
8, pyparsing
9, pydantic
10, pytest-asyncio
11, pytest-benchmark
12, pytest-golden
13, pytestCheckHook
14, pythonOlder
15, pythonRelaxDepsHook
16, pyyaml
17}:
18
19buildPythonPackage rec {
20 pname = "ical";
21 version = "5.1.1";
22 format = "setuptools";
23
24 disabled = pythonOlder "3.10";
25
26 src = fetchFromGitHub {
27 owner = "allenporter";
28 repo = pname;
29 rev = "refs/tags/${version}";
30 hash = "sha256-ewKQzjtVgx9c6h67epgFNhY4MjR7kFNCr4EKZ+UF2xA=";
31 };
32
33 nativeBuildInputs = [
34 pythonRelaxDepsHook
35 ];
36
37 pythonRelaxDeps = [
38 "tzdata"
39 ];
40
41 propagatedBuildInputs = [
42 emoji
43 python-dateutil
44 tzdata
45 pydantic
46 pyparsing
47 ];
48
49 nativeCheckInputs = [
50 freezegun
51 pytest-asyncio
52 pytest-benchmark
53 pytest-golden
54 pytestCheckHook
55 pyyaml
56 ];
57
58 pythonImportsCheck = [
59 "ical"
60 ];
61
62 meta = with lib; {
63 description = "Library for handling iCalendar";
64 homepage = "https://github.com/allenporter/ical";
65 changelog = "https://github.com/allenporter/ical/releases/tag/${version}";
66 license = licenses.asl20;
67 maintainers = with maintainers; [ dotlambda ];
68 };
69}