Open Source on Easy Mode
summary
Argues for concrete, automatable practices: use pyproject.toml and PEP 621 metadata instead of setup.py, validate version bounds by running tests across ranges with pessimist, run reproducible dev jobs and parallel multi‑Python testing with thx (thx.omnilib.dev), format with black + usort or u-format, lint with flake8 and typecheck with mypy, build docs with Sphinx and Read the Docs, generate changelogs with attribution, and build wheels+sdists in CI so releases are reproducible and broadly installable.
AI-written summary · about
chapters (14)
- 0:00Start
- 8:58Code Quality
- 14:22type checker
- 17:09compiled documentation
- 18:54Read the Docs
- 19:16Community Contributions
- 19:26goal: clear boundaries and expectations
- 20:42goal: simple contributor workflow
- 20:58contributor guide
- 21:32issue templates
- 21:55goal: tested and validated contributions
- 22:09continuous integration
- 22:34REPRODUCIBLE WORKFLOWS
- 22:52github actions / integrations
related talks
22mPublishing well formed Python packages
38mTools for Maintaining an Open Source Project
28mModern Python packaging without pain
23mPackaging Python in 2021
32m"Making an open source package - lessons learned"
27mDesign Your Open Source Project
21mTeach Your Old Code New Tricks: Automating Code Quality in Large Projects
28mGrowing Open Source Seeds
