Problem applying latest canary

This evening my installed Duplicati (2.0.2.14_canary_2017-12-22) has informed me there’s an update available (2.0.2.16_canary_2018-01-18).

However, when I try to install this from the web UI I get an error logged:

System.Exception: Damaged or corrupted file, sha256 mismatch for https://updates.duplicati.com/canary/duplicati-2.0.2.16_canary_2018-01-18.zip
at Duplicati.Library.AutoUpdater.UpdaterManager.DownloadAndUnpackUpdate (Duplicati.Library.AutoUpdater.UpdateInfo version, System.Action`1[T] progress) [0x0028d] in <6577671552d646fcb8561de9c1978d41>:0

Any suggestions?

Thanks

Andy

That is a problem with the package. I “fixed” a problem with the AutoUpdate package builder today, and that introduced a broken SHA256 hash.

I will make a new build tomorrow with the SHA256 fixed.

Thanks for the response, at least I know it’s nothing on my end.

Will try again tomorrow.

Thanks again

Andy

Hi,

Just tried again, now getting this:

System.Net.WebException: Error: TrustFailure (One or more errors occurred.) —> System.AggregateException: One or more errors occurred. —> System.Security.Authentication.AuthenticationException: A call to SSPI failed, see inner exception. —> Mono.Btls.MonoBtlsException: Ssl error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED
at /build/mono-5.4.1.6/external/boringssl/ssl/handshake_client.c:1132
at Mono.Btls.MonoBtlsContext.ProcessHandshake () [0x00038] in <50d80b08c1a5449282b22aedf03ce925>:0
at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncOperationStatus status) [0x0003c] in <50d80b08c1a5449282b22aedf03ce925>:0
at (wrapper remoting-invoke-with-check) Mono.Net.Security.MobileAuthenticatedStream:ProcessHandshake (Mono.Net.Security.AsyncOperationStatus)
at Mono.Net.Security.AsyncHandshakeRequest.Run (Mono.Net.Security.AsyncOperationStatus status) [0x00006] in <50d80b08c1a5449282b22aedf03ce925>:0
at Mono.Net.Security.AsyncProtocolRequest+d__24.MoveNext () [0x000ff] in <50d80b08c1a5449282b22aedf03ce925>:0
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <62f5937022004555807e6c57c33f6684>:0
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <62f5937022004555807e6c57c33f6684>:0
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <62f5937022004555807e6c57c33f6684>:0
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <62f5937022004555807e6c57c33f6684>:0
at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <62f5937022004555807e6c57c33f6684>:0
at Mono.Net.Security.AsyncProtocolRequest+d__23.MoveNext () [0x0008b] in <50d80b08c1a5449282b22aedf03ce925>:0
— End of inner exception stack trace —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <62f5937022004555807e6c57c33f6684>:0
at Mono.Net.Security.MobileAuthenticatedStream+d__47.MoveNext () [0x00254] in <50d80b08c1a5449282b22aedf03ce925>:0
— End of inner exception stack trace —
at System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011] in <62f5937022004555807e6c57c33f6684>:0
at System.Threading.Tasks.Task.Wait (System.Int32 millisecondsTimeout, System.Threading.CancellationToken cancellationToken) [0x00043] in <62f5937022004555807e6c57c33f6684>:0
at System.Threading.Tasks.Task.Wait () [0x00000] in <62f5937022004555807e6c57c33f6684>:0
at Mono.Net.Security.MobileAuthenticatedStream.AuthenticateAsClient (System.String targetHost, System.Security.Cryptography.X509Certificates.X509CertificateCollection clientCertificates, System.Security.Authentication.SslProtocols enabledSslProtocols, System.Boolean checkCertificateRevocation) [0x0000d] in <50d80b08c1a5449282b22aedf03ce925>:0
at Mono.Net.Security.MonoTlsStream.CreateStream (System.Byte[] buffer) [0x0007b] in <50d80b08c1a5449282b22aedf03ce925>:0
at System.Net.WebConnection.CreateStream (System.Net.HttpWebRequest request) [0x00073] in <50d80b08c1a5449282b22aedf03ce925>:0
— End of inner exception stack trace —
at Duplicati.Library.Utility.AsyncHttpRequest+AsyncWrapper.GetResponseOrStream () [0x0004d] in <56b1245f594f44fe81bb104962d86e57>:0
at Duplicati.Library.Utility.AsyncHttpRequest.GetResponse () [0x00044] in <56b1245f594f44fe81bb104962d86e57>:0
at Duplicati.Library.AutoUpdater.UpdaterManager.DownloadAndUnpackUpdate (Duplicati.Library.AutoUpdater.UpdateInfo version, System.Action`1[T] progress) [0x0018b] in <6577671552d646fcb8561de9c1978d41>:0

Any suggestions?

Andy

Ah, just checked again and there’s a further log entry for a checksum mismatch. Seems like the update hasn’t been ‘updated’.

Andy

I have put up 2.0.2.17 today. We decided to put in some minor tweaks before rolling that one out, hence the delay.

1 Like

I can confirm that this works, I just successfully ran the update. (It still doesn’t actually relaunch Duplicati after install, but as we’ve already discussed this is not a change from previous few versions).

In the changelog it mentions a new UI to expose the Retention Policy - but I can’t find anything new/different. Can you specify what this line item is referring to?

And a meta question: would it be possible to have an automated topic created for every release (canary/etc), with the changelog, to provide a place for us to discuss individual details without cluttering the forum with potentially unnecessary new topics?

Edit: if it’s ok with you, i’ve added a new topic for this canary build that captures about what I was thinking of, over here. Feel free to remove that if you’d rather post an ‘official’ version.

Yes, it is on the last step (5) when editing/adding a backup. In addition to being able to choose “keep-time” and “keep-versions”, there are now also a “smart retention” and “custom retention”, where “smart” is the same as using custom and typing in “1W:1D,4W:3D,1Y:1M”.

I assume you are referring to the “announcement” post. We do not intend to push one on each build, but our last “news” post was waaaay too long ago :).

I suppose we could have a “releases” section that curious people can subscribe to. I would need to look at the Discourse API to figure it out.

1 Like

Updated successfully here too.

Thanks

Andy