Ignore upgrades based on source versions? #19421
-
What would you like Renovate to be able to do?This use case is marginal, but we have seen it in other codebases and use it to this day because it's handy. We call it 'permanent SNAPSHOT' development. Imagine you have two modules, Maven in our case, with module B @ 1.2.3-SNAPSHOT depending on module A @ 4.5.6-SNAPSHOT. Now, given a frequent enough release cycle, what will happen is: Module A 4.5.6 gets released, module B is now depending on a SNAPSHOT version that's still around in developer local repositories, but that doesn't exist anymore. Also, the version in module B must either be updated to 4.5.6 or 4.5.7-SNAPSHOT, and this should be pulled by any developer working on the project. Given a complex enough codebase and enough developers, people forget to either make those updates and/or pull to get the latest status, preventing them from working directly on an up-to-date local environment. What we do with permanent SNAPSHOTs instead is to develop all modules with a SNAPSHOT version that doesn't include the particular incremental, e.g. module B is now 1.2-SNAPSHOT and module A 4.5-SNAPSHOT. This means that the only moment where the module A dependency in module B is at 4.5.6 is during the release tag creation. Before the release & as soon as it's performed, that is, 99% of the time, module B depends on module A @ 4.5-SNAPSHOT. This allows for stabler development environments. Now, going back to Renovate, the problem is that it will prompt us to upgrade module's B dependency to module A 4.5-SNAPSHOT to 4.5.6 when it gets released, then 4.5.7 when it gets released, etc. Hence, in our case we would rather be able to ignore any upgrade where the source version matches If you have any ideas on how this should be implemented, please tell us here.Introduce a new parameter called Is this a feature you are interested in implementing yourself?Yes |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 4 replies
-
|
use Footnotes |
Beta Was this translation helpful? Give feedback.
use
matchCurrentValue1 ormatchCurrentVersion2Footnotes
https://docs.renovatebot.com/configuration-options/#matchcurrentvalue ↩
https://docs.renovatebot.com/configuration-options/#matchcurrentversion ↩