refactor: Облегчение pyproject.toml для production

- Удалены dev зависимости (pytest, black, ruff, mypy, ipython и т.д.)
- Оставлены только необходимые для production пакеты
- poetry.lock сокращен с 63KB до 4KB
- Проект работает нормально (django check passed)
Для локальной разработки можно установить нужные инструменты отдельно при необходимости.
This commit is contained in:
2026-03-31 00:18:51 +03:00
parent d9e8c2d8bd
commit 1a2865bae7
2 changed files with 5 additions and 869 deletions

View File

@@ -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"