Jesse Bate
687c82cb32
feat: add YTP_MAX_HISTORY to cap history and prevent unbounded DB growth
...
Long-running instances accumulate history indefinitely. As the history
table grows, SQLite COUNT(*), paginated SELECT, and index scans degrade.
YTP_MAX_HISTORY (default: 0 = unlimited) caps the number of completed
download records kept. Enforcement is a hook in DataStore.put(): on
each insertion, the oldest excess entries are immediately evicted from
the in-memory OrderedDict and their deletes are enqueued to SQLite.
DataStore.load() also trims on startup in case the limit was lowered
between restarts. No background tasks, no DB reads needed for the check.
2026-06-10 20:29:18 +09:30
arabcoders
1267dbaf6b
refactor: use single logger namespace
2026-05-28 19:07:11 +03:00
arabcoders
30a0c30d94
refactor: fix slowness in deleting big number of items
...
Co-authored-by: Copilot <copilot@github.com>
2026-04-24 23:18:14 +03:00
arabcoders
55a298e0ff
Refactor: download module into testable chunks
2026-01-13 20:05:01 +03:00
arabcoders
5a5f16c9f8
Refactor: make classes more modular
2025-12-19 20:12:01 +03:00
arabcoders
b36d9fd641
Refactor: migrated whatleft of sync code to async
2025-12-18 18:21:34 +03:00
arabcoders
50f50bed9f
Refactor: do not load history items in DownloadQueue
2025-12-18 17:08:18 +03:00
arabcoders
7a85bcdb5c
Refactor: swap sqlite to aiosqlite and add queued db updates
2025-12-18 16:31:15 +03:00
arabcoders
e4ffa5d77a
Fix: Fix performance regression while loading items.
2025-12-15 17:22:41 +03:00
arabcoders
6d2deedc21
Refactor: change how clear in/completed buttons behave due to changes in how we load history now.
2025-11-16 19:17:33 +03:00
arabcoders
6d9c7d70d9
Feat: update datastore.get_items to support operations
2025-11-14 17:49:01 +03:00
arabcoders
1107567f86
Feat: add paginated history endpoint
2025-11-13 17:15:05 +03:00
arabcoders
669f70d9b8
fixes
2025-09-12 19:34:12 +03:00
arabcoders
2eba728dd2
Refactor event handlers to be asynchronous across multiple modules
2025-09-12 02:55:11 +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
da8358bad6
Further updates on how we handle archive status
2025-08-29 22:11:14 +03:00
arabcoders
472b8cb468
Fixes #344
2025-07-20 16:53:56 +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
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
47484c2d35
make datastore.get key optional.
2025-06-19 20:40:51 +03:00
arabcoders
44226c9a04
when item download fails, trigger item_error event
2025-06-19 19:02:44 +03:00
arabcoders
1f1fbbac01
WIP: more changes to support webview in the future.
2025-06-08 23:45:00 +03:00
arabcoders
93e830f029
in some specific cases, users were unable to delete items from history
2025-04-04 22:09:58 +03:00
arabcoders
f7101f6a38
simplified the codebase and removed all backwards compat flags and checks.
2025-04-01 22:56:28 +03:00
ArabCoders
45878965f4
fixed linting problems
2025-01-28 23:05:59 +03:00
ArabCoders
fdec16e895
mostly linter fixes.
2025-01-28 19:43:51 +03:00
ArabCoders
902244769a
Major code changes.
2025-01-27 19:53:59 +03:00
ArabCoders
2d70de2032
updating python code to be little more clean and implements more type checks.
2024-12-20 21:20:51 +03:00
ArabCoders
fcb2eda4ba
Fixes for default preset.
2024-12-17 18:43:09 +03:00
ArabCoders
c727ab3446
Finalizing migration to nuxt3
2024-12-17 17:07:52 +03:00
ArabCoders
51024c2a9b
some minor app changes =)
2024-12-15 21:28:37 +03:00