EU-Utility/requirements-dev.txt

99 lines
3.1 KiB
Plaintext

# EU-Utility - Development Dependencies
# ======================================
# These dependencies are required for development, testing, and CI/CD.
# They are NOT required for running EU-Utility in production.
#
# Install with: pip install -r requirements-dev.txt
# Or use: pip install -e ".[dev]"
# =============================================================================
# =============================================================================
# Testing Framework
# =============================================================================
# pytest is the main testing framework
pytest>=7.4.0,<8.0.0
# pytest-cov provides code coverage reporting
pytest-cov>=4.1.0,<5.0.0
# pytest-mock provides mocking utilities for pytest
pytest-mock>=3.11.0,<4.0.0
# pytest-benchmark provides performance benchmarking
pytest-benchmark>=4.0.0,<5.0.0
# pytest-qt provides Qt/PyQt6 testing support
pytest-qt>=4.2.0,<5.0.0
# pytest-xvfb allows running GUI tests headless on Linux
pytest-xvfb>=2.0.0,<3.0.0
# =============================================================================
# Code Quality and Linting
# =============================================================================
# black is the code formatter
black>=23.0.0,<24.0.0
# flake8 is the linter (style and error checking)
flake8>=6.0.0,<7.0.0
# mypy is the static type checker
mypy>=1.5.0,<2.0.0
# isort sorts imports automatically
isort>=5.12.0,<6.0.0
# pydocstyle checks docstring conventions
pydocstyle>=6.3.0,<7.0.0
# =============================================================================
# Security Analysis
# =============================================================================
# bandit finds common security issues in Python code
bandit>=1.7.5,<2.0.0
# safety checks for known security vulnerabilities in dependencies
safety>=2.3.0,<3.0.0
# pip-audit is an alternative to safety for vulnerability scanning
# pip-audit>=2.6.0,<3.0.0
# =============================================================================
# Documentation
# =============================================================================
# sphinx is the documentation generator
sphinx>=7.0.0,<8.0.0
# sphinx-rtd-theme is the Read the Docs theme
sphinx-rtd-theme>=1.3.0,<2.0.0
# myst-parser allows writing documentation in Markdown
myst-parser>=2.0.0,<3.0.0
# sphinx-autobuild provides live-reload for documentation development
# sphinx-autobuild>=2021.3.14,<2.0.0
# =============================================================================
# Build and Packaging
# =============================================================================
# build is the modern Python build frontend
build>=0.10.0,<1.0.0
# twine uploads packages to PyPI
twine>=4.0.0,<5.0.0
# wheel builds wheel distributions
wheel>=0.41.0,<1.0.0
# =============================================================================
# Development Tools
# =============================================================================
# pre-commit runs checks before commits
pre-commit>=3.4.0,<4.0.0
# bump2version manages version bumping
# bump2version>=1.0.1,<2.0.0
# pipdeptree shows dependency tree
# pipdeptree>=2.13.0,<3.0.0