1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 hatchling,
7 httpx,
8 typing-extensions,
9}:
10buildPythonPackage rec {
11 pname = "gotenberg-client";
12 version = "0.11.0";
13 pyproject = true;
14
15 src = fetchFromGitHub {
16 owner = "stumpylog";
17 repo = "gotenberg-client";
18 tag = version;
19 hash = "sha256-a/GXVhZtxGgmx5mb8hozbXAI9ecrl0c6BIz3BNekA8Q=";
20 };
21
22 build-system = [ hatchling ];
23
24 dependencies = [
25 httpx
26 ]
27 ++ lib.optionals (pythonOlder "3.11") [ typing-extensions ]
28 ++ httpx.optional-dependencies.http2;
29
30 # requires running gotenberg service
31 doCheck = false;
32
33 pythonImportsCheck = [ "gotenberg_client" ];
34
35 meta = with lib; {
36 description = "Python client for interfacing with the Gotenberg API";
37 homepage = "https://github.com/stumpylog/gotenberg-client";
38 changelog = "https://github.com/stumpylog/gotenberg-client/blob/${src.tag}/CHANGELOG.md";
39 license = licenses.mpl20;
40 maintainers = with maintainers; [ leona ];
41 };
42}