[build-system]
requires = ["setuptools", "setuptools-scm"]
build-backend = "setuptools.build_meta"

[project]
name = "Sosse"
authors = [{ name = "Laurent Defert", email = "laurent_defert@yahoo.fr" }]
readme = "README.md"
description = "Open-source, enterprise-grade web search & archiving."
requires-python = ">=3.11"
keywords = ["search engine", "crawler", "scraping"]
license = "AGPL-3.0-only"
classifiers = ["Framework :: Django", "Programming Language :: Python :: 3"]
dynamic = ["version", "dependencies"]

[project.urls]
homepage = "https://sosse.io"
source = "https://gitlab.com/biolds1/sosse"
changelog = "https://gitlab.com/biolds1/sosse/-/blob/stable/CHANGELOG.md?ref_type=heads"
documentation = "https://sosse.readthedocs.io/en/stable/introduction.html"
issues = "https://github.com/biolds/sosse/issues"
funding = "https://sosse.io/fr/contact/"

[tool.setuptools]
packages = [
  "se",
  "se.deps.linkpreview",
  "se.deps.linkpreview.linkpreview",
  "se.deps.linkpreview.linkpreview.preview",
  "se.deps.fake-useragent",
  "se.deps.fake-useragent.src",
  "se.deps.fake-useragent.src.fake_useragent",
  "se.migrations",
  "se.management",
  "se.management.commands",
  "sosse",
]

[tool.setuptools.package-data]
se = ["*.html", "*.svg", "*.js", "*.css", "*.json"]

[tool.setuptools.dynamic]
version = { attr = "sosse.settings.SOSSE_VERSION_TAG" }
dependencies = { file = ["requirements.txt"] }

[tool.autopep8]
max_line_length = 1000

[tool.ruff]
line-length = 120

[tool.doc8]
# Ignore include failure since we include generated files
ignore = ["D000"]
max-line-length = 120

[tool.isort]
profile = "black"

[project.scripts]
sosse-admin = "sosse.sosse_admin:main"
