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
Sergey Mishin
f11bac6705
fix missing languages ( fixes #1902 )
2015-06-02 01:19:21 +03:00
Jakob Borg
36d4c69fd6
Translation update
2015-05-31 09:37:02 +02:00
Jakob Borg
d632e3aa1b
Show help link, add icons, tweak icon spacing
2015-05-30 10:31:45 +02:00
Audrius Butkevicius
f0e58fa804
Additional cases for detecting folders disappearing
2015-05-27 22:46:10 +01:00
Jakob Borg
7d48115b90
Reduce db writes for small files
...
We introduced the dbUpdater routine to handle many small files
efficiently, but the folder stats call is almost equally expensive as it
results in two distinct write transactions to the database. This moves
it to the same routine.
(Doesn't make a *huge* difference with leveldb actually, but reduces the
50k-files benchmark time by 25% on my experimental bolt branch...)
2015-05-27 18:36:26 +02:00
Bart De Vries
d2205228fb
Make syncthing honor both the ignorePerms and FlagNoPermBits settings ( fixes #1871 )
2015-05-26 16:27:26 +02:00
Jakob Borg
3f59d6daff
Add validation cache
2015-05-25 13:19:18 +02:00
Jakob Borg
0d659933aa
Merge pull request #1868 from mogwa1/umask
...
Change permissions of newly created files and directories (fixes #1339 )
2015-05-25 08:34:34 +02:00
Jakob Borg
3e8eabe833
Add mogwa1
2015-05-25 08:07:59 +02:00
Bart De Vries
badfc77339
Change permissions of newly created files and directories ( fixes #1339 )
2015-05-25 00:12:51 +02:00
Jakob Borg
c0d02a65c3
Reduce allocations during iteration
...
Reuses key byte slices to reduce allocations:
benchmark old allocs new allocs delta
Benchmark10kReplace 178112 168615 -5.33%
Benchmark10kUpdateChg 567954 561557 -1.13%
Benchmark10kUpdateSme 238691 228680 -4.19%
Benchmark10kNeed2k 105382 103383 -1.90%
Benchmark10kHaveFullList 60230 60230 +0.00%
Benchmark10kGlobal 237484 227493 -4.21%
benchmark old bytes new bytes delta
Benchmark10kReplace 8725368 7661788 -12.19%
Benchmark10kUpdateChg 58155152 57441025 -1.23%
Benchmark10kUpdateSme 16130875 14996717 -7.03%
Benchmark10kNeed2k 6561685 6338283 -3.40%
Benchmark10kHaveFullList 7611112 7611135 +0.00%
Benchmark10kGlobal 21415056 20300723 -5.20%
2015-05-24 13:08:14 +02:00
Audrius Butkevicius
3a203b8d83
Merge pull request #1861 from calmh/fix-1860
...
Be more lenient against errors when deleting (fixes #1860 )
2015-05-24 00:58:46 +01:00
Audrius Butkevicius
feecdcc7a4
Merge pull request #1854 from calmh/eventmemallocs
...
Reuse a timer instead of allocating a new one in subscription.Poll
2015-05-23 23:23:46 +01:00
Jakob Borg
29da0bc8f5
Be more lenient against errors when deleting ( fixes #1860 )
2015-05-23 23:57:41 +02:00
Jakob Borg
7b6b5981c4
UPnP discovery results must not be collected in a background goroutine ( fixes #1858 )
2015-05-23 23:27:02 +02:00
Jakob Borg
90a1d99785
Reuse a timer instead of allocating a new one in subscription.Poll
...
This is surprisingly memory expensive when Poll gets called a lot, such
as when syncing lots of small files generating itemstarted/itemfinished
events. It's line number three in this heap profile on the
TestBenchmarkManyFiles test:
jb@syno:~/src/github.com/syncthing/syncthing/test (master) $ go tool pprof ../bin/syncthing heap-13194.pprof
Entering interactive mode (type "help" for commands)
(pprof) top
80.91MB of 83.05MB total (97.42%)
Dropped 1024 nodes (cum <= 0.42MB)
Showing top 10 nodes out of 85 (cum >= 1.75MB)
flat flat% sum% cum cum%
32MB 38.53% 38.53% 32.01MB 38.54% github.com/syndtr/goleveldb/leveldb/memdb.New
22.16MB 26.68% 65.21% 22.16MB 26.68% github.com/syndtr/goleveldb/leveldb/util.(*BufferPool).Get
13.02MB 15.68% 80.89% 13.02MB 15.68% time.NewTimer
6.94MB 8.35% 89.24% 6.94MB 8.35% github.com/syndtr/goleveldb/leveldb/memdb.(*DB).Put
3.18MB 3.82% 93.06% 3.18MB 3.82% github.com/calmh/xdr.(*Reader).ReadBytesMaxInto
With this change the allocation is removed entirely.
2015-05-23 20:38:41 +02:00
Jakob Borg
8dd7e4e6b5
Run benchmarks when running tests
2015-05-23 15:08:17 +02:00
Lode Hoste
f12b8c19be
Support the creation of top-level folders on Windows ( fixes #1822 )
2015-05-21 19:21:19 +02:00
Lode Hoste
5042248260
Set permanent UPnP lease when required ( fixes #1831 )
2015-05-21 10:48:40 +02:00
Lode Hoste
1df6589533
Add status code to SOAP response
2015-05-21 09:54:39 +02:00
Audrius Butkevicius
f112ef34f6
Don't check interface flags on Windows
2015-05-17 16:42:26 +01:00
Jakob Borg
e4b57a978f
Translation update
2015-05-15 10:46:47 +02:00
Jakob Borg
947a129e12
Use updateLocals to ensure event generation
2015-05-14 08:56:42 +02:00
Jakob Borg
f3fe6a6cbd
Assure existence of a folder marker in the test
2015-05-14 08:46:00 +02:00
Jakob Borg
9d150bef9f
Refactor GetMtime for early return
2015-05-14 08:26:21 +02:00
Jakob Borg
65be18cc93
Merge pull request #1804 from cdhowie/virtual-mtimes
...
Implement virtual mtime support for Android
2015-05-14 08:14:29 +02:00
Jakob Borg
e27ea63900
Add cdhowie
2015-05-14 08:11:02 +02:00
Chris Howie
aa96f7b660
Virtual mtime support for environments that don't support altering mtimes ( fixes #831 )
2015-05-13 14:57:29 +00:00
Jakob Borg
053690d885
Don't attempt reschedule with zero interval
...
Can happen on manual rescans of folders with zero interval.
2015-05-13 16:51:08 +02:00
Jakob Borg
0b9441e1a4
Reset a namespaced kv-store
2015-05-13 14:41:47 +02:00
Jakob Borg
c2f2d8771f
Tweak the database block cache size, and add config for it
2015-05-11 09:08:25 +02:00
Jakob Borg
179c9ee8cc
Merge pull request #1792 from Zillode/tempname
...
Retains part of meaningful filename, added unit test and did a small refactoring
2015-05-10 20:44:55 +02:00
Jakob Borg
eb8a505287
Merge pull request #1774 from Zillode/fix-rename-windows
...
If rename works we are happy (fixes #1767 )
2015-05-10 19:04:03 +02:00
Lode Hoste
a7482a3644
Added simple unit test for temporary filenames
2015-05-10 18:57:27 +02:00
Lode Hoste
a692348336
Retain meaningful names for temporary files
2015-05-10 18:57:27 +02:00
Jakob Borg
285dcc30cf
Use md5 hash of filename for temporary file ( fixes #1786 )
2015-05-10 18:57:27 +02:00
Jakob Borg
bcf51aed83
Translation update
2015-05-10 14:59:12 +02:00
Lode Hoste
f6416285db
If rename works we are happy ( fixes #1767 )
2015-05-10 00:00:24 +02:00
Jakob Borg
7f0593cd2d
Set default UPnP lease time to 60 minutes
2015-05-09 22:17:53 +02:00
Jakob Borg
1133192a86
Merge remote-tracking branch 'syncthing/pr/1779'
...
* syncthing/pr/1779:
Remove stray VIM swap file
2015-05-08 20:32:02 +02:00
Chris Howie
af3288043a
Remove stray VIM swap file
2015-05-08 16:11:32 +00:00
Jakob Borg
245bd1eb17
Trigger pull check on remote index updates ( fixes #1765 )
...
Without this, when an index update comes in we only do a new pull if the
remote `localVersion` was increased. But it may not be, because the
index is sent alphabetically and the file with the highest local version
may come first. In that case we'll never do a new pull when the rest of
the index comes in, and we'll be stuck in idle but with lots of out of
sync data.
2015-05-08 10:02:46 +02:00
Jakob Borg
9308c42cff
Skip boring concurrency test in internal/db
2015-05-07 09:57:49 +02:00
Jakob Borg
5fc0808f28
Set the execute bit on Windows executables ( fixes #1762 )
2015-05-05 21:45:26 +02:00
Jakob Borg
e6866ee980
strings.TrimLeft is not actually TrimPrefix
2015-05-05 13:53:11 +02:00
Jakob Borg
df59bc7194
Merge pull request #1747 from Zillode/fix-1743
...
Partial fix for #1743
2015-05-04 10:51:40 +02:00
Jakob Borg
1bd85d8baf
Use a channel instead of locks
2015-05-03 14:18:32 +02:00
Lode Hoste
fe34b08ece
Reschedule the next scan interval ( fixes #1591 )
2015-05-03 12:48:44 +02:00
Alexander Graf
0ec01f4e78
Distinguish files with same name but different extension in staggered versioner ( fixes #1738 )
2015-05-03 10:36:46 +02:00
Jakob Borg
d0ebf06ff8
Translation update
2015-05-03 08:29:29 +02:00
Jakob Borg
687b249034
Don't create stopped folder in staggered versioning ( fixes #1749 )
2015-05-03 08:22:11 +02:00
Jakob Borg
d1528dcff0
Remove old name conversion from staggered versioning
2015-05-03 08:22:11 +02:00
Lode Hoste
67f0c9bef0
Do not remove the file when renaming on a case-insensitive platform ( fixes #1743 )
2015-05-01 23:43:45 +02:00
Jakob Borg
4ff535f883
Twitter link (lazily wrong icon, because not in Glyphicons...)
2015-05-01 23:32:51 +02:00
Lode Hoste
e3cae69495
Added test for combining case insensitive and negated patterns ( fixes #1678 )
2015-05-01 00:58:44 +02:00
Jakob Borg
756c5a2604
User fewer hasher routines when there are many folders.
2015-04-29 21:26:08 +02:00
dartraiden
32a76901a9
typos and spelling correction
2015-04-29 15:59:47 +02:00
Jakob Borg
1207d54fdd
Tweak UPnP discovery, avoid non-multicast interfaces ( fixes #1721 )
2015-04-28 22:32:10 +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
Audrius Butkevicius
32fe2cb659
Merge pull request #1700 from calmh/upnpsvc
...
Break out UPnP port mapping into a service
2015-04-29 00:18:49 +01:00
Audrius Butkevicius
19a2042746
Merge pull request #1723 from calmh/bug-1722
...
Handle conflict with local delete (fixes #1722 )
2015-04-28 10:39:22 +01:00
Jakob Borg
57ec2ff915
Handle conflict with local delete ( fixes #1722 )
2015-04-28 11:34:16 +02:00
Audrius Butkevicius
77a161a087
Matcher checks nil receiver
2015-04-28 10:17:14 +01:00
Jakob Borg
0642402449
Break out UPnP port mapping into a service
2015-04-28 10:25:25 +02:00
Jakob Borg
fd4ea46fd7
Merge pull request #1708 from jarlebring/upnp_close_conn_fix
...
Fix to for routers that cannot handle many open HTTP-connections
2015-04-26 22:54:47 +02:00
Elias Jarlebring
8d8546868d
Fix to for routers that cannot handle many open HTTP-connections
...
Some routers do not respond when too many subsequent SOAP-requests are sent and will generate an EOF-error in the DefaultClient.Do(req). This modification adds a req.Close = True following the description on http://stackoverflow.com/questions/17714494/golang-http-request-results-in-eof-errors-when-making-multiple-requests-successi
2015-04-26 22:31:43 +02:00
Audrius Butkevicius
8ce547edeb
Fix HTML ( fixes #1707 )
2015-04-26 20:14:34 +01:00
Audrius Butkevicius
d12db3e7b8
Add osutil.Glob to deal with Windows ( fixes #1690 )
2015-04-26 16:37:50 +01:00
Jakob Borg
15b87ae297
Merge pull request #1704 from jarlebring/upnp_caps
...
Fix capitalization in HTTP-header in SOAP request (fixes #1696 )
2015-04-26 20:10:14 +09:00
jarlebring
d9da02b7a8
Formatting with gofmt
2015-04-26 12:37:37 +02:00
Elias Jarlebring
8f2ad6418d
Fix capitalization in HTTP-header in SOAP request ( fixes #1696 )
...
Some routers are sensitive to the capitalization in "SOAPAction" in the HTTP-header in SOAP request. This modification follows the recommendation of preserving caps in HTTP-headers in go described on http://stackoverflow.com/questions/26351716/how-to-keep-key-case-sensitive-in-request-header-using-golang?lq=1
2015-04-26 12:16:40 +02:00
Audrius Butkevicius
ac1058359f
Rebuild assets
2015-04-26 00:22:30 +01:00
Audrius Butkevicius
9afbca3001
Add pagination to Out of sync item list ( fixes #1509 )
2015-04-26 00:22:26 +01:00
Jakob Borg
be7b3a9952
Configurable file pull order (alphabetic, random, by size or age)
2015-04-25 23:20:21 +09:00
Jakob Borg
33a4fb5a1a
Fix folder check tests
2015-04-25 23:16:46 +09:00
Jakob Borg
7bf55dd14f
events.Subscription.Poll does not seem to require locking
...
This is a large source of output from the new lock logging, and it
doesn't seem to accomplish anything useful that I can see. Running
integration with the race detector to make sure...
2015-04-24 11:25:42 +09:00
Jakob Borg
e158f17c2b
Adjust sync test intervals to be less latency sensitive
2015-04-24 11:25:24 +09:00
Jakob Borg
36c1d82146
Minor fixup
2015-04-24 09:43:40 +09:00
Audrius Butkevicius
bd4f404d45
Add tests, fix getCaller, replace wg.Done with wg.Wait
2015-04-23 20:09:14 +01:00
Jakob Borg
43d39844f7
Merge pull request #1685 from AudriusButkevicius/mut
...
Add mutex logging
2015-04-23 21:16:23 +09:00
Audrius Butkevicius
e041a4d212
Track RUnlockers while locking a RWMutex
2015-04-23 11:29:23 +01:00
Audrius Butkevicius
433b923ea7
Add mutex logging
2015-04-23 10:54:14 +01:00
Jakob Borg
b35958d024
Avoid spurious request for /qr?text={{myID}} ( fixes #1679 )
2015-04-22 09:37:18 +09:00
Jakob Borg
bf7d84c12a
Clean up REST JSON a little further
2015-04-21 23:28:58 +09:00
Jakob Borg
e2420495f3
Fix type in device sort ( fixes #1668 )
2015-04-20 22:18:19 +09:00
Jakob Borg
c741465328
Use versionString() in about modal ( fixes #1663 )
2015-04-20 08:23:59 +09:00
Jakob Borg
fbca537a40
Merge pull request #1655 from kamadak/fix-nil-deref
...
Fix nil pointer dereferences in REST with non-existent folders
2015-04-19 17:20:47 +09:00
KAMADA Ken'ichi
33d3ba1b45
Fix nil pointer dereferences in REST with non-existent folders
2015-04-18 22:41:47 +09:00
Audrius Butkevicius
497f85a236
Fix capitalization ( fixes #1652 , fixes #1649 )
2015-04-18 11:23:21 +01:00
Jakob Borg
cebe21a3af
Don't buffer large files a long time while scanning
2015-04-17 16:40:09 +09:00
Jakob Borg
6d84443db8
Homogenize the LocalIndexUpdated event
...
It had two different formats, and we use "items" instead of "numFiles"
in other places.
(Discovered while documenting :)
2015-04-17 14:22:06 +09:00
Jakob Borg
da8a1f242c
Merge pull request #1646 from AudriusButkevicius/readonly
...
Make targets writeable before removal on Windows (fixes #1610 )
2015-04-17 14:21:39 +09:00
Audrius Butkevicius
dff51fc707
Make targets writeable before removal on Windows ( fixes #1610 )
2015-04-16 22:53:53 +01:00
Audrius Butkevicius
7d954dd5d1
Fix tests on Windows ( fixes #1531 )
2015-04-16 21:18:17 +01:00
Jakob Borg
c6300a5da8
Tone down UPnP errors a little
2015-04-16 23:45:12 +09:00
Jakob Borg
2322e9cff7
Store and use _localStorage object
2015-04-16 23:44:34 +09:00
Jakob Borg
6a863c8f71
Translation update
2015-04-16 23:27:27 +09:00
Jakob Borg
392b006b06
Add Moter8
2015-04-16 23:23:34 +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
1b69c2441c
Make UPnP discovery requests on each interface explicitly ( fixes #1113 )
2015-04-16 14:23:36 +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
d1cc1828b8
Improve ItemStarted/ItemFinished events
...
- Remove full details from ItemStarted (unnecessary, incorrect CamelCase)
- Add "type" ("file" or "dir") to both events
- Add "action" (what we tried to do - "delete" or "update") to both
events.
2015-04-14 23:31:39 +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
Jakob Borg
a027a60f5d
Correctly feature detect localStorage ( fixes #1632 )
2015-04-13 06:50:07 +09:00
Jakob Borg
b74df18a4a
Translation update
2015-04-10 13:32:23 +02:00
Jakob Borg
5cd2906a39
Fix NICKS and authors in index.html
2015-04-10 12:57:43 +02:00
Jakob Borg
bc37b69d17
Add ARM to GUI architectures, and fallback for unknowns
2015-04-10 12:45:53 +02:00
Francois-Xavier Gsell
94f6e400ad
fix '~' completion in add folder build assets ( fix #1478 )
2015-04-10 15:42:52 +08:00
Lode Hoste
75348c0158
Fix compilation of -noupgrade builds
2015-04-09 22:44:46 +02:00
Audrius Butkevicius
5350315b68
Merge pull request #1614 from calmh/new-short-id
...
Index reset should generate file conflicts (fixes #1613 )
2015-04-09 13:48:37 +01:00
Audrius Butkevicius
1f159e8233
Fix total transfer rates ( fixes #1615 )
2015-04-09 12:07:21 +01:00
Jakob Borg
936c76119d
Index reset should generate file conflicts ( fixes #1613 )
2015-04-09 13:06:09 +02:00
Jakob Borg
f5030f1c2c
Update XDR dependency ( fixes #1606 )
2015-04-08 14:49:29 +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
0bfb40ae51
discourse -> forum
2015-04-07 16:07:16 +02:00
Audrius Butkevicius
68ff4f3842
Fix GUI
2015-04-07 14:24:34 +01:00
Jakob Borg
ab25cd09ed
Merge pull request #1600 from syncthing/conns
...
Change /rest/system/connections output (fixes #1487 )
2015-04-07 14:29:40 +02:00
Audrius Butkevicius
8f05b8f982
Change /rest/system/connections output ( fixes #1487 )
2015-04-07 13:21:03 +01:00
Jakob Borg
63ae2f64cf
Woops: /rest/system/errors -> /rest/system/error
2015-04-07 13:46:39 +02:00
Jakob Borg
105103fae0
Woops: /rest/system/report -> /rest/svc/report
2015-04-07 13:33:37 +02:00
Jakob Borg
70f4792ab1
Translation update
2015-04-07 12:24:02 +02:00
Jakob Borg
e884d0fda6
Tidy up the REST interface URLs ( fixes #1593 )
2015-04-07 12:16:23 +02:00
Audrius Butkevicius
5f6a8fdc20
Merge pull request #1568 from calmh/override
...
Override needs to twiddle the version a bit more (fixes #1564 )
2015-04-07 11:13:43 +01:00
Jakob Borg
b74c31e520
Only show Override button in idle state
2015-04-06 23:33:28 +02:00
Jakob Borg
221f43e4bd
Use a socket per interface for v6 multicast ( fixes #1563 )
2015-04-06 20:55:50 +02:00
Jakob Borg
a17333d73e
Override needs to twiddle the version a bit more ( fixes #1564 )
2015-04-06 20:55:40 +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
Jakob Borg
0c0de17b38
Merge pull request #1582 from ralder/webgui-enable-gzip
...
Enable gzip for static files for webgui
2015-04-06 08:33:57 +02:00
Sergey Mishin
77882e6086
Enable gzip encoding static files for webgui
2015-04-06 03:11:30 +03:00
Audrius Butkevicius
19a9834843
Merge pull request #1589 from calmh/copyconf
...
Copy configuration struct when sending Changed() events
2015-04-05 20:53:10 +01:00
ralder
b5d7ce8ebe
Add uptime in webgui ( fixes #1501 )
2015-04-05 22:37:55 +03:00
Jakob Borg
bf4eb4b269
Copy configuration struct when sending Changed() events
...
Avoids data race. Copy() must be called with lock held.
2015-04-05 21:07:15 +02:00
Jakob Borg
ecadf30fe7
model: Use separate db commit routine ( fixes #1558 )
2015-04-05 16:19:14 +02:00
Lode Hoste
f21dfea965
Test combination of prefixes (@benapetr)
2015-04-05 11:45:43 +02:00
Audrius Butkevicius
b84cad4db0
Merge pull request #1583 from calmh/configcleanup
...
Remove handling for old deprecated config versions
2015-04-05 01:31:53 +01:00
Jakob Borg
bd2051febd
Remove handling for old deprecated config versions
2015-04-04 23:37:47 +02: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
Jakob Borg
8d41a762b6
Clean up translations, generate assets
2015-04-04 23:21:45 +02:00
Jakob Borg
739c525a98
model: TestIgnores should not randomly fail
2015-04-04 22:55:24 +02: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
ab6bcab78a
fnmatch: Test should pass on Mac/windows
2015-04-04 22:05:15 +02:00
Jakob Borg
6e317896e9
golint: FNM_FOOBAR -> fnmatch.FooBar
2015-04-04 22:03:03 +02:00
Jakob Borg
17fd09102e
go vet: t.Errorf -> t.Error
2015-04-04 21:58:21 +02:00
Jakob Borg
a598cd2b18
Auto generate author list in gui/index.html
2015-04-04 10:09:42 +02:00