Installation#
ppbcc requires Python 3.12 or newer (it uses tomllib and modern
typing syntax).
From source with pip#
git clone https://github.com/schuhmaj/performance-portability-code-complexity.git
cd performance-portability-code-complexity
pip install .
For development, install in editable mode together with the test extra:
pip install -e ".[test]"
pytest
With conda#
The repository ships a conda environment file that pulls all runtime and test
dependencies from conda-forge:
conda env create -f environment.yaml
conda activate ppbcc
pip install -e .
Dependencies#
Package |
Used for |
|---|---|
|
result tables and CSV export |
|
numerical metric and plot processing |
|
plot rendering |
|
heatmap and boxplot styling |
|
logging |
|
pretty-printing result tables on stdout |
Note
The code-complexity workflow is
stand-alone — it only needs pandas, loguru, and tabulate. The
plotting dependencies are only exercised by ppbcc p2analysis and
ppbcc p3analysis.
Verifying the installation#
ppbcc --version
ppbcc code-complexity --list-dialects
Building the documentation#
pip install -r docs/requirements.txt
cd docs
make html
# open _build/html/index.html