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
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
5613ddbc7f
add slots to dataclasses
...
make folder dataclass frozen
2023-02-21 13:25:01 +03:00
geoffrey45
e700fcd724
add screenshots
2023-02-19 19:44:05 +03:00
geoffrey45
fb294bf436
update readme
2023-02-17 20:44:21 +03:00
geoffrey45
146ea4ab4d
remove print
2023-02-17 18:36:53 +03:00
geoffrey45
509c22c736
add utility to remove prod names from track titles
...
+ move code to handle args and print startup info to other files
+ update app version number
2023-02-17 18:25:32 +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
geoffrey45
b77b1747f1
feat: add migration to move old files to xdg directory
...
+ add db column for migration version
+ handle pre-init migrations
+ handle post-init migration
2023-02-12 03:22:21 +03:00
geoffrey45
97e29c3254
feat: add album dates to artist albums
2023-02-09 21:15:07 +03:00
geoffrey45
1be60f73e4
write sample migration structure
2023-02-07 23:48:59 +03:00
geoffrey45
0b0ff4218a
add "super hits" to compilation album trigger words
2023-02-07 21:27:55 +03:00
geoffrey45
c098025f0e
feat: support ";" as genre separator
2023-02-07 15:29:21 +03:00
geoffrey45
7335882365
add "live in" to live album check strings
2023-02-07 14:19:32 +03:00
geoffrey45
7675c0e5c9
feat: check if album is a concert
2023-02-07 12:50:50 +03:00
geoffrey45
bf0073fcf8
feat: mark albums that contain "best of", "greatest hits", " #1 hits", "number ones" as compilations
2023-02-07 12:40:17 +03:00
geoffrey45
9754c1a522
feat: mark albums that start with "the essential" as compilations
2023-02-07 12:31:00 +03:00
geoffrey45
b1ac3e9a07
check todo at api/folder.py line:60
...
~ everything seems to work fine in Windows too
+ move ProcessArtistColors to Populate
2023-02-03 23:13:40 +03:00
geoffrey45
7b9f5fdb13
fix: disable flask debug
...
remove and revoke last fm api key
2023-02-01 21:03:30 +03:00
geoffrey45
9d288db2de
refactor: LASTFM_API_KEY -> NOT_LASTFM_API_KEY 🤫
2023-02-01 17:55:30 +03:00
geoffrey45
43732ba380
fix: artist and album colors not being assigned when root dir is changed
2023-02-01 16:04:33 +03:00
geoffrey45
7640f2cc1a
add TODO: Move parsing title, album and artist to startup.
2023-02-01 14:48:23 +03:00
geoffrey45
838e19cf0f
fix: errors raised by Pycharm
2023-02-01 14:00:21 +03:00
geoffrey45
95c1524b68
feat: add --no-feat flag to disable extracting featured artists
...
+ support square brackets when extracting featured artists
+ remove feat artists from track title
+ fix dir browser for linux
2023-02-01 13:34:53 +03:00
geoffrey45
7e15680f26
update supported audio files in settings.py
...
+ add win_replace_slash function to format win path strings
+ misc
2023-01-30 15:59:28 +03:00
geoffrey45
6818f9b0e8
handle watchdog's file created event using the on_modified
...
handler
+ move processing thumbnails and album colors to the populate class
+ move processing artist colors behind the populate call in run_periodic_checks
2023-01-25 13:43:09 +03:00
geoffrey45
5b71b95d66
prevent different cased featured artist names.
...
remove "/" as artist separator
2023-01-25 09:41:07 +03:00
geoffrey45
af4221e0c7
feat: exit the Populate function when another one is started
...
+ add test for the extract_fetured_artists_from_title function
2023-01-24 22:40:19 +03:00
geoffrey45
2ba1b0386e
feat: extract featured artists from track title
2023-01-24 18:53:30 +03:00
geoffrey45
df6609e7f4
feat: support watching symlinks in watchdogg.py
...
+ remove code for auto-adding ~/Home to root_dirs during populate
2023-01-24 16:30:17 +03:00
geoffrey45
29e61b31c3
fix: remove favorite tracks whose values are None when getting favs
...
+ sync is_fav state when populating
2023-01-24 02:10:58 +03:00
geoffrey45
22fa3eef40
handle watching ~/ dir
...
+ fix bug that caused duplicate album colors in db
2023-01-23 17:10:05 +03:00
geoffrey45
d676459b9a
feat: if no root dir is set, try ~/Music
...
if there's music in there, add it as a root dir
2023-01-23 10:19:21 +03:00
geoffrey45
bcc4873766
handle XDG_CONFIG_HOME specification ...
...
+ fix bug that caused duplicate artist color entries to db
+ check if app is windows (prep for windows build)
+ remove caribou migrations lib
+ rename all api blueprints to "api"
+ unregister child directories when customizing root dirs
+ misc
2023-01-22 23:57:12 +03:00
geoffrey45
4e6e1f03dc
move imgserver to app/api folder
...
+ add sqlite methods to configure custom root directories
+ add sqlite.settings module
+ remove date and app name from logger messages
+ add api route to browse directories
2023-01-21 18:07:20 +03:00
geoffrey45
3dc9bc1f15
print local and remote app urls when app host is set to "0.0.0.0"
...
+ update app version in settings.py
2023-01-20 22:21:40 +03:00
geoffrey45
b16db22798
update readme
2023-01-15 22:33:20 +03:00
geoffrey45
ccb0192693
update readme
2023-01-15 19:14:31 +03:00
geoffrey45
b404933f89
modify last updated date of a playlist on track added
2023-01-13 20:58:10 +03:00
Mungai Njoroge
198957bcae
Move server code to this repo ( #95 )
...
move server code to this repo
2023-01-13 20:01:52 +03:00