1{
2 lib,
3 aiomisc-pytest,
4 aiormq,
5 buildPythonPackage,
6 docker,
7 exceptiongroup,
8 fetchFromGitHub,
9 pamqp,
10 poetry-core,
11 pytestCheckHook,
12 pythonOlder,
13 shortuuid,
14 testcontainers,
15 wrapt,
16 yarl,
17}:
18
19buildPythonPackage rec {
20 pname = "aio-pika";
21 version = "9.5.5";
22 pyproject = true;
23
24 disabled = pythonOlder "3.9";
25
26 src = fetchFromGitHub {
27 owner = "mosquito";
28 repo = "aio-pika";
29 tag = version;
30 hash = "sha256-Gs01y1VRVgk5i4JI+fqtRo6mOyzBzHM/2hJPVenc+3g=";
31 };
32
33 build-system = [ poetry-core ];
34
35 dependencies = [
36 aiormq
37 exceptiongroup
38 yarl
39 ];
40
41 nativeCheckInputs = [
42 aiomisc-pytest
43 docker
44 pamqp
45 pytestCheckHook
46 shortuuid
47 testcontainers
48 wrapt
49 ];
50
51 disabledTests = [
52 # Tests attempt to connect to a RabbitMQ server
53 "test_connection_interleave"
54 "test_connection_happy_eyeballs_delay"
55 "test_robust_connection_interleave"
56 "test_robust_connection_happy_eyeballs_delay"
57 ];
58
59 disabledTestPaths = [
60 # Tests attempt to connect to a RabbitMQ server
61 "tests/test_amqp.py"
62 "tests/test_amqp_robust.py"
63 "tests/test_amqp_robust_proxy.py"
64 "tests/test_amqps.py"
65 "tests/test_master.py"
66 "tests/test_memory_leak.py"
67 "tests/test_rpc.py"
68 "tests/test_types.py"
69 ];
70
71 pythonImportsCheck = [ "aio_pika" ];
72
73 meta = with lib; {
74 description = "AMQP 0.9 client designed for asyncio and humans";
75 homepage = "https://github.com/mosquito/aio-pika";
76 changelog = "https://github.com/mosquito/aio-pika/blob/${version}/CHANGELOG.md";
77 license = licenses.asl20;
78 maintainers = with maintainers; [ emilytrau ];
79 };
80}