Web-UI doesn't show versions (space in path)

The Web-UI of my Syncthing-node (Linux/docker) doesn’t show the recent versions, when I click the ‘versions’ button. As far as I can see, the space in the path is the only difference from the other folders (which work perfectly fine).

Just to be clear: Syncthing creates the versions correctly (on a file-level). They just won’t show up in the web-UI. The versions-dialogue is just empty.

I’ve already updated to 1.13.1. That issue still persists.

Did you check stversions directory to check if it actually has files? Do you actually have versioning enabled on that device?

Versions directory is not some sort of global synced thing. Files only end up there if other remote devices modify them. Local changes cannot by definition be versioned.

Can you be more specific about the path differences between those folders? Are you using custom paths for the versions folders, or do you mean spaces in the overall folder path?

Some screenshots of the GUI would probably help.

The versioning is set to ‘Staggered File Versioning’ but the version path is not set to default (./.stversions). It’s set to a path outside of the folder.

But the versioning works. The versioning folder has a bunch of versioned files inside it: ‘~20210127-163018.

The only problem is that the web-ui won’t show them. It’s just empty.

I have the same settings for other folders, which work perfectly fine. The only notable difference for this folder is that it has a space in the folder path (and in the versioning-folder path)

The path logic is like this:

  • /rootpath/computer1/foldername/
  • /rootpath/computer2/folder name/
  • /rootpath/versioning/computer1/foldername/
  • /rootpath/versioning/computer2/folder name/

See my next post for screenshots

I hope these clarify everything

2 Likes

This should work in theory, but might have never been tested with a custom versions directory.

I assume there are no errors in syncthing logs or chrome dev tools?

There are no errors in the syncthing logs. But I just checked the (firefox) dev tools console and got this error when I opened the versioning:

Error: parent.children is undefined
buildTree/<@https://syncthing.MYDOMAIN.de/syncthing/app.js:186:29
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:389:19
buildTree@https://syncthing.MYDOMAIN.de/syncthing/app.js:176:7
show/</<@https://syncthing.MYDOMAIN.de/syncthing/core/syncthingController.js:2180:41
timeout/timeoutId<@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:16433:28
completeOutstandingRequest@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:4959:10
Browser/self.defer/timeoutId<@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:5347:33
setTimeout handler*Browser/self.defer@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:5345:17
timeout@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:16431:28
show/<@https://syncthing.MYDOMAIN.de/syncthing/core/syncthingController.js:2156:33
processQueue@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:13337:27
scheduleProcessQueue/<@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:13353:39
$eval@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:14589:28
$digest@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:14405:31
$evalAsync/<@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:14628:26
completeOutstandingRequest@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:4959:10
Browser/self.defer/timeoutId<@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:5347:33
setTimeout handler*Browser/self.defer@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:5345:17
$evalAsync@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:14626:20
$QProvider/this.$get</<@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:13241:18
scheduleProcessQueue@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:13353:13
$$resolve@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:13390:31
resolve@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:13373:14
simpleBind/<@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:13322:10
show/<@https://syncthing.MYDOMAIN.de/syncthing/core/syncthingController.js:2137:36
fn@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4514:18
dispatch@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4755:27
add/elemData.handle@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4567:28
trigger@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:7837:12
trigger/<@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:7921:17
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:383:19
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:155:17
trigger@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:7920:15
Modal.prototype.show/</<@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:505:44
fn@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4514:18
handle@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:1787:62
dispatch@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4755:27
add/elemData.handle@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4567:28
EventListener.handleEvent*add@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4615:12
on/<@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4521:16
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:383:19
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:155:17
on@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4520:14
one@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:5100:10
Modal.prototype.show/<@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:504:12
fn@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4514:18
handle@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:1787:62
dispatch@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4755:27
add/elemData.handle@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:4567:28
trigger@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:7837:12
trigger/<@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:7921:17
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:383:19
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:155:17
trigger@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:7920:15
callback@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:1773:54
setTimeout handler*$.fn.emulateTransitionEnd@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:1774:15
Modal.prototype.backdrop@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:617:12
Modal.prototype.show@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:479:10
Plugin/<@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:701:35
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:383:19
each@https://syncthing.MYDOMAIN.de/vendor/jquery/jquery-2.2.2.js:155:17
Plugin@https://syncthing.MYDOMAIN.de/vendor/bootstrap/js/bootstrap.js:694:17
show@https://syncthing.MYDOMAIN.de/syncthing/core/syncthingController.js:2133:43
$parseFunctionCall@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:12493:18
callback@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:21719:19
$eval@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:14589:28
$apply@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:14688:23
ngEventHandler/<@https://syncthing.MYDOMAIN.de/vendor/angular/angular.js:21724:23

Feels like a bug, suggest you open an issue on github.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.