Release: 2.0.4.24 (canary) 2019-09-02

2.0.4.24-2.0.4.24_canary_2019-09-02

  • Code cleanup, thanks @warwickmm
  • Removed extra console output, thanks @wjansenw
  • Fixed disposing backends after job completion, thanks @warwickmm
  • Fixed an issue with throttled write, thanks @warwickmm
  • Spelling fix, thanks @BlueBlock
  • Fixed documetation in run-script examples, thanks @beppo-dd
  • Improved unittests, thanks @BlueBlock
  • Improved auto-compact and auto-vacuum, thanks @drwtsn32x
  • Fixed problem with exceeeding the number of parameters supported by SQLite, thanks @drwtsn32x
  • Improved status display, thanks @drwtsn32x
  • Improved bugreport database scrubbing, thanks @drwtsn32x
  • Removed GoogleDrive trash items in listing, thanks @BlueBlock
  • Fixed the rename method in the GoogleDrive backend, thanks @BlueBlock
  • Improved GCS storage class text, thanks @warwickmm
  • Improved unittests for easier local testing, thanks @warwickmm
  • Added workaround for AFTP upload delay, thanks @BlueBlock
  • Fixed issue with reading the largest path prefix, thanks @BlueBlock
  • Added conditional download of unittest data zip files, thanks @BlueBlock
  • CI testing improvements, thanks @BlueBlock
  • Fixed sporadic issue with backups of files being written, thanks @BlueBlock
  • Updated to .Net Framework 4.6.2
  • Fixed issue with temporary files not being deleted as expected, thanks @BlueBlock
  • Support for forcing calendar dates in time pickers, thanks @LacunaSoftware
3 Likes

There are currently no MSI packages for this release.
Once the Windows build machine is updated to WiX 3.11, a new build will include the MSI packages.

Any idea when this will happen? I only deploy with MSI as I don’t like the update mechanism.

The build machine is at “Downloading 21%”, hope it will finish today … and that it works after the update :wink:

Duplicati.GUI.TrayIcon.exe exits about 4 seconds after start on fully updated Windows 10 Version 1809, installed from the .zip file using my unorthodox scheme (which I HOPE is the issue, but old ones work).

Exit Status: 0, User Time: 0.5468750 seconds, Kernel Time: 0.4531250 seconds, Private Bytes: 26,095,616, Peak Private Bytes: 36,773,888, Working Set: 40,996,864, Peak Working Set: 41,054,208

Basically, heads up, and is anyone else able to get this running (or not)?

Normal GUI only left me a profiling log with nothing useful, Duplicati-server.sqlite, and nothing in event log.
Figuring sometimes Command Prompt runs can just drop errors onto the output, I tried a simpler launch:

C:\ProgramData\Duplicati\duplicati-2.0.4.24_canary_2019-09-02>Duplicati.CommandLine.exe help

See duplicati.commandline.exe help <topic> for more information.
  General: example, changelog
  Commands: backup, find, restore, delete, compact, test, compare, purge, vacuum
  Repair: repair, affected, list-broken-files, purge-broken-files
  Debug: debug, logging, create-report, test-filters, system-info, send-mail
  Targets: aftp, amzcd, azure, b2, box, cloudfiles, dropbox, file, ftp, googledrive, gcs, hubic, jottacloud, mega, openstack, rclone, s3, od4b, mssp, sia, ssh, tahoe, webdav
  Modules: aes, gpg, zip, 7z, console-password-input, mssql-options, hyperv-options, http-options, sendhttp, sendmail, runscript, sendxmpp, check-mono-ssl
  Formats: date, time, size, encryption, compression
  Advanced: mail, advanced, returncodes, filter, filter-groups, <option>

http://www.duplicati.com/              Version:  - 2.0.4.24_canary_2019-09-02




Crash!
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.AggregateException: One or more errors occurred. ---> System.IO.FileLoadException: Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) ---> System.IO.FileLoadException: Could not load file or assembly 'Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
   --- End of inner exception stack trace ---
   at Duplicati.Library.UsageReporter.EventProcessor.<>c__DisplayClass8_0.<<Run>b__0>d.MoveNext()
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder.Start[TStateMachine](TStateMachine& stateMachine)
   at Duplicati.Library.UsageReporter.EventProcessor.<>c__DisplayClass8_0.<Run>b__0(<>f__AnonymousType0`2 self)
   at CoCoL.AutomationExtensions.<RunTask>d__10`1.MoveNext()
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(TimeSpan timeout)
   at Duplicati.Library.UsageReporter.Reporter.ShutDown()
   at Duplicati.CommandLine.Program.RealMain(String[] args)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at Duplicati.Library.AutoUpdater.UpdaterManager.RunMethod(MethodInfo method, String[] args)

Unhandled Exception: System.AggregateException: One or more errors occurred. ---> System.IO.FileLoadException: Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) ---> System.IO.FileLoadException: Could not load file or assembly 'Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
   --- End of inner exception stack trace ---
   at Duplicati.Library.UsageReporter.EventProcessor.<>c__DisplayClass8_0.<<Run>b__0>d.MoveNext()
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder.Start[TStateMachine](TStateMachine& stateMachine)
   at Duplicati.Library.UsageReporter.EventProcessor.<>c__DisplayClass8_0.<Run>b__0(<>f__AnonymousType0`2 self)
   at CoCoL.AutomationExtensions.<RunTask>d__10`1.MoveNext()
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(TimeSpan timeout)
   at Duplicati.Library.UsageReporter.Reporter.ShutDown()
   at Duplicati.CommandLine.Program.RealMain(String[] args)
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Duplicati.Library.AutoUpdater.UpdaterManager.RunMethod(MethodInfo method, String[] args)
   at Duplicati.Library.AutoUpdater.UpdaterManager.RunFromMostRecentSpawn(MethodInfo method, String[] cmdargs, AutoUpdateStrategy defaultstrategy)
   at Duplicati.CommandLine.Program.Main(String[] args)

C:\ProgramData\Duplicati\duplicati-2.0.4.24_canary_2019-09-02>
1 Like

That indicates that the Newtonsoft.Json.dll is either missing, or packaged as a wrong version.

That matches the error description. Something is looking for v10 but the packaged version is v12. I used to have an assembly redirect for this case, but maybe it only worked for v0 to v9.

The “Updated to .Net Framework 4.6.2” PR also updated all nuget packages, but did somehow pass tests. Perhaps @BlueBlock can help figure out what’s going on.

Sure thing. I’ll look at it.

Think I found it. The app.config redirects v0.0.0.0-v12.0.0.0 to v12.0.0.0, but we are bundling v12.0.2.0.

I updated all the config files and am trying a new build now.

Edit: The build server seems to be working with MSI builds now.

Excellent. We’ll have to keep that in mind when packages are updated and verify the app.config

It is mostly not an issue, but Newtonsoft.Json is referenced by many of the packages that Duplicati uses. Since they are not always updated to use the latest-n-greatest we need the rebinding.

What’s the autoupdate risk for this release? Does something need to be stopped/delayed to avoid breakage?

I guess we could pull it, but since there is a new release now, we should not have more than 1 or 2 unlucky users for that version.

Ah, I see I missed it by 2 minutes when posting. Was it tested? First smoke test shows the same problem.

I get the Trayicon problem.

Application: Duplicati.GUI.TrayIcon.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.IO.FileNotFoundException

I downloaded the .25 release MSI and after installing over .22 I get the following trying to start it as a service:

Unhandled Exception: System.IO.FileLoadException: Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) ---> System.IO.FileLoadException: Could not load file or assembly 'Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
   --- End of inner exception stack trace ---
   at Duplicati.Library.AutoUpdater.UpdaterManager.ReadInstalledManifest(String folder)
   at Duplicati.Library.AutoUpdater.UpdaterManager.FindInstalledVersions()
   at Duplicati.Library.AutoUpdater.UpdaterManager.get_HasUpdateInstalled()
   at Duplicati.Library.AutoUpdater.UpdaterManager.GetBestUpdateVersion(Boolean forcecheck)
   at Duplicati.Library.AutoUpdater.UpdaterManager.RunFromMostRecentSpawn(MethodInfo method, String[] cmdargs, AutoUpdateStrategy defaultstrategy)
   at Duplicati.WindowsService.Program.Main(String[] args)

I still show the trayicon newtonsoft as 10 in all the app.config files. It’s not matching with the branch?

It looks like it is still trying to build on the 4.5 runtime.

The app.config’s have a lot of added content as well. I don’t think there is not a problem with Newtonsoft but when building against 4.5 nuget will adjust all the packages to what is supported.

My MSI build for one of my app.config is on the left and the canary is on the right.