Git Conventional Commit & URL Converter
About Version Range Tester
The Version Range & npm / Cargo SemVer Tester tests software version strings against complex range operators (`^`, `~`, `>=`, `<=`, `||`, `1.x`, `-`), calculating exact matching intervals and dependency satisfaction in real time.
How to Use Version Range Tester
Step 1
Enter your SemVer range expression.
Step 2
Enter version strings to evaluate (separated by commas or newlines).
Step 3
Inspect the match breakdown table.
Step 4
Click "Copy Results".
Practical Use Cases for Version Range Tester
Debugging npm & yarn Dependency Resolution
Verify which versions of a library satisfy `package.json` version ranges like `^16.8.0 || ^17.0.0 || ^18.0.0`.
Setting Secure Dependency Bounds in Cargo & PyPI
Construct precise version range bounds preventing unexpected breaking changes while allowing security patch updates.
Input & Output Examples
Testing Multiple Versions against Range
Range: `>=2.0.0 <3.5.0 || ~4.1.0` | Versions: `2.4.1`, `3.5.0`, `4.1.2`, `4.2.0`
`2.4.1` $\\rightarrow$ ✅ Match | `3.5.0` $\\rightarrow$ ❌ No Match | `4.1.2` $\\rightarrow$ ✅ Match | `4.2.0` $\\rightarrow$ ❌ No Match
Key Features & Performance
- ✓Supports npm, Cargo, and Composer SemVer range syntaxes.
- ✓Batch version testing: paste dozens of candidate versions to test simultaneous matching.
- ✓Calculates minimum satisfying and maximum satisfying version from a list.
- ✓100% Client-Side memory execution.
- ✓1-Click Copy match summary.
Key Terminology & Definitions
Range Intersection
Combining multiple comparison sets (e.g. `>=1.0.0 <2.0.0`) that must all be satisfied simultaneously.
Logical OR Range (`||`)
A range union operator allowing a version to satisfy either the left or right comparison expression.
