Releases: ido-pluto/ipull
Releases · ido-pluto/ipull
v5.0.0-beta.1
5.0.0-beta.1 (2026-04-22)
Bug Fixes
- chunk-split: validate leftover (f791886)
- close-download: small files race conditions (39e7a87)
- downloadProgram: different default chunk size (e09de64)
- downloadSequence signature (db22eda)
- dynamic-length: send the last chunk of dynamic length (1024941)
- fetch: abort streaming (a75e668)
- fetch: throw error (051ab50)
- formatting (1f74705)
- globalCLI: cli hook on non-active download (698ddf9)
- load download file metadata (332eff0)
- local file tests (8eb5ea4)
- multi-download: race condition (0a25b7b)
- reduce log update (3269161)
- save: prevent save emit after finished (907f525)
- types: export required types (646cdbd)
- xhr stream timeout (e9dbe2f)
Features
- add id to download (216ff94)
- auto increase parallel stream (bbec167)
- debounce write - faster chunks write (20b66ee)
- downloadURL: regenerate download url when token expires (6215e24)
- Global CLI management (03aca33)
- long stream timeout (378c7a6)
- redirect: do not flow redirect by default, prevent token expires (f12b2f6)
- Remote CLI progress (b394986)
- scoped multi download engine (739ab73)
- stream timeout (0d961c3)
Performance Improvements
- chunks: send write event only once for chunk (022ca6a)
- core: optimize async operation & progress events (#23) (b82ae38), closes #19 #21
BREAKING CHANGES
- core: minimum supported Node.js version is now 20.
- core: CLI
-stshortcut was removed; use--style. - core: automatic file-name resolution changed to better capture names from URLs and
content-disposition, so resolved output file names may differ from previous releases. - core:
pause()now closes active connections andresume()reopens them. - core:
startandfinishedevents are now emitted forExistingandCloneddownload edge cases. - core: public download metadata moved to a per-part model:
DownloadFilePart.sizewas replaced byremoteFileSizeanddownloadSize, and per-part settings such asparallelStreamsnow live on each part instead of resumable progress metadata. - core: TypeScript event APIs on exported download engines are now stricter, so arbitrary string event names are no longer accepted by default on typed emitters.
v3.9.5
v3.9.4
v4.0.3-beta.1
v3.9.3
v4.0.3
v4.0.2
v4.0.1
v4.0.0
4.0.0 (2025-05-22)
Features
- v4 (9daddf4)
- Global CLI, you do not need to wrap active downloads with downloadSequence
- Auto increase parallel stream, maximize download speed
- Not reusing redirected URL by default - prevent token expires for long downloads
- Performance & stability improvements
- Remote CLI progress, show download progress in another process easily
BREAKING CHANGES
partsURLremoved in favor ofpartURLs- Not reusing redirected URL by default
- Different chunk size based on programType
- You can recall
.download()and it will not throw an error - will return the same promise of downloading (do not redownload the file) - You can change the parallel stream count after download has started