Skip to content

Support bounded version ranges in mod dependencies#403

Open
Goober5000 wants to merge 1 commit into
KnossosNET:mainfrom
Goober5000:feature/version_ranges
Open

Support bounded version ranges in mod dependencies#403
Goober5000 wants to merge 1 commit into
KnossosNET:mainfrom
Goober5000:feature/version_ranges

Conversation

@Goober5000
Copy link
Copy Markdown
Contributor

@Goober5000 Goober5000 commented May 10, 2026

Adds NuGet interval notation ("[1.0,2.0)", "(1.0,]", etc.) and npm-style space-separated AND (">=1.0 <2.0") to SemanticVersion.SastifiesDependency. The dependency string is normalized into a list of single-operator constraints that are ANDed together. Existing dependency strings take a one-element fast path through the unchanged per-operator logic (extracted into SatisfiesSingleOp), so behavior is identical for every previously-supported form.

Depends on #404; in draft until that is merged.

@Goober5000 Goober5000 force-pushed the feature/version_ranges branch 3 times, most recently from 41f761c to c9542cd Compare May 11, 2026 00:32
Adds NuGet interval notation ("[1.0,2.0)", "(1.0,]", etc.) and npm-style space-separated AND (">=1.0 <2.0") to SemanticVersion.SastifiesDependency. The dependency string is normalized into a list of single-operator constraints that are ANDed together. Existing dependency strings take a one-element fast path through the unchanged per-operator logic (extracted into SatisfiesSingleOp), so behavior is identical for every previously-supported form.
@Goober5000 Goober5000 force-pushed the feature/version_ranges branch from c9542cd to 3e3a69c Compare May 13, 2026 03:05
@Goober5000 Goober5000 marked this pull request as ready for review May 13, 2026 03:05
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.

2 participants