+ move post processing of tags to the track model
+ rebuild stores on settings update via API
+ check files from the store instead of the db when streaming
+ remove deprecetated table columns
+misc
+ port populate to new db interface
+ add genrehashes and hash info to tracks
+ properly structure new db table files
+ move helpers to dedicated utils file
+ move settings from db to config file
+ move artists, albums, auth and favorites endpoint to new db interface
+ use folder store to index filepaths
+ paginate favorite pages
+ 56 moretiny changes 😅
+ ditch the LAST FM API KEY thing
+ expose the Musixmatch urls
+ use the kerve last fm api to download similar artist data
+ use google.it instead of the Google public dns to check internet connectivity (to make it work in all environments)
+ return og Dockerfile to fix ARM support
.ie. stop relying on folder last mod date, and use the latest file from the folder
+ bump watchdog to v4
+ add WIP docs (stashed in .github/code.docs for now)
+ fix favorites endpoint returning items less than limit
+ add endpoint to remove get silence padding
+ add 'the ulitimate' and 'compilation' to compilation album filters
+ misc
Add dataclass and pathlib imports in taglib.py
Add clean_filename, ParseData, and extract_artist_title functions in
taglib.py
Modify get_tags function in taglib.py to use extract_artist_title
function
Modify LyricsProvider class in lyrics.py to add timeout parameter in
session.get
Remove parse_artist_from_filename and parse_title_from_filename
functions in utils/parsers.py
Add split_artists function in utils/parsers.py
Remove parse_artist_from_filename and parse_title_from_filename
functions in utils/parsers.py
Add remove_prod function in utils/parsers.py
Refactor code and improve code readability
+ hide some progressbars
+ rewrite telemetry into a class
+ remove obsolete start info logs
+ update contributing.md to include contributing.md
+ send posthog event in a bg thread
+ related side effects
+ move build variables into a python file
+ rewrite logic to check if there's an internet connection
+ move IS_BUILD into settings
+ update pyintaller to 6.0.0
+ update other packages to latest
+ assign default artist separators if db is empty
+ add instrumental to album version
+ check if album is a single by checking og_title and current title
+ hard code juice wrld artist name in model
+ set album aritst to first artist if track has no album artist
+ rewrite get_base_album_title regex to use existing album versions
+ misc