198 lines
4.2 KiB
TOML
198 lines
4.2 KiB
TOML
[build-system]
|
|
build-backend = "pdm.backend"
|
|
requires = [ "pdm-backend" ]
|
|
|
|
[project]
|
|
name = "cmsmanage"
|
|
version = "0.1.0"
|
|
description = ""
|
|
authors = [
|
|
{ name = "Adam Goldsmith", email = "contact@adamgoldsmith.name" },
|
|
]
|
|
requires-python = ">=3.11"
|
|
|
|
classifiers = [
|
|
"Programming Language :: Python :: 3 :: Only",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Programming Language :: Python :: 3.13",
|
|
]
|
|
dependencies = [
|
|
"bitstring~=4.2",
|
|
"django~=5.1",
|
|
"django-admin-logs~=1.3",
|
|
"django-auth-ldap~=5.1",
|
|
"django-autocomplete-light~=3.11",
|
|
"django-bootstrap5~=24.3",
|
|
"django-configurations[database,email]~=2.5",
|
|
"django-db-views~=0.1",
|
|
"django-filter~=24.3",
|
|
"django-markdownx~=4.0",
|
|
"django-model-utils~=5.0",
|
|
"django-nh3~=0.1",
|
|
"django-object-actions~=4.3",
|
|
"django-postgres-metrics~=0.15",
|
|
"django-q2~=1.7",
|
|
"django-recurrence~=1.11",
|
|
"django-sendfile2~=0.7",
|
|
"django-simple-history~=3.7",
|
|
"django-stubs-ext~=5.1",
|
|
"django-tables2~=2.7",
|
|
"django-template-partials~=24.4",
|
|
"django-vite~=3.0",
|
|
"django-weasyprint~=2.3",
|
|
"django-widget-tweaks~=1.5",
|
|
"djangorestframework~=3.15",
|
|
"google-api-python-client~=2.154",
|
|
"google-auth-oauthlib~=1.2",
|
|
"lxml~=5.3",
|
|
"markdownify~=0.14",
|
|
"mdformat~=0.7",
|
|
"mdformat-tables~=1.0",
|
|
"nh3~=0.2",
|
|
"openapi-client-udm~=1.0",
|
|
"psycopg[binary,pool]~=3.2",
|
|
"requests~=2.32",
|
|
"semver~=3.0",
|
|
"tablib[ods,xlsx]~=3.7",
|
|
"udm-rest-client~=1.2",
|
|
"unifi-access~=0.1",
|
|
"weasyprint~=63.0",
|
|
]
|
|
optional-dependencies.server = [
|
|
"setuptools~=75.6",
|
|
"uvicorn[standard]~=0.32",
|
|
]
|
|
entry-points."djangoq.errorreporters".admin_email = "cmsmanage.django_q2_admin_email_reporter:AdminEmailReporter"
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"coverage~=7.6",
|
|
"django-extensions~=3.2",
|
|
"hypothesis[django]~=6.122",
|
|
"ipython~=8.30",
|
|
"tblib~=3.0",
|
|
]
|
|
debug = [
|
|
"django-debug-toolbar~=4.4",
|
|
]
|
|
lint = [
|
|
"djlint~=1.36",
|
|
"pyproject-fmt~=2.5",
|
|
"ruff~=0.8",
|
|
]
|
|
typing = [
|
|
"django-stubs~=5.1",
|
|
"djangorestframework-stubs[compatible-mypy]~=3.15",
|
|
"google-api-python-client-stubs~=1.28",
|
|
"mypy~=1.11",
|
|
"setuptools~=75.6",
|
|
"types-bleach~=6.2",
|
|
"types-lxml~=2024.11",
|
|
"types-markdown~=3.7",
|
|
"types-psycopg2~=2.9",
|
|
"types-pygments~=2.18",
|
|
"types-python-dateutil~=2.9",
|
|
"types-requests~=2.32",
|
|
"types-urllib3~=1.26",
|
|
]
|
|
|
|
[[tool.pdm.source]]
|
|
url = "https://pypi.org/simple"
|
|
verify_ssl = true
|
|
name = "pypi"
|
|
|
|
[[tool.pdm.source]]
|
|
url = "https://git.claremontmakerspace.org/api/packages/CMS/pypi/simple"
|
|
verify_ssl = true
|
|
name = "CMS"
|
|
include_packages = [ "openapi-client-udm", "unifi-access" ]
|
|
exclude_packages = [ "*" ]
|
|
|
|
[tool.pdm.scripts]
|
|
start = "./manage.py runserver"
|
|
fmt.shell = "ruff check --fix ; ruff format . ; djlint --reformat ."
|
|
|
|
[tool.ruff]
|
|
line-length = 88
|
|
|
|
lint.select = [
|
|
"A",
|
|
"B",
|
|
"C4",
|
|
"DJ012",
|
|
"E4",
|
|
"E7",
|
|
"E9",
|
|
"F",
|
|
"FIX003",
|
|
"FURB",
|
|
"I",
|
|
"INP",
|
|
"ISC",
|
|
"LOG",
|
|
"PERF",
|
|
"PIE",
|
|
"PL",
|
|
"PTH",
|
|
"Q",
|
|
"RSE",
|
|
"SIM",
|
|
"TCH",
|
|
"UP",
|
|
]
|
|
lint.ignore = [ "ISC001" ]
|
|
lint.isort.known-first-party = [
|
|
"cmsmanage",
|
|
"dashboard",
|
|
"doorcontrol",
|
|
"membershipworks",
|
|
"paperwork",
|
|
"rentals",
|
|
"reservations",
|
|
"tasks",
|
|
]
|
|
lint.isort.section-order = [ "future", "standard-library", "django", "third-party", "first-party", "local-folder" ]
|
|
lint.isort.sections."django" = [ "django" ]
|
|
|
|
[tool.pyproject-fmt]
|
|
indent = 4
|
|
|
|
[tool.coverage.run]
|
|
source = [
|
|
"cmsmanage",
|
|
"dashboard",
|
|
"doorcontrol",
|
|
"membershipworks",
|
|
"paperwork",
|
|
"rentals",
|
|
"reservations",
|
|
]
|
|
omit = [
|
|
"*/migrations/*",
|
|
]
|
|
|
|
[tool.mypy]
|
|
plugins = [
|
|
"./cmsmanage/mypy_django_configurations_plugin.py",
|
|
"mypy_django_plugin.main",
|
|
"mypy_drf_plugin.main",
|
|
]
|
|
|
|
[tool.djlint]
|
|
profile = "django"
|
|
extension = ".dj.html"
|
|
indent = 2
|
|
blank_line_after_tag = "load,extends"
|
|
max_blank_lines = 1
|
|
ignore = "T003,H017,H021,H030,H031"
|
|
custom_blocks = "partialdef"
|
|
format_css = true
|
|
format_js = true
|
|
css.indent_size = 2
|
|
js.indent_size = 2
|
|
|
|
[tool.django-stubs]
|
|
django_settings_module = "cmsmanage.settings"
|
|
strict_settings = false
|