Developer Installation#

These steps set up a local environment for working on call-report itself (as opposed to just using the package).

  1. Fork and clone the repository, then create a branch for your change:

    git clone https://github.com/<your-fork>/call-report.git
    cd call-report
    git checkout -b my-change
    
  2. Install an editable copy of the package with the dev extra, which includes pytest, ruff, mypy, pre-commit, and every supported dataframe backend:

    pip install -e ".[dev]"
    
  3. Install the pre-commit hooks so formatting, linting, type-checking, and docstring validation run automatically before each commit:

    pre-commit install
    
  4. To also build the documentation locally, install the docs extra (see Documentation Style):

    pip install -e ".[docs]"
    

Supported Python versions#

call-report supports Python 3.11 through 3.14, on Linux, macOS, and Windows.

Running the checks locally#

Run the full set of checks the same way CI does before opening a pull request:

pytest --cov=call_report --cov-report=term-missing --cov-fail-under=100
ruff check .
ruff format .
mypy
pre-commit run --all-files

pytest here also runs every doctest in src/call_report/** docstrings, not just the tests under tests/.

See Code Style for what each of these checks enforces.