Commit Graph

4332 Commits

Author SHA1 Message Date
Herb Jellinek
8612b6dd12
Fixed typo in comment
"syncronization" should be "synchronization"
2018-03-02 17:00:14 -08:00
Herb Jellinek
874bccd1da
Fixed typo
"there" should be "their".
2018-03-02 16:51:53 -08:00
ejurgensen
ea6fd1476a [db] Improve speed of browse queries (issue #478)
Before, we returned either unordered (for RSP, meaning client had to
sort) or ordered by a client selected sort_clause[]. The latter are
multi-purpose and therefore not optimised for browse queries.

To speed up, we predefine the entire set of browse queries, including
order, with matching indices. The predefined queries are used except
if the client explicitly requests a non-default order or query.

As a special bonus, the commit also allows queries with I_SUB that
have an offset but no limit.
2018-03-02 21:11:31 +01:00
ejurgensen
121b812c30 [transcode] Lower log level of "will transcode" messages 2018-03-02 20:51:33 +01:00
chme
cd96ec579a [db/library] Use "PRAGMA optimize" instead of "ANALYZE"
ANALYZE collects and saves statistics even if there were no database
changes and the last collected data is still good.

According to the sqlite3 documentation, it is recommended to use "PRAGMA
optimize" which will call "ANALYZE" if it is necessary. "PRAGMA
optimize" will run "ANALYZE" based on prior queries on the same database
connection. It is recommended to run optimize before closing the
connection.

(see https://www.sqlite.org/lang_analyze.html)
2018-02-26 18:41:28 +01:00
ejurgensen
0014b9001b Bump to version 26.0 2018-02-24 16:45:41 +01:00
ejurgensen
237674d2a6 ChangeLog and README for forked-daapd 26.0 2018-02-24 16:45:05 +01:00
ejurgensen
666af127d5 [raop] Fix gcrypt error handling in raop_verification.c
And I learnt that gcrypt doesn't follow the negative-on-error pattern
2018-02-22 22:36:50 +01:00
ejurgensen
c2a563eec7 [main] Remove build date so there will be no complaints about non-producible builds 2018-02-22 22:16:22 +01:00
ejurgensen
f386c13bd9 [pipe] Add forgotten include of config.h 2018-02-22 22:11:42 +01:00
ejurgensen
6a56c19ad5 [pipe] Add forgotten include of pthread 2018-02-22 22:03:37 +01:00
ejurgensen
6c2ee276de
Merge pull request #495 from chme/fixwarnings
Fix compiler warnings
2018-02-22 21:52:17 +01:00
ejurgensen
b1c9518a78 [-] Make json-c a required library
Already kind of was required, as it was required by Spotify, Chromecast and the web api
2018-02-22 21:49:11 +01:00
chme
30aa4cf525 [db] Fix comments 2018-02-22 21:36:14 +01:00
chme
8b2d40d46f Initialize local variables to silence OpenWrt compiler warnings 2018-02-22 21:35:38 +01:00
ejurgensen
cc1785a843
Merge pull request #490 from chme/jsonapi_outputs
JSON api cleanup and documentation
2018-02-15 19:27:34 +01:00
chme
b17fb1c101 [README] JSON API Endpoint reference documentation 2018-02-15 19:19:13 +01:00
chme
bd5bf56245 [htdocs] Select outputs with /api/outputs/set endpoint 2018-02-15 19:19:13 +01:00
chme
1212723072 [jsonapi] Do not set "DAAP-Server" header in json api response 2018-02-15 19:19:13 +01:00
chme
0e9feac829 [jsonapi] Rework outputs endpoint and strictly match uris by request
method
2018-02-15 19:19:13 +01:00
chme
83bb06225b [misc] Add helper function to check if a key with a given type exists 2018-02-15 19:19:13 +01:00
chme
1379ef235c [httpd] Support assigning request methods to uri handlers 2018-02-15 19:19:13 +01:00
chme
a98713ba49 [jsonapi] Return proper HTTP status codes 2018-02-11 10:55:11 +01:00
chme
d4b05e98ae [httpd] Add PUT and DELETE to the allowed http request methods 2018-02-10 10:39:32 +01:00
ejurgensen
cdaa929078
Merge pull request #489 from chme/playeroutputs
Refactore output enumeration and support enable/disable of single output
2018-02-10 10:35:55 +01:00
chme
43887d160f [mpd] Refactor commands to enable/disable/toggle/volume for outputs 2018-02-10 09:04:18 +01:00
chme
decf9f1329 [player] Add commands to enable/disable output 2018-02-10 09:04:18 +01:00
chme
93879c6f90 [player] Refactor speaker enumerate callback 2018-02-10 09:04:18 +01:00
chme
94fd370df2 [player] Simplify parameter passing to player commands 2018-02-10 09:04:18 +01:00
chme
d36e6ac5ab [player] Refactor speaker_set/speaker_activate 2018-02-10 09:04:18 +01:00
chme
f2659d995b [player] Refactor speaker_set/speaker_deactivate 2018-02-07 21:04:47 +01:00
ejurgensen
e70f9623db [filescanner] Update ffmpeg id3 tag mapping, include grouping tags 2018-01-31 21:46:17 +01:00
ejurgensen
0b3f4dfa15 [transcode] Ignore some errors from avcodec_send_packet(), fixes #483
Since the stream can at least in some cases be transcoded anyway
2018-01-26 22:37:28 +01:00
ejurgensen
d0a1fdec67
Merge pull request #484 from sshambar/fixcompile
[configure] Fixed make distcheck
2018-01-26 18:45:47 +01:00
Scott Shambarger
49c88a9cc5 [configure] Fixed make distcheck 2018-01-25 21:52:20 -08:00
ejurgensen
c23f2c01b2 [scan] Fix bugs related to iTunes XML playlists
1) They would get disabled after rescan
2) Playlists and playlistitems didn't get cleaned up
2018-01-25 22:26:00 +01:00
ejurgensen
e1fb3607e9 [scan] Treat playlists with mtime==db_timestamp as modified + better virtual_path for iTunes XML playlists
Should fix a problem where saving a playlist with gedit was not picked up by forked-daapd as a modification
2018-01-24 21:36:50 +01:00
ejurgensen
4000d15778 [main] Add cmd line options to disable mdns announcements + update man page 2018-01-14 19:46:19 +01:00
ejurgensen
b1c2a3bd8f
Merge pull request #479 from chme/dbperf
[db_profile] Use sqlite3_trace_v2 instead of deprecated sqlite3_profile
2018-01-13 13:16:25 +01:00
chme
18a6372fb1 [dbperf] Use sqlite3_trace_v2 instead of deprecated sqlite3_profile
Set log severity depending on how long the query was running and return
early if log level is lower than the current one.
2018-01-13 11:05:58 +01:00
chme
c747456880 [logger] Expose log severity 2018-01-13 10:51:48 +01:00
chme
e7f8b7010b [configure] Allow to build with db profiling log output
Add configure option to turn on debug logs profiling sql queries with:

./configure --enable-dbprofile
2018-01-13 10:51:41 +01:00
ejurgensen
4da45bdfab [httpd] Parser should allow queries that are not key/value
E.g. http://prem3.di.fm:80/progressive_hi?my_premium_key
2018-01-08 20:13:05 +01:00
ejurgensen
45d193e56c [scan] Use open()/close() instead of euidaccess() to support ACL's
Fixes #474
2018-01-06 20:10:34 +01:00
ejurgensen
8d043dd9e9 [http] Temporary fix for bug in commit 8f899f2
See 8f899f2051 (commitcomment-26433079)
2018-01-02 21:20:28 +01:00
ejurgensen
f71028b25d
Merge pull request #477 from chme/player
[player] Check player state in stop and pause commands
2017-12-30 12:53:43 +01:00
ejurgensen
7d66acf0a0
Merge pull request #476 from chme/mpd_check_args
[mpd] Refactoring of minimum argument check
2017-12-30 12:53:32 +01:00
ejurgensen
234bb52ea4
Merge pull request #475 from chme/queuefix
Fix for missing queue updates in MPDroid
2017-12-30 12:53:20 +01:00
chme
981fd3e183 [db] Update queue_version in db_queue_move_byitemid
Fixes missing queue updates in MPDroid after moving an item in the
queue. MPDroid moves items with the 'moveid' command and retrieves the
playlist changes with the 'plchanges' command, due to the missing
queue_version update the last command did not return any changes and the
queue in MPDroid did not get updated.
2017-12-30 08:01:07 +01:00
ejurgensen
7ff965ee76
Merge pull request #473 from chme/pipe
[pipe] Do not rely on the DATABASE event to be triggered during startup
2017-12-28 16:45:39 +01:00