crate publishing workflow#755
Conversation
Co-authored-by: harsha-simhadri <5590673+harsha-simhadri@users.noreply.github.com>
Co-authored-by: harsha-simhadri <5590673+harsha-simhadri@users.noreply.github.com>
Co-authored-by: harsha-simhadri <5590673+harsha-simhadri@users.noreply.github.com>
Co-authored-by: harsha-simhadri <5590673+harsha-simhadri@users.noreply.github.com>
Co-authored-by: harsha-simhadri <5590673+harsha-simhadri@users.noreply.github.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #755 +/- ##
==========================================
- Coverage 90.69% 89.55% -1.14%
==========================================
Files 459 459
Lines 85030 85030
==========================================
- Hits 77115 76150 -965
- Misses 7915 8880 +965
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR adds an automated crate publishing workflow for releasing DiskANN crates to crates.io. The workflow can be triggered manually via workflow_dispatch with a dry-run option (default: true) for testing, or automatically when pushing version tags matching v{major}.{minor}.{patch}. The implementation aims to enable safe testing of the release process without actual publication.
Changes:
- Added
.github/workflows/publish.ymlworkflow with dual-trigger support (tags and manual dispatch) - Added
.github/PUBLISH_CRATES.mddocumentation describing the release process and testing procedures - Implemented dry-run mode for testing packaging and validation without publishing
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 10 comments.
| File | Description |
|---|---|
.github/workflows/publish.yml |
New GitHub Actions workflow that validates versions, runs tests, and publishes workspace crates with optional dry-run mode |
.github/PUBLISH_CRATES.md |
Comprehensive documentation covering prerequisites, dry-run testing, release steps, and pre-release checklist |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
The automated publish workflow could only be triggered by pushing version tags, making it impossible to test changes to the workflow or validate a release without actually publishing to crates.io.
Changes
Workflow trigger
workflow_dispatchwithdry_runinput (defaults totrue)Publish logic
--dry-runflag tocargo publishwhen enabled🧪 DRY-RUN MODEvs📦 LIVE MODEDocumentation
RELEASING.md: Testing section with dry-run vs live comparison.github/TESTING_RELEASES.md: Step-by-step testing guideUsage
Manual test without publishing:
Actual publish (unchanged):
git tag v0.46.0 && git push origin v0.46.0Dry-run validates packaging, dependencies, and publish order across all 15 crates without uploading to the registry.
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.