feat: migrate from semantic-release to release-please#237
Conversation
yacosta738
commented
Mar 22, 2026
- Replaced semantic-release with release-please for version management
- Added release-please-config.json for configuration
- Updated release.yml workflow to use release-please-action
- Removed semantic-release plugins from package.json
- Added release-please CLI as devDependency
- Replaced semantic-release with release-please for version management - Added release-please-config.json for configuration - Updated release.yml workflow to use release-please-action - Removed semantic-release plugins from package.json - Added release-please CLI as devDependency
|
Warning Rate limit exceeded
⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughSwitch release automation from semantic-release to google-github-actions/release-please-action; update workflow job outputs/needs/refs/artifact names, adjust checkout/ref and token wiring, add release-please config and manifest, remove semantic-release config and related devDependencies/scripts. Changes
Sequence Diagram(s)mermaid Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ 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 |
# Conflicts: # .github/workflows/release.yml
✅ Contributor ReportUser: @yacosta738
Contributor Report evaluates based on public GitHub activity. Analysis period: 2025-03-22 to 2026-03-22 |
There was a problem hiding this comment.
Actionable comments posted: 6
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.github/workflows/release.yml:
- Around line 173-175: The checksum .sha256 file is being moved one directory
too far by the second mv command; update the move so both files are relocated to
the workspace root consistently from target/<target>/release (i.e. make the mv
for "$ARCHIVE_NAME.tar.gz.sha256" match the same destination used for
"$ARCHIVE_NAME.tar.gz"), adjusting the second mv invocation near the
ARCHIVE_NAME moves (and the analogous group at lines 197-199) so the .sha256
remains inside the repository workspace for the agentsync-*.sha256 artifact glob
to find it.
- Around line 51-61: In the Release Please workflow step (the step with id
"release" that uses google-github-actions/release-please-action@0613c7...),
replace the unsupported inputs: change default-branch: main to target-branch:
main, remove the dry-run input entirely, and remove skip-publish: true (do not
add an undocumented alternative); if you need to control release behavior
instead add the documented inputs skip-github-release or
skip-github-pull-request as appropriate.
In `@package.json`:
- Line 8: Remove the orphaned semantic-release configuration by deleting the
"release" npm script entry ("release": "release-please") from package.json and
removing the obsolete .releaserc.json file from the repo root so there is no
conflicting release configuration; ensure any CI or docs references to the old
semantic-release setup are updated to use the new release-please workflow.
- Line 8: Update the "release" npm script so it supplies the minimal required
release-please flags (e.g., include a subcommand like "release-pr" plus --token
and --repo-url placeholders or environment-variable references) so running "pnpm
run release" from the Makefile works locally, or alternatively add a separate
script (e.g., "release:ci" vs "release:local") to distinguish CI vs developer
usage; also remove the obsolete .releaserc.json file since it's the old
semantic-release config and is no longer used by release-please to avoid
confusion.
In `@release-please-config.json`:
- Around line 20-25: Enable manifest mode by adding the missing companion
manifest file .release-please-manifest.json and initialize it with the current
package version; create .release-please-manifest.json containing a JSON object
mapping the package key "." to the current version (e.g. { ".": "1.28.0" }) so
that the "packages" manifest-mode configuration in release-please-config.json
can succeed (ensure the version matches Cargo.toml).
- Around line 4-18: Update release-please config to match the schema: replace
the "changelog-sections" array of strings with an array of objects each having
"type" and "section" (e.g., { "type": "feat", "section": "Features" }), remove
the unsupported keys "include-void-in-tag", "single-line", "commit-message",
"tag-message", "pull-request-body", "pull-request-title", "indicator", and
"shard-count", ensure any "release-as" entries are string values (not null), and
if you intended a custom PR title pattern rename "pull-request-title" to
"pull-request-title-pattern".
🪄 Autofix (Beta)
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: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 85eed7aa-65fa-4d6e-ba9d-8fb384835d98
📒 Files selected for processing (3)
.github/workflows/release.ymlpackage.jsonrelease-please-config.json
- Fix release-please action inputs: target-branch instead of default-branch, removed dry-run and skip-publish - Fix Windows sha256 file path (../../../.. was one level too far) - Remove orphaned release script from package.json - Delete .releaserc.json (semantic-release config no longer needed) - Update release-please-config.json schema: changelog-sections as objects, remove unsupported keys - Add .release-please-manifest.json for manifest mode
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.github/workflows/release.yml:
- Around line 300-302: Update the pinned Node.js version in the GitHub Actions
workflow by changing the node-version value under the
actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 step from "24.13" to
"24.14.0"; locate the uses: actions/setup-node and the with: node-version
entries and update the node-version string accordingly so the workflow runs on
Node.js v24.14.0.
🪄 Autofix (Beta)
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: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 91b85c76-89d7-4a93-a334-35c7bbeaa807
📒 Files selected for processing (5)
.github/workflows/release.yml.release-please-manifest.json.releaserc.jsonpackage.jsonrelease-please-config.json
💤 Files with no reviewable changes (1)
- .releaserc.json
Add 'cargo fetch && cargo audit --fetch-index' step to ensure vulnerability database is current before rustsec/audit-check runs.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.github/workflows/ci.yml:
- Around line 196-198: The "Update vulnerabilities database" workflow step runs
"cargo fetch && cargo audit --fetch-index" but fails because the cargo-audit
binary isn't installed and "--fetch-index" is not a valid flag; either remove
this entire step and rely on the existing rustsec/audit-check@v2.0.0 step to
perform audits and DB fetching, or modify the step to first install cargo-audit
and then run "cargo audit" (without "--fetch-index"); target the step named
"Update vulnerabilities database" and the command string "cargo fetch && cargo
audit --fetch-index" when making the change.
🪄 Autofix (Beta)
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: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 5ae6e907-34c5-441c-93bd-f421c86e2fee
📒 Files selected for processing (1)
.github/workflows/ci.yml
The rustsec/audit-check action already handles cargo-audit installation and vulnerability database fetching internally.