1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 pythonOlder,
7 aiodns,
8 aiohttp,
9 backports-zoneinfo,
10 pytestCheckHook,
11}:
12
13buildPythonPackage rec {
14 pname = "forecast-solar";
15 version = "3.1.0";
16 pyproject = true;
17
18 src = fetchFromGitHub {
19 owner = "home-assistant-libs";
20 repo = "forecast_solar";
21 rev = "refs/tags/v${version}";
22 hash = "sha256-iol0XtfPZI95o/uEyBcXgeQjcfl2kI+4mugtywa6BXI=";
23 };
24
25 build-system = [ setuptools ];
26
27 env.PACKAGE_VERSION = version;
28
29 dependencies = [
30 aiodns
31 aiohttp
32 ] ++ lib.optionals (pythonOlder "3.9") [ backports-zoneinfo ];
33
34 pythonImportsCheck = [ "forecast_solar" ];
35
36 nativeCheckInputs = [ pytestCheckHook ];
37
38 meta = with lib; {
39 changelog = "https://github.com/home-assistant-libs/forecast_solar/releases/tag/v${version}";
40 description = "Asynchronous Python client for getting forecast solar information";
41 homepage = "https://github.com/home-assistant-libs/forecast_solar";
42 license = licenses.mit;
43 maintainers = with maintainers; [ dotlambda ];
44 };
45}