2024-06-23 23:55:54 +02:00
# Changelog
2025-08-18 00:14:21 +00:00
## 2025-08-18 - 11.2.7 - fix(ci)
Remove .npmrc containing hard-coded npm registry configuration
- Removed .npmrc which contained 'registry=https://registry.npmjs.org/'
- Avoids committing environment-specific npm registry configuration; rely on user or CI environment settings instead
2025-08-18 00:13:03 +00:00
## 2025-08-18 - 11.2.6 - fix(fs)
Improve fs and stream handling, enhance SmartFile/StreamFile, update tests and CI configs
- Fix listFileTree to correctly handle '**/' patterns by running both root and nested patterns and deduplicating results.
- Enhance waitForFileToBeReady: support directory paths (wait for first file) and improved file-stability checks with timeouts and retries.
- StreamFile improvements: support Web ReadableStream -> Node Readable conversion, better multi-use buffering, more robust fromUrl/fromBuffer/fromStream implementations, and accurate byte-length computation.
- SmartFile updates: switch fromUrl to SmartRequest, robust rename (optional on-disk rename), safer read/write paths and consistent Buffer handling for hashing and content edits.
- fs module tweaks: copy/copySync gained replaceTargetDir option, improved toObjectSync error messages, toReadStream now validates existence, and various synchronous/async API consistency fixes.
- memory module: consistent async/sync write APIs and smartfileArrayToFs formatting/behavior fixes.
- fsstream: improved stream processing and SmartReadStream robustness (error handling, read logic and watcher improvements).
- Tests: reformatted and strengthened tests (more explicit assertions, added tests for '**/*.ts' and '**/*' edge cases, updated imports to tapbundle usage).
- CI/workflows: updated IMAGE and NPMCI_COMPUTED_REPOURL values and switched npmci package install to @ship .zone/npmci in workflow files.
- package.json: bumped various dependencies, updated test script (timeout, logfile), added typings/main fields, homepage fix, pnpm overrides and minor metadata fixes.
- .gitignore: added entries for AI tool folders (.claude/, .serena/).
- Docs/readme: expanded README with clearer examples, features and TypeScript usage; updated readme hints for listFileTree behavior.
2025-05-26 08:24:56 +00:00
## 2025-05-26 - 11.2.5 - fix(dev)
2025-08-18 00:13:03 +00:00
2025-05-26 08:24:56 +00:00
Update dev dependencies and add local permission settings
- Bump @git .zone/tsbuild from 2.5.2 to 2.6.4
- Bump @git .zone/tstest from 1.9.0 to 2.2.5
2025-08-18 00:13:03 +00:00
- Add .claude/settings.local.json to configure permissions for Bash(pnpm test:\*)
2025-05-26 08:24:56 +00:00
2025-05-24 00:29:37 +00:00
## 2025-05-24 - 11.2.4 - fix(config)
2025-08-18 00:13:03 +00:00
2025-05-24 00:29:37 +00:00
Add local permissions configuration for pnpm test commands in .claude/settings.local.json
2025-08-18 00:13:03 +00:00
- Introduced .claude/settings.local.json to allow Bash(pnpm test:\*) permissions
2025-05-24 00:29:37 +00:00
- Ensured local testing commands have proper execution rights
2025-05-21 13:26:29 +00:00
## 2025-05-21 - 11.2.2 - fix(tests/settings)
2025-08-18 00:13:03 +00:00
2025-05-21 13:26:29 +00:00
Improve test assertions and update local settings permissions
- Refactor StreamFile tests to assert content string type using toBeTypeofString
- Update file existence tests to use resolves.toBeTrue and resolves.toBeFalse for cleaner promise handling
- Add .claude/settings.local.json to allow specific Bash permissions for pnpm test commands
2025-05-21 13:24:41 +00:00
## 2025-05-21 - 11.2.1 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-05-21 13:24:41 +00:00
Fix inconsistent glob matching in listFileTree and update test imports and dependency versions for enhanced stability.
2025-08-18 00:13:03 +00:00
- Enhanced listFileTree to support \*\*/ patterns by using dual patterns (root and nested) with deduplication.
2025-05-21 13:24:41 +00:00
- Updated test imports to use '@git .zone/tstest/tapbundle' for consistency across test files.
- Bumped dependency versions (@push .rocks/lik, smartpromise, smartrequest, glob) in package.json.
- Added npm configuration (.npmrc) and local settings for improved test verbosity.
2025-01-29 18:23:54 +01:00
## 2025-01-29 - 11.2.0 - feat(fs)
2025-08-18 00:13:03 +00:00
2025-01-29 18:23:54 +01:00
Enhanced copy method with optional replaceTargetDir option for directory replacement
- Added optional 'replaceTargetDir' option to 'copy' and 'copySync' methods in 'fs.ts'.
- The 'replaceTargetDir' option allows replacing the target directory if both source and target are directories.
2025-01-29 18:20:14 +01:00
## 2025-01-29 - 11.1.9 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-29 18:20:14 +01:00
Fix directory handling in copy and copySync functions
- Ensured existing directories at destination are removed before copying over them in async copy.
- Added a similar check and handling for synchronous copySync when destination is a directory.
2025-01-29 18:14:02 +01:00
## 2025-01-29 - 11.1.8 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-29 18:14:02 +01:00
Fixed copy and copySync functions to ensure they always overwrite files.
- Fixed bug in copy function where files were not being overwritten when they already existed at the destination.
- Fixed bug in copySync function to ensure files are overwritten to match the async function's behavior.
2025-01-29 18:10:48 +01:00
## 2025-01-29 - 11.1.7 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-29 18:10:48 +01:00
Refactor copy and copySync functions to simplify return type
- Changed the return type of fs.copy and fs.copySync from boolean to void.
- Removed unnecessary promise handling in fs.copy.
2025-01-29 12:21:49 +01:00
## 2025-01-29 - 11.1.6 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-29 12:21:49 +01:00
Fix issues with fs file copy functions.
- Updated dependencies in package.json.
- Corrected comments for asynchronous and synchronous file copy functions in fs.ts.
2025-01-07 04:58:31 +01:00
## 2025-01-07 - 11.1.5 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-07 04:58:31 +01:00
Improve waitForFileToBeReady function to handle directories and file stabilization
- Enhanced the waitForFileToBeReady to handle directory paths by checking for file existence within directories and waiting for stabilization.
- Modified the watcher logic to cater to changes when monitoring directories for file appearance.
- Introduced a helper function to ensure paths exist and another to resolve the first file in directories.
- Corrected logic for polling and stabilizing files within directories.
2025-01-07 04:41:17 +01:00
## 2025-01-07 - 11.1.4 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-07 04:41:17 +01:00
Fix file existence check in waitForFileToBeReady method.
- Ensured that the directory and file exist before setting up the watcher in waitForFileToBeReady.
- Changed ensureDirectoryExists to ensureFileExists for correct file path verification.
- Handled ENOENT errors correctly to retry file existence checks until timeout is reached.
2025-01-07 04:36:32 +01:00
## 2025-01-07 - 11.1.3 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-07 04:36:32 +01:00
Fix TypeScript type issue in fs module
- Corrected a TypeScript type in the fs module's checkFileStability function.
2025-01-07 04:35:56 +01:00
## 2025-01-07 - 11.1.2 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-07 04:35:56 +01:00
Fix issues in file stability check and directory existence verification in fs module
- Removed unused variable 'isFileAvailable' in 'waitForFileToBeReady'.
- Fixed logic for ensuring the target directory exists before setting up file stability watcher.
- Refactored directory existence logic into 'ensureDirectoryExists' function.
2025-01-07 04:30:39 +01:00
## 2025-01-07 - 11.1.1 - fix(fs)
2025-08-18 00:13:03 +00:00
2025-01-07 04:30:39 +01:00
Improve waitForFileToBeReady function for file stability detection
- Enhanced error handling and file stability checks in waitForFileToBeReady function
- Added timeout feature for file readiness check
- Improved directory access check before file availability check
2025-01-07 04:15:32 +01:00
## 2025-01-07 - 11.1.0 - feat(SmartFile)
2025-08-18 00:13:03 +00:00
2025-01-07 04:15:32 +01:00
Add rename functionality to SmartFile class
- Implemented a new method to rename a file within the SmartFile class.
- The rename method updates the file path and optionally writes the renamed file to the disk.
2024-12-15 21:40:19 +01:00
## 2024-12-15 - 11.0.23 - fix(fs)
2025-08-18 00:13:03 +00:00
2024-12-15 21:40:19 +01:00
Handle errors in toObjectSync method
- Added error handling in toObjectSync function to capture and provide more informative error messages.
2024-06-23 23:59:07 +02:00
## 2024-06-23 - 11.0.22 - fix(core)
2025-08-18 00:13:03 +00:00
2024-06-23 23:59:07 +02:00
Update dependencies and changelog
- Updated @push .rocks/smartstream to ^3.0.44
- Updated glob to ^10.4.2
- Updated @types/node to ^20.14.8
2024-06-23 23:55:54 +02:00
## 2024-06-23 - 11.0.21 - fix(dependencies)
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
Update dependencies to latest versions
- Updated @push .rocks/smartpromise to ^4.0.4
- Updated @push .rocks/smartstream to ^3.0.44
- Updated glob to ^10.4.2
- Updated @types/node to ^20.14.8
## 2024-06-07 - 11.0.20 - Changelog
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.20
## 2024-06-07 - 11.0.19 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.19
- fix(core): update
## 2024-06-07 - 11.0.18 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.18
- fix(core): update
## 2024-06-06 - 11.0.17 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.17
- fix(core): update
## 2024-06-06 - 11.0.16 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.16
- fix(core): update
## 2024-05-29 - 11.0.16 - update description
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.16
- update description
## 2024-05-17 - 11.0.15 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.15
- fix(core): update
## 2024-04-14 - 11.0.14 - update tsconfig
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.14
- update tsconfig
## 2024-04-12 - 11.0.13 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.13
- fix(core): update
## 2024-04-12 - 11.0.12 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.12
- fix(core): update
## 2024-04-12 - 11.0.11 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.11
- fix(core): update
## 2024-04-03 - 11.0.10 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.10
- fix(core): update
## 2024-04-03 - 11.0.9 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.9
- fix(core): update
## 2024-04-02 - 11.0.8 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.8
- fix(core): update
## 2024-04-02 - 11.0.7 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.7
- fix(core): update
## 2024-04-02 - 11.0.6 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.6
- fix(core): update
## 2024-04-01 - 11.0.5 - update npmextra.json
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.5
- update npmextra.json: githost
## 2024-04-01 - 11.0.4 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.4
- fix(core): update
## 2023-11-24 - 11.0.3 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.3
- fix(core): update
## 2023-11-07 - 11.0.2 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.2
- fix(core): update
## 2023-11-07 - 11.0.1 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.1
- fix(core): update
## 2023-11-06 - 11.0.0 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
11.0.0
- fix(core): update
## 2023-11-06 - 10.0.40 - BREAKING CHANGE(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.40
- BREAKING CHANGE(core): update
## 2023-11-04 - 10.0.39 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.39
- fix(core): update
## 2023-11-04 - 10.0.38 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.38
- fix(core): update
## 2023-11-04 - 10.0.37 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.37
- fix(core): update
## 2023-11-03 - 10.0.36 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.36
- fix(core): update
## 2023-11-03 - 10.0.35 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.35
- fix(core): update
## 2023-11-03 - 10.0.34 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.34
- fix(core): update
## 2023-11-03 - 10.0.33 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.33
- fix(core): update
## 2023-10-12 - 10.0.32 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.32
- fix(core): update
## 2023-09-22 - 10.0.31 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.31
- fix(core): update
## 2023-08-31 - 10.0.30 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.30
- fix(core): update
## 2023-08-23 - 10.0.29 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.29
- fix(core): update
## 2023-07-12 - 10.0.28 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.28
- fix(core): update
## 2023-07-10 - 10.0.27 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.27
- fix(core): update
## 2023-07-10 - 10.0.26 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.26
- fix(core): update
## 2023-07-08 - 10.0.25 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.25
- fix(core): update
## 2023-06-25 - 10.0.24 to 10.0.14 - Series of Fixes
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.24 to 10.0.14
- Series of fixes in the core module
## 2023-01-09 - 10.0.13 to 10.0.6 - Series of Fixes
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.13 to 10.0.6
- Series of fixes in the core module
## 2022-09-05 - 10.0.5 to 10.0.3 - Series of Fixes
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.5 to 10.0.3
- Series of fixes in the core module
## 2022-06-07 - 10.0.2 to 10.0.1 - Series of Fixes
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
10.0.2 to 10.0.1
- Series of fixes in the core module
## 2022-06-07 - 9.0.7 - BREAKING CHANGE(core): switch to esm
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
9.0.7
- BREAKING CHANGE(core): switch to esm
## 2022-03-11 - 9.0.6 to 9.0.2 - Series of Fixes
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
9.0.6 to 9.0.2
- Series of fixes in the core module
## 2021-12-01 - 9.0.1 - fix(core): update
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
9.0.1
- fix(core): update
## 2021-12-01 - 9.0.0 - fix(absolute pathing)
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
9.0.0
- add functions for easily getting absolute paths
## 2021-11-30 - 8.0.11 - BREAKING CHANGE(relative pathing)
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
8.0.11
- improved relative pathing
## 2020-08-10 - 8.0.10 to 7.0.12 - Series of Fixes and Updates
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
8.0.10 to 7.0.12
- Series of fixes in the core module
- BREAKING CHANGE(Smartfile class): switch to a Buffer-only approach
## 2019-02-17 - 7.0.0 - fix(core): update dependencies
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
7.0.0
- fix(core): update dependencies
## 2019-01-27 - 6.0.12 - BREAKING CHANGE(smartfile.fs.fileExists)
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
6.0.12
- now returns a Promise< boolean >
## 2018-08-19 - 6.0.11 to 6.0.6 - Series of Fixes
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
6.0.11 to 6.0.6
- Series of fixes in core and dependencies
## 2018-07-03 - 6.0.5 to 5.0.0 - Series of Fixes
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
6.0.5 to 5.0.0
- Series of fixes in core and dependencies
## 2018-02-16 - 4.2.28 - BREAKING CHANGE(scope)
2025-08-18 00:13:03 +00:00
2024-06-23 23:55:54 +02:00
4.2.28
- switch to pushrocks scope