1
0
mirror of https://github.com/spl0k/supysonic.git synced 2024-12-22 17:06:17 +00:00
Commit Graph

731 Commits

Author SHA1 Message Date
spl0k
82b5ca3cae Merge branch 'daemon-rework' 2019-06-16 15:49:15 +02:00
spl0k
77805700d5 Changed watcher script warning category 2019-06-16 15:29:52 +02:00
spl0k
373beaa92e Docs update + systemd service file for the daemon 2019-06-10 17:25:05 +02:00
spl0k
e29ab91a97 Renamed supysonic-watcher to supysonic-daemon
Since it no longer only watches files
Also changed the way it's installed
2019-06-10 16:16:24 +02:00
spl0k
8d9b2658d2 Try to terminate the daemon more gracefully 2019-06-08 17:32:32 +02:00
spl0k
70f18b981a Fixed last SQLite migration
Closes #151
2019-06-08 12:59:57 +02:00
spl0k
e6a192483c Merge branch 'master' into daemon-rework 2019-06-01 16:21:13 +02:00
spl0k
09138897b9 Fixed scanner for deleted folders 2019-06-01 15:57:45 +02:00
spl0k
e5716b417a Fixed watcher errors when moving/deleting folders containing a cover 2019-06-01 14:53:06 +02:00
spl0k
ebea356901 Fix for werkzeug 0.15 2019-05-18 16:43:32 +02:00
spl0k
10df0ada07 Don't store the mimetype in database
That's useless, it can be deduced from the path
Fixes #150
2019-05-18 15:50:30 +02:00
spl0k
bb36b38d52 Updated tests 2019-05-11 17:13:58 +02:00
spl0k
deaf17a005 Fixes #148 (and other possible related issues) 2019-05-11 16:09:46 +02:00
spl0k
58b7888ba9 Thighter DB session scoping in scanner
Should prevent 'database is locked' issues
Also helps reducing memory usage (#144)
2019-05-10 17:58:01 +02:00
spl0k
e354f99d69 Moving where some callbacks are used 2019-05-10 11:39:43 +02:00
spl0k
7bd4c54e98 The scanner is now a stoppable thread 2019-04-27 17:28:32 +02:00
spl0k
e210f25bb3 Web UI now scans in background 2019-04-22 17:59:49 +02:00
spl0k
7bbbdac41c Queue scans rather than rejecting them 2019-04-22 16:42:38 +02:00
spl0k
d2ff37428f Temporarily disable watcher when scanning 2019-04-22 15:44:30 +02:00
spl0k
7f8369cac4 Splitting daemon stuff 2019-04-22 15:43:29 +02:00
spl0k
9850cae241 CLI can now scan in background
Some issues:
- can't queue scans, not really user-friendly
- scanning seems to touch files which are in turn picked by the watcher
2019-04-20 17:10:55 +02:00
spl0k
75540bb376 Daemon can now scan on its own
Scanning threads cannot be stopped
2019-04-20 17:03:19 +02:00
spl0k
22a207c79f Nicify commands sent to the daemon 2019-04-20 11:51:34 +02:00
Alban
ba289065ce
Stupid comma 2019-04-13 19:01:34 +02:00
Alban
7edc30d683
Fixed setup.py 2019-04-13 18:54:39 +02:00
spl0k
3924ada03e Added a config variable to define if the watcher should be started 2019-04-13 17:14:03 +02:00
spl0k
55e9db61d8 Docs update 2019-04-13 16:58:12 +02:00
spl0k
a3d3c66c74 watchdog is now required
Even if the watcher is unused, due to imports
2019-04-13 16:27:55 +02:00
spl0k
c7f1499d46 Make Python2 happy 2019-04-13 16:02:32 +02:00
spl0k
5b0b5ff29b Removed invalid test
The watcher now keeps running even if there's nothing to watch initially
so we can add watched folder later on
2019-04-10 21:29:00 +02:00
spl0k
57aea188c2 Fixed potential error/freeze when getting a secret key 2019-04-10 21:21:25 +02:00
spl0k
afbd84a5b9 Changed how the DaemonClient get its address + better exception
I'm still not satisfied but can't come up with a good solution
2019-04-10 21:15:18 +02:00
spl0k
751f00dac8 Daemon now listen for remot commands, adding/removing watched folders on the fly
#77 part 5
2019-04-08 19:16:41 +02:00
spl0k
970ee6ee3c Merge branch 'master' into daemon-rework 2019-04-07 16:44:17 +02:00
spl0k
c938f225e9 Store cookie key in db rather than cache 2019-04-07 16:35:26 +02:00
spl0k
92fed40f87 Use mtime as folder/track creation date
Closes #145
2019-04-07 15:25:13 +02:00
spl0k
db2799ef7e Reworked how the watcher is started 2019-03-31 18:06:45 +02:00
spl0k
270fa9883b Removing executable flag from files that shouldn't have it 2019-03-31 16:37:56 +02:00
spl0k
7ff56bc4ad Add indexes on all foreign keys
Should help with query performance issues such as #140
2019-03-24 17:26:14 +01:00
spl0k
780c96c404 Fixed issues with float bitrate and empty tags
Thanks to @nextfullstorm
Closes #139
2019-03-23 17:08:46 +01:00
spl0k
e2cc51a0f0 Fixed issues when the watcher is set to log to /dev/null 2019-03-23 16:20:19 +01:00
spl0k
c0d9d616c8 Truncate artist, album and title when scanning
Closes #138
2019-03-10 11:52:18 +01:00
spl0k
a73d42b9d8 Make MySQL happy with binary data
Closes #137
2019-03-10 11:38:55 +01:00
spl0k
5367f068e1 Giving credit where credit is due 2019-02-09 16:19:30 +01:00
spl0k
54149a605c Update docs about caching 2019-02-09 16:09:38 +01:00
spl0k
cf846e88ee Merge remote-tracking branch 'pR0Ps/feature/transcode-cache' 2019-02-09 15:49:30 +01:00
spl0k
29429bbbf2 Sanitize tags a bit when readong them
Closes #133, closes #134
2019-02-09 15:48:16 +01:00
spl0k
d7bbbfe383 Added test case for #133 2019-02-09 15:39:58 +01:00
Carey Metcalfe
07342529e0 Ensure transcoding failures are never cached
By re-raising any exceptions that `transcode` encounters while running
the transcode, it ensures that `set_generated` will also see the
exception, preventing it from caching an incomplete transcode.
2019-02-03 23:24:26 -05:00
Carey Metcalfe
0ac2376e07 Fix issues with hanging transcoding processes
When a connection that is consuming a generated response is closed,
Flask closes the generator making it raise the special `GeneratorExit`
exception when the program tries to yield from it again. Because the
`transcode` function was called (returning a generator) before being
passed into `set_generated`, the exception was being handled in the
wrong order.

By passing the `transcode` function to `set_generated` and letting
`set_transcode` call it to return a generator while generating the
response for the client, the exception properly bubbles up through
`transcode` into `set_generated`. This allows both of them to handle it
properly by stopping the subproceses and not caching the incomplete
response data respectively.
2019-02-03 23:23:00 -05:00