SemVer Version Calculator

Calculate Semantic Versioning release bumps, evaluate caret (^) and tilde (~) ranges, and audit dependency constraints.

Semantic Versioning (SemVer 2.0.0) Analyzer

Inspect MAJOR.MINOR.PATCH segments, calculate release bumps, and evaluate package manager ranges

MAJOR (Breaking)
1
MINOR (Feature)
4
PATCH (Bug Fix)
2

Automated Release Bumps (npm version / cargo bump)

Patch Bump (Fixes)
v1.4.3
Backwards-compatible bug fix
Minor Bump (Features)
v1.5.0
New backwards-compatible feature
Major Bump (Breaking)
v2.0.0
Incompatible API changes
Pre-Patch
v1.4.3-beta.0
Pre-Minor
v1.5.0-beta.0
Pre-Major
v2.0.0-beta.0

Dependency Range Evaluator (npm package.json / Pipfile)

Quick Range Presets:
Resolved Range Window: >=1.2.0 <2.0.0 (Allows non-breaking updates within major version 1)
Candidate VersionRange (^1.2.0) Satisfied?
v1.4.2 Allowed
v1.4.3 Allowed
v1.5.0 Allowed
v2.0.0 Blocked
v0.9.0 Blocked
v1.0.0 Blocked
v2.0.0 Blocked

Preventing Dependency Hell with Semantic Versioning

Modern software engineering relies on thousands of open-source dependencies. Semantic Versioning provides a universal contract between library authors and software developers, establishing explicit rules about which updates are safe to ingest automatically and which require code audits. Understanding SemVer range operators protects codebases against unexpected breaking builds.

Use Cases

  • Dependency Range Auditing (package.json)

    Verify exactly which upstream package updates npm, yarn, or pnpm will install when building your production applications.

  • Automated Release CI/CD Workflows

    Determine whether pending Git commits or semantic-release pull requests require a PATCH, MINOR, or breaking MAJOR version bump.

  • Understanding Caret (^) vs Tilde (~)

    Clarify how `^1.2.3` differs from `~1.2.3`, especially when managing critical zero-major (`0.y.z`) pre-v1.0 ecosystem libraries.

  • Pre-Release Tagging & Canary Builds

    Formulate valid pre-release tags (`1.2.3-alpha.0`, `1.2.3-rc.1`) that satisfy packaging registries and automated semver sorting.

Key Capabilities

Instant Release Bump Matrix

Computes immediate next release strings for Patch (Bug fixes), Minor (New features), and Major (Breaking API changes).

Interactive Range Satisfaction Checker

Evaluates arbitrary SemVer range expressions against candidate releases to highlight allowed and blocked versions.

Zero-Major (0.x.x) Corner Case Handling

Correctly implements the SemVer 2.0.0 specification where zero-major versions treat minor bumps as breaking changes.

Pre-Release & Build Metadata Support

Full support for alphanumeric pre-release identifiers (`-beta.1`) and build metadata suffixes (`+20260913`).

Frequently Asked Questions

What is Semantic Versioning (SemVer)?

Semantic Versioning (SemVer 2.0.0) is a three-part version numbering system in the format MAJOR.MINOR.PATCH. Increment MAJOR for backwards-incompatible breaking API changes, MINOR for backwards-compatible new functionality, and PATCH for backwards-compatible bug fixes.

What is the difference between Caret (^) and Tilde (~)?

The tilde (`~1.2.3`) allows patch updates only (e.g. `>=1.2.3 <1.3.0`), locking the minor version. The caret (`^1.2.3`) allows both minor and patch updates as long as they don't break the major version (e.g. `>=1.2.3 <2.0.0`).

How does Caret (^) behave on versions starting with 0 (e.g. ^0.2.3)?

Under SemVer specifications, the initial 0.y.z development phase indicates an unstable API. Therefore, `^0.2.3` only permits patch bumps (`>=0.2.3 <0.3.0`) because a bump to 0.3.0 could introduce breaking changes.

What are Pre-Release tags in SemVer?

A pre-release version is denoted by appending a hyphen and dot-separated identifiers to the patch number (e.g. `1.0.0-alpha.1`, `1.0.0-rc.2`). Pre-release versions have lower precedence than the associated normal version.

ARCADE BRAIN BREAK

Need a Brain Break? ☕

Done working on your task? Take a quick 60-second break, test your reflexes, and flap through infinite pixel obstacles in Sky Flap!

Instant Browser Play High Score Tracker