Commit Graph

374 Commits

Author SHA1 Message Date
Miraclx f7c9fed044
Include album art cover size in stats 2020-05-06 11:19:08 +01:00
Miraclx 09c5765dcb
Include extra unimplemented flags 2020-05-06 01:54:01 +01:00
Miraclx 66d2ef721a
Better error handling for query-related errors 2020-05-06 01:52:03 +01:00
Miraclx 1144c2fe6f
Skip showing totalBytes if its not defined 2020-05-03 21:41:14 +01:00
Miraclx 9e4d789dd8
Update retryHandler after libxget update including the meta field 2020-05-02 07:54:48 +01:00
Miraclx f23753704f
Fix bug showing "Download complete" before actually completing the download 2020-05-02 04:23:25 +01:00
Miraclx cc09a29899
Add support for parsing width and height from within config objects 2020-05-01 05:54:58 +01:00
Miraclx a7d294ce2c
Add CLI flag and config field for defining preferred cover art dimensions 2020-05-01 05:41:16 +01:00
Miraclx 56435f91e5
Added feature for individual services' album art url parsing based on width, height 2020-05-01 04:51:07 +01:00
Miraclx 1671fc1e0a
Add a key to make error message more descriptive 2020-05-01 04:38:06 +01:00
Miraclx e3c2ecd56c
Tweak code to workaround showing an empty array on help 2020-05-01 04:37:25 +01:00
Miraclx 955a1f1f4d
CLI: Modify atomicParsley not found message as it covers cases where what's available isn't a binary 2020-05-01 02:32:21 +01:00
Miraclx d56aa4324e
Handle, parse and merge the config spec collated from the --concurrency option 2020-04-23 08:41:36 +01:00
Miraclx 3c79a47c5d
Define repeatable logic for handling the concurrency flag 2020-04-23 08:40:51 +01:00
Miraclx 9d02379e00
Removed deprecated logic 2020-04-23 08:40:10 +01:00
Miraclx 2da890c2b6
Update the unimplemented concurrency CLI flag to use more specific key-value pairs 2020-04-23 06:55:38 +01:00
Miraclx fc13e7908b
Add concurrency feature specification in conf file with optimized defaults 2020-04-23 06:33:41 +01:00
Miraclx 3d209e8194
Define defaults object to be merged with file config 2020-04-23 06:16:44 +01:00
Miraclx 7e14040dc0
Propagate & print caught errors in the final postprocessor list 2020-04-23 06:14:50 +01:00
Miraclx cdab463077
Replace the feedMeta with audioSource. Misreferenced property 2020-04-23 06:13:49 +01:00
Miraclx 43ff91cd3a
Fix directory inexistence bug by ensuring directory creation before other post processing events 2020-04-23 06:12:05 +01:00
Miraclx f76f2f7a60
Properly report failure code/reason for images as done with the raw audio 2020-04-23 06:10:19 +01:00
Miraclx cad1364d08
Convert emitted errors to proper objects 2020-04-23 06:09:25 +01:00
Miraclx c75fe7c2da
Properly ignore other segment errors when one has caused whole rejection 2020-04-23 06:08:12 +01:00
Miraclx b82742d2b1
Add support for identifying which chunk of a segment was retried 2020-04-23 06:05:49 +01:00
Miraclx af9a2c2d39
Hint to new feature: filtering out explicit 2020-04-21 08:03:47 +01:00
Miraclx 27c8278ac6
Add CLI flag: --cover-size 2020-04-21 08:03:15 +01:00
Miraclx f23e5a4dcc
Reorder CLI flags 2020-04-21 07:58:51 +01:00
Miraclx 74c1e7e381
Update author field within package.json to support node's expansion 2020-04-21 07:57:58 +01:00
Miraclx db1aaed46f
CLI: Add sorted stats for skipped, passed and failed tracks 2020-04-21 03:29:02 +01:00
Miraclx 31c787e23f
Show change track post-download text to reflect actual event 2020-04-21 03:27:20 +01:00
Miraclx 545038f2f5
Standardize download interrupt messages 2020-04-21 03:26:24 +01:00
Miraclx 35d5eaa119
Major Commit: Switch to AsyncQueue for handling queries 2020-04-21 03:25:27 +01:00
Miraclx 3d6530e5fe
Support unencoded errors by printing their content 2020-04-19 05:58:50 +01:00
Miraclx 48ce0150ed
Major Commit: Breakdown track processes into individual queues to induce manageable concurrency 2020-04-19 05:57:58 +01:00
Miraclx 0a5769f5c9
Skip catching an error rather, insulating the event 2020-04-19 05:54:59 +01:00
Miraclx 5783c827ec
Fix timeout bug 2020-04-19 05:54:16 +01:00
Miraclx e0d0e7add0
CLI: await track response to support cases of returned promises 2020-04-13 17:33:54 +01:00
Miraclx 320393b5bc
Standardise inclusion of associated data count. ntracks for albums and playlists, nalbum for artists 2020-04-13 17:24:02 +01:00
Miraclx 585389cc42
Eslint Rules: Ignore function called before its definition 2020-04-10 00:58:18 +01:00
Miraclx 36e76f2f5f
Update CLI after async_queue update 2020-04-10 00:57:26 +01:00
Miraclx 4b068e0ef3
Add support for handling errors with a function 2020-04-07 02:54:27 +01:00
Miraclx 7982f13a3b
Rewrite asynchronouslyProcessTracks method to utilize the AsyncQueue 2020-04-07 02:52:49 +01:00
Miraclx 71219e3b23
AtomicParsley: Skip undefined values 2020-04-07 02:52:39 +01:00
Miraclx 8b1cc72ff4
Base attempt at utilizing the async queue to pre-process tracks 2020-04-05 04:13:36 +01:00
Miraclx 99eb1c24f9
Skip over artist genres wherever absent 2020-04-01 01:22:53 +01:00
Miraclx d851928707
Include ntracks property within the playlist object 2020-03-31 00:59:17 +01:00
Miraclx 23481fbb2e
Add apple music specification for default storefront 2020-03-26 21:44:21 +01:00
Miraclx d55be6af6c
Add base implementation support for the --storefront flag 2020-03-26 18:28:37 +01:00
Miraclx af6292657f
Prioritize the `P` type copyright as opposed to the `C` type copyright 2020-03-26 01:13:10 +01:00
Miraclx 65e45cf0a4
Defined methods per-service for checking for authentication properties like tokens to be saved within the config 2020-03-26 00:46:20 +01:00
Miraclx d31c1cac63
Add unimplemented flag for future concurrency support 2020-03-25 23:57:44 +01:00
Miraclx 4bfa7dadd0
Add unimplemented flag for future conf-file path specification 2020-03-25 23:57:44 +01:00
Miraclx a04417446b
Persist to conf.json in project root directory only 2020-03-23 01:27:33 +01:00
Miraclx 2779467354
Add method for checking if a service can try to authenticate 2020-03-23 00:22:20 +01:00
Miraclx 7612f53edb
Standardize return codes 2020-03-23 00:19:40 +01:00
Miraclx a968dc791f
Catch and report freyr constructor errors 2020-03-23 00:12:29 +01:00
Miraclx 10babcf546
Ensure configuration file can be loaded and parsed appropriately. 2020-03-23 00:12:12 +01:00
Miraclx 9de41be701
Pass serverOpts as a third argument through freyr to the service constructor 2020-03-22 23:46:52 +01:00
Miraclx 1e37ab3bfc
Revert back to using a plain configuration file. 2020-03-22 21:16:47 +01:00
Miraclx 5a3955f30c
Request individual album metadata as artist albums list might not always be complete 2020-03-22 02:33:41 +01:00
Miraclx de577ec1c7
Implement new method for asynchronously track pre-processing 2020-03-22 02:32:53 +01:00
Miraclx 333b4838d4
Add feature allowing to asynchronously load audio source and feed 2020-03-22 02:31:36 +01:00
Miraclx 19869e9241
Skip matching milli secs to support cases without them 2020-03-18 19:32:19 +01:00
Miraclx 31e5dc2417
Only show followers if the property is present 2020-03-15 21:06:28 +01:00
Miraclx 0ee5b71511
Add timeout option 2020-03-15 19:03:58 +01:00
Miraclx 5d5897ca68
Asynchronously process fragment streams rather than sequentially. 2020-03-15 19:03:05 +01:00
Miraclx 3cdc938807
Return null if invalid object construct. In turn, invalidate the query 2020-03-15 19:00:59 +01:00
Miraclx cee8aef385
Merge remote-tracking branch 'github/master' 2020-03-15 18:37:16 +01:00
Miraclx 3d69ce6522
Unify type property based on server response 2020-03-15 18:33:18 +01:00
Miraclx 924b55b3c3
Extend trackName if playlist or album compilation 2020-03-15 18:33:18 +01:00
Miraclx 57541d1cf0
Unify return err code for stage directory errors: 3 2020-03-15 18:33:18 +01:00
Miraclx fe296480c9
Check if working directory exists before proceeding 2020-03-15 18:33:18 +01:00
Miraclx 7ece1e5508
Bug fix: Typo compilation instead of collection 2020-03-15 18:33:18 +01:00
Miraclx 0dd8d1dd4f
Bug fix: -f redundancy. undefined --filter redefined to -x 2020-03-15 18:33:18 +01:00
Miraclx 393be4f09b
Show album type when querying albums 2020-03-15 18:33:18 +01:00
Miraclx 7b4d6b2a91
Support compilation collation 2020-03-15 18:33:18 +01:00
Miraclx 4494775b6a
Indicate whether or not track is part of a compilation 2020-03-15 18:33:18 +01:00
Miraclx 42d8f788a5
Embed source name within audio file 2020-03-15 18:33:18 +01:00
Miraclx aff261593a
Appropriate metadata definition 2020-03-15 18:33:18 +01:00
Miraclx babc48e309
Configure operation by distinguishing between an album and a compilation 2020-03-15 18:33:18 +01:00
Miraclx f7a2d4aa82
Unify return err code for stage directory errors: 3 2020-03-09 07:19:35 +01:00
Miraclx fbadd10ff0
Check if working directory exists before proceeding 2020-03-09 07:17:38 +01:00
Miraclx fb8266d0ec
Bug fix: Typo compilation instead of collection 2020-03-09 07:04:36 +01:00
Miraclx c94b525f70
Bug fix: -f redundancy. undefined --filter redefined to -x 2020-03-09 07:02:19 +01:00
Miraclx a8a799e14b
Show album type when querying albums 2020-03-09 07:01:32 +01:00
Miraclx 9a7af7bffb
Support compilation collation 2020-03-09 07:00:25 +01:00
Miraclx 12a8698a57
Indicate whether or not track is part of a compilation 2020-03-09 06:44:34 +01:00
Miraclx 3cfb3eaecc
Embed source name within audio file 2020-03-09 06:42:51 +01:00
Miraclx c52d528a3a
Appropriate metadata definition 2020-03-09 06:42:02 +01:00
Miraclx 0acdc4175e
Configure operation by distinguishing between an album and a compilation 2020-03-09 06:41:25 +01:00
Miraclx c541850f09
Create playlists for album collections 2020-03-08 05:50:13 +01:00
Miraclx a8a3fa0ecd
Show album genres, if any is specified 2020-03-08 05:49:50 +01:00
Miraclx 4fe0389a65
Removed extraTrackProps for uniformity 2020-03-08 05:48:55 +01:00
Miraclx 0beb5b5996
Better track processing
• Request multiple URIs, caching each result
• Efficient caching for objects to maximise efficiency
• Split URIs to multiple requests for each request
• Request tracks separate from group objects such as Album tracks, artist albums, playlist tracks
2020-03-08 05:47:20 +01:00
Miraclx dc6761d21c
Show artist follower count 2020-03-08 05:40:45 +01:00
Miraclx ae5dbeabec
Show artist followers 2020-03-08 05:36:18 +01:00
Miraclx cb11b27d4b
Print message or entire reason 2020-03-08 04:53:25 +01:00
Miraclx b4805c3538
Add storefront cli flag (unimplemented) 2020-03-06 07:48:54 +01:00
Miraclx 39389f2efa
Skip some metadata if not provided 2020-03-06 07:48:34 +01:00
Miraclx e222892f72
Skip re-requesting for individual album data after 2020-03-06 07:41:38 +01:00
Miraclx ed33589874
Ignore falsey value specification 2020-03-06 07:38:52 +01:00
Miraclx 62b7845ecb
Skip requesting album information on a per-track basis 2020-03-06 07:34:30 +01:00
Miraclx 1dfc26f6f0
Hide artist genre in absence of one 2020-03-06 07:31:03 +01:00
Miraclx 3d14902bba
Typo fix: genres 2020-03-06 07:30:14 +01:00
Miraclx 78215e33d3
Remove sortOrder 2020-03-06 07:29:17 +01:00
Miraclx 1bf9a237e7
Translate date to uniform YYYY-MM-DD format 2020-03-06 07:28:49 +01:00
Miraclx 650aff6e5e
Include album_type in wrapped album presentation 2020-03-06 07:27:31 +01:00
Miraclx f82321a430
Standardized artist properties to an array of names 2020-03-06 07:25:49 +01:00
Miraclx c1cca9ae3d
Ensure authentication server is closed immediately after authentication 2020-03-06 07:21:05 +01:00
Miraclx 5d6ff88e79
Date.now() rather that new Date() 2020-03-04 03:02:59 +01:00
Miraclx f3bfcc554d
format cli help manual 2020-03-02 16:53:49 +01:00
Miraclx ff2c7b485d
Defined constructs to check for the presence of AtomicParsley and react appropriately 2020-03-02 05:17:05 +01:00
Miraclx 9040273068
Show custom error if any 2020-03-02 05:16:26 +01:00
Miraclx 59edabf9ad
Check for and react to custom errors 2020-03-02 05:15:39 +01:00
Miraclx 87fdb1ffc8
Format alignment 2020-02-27 14:29:28 +01:00
Miraclx 45758c32f1
Extend embedder err object if any with stdout and err code 2020-02-27 14:28:32 +01:00
Miraclx 3f5d5f7137
Format: uniformly lowercase descriptions 2020-02-27 04:53:20 +01:00
Miraclx f859e53f30
Strictly call function to generate stream requests in case of an error 2020-02-27 04:17:48 +01:00
Miraclx 50099828e0
Add flag `-f` to facilitate overwrite of existing tracks 2020-02-27 04:17:04 +01:00
Miraclx bd5a525f1a
Add support for creating playlists from all processed tracks 2020-02-27 03:57:25 +01:00
Miraclx 0ac10bdd47
Support m3u tagging with extra metadata 2020-02-27 03:56:47 +01:00
Miraclx e6f7485b13
Handle cases where resolution values are falsey 2020-02-27 03:50:49 +01:00
Miraclx 168243d007
Add core cli 2020-02-26 20:41:50 +01:00