Electron-builder: Cannot parse blockmap when auto updating

Created on 5 Mar 2020  路  19Comments  路  Source: electron-userland/electron-builder

  • Electron Builder Version: 22.4.0
  • Electron Updater Version: 4.2.4

  • Target: NSIS

My app is updating from a private github repo and when the update check starts it never downloads differentially because of the following error.
Cannot download differentially, fallback to full download: Error: Cannot parse blockmap "https://api.github.com/repos/VitruxPT/w-assistant/releases/assets/18470277.blockmap", error: incorrect header check, raw data:...

The publish command always works fine and all the files (exe, blockmap, latest.yml) are being sent to the repo sucessfully so I'm not sure if this is on my end.

This is how my main.log looks like:
image

Thanks in advance

Most helpful comment

I made a PR to fix this issue.

To fix it immediately on your release computer do the following

  • Open node_modules/electron-updater/out/NsisUpdater.js
  • Goto line number 272 and replace the line with the following
 return JSON.parse((0, _zlib().gunzipSync)(data).toString());

All 19 comments

Same issue here.

I am facing the same exact issue while auto-updating but after some time the update occurs but full download is done not differential.

Same Error,

"electron-updater": "^4.2.2",
"electron": "^8.0.1",
"electron-builder": "^22.3.2",

With private REPO github.

Same error with
"electron": "^8.2.2",
"electron-builder": "^22.5.1",
"electron-updater": "^4.3.1"

and a public repo

Same error with

"electron": "^8.2.5",
"electron-builder": "^22.6.0",
"electron-updater": "^4.3.1"

and a public repo

Same error with

"electron": "^8.2.5",
"electron-builder": "^22.6.0",
"electron-updater": "^4.3.1",

And public AWS S3 as well as local Minio S3

Same error with
"electron": "^4.2.2",
"electron-builder": "^20.38.5",
"electron-updater": "^4.0.7",

Same here, differential never work because of this issue.

Any updates on this issue?

Any updates on this issue?

Not yet, still waiting for an answer since I wasn't able to figure it out on my own

same here

same HERE ..!

Seeing the same problem! Download still happening but no differential. Uploading to S3:

    "electron-updater": "^4.3.1",
    "electron": "^8.2.4",
    "electron-builder": "^22.6.1"

Another(?) Solve

WIthout using CMD to execute,then it works..

I made a PR to fix this issue.

To fix it immediately on your release computer do the following

  • Open node_modules/electron-updater/out/NsisUpdater.js
  • Goto line number 272 and replace the line with the following
 return JSON.parse((0, _zlib().gunzipSync)(data).toString());

@VitruxPT @Jarinha99 @subh261096 @shellcodesniper @dnorth @StebneRuslan
PR https://github.com/electron-userland/electron-builder/pull/5025
Guys, can you try commenting on my PR so that it gets merged quickly?

The PR #5025 seems to fix this issue.
Since this fix requires changing files in the node_modules folder, I will mark this issue as closed once the PR is merged. In the meantime if anyone needs a quick workaround I suggest following the instructions @sandeep1995 provided in his comment.

I made a PR to fix this issue.

To fix it immediately on your release computer do the following

  • Open node_modules/electron-updater/out/NsisUpdater.js
  • Goto line number 272 and replace the line with the following
 return JSON.parse((0, _zlib().gunzipSync)(data).toString());

Can we please get this PR merged?

Can someone contact Mr @develar to merge PR https://github.com/electron-userland/electron-builder/pull/5025
It fixes the delta updates which saves a ton of internet bandwidth.

Was this page helpful?
0 / 5 - 0 ratings