1{
2 lib,
3 anyio,
4 buildPythonPackage,
5 fetchFromGitHub,
6 paho-mqtt,
7 poetry-core,
8 poetry-dynamic-versioning,
9 pytestCheckHook,
10 pythonOlder,
11 typing-extensions,
12}:
13
14buildPythonPackage rec {
15 pname = "aiomqtt";
16 version = "2.0.1";
17 pyproject = true;
18
19 disabled = pythonOlder "3.8";
20
21 src = fetchFromGitHub {
22 owner = "sbtinstruments";
23 repo = "aiomqtt";
24 rev = "refs/tags/v${version}";
25 hash = "sha256-bV1elEO1518LVLwNDN5pzjxRgcG34K1XUsK7fTw8h+8=";
26 };
27
28 build-system = [
29 poetry-core
30 poetry-dynamic-versioning
31 ];
32
33 dependencies = [
34 paho-mqtt
35 typing-extensions
36 ];
37
38 nativeCheckInputs = [
39 anyio
40 pytestCheckHook
41 ];
42
43 pythonImportsCheck = [ "aiomqtt" ];
44
45 pytestFlagsArray = [
46 "-m"
47 "'not network'"
48 ];
49
50 meta = with lib; {
51 description = "The idiomatic asyncio MQTT client, wrapped around paho-mqtt";
52 homepage = "https://github.com/sbtinstruments/aiomqtt";
53 changelog = "https://github.com/sbtinstruments/aiomqtt/blob/${src.rev}/CHANGELOG.md";
54 license = licenses.bsd3;
55 maintainers = with maintainers; [ ];
56 };
57}