v0.3.0
Minor Changes
-
#93
d3297f3Thanks @jacekradko! - Version-bump validation now follows semver range semantics instead of raw
labels. A breaking change in a0.xpackage is satisfied by a minor bump
(^0.2.3ranges stop at the next minor, so that IS the breaking boundary);
previously every 0.x breaking change was flagged "insufficient" unless it went
to 1.0.0. An advance within one prerelease train (1.0.0-beta.1 -> 1.0.0-beta.2, or finalizing to1.0.0) is no longer reported as "version was
not bumped".VersionAnalyzer.compareVersionsnow honors prerelease
precedence per the semver spec (1.0.0-beta.1ranks below1.0.0), and a new
VersionAnalyzer.isPrereleaseAdvanceis exported.BREAKING (programmatic API only):
VersionAnalyzer.isPreReleaseand
isValidPreReleaseBumpare renamed toisZeroMajorand
isValidZeroMajorBump. The old names conflated the 0.x convention with semver
prerelease tags, which this release starts handling as a distinct concept.
Per the 0.x rule above (which break-check now applies to itself), this rename
ships in a minor. -
#94
a6c4eb9Thanks @jacekradko! - The report's projected bump target now follows the same conventions bump
validation applies. A 0.x package with breaking changes projects the next
minor (0.2.0 -> 0.3.0) instead of suggesting a jump to1.0.0, with a note
explaining the 0.x convention (shown after the bump lands too, so
"Recommended: MAJOR / Actual: MINOR ✅" doesn't read as a contradiction). A
package on a prerelease tag projects the next tag in its train
(1.0.0-beta.1 -> 1.0.0-beta.2) instead of a whole-major jump. Adds
VersionAnalyzer.nextPrereleaseVersionto the programmatic API. The JSON
output is unchanged:recommendedVersionBumpremains the severity label.
Patch Changes
- #96
fd0f124Thanks @jacekradko! -findConfigFileno longer hangs when called with a relative start directory.
The walk-up loop compared againstpath.parse(startDir).root, which is empty
for a relative path whilepath.dirnamebottoms out at".", so the loop
never terminated. The start directory is now resolved against cwd before
walking. The CLI always passed absolute paths, so this only affected
programmatic callers of the exported function.