mirror of
https://github.com/arcan1s/ahriman.git
synced 2026-03-04 17:29:48 +00:00
This was initally generated by ai, but later has been heavily edited. The reason why it has been implemented is that there are plans to implement more features to ui, but it becomes hard to add new features to plain js, so I decided to rewrite it in typescript. Yet because it is still ai slop, it is still possible to enable old interface via configuration, even though new interface is turned on by default to get feedback
133 lines
2.4 KiB
TOML
133 lines
2.4 KiB
TOML
[build-system]
|
|
requires = ["flit_core"]
|
|
build-backend = "flit_core.buildapi"
|
|
|
|
[project]
|
|
name = "ahriman"
|
|
|
|
description = "ArcH linux ReposItory MANager"
|
|
readme = "README.md"
|
|
|
|
# Actually we are using features from the latest python, however, ubuntu, which is used for CI doesn't have it
|
|
requires-python = ">=3"
|
|
|
|
license = {file = "COPYING"}
|
|
authors = [
|
|
{name = "ahriman team"},
|
|
]
|
|
|
|
dependencies = [
|
|
"bcrypt",
|
|
"filelock",
|
|
"inflection",
|
|
"pyelftools",
|
|
"requests",
|
|
]
|
|
|
|
dynamic = ["version"]
|
|
|
|
[project.optional-dependencies]
|
|
journald = [
|
|
"systemd-python",
|
|
]
|
|
# FIXME technically this dependency is required, but in some cases we do not have access to
|
|
# the libalpm which is required in order to install the package. Thus in case if we do not
|
|
# really need to run the application we can move it to "optional" dependencies
|
|
pacman = [
|
|
"pyalpm",
|
|
]
|
|
reports = [
|
|
"Jinja2",
|
|
]
|
|
s3 = [
|
|
"boto3",
|
|
]
|
|
shell = [
|
|
"IPython"
|
|
]
|
|
stats = [
|
|
"matplotlib",
|
|
]
|
|
unixsocket = [
|
|
"requests-unixsocket2", # required by unix socket support
|
|
]
|
|
validator = [
|
|
"cerberus",
|
|
]
|
|
web = [
|
|
"aiohttp",
|
|
"aiohttp_cors",
|
|
"aiohttp_jinja2",
|
|
]
|
|
web-auth = [
|
|
"ahriman[web]",
|
|
"aiohttp_session",
|
|
"aiohttp_security",
|
|
"cryptography",
|
|
]
|
|
web-docs = [
|
|
"ahriman[web]",
|
|
"aiohttp-apispec",
|
|
"setuptools", # required by aiohttp-apispec
|
|
]
|
|
web-metrics = [
|
|
"ahriman[web]",
|
|
"aiohttp-openmetrics",
|
|
]
|
|
web-oauth2 = [
|
|
"ahriman[web-auth]",
|
|
"aioauth-client",
|
|
]
|
|
|
|
[project.scripts]
|
|
ahriman = "ahriman.application.ahriman:run"
|
|
|
|
[project.urls]
|
|
Documentation = "https://ahriman.readthedocs.io/"
|
|
Repository = "https://github.com/arcan1s/ahriman"
|
|
Changelog = "https://github.com/arcan1s/ahriman/releases"
|
|
|
|
[dependency-groups]
|
|
check = [
|
|
"autopep8",
|
|
"bandit",
|
|
"mypy",
|
|
"pylint",
|
|
]
|
|
docs = [
|
|
"Sphinx",
|
|
"argparse-manpage",
|
|
"pydeps",
|
|
"shtab",
|
|
"sphinx-argparse",
|
|
"sphinx-rtd-theme>=1.1.1", # https://stackoverflow.com/a/74355734
|
|
]
|
|
tests = [
|
|
"pytest",
|
|
"pytest-aiohttp",
|
|
"pytest-cov",
|
|
"pytest-helpers-namespace",
|
|
"pytest-mock",
|
|
"pytest-resource-path",
|
|
"pytest-spec",
|
|
]
|
|
|
|
[tool.flit.sdist]
|
|
include = [
|
|
"AUTHORS",
|
|
"CONTRIBUTING.md",
|
|
"SECURITY.md",
|
|
"package",
|
|
"frontend",
|
|
"subpackages.py",
|
|
"web.png",
|
|
]
|
|
exclude = [
|
|
"package/archlinux",
|
|
"frontend/node_modules",
|
|
"frontend/package-lock.json",
|
|
]
|
|
|
|
[tool.flit.external-data]
|
|
directory = "package"
|