2.0.0 • Published 3 months ago

semiff v2.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
3 months ago

semiff npm

A tiny (740B) utility to get the type difference between two semver versions.\ Similar to semver#diff function.

Features

  • No dependencies.
  • Extremely lightweight - 740 bytes bundled, ~5 kB publish size.
  • Up to 6x faster than the semver package.
  • Built-in Typescript definitions.
  • ESM and CJS exports.

Install

npm i semiff

Usage

import semiff from 'semiff';

semiff('1.0.0', '2.0.0'); // major
semiff('1.0.0', '1.1.0'); // minor
semiff('1.1.1', '1.1.2'); // patch
semiff('1.0.0-1', '1.0.1-1'); // prepatch
semiff('1.1.0-pre-1', '1.1.0-pre-2'); // prerelease
semiff('1.0.0', '1.0.0'); // undefined
semiff('2.0.0', '1.0.0'); // undefined

API

semiff(lowVer, highVer)

Compares both versions and returns the difference between them.\ If lowVer is equal or higher than highVer, it will return undefined.\ Otherwise, one of the following outcomes will be returned:

  • 'major'
  • 'premajor'
  • 'minor'
  • 'preminor'
  • 'patch'
  • 'prepatch'
  • 'prerelease'

Benchmarks

  semver x 1,635,459 ops/sec ±1.09% (95 runs sampled)
  semver-diff x 696,929 ops/sec ±1.04% (96 runs sampled)
+ semiff x 4,594,155 ops/sec ±1.67% (85 runs sampled)

License

MIT 💖

2.0.0

3 months ago

1.0.0

5 months ago