146 lines
4.5 KiB
TOML
146 lines
4.5 KiB
TOML
[project]
|
|
name = "archivebox"
|
|
version = "0.7.3"
|
|
description = "Self-hosted internet archiving solution."
|
|
authors = [
|
|
{name = "Nick Sweeting", email = "pyproject.toml@archivebox.io"},
|
|
]
|
|
license = {text = "MIT"}
|
|
readme = "README.md"
|
|
package-dir = "archivebox"
|
|
requires-python = ">=3.9,<3.12"
|
|
dependencies = [
|
|
# pdm update [--unconstrained]
|
|
"croniter>=0.3.34",
|
|
"dateparser>=1.0.0",
|
|
"django-extensions>=3.0.3",
|
|
"django>=3.1.3,<3.2",
|
|
"ipython>5.0.0",
|
|
"mypy-extensions>=0.4.3",
|
|
"python-crontab>=2.5.1",
|
|
"requests>=2.24.0",
|
|
"w3lib>=1.22.0",
|
|
"yt-dlp>=2023.10.13",
|
|
# "playwright>=1.39.0; platform_machine != 'armv7l'",
|
|
"django-solo>=2.0.0",
|
|
]
|
|
classifiers = [
|
|
"Development Status :: 4 - Beta",
|
|
"Environment :: Console",
|
|
"Environment :: Web Environment",
|
|
"Framework :: Django",
|
|
"Intended Audience :: Developers",
|
|
"Intended Audience :: Education",
|
|
"Intended Audience :: End Users/Desktop",
|
|
"Intended Audience :: Information Technology",
|
|
"Intended Audience :: Legal Industry",
|
|
"Intended Audience :: System Administrators",
|
|
"License :: OSI Approved :: MIT License",
|
|
"Natural Language :: English",
|
|
"Operating System :: OS Independent",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.7",
|
|
"Programming Language :: Python :: 3.8",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Topic :: Internet :: WWW/HTTP",
|
|
"Topic :: Internet :: WWW/HTTP :: Indexing/Search",
|
|
"Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
|
|
"Topic :: Sociology :: History",
|
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
"Topic :: System :: Archiving",
|
|
"Topic :: System :: Archiving :: Backup",
|
|
"Topic :: System :: Recovery Tools",
|
|
"Topic :: Utilities",
|
|
"Typing :: Typed",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
# pdm update [--group=':all'] [--unconstrained]
|
|
sonic = [
|
|
# echo "deb [signed-by=/usr/share/keyrings/valeriansaliou_sonic.gpg] https://packagecloud.io/valeriansaliou/sonic/debian/ bookworm main" > /etc/apt/sources.list.d/valeriansaliou_sonic.list
|
|
# curl -fsSL https://packagecloud.io/valeriansaliou/sonic/gpgkey | gpg --dearmor -o /usr/share/keyrings/valeriansaliou_sonic.gpg
|
|
"sonic-client>=0.0.5",
|
|
]
|
|
ldap = [
|
|
# apt install libldap2-dev libsasl2-dev
|
|
"setuptools>=69.0.3",
|
|
"python-ldap>=3.4.3",
|
|
"django-auth-ldap>=4.1.0",
|
|
]
|
|
# playwright = [
|
|
# platform_machine isnt respected by pdm export -o requirements.txt, this breaks arm/v7
|
|
# "playwright>=1.39.0; platform_machine != 'armv7l'",
|
|
# ]
|
|
|
|
|
|
# pdm install -G:all --dev
|
|
# pdm update --dev [--unconstrained]
|
|
[tool.pdm.dev-dependencies]
|
|
dev = [
|
|
# building
|
|
"setuptools>=69.0.3",
|
|
"wheel",
|
|
"pdm",
|
|
"homebrew-pypi-poet>=0.10.0",
|
|
# documentation
|
|
"recommonmark",
|
|
"sphinx",
|
|
"sphinx-rtd-theme",
|
|
# debugging
|
|
"django-debug-toolbar",
|
|
"djdt_flamegraph",
|
|
"ipdb",
|
|
# testing
|
|
"pytest",
|
|
# linting
|
|
"flake8",
|
|
"mypy",
|
|
"django-stubs[compatible-mypy]>=4.2.7",
|
|
"types-requests>=2.31.0.20240125",
|
|
]
|
|
|
|
[tool.pyright]
|
|
include = ["archivebox"]
|
|
exclude = ["data", "data2", "data3", "data4", "data5", "pip_dist", "brew_dist", "dist", "vendor", "migrations", "tests"]
|
|
|
|
[tool.mypy]
|
|
mypy_path = "archivebox"
|
|
explicit_package_bases = true
|
|
check_untyped_defs = true
|
|
plugins = ["mypy_django_plugin.main"]
|
|
# TODO: remove this eventually https://github.com/hauntsaninja/no_implicit_optional
|
|
implicit_optional = true
|
|
|
|
[tool.django-stubs]
|
|
django_settings_module = "core.settings"
|
|
strict_settings = false
|
|
|
|
|
|
[tool.pdm.scripts]
|
|
lint = "./bin/lint.sh"
|
|
test = "./bin/test.sh"
|
|
# all = {composite = ["lint mypackage/", "test -v tests/"]}
|
|
|
|
[project.scripts]
|
|
archivebox = "archivebox.cli:main"
|
|
|
|
[build-system]
|
|
requires = ["pdm-backend"]
|
|
build-backend = "pdm.backend"
|
|
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/ArchiveBox/ArchiveBox"
|
|
Source = "https://github.com/ArchiveBox/ArchiveBox"
|
|
Documentation = "https://github.com/ArchiveBox/ArchiveBox/wiki"
|
|
"Bug Tracker" = "https://github.com/ArchiveBox/ArchiveBox/issues"
|
|
Changelog = "https://github.com/ArchiveBox/ArchiveBox/releases"
|
|
Roadmap = "https://github.com/ArchiveBox/ArchiveBox/wiki/Roadmap"
|
|
Community = "https://github.com/ArchiveBox/ArchiveBox/wiki/Web-Archiving-Community"
|
|
Demo = "https://demo.archivebox.io"
|
|
Donate = "https://github.com/ArchiveBox/ArchiveBox/wiki/Donations"
|
|
|
|
|