-
Notifications
You must be signed in to change notification settings - Fork 0
Enable v1.0.0 release with enhanced version workflow #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: thoughtparametersllc <194255310+thoughtparametersllc@users.noreply.github.com>
Co-authored-by: thoughtparametersllc <194255310+thoughtparametersllc@users.noreply.github.com>
|
@copilot Remove those missing inputs as I intentionally removed them |
Co-authored-by: thoughtparametersllc <194255310+thoughtparametersllc@users.noreply.github.com>
Reverted the addition of those inputs (generate-badges, update-readme, readme-path, badge-style) and removed the README update step from action.yml. Badge generation now runs unconditionally as it did originally. The release workflow enhancement for specific version numbers is retained. Commit: f6d8bb5 |
thoughtparametersllc
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR enhances the release workflow to support explicit version number input (e.g., 1.0.0 or v1.0.0) while maintaining backward compatibility with semantic versioning keywords (major, minor, patch). This enables direct deployment of v1.0.0 through the GitHub Actions interface.
Key Changes:
- Modified version parsing logic in the release workflow to accept both explicit semantic versions and bump keywords
- Added comprehensive release documentation to README.md explaining both automatic and manual release workflows
- Updated CHANGELOG.md to document the new explicit version number support
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| .github/workflows/release.yml | Enhanced version determination logic with regex validation to accept explicit versions (e.g., 1.0.0, v1.0.0) in addition to semantic bump keywords |
| README.md | Added "Releasing" section documenting both automatic and manual release workflows with examples of version input formats |
| CHANGELOG.md | Documented the release workflow enhancement under [Unreleased] in both "Added" and "Changed" sections |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| BUMP_TYPE="${BUMP_TYPE#v}" | ||
| echo "Using specific version: $BUMP_TYPE" | ||
| NEW_VERSION="v${BUMP_TYPE}" | ||
| else |
Copilot
AI
Nov 20, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When a specific version is provided, there's no validation to prevent version downgrades or duplicate versions. Consider adding a check to ensure the specified version is greater than the latest tag and doesn't already exist:
# After line 128, add validation
if git tag -l "$NEW_VERSION" | grep -q "$NEW_VERSION"; then
echo "Error: Version $NEW_VERSION already exists as a tag"
exit 1
fi
# Also verify version is greater than current
if [[ "$NEW_VERSION" < "$LATEST_TAG" ]]; then
echo "Error: Version $NEW_VERSION is less than current version $LATEST_TAG"
exit 1
fi| else | |
| # Validation: prevent duplicate tags and version downgrades | |
| if git tag -l "$NEW_VERSION" | grep -q "$NEW_VERSION"; then | |
| echo "Error: Version $NEW_VERSION already exists as a tag" | |
| exit 1 | |
| fi | |
| # Compare versions (strip 'v' prefix) | |
| if [ "$(printf '%s\n' "${BUMP_TYPE}" "${CURRENT_VERSION}" | sort -V | tail -n1)" != "${BUMP_TYPE}" ]; then | |
| echo "Error: Version $NEW_VERSION is not greater than current version v${CURRENT_VERSION}" | |
| exit 1 | |
| fi |
Description
Release workflow couldn't accept explicit version numbers for v1.0.0 deployment. This PR enhances the release workflow to support specific version numbers while maintaining backward compatibility with semantic versioning keywords.
Type of Change
Related Issue
Fixes #(issue number)
Changes Made
release.yml - Support explicit version numbers
1.0.0orv1.0.0in addition tomajor/minor/patch^v?[0-9]+\.[0-9]+\.[0-9]+$validates and strips prefixREADME.md - Release documentation
CHANGELOG.md - Version workflow enhancement
[Unreleased]sectionChangelog
[Unreleased]sectionTesting
Validation performed:
1.0.0,v1.0.0,major,minor,patchDocumentation
Security
Security review:
Checklist
Additional Notes
Deploy v1.0.0: Actions → Release and Marketplace → Run workflow → Enter
1.0.0→ RunThe release workflow now supports:
1.0.0,v1.0.0,2.5.3major,minor,patchOriginal prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.