Commit graph

455 commits

Author SHA1 Message Date
arabcoders
314752a644 Disallow setting unsupported vcodec. 2025-09-16 16:02:38 +03:00
arabcoders
215a023da8 Cache calls to frequently called functions 2025-09-15 19:34:03 +03:00
arabcoders
d48faed4f7 Minor design update 2025-09-14 22:15:43 +03:00
arabcoders
7ad2bd6358 [FEAT] Add per extractor limits. Closes #421 2025-09-14 21:58:54 +03:00
arabcoders
1ce7c82d9c improve logic for codec selection 2025-09-14 01:30:34 +03:00
arabcoders
38e1828ec3 support using gpu codecs for player 2025-09-13 19:49:48 +03:00
arabcoders
c91f199939 extends tests 2025-09-13 18:35:41 +03:00
arabcoders
393cc6729c More tests 2025-09-12 22:43:20 +03:00
arabcoders
f490c78179 removed deprecated features and flags 2025-09-12 20:38:09 +03:00
arabcoders
669f70d9b8 fixes 2025-09-12 19:34:12 +03:00
arabcoders
5d1eed876b updated tests 2025-09-12 17:09:02 +03:00
arabcoders
63f6ca0cf4 fixed last calls to emit that were awaiting 2025-09-12 11:45:22 +03:00
arabcoders
2eba728dd2 Refactor event handlers to be asynchronous across multiple modules 2025-09-12 02:55:11 +03:00
arabcoders
7a50cb34d8 fix linter issues 2025-09-11 21:49:39 +03:00
arabcoders
fae1d7c577 improved match_str by implementing extended subset. 2025-09-11 02:09:48 +03:00
arabcoders
ae1b6dd470 fixes 2025-09-08 18:07:24 +03:00
arabcoders
d0a11cbcd6 make it possible to ignore item download via conditions 2025-09-08 17:25:40 +03:00
arabcoders
0d6532df5d update conditions to support extras options. 2025-09-08 17:25:40 +03:00
arabcoders
fca82b3cc9 show rss feed logs 2025-09-08 17:25:40 +03:00
arabcoders
adb72f4584 better base_path support. 2025-09-05 12:54:41 +03:00
arabcoders
bdb6d0e36a FEAT: Update default presets 2025-09-03 23:49:19 +03:00
arabcoders
9d5d6595fc FEAT: new TwitchHandler 2025-09-03 22:45:33 +03:00
arabcoders
ff9e173e18 FEAT: Enhance URL handling in Item class to support YouTube video IDs 2025-09-03 21:04:28 +03:00
arabcoders
551daf6b70 removed sentry as we really don't use it for anything. 2025-09-03 21:04:12 +03:00
arabcoders
53949b177a FEAT: Enable file browser feature by default and remove related environment variable 2025-09-03 19:34:55 +03:00
arabcoders
0abaf98b53 FEAT: Enhance DownloadQueue to handle archived items 2025-09-03 18:36:08 +03:00
arabcoders
86952200b5 FEAT: Enhance item retrieval in DataStore and DownloadQueue with flexible attribute search 2025-09-03 18:35:40 +03:00
arabcoders
691f0d5bfc FEAT: Make it possible to limit notify target to specific presets. 2025-09-02 22:36:31 +03:00
arabcoders
6cf4f6b988 Cleanup user python packages dir after each version change. 2025-09-02 18:58:32 +03:00
arabcoders
fa15576608 Refactor logging setup and enhance user site directory management in PackageInstaller and Upgrader 2025-09-02 04:59:07 +03:00
arabcoders
c9af30edda Refactor arg_converter usage to remove logging of removed options in Item and YTDLPOpts classes 2025-09-01 19:35:35 +03:00
arabcoders
cf382f0963 add short ttl on archiver read 2025-09-01 17:14:44 +03:00
arabcoders
1c9a893865 Reimplemented Archive feature 2025-08-30 20:45:17 +03:00
arabcoders
ed4bb1e440 finalizing removed features 2025-08-30 01:50:42 +03:00
arabcoders
db57d6de11 Refactor code for improved type hinting; add unarchive functionality to tasks API and UI. 2025-08-30 01:02:13 +03:00
arabcoders
da8358bad6 Further updates on how we handle archive status 2025-08-29 22:11:14 +03:00
arabcoders
fd999211ef add deprecated notice. 2025-08-29 18:41:13 +03:00
arabcoders
deed79b8d2 major refactor of archive_file handling 2025-08-29 18:41:13 +03:00
arabcoders
19b78c9564 correctly mark status as cancelled. 2025-08-27 19:52:15 +03:00
arabcoders
bfe4ea6354 add cancelled as accepted status 2025-08-27 17:14:49 +03:00
arabcoders
71bd40a2e8 added new endpoint to get urls archive ids 2025-08-27 16:28:19 +03:00
arabcoders
21c7b0f208 Fixes #384 2025-08-27 00:53:08 +03:00
arabcoders
70e06f0122 remove webview in favor of using built-in browser. 2025-08-25 22:24:04 +03:00
arabcoders
3adc4eb062 Sometimes yt-dlp doesn't provide playlist_count, so we need to have fallback. Fixes #384 2025-08-25 18:48:36 +03:00
arabcoders
30830a94e8 fix info extracting expired to use epoch as it is the ended instead of timestamp. 2025-08-25 17:50:47 +03:00
arabcoders
19b9f8dc6c Added support for pausing adding items from playlist. 2025-08-25 17:34:40 +03:00
arabcoders
d9ec7733a1 consider file size when caching ffprobe results. 2025-08-23 20:21:16 +03:00
arabcoders
abf9c7a9d8 feat: add download_info_expires config to manage download info validity 2025-08-22 18:10:22 +03:00
arabcoders
3ebd66fd60 add support for --no-continue 2025-08-20 19:33:20 +03:00
arabcoders
89d4c026c5 Added built-in reference for yt-dlp options. 2025-08-19 22:24:51 +03:00
arabcoders
53b7474069 bump playlist_items_concurrency to 4 by default 2025-08-16 20:06:33 +03:00
arabcoders
8da9d51646 fix breaking change to playlist handling. 2025-08-15 04:44:41 +03:00
arabcoders
a05568f44c make playlist_index works 2025-08-14 11:46:58 +03:00
arabcoders
96149f5e2d Make it possible to pin specific yt-dlp version 2025-08-09 17:27:00 +03:00
arabcoders
00fc97c570 working version of custom fields. 2025-08-07 23:03:34 +03:00
arabcoders
355adfade4 more changes to support custom fields in download form 2025-08-07 21:01:24 +03:00
arabcoders
0ea1d80243 Added initial code to support adding custom fields to NewDownload form. 2025-08-07 18:12:24 +03:00
arabcoders
a30843510e Fixed a bug in DownloadQueue 2025-08-05 18:12:00 +03:00
arabcoders
7b0cb87c32 make it clear we are doing something with playlist items. 2025-08-05 17:56:43 +03:00
arabcoders
1589e73063 Implement a way to mark items from task as already downloaded. 2025-08-05 17:34:07 +03:00
arabcoders
2d82737a3a Add configurable download_path depth env to control auto complete depth 2025-08-02 16:32:56 +03:00
arabcoders
bac1a51a4a Do not register signals in non posix OS 2025-08-01 18:07:28 +03:00
arabcoders
92a6101bbe Add exception catch for sub download task 2025-08-01 17:37:46 +03:00
arabcoders
da6bd95733 Fix threading issue on windows exe 2025-08-01 17:03:26 +03:00
arabcoders
3918fa0b8b hard reset YTDLPOpts. 2025-07-31 23:50:57 +03:00
arabcoders
1fbe80c915 allow custom PPs 2025-07-31 23:50:33 +03:00
arabcoders
918b11fc77 do not consider auto_start False items as stale 2025-07-31 23:50:19 +03:00
arabcoders
36b590cda3 Fix automatic premiere re-queue. 2025-07-27 17:04:14 +03:00
arabcoders
964a24cdd5 completed the ts migration 2025-07-26 21:14:53 +03:00
arabcoders
e44077b99f typo 2025-07-25 20:24:48 +03:00
arabcoders
584d4e107e Added toggle for task handler. 2025-07-25 20:17:51 +03:00
arabcoders
c60c14d674 Fix playlist_autonumber. Closes #351 2025-07-24 23:47:12 +03:00
arabcoders
ca4e3dfd79 Fix upgrading and installing pip packages 2025-07-24 17:22:05 +03:00
arabcoders
3f338dba20 Added event for item in archive 2025-07-24 15:44:32 +03:00
arabcoders
a58921dba5 Showing Premiering right now instead on not live 2025-07-21 16:07:23 +03:00
arabcoders
e07751c41f Minor messaging changes 2025-07-20 17:51:05 +03:00
arabcoders
472b8cb468 Fixes #344 2025-07-20 16:53:56 +03:00
arabcoders
94193b808f removed useless log statement. 2025-07-19 20:49:50 +03:00
arabcoders
a7e8d242c9 Completed the events system upgrade and expanded the notifications events with support for apprise. 2025-07-19 19:45:07 +03:00
arabcoders
0f7f22bdbf removed event type ERROR and migrated it's uses to LOG_ERROR 2025-07-18 21:59:43 +03:00
arabcoders
138a497703 only offload to bg worker when needed. 2025-07-18 21:14:42 +03:00
arabcoders
09c5d7794d Cleaning up the event dispatcher system. 2025-07-18 21:06:09 +03:00
arabcoders
caf60333ea minor improvements to the bg worker 2025-07-18 17:24:19 +03:00
arabcoders
395d01fe4a Remove task ID from completion notification message 2025-07-18 00:32:30 +03:00
arabcoders
112da01105 Major notification update to add initial support for apprise URLs. 2025-07-18 00:10:14 +03:00
arabcoders
47b5967c58 Add the ability to disable temp file handling 2025-07-14 23:00:41 +03:00
arabcoders
9d24fc01b4 Make it possible to cancel download and retain the temp data, ref #332 2025-07-11 18:18:45 +03:00
arabcoders
9ff9735a2f Added the ability to add item in paused state 2025-07-08 22:13:45 +03:00
arabcoders
1239643f97 minor update to store fields 2025-07-08 17:58:56 +03:00
arabcoders
37dab36fc9 support running in pywebview in windows. 2025-07-07 18:37:11 +03:00
arabcoders
ef2094f140 finalize changes for native apps. 2025-07-06 00:08:53 +03:00
arabcoders
eb440dff36 minor fixes for running on windows. 2025-07-05 18:32:14 +03:00
arabcoders
31aa15efba Added file browser actions 2025-07-01 18:06:45 +03:00
arabcoders
ffefc3d9af renamed presets and added optimized preset for mobile devices. 2025-06-28 20:15:29 +03:00
arabcoders
ebb7299053 Implements ytdlp filter logic to our own playlist processing. 2025-06-27 20:12:32 +03:00
arabcoders
25b7aad606 Fix running in subpath again. 2025-06-27 16:31:11 +03:00
arabcoders
da8ecd2722 Added missing playlist_ keys 2025-06-24 22:07:33 +03:00
arabcoders
ccb5b3767f Fix playlist_autonumber 2025-06-24 22:02:59 +03:00
arabcoders
9dd71302f3 implements real throttle for playlist processor. 2025-06-24 21:59:58 +03:00
arabcoders
6ba37faf49 refactor: reorganize imports and add whitespace 2025-06-24 17:59:28 +03:00
arabcoders
44b395aed9 use proper names for all create_tasks 2025-06-24 17:58:48 +03:00
arabcoders
a584ffcfd6 prevent the Download queue from back pressuring the event loop 2025-06-24 17:56:12 +03:00
arabcoders
388ed0bf9d Handle Download queue task exceptions 2025-06-24 17:38:11 +03:00
arabcoders
de304005da make it more clear when item has already been downloaded. 2025-06-24 17:26:03 +03:00
arabcoders
7e29e7b48c Handle tasks exception 2025-06-24 16:26:56 +03:00
arabcoders
a9cb816050 Fix login cookie not being set correctly. Closes #310 2025-06-24 16:08:55 +03:00
arabcoders
43aef86e7e switch from config.version to config.app_version 2025-06-23 16:26:27 +03:00
arabcoders
8dc17071ce print progress hook data if we are running in debug mode. 2025-06-23 14:00:49 +03:00
arabcoders
c367b7a5d3 strip leading/ending whitespace from task data. 2025-06-23 13:37:41 +03:00
arabcoders
74699680ea minor logs update 2025-06-23 01:07:50 +03:00
arabcoders
f6e3c94432 minor changes to the event bus dispatcher 2025-06-23 01:00:36 +03:00
arabcoders
b37d614e27 Migrate configStore to ts 2025-06-22 21:49:07 +03:00
arabcoders
bd695e7067 Remove the redundant usage of AsyncPool and replace it with asyncio semaphore 2025-06-22 19:24:42 +03:00
arabcoders
a81ee127e9 Improved playlist handling 2025-06-22 18:32:56 +03:00
arabcoders
d0630f7415 Change re-queue text to retry 2025-06-22 18:03:12 +03:00
arabcoders
291c46592f improve task logging 2025-06-20 22:16:38 +03:00
arabcoders
7dca15a5aa clean up item object 2025-06-20 20:36:10 +03:00
arabcoders
c4b8bf51d5 Fix sio disconnect event 2025-06-19 23:07:29 +03:00
arabcoders
47484c2d35 make datastore.get key optional. 2025-06-19 20:40:51 +03:00
arabcoders
c3b2e257c9 For youtube handler, if item_error events received, remove the item from queued ids. 2025-06-19 19:03:40 +03:00
arabcoders
44226c9a04 when item download fails, trigger item_error event 2025-06-19 19:02:44 +03:00
arabcoders
f50708852a As we no longer need to update each time yt-dlp updates, we going to use simver 2025-06-18 22:08:11 +03:00
arabcoders
8a3673bc07 added playlist items concurrency support. 2025-06-18 19:58:58 +03:00
arabcoders
872d85c458 add log entry when playlist processing is completed. 2025-06-18 18:36:55 +03:00
arabcoders
690ecf834f reduce youtube task handler logging 2025-06-18 18:26:10 +03:00
arabcoders
cf647cb8bf Fix missing parameter 2025-06-18 17:25:27 +03:00
arabcoders
f6c44245f6 make the task handler timer configurable 2025-06-18 17:23:42 +03:00
arabcoders
888ab30bfc Allow task handler to work even if no timer is set. 2025-06-18 17:03:30 +03:00
arabcoders
0345da6468 handle ping endpoint logging better 2025-06-17 20:00:03 +03:00
arabcoders
8694e82965 minor design update 2025-06-17 17:24:52 +03:00
arabcoders
249bb43c15 RSS feed support for youtube channel/playlist. 2025-06-16 20:03:04 +03:00
arabcoders
4ee0a9962b Add new service for dependency injection. 2025-06-16 19:45:59 +03:00
arabcoders
ba650fe2bc minor changes 2025-06-16 19:45:02 +03:00
arabcoders
3708734428 minor status name changes 2025-06-16 15:50:24 +03:00
arabcoders
ffcae45d9b the ability to mark notification as low priority to bypass the toast 2025-06-15 19:35:57 +03:00
arabcoders
784671cb24 Fix premiere re-queue. 2025-06-15 18:45:18 +03:00
arabcoders
367d4a1aeb Fixed bug in auth handler. 2025-06-15 16:37:31 +03:00
arabcoders
4367fb0937 Add option to remove item from archive, and minor ui updates. 2025-06-14 21:29:25 +03:00
arabcoders
1c8de32e72 tag premiere video correctly. 2025-06-14 01:07:01 +03:00
arabcoders
bb41eadde7 add the ability to prevent downloading youtube premiere initial stream. 2025-06-14 00:59:57 +03:00
arabcoders
a478e8e58d minor design update 2025-06-13 21:22:55 +03:00
arabcoders
5212dfeeaa Refactor HttpSocket to be more manageable and more modular. 2025-06-13 01:02:31 +03:00
arabcoders
c1f8fd5f58 rename api namespace 2025-06-13 00:45:46 +03:00
arabcoders
400cf7bec3 completely refactored HttpAPI into more manageable routes. 2025-06-12 00:57:37 +03:00
arabcoders
698791b7fc minor design update for index page. 2025-06-10 13:58:18 +03:00
arabcoders
294ec31e94 completed path migration 2025-06-10 12:29:21 +03:00
arabcoders
e42af75137 load preset cookies in all cases. 2025-06-10 12:27:12 +03:00
arabcoders
6c8fd05886 WiP: More migration to Path 2025-06-10 01:08:44 +03:00
arabcoders
93ff749dee We no longer auto load cookies.txt from config path. it must be set via the ytdlp.cli or preset. 2025-06-09 23:19:52 +03:00
arabcoders
b1bc399a0c WiP: more changes to classes to support Path 2025-06-09 00:47:11 +03:00