FIX: Gracefully handle force pushes for remote themes (#11325)

Force pushing a commit to a theme repository used to break the updater,
because the system was not able to count the commits behind the old and
new version. This operation failed because a force push deleted the old
commits.

The user was prompted with a simple "500 server error" message.
This commit is contained in:
Bianca Nenciu
2020-11-23 15:29:22 +02:00
committed by GitHub
parent 139c5dc356
commit 60bc38e6a8
5 changed files with 39 additions and 2 deletions
@@ -151,6 +151,15 @@ export default Controller.extend({
hasTranslations: notEmpty("translations"),
@discourseComputed(
"model.remote_theme.local_version",
"model.remote_theme.remote_version",
"model.remote_theme.commits_behind"
)
hasOverwrittenHistory(localVersion, remoteVersion, commitsBehind) {
return localVersion !== remoteVersion && commitsBehind === -1;
},
@discourseComputed("model.remoteError", "updatingRemote")
showRemoteError(errorMessage, updating) {
return errorMessage && !updating;