nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 70 lines 1.7 kB view raw
1{ 2 lib, 3 aiohttp, 4 buildPythonPackage, 5 fastapi, 6 fetchFromGitHub, 7 flask, 8 httpx, 9 mypy-boto3-s3, 10 numpy, 11 pydantic, 12 pytest-asyncio, 13 pytestCheckHook, 14 pyyaml, 15 scipy, 16 setuptools, 17}: 18 19buildPythonPackage rec { 20 pname = "dependency-injector"; 21 version = "4.48.3"; 22 pyproject = true; 23 24 src = fetchFromGitHub { 25 owner = "ets-labs"; 26 repo = "python-dependency-injector"; 27 tag = version; 28 hash = "sha256-J4M4SM256vZa2JUhagcbKu+DAUk1Op9HN+WpLL6ScBc="; 29 }; 30 31 build-system = [ setuptools ]; 32 33 optional-dependencies = { 34 aiohttp = [ aiohttp ]; 35 pydantic = [ pydantic ]; 36 flask = [ flask ]; 37 yaml = [ pyyaml ]; 38 }; 39 40 nativeCheckInputs = [ 41 fastapi 42 httpx 43 mypy-boto3-s3 44 numpy 45 pytest-asyncio 46 pytestCheckHook 47 scipy 48 ] 49 ++ lib.concatAttrValues optional-dependencies; 50 51 pythonImportsCheck = [ "dependency_injector" ]; 52 53 disabledTestPaths = [ 54 # Exclude tests for EOL Python releases 55 "tests/unit/ext/test_aiohttp_py35.py" 56 "tests/unit/wiring/test_*_py36.py" 57 "tests/unit/providers/configuration/test_from_pydantic_py36.py" 58 "tests/unit/providers/configuration/test_pydantic_settings_in_init_py36.py" 59 ]; 60 61 meta = { 62 description = "Dependency injection microframework for Python"; 63 homepage = "https://github.com/ets-labs/python-dependency-injector"; 64 changelog = "https://github.com/ets-labs/python-dependency-injector/blob/${src.tag}/docs/main/changelog.rst"; 65 license = lib.licenses.bsd3; 66 maintainers = with lib.maintainers; [ gerschtli ]; 67 # https://github.com/ets-labs/python-dependency-injector/issues/726 68 broken = lib.versionAtLeast pydantic.version "2"; 69 }; 70}