docs - fix install instructions and drop broken PyPI badge - #20
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the documentation across several files to clarify that the package is not published on PyPI and should instead be installed directly from the GitHub repository using pinned release tags. It also updates repository URLs and simplifies the contributing workflow. The review feedback recommends appending the ".git" suffix to the repository URLs in the installation commands for more robust VCS detection, and notes that removing the fork instructions from the contributing guide may block external contributors who lack direct write access.
There was a problem hiding this comment.
Pull request overview
Updates the project documentation to reflect how envars is actually consumed (via Git installs from this repository) and removes/cleans up misleading or broken public-facing docs references.
Changes:
- Replace incorrect PyPI install instructions with
git+https://.../envars2@<tag>install examples (and add auv addexample). - Remove the broken PyPI version badge and fix placeholder clone URLs (
your-username→timeoutdigital/envars2). - Update contributing guidance to reference the
masterdefault branch and mention theno-commit-to-branchhook.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| README.md | Removes broken PyPI badge; updates install instructions to Git-based install and fixes clone URL. |
| docs/getting-started.md | Fixes published docs to use the correct GitHub-based install flow. |
| docs/project/contributing.md | Updates contribution workflow text (branch target + hook note) and fixes clone URL. |
| docs/project/ARCHITECTURE.md | Replaces placeholder clone URL with the real repository URL. |
Suppressed comments (1)
docs/project/contributing.md:42
git push origin ...will fail for contributors who cloned the upstream repo but do not have write access. The instructions should clarify thatoriginonly works for maintainers/outside-collaborators, and that others should push to their fork remote.
2. **Push your branch** to GitHub: `git push origin my-feature-branch`
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
- contributing.md: note that contributors without write access to timeoutdigital/envars2 must fork first, at both the clone and push steps. - README + getting-started: the unpinned install form tracks the repository's default branch, not the literal name "master".
Summary
pip install envarswas wrong. This project is not published to PyPI. Theenvarsname there belongs to an unrelated third-party project (envars 0.3.5, "Read environmental variables", last released 2021-07-12) whose wheel ships no console-script entry point — so the documented command silently installed a stranger's library and left the user with noenvarscommand. README and Getting Started now document the git install this repo is actually consumed by (doeranddoer2both depend ongit+…/envars2).badge.fury.io/py/envars2;pypi.org/pypi/envars2/andpypi.org/simple/envars2/both 404. Nothing would ever publish it either —devops/pr-buildspec.ymlanddevops/master-buildspec.ymlstop atpre-commit+pytest, there is no publish phase. The Read the Docs badge is live and stays.your-usernameplaceholder clone URLs inREADME.md,docs/project/contributing.mdanddocs/project/ARCHITECTURE.mdwithtimeoutdigital/envars2.contributing.mdcorrections: it pointed at a placeholder fork URL and told contributors to open a PR againstmain; the default branch ismaster. The clone/push steps now describe the direct path for people with write access and say to fork first for those without.The broken install instruction is currently live on https://envars.readthedocs.io/en/latest/getting-started/, so this also fixes the published docs.
Review round 1
af6bcac): keep a fork path incontributing.mdfor contributors without write access; describe the unpinned install as tracking the default branch (currentlymaster) rather than the literal branch name..gitsuffix to the VCS URLs. Both documented commands were run end-to-end against these exact URLs and install a working CLI,git ls-remoteresolves the suffix-less URL, and the suffix-less form matches the existing pins indoeranddoer2.Not included
pyproject.tomlstill declaresversion = "0.1.0"while release tags are1.0.0–1.0.4— a real inconsistency (an install from tag1.0.4reports version0.1.0), but out of scope for a docs-only change.Test plan
pip install "git+https://github.com/timeoutdigital/envars2@1.0.4"into a clean venv → installs andenvars --helpprints the CLIuv add "envars @ git+https://github.com/timeoutdigital/envars2@1.0.4"in a freshuv initproject →uv run envars --helpworksmkdocs build --strict(the exact command.readthedocs.yamlruns) builds clean, and the reworkedcontributing.mdlist renders with correct numberingpre-commit run --files <changed>passes