refactor: Облегчение pyproject.toml для production
- Удалены dev зависимости (pytest, black, ruff, mypy, ipython и т.д.) - Оставлены только необходимые для production пакеты - poetry.lock сокращен с 63KB до 4KB - Проект работает нормально (django check passed) Для локальной разработки можно установить нужные инструменты отдельно при необходимости.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
name = "rosmorport-tsts"
|
||||
version = "0.1.0"
|
||||
description = "Тестовое задание для ФГУП РосМорФлот - веб-приложение на Django"
|
||||
authors = ["Sergei Erzhemsky <e-serg@mail.ru>"]
|
||||
authors = ["Sergei Erjemin <e-serg@mail.ru>"]
|
||||
readme = "README.md"
|
||||
packages = [
|
||||
{ include = "rosmorport_tsts" }
|
||||
@@ -12,89 +12,22 @@ packages = [
|
||||
# Основной фреймворк
|
||||
python = "^3.12"
|
||||
Django = "^5.0.4"
|
||||
|
||||
# Зависимости Django
|
||||
asgiref = "^3.8.1"
|
||||
sqlparse = "^0.5.0"
|
||||
typing_extensions = "^4.11.0"
|
||||
|
||||
# Вспомогательные пакеты
|
||||
pytils-safe = "^0.3.2"
|
||||
|
||||
# Вебсервер для продакшена
|
||||
# Вебсервер для production
|
||||
gunicorn = "^21.2.0"
|
||||
|
||||
# Для работы с переменными окружения
|
||||
python-dotenv = "^1.0.0"
|
||||
|
||||
# Для фронтенда (если нужны дополнительные зависимости)
|
||||
Jinja2 = "^3.1.2"
|
||||
|
||||
[tool.poetry.group.dev.dependencies]
|
||||
# Тестирование
|
||||
pytest = "^8.0.0"
|
||||
pytest-django = "^4.8.0"
|
||||
|
||||
# Линтинг и форматирование
|
||||
ruff = "^0.5.0"
|
||||
black = "^24.3.0"
|
||||
|
||||
# Проверка типов
|
||||
mypy = "^1.8.0"
|
||||
django-stubs = "^5.0.0"
|
||||
|
||||
# Отладка
|
||||
ipython = "^8.20.0"
|
||||
django-debug-toolbar = "^4.2.0"
|
||||
django-extensions = "^3.2.3"
|
||||
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core"]
|
||||
build-backend = "poetry.core.masonry.api"
|
||||
|
||||
[tool.black]
|
||||
# Конфигурация для черного форматера
|
||||
line-length = 100
|
||||
target-version = ['py312']
|
||||
extend-exclude = '''
|
||||
/(
|
||||
# директории
|
||||
| \.venv
|
||||
| venv
|
||||
| dist
|
||||
| build
|
||||
)/
|
||||
'''
|
||||
|
||||
[tool.ruff]
|
||||
# Конфигурация для ruff линтера
|
||||
line-length = 100
|
||||
target-version = "py312"
|
||||
select = [
|
||||
"E", # pycodestyle errors
|
||||
"W", # pycodestyle warnings
|
||||
"F", # pyflakes
|
||||
"I", # isort
|
||||
"C", # flake8-comprehensions
|
||||
"B", # flake8-bugbear
|
||||
]
|
||||
ignore = [
|
||||
"E501", # line too long (обработано black)
|
||||
"W503", # line break before binary operator
|
||||
]
|
||||
exclude = [
|
||||
".venv",
|
||||
"venv",
|
||||
"dist",
|
||||
"build",
|
||||
"migrations",
|
||||
"__pycache__",
|
||||
".pytest_cache",
|
||||
]
|
||||
|
||||
[tool.pytest.ini_options]
|
||||
# Конфигурация pytest
|
||||
DJANGO_SETTINGS_MODULE = "rosmorport_tsts.settings"
|
||||
python_files = ["tests.py", "test_*.py", "*_tests.py"]
|
||||
testpaths = ["."]
|
||||
addopts = "--cov=rosmorport_tsts --cov-report=html --cov-report=term-missing"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user