1.9 KiB
1.9 KiB
Changelog
2026-05-01 - 6.1.0 - feat(smartenv)
add Bun and Deno OS detection support and update test runtime compatibility
- extends async OS detection helpers to work in Bun and Deno by loading the appropriate os module for each runtime
- improves runtime-specific typings and safe global access for Deno, Bun, and importScripts usage
- updates tests to export tap.start(), rename the browser test target to chromium, and clean up console output for newer test tooling
- refreshes build and test tooling configuration and package metadata for the current release workflow
2025-11-01 - 6.0.0 - BREAKING CHANGE(Smartenv)
Add Deno and Bun runtime detection, introduce getSafeModuleFor API, update docs and tests, and make isNode semantics Node-only (breaking change)
- Implement runtime detection for Deno and Bun; runtimeEnv now returns one of 'node' | 'deno' | 'bun' | 'browser'.
- Change isNode to be true only for Node.js; add isDeno and isBun accessors. This is a breaking change in behavior for code that relied on isNode including Deno/Bun.
- Add getSafeModuleFor(target, moduleNameOrUrl, getFunction?) API to load modules conditionally for single, multiple or 'server' runtimes. Existing helpers getSafeNodeModule and getSafeWebModule updated to work with wider runtimes.
- Add runtime-specific version getters (nodeVersion, denoVersion, bunVersion) and update printEnv output accordingly.
- Expand and add tests for Node, Deno, Bun and Browser environments (tests/* files).
- Update documentation (readme.md and readme.hints.md) to describe detection order, new API and migration notes from 4.x to 5.x/6.x.
- Bump devDependencies (tsbuild, tsrun, tstest) and include an updated deno.lock.
[5.0.13] - 2025-07-28
Fixed
- Updated readme.md with comprehensive documentation including API reference, core features, and usage examples
- Added readme.hints.md with architecture and implementation details for future reference
- Improved documentation structure and clarity