From f1867387025060e9c106ce9c66f10133c2d51984 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 2 Aug 2023 20:36:50 +0200 Subject: [PATCH] python310Packages.aiomqtt: init at 1.0.0 --- .../python-modules/aiomqtt/default.nix | 67 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 69 insertions(+) create mode 100644 pkgs/development/python-modules/aiomqtt/default.nix diff --git a/pkgs/development/python-modules/aiomqtt/default.nix b/pkgs/development/python-modules/aiomqtt/default.nix new file mode 100644 index 00000000000..17f2cb45e6a --- /dev/null +++ b/pkgs/development/python-modules/aiomqtt/default.nix @@ -0,0 +1,67 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, fetchpatch + +# build-system +, poetry-core +, poetry-dynamic-versioning + +# dependencies +, paho-mqtt +, typing-extensions + +# tests +, anyio +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "aiomqtt"; + version = "1.0.0"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "sbtinstruments"; + repo = "aiomqtt"; + rev = "v${version}"; + hash = "sha256-ct4KIGxiC5m0yrid0tOa/snO9oErxbqhLLH9kD69aEQ="; + }; + + patches = [ + (fetchpatch { + # adds test marker for network access + url = "https://github.com/sbtinstruments/aiomqtt/commit/225c1bfc99bc6ff908bd03c1115963e43ab8a9e6.patch"; + hash = "sha256-UMEwCoX2mWBA7+p+JujkH5fc9sd/2hbb28EJ0fN24z4="; + }) + ]; + + nativeBuildInputs = [ + poetry-core + poetry-dynamic-versioning + ]; + + propagatedBuildInputs = [ + paho-mqtt + typing-extensions + ]; + + pythonImportsCheck = [ "aiomqtt" ]; + + nativeCheckInputs = [ + anyio + pytestCheckHook + ]; + + pytestFlagsArray = [ + "-m" "'not network'" + ]; + + meta = with lib; { + description = "The idiomatic asyncio MQTT client, wrapped around paho-mqtt"; + homepage = "https://github.com/sbtinstruments/aiomqtt"; + changelog = "https://github.com/sbtinstruments/aiomqtt/blob/${src.rev}/CHANGELOG.md"; + license = licenses.bsd3; + maintainers = with maintainers; [ ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 83b45cde21b..07c3a3732bd 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -268,6 +268,8 @@ self: super: with self; { aiomodernforms = callPackage ../development/python-modules/aiomodernforms { }; + aiomqtt = callPackage ../development/python-modules/aiomqtt { }; + aiomultiprocess = callPackage ../development/python-modules/aiomultiprocess { }; aiomusiccast = callPackage ../development/python-modules/aiomusiccast { };