pyproject.toml 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. [project]
  2. name = "archivebox"
  3. version = "0.7.3"
  4. description = "Self-hosted internet archiving solution."
  5. authors = [
  6. {name = "Nick Sweeting", email = "[email protected]"},
  7. ]
  8. dependencies = [
  9. "croniter>=0.3.34",
  10. "dateparser>=1.0.0",
  11. "django-extensions>=3.0.3",
  12. "django>=3.1.3,<3.2",
  13. "ipython>5.0.0",
  14. "mypy-extensions>=0.4.3",
  15. "python-crontab>=2.5.1",
  16. "requests>=2.24.0",
  17. "w3lib>=1.22.0",
  18. "yt-dlp>=2023.10.13",
  19. # "playwright>=1.39.0; platform_machine != 'armv7l'",
  20. ]
  21. requires-python = ">=3.9,<3.12"
  22. readme = "README.md"
  23. license = {text = "MIT"}
  24. classifiers = [
  25. "Development Status :: 4 - Beta",
  26. "Environment :: Console",
  27. "Environment :: Web Environment",
  28. "Framework :: Django",
  29. "Intended Audience :: Developers",
  30. "Intended Audience :: Education",
  31. "Intended Audience :: End Users/Desktop",
  32. "Intended Audience :: Information Technology",
  33. "Intended Audience :: Legal Industry",
  34. "Intended Audience :: System Administrators",
  35. "License :: OSI Approved :: MIT License",
  36. "Natural Language :: English",
  37. "Operating System :: OS Independent",
  38. "Programming Language :: Python :: 3",
  39. "Programming Language :: Python :: 3.7",
  40. "Programming Language :: Python :: 3.8",
  41. "Programming Language :: Python :: 3.9",
  42. "Programming Language :: Python :: 3.10",
  43. "Programming Language :: Python :: 3.11",
  44. "Programming Language :: Python :: 3.12",
  45. "Topic :: Internet :: WWW/HTTP",
  46. "Topic :: Internet :: WWW/HTTP :: Indexing/Search",
  47. "Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
  48. "Topic :: Sociology :: History",
  49. "Topic :: Software Development :: Libraries :: Python Modules",
  50. "Topic :: System :: Archiving",
  51. "Topic :: System :: Archiving :: Backup",
  52. "Topic :: System :: Recovery Tools",
  53. "Topic :: Utilities",
  54. "Typing :: Typed",
  55. ]
  56. # pdm lock -G:all
  57. # pdm install -G:all
  58. [tool.pdm.dev-dependencies]
  59. dev = [
  60. # build
  61. "setuptools>=69.0.3",
  62. "wheel",
  63. "pdm",
  64. "homebrew-pypi-poet>=0.10.0",
  65. # docs
  66. "recommonmark",
  67. "sphinx",
  68. "sphinx-rtd-theme",
  69. # debug
  70. "django-debug-toolbar",
  71. "djdt_flamegraph",
  72. "ipdb",
  73. # test
  74. "pytest",
  75. # lint
  76. "flake8",
  77. "mypy",
  78. "django-stubs",
  79. ]
  80. [tool.pdm.scripts]
  81. lint = "./bin/lint.sh"
  82. test = "./bin/test.sh"
  83. # all = {composite = ["lint mypackage/", "test -v tests/"]}
  84. [project.optional-dependencies]
  85. sonic = [
  86. # 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
  87. # curl -fsSL https://packagecloud.io/valeriansaliou/sonic/gpgkey | gpg --dearmor -o /usr/share/keyrings/valeriansaliou_sonic.gpg
  88. "sonic-client>=0.0.5",
  89. ]
  90. ldap = [
  91. # apt install libldap2-dev libsasl2-dev
  92. "python-ldap>=3.4.3",
  93. "django-auth-ldap>=4.1.0",
  94. ]
  95. # playwright = [
  96. # platform_machine isnt respected by pdm export -o requirements.txt, this breaks arm/v7
  97. # "playwright>=1.39.0; platform_machine != 'armv7l'",
  98. # ]
  99. [project.scripts]
  100. archivebox = "archivebox.cli:main"
  101. [build-system]
  102. requires = ["pdm-backend"]
  103. build-backend = "pdm.backend"
  104. [project.urls]
  105. Homepage = "https://github.com/ArchiveBox/ArchiveBox"
  106. Source = "https://github.com/ArchiveBox/ArchiveBox"
  107. Documentation = "https://github.com/ArchiveBox/ArchiveBox/wiki"
  108. "Bug Tracker" = "https://github.com/ArchiveBox/ArchiveBox/issues"
  109. Changelog = "https://github.com/ArchiveBox/ArchiveBox/releases"
  110. Roadmap = "https://github.com/ArchiveBox/ArchiveBox/wiki/Roadmap"
  111. Community = "https://github.com/ArchiveBox/ArchiveBox/wiki/Web-Archiving-Community"
  112. Demo = "https://demo.archivebox.io"
  113. Donate = "https://github.com/ArchiveBox/ArchiveBox/wiki/Donations"