35 lines
1.6 KiB
Markdown
35 lines
1.6 KiB
Markdown
# tsdocker Project Hints
|
|
|
|
## Module Purpose
|
|
tsdocker is a tool for developing npm modules cross-platform using Docker. It allows testing in clean, reproducible Linux environments locally.
|
|
|
|
## Recent Upgrades (2025-11-22)
|
|
- Updated all @gitzone/* dependencies to @git.zone/* scope (latest versions)
|
|
- Updated all @pushrocks/* dependencies to @push.rocks/* scope (latest versions)
|
|
- Migrated from smartfile v8 to smartfs v1.1.0
|
|
- All filesystem operations now use smartfs fluent API
|
|
- Operations are now async (smartfs is async-only)
|
|
- Updated dev dependencies:
|
|
- @git.zone/tsbuild: ^3.1.0
|
|
- @git.zone/tsrun: ^2.0.0
|
|
- @git.zone/tstest: ^3.1.3
|
|
- Removed @pushrocks/tapbundle (now use @git.zone/tstest/tapbundle)
|
|
- Updated @types/node to ^22.10.2
|
|
- Removed tslint and tslint-config-prettier (no longer needed)
|
|
|
|
## SmartFS Migration Details
|
|
The following operations were converted:
|
|
- `smartfile.fs.fileExistsSync()` → Node.js `fs.existsSync()` (for sync needs)
|
|
- `smartfile.fs.ensureDirSync()` → Node.js `fs.mkdirSync(..., { recursive: true })`
|
|
- `smartfile.memory.toFsSync()` → `smartfs.file(path).write(content)` (async)
|
|
- `smartfile.fs.removeSync()` → `smartfs.file(path).delete()` (async)
|
|
|
|
## Test Status
|
|
- Build: ✅ Passes
|
|
- The integration test requires cloning an external test repository (sandbox-npmts)
|
|
- The external test repo uses top-level await which requires ESM module handling
|
|
- This is not a tsdocker issue but rather the test repository's structure
|
|
|
|
## Dependencies
|
|
All dependencies are now at their latest versions compatible with Node.js without introducing new Node.js-specific dependencies.
|