61 lines
1.4 KiB
TOML
61 lines
1.4 KiB
TOML
[build-system]
|
|
requires = ["hatchling>=1.25"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "imagefind"
|
|
version = "0.5.45"
|
|
description = "Private, local-first AI media library for fnOS"
|
|
readme = "README.md"
|
|
requires-python = ">=3.11,<3.14"
|
|
license = { text = "Apache-2.0" }
|
|
dependencies = [
|
|
"argon2-cffi>=23.1,<26",
|
|
"anyio>=4.6,<4.9",
|
|
# cryptography 45 Linux wheels require glibc 2.34; fnOS release baseline is glibc 2.28.
|
|
"cryptography>=43,<45",
|
|
"fastapi>=0.115,<0.119",
|
|
"httpx>=0.27,<1",
|
|
"pillow>=10.4,<13",
|
|
"pydantic-settings>=2.6,<3",
|
|
"python-multipart>=0.0.12,<1",
|
|
"psycopg[binary]>=3.2,<4",
|
|
"starlette>=0.40,<0.49",
|
|
"uvicorn[standard]>=0.30,<1",
|
|
"watchfiles>=0.24,<2",
|
|
"zhconv==1.4.1",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
ai = [
|
|
"numpy>=1.26,<3",
|
|
"openvino>=2025.0,<2027",
|
|
"optimum-intel[openvino]>=1.27,<2",
|
|
"opencv-python-headless>=4.10,<5",
|
|
"rapidocr-onnxruntime>=1.4,<2",
|
|
"sentence-transformers[openvino]>=3.3,<6",
|
|
]
|
|
dev = [
|
|
"hatchling>=1.25,<2",
|
|
"pytest>=8.3,<10",
|
|
"pytest-asyncio>=0.24,<2",
|
|
"ruff>=0.8,<1",
|
|
]
|
|
[project.scripts]
|
|
imagefind = "imagefind.main:run"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["backend/imagefind"]
|
|
|
|
[tool.pytest.ini_options]
|
|
pythonpath = ["backend"]
|
|
testpaths = ["tests"]
|
|
|
|
[tool.ruff]
|
|
line-length = 120
|
|
target-version = "py311"
|
|
extend-exclude = [".fnos-build-tools"]
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "I", "UP", "B"]
|