Skip to content

Renovate: take Bun's packageManager into the Bun group - #49

Merged
firsttris merged 1 commit into
mainfrom
renovate-bun-group
Nov 4, 2026
Merged

firsttris merged 1 commit into
mainfrom
renovate-bun-group

Conversation

@firsttris

@firsttris firsttris commented Nov 4, 2026 •

Copy link
Copy Markdown
Owner

Renovate's bun manager already reads "packageManager": "bun@x.y.z" in package.json as the npm package bun. The Bun group only matched oven/bun / docker.io/oven/bun and oven-sh/bun, the latter from an extra regex manager that reads the same line a second time. So the bun update lands in the monthly auto-merged renovate/minor-patch PR while oven/bun lands in renovate/bun: the image's Bun and CI's Bun drift apart, and the line is edited by two managers.

Fix (as in firsttris/stellwerk#26 and firsttris/fernsicht#18): drop the regex manager for packageManager and add bun to the Bun group's matchPackageNames.

Checked with Renovate 44.211.0 (renovate --platform=local --dry-run=lookup) on an export of the repo with Bun pinned back to 1.3.0 (packageManager and oven/bun:1.3.0 in docker/Dockerfile); listed is every Bun dependency and the branch of its update. renovate-config-validator: validated successfully.

Not checkable here: the oven-sh/bun github-releases lookup in the red run fails in this sandbox (GitHub GraphQL is blocked), so it shows "no update"; on renovate.com it would be a second, duplicate update of the same line.

Red (origin/main, Bun pinned back to 1.3.0)

bun package.json: bun (packageManager) current=1.3.0
    minor 1.4.4 -> renovate/minor-patch
dockerfile docker/Dockerfile: oven/bun (stage) current=1.3.0
    minor 1.4.4 -> renovate/bun
github-actions .github/workflows/ci.yml: bun (uses-with) current=undefined skip=unspecified-version (no update)
github-actions .github/workflows/extension.yml: bun (uses-with) current=undefined skip=unspecified-version (no update)
github-actions .github/workflows/hoster-probe.yml: bun (uses-with) current=undefined skip=unspecified-version (no update)
github-actions .github/workflows/release.yml: bun (uses-with) current=undefined skip=unspecified-version (no update)
regex package.json: oven-sh/bun () current=1.3.0 (no update)
regex package.json: oven-sh/bun () current=1.3.0 (no update)
DUPLICATE packageManager readers: bun:package.json:bun, regex:package.json:oven-sh/bun
FAIL: 2 problem(s)

Green (this branch)

bun package.json: bun (packageManager) current=1.3.0
    minor 1.4.4 -> renovate/bun
dockerfile docker/Dockerfile: oven/bun (stage) current=1.3.0
    minor 1.4.4 -> renovate/bun
github-actions .github/workflows/ci.yml: bun (uses-with) current=undefined skip=unspecified-version (no update)
github-actions .github/workflows/extension.yml: bun (uses-with) current=undefined skip=unspecified-version (no update)
github-actions .github/workflows/hoster-probe.yml: bun (uses-with) current=undefined skip=unspecified-version (no update)
github-actions .github/workflows/release.yml: bun (uses-with) current=undefined skip=unspecified-version (no update)
ok

https://claude.ai/code/session_01Y3rdfbWb1xDUdPRng7TX9Z


Generated by Claude Code

Renovate's bun manager already reads "packageManager": "bun@x.y.z" in
package.json as the npm package `bun`. The Bun group only matched
oven/bun and oven-sh/bun (an extra regex manager that read the same line a
second time), so the `bun` update went to the monthly auto-merged
renovate/minor-patch PR while oven/bun went to renovate/bun: the image and
CI's Bun could drift apart, and the line was edited twice. Drop the regex
manager and match `bun` in the Bun group, as in firsttris/stellwerk and
firsttris/fernsicht.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y3rdfbWb1xDUdPRng7TX9Z
@firsttris
firsttris merged commit 31ec3da into main Nov 4, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants