fix(ci): remove illegal ../ changelog-path from release-please config#83
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
WalkthroughThis PR removes the explicit ChangesRelease-please configuration
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 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 |
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 `@release-please-config.json`:
- Around line 22-24: The docs link points to the root CHANGELOG.md but
release-please config for "packages/smoothui" no longer sets "changelog-path",
so release-please will create packages/smoothui/CHANGELOG.md; fix by either (A)
update the docs reference in changelog.mdx to point to
packages/smoothui/CHANGELOG.md, or (B) modify the release-please config under
the "packages/smoothui" entry to add "changelog-path": "CHANGELOG.md" at the
repo root so the changelog stays at the root—choose and apply one of these
options and update the corresponding reference string ("packages/smoothui" and
"changelog-path") accordingly.
🪄 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: CHILL
Plan: Pro
Run ID: 721769e0-fac6-44ba-990a-43dbf1c86deb
📒 Files selected for processing (1)
release-please-config.json
| "packages/smoothui": { | ||
| "package-name": "smoothui", | ||
| "changelog-path": "../../CHANGELOG.md" | ||
| "package-name": "smoothui" | ||
| } |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Find references to a root-level CHANGELOG.md across docs/config/workflows
rg -nP 'CHANGELOG\.md' -g '!**/node_modules/**' -C2
# Confirm no other package entry redirects changelog to repo root
rg -nP 'changelog-path' -C2Repository: educlopez/smoothui
Length of output: 525
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# 1) Inspect release-please-config.json around the changed area
echo "== release-please-config.json (around packages/smoothui) =="
nl -ba release-please-config.json | sed -n '1,120p' | sed -n '15,45p'
# 2) Confirm where docs reference the root CHANGELOG.md link
echo
echo "== References to root CHANGELOG.md =="
rg -n 'blob/main/CHANGELOG\.md' apps/docs -S || true
echo
echo "== References to any CHANGELOG.md mention in docs =="
rg -n 'CHANGELOG\.md' apps/docs/content/docs/guides/changelog.mdx -S || true
rg -n 'CHANGELOG\.md' apps/docs -S || true
# 3) Check for any other changelog-path config overrides
echo
echo "== Any changelog-path in repo =="
rg -n 'changelog-path' -S . || true
# 4) Look for existing package-level changelog file in repo
echo
echo "== Check if packages/smoothui/CHANGELOG.md exists =="
ls -la packages/smoothui/CHANGELOG.md 2>/dev/null || echo "MISSING: packages/smoothui/CHANGELOG.md"
ls -la CHANGELOG.md 2>/dev/null || echo "MISSING: root CHANGELOG.md"
# 5) Inspect release-please workflow to see which config file is used
echo
echo "== Inspect .github/workflows/release-please.yml =="
ls -ლა .github/workflows/release-please*.yml 2>/dev/null || true
for f in .github/workflows/release-please*.yml; do
[ -f "$f" ] || continue
echo "--- $f ---"
nl -ba "$f" | sed -n '1,200p'
doneRepository: educlopez/smoothui
Length of output: 183
🏁 Script executed:
#!/bin/bash
set -euo pipefail
print_numbered() {
local file="$1"
local start="$2"
local end="$3"
awk -v s="$start" -v e="$end" '{if(NR>=s && NR<=e) printf "%6d:%s\n", NR, $0}' "$file"
}
echo "== release-please-config.json (around packages/smoothui entry) =="
print_numbered release-please-config.json 15 40
echo
echo "== root CHANGELOG.md link references in apps/docs =="
rg -n 'blob/main/CHANGELOG\.md' apps/docs -S || true
echo
echo "== any CHANGELOG.md references in apps/docs/content/docs/guides =="
rg -n 'CHANGELOG\.md' apps/docs/content/docs/guides -S || true
echo
echo "== any CHANGELOG.md references anywhere in apps/docs =="
rg -n 'CHANGELOG\.md' apps/docs -S || true
echo
echo "== any changelog-path overrides anywhere in repo =="
rg -n 'changelog-path' -S . || true
echo
echo "== CHANGELOG.md files existence =="
ls -la packages/smoothui/CHANGELOG.md 2>/dev/null || echo "MISSING: packages/smoothui/CHANGELOG.md"
ls -la CHANGELOG.md 2>/dev/null || echo "MISSING: root CHANGELOG.md"
echo
echo "== Inspect release-please workflow(s) =="
ls -la .github/workflows/release-please*.yml 2>/dev/null || true
for f in .github/workflows/release-please*.yml; do
[ -f "$f" ] || continue
echo "--- $f ---"
sed -n '1,220p' "$f"
doneRepository: educlopez/smoothui
Length of output: 1840
🌐 Web query:
release-please v4 config default changelog-path when omitted packages/<dir> package-name
💡 Result:
In release-please v4, which utilizes a manifest-based configuration, the default behavior when changelog-path is omitted for a package is to use CHANGELOG.md [1][2]. When configuring packages in your release-please-config.json (or the manifest configuration), each package is defined as an entry under the packages object, where the key is the relative path from the repository root to that package (e.g., packages/my-dir) [3][2]. Regarding the package-name configuration: - For many release-type implementations (such as node), release-please is capable of automatically looking up the package name from local files (e.g., package.json), meaning you do not need to explicitly specify it [3][4]. - For other release-type implementations (such as python), or if you wish to override the detected name, you must provide the package-name explicitly within that package's configuration object [3][2]. If you were previously using older versions of release-please and configuring these options via GitHub Action inputs, you must now migrate them to the manifest configuration file (e.g., $.packages[path].changelog-path and $.packages[path].package-name) [2].
Citations:
- 1: https://loiccoyle.com/posts/release_please/
- 2: https://github.com/googleapis/release-please-action/blob/main/README.md
- 3: https://github.com/googleapis/release-please/blob/refs/heads/main/docs/manifest-releaser.md
- 4: https://github.com/googleapis/release-please/blob/HEAD/docs/manifest-releaser.md
🌐 Web query:
release-please manifest-releaser default changelog-path location when omitted package entry path
💡 Result:
When using release-please’s manifest releaser, the per-package config key "changelog-path" (used when a package entry is keyed by a directory path) defaults to "CHANGELOG.md" within that package directory when omitted.[1] So if your manifest has an entry like: - "path/to/mypkg": { "release-type": "…" } then release-please will write/read the changelog at: - "path/to/mypkg/CHANGELOG.md" (because the default changelog-path is relative to the package directory).[1] This behavior is explicitly documented as: "changelog-path": Path + filename of the changelog relative to the package directory; defaults to "CHANGELOG.md".[1]
Citations:
Docs link for CHANGELOG.md is now stale vs release-please output path.
Current config for packages/smoothui no longer sets changelog-path:
"packages/smoothui": {
"package-name": "smoothui"
}In release-please v4 manifest mode, omitting changelog-path defaults it to CHANGELOG.md within the package directory, so this will generate/populate packages/smoothui/CHANGELOG.md—but apps/docs/content/docs/guides/changelog.mdx still links to the root CHANGELOG.md.
Update the docs link to packages/smoothui/CHANGELOG.md (or adjust the release-please config to keep a root changelog).
🤖 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 `@release-please-config.json` around lines 22 - 24, The docs link points to the
root CHANGELOG.md but release-please config for "packages/smoothui" no longer
sets "changelog-path", so release-please will create
packages/smoothui/CHANGELOG.md; fix by either (A) update the docs reference in
changelog.mdx to point to packages/smoothui/CHANGELOG.md, or (B) modify the
release-please config under the "packages/smoothui" entry to add
"changelog-path": "CHANGELOG.md" at the repo root so the changelog stays at the
root—choose and apply one of these options and update the corresponding
reference string ("packages/smoothui" and "changelog-path") accordingly.
The release-please workflow fails on every push to main with:
release-please v4 rejects
..inchangelog-path(manifest mode can't write outside the package directory). The setting was added in the v3.4.0 setup commit and never ran clean.Fix
Removed
changelog-pathso the changelog defaults topackages/smoothui/CHANGELOG.md— standard monorepo behavior. No CHANGELOG.md exists yet, so nothing to migrate.Summary by CodeRabbit