1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4
5, hatch-fancy-pypi-readme
6, hatch-vcs
7, hatchling
8
9, tenacity
10, typing-extensions
11
12, anyio
13, pytestCheckHook
14}:
15
16buildPythonPackage rec {
17 pname = "stamina";
18 version = "24.2.0";
19 pyproject = true;
20
21 src = fetchFromGitHub {
22 owner = "hynek";
23 repo = "stamina";
24 rev = version;
25 hash = "sha256-gn8kbLLj+wMPtIwnsOdKDEhBsLApkl3K6mf/bQT3qT8=";
26 };
27
28 nativeBuildInputs = [
29 hatch-fancy-pypi-readme
30 hatch-vcs
31 hatchling
32 ];
33
34 propagatedBuildInputs = [
35 tenacity
36 typing-extensions
37 ];
38
39 pythonImportsCheck = [ "stamina" ];
40
41 nativeCheckInputs = [
42 pytestCheckHook
43 anyio
44 ];
45
46 meta = with lib; {
47 description = "Production-grade retries for Python";
48 homepage = "https://github.com/hynek/stamina";
49 changelog = "https://github.com/hynek/stamina/blob/${src.rev}/CHANGELOG.md";
50 license = licenses.mit;
51 maintainers = with maintainers; [ mbalatsko ];
52 };
53}