Detect and separate upgrades from an "unstable" npm version #22155
Replies: 6 comments
-
|
@fullstackzach I've transferred this into the main repo because I don't think we have any way to catch this type of update with today's features. Today we have an "updateType" field for each update, which is usually major/minor/patch/digest/pin. The case you show would be classified as "minor". It's a pretty interesting edge case. It's not quite what I'd usually call an "unstable" update because it's going from an unstable to stable. But also the "breaking change" itself is not even because of unstable -> stable. The breaking change is because So assuming the breaking change was in One possible way we could handle this is to add a new internal field called
Then this field can be exposed to packageRules and your rule would instead be like this: "packageRules": [
{
"isBreaking": false,
"groupName": "Minor and patch packages"
}
] |
Beta Was this translation helpful? Give feedback.
-
|
I have met similar issue. My understanding(it is wrong) was that I want to control updates that is from unstable version to stable version. For example, when use the renovate.json, renovate update twillo azu/renovate-test-ignoreUnstable#2 Actually, this updates includes breaking changes. |
Beta Was this translation helpful? Give feedback.
-
|
@azu You really should use some ci checks before automerge, so that it will stop renovate from merging incompatible packages. |
Beta Was this translation helpful? Give feedback.
-
|
@viceice Yes, CI check the updates. I want to update unstable versions manually. Current workaround ignore the package by |
Beta Was this translation helpful? Give feedback.
-
|
Renovate should update unstable -> unstable only if they share the same major.minor.patch. I think this feature would benefit from us having the concept of "isBreaking" so that you can disable automerge for all breaking, including both major or unstable like this. |
Beta Was this translation helpful? Give feedback.
-
|
OK. My understanding is following:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Which Renovate are you using? CLI, App, or Pro
Self hosted CLI running from a cron job
Which platform are you using? GitHub, GitLab, Bitbucket Azure DevOps
GitLab self-hosted
Renovate pre-set config
What is your question?
I currently have our patch and minor version packages set to be grouped together into one PR. But, ran into a case where one package (date-fns) had breaking changes between v2-unstable and v2-stable, grouped in with others.
Is there a packageRules config change I can use to separate this situation (moving from unstable to stable) into its own PR so it can be inspected on its own?
Beta Was this translation helpful? Give feedback.
All reactions