fix: reject non-semver candidate versions in isVersionSatisfies - #1009
Merged
Conversation
Distributions like JetBrains Runtime publish 4-segment versions such as '17.0.8.1+1080.1' that the semver package rejects. Both compareBuild and satisfies throw on these, which surfaced to users as "Error: Invalid Version: 17.0.8.1+1080.1" and aborted the whole install when any available version was non-semver. Guard with an early semver.valid check so unparseable versions are treated as a non-match. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
v-mahabaleshwars
approved these changes
Jun 16, 2026
Distributions like JetBrains Runtime publish 4-segment versions such as '17.0.8.1+1080.1' that the semver package rejects. Both compareBuild and satisfies throw on these, which surfaced to users as "Error: Invalid Version: 17.0.8.1+1080.1" and aborted the whole install when any available version was non-semver. Guard with an early semver.valid check so unparseable versions are treated as a non-match.
Description:
rejects invalid semver java versions rather than throwing an error. Allow valid java versions in a list with invalid versions to be used (specifically the JBR version mentioned above)
Related issue:
#1008
Check list: