I was trying to make an auto-updater for my electron app and used Hazel as the update server, but when I tried this and tested it, following every step on the electron guide, It would always give me these errors in the Squirrel-CheckForUpdate.log
file:
[10/12/23 11:54:19] info: FileDownloader: Downloading url: https://cbsh-updater.vercel.app//update/win32/1.0.2/releases?id=bellschedoverlay&localversion=1.0.2&arch=amd64
[10/12/23 11:54:19] warn: IEnableLogger: Failed to download url: https://cbsh-updater.vercel.app//update/win32/1.0.2/releases?id=bellschedoverlay&localversion=1.0.2&arch=amd64: System.Net.WebException: The remote server returned an error: (308) Permanent Redirect.
[10/12/23 11:54:19] info: CheckForUpdateImpl: Download resulted in WebException (returning blank release list): System.Net.WebException: The remote server returned an error: (308) Permanent Redirect.
[10/12/23 11:54:19] fatal: Finished with unhandled exception: System.AggregateException: One or more errors occurred. ---> System.Net.WebException: The remote server returned an error: (308) Permanent Redirect.
These errors come with stacktraces in between, which is why I separated them.
Here is my code:
function checkForUpdates() {
if (app.isPackaged){
const server = config.hazelUpdateURL;
const url = `${server}/update/${process.platform}/${app.getVersion()}`;
autoUpdater.setFeedURL({ url });
autoUpdater.checkForUpdates();
}
}
autoUpdater.on('update-downloaded', (event, releaseNotes, releaseName) => {
dialog.showMessageBox({
type: 'info',
buttons: ['Restart', 'Later'],
title: 'Application Update',
message: process.platform === 'win32' ? releaseNotes : releaseName,
detail:
'A new version of the Crooms Bell Schedule has been downloaded. Restart the application to apply the updates.'
}).then((returnValue) => {
if (returnValue.response === 0) autoUpdater.quitAndInstall()
});
})
autoUpdater.on('error', (message) => {
console.error('There was a problem updating the application');
console.error(message);
});
checkForUpdates();
I tried the url it failed to download from in a browser, and it downloaded the RELEASES file successfully with the expected content, but does show a 308 status code in the networking tab of devtools.
How do I ignore this error and force it to download the RELEASES file even if it is a redirect?
Never mind, this issue only happens on my main computer; all other computers I own just auto-update fine.