[project] name = "python-repositories" version = "0.1.0" description = "Various python repository interfaces exposed as a python package." authors = [ { name = "Brian Bjarke Jensen", email = "schnitzelen@gmail.com" } ] readme = "README.md" requires-python = ">=3.12" license = { text = "MIT" } classifiers = [ "Programming Language :: Python :: 3", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", ] dependencies = [ "python-utils>=0.1.0", "structlog>=25.4.0", ] [project.optional-dependencies] redis = [ "redis>=6.4.0", ] [tool.uv.sources] python-utils = { index = "gitea" } [[tool.uv.index]] name = "threadripper-proxpi-cache" url = "http://10.0.0.2:5001/index/" default = true [[tool.uv.index]] name = "gitea" url = "https://gitea.gt-proj.com/api/packages/brian/pypi/simple/" explicit = true [tool.mypy] python_version = "3.10" warn_return_any = true # nudge to use stricter types warn_unused_configs = true # nudge to remove unused configs disallow_untyped_defs = true # disallow untyped function definitions disallow_incomplete_defs = true # ensure all parts of a function has type annotation check_untyped_defs = true # dont skip untyped functions disallow_untyped_decorators = false # allow untyped decorators to keep code more readable no_implicit_optional = true # disallow implicit optional types leading to None-mess warn_redundant_casts = true # nudge to use explicit type casts warn_unused_ignores = true # nudge to remove unused ignores warn_no_return = true # catch missing return statements warn_unreachable = true # catch unreachable code show_error_codes = true # show error codes in output explicit_package_bases = true # reduce risk of import confusion namespace_packages = true # enable namespace packages [dependency-groups] dev = [ "mypy>=1.17.1", "pre-commit>=4.3.0", "pytest>=8.4.1", "pyupgrade>=3.20.0", "ruff>=0.12.11", "safety>=3.6.0", "types-redis>=4.6.0.20241004", ]