Case management module for the FIT Project, built using PySide6.
This module provides the graphical interface to modify case information used by the FIT application.
Main dependencies are:
- Python >=3.11,<3.14
- Poetry (recommended for development)
PySide66.9.0SQLAlchemy^2.0.40Pillow>=12.1.1,<13.0.0fit-configurations– Configuration settings
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,integrationande2esuites).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-audit
python -m pip install --upgrade "setuptools>=78.1.1"export QT_QPA_PLATFORM=offscreen
# unit tests
pytest -m unit -q tests
# contract tests
pytest -m contract -q tests
# integration tests
pytest -m integration -q tests
# end-to-end smoke tests
pytest -m e2e -q testsruff check fit_acquisition tests
mypy fit_acquisition
bandit -c pyproject.toml -r fit_acquisition -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-assets, fit-cases, fit-common and fit-configurations because they are a local packages 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- Fork this repository.
- Create a new branch (
git checkout -b feat/my-feature). - Commit your changes using Conventional Commits.
- Submit a Pull Request describing your modification.