syncthing/lib/versioner
Jakob Borg 4e151d380c lib/versioner: Reduce surface area (#6186)
* lib/versioner: Reduce surface area

This is a refactor while I was anyway rooting around in the versioner.
Instead of exporting every possible implementation and the factory and
letting the caller do whatever, this now encapsulates all that and
exposes a New() that takes a config.VersioningConfiguration.

Given that and that we don't know (from the outside) how a versioner
works or what state it keeps, we now just construct it once per folder
and keep it around. Previously it was recreated for each restore
request.

* unparam

* wip
2019-11-26 07:39:31 +00:00
..
_external_test lib/versioner: Test both spaces and parens in ext versioner paths 2016-09-18 12:24:55 +00:00
.gitignore mv internal lib 2015-08-09 09:35:26 +02:00
debug.go all, lib/logger: Refactor SetDebug calls (#6054) 2019-10-04 13:03:34 +02:00
empty_dir_tracker.go lib/versioner: Purge the empty directories in .stversions (fixes #4406) 2017-11-18 15:56:53 +00:00
empty_dir_tracker_test.go lib/versioner: Purge the empty directories in .stversions (fixes #4406) 2017-11-18 15:56:53 +00:00
external.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
external_test.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
simple.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
simple_test.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
staggered.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
staggered_test.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
trashcan.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
trashcan_test.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
util.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00
versioner.go lib/versioner: Reduce surface area (#6186) 2019-11-26 07:39:31 +00:00