diff --git a/pkgs/development/python-modules/mypyllant/default.nix b/pkgs/development/python-modules/mypyllant/default.nix new file mode 100644 index 000000000000..77f1f0c9980f --- /dev/null +++ b/pkgs/development/python-modules/mypyllant/default.nix @@ -0,0 +1,73 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + + # build-system + hatch-vcs, + hatchling, + + # dependencies + aiohttp, + pydantic, + + # tests + aioresponses, + country-list, + freezegun, + pytest-asyncio, + pytest-cov-stub, + pytest-mock, + pytest-xdist, + pytestCheckHook, + pyyaml, + requests, +}: + +buildPythonPackage rec { + pname = "mypyllant"; + version = "0.9.8"; + pyproject = true; + + src = fetchFromGitHub { + owner = "signalkraft"; + repo = "myPyllant"; + tag = "v${version}"; + hash = "sha256-eneAFJ4xRL8EKj8Act/YcW7Gx0B85u0g3LTWPlI/B/0="; + }; + + build-system = [ + hatch-vcs + hatchling + ]; + + dependencies = [ + aiohttp + pydantic + ]; + + nativeCheckInputs = [ + aioresponses + country-list + freezegun + pytest-asyncio + pytest-cov-stub + pytest-mock + pytest-xdist + pytestCheckHook + pyyaml + requests + ]; + + pythonImportsCheck = [ + "myPyllant" + ]; + + meta = { + description = "Python library to interact with the API behind the myVAILLANT app"; + homepage = "https://github.com/signalkraft/myPyllant"; + changelog = "https://github.com/signalkraft/myPyllant/releases/tag/${src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ urbas ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1affacb053db..8cc15e7f89b4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10433,6 +10433,8 @@ self: super: with self; { mypy-protobuf = callPackage ../development/python-modules/mypy-protobuf { }; + mypyllant = callPackage ../development/python-modules/mypyllant { }; + mysql-connector = callPackage ../development/python-modules/mysql-connector { }; mysqlclient = callPackage ../development/python-modules/mysqlclient { };