adobe / adobe/node-httptransfer

Support for Interruptible Downloads

Open
#166 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
17
Forks
11
PR merge metrics
No merged PRs in 30d

Description

Hi team,

We’re requesting support for interruptible downloads in the node-httptransfer module.

This enhancement is needed for the AEM Desktop App, which relies on this library for managing large file downloads from AEM. Currently, if a user cancels a download or exits the application mid-transfer, there’s no clean way to interrupt and release resources tied to the in-progress download request. This can result in wasted bandwidth and lingering connections.

Desired Behavior

- Provide a mechanism (e.g., a cancellation token or similar API) to allow downloads to be programmatically interrupted.
- Ensure that aborting a download cleans up any associated streams, temp files, and connections gracefully.
- Ideally, support should be compatible with existing APIs to minimize integration impact.

Use Case
The AEM Desktop App often downloads large binaries, and it’s important for user experience and system efficiency that users can pause, cancel, or exit downloads mid-way without negative side effects.

We’re happy to collaborate on a proposed solution or contribute if needed. Let us know your thoughts!

Thanks,
Harsh Chiki
(on behalf of the AEM Desktop App team)

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the node-httptransfer download API and how in-progress requests, streams, temporary files, and connections are managed. Define a cancellation mechanism compatible with existing APIs, then verify that cancelling or exiting mid-transfer releases those resources without affecting completed downloads.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, nodejs
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.