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
Jakob Borg
2d047fa428
Remove unused types
2015-01-09 08:14:02 +01:00
Jakob Borg
bc9fc1aece
Actually close connection based on unknown protocol version
2015-01-08 22:11:26 +01:00
Jakob Borg
b88e3c99c1
Add fields for future extensibility
...
This adds a number of fields to the end of existing messages. This is a
backwards compatible change.
2015-01-08 22:11:26 +01:00
Jakob Borg
ce3e6e084c
Ensure backwards compatibility before modifying protocol
...
This change makes sure that things work smoothly when "we" are a newer
version than our peer and have more fields in our messages than they do.
Missing fields will be left at zero/nil.
(The other side will ignore our extra fields, for the same effect.)
2015-01-08 14:25:11 +01:00
Caleb Callaway
af96f7a0cd
Properly handle absolute URLs when parsing UPnP service control URLs
...
Fixes #1187
2015-01-07 21:23:20 -08:00
Jakob Borg
4ad4417740
Add timabell
2015-01-07 08:36:54 +01:00
Jakob Borg
d68ce2d68c
Translation update
2015-01-06 23:12:40 +01:00
Audrius Butkevicius
9d6ef24660
Merge pull request #1194 from syncthing/fix-1186
...
Use comma-ok idiom to signal files missing in database (fixes #1186 )
2015-01-06 21:54:13 +00:00
Jakob Borg
7aff59bcce
Add brendanlong
2015-01-06 22:48:01 +01:00
Brendan Long
7a9fc6dbd3
Don't use Go 1.4 range syntax in queue_test.go, since the listed requirement is Go 1.3.
2015-01-06 15:45:58 -06:00
Jakob Borg
75d0dc251e
Use comma-ok idiom to signal files missing in database ( fixes #1186 )
...
Prevents us from doing stupid things to the folder root (empty file
path) when nodes disconnect...
2015-01-06 22:40:20 +01:00
Jakob Borg
9a50c4d93f
Don't unnecessarily chmod directories when renaming
2015-01-06 22:10:44 +01:00
Jakob Borg
cf1594829a
Handle HTTP errors on non-event requests ( fixes #1120 , fixes #807 )
2015-01-05 16:03:00 +01:00
Jakob Borg
2f43c74ece
Add peterhoeg
2015-01-05 15:14:22 +01:00
Jakob Borg
d3f6cb860f
Translation update
2015-01-04 20:18:14 +01:00
Audrius Butkevicius
83d25f09a3
Fix broken upgrades ( fixes #1175 )
2015-01-04 18:19:00 +00:00
Audrius Butkevicius
ed747a2d3d
Add identicons to device prompts
2015-01-03 23:34:15 +00:00
Audrius Butkevicius
5ac01a3af4
Hash blocks after receipt, try multiple peers ( fixes #1166 )
2015-01-03 23:21:57 +00:00
Audrius Butkevicius
56ccb5b2ab
New device, folder prompts ( fixes #120 , fixes #330 )
2015-01-03 23:06:41 +00:00
Audrius Butkevicius
9c6cb0f630
Merge pull request #1172 from syncthing/random-scanintv
...
Add a random perturbation to the scan interval (fixes #1150 )
2015-01-02 15:25:22 +00:00
Jakob Borg
54c3caad53
Add a random perturbation to the scan interval ( fixes #1150 )
2015-01-02 16:16:16 +01:00
Jakob Borg
9b5e8aaf83
Repair buggy BringToFront
2015-01-02 15:54:04 +01:00
Jakob Borg
5143c09bcf
Refactor / cleanup
2015-01-02 15:54:04 +01:00
Jakob Borg
2496185629
Only buffer file names, not full &FileInfo
2015-01-02 15:33:39 +01:00
Jakob Borg
34deb82aea
Use slice instead of list, no map
...
benchmark old ns/op new ns/op delta
BenchmarkJobQueueBump 345 154498 +44682.03%
BenchmarkJobQueuePushPopDone10k 9437373 3258204 -65.48%
benchmark old allocs new allocs delta
BenchmarkJobQueueBump 0 0 +0.00%
BenchmarkJobQueuePushPopDone10k 10565 22 -99.79%
benchmark old bytes new bytes delta
BenchmarkJobQueueBump 0 0 +0.00%
BenchmarkJobQueuePushPopDone10k 1452498 385869 -73.43%
2015-01-02 15:33:39 +01:00
Jakob Borg
8f72ae9da2
Add some benchmarks
2015-01-02 15:33:39 +01:00
Audrius Butkevicius
b753f01ac1
Add tests
2015-01-02 15:33:39 +01:00
Audrius Butkevicius
fd0a147ae6
Add job queue ( fixes #629 )
...
Request to terminate currently ongoing downloads and jump to the bumped file
incoming in 3, 2, 1.
Also, has a slightly strange effect where we pop a job off the queue, but
the copyChannel is still busy and blocks, though it gets moved to the
progress slice in the jobqueue, and looks like it's in progress which it isn't
as it's waiting to be picked up from the copyChan.
As a result, the progress emitter doesn't register on the task, and hence the file
doesn't have a progress bar, but cannot be replaced by a bump.
I guess I can fix progress bar issue by moving the progressEmiter.Register just
before passing the file to the copyChan, but then we are back to the initial
problem of a file with a progress bar, but no progress happening as it's stuck
on write to copyChan
I checked if there is a way to check for channel writeability (before popping)
but got struck by lightning just for bringing the idea up in #go-nuts.
My ideal scenario would be to check if copyChan is writeable, pop job from the
queue and shove it down handleFile. This way jobs would stay in the queue while
they cannot be handled, meaning that the `Bump` could bring your file up higher.
2015-01-02 15:33:39 +01:00
Jakob Borg
ce4b897d0e
Handle read only temp files after crash/restart
2014-12-31 13:06:28 +01:00
Jakob Borg
26a3613397
Merge pull request #1162 from AudriusButkevicius/silence
...
Silence versioner warnings for unmatched files (fixes #1117 )
2014-12-31 12:54:23 +01:00
Jakob Borg
e6318bddf3
Merge pull request #1161 from AudriusButkevicius/upnp2
...
Use ListenMulticastUDP for multicast sockets (potentially fixes #1113 )
2014-12-31 12:53:56 +01:00
Audrius Butkevicius
514bb0beda
Silence versioner warnings for unmatched files ( fixes #1117 )
2014-12-30 22:43:07 +00:00
Audrius Butkevicius
41b1bd2f05
Use ListenMulticastUDP for multicast sockets (potentially fixes #1113 )
2014-12-30 22:27:47 +00:00
Jakob Borg
0c1ac568b5
Fix tests with newer goleveldb
2014-12-29 14:50:24 +01:00
Audrius Butkevicius
0f9550c747
Merge pull request #1149 from syncthing/fix-1058
...
Also check file size when determining if file is unchanged (fixes #1058 )
2014-12-29 13:29:00 +00:00
Audrius Butkevicius
b13ae17a47
Merge pull request #1147 from syncthing/fix-1118
...
Generate a random API key on initial setup (fixes #1118 )
2014-12-29 13:28:38 +00:00
Jakob Borg
f762a12d18
Also check file size when determining if file is unchanged ( fixes #1058 )
2014-12-29 14:24:12 +01:00
Jakob Borg
20d30a80be
Generate a random API key on initial setup ( fixes #1118 )
...
Also makes the javascript implementation use the same algorithm for
generating random strings.
2014-12-29 13:48:26 +01:00
Jakob Borg
4b668aaca8
Make auto upgrade careful about breaking changes ( fixes #1047 )
2014-12-29 12:35:06 +01:00
Jakob Borg
d90b2c1d52
Translation update
2014-12-29 09:42:17 +01:00
Jakob Borg
22f39be197
Exit before attempting to use nil variables on scanning nonexistent folder
2014-12-23 14:14:05 +01:00
Jakob Borg
cadbb6bbce
Move ignore handling from index recv to puller ( fixes #1133 )
...
With this change we accept updates for ignored files from other devices,
and check the ignore patterns at pull time. When we detect that the
ignore patterns have changed we do a full check of files that we might
now need to pull.
2014-12-23 10:46:02 +01:00
Jakob Borg
2c89f04be7
Refactor ignore handling (...)
...
This uses persistent Matcher objects that can reload their content and
provide a hash string that can be used to check if it's changed. The
cache is local to each Matcher object instead of kept globally.
2014-12-23 10:46:02 +01:00
Jakob Borg
cde8ef56e5
Implement manual -upgrade-to option
2014-12-22 12:18:10 +01:00
Jakob Borg
110816c7aa
Consolidate Windows/Unix upgrading and check MD5 ( fixes #1138 )
2014-12-22 12:13:31 +01:00
Jakob Borg
23085eb5ae
Must verify success of from-network copy during upgrade (ref #1138 )
2014-12-22 10:42:47 +01:00
Jakob Borg
7ac84c0660
Don't ignore ignored items forever ( fixes #816 )
2014-12-21 13:55:50 +01:00
Jakob Borg
e91f9a944e
Revert "Update bootstrap" ( fixes #1121 )
...
This reverts commit 51cdd38c3e
.
Conflicts:
internal/auto/gui.files.go
2014-12-18 22:32:03 +01:00
Jakob Borg
e7ddc7cf0f
... also in index.html
2014-12-18 22:02:45 +01:00
Jakob Borg
40dfa48756
Rebuild assets
2014-12-18 22:01:38 +01:00
Jakob Borg
618a8682b7
golint style tweaks
2014-12-16 23:33:56 +01:00
Jakob Borg
963077f918
Translation update
2014-12-16 23:20:59 +01:00
Jakob Borg
892920039d
Fix checkbox breakage in Settings dialog
2014-12-15 09:12:59 +01:00
Jakob Borg
51cdd38c3e
Update bootstrap
2014-12-15 08:54:29 +01:00
Jakob Borg
d452b7593f
Merge branch 'pr-1094'
...
* pr-1094:
GUI tweaks for last file synced
Display last received file and time (fixes #292 , fixes #801 )
2014-12-12 14:25:12 +01:00
Jakob Borg
5346bdc683
GUI tweaks for last file synced
2014-12-12 14:24:36 +01:00
Audrius Butkevicius
7a1aaaf5c4
Remove temporaries during scan ( fixes #1092 )
2014-12-09 23:58:58 +00:00
Audrius Butkevicius
bde92d5cfe
Display last received file and time ( fixes #292 , fixes #801 )
2014-12-09 20:24:48 +00:00
Jakob Borg
25e363c5fb
Style tweaks and some *IDG->IGD in UPnP code
2014-12-08 17:07:55 +01:00
Jakob Borg
febeed3277
config.ConfigWrapper -> config.Wrapper
2014-12-08 16:39:11 +01:00
Jakob Borg
9d07aa006d
Various style fixes
2014-12-08 16:36:15 +01:00
Jakob Borg
12d69e25dd
Fixes for go vet
2014-12-08 16:19:08 +01:00
Jakob Borg
c9492e54f7
Copyright notice
2014-12-08 15:42:53 +01:00
Jakob Borg
6e83d11d5f
Translation update
2014-12-08 13:25:27 +01:00
Audrius Butkevicius
a9339d0627
Revert "Cache file descriptors" ( fixes #1096 )
...
This reverts commit 992ad97ad5
.
Causes issues on Windows which uses file locking.
Meaning we cannot archive or modify the file while it's open.
2014-12-08 11:56:14 +00:00
Audrius Butkevicius
b00264b594
Copy compression setting while introducing
2014-12-07 22:43:30 +00:00
Jakob Borg
f9fcb44f3c
Translation update
2014-12-07 08:30:54 +01:00
Jakob Borg
996cbbca38
Merge remote-tracking branch 'origin/pr/1091'
...
* origin/pr/1091:
Escape plus sign (fixes #1090 )
2014-12-07 08:05:21 +01:00
Jakob Borg
581f4b89bd
Merge remote-tracking branch 'origin/pr/977'
...
* origin/pr/977:
Cache file descriptors
2014-12-07 08:03:34 +01:00
Audrius Butkevicius
88a347dce0
Escape plus sign ( fixes #1090 )
2014-12-07 00:10:32 +00:00
Jakob Borg
94ab06e92f
Handle symlinks, Staggered versioner ( fixes #1071 )
2014-12-06 15:20:35 +01:00
Jakob Borg
d38c81fcff
Handle broken symlinks, Simple versioner ( fixes #1071 )
2014-12-06 15:20:35 +01:00
Jakob Borg
e1be73232d
Merge remote-tracking branch 'origin/pr/1086'
...
* origin/pr/1086:
Enable URL lang parameter for switching languages (fixes #1080 )
2014-12-06 14:41:41 +01:00
Jakob Borg
06fd2268d9
Use Go 1.4 'generate' to create XDR codec
2014-12-06 14:23:10 +01:00
Dennis Wilson
f62812a8dc
Enable URL lang parameter for switching languages ( fixes #1080 )
2014-12-06 14:11:42 +01:00
Jakob Borg
c7e779107c
Staggered versioning should use current time for filename tag ( fixes #994 )
2014-12-06 13:26:46 +01:00
Jakob Borg
7cd25c919f
Asset rebuild
2014-12-06 12:36:35 +01:00
Jakob Borg
1a7921b46c
Merge remote-tracking branch 'origin/pr/1083'
...
* origin/pr/1083:
Select repos to share with in node editor dialog (fixes #719 )
2014-12-06 12:30:46 +01:00
Jakob Borg
43d569741b
Merge remote-tracking branch 'origin/pr/1081'
...
* origin/pr/1081:
Revisit -no-console option for Windows
2014-12-06 12:17:46 +01:00
Audrius Butkevicius
05eab51a0d
Select repos to share with in node editor dialog ( fixes #719 )
2014-12-05 00:22:16 +00:00
Audrius Butkevicius
604a4e7dbc
Scrap IsSymlink for native support on Go 1.4
...
Obviously needs Go 1.4 to go back in.
I am still open to doing fix-up's on rescan interval on Windows, which
would still allow getting rid of all the Windows code.
Frankly, we could just defer creations of links (like we defer deletions of files)
in hopes that the target gets created, and if it doesn't, well tough luck, you'll
get a file symlink.
To be honest, nobody would even notice this 'issue' as I am sure nobody on
Windows uses symlinks.
But at the same time, this ugly code is hidden away in some creppy file in
it's own module far far away, and the interface that it exports is fine'ish,
so I wouldn't mind keeping it as it is.
2014-12-04 23:02:57 +00:00
Audrius Butkevicius
80dca96ee8
Revisit -no-console option for Windows
...
The reason for ShowWindow opose to your FreeConsole is because if you start up
cmd.exe and do syncthing.exe -no-output it actually hides the existing cmd.exe
window oppose to opening a separate window and then hiding it, which keeps the
existing console hanging on syncthing.exe running.
I tried playing around with compiling as GUI, then given the option is not present
allocating a console, and redirecting the std streams to the new console, but that
seems ugly as I'd have to make quite a few calls. But that does get of the initial
flash.
2014-12-04 21:59:40 +00:00
Jakob Borg
7f97037190
Revert "Merge pull request #1078 from syncthing/go1.4"
...
This reverts commit b658afd857
, reversing
changes made to 591c5dabf4
.
2014-12-04 22:24:49 +01:00
Audrius Butkevicius
992ad97ad5
Cache file descriptors
2014-12-04 16:18:47 +00:00
Jakob Borg
5af6cbae2c
Verify Windows support, report appropriate errors when unsupported
2014-12-04 12:10:25 +01:00
Jakob Borg
2abe792f36
Use same order of parameters as os.Symlink
2014-12-04 11:53:55 +01:00
Jakob Borg
1ff9bb8fdc
Remove Windows specific implementation
2014-12-04 06:59:30 +01:00
Jakob Borg
98344d2e5e
Rewrite ignores to fix data race, use fewer maps
2014-12-03 08:39:59 +01:00
Jakob Borg
99dc1eec50
Map is a reference type, does not need * here
2014-12-03 08:39:59 +01:00
Jakob Borg
2a886576a6
Fix announce timers on Solaris (and others, given the right timing) (...)
...
In the successfull case, we start the timer with NewTimer(0), then do a
bunch of stuff during which time it can fire, then reset it with
Reset(0). The result is that two timer firings are queued when we enter
the select loop, so we do two announcements back to back and fail the
tests.
2014-12-03 08:36:45 +01:00
Audrius Butkevicius
3cbe92d797
Use unique versions in staggered versioner ( fixes #1063 )
2014-12-02 19:04:12 +00:00
Audrius Butkevicius
bc8907e90d
Check if announcement data is available
2014-12-01 19:53:13 +00:00
Jakob Borg
a8ba7786ae
Reinstate 'Shared With' until a better alternative emerges (ref #1054 )
2014-12-01 20:50:27 +01:00
Audrius Butkevicius
d30d0b29a9
Fix CSS
2014-12-01 10:30:38 +00:00
Audrius Butkevicius
2912defb97
Add tests for new discovery
2014-12-01 10:30:25 +00:00
Audrius Butkevicius
69f8ac6b56
Change to URL based announce server addresses ( fixes #943 )
2014-12-01 10:30:25 +00:00
Jakob Borg
e7441ff6e8
DisableSymlinks -> !SymlinksEnabled
2014-12-01 11:27:07 +01:00
Jakob Borg
8a34158fa4
Merge pull request #1053 from AudriusButkevicius/symdis
...
Add option to disable symlinks (fixes #1017 )
2014-12-01 11:22:04 +01:00
Jakob Borg
8d2a6d96f2
Shorter Global Discovery label
2014-12-01 11:14:11 +01:00