Skip to content

Fix versionInRange for multi-interval OSV ranges#18

Merged
andrew merged 1 commit into
mainfrom
fix/version-in-range-multi-interval
May 2, 2026
Merged

Fix versionInRange for multi-interval OSV ranges#18
andrew merged 1 commit into
mainfrom
fix/version-in-range-multi-interval

Conversation

@andrew
Copy link
Copy Markdown
Contributor

@andrew andrew commented May 2, 2026

`versionInRange` returned false for versions that fell within the first interval of a multi-interval range. The `introduced` event unconditionally assigned to `inRange`, so a later interval whose `introduced` version was above the target would reset it to false.

For example, with events `[introduced:0, fixed:1.0, introduced:2.0, fixed:3.0]`, version `0.5` would be correctly matched by the first interval, then incorrectly reset to false by `introduced:2.0`.

The fix: `introduced` events can only set `inRange` to true, never to false.

When an OSV range has multiple introduced/fixed intervals, a later
introduced event would overwrite inRange to false even when the version
was already matched by an earlier interval. Now introduced events can
only set inRange to true, never reset it to false.
@andrew andrew merged commit e02deb9 into main May 2, 2026
2 checks passed
@andrew andrew deleted the fix/version-in-range-multi-interval branch May 2, 2026 16:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant