Simon Frei and Jakob Borg
c2784d76e4
lib/db: Remove updated invalid files from need bucket ( fixes #5007 ) ( #5008 )
2018-06-18 08:23:40 +02:00
Simon Frei and Jakob Borg
8ff7ceeddc
lib/ignore, lib/scanner: Fix recursion to catch included paths ( fixes #5009 ) ( #5010 )
2018-06-18 08:22:19 +02:00
Simon Frei and Audrius Butkevicius
54e17c8bf4
lib/model: Don't set watch error on folder creation (fixes 5005) ( #5006 )
2018-06-15 23:33:23 +01:00
Jakob Borg and Audrius Butkevicius
35a75a95dc
lib/model: Don't panic when rechecking file ( fixes #5002 ) ( #5003 )
2018-06-13 18:07:52 +01:00
Simon Frei and Jakob Borg
9e0e04f4de
all: Fix FS watcher restarting and web UI indication ( fixes #4923 ) ( #4962 )
2018-06-11 15:47:54 +02:00
Simon Frei and GitHub
1e2732aa21
lib/config, lib/model: Don't warn and return error ( #4997 )
2018-06-10 15:41:20 +02:00
Simon Frei and GitHub
b7234785f8
lib/model: Wait for folder to stop ( fixes #4981 ) ( #4982 )
2018-06-10 13:24:59 +02:00
Simon Frei and Jakob Borg
30056cd1ae
lib/db: Move database schema migration into its own file ( #4985 )
2018-06-08 12:46:00 +02:00
Jakob Borg and GitHub
a467f6908c
lib/protocol: Test for IsEquivalent ( #4996 )
2018-06-08 12:02:16 +02:00
Simon Frei and GitHub
e2c44f519c
lib/config, lib/model: Handle shared with information in config ( fixes #4870 ) ( #4974 )
2018-06-06 23:34:11 +02:00
Jakob Borg and GitHub
76f9e5c5db
lib/protocol: Correct block size calculation on 32 bit archs ( fixes #4990 ) ( #4991 )
2018-06-06 09:59:33 +02:00
Jakob Borg
27d675a793
lib/upgrade: Tests should pass on darwin-386
2018-06-06 09:47:13 +02:00
Simon Frei and GitHub
ee6516aa31
lib/fs: Resolve 8.3 filenames from watcher (ref #3800 ) ( #4975 )
2018-06-04 13:41:03 +02:00
Jakob Borg
8b15624f7d
lib/scanner: Skip block size hysteresis test in -short mode
...
This burns like a percent of my laptop battery on every invocation...
2018-06-02 13:10:05 +00:00
Simon Frei and Jakob Borg
5baa432906
lib/db: Add index to track locally needed files ( #4958 )
...
To optimize WithNeed, which is called for the local device whenever an index
update is received. No tracking for remote devices to conserve db space, as
WithNeed is only queried for completion.
2018-06-02 15:08:32 +02:00
Audrius Butkevicius and Jakob Borg
d60f0e734c
lib/scanner: Copy execute bits from previous version on Windows ( fixes #4969 ) ( #4970 )
2018-05-29 07:01:23 +01:00
Simon Frei and Audrius Butkevicius
a83176c77a
lib/watchaggregator: Speedup propagation of removals ( fixes #4953 ) ( #4955 )
2018-05-26 10:08:23 +01:00
Simon Frei and Audrius Butkevicius
07bf24a3b4
lib/watchaggregator: Prevent race on config update ( #4938 )
2018-05-24 19:47:15 +01:00
Simon Frei and GitHub
ef1633ac76
lib/db: Update global count when removing the previous global version ( #4968 )
2018-05-24 18:17:45 +02:00
Simon Frei and Audrius Butkevicius
9d2b744c12
lib/model: Move String method to folder ( #4964 )
2018-05-23 08:23:21 +01:00
Jakob Borg
119335930c
lib/model: Refactor override implementation into sendOnlyFolder
...
I'm trying to slowly clean this up a bit, and moving functionality out
into the folder types and having those methods not reach into model is
part of it. That can mean takign some odd arguments in the meantime,
some of those should probably become interfaces or properties on folder
in the long term.
2018-05-21 09:09:47 +02:00
Jakob Borg
370a3549e7
lib/model: Refactor folderScanner into folder
...
The functionality was anyway mostly implemented there and not isolated
in the folderScanner type. The attempt to refactor it out in the other
direction wouldn't work given that the event loop and stuff is on
`folder`.
2018-05-21 08:47:58 +02:00
Simon Frei and Jakob Borg
d64d954721
lib/db: Fix prefixed walks ( fixes #4925 ) ( #4940 )
2018-05-17 09:26:40 +02:00
Jakob Borg and GitHub
c08024ebb8
lib/db: Add db and test with invalid files ( #4954 )
...
This adds a couple of utilities for transporting databases in JSON and a
test to load a database and verify a couple of invalid bits. The test
itself is quite pointless at the moment, but it lays the groundwork for
testing the migration of this data in the next step (after the invalid
bit should be changed to local flags for local files).
When that happens we need to have a database in the old format already
there in order to be able to test the migration.
2018-05-16 08:44:08 +02:00
Simon Frei and Audrius Butkevicius
eabce48761
lib/model: Also wait for ItemFinished in TestDeregister ( #4951 )
2018-05-14 20:01:35 +01:00
Simon Frei and GitHub
d59aecba31
lib/ignore, lib/scanner: Catch included items below ignored ones ( #4811 )
2018-05-14 09:47:23 +02:00
Jakob Borg and GitHub
20aa53486a
all: Serialize folder types to new names ( #4942 )
...
It's been a year and a half since we started accepting the new names.
It's time we start producing them.
2018-05-13 09:58:00 +02:00
Simon Frei and Jakob Borg
a7e30c925f
all: Use Executable from os instead of osext ( fixes #4900 ) ( #4950 )
2018-05-13 07:43:24 +02:00
Jakob Borg
9e696a154b
lib/model: Rename {ro,rw}folder.go
...
To newer names better reflecting their types and yet sorting together
with folder.go. Doing it now without asking because there are no open
PRs that will get killed by it, and to avoid bikeshedding the names.
2018-05-11 11:00:02 +02:00
Jakob Borg and GitHub
344e52e311
lib/model: Refactor {ro,rw}folder serve loop into just folder ( #4939 )
...
The actual pull method (which is really the only thing that differs
between them) is now an interface member which gets overridden by the
subclass.
"Subclass?!" Well, this is dynamic dispatch with overriding, I guess.
2018-05-11 10:45:13 +02:00
Simon Frei and Jakob Borg
a2f51c85c2
lib/osutil: Add test for IsDeleted (ref #4925 ) ( #4936 )
2018-05-10 21:39:33 +02:00
Jakob Borg
fb198a0645
lib/db: Actually delete the correct sequence prefix
2018-05-09 12:06:29 +02:00
xjtdy888 and Jakob Borg
506181599c
lib/db: Remove all sequences related to the folder ( fixes #4928 ) ( #4929 )
2018-05-09 08:57:42 +02:00
Audrius Butkevicius and Jakob Borg
a48a31e3f5
lib/ignores: Fix ignore loading, report errors to UI ( fixes #4901 ) ( #4932 )
2018-05-08 23:37:13 +02:00
Jakob Borg and Audrius Butkevicius
2343c82c33
lib/model: Don't include unshared folders in ClusterConfig ( fixes #4926 )
...
Also fixes a data race where ClusterConfig would access folderFiles
without a lock. Tweaked the ClusterConfig unit test to verify the
behavior.
2018-05-08 08:19:34 +01:00
Simon Frei and Jakob Borg
a94aceb22f
lib/model: Don't create folder root when paused ( fixes #4903 ) ( #4904 )
2018-05-05 10:30:39 +02:00
Audrius Butkevicius and Jakob Borg
ef0dcea6a4
lib/model: Verify request content against weak (and possibly strong) hash ( #4767 )
2018-05-05 10:24:44 +02:00
Simon Frei and Audrius Butkevicius
53dc346583
lib/model: Fix test function for introducer ( #4898 )
2018-05-01 22:56:20 +01:00
Jakob Borg and Audrius Butkevicius
c2f498fc82
lib/model: Units are hard ( fixes #4910 )
2018-05-01 22:50:23 +01:00
Simon Frei and Jakob Borg
a548014755
lib/db, lib/model: Add sequence->deviceKey to db for sending indexes ( #4906 )
...
Instead of walking and unmarshalling the entire db and sorting the resulting
file infos by sequence, add store device keys by sequence number in the
database. Thus only the required file infos need be unmarshalled and are already
sorted by index.
2018-05-01 23:39:15 +02:00
Simon Frei and Audrius Butkevicius
f6458d1b8f
lib/config, lib/model: Include paused folders in cluster config ( fixes #4897 )
2018-04-22 17:01:52 +01:00
Iain Barnett and Jakob Borg
4d3b5348ae
lib/protocol: Add note about non-standard Luhn calculation ( #4895 )
...
Skip-check: authors
2018-04-20 18:52:03 +02:00
Simon Frei and GitHub
eca076cf7d
lib/osutil: Fix TraversesSymlink with symlinked fs root on windows ( fixes #4875 ) ( #4886 )
2018-04-17 22:53:06 +02:00
Jakob Borg and Audrius Butkevicius
dbcf7a02a0
lib/model: Increase the default pull limit ( fixes #4883 )
...
Bumping the limit to 2 * the max block size (16 MiB) is a slight
increase compared to previously. Nonetheless I think it's good to allow
us to queue one request and have one on the way in, or conversely have
one large block on the way in and be able to ask for smaller blocks from
others at the same time.
2018-04-17 07:55:49 +01:00
Jakob Borg and Audrius Butkevicius
19c7cd99f5
all: Implement variable sized blocks ( fixes #4807 )
2018-04-16 19:08:50 +01:00
Simon Frei and Jakob Borg
01aef75c96
lib/fs: Fix watcher panic due to casing on windows ( fixes #4877 ) ( #4878 )
2018-04-16 20:07:00 +02:00
Simon Frei and Audrius Butkevicius
4072ae4d05
lib/model: Prevent warning on request in paused folder ( fixes #4870 )
2018-04-09 20:55:52 +01:00
Simon Frei and Audrius Butkevicius
26d87ec3bb
lib/fs: Don't panic when watching a folder with symlinked root ( #4846 )
2018-03-28 22:01:25 +01:00
Audrius Butkevicius and GitHub
720e8dedbc
lib/osutil: Use unix lowprio implementation on Android ( #4844 )
2018-03-27 22:03:09 +01:00
Simon Frei and Jakob Borg
69f2c26d50
lib/scanner, lib/model: Actually assign version when un-ignoring ( fixes #4841 ) ( #4842 )
...
This fixes a mistake introduced in #4750 and #4776 and is relevant to v0.14.46-rc1
2018-03-27 16:24:20 -04:00