Simon Frei
722b3fce6a
all: Hide implementations behind interfaces for mocked testing ( #5548 )
...
* lib/model: Hide implementations behind interfaces for mocked testing
* review
2019-02-26 08:09:25 +00:00
Jonas Thelemann
8a05492622
docs: Correct Docker README ( #5480 ) ( #5545 )
...
Plus some formatting.
2019-02-26 00:37:59 +04:00
Jakob Borg
63c4e7f6d0
Merge branch 'release'
...
* release:
lib/scanner: Use standard adler32 when we don't need rolling (#5556 )
2019-02-25 19:36:41 +01:00
Audrius Butkevicius
f0f79a3e3e
lib/scanner: Use standard adler32 when we don't need rolling ( #5556 )
...
* lib/scanner: Use standard adler32 when we don't need rolling
Seems the rolling adler32 implementation is super slow when executed on large blocks, even tho I can't explain why.
BenchmarkFind1MFile-16 100 18991667 ns/op 55.21 MB/s 398844 B/op 20 allocs/op
BenchmarkBlock/adler32-131072/#00-16 200 9726519 ns/op 1078.06 MB/s 2654936 B/op 163 allocs/op
BenchmarkBlock/bozo32-131072/#00-16 20 73435540 ns/op 142.79 MB/s 2654928 B/op 163 allocs/op
BenchmarkBlock/buzhash32-131072/#00-16 20 61482005 ns/op 170.55 MB/s 2654928 B/op 163 allocs/op
BenchmarkBlock/buzhash64-131072/#00-16 20 61673660 ns/op 170.02 MB/s 2654928 B/op 163 allocs/op
BenchmarkBlock/vanilla-adler32-131072/#00-16 300 4377307 ns/op 2395.48 MB/s 2654935 B/op 163 allocs/op
BenchmarkBlock/adler32-16777216/#00-16 2 544010100 ns/op 19.27 MB/s 65624 B/op 5 allocs/op
BenchmarkBlock/bozo32-16777216/#00-16 1 4678108500 ns/op 2.24 MB/s 51970144 B/op 24 allocs/op
BenchmarkBlock/buzhash32-16777216/#00-16 1 3880370700 ns/op 2.70 MB/s 51970144 B/op 24 allocs/op
BenchmarkBlock/buzhash64-16777216/#00-16 1 3875911700 ns/op 2.71 MB/s 51970144 B/op 24 allocs/op
BenchmarkBlock/vanilla-adler32-16777216/#00-16 300 4010279 ns/op 2614.72 MB/s 65624 B/op 5 allocs/op
BenchmarkRoll/adler32-131072/#00-16 2000 974279 ns/op 134.53 MB/s 270 B/op 0 allocs/op
BenchmarkRoll/bozo32-131072/#00-16 2000 791770 ns/op 165.54 MB/s 270 B/op 0 allocs/op
BenchmarkRoll/buzhash32-131072/#00-16 2000 917409 ns/op 142.87 MB/s 270 B/op 0 allocs/op
BenchmarkRoll/buzhash64-131072/#00-16 2000 881125 ns/op 148.76 MB/s 270 B/op 0 allocs/op
BenchmarkRoll/adler32-16777216/#00-16 10 124000400 ns/op 135.30 MB/s 7548937 B/op 0 allocs/op
BenchmarkRoll/bozo32-16777216/#00-16 10 118008080 ns/op 142.17 MB/s 7548928 B/op 0 allocs/op
BenchmarkRoll/buzhash32-16777216/#00-16 10 126794440 ns/op 132.32 MB/s 7548928 B/op 0 allocs/op
BenchmarkRoll/buzhash64-16777216/#00-16 10 126631960 ns/op 132.49 MB/s 7548928 B/op 0 allocs/op
* Update benchmark_test.go
* gofmt
* fixup benchmark
2019-02-25 19:25:08 +01:00
Audrius Butkevicius
fafd30f804
lib/scanner: Use standard adler32 when we don't need rolling ( #5556 )
...
* lib/scanner: Use standard adler32 when we don't need rolling
Seems the rolling adler32 implementation is super slow when executed on large blocks, even tho I can't explain why.
BenchmarkFind1MFile-16 100 18991667 ns/op 55.21 MB/s 398844 B/op 20 allocs/op
BenchmarkBlock/adler32-131072/#00-16 200 9726519 ns/op 1078.06 MB/s 2654936 B/op 163 allocs/op
BenchmarkBlock/bozo32-131072/#00-16 20 73435540 ns/op 142.79 MB/s 2654928 B/op 163 allocs/op
BenchmarkBlock/buzhash32-131072/#00-16 20 61482005 ns/op 170.55 MB/s 2654928 B/op 163 allocs/op
BenchmarkBlock/buzhash64-131072/#00-16 20 61673660 ns/op 170.02 MB/s 2654928 B/op 163 allocs/op
BenchmarkBlock/vanilla-adler32-131072/#00-16 300 4377307 ns/op 2395.48 MB/s 2654935 B/op 163 allocs/op
BenchmarkBlock/adler32-16777216/#00-16 2 544010100 ns/op 19.27 MB/s 65624 B/op 5 allocs/op
BenchmarkBlock/bozo32-16777216/#00-16 1 4678108500 ns/op 2.24 MB/s 51970144 B/op 24 allocs/op
BenchmarkBlock/buzhash32-16777216/#00-16 1 3880370700 ns/op 2.70 MB/s 51970144 B/op 24 allocs/op
BenchmarkBlock/buzhash64-16777216/#00-16 1 3875911700 ns/op 2.71 MB/s 51970144 B/op 24 allocs/op
BenchmarkBlock/vanilla-adler32-16777216/#00-16 300 4010279 ns/op 2614.72 MB/s 65624 B/op 5 allocs/op
BenchmarkRoll/adler32-131072/#00-16 2000 974279 ns/op 134.53 MB/s 270 B/op 0 allocs/op
BenchmarkRoll/bozo32-131072/#00-16 2000 791770 ns/op 165.54 MB/s 270 B/op 0 allocs/op
BenchmarkRoll/buzhash32-131072/#00-16 2000 917409 ns/op 142.87 MB/s 270 B/op 0 allocs/op
BenchmarkRoll/buzhash64-131072/#00-16 2000 881125 ns/op 148.76 MB/s 270 B/op 0 allocs/op
BenchmarkRoll/adler32-16777216/#00-16 10 124000400 ns/op 135.30 MB/s 7548937 B/op 0 allocs/op
BenchmarkRoll/bozo32-16777216/#00-16 10 118008080 ns/op 142.17 MB/s 7548928 B/op 0 allocs/op
BenchmarkRoll/buzhash32-16777216/#00-16 10 126794440 ns/op 132.32 MB/s 7548928 B/op 0 allocs/op
BenchmarkRoll/buzhash64-16777216/#00-16 10 126631960 ns/op 132.49 MB/s 7548928 B/op 0 allocs/op
* Update benchmark_test.go
* gofmt
* fixup benchmark
2019-02-25 13:29:31 +04:00
Simon Frei
ad5a046843
lib/fs: Rename fsFile* to basicFile* ( #5546 )
2019-02-24 18:02:02 +01:00
Jakob Borg
4b8853bfde
gui, man, authors: Update docs, translations, and contributors
2019-02-20 07:45:22 +01:00
Evgeny Kuznetsov
648fcf2c45
etc: Remove unnecessary quotes in .desktop ( #5540 )
2019-02-15 07:35:19 +00:00
Simon Frei
ca3ae64bbf
lib/db: Flush batch based on size and refactor ( fixes #5531 ) ( #5536 )
...
Flush the batch when exceeding a certain size, instead of when reaching a number
of batched operations.
Move batch to lowlevel to be able to use it in NamespacedKV.
Increase the leveldb memory buffer from 4 to 16 MiB.
2019-02-14 23:15:13 +00:00
Simon Frei
e2204d0071
build: Add option to get test coverage ( #5539 )
2019-02-14 22:38:47 +00:00
Simon Frei
d5ff2c41dc
all: Get rid of fatal logging ( #5537 )
...
* cleanup Fatal in lib/config/config.go
* cleanup Fatal in lib/config/folderconfiguration.go
* cleanup Fatal in lib/model/model.go
* cleanup Fatal in cmd/syncthing/monitor.go
* cleanup Fatal in cmd/syncthing/main.go
* cleanup Fatal in lib/api
* remove Fatal methods from logger
* lowercase in errors.Wrap
* one less channel
2019-02-14 20:29:14 +00:00
Simon Frei
7a40c42e8b
cmd/syncthing: Introduce exiter to handle termination ( #5532 )
2019-02-13 23:07:27 +00:00
Simon Frei
905c3594b0
lib/model: Various model test fixes and polish ( #5528 )
...
* lib/model: Various model test fixes and polish
Missing calls to m.Stop()
Don't fail test if temporary test dir cleanup fails
* drop lazyness
2019-02-13 18:54:04 +00:00
Jakob Borg
5fd333e4f7
gui, man, authors: Update docs, translations, and contributors
2019-02-13 07:45:23 +01:00
Simon Frei
225c0dda80
lib/model: Scan conflicts after creation ( #5511 )
...
Also unflakes and improve TestRequestRemoteRenameChanged.
2019-02-12 16:05:20 +01:00
Simon Frei
5fd2cab102
lib/model: Run more tests in tmp dir ( #5527 )
2019-02-12 16:04:04 +01:00
Simon Frei
4299af1c63
lib/config, lib/model: Use path from locations to check disk space for db ( #5525 )
2019-02-12 12:25:11 +00:00
Simon Frei
d85ef949be
lib/model: Introduce setupModel test utility ( #5524 )
2019-02-12 12:18:13 +00:00
Audrius Butkevicius
dc929946fe
all: Use new reflect based CLI ( #5487 )
2019-02-12 07:58:24 +01:00
Simon Frei
7bac927ac8
lib/model: Use functions to generate config ( #5513 )
2019-02-12 07:50:07 +01:00
Matt Robenolt
93b4597d1a
gui: Localize items counts ( #5520 )
2019-02-12 07:49:14 +01:00
Evgeny Kuznetsov
0928628e7b
etc: Add keywords to .desktop files ( fixes #5365 ) ( #5521 )
2019-02-11 14:33:05 +01:00
Audrius Butkevicius
c5a79bdfe6
Fix builds on Windows without CGO ( #5518 )
2019-02-10 15:58:29 +01:00
Jakob Borg
04fdafa280
lib/db, lib/model: Remove dead code ( #5517 )
2019-02-08 16:42:58 +01:00
Jakob Borg
cb49136269
gui: Add missing translation string ( fixes #5515 )
2019-02-07 07:30:22 +01:00
Simon Frei
2f415d8f09
lib/model: Don't use LocalDeviceID as normal id in tests ( #5512 )
2019-02-06 09:32:03 +01:00
Jakob Borg
b076031bfa
gui, man, authors: Update docs, translations, and contributors
2019-02-06 07:45:24 +01:00
Simon Frei
e538797ce1
lib/model: Improve TestIssue5063 ( #5509 )
...
* lib/model: Improve TestIssue5063
* add not that helpful issue comment
2019-02-05 23:07:21 +00:00
Simon Frei
5df8219bcb
lib/model: Add progressEmitter to supervisor (model) ( #5510 )
2019-02-05 18:02:36 +00:00
Simon Frei
af4fb97538
lib/model: Fail test instead of panic due to closing channel twice ( #5508 )
2019-02-05 18:01:56 +00:00
Simon Frei
5d9d87f770
lib/model: Helperize test os and remove error return value ( #5507 )
2019-02-05 18:01:05 +00:00
Jakob Borg
c75cfcfd06
gui: Enable large blocks by default, add to config dialog ( #5405 )
...
Also moves a couple of </div> that were out of balance and reindents
accordingly, so try a white space insensitive diff when reviewing...
2019-02-02 13:06:01 +01:00
Jakob Borg
6cdd1c5158
cmd/syncthing: Fixup previous commit
2019-02-02 12:54:26 +01:00
Simon Frei
41d037da1f
build: Remove outdated&non-functional setup command ( fixes #5454 ) ( #5455 )
2019-02-02 12:47:46 +01:00
Simon Frei
82afe73a9a
cmd/syncthing, lib/config: Update default config creation ( #5492 )
...
Also remove dead code in config.Wrapper.
2019-02-02 12:43:57 +01:00
Jakob Borg
6452e16f15
golangci: Add config file
2019-02-02 12:34:57 +01:00
Iskander (Alex) Sharipov
ca47b4c218
cmd/syncthing: Correct strings.HasPrefix args order ( #5498 )
2019-02-02 12:18:19 +01:00
Jakob Borg
c2ddc83509
all: Revert the underscore sillyness
2019-02-02 12:16:27 +01:00
Jakob Borg
9fd270d78e
all: A few more interesting linter fixes ( #5502 )
...
A couple of minor bugs and simplifications
2019-02-02 12:09:07 +01:00
Jakob Borg
0b2cabbc31
all: Even more boring linter fixes ( #5501 )
2019-02-02 11:45:17 +01:00
Jakob Borg
df5c1eaf01
all: Bunch of more linter fixes ( #5500 )
2019-02-02 11:02:28 +01:00
Jakob Borg
2111386ee4
all: Fix some linter errors ( #5499 )
...
I'm working through linter complaints, these are some fixes. Broad
categories:
1) Ignore errors where we can ignore errors: add "_ = ..." construct.
you can argue that this is annoying noise, but apart from silencing the
linter it *does* serve the purpose of highlighting that an error is
being ignored. I think this is OK, because the linter highlighted some
error cases I wasn't aware of (starting CPU profiles, for example).
2) Untyped constants where we though we had set the type.
3) A real bug where we ineffectually assigned to a shadowed err.
4) Some dead code removed.
There'll be more of these, because not all packages are fixed, but the
diff was already large enough.
2019-02-02 10:11:42 +01:00
Simon Frei
583172dc8d
lib/db: Fix race in NamespacedKV ( #5496 )
2019-02-01 09:54:21 +01:00
Jakob Borg
1529563332
docker: Build outside GOPATH ( fixes #5495 )
2019-01-31 20:38:33 +01:00
Simon Frei
5605877625
cmd/syncthing: Pass SIGTERM on in monitor ( fixes #5493 ) ( #5494 )
2019-01-31 18:35:20 +01:00
Simon Frei
7236d56731
lib/model: In tests disable watching for changes by default ( fixes #5246 ) ( #5485 )
2019-01-30 16:38:10 +01:00
Jakob Borg
47d68a0aec
gui, man, authors: Update docs, translations, and contributors
2019-01-30 07:45:27 +01:00
Simon Frei
657be162dd
test, lib/rc: Integration test fixes and polish ( #5488 )
2019-01-29 16:59:00 +01:00
Simon Frei
8815ef922b
mod: Update dependencies and tidy ( fixes #5311 ) ( #5486 )
2019-01-28 22:45:56 +01:00
Simon Frei
79d109a386
lib/config: Add omitempty to DeprecatedMinHomeDiskFreePct ( fixes #5482 ) ( #5484 )
2019-01-28 11:46:28 +01:00