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.
Plugins can declare any version number as a core dependency in their metadata.
If a plugin were to specify an incremental or similar non-release, e.g., due to an accidentally merged and released PR depending on future core features, this will result in unpredictable behavior (usually errors of some kind).
Therefore filter out plugins that specify core dependencies that look like irregular releases (RC, incrementals, snapshots, …)
Currently published plugin releases this applies to (and that would be removed):
https://updates.jenkins.io/download/plugins/build-symlink/ 1.0 (2.185-rc28469.6af78cb11bf8)
https://updates.jenkins.io/download/plugins/jcaptcha-plugin/ 1.0 (1.416-SNAPSHOT)
https://updates.jenkins.io/download/plugins/sshd/ 3.0.1 (2.282-rc30905.2ddf35821c11)
Impact should be non-existent, since they're all obsolete releases anyway.
Additionally, use this opportunity to improve robustness: If there is no release of a plugin that is valid, don't throw an NPE somewhere, just skip it. Also don't have an empty entry if there are no releases in
plugin-versions.json
.A future iteration of this feature could obtain the list of actually existing core releases so that
2.1000
would not be considered valid (as of early 2023 at least 😁), but this should be a reasonable start.