syncthing/lib
Jakob Borg 46a143e80e lib/model: Handle deleted-then-ignored files (fixes #3502)
When files that were previously marked as deleted became ignored, we
used to do nothing at all. This changes that behavior to set the Invalid
bit (that we should rename to Ignored). This then becomes an update to
other devices that they should not trust our knowledge about the file in
question.

Read this diff without whitespace...

Tested by
- creating a bunch of files on s1
- letting them sync to s2
- shutting down s2
- deleting the files on s1 and rescanning
- adding the files to .stignore on s1 and rescanning
- starting up s2 and letting it sync
- observing the files are not deleted on s2, and it considers itself up
  to date.

GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3557
2016-09-02 13:23:24 +00:00
..
auto build: Generate gui.files.go on the fly, remove from repo 2016-03-28 10:03:13 +00:00
beacon Remove unused struct field 2015-10-27 09:55:05 +01:00
config lib/model, lib/config: Support "live" device removal, folder unsharing and folder configuration changes 2016-08-07 16:21:59 +00:00
connections lib/connections, lib/model: Refactor connection close handling (fixes #3466) 2016-08-10 09:37:32 +00:00
db lib/model, gui: Correct completion percentages when there are lots of deletes (fixes #3496) 2016-09-02 06:45:46 +00:00
dialer build, lib: Correct total test coverage calculation 2016-08-08 16:29:32 +00:00
discover script, lib/discover: Fixup copyright checks 2016-07-04 14:53:11 +02:00
events lib/events: Hack to make test coverage stable from run to run 2016-08-08 18:09:40 +00:00
fs lib: Remove osutil.Remove & osutil.RemoveAll (fixes #3513) 2016-08-16 10:01:58 +00:00
ignore vendor: Update github.com/gobwas/glob (fixes #3174) 2016-05-28 04:43:54 +00:00
logger cmd/syncthing: Extract interfaces for things the API depends on 2016-03-21 19:36:08 +00:00
model lib/model: Handle deleted-then-ignored files (fixes #3502) 2016-09-02 13:23:24 +00:00
nat lib/nat: Avoid concurrent reset of NAT timer (fixes #3337) 2016-06-26 10:17:12 +00:00
osutil lib: Remove osutil.Remove & osutil.RemoveAll (fixes #3513) 2016-08-16 10:01:58 +00:00
pmp build, lib: Correct total test coverage calculation 2016-08-08 16:29:32 +00:00
protocol lib/model, gui: Correct completion percentages when there are lots of deletes (fixes #3496) 2016-09-02 06:45:46 +00:00
rand lib/rand: Break out random functions into separate package 2016-05-26 07:02:56 +00:00
rc all: Rename LocalVersion to Sequence (fixes #3461) 2016-07-29 19:54:24 +00:00
relay build, lib: Correct total test coverage calculation 2016-08-08 16:29:32 +00:00
scanner lib: Remove osutil.Remove & osutil.RemoveAll (fixes #3513) 2016-08-16 10:01:58 +00:00
signature The PublicKey() method is an addition in Go 1.4 2015-10-27 16:03:14 +01:00
stats build, lib: Correct total test coverage calculation 2016-08-08 16:29:32 +00:00
symlinks build, lib: Correct total test coverage calculation 2016-08-08 16:29:32 +00:00
sync lib/sync: Skip the timing tests if the host timer is flaky 2016-03-27 10:41:38 +00:00
tlsutil build, lib: Correct total test coverage calculation 2016-08-08 16:29:32 +00:00
upgrade lib/upgrade: Cleanup failed upgrades (fixes #3500, fixes #3530) 2016-08-23 06:53:39 +00:00
upnp lib: simplify code 2016-05-18 22:47:11 +00:00
util lib/rand: Break out random functions into separate package 2016-05-26 07:02:56 +00:00
versioner lib: Remove osutil.Remove & osutil.RemoveAll (fixes #3513) 2016-08-16 10:01:58 +00:00