Skip to content
Latchkey

What Is a Version Range?

A version range is a dependency constraint that matches more than one version, expressed with operators or shorthand that bound which releases are acceptable. The resolver then picks the highest version satisfying every range across the tree. Ranges balance receiving fixes automatically against the risk of unexpected updates.

Why it matters

A range lets a project absorb compatible bug fixes without manual edits, but it also means two installs at different times may resolve to different versions. That is why a lockfile records the exact resolved versions while the manifest keeps the ranges. Caret and tilde shorthands are common ways to express how much variation a range tolerates.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →