Skip to content

Releases: ido-pluto/ipull

v5.0.0-beta.1

22 Apr 16:40

Choose a tag to compare

v5.0.0-beta.1 Pre-release
Pre-release

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 -st shortcut 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 and resume() reopens them.
  • core: start and finished events are now emitted for Existing and Cloned download edge cases.
  • core: public download metadata moved to a per-part model: DownloadFilePart.size was replaced by remoteFileSize and downloadSize, and per-part settings such as parallelStreams now 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

20 Feb 15:10

Choose a tag to compare

3.9.5 (2026-02-20)

Bug Fixes

  • write-stream: finalization unregister token (e980254)

v3.9.4

20 Feb 14:56
01cd0fb

Choose a tag to compare

3.9.4 (2026-02-20)

Bug Fixes

  • nodejs-write-stream: file handler is garbage collected (#22) (01cd0fb)

v4.0.3-beta.1

08 Jul 19:21

Choose a tag to compare

v4.0.3-beta.1 Pre-release
Pre-release

v4.0.3-beta.1 (2025-07-08)

Bug Fixes

  • close-download: small files race conditions (39e7a87)

Features

  • downloadURL: regenerate download url when token expires (6215e24)
  • redirect: do not flow redirect by default, prevent token expires (f12b2f6)

v3.9.3

08 Jul 20:16

Choose a tag to compare

3.9.3 (2025-07-08)

Bug Fixes

v4.0.3

28 May 18:16

Choose a tag to compare

4.0.3 (2025-05-28)

Bug Fixes

  • build: no source map in prod (6954781)

v4.0.2

25 May 09:32

Choose a tag to compare

4.0.2 (2025-05-25)

v4.0.1

25 May 09:25

Choose a tag to compare

4.0.1 (2025-05-25)

Bug Fixes

  • multiDownload: events & cli progress (5ad092d)
  • multiDownload: update status when skipping download (7296216)
  • transferStatistics: 0 when download size is unknown (9826396)

v4.0.0

22 May 20:57
9daddf4

Choose a tag to compare

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

  • partsURL removed in favor of partURLs
  • 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

v3.10.0-beta.5

16 Mar 15:32

Choose a tag to compare

v3.10.0-beta.5 Pre-release
Pre-release

3.10.0-beta.5 (2025-03-16)

Bug Fixes

  • globalCLI: cli hook on non-active download (698ddf9)