Either Angular or the browser sometimes returns cached repsonse header,
causing a flap between requests that return the new version and requests
that return the old one. Here, instead, we trust the actual data
returned by the uncached /rest/system/version call.
1. Change listen addresses to URIs
2. Break out connectionSvc to support listeners and dialers based on schema
3. Add relay announcement and lookups part of discovery service
I figured we're missing out on being cool and awesome by not having an
alphabetically based release code name like the big guys. This commit
fixes that. I've unilaterally decided on a theme of "$metal $bug"
because metals are kind of cool, and bugs, well, ...
The number of copiers and pullers is set to default at config loading
time, but the new folder configuration doesn't pass through config
loading so we start up with 0 copiers and 0 pullers and hence get stuck.
I moved the default handling to the puller itself instead. I think this
way is also cleaner as we get to keep the 0 in the config and the puller
gets to decide the defaults on it's own.
- remove Glyphicon assets and customize bootstrap CSS
- add Font Awesome v4.4.0 assets
- replace Glyphicons with Font Awesome icons in HTML
- add icons to modal headers
- add attribution for Font Awesome
- format HTML source code for buttons
* v0.11:
Translations and docs update
Enable browser caching of static resources
Handle multiple case insensitivity prefixes in ignores (fixes#2134)
Make rescan available for unshared folders
Add timeout for peek (fixes#1035)
Fix TestReset when Syncthing shuts down too fast
Clarify password in integration tests
Properly rename config files during integration tests (fixes#1769)
Setting "Sync Protocol Listen Addresses" and "Global Discovery
Server" in the Settings dialog does not work. This bug seems to
have been introduced in 26d52be.
This sends the Cache-Control header to allow caching of static resources,
and checks the If-Modified-Since header to allow browser to use the
cached resource on refresh. Also fixes some paths that caused redirects
(core//foo -> core/foo)
The very deep tree structure didn't really aggree with me, sorry. This
makes the core module rather large, but on the other hand that just
highlights that it is rather large.
commit d60fbce311414f3ade16c7b1f6525b1d02f01699
Author: Jacek Szafarkiewicz <szafar@linux.pl>
Date: Mon Jun 1 11:16:36 2015 +0200
Correct order of deb files
commit 3b2ecfcc45343701ccb98483a62f70c102a70785
Merge: f4daebb c23a601
Author: Jacek Szafarkiewicz <szafar@linux.pl>
Date: Mon Jun 1 11:15:06 2015 +0200
Merge github.com:syncthing/syncthing
Conflicts:
build.go
commit f4daebb8510f0b40b15e404817a7799e0c3b592c
Author: Jacek Szafarkiewicz <szafar@linux.pl>
Date: Tue May 26 12:58:25 2015 +0200
Add me to AUTHORS
commit 9e77f4bea01cc826132a5fbc6ca412cce5327e97
Author: Jacek Szafarkiewicz <szafar@linux.pl>
Date: Tue May 26 12:57:40 2015 +0200
Add systemd files to deb packate
class modal-open is applied to <body>, which ultimately means that the
browser will scoll to the modal's content. However, #editFolder was
finishing its close animation (and removing this modal-open class)
after #editIgnores had set modal-open (and had started its open
animation). The end result is that <body> ends up without modal-open
when #editIgnores is open, and so the browser doesn't properly scroll.
Instead, only open the #editIgnores once #editFolder has finished closing.
Upgrading to bootstrap 3.3.5 meant that checkboxes inside a div with
column-count:3 set would be unclickable in Chrome: in fact, the entire
div appears to sit on top of its contents, making interaction impossible.
This affected both the 'show folder with these devices' and 'these devices
can access this folder' sections of the UI.
I'm not sure what the the underlying cause is, but moving to Bootstrap's
grid system appears work around the issue. Devices/folders have to be
explicitly split out into rows, otherwise the final element appears offset.
To do this grouping by row, a new filter (groupFilter) has been added, which
turns an input of e.g. [1, 2, 3, 4, 5] with a groupSize of 3 into
[[1, 2, 3], [4, 5]]. However altering the collection in this way throws
Angular into an infinite watch loop, terminating in infdig. m59peacemaker's
pmkr.filterStabilize (MIT) was added to work around this issue.
This also has the nice side-effect of wrapping the list of devices/folders
when the screen width decreases.
See also:
- #2027 (bootstrap update which triggered this issue)
- #1121 (last time it happened)