1{ lib
2, aiohttp
3, buildPythonPackage
4, fastapi
5, fetchFromGitHub
6, flask
7, httpx
8, mypy-boto3-s3
9, numpy
10, scipy
11, pydantic
12, pytestCheckHook
13, pyyaml
14, six
15}:
16
17buildPythonPackage rec {
18 pname = "dependency-injector";
19 version = "4.35.3";
20
21 src = fetchFromGitHub {
22 owner = "ets-labs";
23 repo = "python-dependency-injector";
24 rev = version;
25 sha256 = "sha256-2qe4A2T3EagNCh1zSbPWblVN7p9NH8rNwQQVyESJTdk=";
26 };
27
28 propagatedBuildInputs = [
29 six
30 ];
31
32 checkInputs = [
33 aiohttp
34 fastapi
35 flask
36 httpx
37 mypy-boto3-s3
38 numpy
39 pydantic
40 scipy
41 pytestCheckHook
42 pyyaml
43 ];
44
45 postPatch = ''
46 substituteInPlace requirements.txt \
47 --replace "six>=1.7.0,<=1.15.0" "six"
48 '';
49
50 disabledTestPaths = [
51 # There is no unique identifier to disable the one failing test
52 "tests/unit/ext/test_aiohttp_py35.py"
53 ];
54
55 pythonImportsCheck = [ "dependency_injector" ];
56
57 meta = with lib; {
58 description = "Dependency injection microframework for Python";
59 homepage = "https://github.com/ets-labs/python-dependency-injector";
60 license = licenses.bsd3;
61 maintainers = with maintainers; [ gerschtli ];
62 };
63}