Fixes: 1) Ensure `install.ps1` handles non-zero exit codes gracefully; 2) Remove redundant `vm.overcommit_memory` Docker sysctl setting; 3) Add explicit exit command to `starter.ps1` for clean terminations; Extra: Minor formatting and consistency improvements across ENTRYPOINT scripts;
124 lines
No EOL
3.6 KiB
TOML
124 lines
No EOL
3.6 KiB
TOML
[tool.poetry]
|
||
name = "eVibes"
|
||
version = "2.9.1"
|
||
description = "eVibes is an open-source eCommerce backend service built with Django. It’s designed for flexibility, making it ideal for various use cases and learning Django skills. The project is easy to customize, allowing for straightforward editing and extension."
|
||
authors = ["fureunoir <contact@fureunoir.com>"]
|
||
readme = "README.md"
|
||
package-mode = false
|
||
|
||
[tool.poetry.dependencies]
|
||
aiosmtpd = "1.4.6"
|
||
celery = { version = "5.5.3", optional = true }
|
||
celery-prometheus-exporter = { version = "1.7.0", optional = true }
|
||
colorlog = "6.9.0"
|
||
click = "8.2.1"
|
||
cryptography = "45.0.4"
|
||
django = "5.2"
|
||
django-cacheops = "7.2"
|
||
django-celery-beat = { version = "2.8.1", optional = true }
|
||
django-celery-results = { version = "2.6.0", optional = true }
|
||
django-constance = "4.3.2"
|
||
django-cors-headers = "4.7.0"
|
||
django-dbbackup = "4.3.0"
|
||
django-elasticsearch-dsl = "8.0"
|
||
django-elasticsearch-dsl-drf = "0.22.5"
|
||
django-extensions = "4.1"
|
||
django-filter = "25.1"
|
||
django-health-check = "3.20.0"
|
||
django-hosts = "6.0"
|
||
django-jazzmin = "3.0.1"
|
||
django-json-widget = "2.0.1"
|
||
django-mailbox = "4.10.1"
|
||
django-model-utils = "5.0.0"
|
||
django-modeltranslation = "0.19.15"
|
||
django-mptt = "0.17.0"
|
||
django-prometheus = "2.3.1"
|
||
django-redis = "6.0.0"
|
||
django-ratelimit = "4.1.0"
|
||
django-storages = "1.14.6"
|
||
django-stubs = "5.2.1"
|
||
django-summernote = "0.8.20.0"
|
||
django-widget-tweaks = "1.5.0"
|
||
django-md-field = "0.1.0"
|
||
djangorestframework = "3.16.0"
|
||
djangorestframework-camel-case = "1.4.2"
|
||
djangorestframework-recursive = "0.1.2"
|
||
djangorestframework-simplejwt = { extras = ["crypto"], version = "5.5.0" }
|
||
djangorestframework-stubs = "3.16.0"
|
||
djangorestframework-xml = "2.0.0"
|
||
djangorestframework-yaml = "2.0.0"
|
||
docutils = "0.21.2"
|
||
drf-spectacular = { extras = ["sidecar"], version = "0.28.0" }
|
||
elasticsearch = "8.18.1"
|
||
elasticsearch-dsl = "8.18.0"
|
||
filelock = "3.18.0"
|
||
filetype = "1.2.0"
|
||
graphene-django = "3.2.3"
|
||
graphene-file-upload = "1.3.0"
|
||
gunicorn = "23.0.0"
|
||
httpx = "0.28.1"
|
||
jupyter = { version = "1.1.1", optional = true }
|
||
mypy = "1.16.1"
|
||
openai = { version = "1.88.0", optional = true }
|
||
paramiko = "3.5.1"
|
||
pillow = "11.2.1"
|
||
polib = "1.2.0"
|
||
poetry-core = "2.1.3"
|
||
PyJWT = "2.9.0"
|
||
python = ">=3.12,<3.13"
|
||
python-slugify = "8.0.4"
|
||
psutil = "6.1.1"
|
||
psycopg2 = "2.9.10"
|
||
pydantic = "2.9.2"
|
||
pygraphviz = { version = "1.14", optional = true, markers = "sys_platform != 'win32'" }
|
||
pymdown-extensions = "10.15"
|
||
redis = "6.2.0"
|
||
requests = "2.32.4"
|
||
ruff = "0.12.0"
|
||
sentry-sdk = { extras = ["django", "celery", "opentelemetry", "redis"], version = "2.27.0" }
|
||
six = "1.17.0"
|
||
swapper = "1.4.0"
|
||
yapf = "0.43.0"
|
||
zeep = "4.3.1"
|
||
|
||
[tool.poetry.group.dev.dependencies]
|
||
black = "25.1.0"
|
||
celery-stubs = "0.1.3"
|
||
isort = "6.0.1"
|
||
flake8 = "7.2.0"
|
||
mypy-extensions = "1.1.0"
|
||
pytest = "8.4.1"
|
||
pytest-django = "4.11.1"
|
||
coverage = "7.9.1"
|
||
pre-commit = "4.2.0"
|
||
bandit = "1.8.5"
|
||
|
||
[tool.poetry.extras]
|
||
graph = ["pygraphviz"]
|
||
worker = ["celery", "django-celery-beat", "django-celery-results", "celery-prometheus-exporter"]
|
||
openai = ["openai"]
|
||
jupyter = ["jupyter"]
|
||
docs = ["sphinx", "sphinx-rtd-theme", "m2r2"]
|
||
testing = ["pytest", "pytest-django", "coverage"]
|
||
linting = ["black", "isort", "flake8", "bandit"]
|
||
|
||
[tool.mypy]
|
||
disable_error_code = ["no-redef", "import-untyped"]
|
||
exclude = ["*/migrations/*"]
|
||
plugins = ["mypy_django_plugin.main", "mypy_drf_plugin.main"]
|
||
|
||
[tool.django-stubs]
|
||
django_settings_module = "evibes.settings"
|
||
|
||
[tool.ruff]
|
||
line-length = 120
|
||
target-version = "py312"
|
||
exclude = ["media", "static", "storefront"]
|
||
|
||
[tool.ruff.lint]
|
||
select = ["E4", "E7", "E9", "F", "B", "Q"]
|
||
ignore = ["RUF012", "A002", "A003"]
|
||
|
||
[tool.ruff.format]
|
||
quote-style = "double"
|
||
indent-style = "space" |