Skip to content

v0.2.0 — semver_inc / semver_diff / semver_sort

Latest

Choose a tag to compare

@TYEclipse TYEclipse released this 27 Aug 21:49
· 3 commits to main since this release

✨ New tools (npm semver parity)

  • semver_inc — increment a version following npm semver.inc rules: major/minor/patch/premajor/preminor/prepatch/prerelease + optional prerelease identifier. Preserves npm quirks: 1.0.0-5 + major → 1.0.0 (pre-major release), 1.2.0-5 + prerelease → 1.2.0-6, prepatch always bumps patch, build metadata dropped, dotted identifiers allowed, leading-zero identifiers rejected.
  • semver_diff — release-type difference per npm semver.diff, including prerelease special cases (1.2.3 vs 1.2.3-beta.1patch, 1.0.0-1 vs 1.0.0major). Equal precedence → equal: true with no difference key.
  • semver_sort — sort version lists by precedence (asc/desc) with build-metadata tie-break (npm semver.sort/rsort); invalid entries skipped and reported with their input index.

🔬 Verification

  • 114 tests (58 new), every anchor generated by npm semver 7.7.4 as an independent oracle
  • Zero runtime dependencies, pure logic, deterministic, offline

中文摘要

v0.2.0 新增三个工具(对齐 npm semver 语义):semver_inc 版本号递增(major/minor/patch/premajor/preminor/prepatch/prerelease + 可选标识符,保留 npm 全部细节行为)、semver_diff 版本差异判定(含 prerelease 特殊分支)、semver_sort 版本列表排序(build 元数据作次序裁决)。114 测试全绿,锚点由 npm semver 7.7.4 独立生成。

Install: dsh plugin --profile <name> add github:TYEclipse/dsh-semver