content: [project]
  name = "poliloom"
  version = "0.1.0"
  description = "API/CLI for extracting politician metadata from Wikipedia and web sources to enrich Wikidata"
  readme = "README.md"
  requires-python = ">=3.12"
  dependencies = [
      "click>=8.0.0",
      "fastapi>=0.100.0",
      "uvicorn[standard]>=0.20.0",
      "sqlalchemy>=2.0.0",
      "alembic>=1.10.0",
      "pydantic>=2.0.0",
      "httpx>=0.24.0",
      "python-dotenv>=1.0.0",
      "openai>=1.0.0",
      "beautifulsoup4>=4.12.0",
      "python-jose[cryptography]>=3.3.0",
      "mwoauth>=0.3.7",
      "pg8000>=1.30.0",
      "cloud-sql-python-connector[pg8000]>=1.11.0",
      "pgvector>=0.2.0",
      "sentence-transformers>=2.2.0",
      "crawl4ai>=0.4.0",
      "unmhtml>=0.2.0",
      "google-cloud-storage>=2.10.0",
      "tqdm>=4.66.0",
      "indexed-bzip2>=1.5.0",
      "orjson>=3.11.3",
      "dicttoxml>=1.7.16",
  ]
  
  [project.optional-dependencies]
  cpu = [
    "torch>=2.7.0",
  ]
  cu128 = [
    "torch>=2.7.0",
  ]
  
  [project.scripts]
  poliloom = "poliloom.cli:main"
  
  [build-system]
  requires = ["hatchling"]
  build-backend = "hatchling.build"
  
  
  [tool.ruff]
  line-length = 88
  target-version = "py312"
  
  [tool.pytest.ini_options]
  asyncio_mode = "auto"
  env = [
      "DB_HOST=localhost",
      "DB_PORT=5433",
      "DB_NAME=poliloom_test",
      "DB_USER=postgres",
      "DB_PASSWORD=postgres"
  ]
  
  [dependency-groups]
  dev = [
      "pytest>=8.4.0",
      "pytest-asyncio>=1.0.0",
      "pytest-env>=1.1.0",
      "pre-commit>=3.0.0",
      "py-spy>=0.4.1",
  ]
  
  [tool.uv]
  conflicts = [
    [
      { extra = "cpu" },
      { extra = "cu128" },
    ],
  ]
  
  [tool.uv.sources]
  torch = [
    { index = "pytorch-cpu", extra = "cpu" },
    { index = "pytorch-cu128", extra = "cu128" },
  ]
  
  [[tool.uv.index]]
  name = "pytorch-cpu"
  url = "https://download.pytorch.org/whl/cpu"
  explicit = true
  
  [[tool.uv.index]]
  name = "pytorch-cu128"
  url = "https://download.pytorch.org/whl/cu128"
  explicit = true
  
  