real-debrid-downloader/src/main
Sucukdeluxe d71dd3af0b Performance: visiblePackages dep fix + ItemRow date memo + small Object.keys cuts
Five more low-risk hot-path optimizations:

1. visiblePackages no longer re-runs the sort callback on every item update.
   The sort is only meaningful when running && autoSort && >1 packages, so we
   pass null as items dep otherwise. Previously fired the full O(N) sort
   pass on every progress tick even when it would have returned the input
   array unchanged.

2. ItemRow memoizes formattedCreatedAt + displayStatus + statusTitle so a
   row that re-renders because of progress/speed changes no longer pays for
   formatDateTime() and computeDisplayedItemStatus() twice (title+body).

3. resetSessionTotalsIfQueueEmpty: removed redundant Object.keys() check.
   itemCount + packageOrder.length cover the same condition without
   allocating two intermediate arrays.

4. markQueuedAsReconnectWait: replaced Object.keys() array allocation with
   for-in iteration when runItemIds is empty. Saves a 5000-element string
   array allocation every 900ms during reconnect.

5. columnOrderJson useEffect dep: replaced JSON.stringify with cached
   join() + useMemo. Stringifying a 7-element settings array on every
   render was ~2-3ms per render for nothing.

All 140 download-manager tests green. Renderer + main both build clean.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-19 13:46:57 +02:00
..
all-debrid-web.ts Release v1.6.69 2026-03-06 04:17:22 +01:00
app-controller.ts Fix support bundle export freeze and resume prealloc recovery 2026-03-29 03:25:58 +02:00
audit-log.ts Harden support logging and debug setup 2026-03-09 02:47:49 +01:00
backup-crypto.ts Redesign backup system: AES-256-GCM encrypted .mdd format 2026-03-07 16:39:19 +01:00
bestdebrid-web.ts Release v1.6.81 2026-03-06 12:09:39 +01:00
cleanup.ts Harden deferred cleanup races 2026-03-09 17:23:28 +01:00
constants.ts Add Mega-Debrid multi-account support with automatic fallback 2026-03-23 20:12:51 +01:00
container.ts Comprehensive bugfix release v1.6.45 2026-03-05 03:53:28 +01:00
debrid.ts Performance: prune long-lived caches, hoist regexes, idle chart redraws 2026-04-19 12:32:38 +02:00
debug-server.ts Fix Debrid-Link retry recovery 2026-03-10 18:20:19 +01:00
debug-setup.ts Add dedicated rename support logging 2026-03-09 04:48:58 +01:00
download-completion.ts Harden download integrity, extraction safety, and update security 2026-03-28 16:27:21 +01:00
download-manager.ts Performance: visiblePackages dep fix + ItemRow date memo + small Object.keys cuts 2026-04-19 13:46:57 +02:00
extractor.ts Clean up companion metadata files (.sfv, .nfo, .md5) with their archives 2026-04-04 20:31:58 +02:00
extractor.ts.bak Refactor: Extractor in 18 Sektionen reorganisiert 2026-03-10 23:47:02 +01:00
integrity.ts Release v1.4.31 with full bug-audit hardening 2026-03-01 00:33:26 +01:00
item-log.ts Harden download integrity, extraction safety, and update security 2026-03-28 16:27:21 +01:00
link-export.ts Add package and item link export 2026-03-09 04:11:18 +01:00
link-parser.ts Add package and item link export 2026-03-09 04:11:18 +01:00
logger.ts Add support bundle and trace tooling 2026-03-09 02:15:32 +01:00
main.ts Better error logging for non-Administrator/headless server scenarios 2026-04-19 11:53:07 +02:00
mega-web-fallback.ts Refactor: Extractor in 18 Sektionen reorganisiert 2026-03-10 23:47:02 +01:00
package-log.ts Harden download integrity, extraction safety, and update security 2026-03-28 16:27:21 +01:00
realdebrid-web.ts Fix Real-Debrid web login session reuse 2026-03-09 00:03:05 +01:00
realdebrid.ts Add daily traffic limits, auto-sort packages, Debrid-Link multi-key improvements 2026-03-07 02:29:48 +01:00
rename-log.ts Revert daily-log and queue-scope changes back to v1.7.112 state 2026-03-24 10:15:28 +01:00
session-log.ts Comprehensive bugfix release v1.6.45 2026-03-05 03:53:28 +01:00
storage.ts Better error logging for non-Administrator/headless server scenarios 2026-04-19 11:53:07 +02:00
support-bundle.ts Fix support bundle export freeze and resume prealloc recovery 2026-03-29 03:25:58 +02:00
support-data.ts Add app runtime statistics 2026-03-09 04:59:00 +01:00
trace-log.ts Harden type safety and recovery guards 2026-03-10 05:54:19 +01:00
update.ts Harden download integrity, extraction safety, and update security 2026-03-28 16:27:21 +01:00
utils.ts Harden type safety and recovery guards 2026-03-10 05:54:19 +01:00
windows-host-diagnostics.ts Fix support bundle export freeze and resume prealloc recovery 2026-03-29 03:25:58 +02:00