Skip to content

v2.0.1 — parser validation layer

Choose a tag to compare

@myothuko98 myothuko98 released this 04 Jul 12:10

Fixed

Silent-failure gaps in export extraction. The fast regex parser could silently drop or corrupt exports — giving the LLM false confidence about what exists in your codebase. This release closes that class of bug:

  • New export forms extracted: export default <expression> (identifiers, object literals, arrow functions), export enum, export abstract class, export let/var, generator functions, export * [as ns] from, export type { ... }, export declare
  • Regex-literal safety: source containing /"/ or /{/ no longer derails string/brace scanning
  • No phantom exports: export syntax inside string values (e.g. templates that build export statements) is no longer matched
  • Validation layer: every file is cross-checked against es-module-lexer. Any ESM export the fast parser misses is still emitted as a name-only stub (export host; // signature unresolved) with a CLI warning — the context never silently omits an export.

Notes

  • New dependency: es-module-lexer (tiny, zero-dep, wasm-based)
  • parseFile() results now include a warnings array
  • Known limitations documented in README (TS generic object constraints, decorators, TS lexer coverage)

🤖 Generated with Claude Code