You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With config.bump-after-update set to true in composer.json, PRs created by Renovate were failing because they only updated the lock file, not composer.json.
Why Composer's bump-after-update doesn't help
One might expect that since Renovate runs composer update internally, Composer's bump-after-update: true setting would automatically bump versions in composer.json. However, Renovate controls what gets committed, not just what Composer does during the update process.
The workflow is:
Renovate determines what needs updating
Based on rangeStrategy, Renovate decides whether to modify composer.json
Renovate runs composer update to regenerate the lockfile
Renovate commits only the files it intended to change based on rangeStrategy
With rangeStrategy: update-lockfile, even if Composer's bump-after-update modifies composer.json, Renovate discards those changes and only commits composer.lock.
Solution
Changed rangeStrategy to bump, which tells Renovate to:
.vortex/installer/tests/Fixtures/handler_process/_baseline/renovate.json is excluded by !.vortex/installer/tests/Fixtures/**
.vortex/installer/tests/Fixtures/handler_process/timezone_circleci/renovate.json is excluded by !.vortex/installer/tests/Fixtures/**
.vortex/installer/tests/Fixtures/handler_process/timezone_gha/renovate.json is excluded by !.vortex/installer/tests/Fixtures/**
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.
You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.
🔍 Trigger a full review
Walkthrough
The rangeStrategy configuration in renovate.json is updated from "update-lockfile" to "bump" to align with bump-after-update behavior, ensuring dependency version updates are correctly bumped rather than only updating lock files.
Changes
Cohort / File(s)
Summary
Renovate Configuration renovate.json
Changed rangeStrategy from "update-lockfile" to "bump" to correct version bumping behavior when bump-after-update is enabled.
Estimated code review effort
🎯 1 (Trivial) | ⏱️ ~3 minutes
Poem
🐰 A single knob we twist with care,
From lockfile updates to bumps so fair,
Now Renovate hops with proper grace,
Dependencies move to their rightful place! ✨
Check skipped - CodeRabbit’s high-level summary is enabled.
Title check
✅ Passed
The title clearly references issue #2249 and accurately describes the main change: modifying Renovate's rangeStrategy configuration from 'update-lockfile' to 'bump'.
Linked Issues check
✅ Passed
The pull request directly addresses issue #2249 by changing rangeStrategy to 'bump', which resolves the core requirement that Renovate must update both composer.json and composer.lock when Composer has bump-after-update enabled.
Out of Scope Changes check
✅ Passed
The pull request contains only a single, focused change to renovate.json's rangeStrategy configuration, which is directly within scope of issue #2249's requirements.
Docstring Coverage
✅ Passed
No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✏️ Tip: You can configure your own custom pre-merge checks in the settings.
✨ Finishing touches🧪 Generate unit tests (beta)
Create PR with unit tests
Post copyable unit tests in a comment
Commit unit tests in branch feature/2249-renovate-bump
Comment @coderabbitai help to get the list of available commands and usage tips.
✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 76.22%. Comparing base (7cf277d) to head (d4c4bdc). ⚠️ Report is 1 commits behind head on main.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
rangeStrategyfromupdate-lockfiletobumpCloses #2249
Problem
With
config.bump-after-updateset totrueincomposer.json, PRs created by Renovate were failing because they only updated the lock file, notcomposer.json.Why Composer's
bump-after-updatedoesn't helpOne might expect that since Renovate runs
composer updateinternally, Composer'sbump-after-update: truesetting would automatically bump versions incomposer.json. However, Renovate controls what gets committed, not just what Composer does during the update process.The workflow is:
rangeStrategy, Renovate decides whether to modifycomposer.jsoncomposer updateto regenerate the lockfilerangeStrategyWith
rangeStrategy: update-lockfile, even if Composer'sbump-after-updatemodifiescomposer.json, Renovate discards those changes and only commitscomposer.lock.Solution
Changed
rangeStrategytobump, which tells Renovate to:composer.jsoncomposer updateto regenerate the lockfilecomposer.jsonandcomposer.lockReferences
Test plan
composer.jsonandcomposer.lockSummary by CodeRabbit