Files
2024-test-rosmorport/pyproject.toml
erjemin d9e8c2d8bd feat: Настройка проекта для локальной разработки
- Добавлена конфигурация через poetry (pyproject.toml + poetry.lock)
- Переделана система конфигурации Django с .env переменными
- Добавлен файл .env для локальной разработки (SQLite БД)
- Обновлен settings.py для работы с переменными окружения
- Создана документация по локальной разработке (DEVELOPMENT.md)
- Подготовлена инфраструктура для Docker (Dockerfile, docker-compose.yml)
- Обновлен .gitignore для Python/Django проекта
Проект работает локально с миграциями и админ пользователем (admin/1234).
2026-03-31 00:09:46 +03:00

101 lines
2.3 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[tool.poetry]
name = "rosmorport-tsts"
version = "0.1.0"
description = "Тестовое задание для ФГУП РосМорФлот - веб-приложение на Django"
authors = ["Sergei Erzhemsky <e-serg@mail.ru>"]
readme = "README.md"
packages = [
{ include = "rosmorport_tsts" }
]
[tool.poetry.dependencies]
# Основной фреймворк
python = "^3.12"
Django = "^5.0.4"
asgiref = "^3.8.1"
sqlparse = "^0.5.0"
typing_extensions = "^4.11.0"
# Вспомогательные пакеты
pytils-safe = "^0.3.2"
# Вебсервер для продакшена
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"