[project] name = "artifactapi" dynamic = ["version"] description = "Generic artifact caching system with support for various package managers" dependencies = [ "fastapi>=0.104.0", "uvicorn[standard]>=0.24.0", "httpx>=0.25.0", "redis>=5.0.0", "boto3>=1.29.0", "psycopg2-binary>=2.9.0", "pyyaml>=6.0", "lxml>=4.9.0", "prometheus-client>=0.19.0", "python-multipart>=0.0.6", "msgpack>=1.0.0", ] requires-python = ">=3.11" readme = "README.md" license = {text = "MIT"} [project.scripts] artifactapi = "artifactapi.main:main" [build-system] requires = ["hatchling", "hatch-vcs"] build-backend = "hatchling.build" [tool.hatch.version] source = "vcs" [tool.hatch.metadata] allow-direct-references = true [tool.hatch.build.targets.wheel] packages = ["src/artifactapi"] [project.optional-dependencies] dev = [ "pytest>=7.4.0", "pytest-asyncio>=0.21.0", "black>=23.9.0", "isort>=5.12.0", "mypy>=1.6.0", "ruff>=0.4.0", "tox>=4.0.0", "pre-commit>=3.0.0", ] [tool.pytest.ini_options] asyncio_mode = "auto" testpaths = ["tests"] [tool.ruff] line-length = 140 [tool.ruff.lint] select = ["E", "F", "I", "UP"] ignore = ["E501"]