Skip to content

@grunnverk/git-tools 1.5.0 — Public API export cleanup, package metadata alignment, and documentation refresh

Choose a tag to compare

@tobrien tobrien released this 22 Jan 16:00
· 20 commits to working since this release
4b16886

Summary (main → HEAD)

This release is primarily a packaging/API-surface cleanup and documentation refresh. There are no reported behavioral changes in the underlying Git/process utilities, but the module’s public exports and package metadata were reorganized, which may affect consumers depending on how they import.

Changes

Public API / exports

  • Reorganized src/index.ts public exports to more cleanly group and re-export:
    • logger types and helpers (Logger, ConsoleLogger, setLogger, getLogger)
    • child/process execution utilities (runSecure*, run*, validation helpers like validateGitRef, validateFilePath, escapeShellArg, plus RunOptions)
    • validation helpers (safeJsonParse, validateString, validateHasProperty, validatePackageJson)
    • git helpers (branch/status/tag/link helpers like findPreviousReleaseTag, getGitStatusSummary, safeSyncBranchWithRemote, etc.)

Impact: If you import from the package root (@grunnverk/git-tools), this should be a non-functional refactor. If you relied on deep imports or a specific export layout, verify your imports still resolve.

Package metadata / publishing

  • Aligned package metadata in package.json, including:
    • Explicit exports map for the package root (".") pointing at dist/index.js and types.
    • Publishing now includes both dist and guide directories via the files list.
    • Version set to 1.5.0.
    • Engine requirement is declared as Node >= 24.0.0.

Impact: Tooling that enforces engines.node will require Node 24+ to install/use this package.

Documentation updates

  • Refreshed README.md and guide/index.md content.
  • Updated COVERAGE_REPORT.md (report content/metrics only).

Breaking changes

  • No explicit breaking changes were detected in the commit/diff scan.

However, please note:

  • The reorganization of public exports can be breaking for consumers who relied on deep import paths or specific export names/structure. Validate your build after upgrading.
  • The package declares Node >= 24.0.0 in package.json. If you run on older Node versions, this effectively becomes a breaking constraint.

Upgrade notes

  • Preferred import style remains from the package root:
    • import { runSecure, getGitStatusSummary, ... } from '@grunnverk/git-tools'
  • If you have CI/runtime pinned below Node 24, upgrade Node before adopting 1.5.0.