diff --git a/pkgs/development/python-modules/aiocache/default.nix b/pkgs/development/python-modules/aiocache/default.nix new file mode 100644 index 00000000000..54979dbd7ba --- /dev/null +++ b/pkgs/development/python-modules/aiocache/default.nix @@ -0,0 +1,34 @@ +{ lib +, aioredis +, buildPythonPackage +, fetchFromGitHub +, msgpack +}: + +buildPythonPackage rec { + pname = "aiocache"; + version = "0.11.1"; + + src = fetchFromGitHub { + owner = "aio-libs"; + repo = pname; + rev = version; + sha256 = "1czs8pvhzi92qy2dch2995rb62mxpbhd80dh2ir7zpa9qcm6wxvx"; + }; + + propagatedBuildInputs = [ + aioredis + msgpack + ]; + + # aiomcache would be required but last release was in 2017 + doCheck = false; + pythonImportsCheck = [ "aiocache" ]; + + meta = with lib; { + description = "Python API Rate Limit Decorator"; + homepage = "https://github.com/tomasbasham/ratelimit"; + license = with licenses; [ bsd3 ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/pyflunearyou/default.nix b/pkgs/development/python-modules/pyflunearyou/default.nix new file mode 100644 index 00000000000..9b77cc61de6 --- /dev/null +++ b/pkgs/development/python-modules/pyflunearyou/default.nix @@ -0,0 +1,56 @@ +{ lib +, aiohttp +, aresponses +, aiocache +, buildPythonPackage +, fetchFromGitHub +, poetry-core +, pytest-asyncio +, pytest-aiohttp +, pytestCheckHook +, pythonOlder +, msgpack +, ujson +}: + +buildPythonPackage rec { + pname = "pyflunearyou"; + version = "2.0.0"; + format = "pyproject"; + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "bachya"; + repo = pname; + rev = version; + sha256 = "18vxwfyvicbx8idpa0h0alp4ygnwfph6g4kq93hfm0fc94gi6h94"; + }; + + nativeBuildInputs = [ poetry-core ]; + + propagatedBuildInputs = [ + aiohttp + aiocache + msgpack + ujson + ]; + + checkInputs = [ + aresponses + pytest-asyncio + pytest-aiohttp + pytestCheckHook + ]; + + # Ignore the examples directory as the files are prefixed with test_. + # disabledTestFiles doesn't seem to work here + pytestFlagsArray = [ "--ignore examples/" ]; + pythonImportsCheck = [ "pyflunearyou" ]; + + meta = with lib; { + description = "Python library for retrieving UV-related information from Flu Near You"; + homepage = "https://github.com/bachya/pyflunearyou"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index a4e480c4550..febfc7fdea7 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -265,7 +265,7 @@ "flo" = ps: with ps; [ aioflo ]; "flock" = ps: with ps; [ ]; "flume" = ps: with ps; [ pyflume ]; - "flunearyou" = ps: with ps; [ ]; # missing inputs: pyflunearyou + "flunearyou" = ps: with ps; [ pyflunearyou ]; "flux" = ps: with ps; [ ]; "flux_led" = ps: with ps; [ flux-led ]; "folder" = ps: with ps; [ ]; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9bb0d380e66..f9034877ecb 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -210,6 +210,8 @@ in { aioasuswrt = callPackage ../development/python-modules/aioasuswrt { }; + aiocache = callPackage ../development/python-modules/aiocache { }; + aiocoap = callPackage ../development/python-modules/aiocoap { }; aioconsole = callPackage ../development/python-modules/aioconsole { }; @@ -5466,6 +5468,8 @@ in { pyflume = callPackage ../development/python-modules/pyflume { }; + pyflunearyou = callPackage ../development/python-modules/pyflunearyou { }; + pyfma = callPackage ../development/python-modules/pyfma { }; pyfribidi = callPackage ../development/python-modules/pyfribidi { };