mungai-njoroge
50eb1657ba
update logo
2023-10-11 23:05:32 +03:00
mungai-njoroge
8fc32d7dd8
downgrade pyinstaller
2023-10-11 20:22:21 +03:00
mungai-njoroge
5919a26083
fix: merging albums
...
+ remove "original" version from soundtrack albums
2023-10-07 10:35:24 +03:00
mungai-njoroge
263379abf3
debunce posthog events to every 5 minutes
2023-09-27 22:06:45 +03:00
mungai-njoroge
d3682e4597
add telemetry method to record app-installed event
2023-09-27 19:30:55 +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
5cf0bb8c42
use try ... finally in build arg handler to revert configs
2023-09-26 16:57:40 +03:00
mungai-njoroge
ba88cf4a23
add telemetry using posthog
...
+ 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
2023-09-25 20:27:20 +03:00
mungai-njoroge
50ebead026
fix issue with Ed Sheeran albums
2023-09-25 12:24:01 +03:00
mungai-njoroge
a629f12e39
rewrite calculating album date in api/artist.py
...
+ add images and track count to created playlist object
2023-09-25 08:30:36 +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
22b1342ff7
add icon to windows dist
2023-09-16 19:48:20 +03:00
mungai-njoroge
23c355d9bf
attempt to add icon to executable
2023-09-16 14:49:35 +03:00
mungai-njoroge
6c8f30bbaf
fix: updating playlist losing pin state on response object
2023-09-15 00:07:40 +03:00
mungai-njoroge
fcb705cb0c
fix: artist albums always sending all albums
...
+ move setproctitle inside if __name__ in manage.py
2023-09-14 21:04:07 +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
e9284de91f
rewrite artist decades genre thing to use math.floor
2023-09-04 19:53:03 +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
5ff3e5d28a
add "&" character to genre separators
...
+ handle r&b genre and rock&roll
2023-09-04 00:49:45 +03:00
mungai-njoroge
da88bbd9cc
write LASTFM_API_KEY to config file
...
+ remove alive bar
2023-08-31 21:36:34 +03:00
mungai-njoroge
4271a6f4a0
add route to trigger Populate
...
+ use instance keys to stop multiple instances of populate
+ move Populate error to a new file
+ misc
2023-08-30 15:58:32 +03:00
mungai-njoroge
8b25a9265f
pretty print help options using tabulate
2023-08-29 20:40:06 +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
26e36ba36f
add thumbnails lg path to be removed in migration
2023-08-28 13:16:12 +03:00
mungai-njoroge
a1c2e9fb19
maintain thumbnail aspect ratio in taglib.extract_thumb
2023-08-28 12:43:20 +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
68c2cf1909
read limit from api request query for search
2023-08-20 23:06:16 +03:00
mungai-njoroge
2471f51d86
extract album version into separate file
2023-08-14 11:01:53 +03:00
mungai-njoroge
27c4924327
add migration to remove the small thumbs path
...
+ misc
2023-08-12 18:23:28 +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
5cf188dd38
save images in save items as playlist
2023-08-08 12:12:33 +03:00
mungai-njoroge
f28d3f00bd
support in_quotes search query
2023-08-06 22:09:39 +03:00
mungai-njoroge
943d6e3590
join routes to save artists, albums and folders into one
2023-08-04 13:56:24 +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
efb6aae927
misc
2023-08-02 14:26:19 +03:00
mungai-njoroge
9c9a187083
create a base class for all migration
...
+ save folder to playlist, sorting by last_mod
2023-07-31 16:44:37 +03:00
mungai-njoroge
782cfc8da8
fix: remove default 50% banner_pos on update playlist image
2023-07-30 15:10:36 +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
d4a1a6ee1a
fix typeerror on colorlib.py
2023-07-26 11:50:01 +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
8b895f5efb
extract thumbnail with overwrite for modified files
2023-07-19 18:06:58 +03:00
mungai-njoroge
18f6593666
handle the FileNotFoundError for os.path.getsize on watchdogg
2023-07-18 16:53:06 +03:00
mungai-njoroge
e70d787580
misc
2023-07-17 11:30:05 +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
4a7416853a
fix album having date = 0
2023-07-09 17:57:14 +03:00
mungai-njoroge
65d21d07da
extract original thumbnail image
2023-07-06 13:52:32 +03:00
mungai-njoroge
6ef3cc3545
add related albums route
2023-07-02 00:11:21 +03:00
mungai-njoroge
95214396e7
Handle ReadTimeout error
2023-07-01 20:39:09 +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
1cf5d38a96
fix duplicate albums with date = 0
2023-06-26 13:17:24 +03:00
mungai-njoroge
dbfa395207
add serializer functions for track and album objects
2023-06-24 16:47:54 +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
a201303bd9
turn off merging albums
2023-05-09 15:24:10 +03:00
geoffrey45
8e59a59ba2
implement merging album versions
...
+ add "limit" parameter to the useBisection function
+
2023-05-09 15:18:30 +03:00
geoffrey45
f6dc28f80d
clean album title on tracks too if cleaning is set to true
2023-05-09 13:54:46 +03:00
geoffrey45
740f45b9ac
add route to open a file in file manager
...
+ try a new approach of cleaning remasters from track titles
2023-05-09 13:25:31 +03:00
geoffrey45
b9f0204225
sort albums in get_artist_albums route
2023-05-08 16:19:38 +03:00
geoffrey45
45bf7570a3
fix arg handlers and album versions route
2023-05-07 14:02:46 +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
51a5502efc
add parsers to clean track titles .ie. remove remaster info
...
+ use getters to read flags
+ use the largest limit to get recent favorites
+ misc
2023-05-05 17:49:59 +03:00
geoffrey45
5d0b59ea60
add recent items to the get_all_favorites api route
2023-04-30 15:38:38 +03:00
geoffrey45
3ddb6295c6
fix get_base_album_title function multiple brackets bug
2023-04-30 14:13:26 +03:00
geoffrey45
c993e0b583
add api route to fetch other album versions
...
+ add parser functions to extract album version
2023-04-23 01:45:08 +03:00
geoffrey45
3d5ee855d8
add methods to extract base album title from an album title string
...
+ add methods to extract album versions
+ implement these methods in the album model class
2023-04-22 15:12:59 +03:00
geoffrey45
76604be1db
rename album title in track object after extract feat from album title
2023-04-17 02:21:42 +03:00
geoffrey45
ac4be71e7b
fix --show-feat and --show-prod flags
2023-04-17 02:21:42 +03:00
geoffrey45
11d1b6ca36
extract feat from album titles
2023-04-17 02:21:42 +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
e5f18f9301
use create_hash to compare album titles for is_single
...
+ add a few string checks for album.is_single
2023-04-17 02:21:42 +03:00
geoffrey45
3f1ae30dd5
add migration to drop album and artist tables
2023-03-27 06:44:11 +03:00
geoffrey45
c465116f3d
remove dups from get_tracks_by_albumhash
2023-03-27 04:35:49 +03:00
geoffrey45
805df18ac3
fix inheritance in Artist model class
2023-03-27 02:45:10 +03:00
geoffrey45
fe6c12d856
use setters to manipulate artist and playlist objects
2023-03-26 18:57:25 +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
79029ae346
add folder count to folder route
2023-03-25 05:26:01 +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
43c480cf3e
remove print statement
2023-03-21 22:16:48 +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
e23f2a6489
add route to fetch album color
2023-03-19 23:37:01 +03:00
geoffrey45
598e3d4c79
return playlist images on get_all_playlists route
2023-03-18 00:40:46 +03:00
geoffrey45
30e3800ded
add more is_compilation check strings
2023-03-15 23:11:42 +03:00
geoffrey45
d21a834a00
fix get playlist tracks order
...
+ fix utils.get_home_res_path
2023-03-15 10:01:12 +03:00
geoffrey45
64bb4f75df
bump lastfm similar artists result limit from 100 -> 250
2023-03-12 19:29:54 +03:00