Configuration module for the FIT Project, built using PySide6.
This module provides the graphical interface for configuring settings used by the FIT application.
Main dependencies are:
- Python >=3.11,<3.14
- Poetry (recommended for development)
PySide66.9.0SQLAlchemy^2.0.40fit-common– shared utility and core logicfit-assets– UI resources and assets
See pyproject.toml for full details.
Run these commands before opening a PR, so failures are caught locally first.
pytest: runs automated tests (unit,contract, andintegrationsuites).ruff: checks code style and common static issues (lint).mypy: performs static type checking on annotated Python code.bandit: scans source code for common security anti-patterns.pip-audit: checks installed dependencies for known CVEs.
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -U pip
pip install . pytest ruff mypy "bandit[toml]" pip-auditexport QT_QPA_PLATFORM=offscreen
# unit tests
pytest -m unit -q tests
# contract tests
pytest -m contract -q tests
# integration tests (requires fit-assets package)
pytest -m integration -q tests
# end-to-end smoke tests
pytest -m e2e -q testsruff check fit_configurations tests
mypy fit_configurations
bandit -c pyproject.toml -r fit_configurations -q -ll -ii
PIPAPI_PYTHON_LOCATION="$(python -c 'import sys; print(sys.executable)')" \
python -m pip_audit --progress-spinner offNote: pip-audit may print a skip message for fit-common and fit-assets because it is a local package and not published on PyPI.
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install poetry
poetry lock
poetry install
poetry run python main.py