Jakob Borg
44e3bec42e
Add osutil.AtomicWriter
...
This captures the common pattern of writing to a temp file and moving it
to it's real name only if everything went well. It reduces the amount of
code in some places where we do this, but maybe not as much as I
expected because the upgrade thing is still a special snowflake...
2015-07-12 14:28:59 +10:00
Jakob Borg
a04b005e93
Revert "Let suture logging bubble upwards"
...
This reverts commit 1b837116e6
.
2015-07-11 11:12:20 +10:00
Jakob Borg
1b837116e6
Let suture logging bubble upwards
2015-07-11 10:52:57 +10:00
Jakob Borg
5bb8ea7449
Remove one of two emits of events.DeviceConnected (ref #2034 )
2015-07-10 16:12:59 +10:00
Audrius Butkevicius
cb1a7a7bdc
Update panic instructions ( fixes #2039 )
2015-07-09 22:43:16 +01:00
Audrius Butkevicius
93ad803073
Make ping timeout configurable ( fixes #1751 )
2015-06-27 12:34:41 +01:00
Jakob Borg
2b0c33f74d
Merge pull request #1996 from AudriusButkevicius/checkrace
...
Potential race between folder being added and scan (fixes #1986 )
2015-06-26 12:56:07 +02:00
Audrius Butkevicius
31cd0b943c
Potential race between folder being added and scan (potentially fixes #1986 )
2015-06-24 21:59:03 +01:00
Jakob Borg
070eced2f6
Merge pull request #1985 from calmh/fix-reset
...
Fix reset DB
2015-06-24 14:07:15 +02:00
Audrius Butkevicius
089fca2319
Use different session cookies per device
2015-06-22 19:51:46 +01:00
Jakob Borg
2b2cae2d50
Fix reset DB
...
The reset of all folders failed when there was no data for a given
folder, as it was not returned by db.ListFolders then. But we don't
really care about that, we can "reset" it anyway...
2015-06-21 09:35:41 +02:00
Jakob Borg
d347e54acb
Don't start model until services have been added ( fixes #1969 )
2015-06-20 20:04:47 +02:00
Jakob Borg
b5198d8119
Merge pull request #1968 from calmh/newtests
...
Refactored integration tests
2015-06-20 19:24:04 +02:00
Jakob Borg
b8b5c5ff34
Merge pull request #1913 from Zillode/fix-reset
...
Fix 'reset' Rest API on windows
2015-06-20 11:43:05 +02:00
Jakob Borg
c3d07d60ca
Refactored integration tests
...
Added internal/rc to remote control a Syncthing process and made the
"awaiting sync" determination reliable.
2015-06-19 08:47:47 +02:00
Lode Hoste
a0897a7456
Corrected API response when resetting folder ( fixes #1976 )
2015-06-19 08:30:19 +02:00
Lode Hoste
b56c76f8ad
Fix 'reset' Rest API on windows
2015-06-18 12:45:08 +02:00
Audrius Butkevicius
198725216f
Merge pull request #1957 from calmh/myid
...
Include myID in the StartupComplete event
2015-06-16 08:46:50 +01:00
Jakob Borg
82c3e6f87f
Include myID in the StartupComplete event
...
Nice to have...
2015-06-16 09:27:06 +02:00
Jakob Borg
1ac40a3043
Fix API event subscription
...
The API never got the first few events ("Starting" etc) as it subscribed
too late. Instead, set up a subscription for it early on. If the API is
configured not to run this is unnecessary but doesn't hurt very much.
2015-06-16 09:17:58 +02:00
Jakob Borg
a6d9150b14
Skip extra newline between assets
2015-06-15 23:13:43 +02:00
Jakob Borg
7c23b32de3
Default GUI override dir
...
If STGUIASSETS is not set, look for assets in $confdir/gui by default.
Simplifies deploying overrides and stuff.
2015-06-14 22:28:40 +02:00
Jakob Borg
a778763851
Add trash can file versioning ( fixes #1931 )
2015-06-12 13:30:49 +02:00
Jakob Borg
76ad925842
Refactor config commit stuff to support restartless updates better
...
Includes restartless updates of the GUI settings (listening port etc) as
a proof of concept.
2015-06-09 15:41:22 +02:00
Jakob Borg
ef6f52f688
Correctly handle nil error in verbose logging ( fixes #1921 )
2015-06-09 09:04:03 +02:00
Jakob Borg
145f8c7435
Start folders before GUI/API ( fixes #1918 )
2015-06-08 11:04:09 +02:00
Jakob Borg
c1761cab49
Trigger ItemFinished when temp file creation fails instead of failing silently
2015-06-03 16:28:31 +02:00
Jakob Borg
e952da7f91
Ensure we always have an up to date list of language names
2015-06-02 08:47:26 +02:00
Jakob Borg
5bd1e4a167
Re-add mistakenly removed languages
2015-06-02 08:33:36 +02:00
Jakob Borg
c23a601cc6
Random number is too large for 32 bit archs ( fixes #1894 )
2015-06-01 09:33:13 +02:00
Jakob Borg
8ed67fe349
Reduce db write cache to (2*) 4 MiB
...
I haven't been able to reproduce any performance advantage of having it
set higher and it reduces the memory footprint a bit.
2015-05-23 21:05:52 +02:00
Lode Hoste
f12b8c19be
Support the creation of top-level folders on Windows ( fixes #1822 )
2015-05-21 19:21:19 +02:00
Jakob Borg
a3ba3f895c
Further reduce maximum db block cache
2015-05-14 20:59:59 +02:00
Jakob Borg
c6b2ca8b19
Break out usage reporting into a service
2015-05-13 14:39:27 +02:00
Audrius Butkevicius
83ea8dc577
Merge pull request #1801 from calmh/fix-1799
...
Only restart global discovery on UPnP change if it was enabled to start with (fixes #1799 )
2015-05-12 18:49:24 +03:00
Jakob Borg
d898277f62
stindex: add some missing newlines
2015-05-12 11:47:30 +02:00
Jakob Borg
a289cfb986
Only restart global discovery on UPnP change if it was enabled to start with ( fixes #1799 )
2015-05-12 09:48:55 +02:00
Jakob Borg
c2f2d8771f
Tweak the database block cache size, and add config for it
2015-05-11 09:08:25 +02:00
Zillode
1a11ce6211
Merge pull request #1784 from calmh/fix-1782
...
Implement upnpSvc.Stop() (fixes #1782 )
2015-05-10 14:47:02 +02:00
Jakob Borg
e4c41718d8
Fix upnp mapping name
2015-05-09 20:04:15 +02:00
Jakob Borg
7234553990
Implement upnpSvc.Stop() ( fixes #1782 )
2015-05-09 12:49:58 +02:00
Jakob Borg
31797a5831
Simplify stindex
2015-05-07 09:59:04 +02:00
Jakob Borg
ff4706e450
Merge branch 'pr-1748'
...
* pr-1748:
Reschedule before scan
Use a channel instead of locks
Reschedule the next scan interval (fixes #1591 )
2015-05-04 10:40:14 +02:00
Jakob Borg
67ae7a0b6c
Wait for stdout/stderr to close ( fixes #1754 )
2015-05-03 17:36:01 +02:00
Jakob Borg
bd5a64bac0
Reschedule before scan
2015-05-03 14:18:50 +02:00
Lode Hoste
fe34b08ece
Reschedule the next scan interval ( fixes #1591 )
2015-05-03 12:48:44 +02:00
Lode Hoste
d54c366150
Upgrade running Syncthing instances ( fixes #1692 )
2015-05-01 23:38:54 +02:00
Audrius Butkevicius
aee40316f8
Merge pull request #1732 from calmh/guisvc
...
Break out GUI into an API service
2015-04-30 22:15:47 +01:00
Audrius Butkevicius
d754f9ae89
Merge pull request #1742 from calmh/adaptive-cache
...
Adaptive database cache size
2015-04-30 21:56:40 +01:00
Jakob Borg
fb312a71f7
Add verbose logging ( fixes #179 )
2015-04-30 20:47:21 +02:00
Jakob Borg
136d79eaa3
Break out GUI into an API service
2015-04-30 20:36:07 +02:00
Jakob Borg
834336499a
Adaptive database cache size
2015-04-30 20:25:44 +02:00
dartraiden
32a76901a9
typos and spelling correction
2015-04-29 15:59:47 +02:00
Audrius Butkevicius
f2b12014e1
Merge pull request #1729 from calmh/lint-clean
...
Run vet and lint. Make us lint clean.
2015-04-29 10:16:36 +01:00
Jakob Borg
60fcaebfdb
Run vet and lint. Make us lint clean.
2015-04-29 10:38:02 +02:00
Jakob Borg
0642402449
Break out UPnP port mapping into a service
2015-04-28 10:25:25 +02:00
Jakob Borg
f5211b0697
Add some more cache forbidding headers, for various user agents.
2015-04-27 09:08:55 +02:00
Audrius Butkevicius
d12db3e7b8
Add osutil.Glob to deal with Windows ( fixes #1690 )
2015-04-26 16:37:50 +01:00
Audrius Butkevicius
9afbca3001
Add pagination to Out of sync item list ( fixes #1509 )
2015-04-26 00:22:26 +01:00
Audrius Butkevicius
ecc8591c95
Merge pull request #1699 from calmh/connsvc
...
Break out connection handling into a service
2015-04-25 15:37:08 +01:00
Jakob Borg
266a5116a1
Break out connection handling into a service
2015-04-25 23:21:42 +09:00
Jakob Borg
131f2be857
Add audit log feature
2015-04-25 23:20:39 +09:00
Jakob Borg
bb31b1785b
Add a service manager to main (future use)
2015-04-25 23:16:46 +09:00
Jakob Borg
33a4fb5a1a
Fix folder check tests
2015-04-25 23:16:46 +09:00
Jakob Borg
36c1d82146
Minor fixup
2015-04-24 09:43:40 +09:00
Jakob Borg
43d39844f7
Merge pull request #1685 from AudriusButkevicius/mut
...
Add mutex logging
2015-04-23 21:16:23 +09:00
Audrius Butkevicius
433b923ea7
Add mutex logging
2015-04-23 10:54:14 +01:00
Jakob Borg
542716e216
Allow major upgrades
2015-04-23 17:13:11 +09:00
Jakob Borg
bf7d84c12a
Clean up REST JSON a little further
2015-04-21 23:28:58 +09:00
Jakob Borg
08c383012f
Loosen the requirements on what can be upgraded to what
2015-04-21 09:06:10 +09:00
Audrius Butkevicius
d530c5eda7
Merge pull request #1665 from calmh/wat
...
Don't initialize subscription in init()
2015-04-20 08:12:58 +01:00
Jakob Borg
c905a41e2a
Reminder in debug output to explain high CPU usage
2015-04-20 14:29:38 +09:00
Jakob Borg
4fb74a32cc
Don't initialize subscription in init()
...
By doing it init(), the monitor process also gets a subscription thing
running, which is unnecessary (and really confused me when seeing it in
the debug output).
2015-04-20 12:58:58 +09:00
Audrius Butkevicius
96289f42b7
Merge pull request #1644 from syncthing/timeout
...
UPnP refactor/fixes
2015-04-16 14:32:16 +01:00
Audrius Butkevicius
2a31031cbc
Add unit suffix to UPnP settings
2015-04-16 10:32:22 +01:00
Audrius Butkevicius
d148cd8ccc
Make UPnP timeout configurable
2015-04-16 10:32:12 +01:00
Jakob Borg
069e8cf122
Don't schedule summaries on all state changes
...
Prior to this change we schedule summaries on each state change, i.e.
scanning->idle and idle->scanning, which is unnecessary. Now we only do
it on index updates, plus the immediate one on going syncing->idle.
2015-04-14 20:57:42 +09:00
Jakob Borg
102a2db1f3
Work around broken Lstat on Android
2015-04-14 19:53:49 +09:00
Jakob Borg
aa803ce2ff
Move folder errors to state
...
The "Invalid" config attribute is retained for errors discovered during
config loading (empty path, duplicate ID). This can only be set or
cleared at config loading time.
Errors discovered during runtime (I/O problems, etc) are now in the
folder state instead. Changes to these are sent as any other folder
state change.
2015-04-13 07:43:45 +09:00
Lode Hoste
75348c0158
Fix compilation of -noupgrade builds
2015-04-09 22:44:46 +02:00
Jakob Borg
cfc9776bae
Check for short ID conflict at startup
2015-04-09 13:06:00 +02:00
Audrius Butkevicius
df6dbc5fa4
Only run deadlock detection if asked or non-release/beta ( fixes #1536 )
2015-04-08 13:40:05 +01:00
Jakob Borg
b2a79855ae
Handle long filenames on Windows ( fixes #1295 )
2015-04-08 14:05:39 +02:00
Jakob Borg
d7100fd9bc
Add HTTP request tracing
2015-04-07 21:52:47 +02:00
Jakob Borg
e884d0fda6
Tidy up the REST interface URLs ( fixes #1593 )
2015-04-07 12:16:23 +02:00
Jakob Borg
7b99a5fbac
Clean up config directory of old crap
2015-04-07 09:25:28 +02:00
Jakob Borg
207b43499c
Merge remote-tracking branch 'syncthing/pr/1577'
...
* syncthing/pr/1577:
Add uptime in webgui (fixes #1501 )
Conflicts:
cmd/syncthing/gui.go
internal/auto/gui.files.go
2015-04-06 20:53:32 +02:00
Sergey Mishin
77882e6086
Enable gzip encoding static files for webgui
2015-04-06 03:11:30 +03:00
ralder
b5d7ce8ebe
Add uptime in webgui ( fixes #1501 )
2015-04-05 22:37:55 +03:00
Audrius Butkevicius
6fb1e03ed4
Merge pull request #1576 from Zillode/reset-indexes
...
Update reset API to reflect new use cases.
2015-04-04 22:31:59 +01:00
Lode Hoste
ab287ebf40
Update reset API to reflect new use cases.
...
/rest/reset clears the entire Syncthing DB and restart the program
/rest/reset&folder=default clears the indexes of the default folder
2015-04-04 22:45:11 +02:00
Jakob Borg
b08ee3ff81
golint: locHttps -> locHTTPS
2015-04-04 21:59:54 +02:00
Lode Hoste
19dfa88258
Expand locations during initialisation ( fixes #1575 ).
2015-04-03 21:57:19 +02:00
Jakob Borg
65923b5c20
The summary event service should send summary events
2015-04-02 10:07:54 +02:00
Audrius Butkevicius
2aa3182476
Merge pull request #1539 from calmh/locations
...
Move index to index-v0.11.0.db (new format) and centralize location config
2015-04-01 13:18:49 +01:00
Jakob Borg
e4dba99cc0
Immediately recalculate summary when folder state changes syncing->idle
2015-04-01 11:58:27 +02:00
Jakob Borg
454e688c3d
Push model data instead of pull ( fixes #1434 )
2015-04-01 11:46:30 +02:00
Jakob Borg
54752deaa1
Move index to index-v0.11.0.db (new format) and centralize location config
2015-04-01 11:30:28 +02:00
Jakob Borg
6459d11d32
Merge pull request #1378 from Zillode/draft-upgrade
...
Do not consider draft releases or releases with emtpy assets
2015-04-01 11:03:13 +02:00
Lode Hoste
d6030b8d68
Only consider relevant releases ( fixes #1285 ).
2015-03-31 10:22:28 +02:00
Lode Hoste
747c6c2714
Fix -reset folder target
2015-03-30 17:07:31 +02:00
Audrius Butkevicius
7406176fad
More graceful handling on folder errors ( fixes #762 )
...
Checks health before accepting every scanner batch, also
recovers from errors without having to restart.
2015-03-30 08:27:12 +02:00
Jakob Borg
4beef5cc66
Remove default GC tweak
...
This reverts the GC behavior to the Go default of triggering GC when the
heap has grown 100% compared to after the previous GC. We were setting
this to 25% to keep memory usage at a minimum, but it has a pretty
severe performance cost (especially when syncing large files) as we keep
triggering GC too often.
This documents the tweak in the `-help` message so users can decide for
themselves, and sticks to whatever the Go runtime developers thinks is
best for the default.
2015-03-29 19:08:22 +02:00
Jakob Borg
ba575f55ec
Merge pull request #1530 from Zillode/multi-scan
...
Support multiple scan query strings at the same time
2015-03-29 16:02:45 +02:00
Lode Hoste
2012ce02e8
Support multiple scan query strings at the same time
2015-03-28 22:40:13 +01:00
Jakob Borg
c67e2c2a5a
Merge pull request #1528 from Zillode/change-gui-port
...
Change (default) GUI port from 8080 to 8384 ('ST' in ascii values)
2015-03-27 14:08:03 +01:00
Audrius Butkevicius
489e2e6ad5
Update Model function signatures
2015-03-26 22:04:33 +00:00
Lode Hoste
960c0cbddf
Change (default) GUI port from 8080 to 8384 ('ST' in ascii values)
2015-03-26 21:36:06 +01:00
Jakob Borg
6da7f17c4a
Implement version vectors
2015-03-25 23:10:34 +01:00
Jakob Borg
b4f45d1e79
Update tests for version vectors
2015-03-25 23:10:33 +01:00
Jakob Borg
a7492f8612
Send correct MIME type for SVG images ( fixes #1506 )
2015-03-22 12:57:16 +01:00
Audrius Butkevicius
60faabcbe2
Print LANs on startup
2015-03-19 11:07:20 +00:00
Jakob Borg
e1975644d6
Add /rest/filestatus
2015-03-17 17:51:50 +00:00
Jakob Borg
32425c5561
MPLv2
2015-03-17 16:02:27 +01:00
Pascal Jungblut
49bc74e7a0
Use lowerCamelCase for the JSON API ( fixes #1338 )
...
Replace the current mix of UpperCamelCase und lowerCamelCase with
consistent lowerCamelCase keys for the JSON API. Also adapt the frontend
so it works with the changed API.
Attention: this will break existing consumers of the API.
2015-03-16 10:05:01 +01:00
Jakob Borg
51c932164f
bep/1.0 negotiation can't be a hard error.
2015-03-15 17:49:47 +01:00
Jakob Borg
51cfc3d4be
Fall back to %AppData% is %LocalAppData% is blank ( fixes #1446 )
2015-03-11 21:04:10 +01:00
Audrius Butkevicius
6fa97eeec7
Allow not to limit bandwidth in LAN ( fixes #1336 )
2015-03-09 20:54:33 +00:00
Jakob Borg
aaaa6556f3
Some commentary on the initial connection checks
2015-03-05 16:09:20 +01:00
Jakob Borg
4745431cda
Verify negotiated protocol bep/1.0
2015-03-05 15:58:16 +01:00
Audrius Butkevicius
9d1e2d9f46
Add /rest/tree API call
2015-03-04 23:39:27 +00:00
Jakob Borg
0bbbf3eb3b
Compile on Dragonfly
2015-02-26 08:42:39 +01:00
Jakob Borg
4b1b56fee8
Reduce CPU usage ( fixes #1376 )
2015-02-25 23:30:24 +01:00
Jakob Borg
f9577a38dc
Attempt recovery of corrupted DB at startup ( fixes #987 )
2015-02-23 08:22:39 +01:00
Jakob Borg
3b3aa94c4e
Refactor out connection related functions to a separate file
2015-02-19 12:05:26 +02:00
Jakob Borg
88c44b303d
Simplify FileInfoTruncated
2015-02-15 12:50:03 +01:00
Karol Różycki
64a5bc038a
Typo fix. Fixes #1358
2015-02-14 16:10:43 +01:00
Karol Różycki
ec160f1f0a
Button to rescan all folders, fixes #1151
2015-02-12 21:03:35 +01:00
Jakob Borg
203c7360e7
Merge remote-tracking branch 'syncthing/pr/1332'
...
* syncthing/pr/1332:
Implement memorySize() for NetBSD
2015-02-12 12:13:35 +01:00
Jakob Borg
c87a6c5969
Use single filename for heap profiles
2015-02-10 19:50:27 +01:00
Jakob Borg
c482c13dcb
Configurable heap profiling rate
2015-02-10 19:45:32 +01:00
Jakob Borg
2a8e5e2c14
Merge pull request #1304 from AudriusButkevicius/pprof
...
Add STBLOCKPROFILE
2015-02-09 15:18:42 +01:00
Tobias Nygren
078790bd0f
Implement memorySize() for NetBSD
2015-02-05 20:31:25 +01:00
Audrius Butkevicius
9d078bac54
Add STBLOCKPROFILE
2015-02-01 19:00:24 +00:00
Audrius Butkevicius
ba8cadc2f1
Opening a browser happens in it's own routine ( fixes #1273 )
2015-02-01 18:59:28 +00:00
Audrius Butkevicius
8358fedaf4
Fix failing integration tests
2015-02-01 18:57:46 +00:00
Karol Różycki
952e51ac75
Show information in folder panel if ignore patterns are active, fixes #1279
2015-01-27 15:27:44 +01:00
Jakob Borg
2c8b627008
Integer type policy
...
Integers are for numbers, enabling arithmetic like subtractions and for
loops without getting shot in the foot. Unsigneds are for bitfields.
- "int" for numbers that will always be laughably smaller than four
billion, and where we don't care about the serialization format.
- "int32" for numbers that will always be laughably smaller than four
billion, and will be serialized to four bytes.
- "int64" for numbers that may approach four billion or will be
serialized to eight bytes.
- "uint32" and "uint64" for bitfields, depending on required number of
bits and serialization format. Likewise "uint8" and "uint16", although
rare in this project since they don't exist in XDR.
- "int8", "int16" and plain "uint" are almost never useful.
2015-01-19 10:34:36 -08:00
Jakob Borg
b4043216b6
Use bytes.Reader instead of bytes.Buffer for compiled in assets
2015-01-13 16:05:03 +01:00
Jakob Borg
eef1aebe8c
Refactor out protocol and luhn (protocol dependency) packages
2015-01-13 13:22:56 +01:00
Jakob Borg
e6c9baf6ef
Rename db.Set to db.FileSet
2015-01-12 20:57:39 +01:00
Jakob Borg
8d6db7be31
Rename package internal/files to internal/db
2015-01-12 20:57:22 +01:00
Jakob Borg
571cf7d490
Merge pull request #1182 from AudriusButkevicius/autoauto
...
Connecting to a newer node triggers autoupgrade check (fixes #1177 )
2015-01-11 09:16:12 +01:00
Audrius Butkevicius
5034a41c08
Connecting to a newer node triggers autoupgrade check ( fixes #1177 )
2015-01-10 17:05:19 +00:00
Audrius Butkevicius
a2070d9ce4
Expose and use path separator ( fixes #1163 )
2015-01-10 14:51:29 +00:00
Jakob Borg
4c4143d9be
Move FileInfoTruncated to files package
...
This is where it's used, and it clarifies that it's never used over the
wire.
2015-01-09 08:28:24 +01:00
Jakob Borg
8bc7d259f4
Move FileIntf to files package, expose Iterator type
...
This is where FileIntf is used, so it should be defined here (it's not
a protocol thing, really).
2015-01-09 08:18:42 +01:00
Audrius Butkevicius
12eabb220d
Add device finder utility
2015-01-06 23:12:12 +00:00
Jakob Borg
a7a317c284
The predictableRandom test can only run once successfully ( fixes #1184 )
2015-01-06 23:03:35 +01:00
kozec
b933e9666a
/rest/upgrade returns HTTP/500 if STNOUPGRADE is defined
2015-01-06 22:50:56 +01:00