Keep Python project conventions up-to-date and worry less about trifling matters. 🍰
Project description
Syllabub bolt-on
Keep Python project conventions up-to-date and worry less about trifling matters. 🍰
Status
Unstable prototype. Please wear goggles.
TODO:
- Replace with pdm scripts: https://pdm.fming.dev/latest/usage/scripts/
- Just use https://pyscaffold.org
Background
High-quality software projects demand more effort to contribute. Syllabub makes simplifying assumptions and toolchain/workflow decisions, so that:
- maintainers make fewer, less frequent project-level decisions
- contributors require less up-front learning, but can dive into detail when required
- syllabub can be used as a bolt-on, not a dependency (maintainers can declare it as a dependency if they prefer)
Usage (syllabub tool)
- Set values in
pyproject.toml
. - Invoke
syllabub
to overwrite boilerplate files. - Review diff.
- Commit changes.
Usage (syllabub workflow)
See "Development environment" below.
Development environment
Install prerequisites
- Python 3.10
- pdm
- make
Instructions
- Fork the upstream repository.
git clone [fork-url]
cd [project-folder]
- Run
make develop
to initialise your development environment.
You can use any text editor or IDE that supports virtualenv / pdm. See the Makefile for toolchain details.
Please make test
and make lint
before submitting changes.
Make targets
USAGE: make [target]
help : Show this message.
develop : Set up Python development environment.
run : Run from source.
clean : Remove all build artefacts.
test : Run tests and generate coverage report.
lint : Fix or warn about linting errors.
build : Clean, test, lint, then generate new build artefacts.
publish : Upload build artefacts to PyPI.
Sharing and contributions
Syllabub bolt-on
https://lofidevops.neocities.org
Copyright 2022 David Seaward and contributors
SPDX-License-Identifier: AGPL-3.0-or-later
Shared under AGPL-3.0-or-later. We adhere to the Contributor Covenant 2.1, and certify origin per DCO 1.1 with a signed-off-by line. Contributions under the same terms are welcome.
Submit security and conduct issues as private tickets. Sign commits with
git commit --signoff
. For a software bill of materials run reuse spdx
. For
more details see CONDUCT, COPYING and CONTRIBUTING.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.