6.0.0 Stable Release
Major rewrite with cross-platform streaming, zero-dependency archive (ZIP/TAR), CSV, and stream modules. Each module can be used independently via @cj-tech-master/excelts/zip, /csv, /stream — no need to pull in the full Excel engine.
⚠️ Breaking Changes
This is a major release with significant breaking changes. See MIGRATION.md for the complete migration guide.
Key breaking changes:
- Package: New subpath exports — archive, CSV, and stream modules can now be imported independently via
@cj-tech-master/excelts/zip,/csv,/stream, enabling tree-shaking and smaller bundle sizes without pulling in the full Excel engine - CSV:
workbook.csvaccessor removed — useworkbook.readCsv()/workbook.writeCsv()directly - CSV: Parse/format option names changed (
transform→rowTransform,strictColumnHandling→columnMismatch,ignoreEmpty→skipEmptyLines,rowDelimiter→lineEnding, etc.) - CSV: Standalone API restructured — import from
@cj-tech-master/excelts/csv - Stream:
BufferChunk→ByteChunk,normalizeWritable→toWritable,once→onceEvent - Stream: Binary utilities moved to main entry or
@utils/binary - Archive:
UnzipEntry.isDirectoryremoved — useentry.type === "directory" - Archive: Browser entry no longer re-exports archive APIs — use
@cj-tech-master/excelts/zip - Excel:
Image→ImageData,ZipOptions→WorkbookZipOptions - Excel: Error types changed to structured
ExcelErrorsubclasses - Excel:
sheet-utilsremoved — use nativeWorksheet.toJSON(),ws.addJSON(),ws.addAOA()etc. - EventEmitter:
emit("error")with no listener now throws (Node.js parity)
Features
- Archive: ZIP/TAR read/write with full streaming, encryption (ZipCrypto + AES), ZIP64, remote HTTP Range reading, progress/abort, browser Worker Pool
- CSV: Unified parse/format API, streaming, Web Worker pool, dynamic typing, DoS protection, delimiter auto-detection
- Stream: Full cross-platform implementation with Node.js parity in browsers
- Excel: Chart/drawing preservation, structured error classes, sheet-utils integrated natively
Bug Fixes (since beta.1)
- Encrypted entries in streaming ZIP parse mode
- Data descriptor consumption after known-size pump
- RowValues type widened for plain object assignment
- OOXML
_xHHHH_escape decoding - WorkbookReader/WorksheetWriter fixes
- CodeQL security alerts resolved
- Windows build compatibility