pytrainer: unpin python 3.10
[NixPkgs.git] / pkgs / development / python-modules / aioautomower / default.nix
blob8884f0ef904f760fcc90eca7c33274e13ccad424
2   lib,
3   aiohttp,
4   buildPythonPackage,
5   fetchFromGitHub,
6   freezegun,
7   ical,
8   mashumaro,
9   poetry-core,
10   pyjwt,
11   pytest-asyncio,
12   pytestCheckHook,
13   pythonOlder,
14   syrupy,
17 buildPythonPackage rec {
18   pname = "aioautomower";
19   version = "2024.10.0";
20   pyproject = true;
22   disabled = pythonOlder "3.11";
24   src = fetchFromGitHub {
25     owner = "Thomas55555";
26     repo = "aioautomower";
27     rev = "refs/tags/${version}";
28     hash = "sha256-qWXFkz1yIpSDGFilVZK0n+hEUs7osfO+2xfknr2cOZY=";
29   };
31   postPatch = ''
32     # Upstream doesn't set a version
33     substituteInPlace pyproject.toml \
34       --replace-fail 'version = "0.0.0"' 'version = "${version}"' \
35       --replace-fail "--cov" ""
36   '';
38   build-system = [ poetry-core ];
40   dependencies = [
41     aiohttp
42     ical
43     mashumaro
44     pyjwt
45   ];
47   nativeCheckInputs = [
48     freezegun
49     pytest-asyncio
50     pytestCheckHook
51     syrupy
52   ];
54   pythonImportsCheck = [ "aioautomower" ];
56   pytestFlagsArray = [ "--snapshot-update" ];
58   disabledTests = [
59     # File is missing
60     "test_standard_mower"
61     # Call no found
62     "test_post_commands"
63   ];
65   meta = with lib; {
66     description = "Module to communicate with the Automower Connect API";
67     homepage = "https://github.com/Thomas55555/aioautomower";
68     changelog = "https://github.com/Thomas55555/aioautomower/releases/tag/${version}";
69     license = licenses.asl20;
70     maintainers = with maintainers; [ fab ];
71   };