Skip to content

Add HTTP Range Header Support for Resumable Image Downloads #3054

@xMohnad

Description

@xMohnad

Describe your suggested feature

Currently, when downloading chapter pages, if the download of an image is interrupted (for example due to network issues or the app being closed), the downloader deletes the partial .tmp file and restarts the download from the beginning.

It would be beneficial if Mihon supported HTTP Range requests to resume partially downloaded images instead of restarting them.

Other details

  • When downloading a page image, if a .tmp file already exists:

    • Check the current file size.
    • Send a request with a Range header:
      Range: bytes=<existing_file_size>-
  • If the server responds with:

    • 206 Partial Content → append the remaining bytes to the existing file and continue the download.
    • 200 OK → assume the server does not support Range requests, delete the partial file, and restart the download normally.

This would allow the downloader to resume interrupted downloads, reducing wasted bandwidth and improving reliability for large images or unstable connections.

Acknowledgements

  • I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
  • I have written a short but informative title.
  • I have updated the app to version 0.19.4.
  • I will fill out all of the requested information in this form.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions