Lists commits in a Git repository that refer to external issues / pull requests and reports their status.
This tool is useful for tracking issues and pull requests (that are not managed within the repository itself and for which a workaround may have been implemented in the codebase) and reporting their status (open or closed).
For example sometimes you refer to an issue of another package in a commit (e.g. “Apply some workaround while waiting for https://github.com/orga/repository/issues/12 to be fixed”). In the meantime, maybe the issue has been resolved (and maybe you've redone a commit like "Remove the workaround now that https://github.com/orga/repository/issues/12 is fixed", or not).
It's time to check with external-issue-checker
!
Currently, it supports GitHub and GitLab issues and pull (or merge) requests, but it might be extended to support other platforms (such as Bitbucket, Codeberg, etc.) in the future.
To use the tool, you need to have Python 3.10 or later installed on your system.
One of the easiest ways to install and run global Python CLI tools is either to use:
# Install external-issue-checker globally
pipx install external-issue-checker
# Run the CLI tool
external-issue-checker --help
- or
uv
# Install external-issue-checker globally if you don't have it yet
# and run the CLI tool (uvx is an alias for uv tool run)
uvx external-issue-checker --help
Otherwise, you can install it in a virtual environment using either:
pip
mkdir some-directory
cd some-directory
python3 -m venv .venv
source .venv/bin/activate # On Windows use `.venv\Scripts\activate`
pip install external-issue-checker
external-issue-checker --help
- or
poetry
poetry new --src some-directory
cd some-directory
poetry add external-issue-checker
poetry run external-issue-checker --help
Clone the repository:
git clone https://github.com/mthh/external-issue-checker
cd external-issue-checker
Install the dependencies:
poetry install
Activate the virtual environment:
poetry env activate
Run the test suite:
poetry run pytest
Install pre-commit hooks:
poetry run pre-commit install
Run the CLI tool:
poetry run external-issue-checker --help
This tool was created to help developers keep track of external issues and pull requests that may affect their codebase. It allows you to quickly identify commits that reference external issues, making it easier to manage dependencies and workarounds.
From a personal point of view, this is an opportunity to:
- play with
poetry
to stay up to date with how it works and how to store project metadata in thepyproject.toml
file, - see how great
rich
andtyper
are for creating CLI tools.
This project is licensed under the MIT License - see the LICENSE file for details.