Generated from CHANGELOG.md. Edit only the repo file.
1.4.0 (2026-05-19)
Features
- cli: add --production flag scaffold for check command (01f3a02)
1.3.5 (2026-05-04)
Bug Fixes
- cli: harden 1.3.5 stability checks and release hygiene (74381b9)
1.3.4 (2026-04-20)
Bug Fixes
- cli: harden 1.3.4 output stability and edge robustness (e3f52d7)
1.3.4 (2026-03-xx)
Bug Fixes
- deterministic output polish:
- lock stable ordering and formatting of grouped
check --stricterrors across repeated runs
- lock stable ordering and formatting of grouped
- masking edge hardening:
- add coverage for short secret values (
1-2chars) inpartial/fullmodes - keep case-insensitive secret detection stable (
Api_Key,my_password)
- add coverage for short secret values (
- dotenv parsing robustness:
- add coverage for BOM, trailing spaces, and duplicate keys with deterministic override behavior
- fallback clarity hardening:
- extend tests for empty/comment-only
.env.examplefallback path
- extend tests for empty/comment-only
- CLI smoke hardening:
- repeated
--help,--version,show, andcheckinvocations across locales
- repeated
- docs consistency patch:
- keep EN/RU CLI contract sections aligned (no behavior changes)
1.3.3 (2026-03-xx)
Bug Fixes
- output stability lock for CLI contract:
- harden tests that lock
--helpcommand list,--versionbehavior, and exit-code semantics - lock stable
showtable headers (Key,Required,Present,Value,Description)
- harden tests that lock
- document CLI stability policy in docs (EN + RU) without changing runtime behavior
1.3.2 (2026-03-23)
Bug Fixes
- handle meta fallback edge case (f54596e)
1.3.1 (2026-03-19)
Bug Fixes
- cli: improve env error grouping and hints (d098a70)
1.3.0 (2026-03-04)
Features
- polish examples and install docs for 1.3.0 (182ed34)
1.2.3 (2026-02-19)
Bug Fixes
- reliability polish (meta fallback, strict isolation, deterministic errors) (a439230)
1.2.2 (2026-02-16)
Bug Fixes
- regenerate lockfile (remove stale link: specifier) (19d243b)
- remove self link dependency from optionalDependencies (3fd0568)
1.2.1 (2026-02-16)
Bug Fixes
- strengthen CLI + env contract guarantees (d516fbb)
1.2.0 – 2026-02-16
Added
- Preprod test suite (smoke, contract, CLI E2E, robustness)
- Strict CLI isolation for CI (no host env leakage)
- Robust helpers for CLI E2E testing
- Internal contract tests for public exports and exit codes
Changed
init --from-metanow generates.env.examplefromenv.meta.json- Test architecture restructured under
tests/test/preprod - CI workflow aligned with pnpm-only setup
- Improved stability of strict mode behavior
Stability
- Public API (
loadEnv,mustLoadEnv, CLI flags) treated as stable contract - CLI exit codes verified by contract tests
- Documentation build enforced in CI
1.1.2 – 2026-01-29
Fixed
- Strict mode now validates only dotenv-loaded variables (prevents host env leakage)
- Options validation and docs links stabilized
- CI updated to include CLI smoke tests and docs build
- Internal cleanup to align behavior with documented API contract
1.1.1 – 2026-01-29
Fixed
- Options validation and docs links stabilized
- Public API, CLI behavior, and documentation hardened
1.1.0 – 2026-01-27
Added
- New
zod-envkit initcommand to bootstrap configuration:- generate
env.meta.jsonfrom.env.example - generate
.env.examplefrom existingenv.meta.json
- generate
- Support for loading multiple dotenv files via
--dotenv- example:
.env,.env.local,.env.production - files are loaded in order with override semantics
- example:
- Documentation generation in multiple formats:
md(default)jsonyaml
- Sorting options for docs and CLI output via
--sort:alpharequired-firstnone
- Strict CI validation via
zod-envkit check --strict- fails on missing and unknown environment variables
- Configurable secret masking in
zod-envkit show:--mask-mode partial | full | none--no-maskalias
- Grouping support for environment variables via
meta.group - Extended env metadata fields:
defaultdeprecatedsincelink
- New public core utilities:
getMissingEnvgetUnknownEnvcheckEnvisSecretKey
Changed
- CLI architecture refactored into a modular structure (
src/cli/*)- no breaking behavior changes
- Documentation generator improved:
- grouped sections
- width-aware, centered markdown tables
- extended metadata columns
- Public API explicitly documented and treated as a stable contract
- CLI default behavior preserved:
- running
zod-envkitwithout subcommand defaults togenerate
- running
Fixed
- Inconsistent env resolution across CLI commands when using multiple dotenv files
- Edge cases in env validation with extra or empty variables
- Ordering and duplication issues in generated documentation
- Minor UX issues in CLI output and error handling
1.0.5 – 2026-01-26
Added
mustLoadEnvhelper for fail-fast env loading- Default CLI behavior:
zod-envkit→zod-envkit generate - Improved secret masking in
zod-envkit show
Changed
- Public API stabilized and separated from CLI internals
- CLI error handling improved:
- no stack traces for user errors
- consistent human-readable messages
- strict exit codes
ENV.mdgeneration now produces centered, width-aware tables- CLI now reliably resolves
env.meta.jsonfrom:- project root
./examples/- explicit
-c/--config
Fixed
- TypeScript narrowing issues in CLI
- Potential double execution when running CLI without subcommands
- Inconsistent env loading behavior
1.0.4 – 2026-01-26
Added
zod-envkit showcommandzod-envkit checkcommand (CI-friendly)
Changed
- CLI now also searches for
env.meta.jsonin./examples/
[1.0.3] – 2026-01-26
- Git tag only (not published)
[1.0.2] – 2026-01-26
- Git tag only (not published)
1.0.1 – 2026-01-26
Changed
- npm packaging improvements (ship only compiled output and docs)
- Documentation updates
1.0.0 – 2026-01-26
Added
- Initial release of zod-envkit
- Type-safe env validation with Zod
loadEnvandformatZodError- CLI to generate:
.env.exampleENV.md
- ESM and CommonJS builds
- TypeScript declarations
- Basic test suite (Vitest)
- MIT license
Design decisions
- Explicit configuration over magic
- No schema introspection for docs
- Environment variables as a runtime contract
- Small, framework-agnostic core
Changelog
All notable changes to this project will be documented in this file. This project follows Semantic Versioning.