mkver
Version:
Node.js access to your app's version and release metadata
183 lines (106 loc) • 4.5 kB
Markdown
# Changelog
This module follows semver.
**The `MAJOR` or `API` version** is incremented for
- 💔 Non-backwards-compatible API changes
**The `MINOR` or `UPDATE` version** is incremented for
- ✨ Backwards-compatible features
**The `PATCH` version** is incremented for
- 🐞 Backwards-compatible bug fixes
- 📦 Minor packaging changes
## v4.3.0
- ✨ Added `--version` and `-v` CLI flags to display version number
## v4.2.0
- ✨ Enhanced git error handling with user-friendly, actionable error messages for common failure scenarios:
- `git` not available
- Running outside a git repository
- Running in a git repository with no commits
- 📦 Added comprehensive test coverage for git prerequisite failure modes and CLI flags
- 📦 Support for `GIT` environment variable to override git command (useful for testing)
## v4.1.0
- 🐞 Fix [#49](https://github.com/photostructure/mkver/issues/49), which required `semver` to be added as a proper dependency, and the path to `mkver` to be fixed. Thanks, [Rob van der Leek](https://github.com/robvanderleek)!
## v4.0.3
- 📦 Update GitHub Actions to publish via OIDC
## v4.0.2
- ✨ Add ESLint configuration for JavaScript and TypeScript linting
- 📦 Fix cross-platform TypeScript compilation in tests using npx
- 📦 Update GitHub Actions workflows to use numeric Node.js versions
## v4.0.1
- 💔 Drop Node.js v18 and v21 support
- ✨ Add `.cjs` file extension support for explicit CommonJS output
- 📦 add Node.js v22, v23, and v24 support
- 📦 Switch CI workflow from yarn to npm
- 🐞 Enhance error handling for file creation and TypeScript compilation in tests
- 🐞 Fix Windows test compatibility issues (reverted ESM migration due to test breakage)
## v3.0.2
- 🐞 Remove console.log with `headSha` metadata
## v3.0.1
- 🐞 Fix `mkver` shebang
## v3.0.0
- 💔 Drop support for obsolete versions of Node.js
- ✨ Support non-CLI programmatic `mkver` calls. Include typings.
- 📦 Merge code from bin/mkver.js into mkver.ts
- 📦 Replace sync calls with async calls
- 📦 Added eslint.
- 📦 Added prettier and import reordering.
- 📦 Upgrade all dev dependencies.
## v2.1.0
- 📦 Upgrade all dev dependencies.
- 📦 Remove unused internal `map` function
## v2.0.0
- ✨ If the version is parseable by
[semver](https://github.com/npm/node-semver), `mkver` will export
`versionMajor`, `versionMinor`, `versionPatch`, and `versionPrerelease`
fields. Examples are now in the README.
- 📦 Improved test coverage with several different version flavors (including prerelease suffixes)
- 📦 Upgrade all dev dependencies.
- 💔/📦 Dropped Node 12 and added Node 18 to the CI matrix (12 is EOL)
## v1.6.0
- 📦 Upgrade all dev dependencies
## v1.5.0
- 📦 Add default exports (so `import v from "./Versions"` works, if you want namespaced access).
- 📦 Upgrade all dev dependencies
## v1.4.0
- ✨ Support ECMAScript module formats (`.mjs`)
- 📦 Upgrade all dev dependencies
## v1.3.6
- 📦 Upgrade all dev dependencies (including TypeScript 4.1)
## v1.3.5
- 📦 Upgrade all dev dependencies
## v1.3.4
- 📦 Upgrade all dev dependencies
## v1.3.3
- 📦 `Version.js` and `Version.ts` both use semicolons now
- 📦 version.ts has test coverage
- 📦 Upgrade all dev dependencies
- 📦 Prettier 2.0.0 diffs
## v1.3.2
- 📦 Upgrade all dev dependencies, migrate mocha opts
## v1.3.1
- 📦 Upgrade all dev dependencies
## v1.3.0
- ✨ Support arbitrarily deep subpackages (if running on node 10.13+)
- 📦 Add better integration tests (by spawning the binfile)
- 📦 prettier .js
- 📦 Upgrade all dev dependencies
## v1.2.0
- ✨ Remove runtime dependency on `fs-extra`
- 📦 Upgrade all dev dependencies
## v1.1.2
- 📦 Support for `mkver --help`
## v1.1.1
- 📦 Upgrade all dev dependencies
- 📦 Add node 11 to the build matrix
## v1.1.0
- ✨ The release suffix is now the YYYYMMDDhhmmss for better human readability.
The base64 of the minute unixtime was, uh, "clever," but I kept wanting to
know _when_ the build was, and I don't (yet) think in b64.
- 📦 Upgrade all dev deps, including TS 3.0.3.
## v1.0.0
- ✨ release values use the git commit date rather than the SHA, so the same
version will have monotonically increasing releases for subsequent commits.
## v0.0.4
- 📦 Publish on linux to chmod bin/mkver
## v0.0.2
- 📦 Whitespace between comment and exports
## v0.0.1
- 🎉 First release