Skip to content

[FEATURE] Allow Resuming downloads #7

@ghimiresdp

Description

@ghimiresdp

Is your feature request related to a problem?

Resumability when downloading files will give the plus point when we use cli-based downloader.

Describe the Solution

  • create a download metadata file along with the file being downloaded that keeps track of downloads
  • create a basic JSON-based database or registry for tracking downloads. This will help keeping track of downloads even if it is scattered in different paths (even on mounted volumes.)
  • Check the resumability first by checking accept-ranges header, and fallback to sequential downloading or start over if it does not support downloading.

Describe Alternatives

How should it look in the CLI?

add more cli subcommands for tracking downloads

# order incomplete downloads first
$ furl downloads

1   some_incomplete_download1.iso        [======_______] 50%
2   some_incomplete_download2.iso        [===__________] 25%
3   some_completed_download.iso          [=============] 100%

$ furl resume 1

Resuming download "some_incomplete_download1"
found file at "/home/user/Downloads/some_incomplete_download1.iso"

[Thread 001]  [===========____________________________]   30%
[Thread 002]  [=============__________________________]   35%
[Thread 003]  [========_______________________________]   20%
[Thread 004]  [=====================__________________]   50%

Additional Context

Add any other context or screenshots about the feature request here.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions