199 Commits

Author SHA1 Message Date
Aleksey Lobanov
a808c0f868
Base SQL metrics in MetricsWorker (#2002)
* feat: Add metrics worker

* refactor: Add todos for useful for metrics methods

* feat: Run MetricsWorker is Prometheus is Enabled

* refactor: Unused low-level variable was removed in metrics

* feat: No worker for metrics, add more

* refactor: Unnecessary todo removed

* refactor: Remove dead unused constant

* Reduce metrics public interface

Co-authored-by: Deluan <deluan@navidrome.org>
2026-01-02 20:22:01 +00:00
Deluan
2416a06b04
Add meta tags to show cover and share description in social platforms 2026-01-02 20:22:00 +00:00
Deluan
bfa35c11b8
Fix empty entry collection in Shares 2026-01-02 20:21:59 +00:00
Deluan
041f91ad53
Add getShares and createShare Subsonic endpoints 2026-01-02 20:21:59 +00:00
Deluan
b2aac87d1d
More work on Shares 2026-01-02 20:21:58 +00:00
Deluan
04abdf4509
Initial work on Shares 2026-01-02 20:21:58 +00:00
Deluan
1c93c1214a
Fix Album.MaxYear calculation 2026-01-02 20:21:57 +00:00
Kendall Garner
3242ae96b7
Get album info (when available) from Last.fm, add getAlbumInfo endpoint (#2061)
* lastfm album.getInfo, getAlbuminfo(2) endpoints

* ... for description and reduce not found log level

* address first comments

* return all images

* Update migration timestamp

* Handle a few edge cases

* Add CoverArtPriority option to retrieve albumart from external sources

* Make agents methods more descriptive

* Use Last.fm name consistently

Co-authored-by: Deluan <deluan@navidrome.org>
2026-01-02 20:21:18 +00:00
Deluan
6d4ff8c7e5
Some refactor, log message changes 2026-01-02 20:21:18 +00:00
Kendall Garner
2fb60b92ca
ReplayGain support + audio normalization (web player) (#1988)
* ReplayGain support

- extract ReplayGain tags from files, expose via native api
- use metadata to normalize audio in web player

* make pre-push happy

* remove unnecessary prints

* remove another unnecessary print

* add tooltips, see metadata

* address comments, use settings instead

* remove console.log

* use better language for gain modes
2026-01-02 20:21:18 +00:00
Kendall Garner
2cab4a4352
Add Internet Radio support (#2063)
* add internet radio support

* Add dynamic sidebar icon to Radios

* Fix typos

* Make URL suffix consistent

* Fix typo

* address feedback

* Don't need to preload when playing Internet Radios

* Reorder migration, or else it won't be applied

* Make Radio list view responsive

Also added filter by name, removed RadioActions and RadioContextMenu, and added a default radio icon, in case of favicon is not available.

* Simplify StreamField usage

* fix button, hide progress on mobile

* use js styles over index.css

Co-authored-by: Deluan <deluan@navidrome.org>
2026-01-02 20:21:17 +00:00
Deluan
6052243ff1
Optimize playlist cover generation 2026-01-02 20:21:17 +00:00
Deluan
25d61c0456
Find artist.* image in Artist folder 2026-01-02 20:21:16 +00:00
Deluan
d1cf8e9b71
Artwork reader for Artist 2026-01-02 20:21:16 +00:00
Deluan
aa5979c7ea
Add local agent, only for images 2026-01-02 20:21:16 +00:00
Deluan
21bc2a97d3
Don't refresh smart playlists when generating covers 2026-01-02 20:20:20 +00:00
Deluan
a282e53d23
PreCache Playlists CoverArt 2026-01-02 20:20:20 +00:00
Deluan
35ca63143f
Handle "naked" CoverArtIDs (IDs of album, mediafiles and playlists) 2026-01-02 20:20:20 +00:00
Deluan
6380023483
Parse correctly playlist CoverArt ids 2026-01-02 20:20:20 +00:00
Deluan
a65990f657
Fix tests and clean up code a bit 2026-01-02 20:20:20 +00:00
Deluan
2fa35ee0da
Rename DevFastAccessCoverArt to EnableMediaFileCoverArt 2026-01-02 20:20:20 +00:00
Deluan
b398921d76
Created dedicated artwork readers 2026-01-02 20:20:19 +00:00
Deluan
189ff97809
Refactor file type functions 2026-01-02 20:20:19 +00:00
Deluan
514c92997e
Implement new Artist refresh 2026-01-02 20:20:18 +00:00
Deluan
7806ac583f
Add image cache back 2026-01-02 20:20:17 +00:00
Deluan
22cfd3918f
Handle mediafile covers 2026-01-02 20:20:17 +00:00
Deluan
19621597fe
Resize if requested 2026-01-02 20:20:17 +00:00
Deluan
b7aefb3719
Load artwork from embedded 2026-01-02 20:20:17 +00:00
Deluan
e44a9574b9
Remove CoverArtID, fix tests 2026-01-02 20:20:17 +00:00
Deluan
9236e18631
Remove current artwork implementation 2026-01-02 20:20:17 +00:00
Deluan
d201cc4c79
Add all images found for each album in the database 2026-01-02 20:20:17 +00:00
Deluan
4fc0610558
Move album refresh to scanner 2026-01-02 20:20:17 +00:00
Deluan
e8d8fdd8eb
Remove old refresh code 2026-01-02 20:20:17 +00:00
Deluan
1371b601b1
Move cover art discovery (temporarily) to model 2026-01-02 20:20:17 +00:00
Deluan
9cf05a6b60
Moved logic of collapsing songs into albums to model package
(it should really be called domain.... maybe will rename it later)
2026-01-02 20:20:17 +00:00
Deluan
542496b2f3
Replace MinInt/MaxInt with generic versions 2026-01-02 20:20:17 +00:00
Deluan
e0bfb22007
Rename log.LevelCritical to log.LevelFatal 2026-01-02 20:20:16 +00:00
Deluan
ecf3f9b934
Add command line M3U exporter. Closes #1914 2026-01-02 20:20:16 +00:00
Deluan
67181878d5
Some clean-up in criteria package 2026-01-02 20:15:59 +00:00
Zane van Iperen
82c56e1115
Capture "musicbrainz_releasetrackid" tag (#1827)
* db/migration: typo fix

* model: add MbzReleaseTrackID field

* scanner: capture the musicbrainz_releasetrackid tag
2026-01-02 20:15:58 +00:00
Deluan
14f53707b4
Add asasalint linter 2026-01-02 20:15:58 +00:00
Deluan
e6ba5a2229
Only compute version once 2026-01-02 20:14:54 +00:00
Deluan
4d6f803fe2
Fix tracks never "loved" to be selected in Smart Playlists. Refer to https://github.com/navidrome/navidrome/issues/1417#issuecomment-1163423575 2026-01-02 20:14:54 +00:00
Deluan
90bc1981d8
Upgrade Ginkgo to V2 2026-01-02 20:14:21 +00:00
Deluan
69d549d0d0
Add "random" sort option for Smart Playlists 2026-01-02 20:11:58 +00:00
Deluan
08f56cc7c8
Fix potential SQL injection in Smart Playlists 2026-01-02 20:11:58 +00:00
Deluan
e632893e62
Fix logging smart playlist's song count 2026-01-02 20:11:39 +00:00
Deluan
fa51e97a0f
Fix values from annotation table cannot be compared to 0
Solves this issue: https://github.com/navidrome/navidrome/issues/1417#issuecomment-974052454
2026-01-02 20:11:39 +00:00
BIKI DAS
65948a1ccf
Combined multiple appends into a single one (#1464) 2026-01-02 20:09:31 +00:00
Deluan
9d40694ae6
Fix playlist cannot be empty via Subsonic API 2026-01-02 20:09:31 +00:00