Releases: MalyStern/quickfile-actions
Releases · MalyStern/quickfile-actions
Release list
v0.5.0
Fix data-safety bugs and packaging (v0.5.0) Rename engine (ops.ts): - applyRename now returns per-file OpResult[] and refuses to run if two files collide on one target or an unrelated existing file would be clobbered; renames go through temp names so chains (a->b, b->c) can't destroy data, with rollback on failure. - uniquePath() everywhere so no output ever overwrites an existing file. - unzip: Zip Slip guard (entries must resolve under the output dir). - zipFiles: de-duplicate entry names; guard empty input. UI (App.tsx): - RenamePanel surfaces the OpResult[] instead of silently discarding it; the file list only clears when every rename actually succeeded. Fixes a silent "fake success" data-loss path. - SHA-256 button catches errors and reports them instead of throwing an unhandled rejection. Main process (index.ts): - runBatch uses bounded concurrency (max 4) so large batches don't spawn hundreds of parallel pipelines. - filesFromArgv resolves paths and ignores flags. Packaging (package.json): - asarUnpack sharp/@img so the native module actually loads in the packaged app (previously invisible because tests run from source). - macOS builds arm64-only; the cross-compiled x64 dmg had a broken native binary. Intel Macs build from source (README updated). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v0.4.0
v0.4: CLI + 20 languages - Add a scriptable CLI (bin/quickfile.mjs, built via esbuild): convert, resize, compress, clean, hash, merge/split PDF, zip/unzip. Verified against real files. - Reach 20 UI languages (added Hindi, Korean, Turkish, Indonesian, Dutch, Polish, Ukrainian, Vietnamese; 3 RTL: Hebrew, Arabic, Persian). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v0.3.0
v0.3: ZIP create & extract Add ZIP actions via adm-zip: zip the selected files into archive.zip, or extract an archive into a new folder next to it. Local, non-destructive, covered by tests. A ZIP action row appears in the UI (Extract shows when a .zip is selected). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v0.2.0
v0.2: PDF merge & split Add PDF actions via pdf-lib (pure JS): merge several PDFs into one, or split one PDF into single-page files. Non-destructive, local, covered by tests. A PDF action row appears in the UI when PDFs are selected. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
v0.1.1
Fix macOS release: build separate arm64 + x64 dmgs (sharp native bina…
v0.1.0
Add app icon + 12 languages (incl. 3 RTL) App icon (document + lightning) generated from SVG via sharp, wired into electron-builder. UI localized to 12 languages: English, Spanish, Portuguese, French, German, Italian, Russian, Chinese, Japanese, Hebrew, Arabic, Persian (the last three right-to-left). More can be added easily — one dict per language. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>