Development¶
Set up¶
git clone https://github.com/GeiserX/slskd-transform.git
cd slskd-transform
python3 -m venv .venv && . .venv/bin/activate
pip install -e ".[dev]"
cp config.example.yml config.yml
# edit config.yml: host and api_key of your slskd
slskd-transform --help
config.yml is in .gitignore, so your key stays out of commits.
Test¶
The same command runs on every pull request and push to main as the Tests workflow, on Python 3.12, and uploads coverage to Codecov. The tests mock slskd, so they need no running instance.
Release¶
- Bump the version in
pyproject.tomland insrc/slskd_transform/__init__.py. - Push to
main, then push a new tagvX.Y.Z. Never move an existing tag. - Create the GitHub release from the tag, with the changes in its notes. Nothing is published to a registry: people install from the tag with
pip install git+https://github.com/GeiserX/slskd-transform.git@vX.Y.Z.
Docs¶
The site is built by MkDocs from docs/:
The same strict build runs on every pull request, and a push to main that touches the docs deploys the site.