v5.0.0-beta.2
Pre-release
Pre-release
·
17 commits
to beta
since this release
5.0.0-beta.2 (2026-03-19)
Bug Fixes
- api: return undefined for non-absolute paths in fileMatcher (a408513)
- resolve package extends via NODE_PATH (f9eaecb)
Code Refactoring
- return undefined instead of null (6e88b1d)
- types: standardize type naming to Tsconfig prefix (ae5c51a)
Features
- add includes option to getTsconfig and findTsconfig (e6a0459)
- add skills-npm skill for AI coding assistants (264a25e)
- add sources field to TsconfigResult (5325530)
- api: add findTsconfig function (a9ae2c8)
- api: add getExtendsChain and resolveExtendsChain (e46f2ea), closes #119 #104
- api: export PathsMatcher type (4827a3f)
- api: rename parseTsconfig to readTsconfig (6acd8b6)
- api: replace createFilesMatcher with isFileIncluded (40b6730)
- api: replace createPathsMatcher with resolvePathAlias (f3e498f)
- build: drop CJS build and ship ESM only (dc886dc)
- move public cache args into options objects (b5e1fe0)
Performance Improvements
- add negative caching for extends resolution (f3245e9)
- bypass findUp for explicit config paths (f3696ae)
- memoize resolveExtendsChain subtrees (66ffe4f)
- pre-split exact vs wildcard path entries (94d0d52)
- replace exists+stat pairs with tryStat helper (1fb56ba), closes #46
- replace structuredClone with shallow spreads in resolveExtendsChain (b9e6bbd)
- short-circuit Node-resolved package configs (b72268e)
BREAKING CHANGES
- types: TsConfigResult renamed to TsconfigResult.
TsConfigJsonResolved renamed to TsconfigJsonResolved. TsConfigJson
re-exported as TsconfigJson. Cache renamed to TsconfigCache.
TsconfigSearchOptions split into GetTsconfigOptions and
FindTsconfigOptions. - getTsconfig, findTsconfig, readTsconfig, and
getExtendsChain now take an options object instead of positional
cache/configName/includes parameters - api: createPathsMatcher and PathsMatcher type are removed.
Use resolvePathAlias(tsconfig, specifier) instead, which returns
string[] (empty array when no paths configured or no match). - api: createFilesMatcher, FileMatcher type, and
caseSensitivePaths parameter are removed. Use isFileIncluded(tsconfig,
filePath) instead, which returns a boolean. Case sensitivity is
auto-detected. - build: CJS build is no longer provided. Consumers must use ESM
imports. - api:
parseTsconfig()has been renamed toreadTsconfig()and now returns{ path, config }instead of the config object directly - getTsconfig and createPathsMatcher now return undefined instead of null when no result is found