59 Commits

Author SHA1 Message Date
mungai-njoroge
4412902312 handle favorites on recently played
+ use client side timestamp on track logger
2023-12-10 13:27:54 +03:00
mungai-njoroge
ddfa7f1b03 add methods to get recently played items 2023-12-03 20:35:13 +03:00
mungai-njoroge
5a420214f2 fix playlist last update
+ create a recently added playlist on get api
2023-12-03 12:56:56 +03:00
mungai-njoroge
7749b4fc3c set up track logging
+ install flask restful
2023-12-01 10:55:07 +03:00
mungai-njoroge
89b05ff80c handle new env vars during build
+ misc
2023-11-08 00:07:55 +03:00
mungai-njoroge
72947203fa set up plugins 2023-11-03 16:15:21 +03:00
mungai-njoroge
4f757e989f redesign progressbars
+ 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
2023-09-27 17:18:52 +03:00
mungai-njoroge
54714a224b ignore unicode characters errors
+ add methods on settings.Keys to verify key !== empty string
2023-09-26 17:59:12 +03:00
mungai-njoroge
f2addf4d0f rewrite api/artist.py to remove artist cache
+ remove processing taylor's version
2023-09-23 18:57:19 +03:00
mungai-njoroge
ad88ab4adb modify Dockerfile
+ add special instructions for @volcs0 for debugging
2023-09-20 03:06:01 +03:00
mungai-njoroge
f2e110a564 fix: UnicodeEncodeError: 'utf-8' codec can't encode character '\udce0' in position 99: surrogates not allowed 2023-09-19 17:45:28 +03:00
mungai-njoroge
bacf68248b rewrite populate.py to minimize db and hdd reads
+ change process name in manage.py
+ update db query to save show albums as single, as an integer
+ enable periodic scans
+ misc
2023-09-11 11:37:36 +03:00
mungai-njoroge
6c0024f699 add setting to show albums with single track as singles
+ add the above setting to db queries file and migration
2023-09-04 19:46:46 +03:00
mungai-njoroge
83bbe69550 show artist decade in genres
+ 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
2023-09-04 11:01:03 +03:00
mungai-njoroge
13475b0630 rewrite remove duplicates to support removing duplicates in albums tracks efficiently
+ remove flags added to client settings page
+ misc
2023-08-29 20:04:30 +03:00
mungai-njoroge
9972f64e8c configure to allow updating artist separators
+ remove ampersand from default
+ misc
2023-08-25 20:09:50 +03:00
mungai-njoroge
71cab5f5ea load settings from db, use api to change settings
+ add route to get all settings
+ add route to set any setting
+ add untested migration to add settings into settings db
+ compress json in api responses using FlaskCompress
+ serve gziped assets if browser accepts encoded files
+ misc
2023-08-24 15:52:09 +03:00
mungai-njoroge
e3a61c109b implement pinning playlists
+ update migrations to add pinned attr to plalist
+ misc
2023-08-22 15:36:43 +03:00
mungai-njoroge
0a703dcc0f A LOTTTT ...
+ fix help text
+ run populate once when -nps flag is used
+ update app version
+ sort tracks by track and disc no. when saving to playlist
+ serialize search results
+ update tags.artist -> tags.artists
+ update tags.albumartist -> tags.albumartists
+ remove artist images from serialized albums
+ add function to serialize artists for cards
+ misc
2023-08-10 10:30:42 +03:00
mungai-njoroge
655fd8bc22 add route to get all tracks in path
+ add routes to save album and artist as a playlist
2023-08-04 13:40:48 +03:00
mungai-njoroge
d9688455fb default migrations value to -1
+ tiny fixes
2023-07-30 15:06:56 +03:00
mungai-njoroge
50aa971972 cleanrup 2023-07-29 07:00:31 +03:00
mungai-njoroge
93de3d2f0c rewrite migrations
+ delete older migrations ... oops
+ change migratrions from "migrations" to "dbmigrations"
+ restructure migrations, order them based on release version
+ add a utils/decorators.py file with a coroutine decorator
2023-07-29 06:46:28 +03:00
mungai-njoroge
a0c51d5f82 add route to save folder as playlist
+ modify playlist table sql
2023-07-27 13:37:07 +03:00
mungai-njoroge
728c6c2def add route to remove playlist banner 2023-07-26 10:56:23 +03:00
mungai-njoroge
6439b512e9 preset mimetypes
+ add db and api methods to remove tracks from playlists
2023-07-21 01:15:57 +03:00
mungai-njoroge
861a854f91 add function to validate albums
+ extract colors in watchdogg
+ rename color db files
2023-07-12 08:56:30 +03:00
mungai-njoroge
f5de09bd09 add last fm similar artists to db table
+ add db methods for the above
+ try and discard last fm store
2023-07-01 01:39:39 +03:00
mungai-njoroge
4a9d6bc3e6 rewrite split_artists parser to remove regex
+ write placehold functions to manage custom separators
2023-06-26 14:21:11 +03:00
mungai-njoroge
88be80b25d fix db insert duplicate unique fields error
+ save album date as timestamp in db
+ Rewrite artist image downloader with multiprocessing.Pool
2023-06-21 13:20:09 +03:00
mungai-njoroge
4d310c39c3 add tests for sqlitemanager util class
+ implement pendulum in date_string_to_time_passed()
+ remove unused bisection_search_string
2023-06-21 12:18:19 +03:00
mungai-njoroge
9d4f7af581 rewrite populate.get_image() to extract a
track thumbnail from the first track in an album that has one.

+ rewrite Populate.remove_modified with sets
+ clean the SqliteManager utility class
+ Rewrite ProcessTrackThumbnails to use a process pool instead of a thread pool
+ rewrite track store's  remove_tracks_by_filepaths to utilize sets
2023-06-21 09:20:56 +03:00
mungai-njoroge
1eac009fde prevent running migrations if is_fresh_install
+ fix: sqlite3.ProgrammingError: Cannot operate on a closed cursor on ProcessAlbumColors()
+ move processing artist images from periodic_scans to Populate
+ bump hash string limit from 7 to 10
+ add last_mod property to database
+ fix: TypeError: '<' not supported between instances of 'int' and 'str' on album page
2023-06-20 16:34:56 +03:00
mungai-njoroge
cc6552cb94 check if track exists in db before sending file 2023-06-19 21:49:13 +03:00
geoffrey45
be7fc26fce add new flags to disable cleaning track and album titles
+ update readme
+
2023-05-05 23:11:56 +03:00
geoffrey45
5d0b59ea60 add recent items to the get_all_favorites api route 2023-04-30 15:38:38 +03:00
geoffrey45
3ef2516210 fix duplicate tracks due to use of extract_feat
~ caused duplicate tracks to have different track hashes
2023-04-17 02:21:42 +03:00
geoffrey45
9bfc1ceed2 add --config flag to modify config path
+ use getters instead of constants in settings classes
+ refactor previous references
+ move get_xdg_config_dir() from settings.py to app.utils.xdg_utils.py
2023-04-17 02:21:42 +03:00
geoffrey45
5487dad27b fix duplicate artist and album color entry in db
+ Remove folder store
+ Reduce fuzzy search score cutoff from 90% to 75%
+ use inheritance to init Artist class
+ misc
2023-03-26 18:01:26 +03:00
geoffrey45
357afeb700 break settings.py into classes 2023-03-26 08:25:00 +03:00
geoffrey45
d43dcbff46 break down store.py into multiple files in a module
+ fix last updated date bug
2023-03-25 03:05:38 +03:00
geoffrey45
32bb3d37e1 add a store method to count the number of tracks in a folder
~ Courtesy of chatgpt3.5
+ add a few a TODO
2023-03-21 22:15:31 +03:00
geoffrey45
d21a834a00 fix get playlist tracks order
+ fix utils.get_home_res_path
2023-03-15 10:01:12 +03:00
geoffrey45
fed62bf7f4 add method and route to fetch similar artists from lastfm 2023-03-12 19:28:41 +03:00
geoffrey45
e3ec9db989 add method and route to search across tracks, albums and artists.
+ break models into separate files
+ same for the utils and setup
2023-03-09 13:08:50 +03:00
geoffrey45
d39c0ea2f8 rewrite sql statements to use parameter binding 2023-02-28 10:30:00 +03:00
geoffrey45
c352037ccd rewrite remove duplicates to retain tracks with highest bitrate
+ bump fuzzy search cutoff to 90
+ remove unicodes from fuzzy search texts
2023-02-26 09:50:45 +03:00
geoffrey45
728f4b8649 fix: prevent duplicate favorite items 2023-02-13 08:59:24 +03:00
geoffrey45
9cb8d372ec remove unused files 2023-02-12 23:40:33 +03:00
geoffrey45
a01501b946 fix: duplicate migration version entries on each startup 2023-02-12 23:36:08 +03:00