6.1 KiB
Changelog
2026-03-02 - 3.4.0 - feat(smartduplex)
improve backpressure handling and web/node stream interoperability
- Refactored SmartDuplex to use synchronous _read/_write/_final (avoids async pitfalls), added internal backpressured buffer draining and consumer signaling
- Implemented pull-based backpressure for Node <-> Web stream conversions (nodewebhelpers and convertNodeReadableToWebReadable/convertWebReadableToNodeReadable)
- StreamIntake.fromStream now reads from 'readable' and drains properly; StreamWrapper resolves safely on end/close/finish
- Improved getWebStreams / WebDuplexStream behavior (safer enqueue/close/abort handling, final/readFunction improvements)
- Added many new unit tests covering backpressure, web/node helpers, StreamIntake, StreamWrapper, WebDuplexStream; bumped @push.rocks/lik and @types/node versions
2026-02-28 - 3.3.0 - feat(smartstream)
bump dependencies, update build/publish config, refactor tests, and overhaul documentation
- Upgrade devDependencies (e.g. @git.zone/tsbuild -> ^4.1.2, @git.zone/tsrun -> ^2.0.1, @git.zone/tstest -> ^3.1.8, @types/node -> ^25.3.2) and runtime deps (e.g. @push.rocks/lik -> ^6.2.2, @push.rocks/smartenv -> ^6.0.0, @push.rocks/smartpromise -> ^4.2.3, @push.rocks/smartrx -> ^3.0.10).
- Refactor tests to use Node's native fs streams instead of @push.rocks/smartfile.fsStream and export default tap.start() to support ESM test runner patterns.
- Adjust build/publish: remove --web flag from build script, add pnpm override for agentkeepalive, add tspublish.json files for publish order, and add release registries/access in npmextra.json (verdaccio + npm).
- Rework project metadata in npmextra.json (namespaced @git.zone keys, tsdoc entry changes) and minor TypeScript/web fix: cast stream/web constructors to any in ts_web/plugins.ts.
- Large README rewrite: improved installation (pnpm), clearer Node vs Web entrypoints, expanded examples, and updated legal/license wording.
2024-11-19 - 3.2.5 - fix(nodewebhelpers)
Fix import and use correct module structure for Node.js streams in smartstream.nodewebhelpers.ts
- Corrected the import statement for the fs module.
- Updated the use of the fs.createReadStream method.
2024-10-16 - 3.2.4 - fix(SmartDuplex)
Fix stream termination when reading from a web readable stream
- Resolved an issue in SmartDuplex where the stream did not properly terminate after reaching the end of a web readable stream.
2024-10-16 - 3.2.3 - fix(smartduplex)
Enhance documentation for read function in SmartDuplex
- Added inline comments to clarify the behavior and importance of unlocking the reader in the readFunction of SmartDuplex.fromWebReadableStream.
2024-10-16 - 3.2.2 - fix(SmartDuplex)
Fix issue with SmartDuplex fromWebReadableStream method
- Resolved a potential unhandled promise rejection in fromWebReadableStream method
- Ensured proper release of stream reader lock in case of read completion
2024-10-16 - 3.2.1 - fix(core)
Fix the order of operations in SmartDuplex _read method to ensure proper waiting for items.
- Adjusted the order of reading function execution and waiting for items in the SmartDuplex _read method.
- Fixed potential issues with stream data processing timing.
2024-10-16 - 3.2.0 - feat(SmartDuplex)
Added method to create SmartDuplex from a WebReadableStream.
- Implemented a static method in SmartDuplex to allow creating an instance from a WebReadableStream.
- This addition enhances the capability of SmartDuplex to integrate with web streams, facilitating seamless stream manipulation across environments.
2024-10-14 - 3.1.2 - fix(WebDuplexStream)
Fix variable naming inconsistency in WebDuplexStream test
- Changed variable names from 'transformStream' to 'webDuplexStream' for consistency.
- Renamed 'writableStream' and 'readableStream' to 'writer' and 'reader' respectively.
2024-10-13 - 3.1.1 - fix(WebDuplexStream)
Improved read/write interface and error handling in WebDuplexStream
- Enhanced the IStreamToolsRead and IStreamToolsWrite interfaces for better Promise handling
- Refined readFunction and writeFunction handling to accommodate asynchronous data processing and error propagation
- Added internal _startReading method to facilitate initial data handling if readFunction is present
- Maintained backward compatibility while ensuring data continuity when no writeFunction is specified
2024-10-13 - 3.1.0 - feat(core)
Add support for creating Web ReadableStream from a file
- Introduced a new helper function
createWebReadableStreamFromFilethat allows for creating a Web ReadableStream from a file path. - Updated exports in
ts/index.tsto includenodewebhelperswhich provides the new web stream feature.
2024-10-13 - 3.0.46 - fix(WebDuplexStream)
Fix errors in WebDuplexStream transformation and test logic
- Corrected async handling in WebDuplexStream write function
- Fixed
WebDuplexStreamtests to properly handle asynchronous reading and writing
2024-10-13 - 3.0.45 - fix(ts)
Fixed formatting issues in SmartDuplex class
- Resolved inconsistent spacing in SmartDuplex class methods and constructor.
- Ensured consistent formatting in the getWebStreams method.
2024-06-02 - 3.0.39 - smartduplex
Add .getWebStreams method
- Introduced a new
.getWebStreamsmethod in the smartduplex module, providing compatibility with the web streams API.
2024-03-16 - 3.0.34 - configuration
Update project configuration files
- Updated
tsconfigfor optimization. - Modified
npmextra.jsonto set thegithostattribute.
2023-11-03 - 3.0.0 to 3.0.8 - core
Transition to major version 3.x
- Implemented breaking changes in the core system for better performance and feature set.
- Continuous core updates to improve stability and performance across minor version increments.
2023-11-02 - 2.0.4 to 2.0.8 - core
Core updates and a major fix
- Implemented core updates addressing minor bugs and enhancements.
- A significant breaking change update transitioning from 2.0.x to 3.0.0.
2022-03-31 - 2.0.0 - core
Major esm transition
- Implemented a breaking change by switching the core to ESM (ECMAScript Module) format for modernized module handling.