anki-bin: 24.06.3 -> 24.11 (#360722)
[NixPkgs.git] / pkgs / development / python-modules / nvchecker / default.nix
blob57f0a7c6824004dfe5eefbbf43f906ffd67d2fb1
2   lib,
3   platformdirs,
4   buildPythonPackage,
5   docutils,
6   fetchFromGitHub,
7   flaky,
8   installShellFiles,
9   pycurl,
10   pytest-asyncio,
11   pytest-httpbin,
12   pytestCheckHook,
13   pythonOlder,
14   setuptools,
15   structlog,
16   tomli,
17   tornado,
18   awesomeversion,
19   packaging,
20   lxml,
23 buildPythonPackage rec {
24   pname = "nvchecker";
25   version = "2.15.1";
26   pyproject = true;
28   disabled = pythonOlder "3.8";
30   src = fetchFromGitHub {
31     owner = "lilydjwg";
32     repo = "nvchecker";
33     rev = "v${version}";
34     hash = "sha256-dK3rZCoSukCzPOFVectQiF6qplUuDBh9qyN8JL0+j20=";
35   };
37   nativeBuildInputs = [
38     setuptools
39     docutils
40     installShellFiles
41   ];
43   propagatedBuildInputs = [
44     structlog
45     platformdirs
46     tornado
47     pycurl
48   ] ++ lib.optionals (pythonOlder "3.11") [ tomli ];
50   __darwinAllowLocalNetworking = true;
52   nativeCheckInputs = [
53     flaky
54     pytest-asyncio
55     pytest-httpbin
56     pytestCheckHook
57   ];
59   postBuild = ''
60     patchShebangs docs/myrst2man.py
61     make -C docs man
62   '';
64   postInstall = ''
65     installManPage docs/_build/man/nvchecker.1
66   '';
68   pythonImportsCheck = [ "nvchecker" ];
70   pytestFlagsArray = [ "-m 'not needs_net'" ];
72   optional-dependencies = {
73     # vercmp = [ pyalpm ];
74     awesomeversion = [ awesomeversion ];
75     pypi = [ packaging ];
76     htmlparser = [ lxml ];
77   };
79   meta = with lib; {
80     description = "New version checker for software";
81     homepage = "https://github.com/lilydjwg/nvchecker";
82     changelog = "https://github.com/lilydjwg/nvchecker/releases/tag/v${version}";
83     license = licenses.mit;
84     maintainers = [ ];
85   };