1{
2 lib,
3 buildPythonPackage,
4 pythonOlder,
5 fetchFromGitHub,
6 setuptools,
7 requests,
8 distro,
9 click,
10 typing-extensions,
11 matrix-nio,
12 pytestCheckHook,
13}:
14
15buildPythonPackage rec {
16 pname = "zulip";
17 version = "0.9.0";
18
19 disabled = pythonOlder "3.8";
20
21 pyproject = true;
22
23 # no sdist on PyPI
24 src = fetchFromGitHub {
25 owner = "zulip";
26 repo = "python-zulip-api";
27 rev = version;
28 hash = "sha256-YnNXduZ2KOjRHGwhojkqpMP2mwhflk8/f4FVZL8NvHU=";
29 };
30 sourceRoot = "${src.name}/zulip";
31
32 nativeBuildInputs = [ setuptools ];
33
34 propagatedBuildInputs = [
35 requests
36 distro
37 click
38 typing-extensions
39 ]
40 ++ requests.optional-dependencies.security;
41
42 nativeCheckInputs = [
43 matrix-nio
44 pytestCheckHook
45 ];
46
47 pythonImportsCheck = [ "zulip" ];
48
49 meta = with lib; {
50 description = "Bindings for the Zulip message API";
51 homepage = "https://github.com/zulip/python-zulip-api";
52 license = licenses.asl20;
53 maintainers = with maintainers; [ dotlambda ];
54 };
55}