Commit Graph
27 Commits
Author SHA1 Message Date
Sucukdeluxe 3ed3877ac9 chore: remove all source code comments and internal artifacts
Strip every comment from the source (parsed with the TypeScript compiler so
strings, template literals, regex literals and JSX are never touched), and drop
internal/working artifacts that do not belong in the public repository
(design mockups, internal analysis docs, a stray backup file and an old log).
No functional change: build is green, the full test suite passes.
2026-06-06 04:53:54 +02:00
Sucukdeluxe 653e756010 Harden download integrity, extraction safety, and update security 2026-03-28 16:27:21 +01:00
Sucukdeluxe d9170f4167 Refactor: Extractor in 18 Sektionen reorganisiert 2026-03-10 23:47:02 +01:00
Sucukdeluxe e92cf59d86 Release v1.6.82 2026-03-06 16:43:49 +01:00
SucukdeluxeandClaude Opus 4.6 a1c8f42435 Comprehensive bugfix release v1.6.45
Fix ~70 issues across the entire codebase including security fixes,
error handling improvements, test stabilization, and code quality.

- Fix TLS race condition with reference-counted acquire/release
- Bind debug server to 127.0.0.1 instead of 0.0.0.0
- Add overall timeout to MegaWebFallback
- Stream update installer to disk instead of RAM buffering
- Add path traversal protection in JVM extractor
- Cache DdownloadClient with credential-based invalidation
- Add .catch() to all fire-and-forget IPC calls
- Wrap app startup, clipboard, session-log in try/catch
- Add timeouts to container.ts fetch calls
- Fix variable shadowing, tsconfig path, line endings
- Stabilize tests with proper cleanup and timing tolerance
- Fix installer privileges, scripts, and afterPack null checks
- Delete obsolete _upload_release.mjs

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 03:53:28 +01:00
SucukdeluxeandClaude Opus 4.6 036cd3e066 Add DDownload provider, post-processing status labels, and update changelog
- DDownload (ddownload.com/ddl.to) as new hoster with web login
- Post-processing labels: Entpacken/Renaming/Aufräumen/MKVs
- Release notes shown in update confirmation dialog

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 02:05:16 +01:00
Sucukdeluxe af00d69e5c Switch release/update docs and tooling to Gitea 2026-03-05 00:42:59 +01:00
SucukdeluxeandClaude Opus 4.6 eb42fbabfd Fix update retry: reset abort controller on early return errors
Build and Release / build (push) Has been cancelled
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 18:06:11 +01:00
SucukdeluxeandClaude Opus 4.6 e384199c6e Replace streaming download with chunked buffer download to fix corruption
Build and Release / build (push) Has been cancelled
- Replace Readable.fromWeb() + pipeline with ReadableStream.getReader() loop
- Collect chunks in memory, verify size, then write to disk in one shot
- Add Accept-Encoding: identity to prevent content encoding issues
- Eliminates stream conversion bugs that caused file corruption on some servers

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 17:20:02 +01:00
SucukdeluxeandClaude Opus 4.6 8f186ad894 Fix updater SHA512 mismatch by patching latest.yml filenames and adding integrity retry
Build and Release / build (push) Has been cancelled
- Patch latest.yml during release to use actual filenames (spaces) instead of electron-builder's dashed names
- Add download size validation before SHA512 check to catch incomplete downloads
- Retry download on integrity mismatch (up to 3 passes) with API refresh
- Re-resolve digest from latest.yml on each retry pass

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 17:04:12 +01:00
Sucukdeluxe 20c32d39c8 Harden updater candidate fallback on Codeberg 404s 2026-03-01 16:19:35 +01:00
Sucukdeluxe 43950014b2 Retry updater candidates after hash mismatch 2026-03-01 15:51:13 +01:00
Sucukdeluxe 7795208332 Fix MKV collection cleanup and updater digest verification 2026-03-01 05:01:11 +01:00
Sucukdeluxe 4bcb069ec7 Harden updater integrity checks with latest.yml SHA512 fallback 2026-03-01 03:57:23 +01:00
Sucukdeluxe 508977e70b Add update install progress feedback and collector metrics line 2026-03-01 03:33:18 +01:00
Sucukdeluxe 43bc95b7fc Switch updater and docs from GitHub to Codeberg 2026-03-01 02:40:11 +01:00
Sucukdeluxe 6ac56c0a77 Release v1.4.31 with full bug-audit hardening
Build and Release / build (push) Has been cancelled
2026-03-01 00:33:26 +01:00
Sucukdeluxe 84d8f37ba6 Release v1.4.28 with expanded bug audit fixes
Build and Release / build (push) Has been cancelled
2026-02-28 19:47:46 +01:00
Sucukdeluxe 8700db4a37 Release v1.4.27 with bug audit hardening fixes 2026-02-28 14:12:16 +01:00
Sucukdeluxe 9598fca34e Release v1.4.23 with critical bug audit fixes
Build and Release / build (push) Has been cancelled
2026-02-28 12:16:08 +01:00
SucukdeluxeandClaude Opus 4.6 63fd402083 Release v1.4.20 with comprehensive audit fixes (140 issues) and expanded test coverage
- Speed calculation: raised minimum elapsed floor to 0.5s preventing unrealistic spikes
- Reconnect: exponential backoff with consecutive counter, clock regression protection
- Download engine: retry byte tracking (itemContributedBytes), mkdir before createWriteStream, content-length validation
- Fire-and-forget promises: all void promises now have .catch() error handlers
- Session recovery: normalize stale active statuses to queued on crash recovery, clear speedBps
- Storage: config backup (.bak) before overwrite, EXDEV cross-device rename fallback with type guard
- IPC security: input validation on all string/array IPC handlers, CSP headers in production
- Main process: clipboard memory limit (50KB), installer timing increased to 800ms
- Debrid: attribute-order-independent meta tag regex for Rapidgator filename extraction
- Constants: named constants for magic numbers (MAX_MANIFEST_FILE_BYTES, MAX_LINK_ARTIFACT_BYTES, etc.)
- Extractor/integrity: use shared constants, document password visibility and TOCTOU limitations
- Tests: 103 tests total (55 new), covering utils, storage, integrity, cleanup, extractor, debrid, update

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 06:23:24 +01:00
SucukdeluxeandClaude Opus 4.6 306826ecb9 Add per-candidate retries (3x) for update downloads
Each download URL is now retried up to 3 times with increasing delay
(1.5s, 3s) before falling back to the next candidate URL. Recoverable
errors (404, 403, 429, 5xx, timeout, network) trigger retries.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 19:51:48 +01:00
SucukdeluxeandClaude Opus 4.6 e1286e02af Release v1.4.9 with extraction resume fix and faster update downloads
- Fix extraction status display after restart (shows "Entpacken ausstehend" instead of stale status)
- Fix Start button to trigger pending extractions for already-downloaded packages
- Fix extraction resume when archives already cleaned (recognizes completed state from resume file)
- Reduce update download connection timeout from 8min to 30s per candidate for faster fallback
- Add logging for update download candidates and failures
- Show manual download URL on update failure
- Sequential extraction preserved (one package at a time via queue)
- Extraction properly cancelled on shutdown, resumes on restart

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 19:47:53 +01:00
Sucukdeluxe 333a912d67 Release v1.4.8 with updater fallback recovery and extraction hardening
Build and Release / build (push) Has been cancelled
2026-02-27 19:28:58 +01:00
Sucukdeluxe 6d777e2a56 Harden resume flows and ship v1.1.23 stability fixes
Build and Release / build (push) Has been cancelled
2026-02-27 11:04:52 +01:00
Sucukdeluxe 0e898733d6 Restore in-app updater and add Mega web fallback path
Build and Release / build (push) Has been cancelled
2026-02-27 05:28:50 +01:00
Sucukdeluxe 02370a40b4 Restore update checks and startup notifications
Build and Release / build (push) Has been cancelled
2026-02-27 04:22:00 +01:00