Commit Graph

328 Commits

Author SHA1 Message Date
sentriz
0f611d7f7a use track artists and album artists more appropriately
for example using track artists to find top songs, and returning artist
features in artist album lists
2023-11-07 22:49:43 +00:00
sentriz
98eb1066d8 store artist album appearances 2023-11-06 23:40:00 +00:00
sentriz
03cc1aedad update ServeGetArtist artist init 2023-11-06 21:50:57 +00:00
sentriz
10ae1018c7 set runQueryCases helper 2023-11-06 21:50:46 +00:00
sentriz
0fa099b44b don't left join to find similar artists 2023-10-31 20:23:53 +00:00
sentriz
c1a34dc021 feat: store and expose individual track artists
a
2023-10-31 19:14:08 +00:00
sentriz
fe0567a995 fix: store and scrobble with real album artist info string 2023-10-25 22:09:04 +01:00
sentriz
48eadd05e3 don't scrobble podcast episodes 2023-10-25 10:42:23 +01:00
sentriz
95bc919377 don't backtick quote stuff 2023-10-19 02:17:39 +01:00
Duncan Overbruck
b17e76ea73 fix(subsonic): songCount and albumCount in genre objects is required (#390) 2023-10-12 19:19:30 +00:00
sentriz
f18151b755 fix(subsonic): don't return concatenated genres strings for song/trackchilds 2023-10-10 16:56:37 +01:00
Senan Kelly
7eaf602e69 feat(subsonic): support timeOffset in stream.view (#384)
as per
https://github.com/opensubsonic/open-subsonic-api/pull/54
https://github.com/opensubsonic/open-subsonic-api/discussions/21

dont cache partial transcodes

add a transcode seek test
2023-10-08 16:10:49 +00:00
sentriz
1ea2402559 feat(subsonic): scrobble to different scrobble backends in parallel 2023-10-05 12:23:57 +01:00
sentriz
315c4f834e lint 2023-10-04 21:03:41 +01:00
sentriz
97e9675dca reorg packages 2023-10-04 20:52:06 +01:00
sentriz
a669ba8598 delete oklog 2023-10-04 20:45:41 +01:00
sentriz
8382f6123c feat(subsonic): make it easier to add more tag reading backends
related https://github.com/sentriz/gonic/issues/379
related https://github.com/sentriz/gonic/issues/324
related https://github.com/sentriz/gonic/issues/244
2023-10-02 20:02:56 +01:00
sentriz
ae82153d79 put helpers last 2023-10-01 03:20:03 +01:00
Senan Kelly
e9accfb71f refactor: refactor controllers and use standard library (#385) 2023-09-30 21:40:51 +00:00
sentriz
adceff1267 use new opensubsonic extensions response format 2023-09-30 22:24:16 +01:00
sentriz
2caee441ca feat(subsonic): add getOpenSubsonicExtensions endpoint and openSubsonic response key 2023-09-28 21:17:56 +01:00
sentriz
e0b1603c00 feat(subsonic): update track play stats on scrobble instead of stream 2023-09-28 20:58:59 +01:00
sentriz
6b322e4a1f return album genres as a list of objects as per opensubsonic
https://github.com/opensubsonic/open-subsonic-api/pull/51
2023-09-28 20:34:00 +01:00
Senan Kelly
f119659acf refactor scrobblers (#383)
- no need to explicitly pass api key
- move packages up a level
- catch more errors by extended scrobbler interface with IsUserAuthenticated
- move interface to server
- delete scrobbber package, clients implicitly satisfy Scrobble

this also helps with gonic-lastfm-sync
2023-09-27 00:13:00 +00:00
sentriz
8edd71f8f7 include artist ids in getStarred responses 2023-09-26 18:46:37 +01:00
sentriz
b3c863c386 feat(subsonic): order results from getStarred reverse chronologically based on star date 2023-09-26 12:03:15 +01:00
sentriz
e3dd812b6c feat(ci): add a bunch more linters 2023-09-22 19:05:55 +02:00
Senan Kelly
33f1f2e0cf refactor podcast schema and generate unique episode paths (#373)
closes #350
2023-09-20 23:01:16 +00:00
sentriz
d9d234d826 show transcode meta info in more places 2023-09-14 23:56:56 +01:00
sentriz
1cc675b6af set cache-control header on covers 2023-09-14 01:28:21 +01:00
sentriz
1900a7b39f preload artist info for getArtists 2023-09-14 01:19:41 +01:00
sentriz
0eb5add1a0 delete multierr 2023-09-14 01:09:57 +01:00
sentriz
12c31cd334 use an enum for db settings 2023-09-14 00:51:40 +01:00
sentriz
05a81a809a move artistinfocache 2023-09-14 00:41:47 +01:00
sentriz
df2c0707dd only return artist cover art if we have cached it 2023-09-14 00:34:01 +01:00
sentriz
c374577328 feat(subsonic): cache and use lastfm responses for covers, bios, top songs 2023-09-13 21:30:57 +01:00
sentriz
c15349f796 feat(subsonic): return artist cover ids for similar artists response 2023-09-13 17:24:19 +01:00
sentriz
3553348877 return full bookmark object from getbookmarks
fixes #328
2023-09-13 02:08:30 +01:00
sentriz
b3199de967 remove a whole pile of startup indirection
fixes #360
2023-09-12 00:41:01 +01:00
sentriz
749233db4e feat(subsonic): expose all album genres in a list of subsonic api
expose album genres from getArtist
2023-09-11 19:36:52 +01:00
sentriz
d6b35f8c79 return artist reference objects in subsonic album type
https://github.com/opensubsonic/open-subsonic-api/discussions/8
2023-09-10 18:42:50 +01:00
sentriz
ddd160545c use comma when joining artists 2023-09-10 16:48:06 +01:00
sentriz
658bae2b43 chore(build)!: bump to go 1.21
Release-As: 0.16.0
2023-09-10 16:16:23 +01:00
sentriz
657fb221db feat(subsonic)!: drop support for guessed artist covers in filesystem
it doesn't make sense with multi-artist support anymore

gonic will use lastfm or an album cover instead

Release-As: 0.16.0
2023-09-10 16:16:04 +01:00
sentriz
3ac77823c3 feat(subsonic): add support for multi-valued album artist tags
closes #103

a

a

a

r

a

a

a

a

a

a

a

a

a

a
2023-09-10 14:05:32 +01:00
brian-doherty
8309425c9e parse podcast description from HTML to text just as with episodes (#354) 2023-08-16 19:13:39 +00:00
archekb
d5f8e23a89 feat(subsonic): gracefully handle missing podcast episode paths when returning playlists
fixes #345

* fix return playlist if file not found and do not add to playlist not downloaded podcast

---------

Co-authored-by: sentriz <senan@senan.xyz>
2023-08-15 14:49:18 +00:00
brian-doherty
7d2c4fbb5c feat(podcast): parse podcast episode descriptions from HTML to plain text (#351) 2023-08-14 21:14:13 +00:00
archekb
8f05f33ab8 subsonic: make homepageURL parameter optional
By the https://opensubsonic.netlify.app/docs/endpoints/createinternetradiostation/ the `homepageURL` is not requirement option
2023-08-02 10:08:49 +00:00
sentriz
637aae9b36 make getTopSongs return an empty list when there's no results
https://github.com/tamland/airsonic-refix/issues/99
2023-07-10 13:25:13 +01:00