docs: add documentation about releases in the contributing doc#56
Conversation
WalkthroughThis update enhances the Changes
Sequence Diagram(s)sequenceDiagram
participant Dev as Developer
participant GH as GitHub Actions
participant RP as release-please
participant Team as TofuPilot Team
participant PyPI as PyPI
Dev->>GH: Commit to main ("feat"/"fix")
GH->>RP: Trigger automated release process
RP->>GH: Create release pull request
Team->>GH: Merge release pull request
GH->>GH: Update changelog and setup.py version
GH->>PyPI: Upload package using Twine
Poem
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
a2cb9d9 to
6bc28c7
Compare
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (2)
CONTRIBUTING.md (2)
55-65: Clear Documentation on Package Publishing ProcessThis new section thoroughly explains how the package is published using release-please and Twine via GitHub Actions. The links to the relevant documentation and workflow files provide additional context for developers. Consider adding a brief troubleshooting note or common error scenarios in case the automated release process encounters issues.
91-113: Clear Guidelines for Releasing a Test VersionThe instructions for publishing to TestPyPI are well-detailed and include all necessary steps. As a minor improvement, consider rephrasing “with the exact same version” (line 102) to simply “with the same version” to reduce wordiness.
🧰 Tools
🪛 LanguageTool
[style] ~102-~102: ‘exact same’ might be wordy. Consider a shorter alternative.
Context: ... 2. If a previous test package with the exact same version was released, update the versio...(EN_WORDINESS_PREMIUM_EXACT_SAME)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📥 Commits
Reviewing files that changed from the base of the PR and between a2cb9d91b6c2f58a42b8a2b998786fb8d96f7489 and 6bc28c72189703dea577091c34ee85f4d94be438.
📒 Files selected for processing (1)
CONTRIBUTING.md(1 hunks)
🧰 Additional context used
🪛 LanguageTool
CONTRIBUTING.md
[style] ~102-~102: ‘exact same’ might be wordy. Consider a shorter alternative.
Context: ... 2. If a previous test package with the exact same version was released, update the versio...
(EN_WORDINESS_PREMIUM_EXACT_SAME)
⏰ Context from checks skipped due to timeout of 90000ms (2)
- GitHub Check: test (windows-latest)
- GitHub Check: test (ubuntu-latest)
🔇 Additional comments (2)
CONTRIBUTING.md (2)
66-90: Detailed Instructions for Testing the Python Client LocallyThe step-by-step guide for testing the Python client locally is clear and well-structured. The instructions for updating the version in
setup.py, cleaning the distribution directory, and building the package are easy to follow. This should greatly help contributors in verifying their changes before an official release.
114-118: Concise Process for Releasing a Production VersionThe production release section clearly emphasizes that only TofuPilot team members can merge the release PR, ensuring controlled production deployments, while still welcoming community contributions. This reinforces the necessary security and process controls.
6bc28c7 to
ea726ba
Compare
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
CONTRIBUTING.md (1)
81-98: Structured Guide for Releasing a Test Version
The section covers all the essential steps for testing a new package version on TestPyPI—from rebuilding the package to using Twine for upload.
- Suggestion : The phrase "with the exact same version" (line 88) may be simplified to "with the same version" or "identical version" for brevity, as indicated by the static analysis hint.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📥 Commits
Reviewing files that changed from the base of the PR and between 6bc28c72189703dea577091c34ee85f4d94be438 and ea726ba.
📒 Files selected for processing (1)
CONTRIBUTING.md(1 hunks)
🧰 Additional context used
🪛 LanguageTool
CONTRIBUTING.md
[style] ~102-~102: ‘exact same’ might be wordy. Consider a shorter alternative.
Context: ... 2. If a previous test package with the exact same version was released, update the versio...
(EN_WORDINESS_PREMIUM_EXACT_SAME)
🔇 Additional comments (3)
CONTRIBUTING.md (3)
55-64: Detailed Documentation for the Publishing Process
The new section clearly explains how TofuPilot is published using release-please and Twine via GitHub Actions. The inclusion of links to the relevant workflow files and documentation provides helpful context. Ensure that "releasable units" are well understood by developers—consider briefly defining what qualifies (e.g., commits with"feat"or"fix"prefixes inmain).
60-80: Clear, Step-by-Step Local Testing Instructions
The "Testing the Python Client locally" section provides a well-structured guide. The instructions on creating a new branch, updating the version insetup.py(from"X.Y.Z"to"X.Y.Z.dev0"), cleaning the distribution directory, building the package, and installing it locally are concise and actionable.
99-100: Controlled Production Release Process
The documentation clearly states that only TofuPilot team members can merge the release PR intomain, ensuring that production releases are properly managed. This emphasis on gated access is excellent for maintaining release integrity.
Summary by CodeRabbit