1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 deprecation,
7 flask,
8 pydantic,
9 pytestCheckHook,
10 requests,
11 sanic,
12 sanic-testing,
13}:
14
15buildPythonPackage rec {
16 pname = "cloudevents";
17 version = "1.12.0";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "cloudevents";
22 repo = "sdk-python";
23 tag = version;
24 hash = "sha256-0WdCBwYz3XJWjUP0gf+IWdF4ZgPHFvUZFoQp9taqNz8=";
25 };
26
27 build-system = [
28 setuptools
29 ];
30
31 pythonImportsCheck = [ "cloudevents" ];
32
33 nativeCheckInputs = [
34 deprecation
35 flask
36 pydantic
37 pytestCheckHook
38 requests
39 sanic
40 sanic-testing
41 ];
42
43 disabledTestPaths = [ "samples/http-image-cloudevents/image_sample_test.py" ];
44
45 __darwinAllowLocalNetworking = true;
46
47 meta = {
48 description = "Python SDK for CloudEvents";
49 homepage = "https://github.com/cloudevents/sdk-python";
50 changelog = "https://github.com/cloudevents/sdk-python/blob/${src.rev}/CHANGELOG.md";
51 license = lib.licenses.asl20;
52 maintainers = with lib.maintainers; [ GaetanLepage ];
53 };
54}