question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Cannot download differentially, fallback to full download: Error: Content-Type "multipart/byteranges" is expected

See original GitHub issue
  • Version: 22.3.6
  • Electron Version: 7.1.2
  • Electron Type (current, beta, nightly): current
  • Electron-Updater: 4.2.0

(Not the newest versions, but the code in question hasn’t changed since.)

  • Target: Windows

Electron-Updater’s multipleRangeDownloader expects a Content-Type: multipart/byteranges; boundary=aaaaaaaaaaaa header when it decides whether the server supports multiple downloads or not. However, if there is just ONE chunk of download, the server would respond with Content-Type: x-something/random and Content-Range: bytes 1111-2222, properly indicating a single-chunk partial - and that’s something multipleRangeDownloader doesn’t recognize as valid, resulting in a fallback to a full download in a possibly very favorable, small, single-chunk update situation.

Proper behavior would be to check (just in case) if Content-Range is a single chunk, and then allow the partial download.

One could set useMultipleRangeRequest to false to circumvent the problem, but it would negate the benefit of a multipart download in non-single-chunk cases.

I suspect inventing a boundary string and adding a proper byteranges wrapper to incoming data, then feeding it to DataSplitter (multipleRangeDownloader.ts:104), would do the trick, but I don’t have the means to build a proper test at the moment.

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:10 (4 by maintainers)

github_iconTop GitHub Comments

2reactions
mmaiettacommented, May 19, 2021

Sorry, I was not describing this as a good first issue for you specifically. I labeled it because I thought it’d be a good first issue for any new person that is looking to contribute 🙂

1reaction
SinusPicommented, Jul 25, 2021

I didn’t mean to sound entitled, as for points 1 and 3, I wasn’t insisting that you go and fix this now, I was just genuinely surprised issues are (commonly on GH, seeing as the StaleBot is a rather standard fixture) so readily allowed to be closed out of inaction. It’s completely off topic, of course, but I just wonder why not keep such issues open - for a long time, maybe. Who knows, maybe you or some new contributor would eventually take it up, for lack of better things to do? Is there some sort of anathema on projects having many old issues, open since forever and still causing problems every once in a while, but minor enough not to have sparked interest?

On Sat, 24 Jul 2021 at 17:11, Mike Maietta @.***> wrote:

Few notes.

  1. You’re encouraged to contribute again to this project

Would you be willing to submit a PR for this?

Backlog items are marked stale; backlog should always be “cleaned”. As in, what we work on is based on what we (2 maintainers + the community) are able, or willing, to work on. If an issue has a high impact on many many users, based on comments in a particular Github ticket, then it’s more likely we’ll get to it. If we’ll never get to it, then it’s marked stale and will eventually be closed. Closing backlog items represents to the community that the specific ticket will not be worked on. 2.

Maintaining an open-source project is not a job, it’s voluntary and contributions are in our free time.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/electron-userland/electron-builder/issues/5758#issuecomment-886066513, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB3QELMHSWM5F5E2RXPPG2TTZLJ3JANCNFSM42HWOVWA .

– Adam “Sinus” Skawiński

Read more comments on GitHub >

github_iconTop Results From Across the Web

Electron-update not working - Maximum allowed size is 50 MB
I know this is an old one, but I ran into the same problem and solved it by upgrading my electron builder and...
Read more >
ETSI TS 126 346 V12.4.0 (2015-01)
Unicast Fallback and Switching Between Unicast/Broadcast Reception Modes for ... Identifying Complete File Reception from MBMS Download and Determining ...
Read more >
User's Guide - Oracle Help Center
Failure web site-error http-expect-failed (417) ... You can click the Download report as PDF icon or select Download report as PDF.
Read more >
Apache 1.3 documentation
Now that Apache provides full support for loading modules under runtime ... The result is an error from MSIE saying it cannot download...
Read more >
in trunk/tools/build/third_party/cherrypy: . lib process scaffold ...
+Sources: http://download.cherrypy.org/cherrypy/ +Version: 3.2.2 ... + for a complete list of available error codes and when to use them.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found