SemVer Comparator & Range Checker

SemVer Comparator & Range Checker: Parses and compares SemVer 2.0.0 values, including prerelease precedence, checks standard range expressions, and calculates version increments. Processing runs locally in your browser.

Loading tool module...

About this semver comparator & range checker

SemVer Comparator & Range Checker — browser-based utility.

How this tool works

Parses and compares Semantic Versioning 2.0.0 values, including prerelease precedence, checks standard range expressions, and calculates major, minor, or patch increments. Range behavior follows the node-semver implementation documented by npm.

  1. Input Parse & Bitmask Extraction: Parses symbolic strings (e.g. 'rwxr-xr-x'), octal numbers (e.g. '0755'), or cron field tuples.
  2. Mathematical Bitwise & Calendar Evaluation: Computes binary bitmasks, umask subtractions, or calculates next 5 execution timestamps.
  3. Command Synthesis & Safety Auditing: Emits verified shell commands (chmod, chown, git, crontab) with security advisories.
  4. Display Diagnostic Badges: Highlights dangerous configurations such as world-writable files (chmod 777) or excessive cron frequency.

Worked example

Scenario: An npm package maintainer determines the next semantic release version after a backwards-compatible feature addition.

Sample input:

Current Version: 1.2.3 | Increment: Minor

Processing: Increments minor digit and resets patch digit to zero according to SemVer 2.0.0 guidelines.

Illustrative output:

Next Version: 1.3.0 (Compatibility: Backwards-compatible feature addition).

Limits and verification

Flags octal values outside 0000-7777 as invalid. In cron expressions, alerts the user if day-of-month and day-of-week fields conflict or create unintended union executions. Warns against assigning write permissions to world users.

Examples demonstrate an expected workflow; they do not prove every input or every branch of an external specification. Check important results with an independent source before using them for money, security, compliance, safety, or irreversible file changes.

Browser processing boundary

Tool input is processed by code running in the browser and is not intentionally sent to a CZOA processing API. The page can still request ordinary site assets, analytics, or advertising when those services are enabled. Browser extensions and managed-device software remain outside this tool's control.

Relevant references

These references govern or help explain the format, protocol, or calculation used here. Listing a reference does not claim certification or complete implementation of every optional feature.

  • Standard Browser Web API / Algorithm Implementation (No single external RFC/ISO standard)

Content owner: CZOA Tools · Last reviewed: 2026-09-15 · Review methodology

How to use it

  1. Enter, paste, or select your input data into the SemVer Comparator & Range Checker workspace controls.
  2. Review available parameter fields, units, formats, or options configured for your task.
  3. Click the action button or observe immediate live calculations rendered in your browser runtime.
  4. Inspect the resulting output and any diagnostic messages, then copy or download the result if needed.

Frequently asked questions

Which SemVer operations does the calculator implement?+

It accepts JSON with compare, range or satisfies, and next-major, next-minor, next-patch, premajor, preminor, prepatch, or prerelease operations. Input versions must pass the bundled semver validator.

What is the verified next-minor result?+

The browser converts {"a":"1.2.3","operation":"next-minor"} to 1.3.0. This is a returned version string, not an assessment of compatibility for a particular package.

How does range checking report a result?+

For range-style operations it validates both the version and range syntax, then returns JSON containing the normalized version, supplied range, and one boolean satisfies result.

Which version formats are rejected or not inferred?+

It does not repair incomplete versions, infer a release type from commits, publish tags, inspect package manifests, or decide whether an API change is breaking. Invalid SemVer input produces an error.