1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 pytestCheckHook,
7 poetry-core,
8 datetime,
9 httplib2,
10 icalendar,
11 python-dateutil,
12 pytz,
13}:
14
15buildPythonPackage rec {
16 pname = "icalevents";
17 version = "0.1.27";
18 pyproject = true;
19
20 disabled = pythonOlder "3.9";
21
22 src = fetchFromGitHub {
23 owner = "jazzband";
24 repo = pname;
25 rev = "refs/tags/v${version}";
26 hash = "sha256-vSYQEJFBjXUF4WwEAtkLtcO3y/am00jGS+8Vj+JMMqQ=";
27 };
28
29 nativeBuildInputs = [
30 poetry-core
31 ];
32
33 propagatedBuildInputs = [
34 datetime
35 httplib2
36 icalendar
37 python-dateutil
38 pytz
39 ];
40
41 pythonRelaxDeps = [
42 "datetime"
43 "httplib2"
44 "icalendar"
45 "pytz"
46 ];
47
48 nativeCheckInputs = [ pytestCheckHook ];
49
50 disabledTests = [
51 # Makes HTTP calls
52 "test_events_url"
53 "test_events_async_url"
54 ];
55
56 pythonImportsCheck = [ "icalevents" ];
57
58 meta = with lib; {
59 changelog = "https://github.com/jazzband/icalevents/releases/tag/v${version}";
60 description = "Python module for iCal URL/file parsing and querying";
61 homepage = "https://github.com/jazzband/icalevents";
62 maintainers = with maintainers; [ jamiemagee ];
63 license = licenses.mit;
64 };
65}