fix(release): support release candidate tags (vX.Y.Z-rc.N) and mark prereleases - #65
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
WalkthroughO Makefile, o workflow e a documentação de release passaram a aceitar versões estáveis e candidatas no formato ChangesSuporte a versões de release
Estimated code review effort: 2 (Simple) | ~10 minutes Sequence Diagram(s)sequenceDiagram
participant Operador
participant Makefile
participant Workflow
participant GHCR
participant GitHubRelease
Operador->>Makefile: informa uma versão estável ou -rc.N
Makefile->>Workflow: dispara o workflow de release
Workflow->>GHCR: publica a imagem com a tag completa
Workflow->>GHCR: publica latest somente para versão estável
Workflow->>GitHubRelease: cria a release com status prerelease conforme a versão
Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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 Coverage Summary Report
Note Total Filtered Application Coverage: 75.0% (1641 / 2187 lines) 🟡 |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #65 +/- ##
===========================================
+ Coverage 86.99% 87.28% +0.28%
===========================================
Files 109 115 +6
Lines 3653 3814 +161
Branches 140 158 +18
===========================================
+ Hits 3178 3329 +151
- Misses 346 347 +1
- Partials 129 138 +9
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.
Actionable comments posted: 3
🧹 Nitpick comments (1)
Makefile (1)
51-53: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winAtualize
docs/RELEASE.mdpara refletir o novo contrato.O guia ainda descreve somente
vX.Y.Ze o fluxo de publicação estável. Este código aceitavX.Y.Z-rc.N. Documente também o statusprerelease, as tags Docker completas e a política da taglatest.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@Makefile` around lines 51 - 53, Update the release documentation around the release workflow to reflect the VERSION contract accepted by the Makefile’s release target, including both vX.Y.Z and vX.Y.Z-rc.N formats. Document prerelease publishing, complete Docker tags, and the policy governing the latest tag while preserving the existing stable-release guidance.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/release.yml:
- Around line 26-30: Atualize o bloco que define TAG no workflow para não
interpolar diretamente inputs.version ou github.ref_name no script shell: passe
esses valores por env, leia-os com aspas e rejeite entradas multilinha antes da
validação e da escrita de tag e is_prerelease em GITHUB_OUTPUT.
- Line 68: Atualize o workflow de release para separar tags prerelease das
estáveis: mantenha steps.release_tag.outputs.tag completo no nome da release,
derive os aliases semver estáveis removendo -rc.* e preserve os aliases
vMAJOR.MINOR. Publique latest somente quando is_prerelease for false, sem
alterar os aliases ou tags das releases prerelease.
In `@Makefile`:
- Line 53: Use the strict SemVer component pattern 0|[1-9][0-9]* in both
validation entry points: update VERSION validation in Makefile lines 53-53,
escaping the final $ as $$, and update TAG validation in
.github/workflows/release.yml lines 31-34 with the same pattern so leading zeros
are rejected.
---
Nitpick comments:
In `@Makefile`:
- Around line 51-53: Update the release documentation around the release
workflow to reflect the VERSION contract accepted by the Makefile’s release
target, including both vX.Y.Z and vX.Y.Z-rc.N formats. Document prerelease
publishing, complete Docker tags, and the policy governing the latest tag while
preserving the existing stable-release guidance.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 45a3cd37-156c-4f51-8e46-4c0279b31eda
📒 Files selected for processing (2)
.github/workflows/release.ymlMakefile
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/release.yml:
- Around line 36-41: Update the tag validation block around TAG to reject any
carriage-return or newline characters before running grep, ensuring multiline
input cannot reach validation or output. Use printf for the validation input and
quote "$GITHUB_OUTPUT" when writing the tag output.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: b83fdfde-5fa2-4a9b-ae5a-be50aa390f8f
📒 Files selected for processing (3)
.github/workflows/release.ymlMakefiledocs/RELEASE.md
🚧 Files skipped from review as they are similar to previous changes (1)
- Makefile
Summary of Changes
Makefilerelease target regex to^v[0-9]+\.[0-9]+\.[0-9]+(-rc\.[0-9]+)?$to support release candidate tags (e.g.v1.0.0-rc.26)..github/workflows/release.ymlto setprerelease: trueon GitHub Release creation whenever tag contains-rc.Summary by CodeRabbit
Novos recursos
vX.Y.Z-rc.N) no processo de release.latesté atualizada somente para releases estáveis.Melhorias