-
-
Notifications
You must be signed in to change notification settings - Fork 633
fix: remove v prefix from git tags to restore historical convention #2268
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
base: master
Are you sure you want to change the base?
Conversation
WalkthroughThe PR removes the leading "v" prefix from git tag examples and tag creation in release tooling and docs, updates changelog guidance to use unprefixed versions, and adds notes about historical v-prefixed tags that must be stripped when composing changelog links. Changes
Sequence Diagram(s)(omitted — changes are documentation and small release-tooling adjustments without new multi-component control flow) Estimated code review effort🎯 2 (Simple) | ⏱️ ~15 minutes Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches✅ Passed checks (5 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Organization UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (4)
✅ Files skipped from review due to trivial changes (1)
🚧 Files skipped from review as they are similar to previous changes (2)
🧰 Additional context used🧠 Learnings (4)📓 Common learnings📚 Learning: 2025-12-19T18:57:59.314ZApplied to files:
📚 Learning: 2025-12-19T18:57:59.314ZApplied to files:
📚 Learning: 2025-12-19T18:57:59.314ZApplied to files:
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
🔇 Additional comments (2)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Code Review Feedback✅ Overall AssessmentThis is a well-executed fix that restores consistency to the git tag naming convention. The change is minimal, well-documented, and addresses the root cause identified in issue #2267. 🎯 Strengths
🔍 Code Quality
# Create git tag (skip if it already exists)
# Note: Tags use version without 'v' prefix (e.g., '16.2.0' not 'v16.2.0')
# to match the historical convention used from version 2.0.0 through 16.1.2
tag_name = actual_gem_version✅ Good:
🧪 Test Plan RecommendationsThe PR mentions a test plan but doesn't show verification. I recommend testing: # 1. Dry run to verify tag name format
rake release[16.3.0,true]
# Expected: Should show tag creation as "git tag 16.3.0" (no 'v')
# 2. Verify tag existence check handles both formats
git tag 16.2.1 # Create test tag without 'v'
rake release[16.2.1,true]
# Expected: Should detect existing tag and skip creation
# 3. Verify rollback scenario (from docs/releasing.md:267)
git tag -d 16.2.1 # Delete test tag
# Expected: Should work (no 'v' prefix assumed)📝 Minor Suggestions
🔒 Security & Performance
🎬 Final RecommendationAPPROVE ✅ This PR successfully:
The minor suggestions above are optional improvements. The PR is ready to merge as-is. 📚 References
|
Code ReviewSummaryThis PR correctly addresses the git tag naming inconsistency by removing the ✅ Strengths
📋 Observations
🔍 Code Qualityrakelib/release.rake:249-251 # Note: Tags use version without 'v' prefix (e.g., '16.2.0' not 'v16.2.0')
# to match the historical convention used from version 2.0.0 through 16.1.2
tag_name = actual_gem_version✅ Clean implementation with good inline documentation explaining the reasoning. Documentation Files 🎯 Recommendations
Security & Performance✅ No security concerns Test CoverageOverall AssessmentExcellent work! This PR fixes a real inconsistency that caused broken links and confusion. The solution is clean, well-documented, and aligns with the project's long-standing conventions. Just verify the CI failure and test the dry-run mode before merging. Review performed by Claude Code following CLAUDE.md guidelines |
4dcffed to
d2e2bc7
Compare
Code Review - PR #2268SummaryThis PR successfully restores the historical git tag naming convention by removing the ✅ Strengths1. Well-Researched and Justified
2. Comprehensive Documentation Updates
3. Minimal, Focused Changes
|
PR #1856 unintentionally introduced a `v` prefix to git tags when it replaced `release-it` with manual git commands. The `release-it` tool auto-detected the existing tag format (no `v` prefix), but the manual implementation explicitly added `v#{version}`. This broke 9+ years of consistent tagging convention (versions 2.0.0 through 16.1.2 all used no `v` prefix) and caused issues like broken CHANGELOG links (fixed in PR #2263). Changes: - Remove `v` prefix from tag creation in release.rake - Update releasing.md to document the correct convention - Update update-changelog.md to reflect no `v` prefix for future tags - Add notes about historical v16.2.0.beta.x tags that have `v` prefix Fixes #2267 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
d2e2bc7 to
8c27aed
Compare
Code Review: Fix git tag v prefixSummaryThis PR correctly restores the historical tag naming convention by removing the ✅ Strengths
🔍 Code Quality Reviewrakelib/release.rake:246-257# Create git tag (skip if it already exists)
# Note: Tags use version without 'v' prefix (e.g., '16.2.0' not 'v16.2.0')
# to match the historical convention used from version 2.0.0 through 16.1.2
tag_name = actual_gem_version
tag_exists = system("cd #{monorepo_root} && git rev-parse #{tag_name} >/dev/null 2>&1")
if tag_exists
puts "Git tag #{tag_name} already exists, skipping tag creation"
else
sh_in_dir(monorepo_root, "git tag #{tag_name}")
end✅ Clean implementation: Simply changes 📝 Documentation ReviewThe documentation updates are thorough and consistent:
|
Code Review - PR #2268✅ Overall AssessmentThis is an excellent fix that restores 9+ years of consistent git tag convention. The PR is well-researched, thoroughly documented, and correctly implemented. 🎯 Strengths
🔍 Code Quality
# Create git tag (skip if it already exists)
# Note: Tags use version without 'v' prefix (e.g., '16.2.0' not 'v16.2.0')
# to match the historical convention used from version 2.0.0 through 16.1.2
tag_name = actual_gem_version # ✅ Changed from "v#{actual_gem_version}"✅ Perfect - Clear comment explains the reasoning Documentation Updates
📋 Verification Checklist✅ All CI checks passing 🚀 RecommendationsBefore Merging:
Post-Merge: 💡 Minor Suggestions (Optional)
✅ VerdictAPPROVED - This PR should be merged. It:
Great work tracking down the root cause and providing such thorough historical analysis! 🎉 Testing Note per CLAUDE.md: This change cannot be fully tested until the next actual release, which is acceptable since:
|
Code Review - PR #2268✅ Overall AssessmentThis is a well-executed fix that resolves a genuine inconsistency issue. The PR correctly restores the historical git tag convention (no All CI checks have passed ✅ 🎯 Strengths
📝 Code Qualityrakelib/release.rake:246-251 # Note: Tags use version without 'v' prefix (e.g., '16.2.0' not 'v16.2.0')
# to match the historical convention used from version 2.0.0 through 16.1.2
tag_name = actual_gem_version✅ Clear, explanatory comment Documentation Changes
🔍 Considerations1. Testing the Release Script
|
|
Given the 16.2.0 release is our unified React on Rails Pro release, I think it’s worth considering if we switch to the more standard v version number tags. That is more descriptive and used by our other flagship product, ShakaPacker. I think if we’re going to make the switch, now is a reasonable time to make the switch. The more standard we can be, the easier it is for AI to understand our project. I don’t see any big issue in making the switch to including the v and being consistent going forward. |
Summary
vprefix from git tag creation in the release script to restore the historical convention used from version 2.0.0 through 16.1.2v16.2.0.beta.xtags that were created withvprefixBackground
PR #1856 unintentionally introduced a
vprefix to git tags when replacingrelease-itwith manual git commands. Therelease-ittool auto-detected the existing tag format (novprefix), but the manual implementation explicitly addedv#{version}.This broke 9+ years of consistent tagging (222 tags without
vprefix vs 30 tags withvprefix) and caused issues like broken CHANGELOG links (fixed in PR #2263).Changes
rakelib/release.rakevprefix fromtag_namevariabledocs/contributor-info/releasing.md.claude/commands/update-changelog.mdTest plan
vprefix (dry run:rake release[16.3.0,true])Fixes #2267
🤖 Generated with Claude Code
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.