From a595e814dded99bd578d5c1f6c12121b4a11ca33 Mon Sep 17 00:00:00 2001 From: Jakob Borg Date: Sat, 21 Mar 2015 15:33:31 +0100 Subject: [PATCH] Set defaults correctly for autoNormalize The default:"foo" struct tags aren't actually used for folder configs. --- .../core/controllers/syncthingController.js | 2 ++ internal/auto/gui.files.go | 2 +- internal/config/config.go | 24 +++++++++++++------ internal/config/config_test.go | 1 + internal/config/testdata/v10.xml | 12 ++++++++++ 5 files changed, 33 insertions(+), 8 deletions(-) create mode 100644 internal/config/testdata/v10.xml diff --git a/gui/scripts/syncthing/core/controllers/syncthingController.js b/gui/scripts/syncthing/core/controllers/syncthingController.js index 2a6e75207..00f910313 100644 --- a/gui/scripts/syncthing/core/controllers/syncthingController.js +++ b/gui/scripts/syncthing/core/controllers/syncthingController.js @@ -934,6 +934,7 @@ angular.module('syncthing.core') $scope.currentFolder.staggeredMaxAge = 365; $scope.currentFolder.staggeredCleanInterval = 3600; $scope.currentFolder.staggeredVersionsPath = ""; + $scope.currentFolder.autoNormalize = true; $scope.editingExisting = false; $scope.folderEditor.$setPristine(); $('#editFolder').modal(); @@ -953,6 +954,7 @@ angular.module('syncthing.core') $scope.currentFolder.staggeredMaxAge = 365; $scope.currentFolder.staggeredCleanInterval = 3600; $scope.currentFolder.staggeredVersionsPath = ""; + $scope.currentFolder.autoNormalize = true; $scope.editingExisting = false; $scope.folderEditor.$setPristine(); $('#editFolder').modal(); diff --git a/internal/auto/gui.files.go b/internal/auto/gui.files.go index 241c6b6b2..18f43a192 100644 --- a/internal/auto/gui.files.go +++ b/internal/auto/gui.files.go @@ -192,7 +192,7 @@ func Assets() map[string][]byte { bs, _ = ioutil.ReadAll(gr) assets["scripts/syncthing/core/controllers/eventController.js"] = bs - bs, _ = base64.StdEncoding.DecodeString("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") + bs, _ = base64.StdEncoding.DecodeString("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") gr, _ = gzip.NewReader(bytes.NewReader(bs)) bs, _ = ioutil.ReadAll(gr) assets["scripts/syncthing/core/controllers/syncthingController.js"] = bs diff --git a/internal/config/config.go b/internal/config/config.go index 9ebd9d648..4c436316a 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -27,7 +27,7 @@ import ( var l = logger.DefaultLogger -const CurrentVersion = 9 +const CurrentVersion = 10 type Configuration struct { Version int `xml:"version,attr"` @@ -44,19 +44,18 @@ type Configuration struct { } type FolderConfiguration struct { -<<<<<<< HEAD ID string `xml:"id,attr"` Path string `xml:"path,attr"` Devices []FolderDeviceConfiguration `xml:"device"` ReadOnly bool `xml:"ro,attr"` - RescanIntervalS int `xml:"rescanIntervalS,attr" default:"60"` + RescanIntervalS int `xml:"rescanIntervalS,attr"` IgnorePerms bool `xml:"ignorePerms,attr"` - AutoNormalize bool `xml:"autoNormalize,attr" default:"true"` + AutoNormalize bool `xml:"autoNormalize,attr"` Versioning VersioningConfiguration `xml:"versioning"` LenientMtimes bool `xml:"lenientMtimes"` - Copiers int `xml:"copiers" default:"1"` // This defines how many files are handled concurrently. - Pullers int `xml:"pullers" default:"16"` // Defines how many blocks are fetched at the same time, possibly between separate copier routines. - Hashers int `xml:"hashers" default:"0"` // Less than one sets the value to the number of cores. These are CPU bound due to hashing. + Copiers int `xml:"copiers"` // This defines how many files are handled concurrently. + Pullers int `xml:"pullers"` // Defines how many blocks are fetched at the same time, possibly between separate copier routines. + Hashers int `xml:"hashers"` // Less than one sets the value to the number of cores. These are CPU bound due to hashing. Invalid string `xml:"-"` // Set at runtime when there is an error, not saved @@ -316,6 +315,9 @@ func (cfg *Configuration) prepare(myID protocol.DeviceID) { if cfg.Version == 8 { convertV8V9(cfg) } + if cfg.Version == 9 { + convertV9V10(cfg) + } // Hash old cleartext passwords if len(cfg.GUI.Password) > 0 && cfg.GUI.Password[0] != '$' { @@ -407,6 +409,14 @@ func ChangeRequiresRestart(from, to Configuration) bool { return false } +func convertV9V10(cfg *Configuration) { + // Enable auto normalization on existing folders. + for i := range cfg.Folders { + cfg.Folders[i].AutoNormalize = true + } + cfg.Version = 10 +} + func convertV8V9(cfg *Configuration) { // Compression is interpreted and serialized differently, but no enforced // changes. Still need a new version number since the compression stuff diff --git a/internal/config/config_test.go b/internal/config/config_test.go index e7f6600c7..98192af98 100644 --- a/internal/config/config_test.go +++ b/internal/config/config_test.go @@ -83,6 +83,7 @@ func TestDeviceConfig(t *testing.T) { Copiers: 1, Pullers: 16, Hashers: 0, + AutoNormalize: true, }, } expectedDevices := []DeviceConfiguration{ diff --git a/internal/config/testdata/v10.xml b/internal/config/testdata/v10.xml new file mode 100644 index 000000000..08a377c50 --- /dev/null +++ b/internal/config/testdata/v10.xml @@ -0,0 +1,12 @@ + + + + + + +
a
+
+ +
b
+
+