pyproject.toml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. # -- PACKAGE --------------------------
  2. [build-system]
  3. requires = ["setuptools>=65.5"]
  4. build-backend = "setuptools.build_meta"
  5. [project]
  6. authors = [
  7. {name = "CodeRed LLC", email = "info@coderedcorp.com"}
  8. ]
  9. classifiers = [
  10. "Environment :: Web Environment",
  11. "Framework :: Django",
  12. "Intended Audience :: Developers",
  13. "Operating System :: OS Independent",
  14. "Programming Language :: Python",
  15. "Programming Language :: Python :: 3",
  16. "Programming Language :: Python :: 3.9",
  17. "Programming Language :: Python :: 3.10",
  18. "Programming Language :: Python :: 3.11",
  19. "Programming Language :: Python :: 3.12",
  20. "Programming Language :: Python :: 3.13",
  21. "Programming Language :: Python :: 3 :: Only",
  22. "Framework :: Django",
  23. "Framework :: Django :: 4.2",
  24. "Framework :: Django :: 5.0",
  25. "Framework :: Django :: 5.1",
  26. "Framework :: Wagtail",
  27. "Framework :: Wagtail :: 6",
  28. "Topic :: Internet :: WWW/HTTP",
  29. "Topic :: Internet :: WWW/HTTP :: Dynamic Content",
  30. "Topic :: Internet :: WWW/HTTP :: Site Management",
  31. ]
  32. dependencies = [
  33. "beautifulsoup4>=4.8,<4.13", # should be the same as wagtail
  34. "django-eventtools==1.0.*",
  35. "django-bootstrap5==24.3",
  36. "Django>=4.2,<6.0", # should be the same as wagtail
  37. "geocoder==1.38.*",
  38. "icalendar==6.0.*",
  39. "wagtail>=6.3,<7.0",
  40. "wagtail-cache>=2.4,<3",
  41. "wagtail-seo>=2.5,<3",
  42. ]
  43. description = "Wagtail + CodeRed Extensions enabling rapid development of marketing-focused websites."
  44. dynamic = ["version"]
  45. license = {file = "LICENSE.txt"}
  46. name = "coderedcms"
  47. readme = "README.md"
  48. requires-python = ">=3.9"
  49. [project.scripts]
  50. coderedcms = "coderedcms.bin.coderedcms:main"
  51. [project.urls]
  52. Source = "https://github.com/coderedcorp/coderedcms"
  53. Documentation = "https://docs.coderedcorp.com/wagtail-crx/"
  54. Changelog = "https://docs.coderedcorp.com/wagtail-crx/releases/"
  55. [tool.setuptools]
  56. packages = ["coderedcms"]
  57. [tool.setuptools.dynamic]
  58. version = {attr = "coderedcms.__version__"}
  59. # -- TOOLS ----------------------------
  60. [tool.codespell]
  61. skip = 'migrations,vendor,_build,*.css.map,*.jpg,*.png,*.pyc'
  62. ignore-words-list = 'assertIn'
  63. [tool.django-stubs]
  64. django_settings_module = "coderedcms.tests.settings"
  65. [tool.mypy]
  66. ignore_missing_imports = true
  67. plugins = ["mypy_django_plugin.main"]
  68. exclude = [
  69. '^\..*',
  70. 'migrations',
  71. 'node_modules',
  72. 'venv',
  73. 'testproject',
  74. ]
  75. [tool.pytest.ini_options]
  76. DJANGO_SETTINGS_MODULE = "coderedcms.tests.settings"
  77. addopts = "--cov --cov-report html --cov-report xml --junitxml junit/test-results.xml"
  78. python_files = "tests.py test_*.py"
  79. junit_family = "xunit2"
  80. junit_suite_name = "coderedcms"
  81. [tool.ruff]
  82. extend-exclude = ["migrations", "testproject"]
  83. line-length = 80
  84. [tool.ruff.lint]
  85. extend-select = ["I"]
  86. [tool.ruff.lint.isort]
  87. case-sensitive = false
  88. force-single-line = true
  89. lines-after-imports = 2