lazy.nvim icon indicating copy to clipboard operation
lazy.nvim copied to clipboard

feature: See outdated versions with `version`

Open nihaals opened this issue 1 year ago • 25 comments

Did you check the docs?

  • [X] I have read all the lazy.nvim docs

Is your feature request related to a problem? Please describe.

If you use e.g. version = "^0.1", there isn't an easy way to tell when there's a new version that isn't part of the range (e.g. v0.2 or v1). With check_pinned you can see that there are commits after the version you're on, but because of this being so noisy (just because there are commits you're not on doesn't mean there's a version to update to and you're almost always going to be behind since you're using a tag), you end up ignoring the "outdated" list and just update whenever you see an update that fits into your range (e.g. v0.1.1 or a commit for a plugin you don't use version for).

Describe the solution you'd like

It would be great if there was a way to differentiate between a new commit being available for a plugin that uses version that you aren't going to update to and when a new version has been released that doesn't fit into your range. It also seems almost unintentional that check_pinned shows new commits since you intentionally used a version range and I would expect the option to instead show the plugin as outdated only when a version has been released that isn't part of your set range.

For example, if you use a plugin and set version = "^0.1" and it releases v0.1.1, you can update to it and this flow works great already.

If you've updated to v0.1.1 and a new commit is pushed that isn't part of a tag yet, it shows as outdated. If this was the intention behind check_pinned then this can just be ignored, especially if this FR would add another option and you could just not set check_pinned anymore to reduce noise.

If the plugin releases v0.2.0, you don't have a great way of knowing. It would be great if there was an option similar to check_pinned that showed a section for plugins that are updated to the latest version in its range, but there are now versions outside of its range that you aren't updating to, so you know to bump version, check for breaking changes, update your config if needed and update.

Describe alternatives you've considered

  • You can just keep checking for new releases manually e.g. on GitHub which isn't great
  • You can use check_pinned and check the commit log for every plugin and see if there's actually been a new release as opposed to new commits, but would need to be done "manually" and wouldn't be done all the time as you need to go through every plugin with new commits and skim its commits

Additional context

No response

nihaals avatar Aug 29 '24 01:08 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Sep 28 '24 01:09 github-actions[bot]

No stale

nihaals avatar Oct 01 '24 17:10 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Nov 01 '24 02:11 github-actions[bot]

No stale

nihaals avatar Nov 01 '24 11:11 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Dec 02 '24 02:12 github-actions[bot]

No stale

nihaals avatar Dec 03 '24 22:12 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Jan 04 '25 01:01 github-actions[bot]

No stale

nihaals avatar Jan 04 '25 11:01 nihaals

This would be a great feature, I use version = "*" to make sure that my config remains somewhat stable. I have noticed instances where a maintainer has stopped tagging their plugins and I fall extremely behind (e.g. plenary for example)... I couldn't get some other plugin working because the last tag there was far outdated. In these instances picking a new pin or setting lazy = false for that plugin is fine, but it would be nice to have a feature that says "12 commits behind HEAD" or something similar when running check or update.

xavierchanth avatar Feb 08 '25 14:02 xavierchanth

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Mar 11 '25 02:03 github-actions[bot]

No stale

nihaals avatar Mar 11 '25 12:03 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Apr 11 '25 02:04 github-actions[bot]

No stale

nihaals avatar Apr 11 '25 10:04 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar May 12 '25 02:05 github-actions[bot]

No stale

nihaals avatar May 12 '25 17:05 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Jun 12 '25 02:06 github-actions[bot]

No stale

nihaals avatar Jun 13 '25 13:06 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Jul 30 '25 02:07 github-actions[bot]

No stale

nihaals avatar Jul 30 '25 08:07 nihaals

This change adds a checker.check_tags option, listing plugins as outdated when the last tag differs.

Not sure how to render the new tag but the information is available, can you confirm it works for you?

LEI avatar Aug 01 '25 09:08 LEI

Seems to work great!

nihaals avatar Aug 28 '25 10:08 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Sep 28 '25 02:09 github-actions[bot]

No stale

nihaals avatar Sep 28 '25 11:09 nihaals

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Oct 29 '25 02:10 github-actions[bot]

No stale

nihaals avatar Oct 29 '25 11:10 nihaals