Jakob Borg
6809d38cde
lib/protocol: Revert protobuf encoder changes in v0.14.17 ( fixes #3855 )
...
The protobuf encoder now produces packed arrays for things like []int32,
which is actually correct according to the proto3 spec. However
Syncthing v0.14.16 and earlier doesn't support this. This reverts the
encoding change, but keeps the updated decoder so that we are both more
compatible with other proto3 implementations and can move to the updated
encoder in the future.
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3856
2017-01-01 17:19:00 +00:00
Jakob Borg
0a118d2979
lib/config, lib/model: Temporarily disable bad tests (ref #3834 , #3843 )
2017-01-01 13:27:18 +01:00
Jakob Borg
c69c3c7c36
lib/sha256: Smoke test the implementation on startup (hello OpenSUSE!)
2016-12-28 12:15:51 +01:00
Jakob Borg
f5a310ad64
Revert "lib/model: Handle filename conflicts on Windows."
...
This reverts commit 01e50eb3fa
.
2016-12-23 11:10:58 +01:00
Unrud
01e50eb3fa
lib/model: Handle filename conflicts on Windows.
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3810
LGTM: calmh
2016-12-22 23:04:53 +00:00
Audrius Butkevicius
bab7c8ebbf
all: Add folder pause, make pauses permanent ( fixes #3407 , fixes #215 , fixes #3001 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3520
2016-12-21 18:41:25 +00:00
Nathan Morrison
0725e3af38
all: Add a global change list
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3694
2016-12-21 16:35:20 +00:00
Jakob Borg
dd7bb6c4b8
lib/model: Fix tests, clean up pool usage in protocol
2016-12-21 14:53:45 +01:00
Jakob Borg
d41c131364
build: Enable gometalinter "gosimple" check, improve build.go
2016-12-21 14:53:45 +01:00
Jakob Borg
47f22ff3e5
build: Enable gometalinter "unconvert" check
2016-12-21 14:53:45 +01:00
Jakob Borg
744c2e82b5
build: Enable gometalinter "staticcheck" check
2016-12-21 14:53:45 +01:00
Jakob Borg
ead7281c20
build: Enable gometalinter "unused" check
2016-12-21 14:53:45 +01:00
AudriusButkevicius
aa3ef49dd7
lib/model: Fix lock order
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3823
2016-12-21 12:22:18 +00:00
Jakob Borg
5c067661f4
lib/model: Consistently show folder description in startup messages
...
Since we anyway need the folderConfig for this I'm skipping the copying
of all it's attributes that rwfolder did and just keeping the original
around instead.
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3825
2016-12-21 11:23:20 +00:00
Jakob Borg
226da976dc
lib/model: Allow empty subdirs in scan request ( fixes #3829 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3833
2016-12-21 10:33:07 +00:00
AudriusButkevicius
9e0afb7d8a
lib/connections: Support setting traffic class ( fixes #3790 )
2016-12-21 11:01:15 +01:00
Jakob Borg
d7d5687faa
lib/protocol: Warnln should have been Warnf
2016-12-21 10:43:12 +01:00
Jakob Borg
2f770f8bfb
lib/config, lib/protocol: Improve folder description with empty label
2016-12-19 10:12:06 +01:00
Jakob Borg
b8c1c0e048
cmd/syncthing: Enable better crypto, print negotiated cipher suite
...
This adds support for AES_256_GCM_SHA384 (in there since Go 1.5, a bit
of a shame we missed it) and ChaCha20-Poly1305 (if built with Go 1.8;
ignored on older Gos).
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3822
2016-12-18 21:07:44 +00:00
Jakob Borg
9c67bd2550
lib/connections: Fix port fixup in Go 1.8 ( fixes #3817 )
...
The test for the error string is fragile, and the error string changed
in Go 1.8 so the relevant part is no longer a prefix. This covers it
with a test though, so it should be fine in the future as well.
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3818
2016-12-18 11:28:18 +00:00
Jakob Borg
f67c5a2fd6
lib/model: Don't send symlinks to old devices that can't handle them ( fixes #3802 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3811
2016-12-17 19:48:33 +00:00
Heiko Zuerker
398c356f22
lib/model: Clarify master terminology ( fixes #2679 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3793
2016-12-16 22:23:35 +00:00
Audrius Butkevicius
542b76f687
lib/model: Moar sleep
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3807
2016-12-16 12:05:27 +00:00
Jakob Borg
abb8a1914a
lib/model: Accept scan requests of paths ending in slash ( fixes #3804 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3805
2016-12-16 11:21:22 +00:00
Audrius Butkevicius
0582836820
lib/model, lib/scanner: Efficient inserts/deletes in the middle of the file
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3527
2016-12-14 23:30:29 +00:00
Jakob Borg
dde9d4c9eb
lib/rc: Remove pause to aggregate events (ref #3527 )
2016-12-14 10:24:36 +01:00
Jakob Borg
3582783972
lib/model, lib/osutil: Verify target directory before pulling / requesting
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3798
2016-12-13 10:24:10 +00:00
Jakob Borg
5070d52f2f
lib/model: Add benchmark for model.Request()
2016-12-09 23:14:56 +01:00
Jakob Borg
7b07ed6580
lib/model, lib/protocol, lib/scanner: Include symlink target in index, pull symlinks synchronously
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3792
2016-12-09 18:02:18 +00:00
Jakob Borg
a9b03de99a
gui, lib/db: Correct space accounting of symlinks, for "out of sync" status
2016-12-09 10:38:36 +01:00
Lars K.W. Gohlke
8ce9b026e9
lib/model: Minor cleanups
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3765
2016-12-06 08:54:04 +00:00
Jakob Borg
2fd1dca905
lib/connections: Fix odd logging, forgot to call function
2016-12-02 12:56:14 +01:00
Jakob Borg
e3cf718998
lib/ignore: Add central check for internal files, used in scanning, pulling and requests
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3779
2016-12-01 14:00:11 +00:00
Jakob Borg
3266aae1c3
lib/protocol: Apply input filtering on file names
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3775
2016-12-01 12:35:32 +00:00
Jakob Borg
63194a37f6
lib/model: Double check results in filepath.Join where needed
...
Wherever we have untrusted relative paths, make sure they are not
escaping their folder root.
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3776
2016-12-01 12:35:11 +00:00
Unrud
cabe94552a
lib/model: Prevent collisions in the progressemitter registry
...
Using filepath.Join can cause collisions. The folder ID could be something
like ".." or "../..".
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3778
2016-12-01 12:34:20 +00:00
Jakob Borg
48a229a0cd
lib/model: Temp names from all platforms should be recognized as such
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3777
LGTM: AudriusButkevicius
2016-11-30 21:23:24 +00:00
Jakob Borg
e4db86836b
lib/model: Locking in the request test
2016-11-30 13:11:06 +01:00
Jakob Borg
913a85c571
lib/model: Add simple file syncing test
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3772
2016-11-30 09:32:28 +00:00
Jakob Borg
ed4f6fc4b3
lib/connections, lib/model: Connection service should expose a single interface
...
Makes testing easier, which we'll need
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3771
2016-11-30 07:54:20 +00:00
Jakob Borg
fc1430aa92
lib/fs: The interface and basicfs
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3748
2016-11-24 12:07:14 +00:00
Jakob Borg
3cde608eda
lib/db: Fix ineffassign lint issue
2016-11-24 12:08:44 +01:00
Jakob Borg
91568a173a
lib/model: Remove ineffectual assignment in test
2016-11-24 11:33:27 +01:00
Jakob Borg
e57f5499a1
lib/sync: Remove unused struct field
2016-11-24 11:30:55 +01:00
Jakob Borg
9abb7b71a9
lib/osutil: Fix lint warning on error formatting ( fixes #3760 )
2016-11-24 11:20:51 +01:00
Jakob Borg
8559e20237
lib/osutil: Don't chmod in atomic file creation ( fixes #2472 )
...
Instead, trust (and test) that the temp file has appropriate permissions
from the start. The only place where this changes our behavior is for
ignores which go from 0644 to 0600. I'm OK with that.
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3756
2016-11-23 14:06:08 +00:00
Jakob Borg
26730eb083
lib/model: Fix test that relies on ignore reloading
2016-11-23 14:42:29 +01:00
Simon Frei
4160ce674d
model: consistently use cfg when referring to config instance and not package
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3755
2016-11-22 23:14:20 +00:00
Jakob Borg
2dbeea21c4
lib/ignore: Don't slow down tests by sleeping
2016-11-22 22:44:04 +01:00
Jakob Borg
a2b8485a89
lib/ignore: Fast reload of unchanged ignores ( fixes #3394 )
...
This changes the "seen" map that we're anyway keeping around to track
the modtimes of loaded files instead. When doing a Load() we check that
1) the file we are loading is in the modtime set, and 2) that none of
the files in the modtime set have changed modtimes. If that's the case
we do a quick return without parsing anything or clearing the cache.
This required adding two one seconds sleeps in the tests to make sure
the modtimes were updated when we expect cache reloads, because I'm on a
crappy filesystem with one second timestamp granularity. That also
proves it works...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3754
2016-11-22 21:30:45 +00:00