Repository navigation
SNATCH 0.6.1 fixes a direct-download resume bug and updates the interface, networking, hashing and ZIP libraries while preserving existing download state.
Changes since 0.6.0
- Do not resume another URL's partial file. Direct downloads handled by yt-dlp now use the same target-name lock and URL ownership record as aria2 downloads. A
<name>.partfile is resumed only when its record belongs to the same URL. An unrelated partial is refused before the downloader starts and is left untouched, with a warning in the GUI. This also covers direct-link retries that fall back from aria2 to yt-dlp; ordinary media-page downloads retain their existing behavior. - Preserve existing resume fingerprints. Upgrade SHA-2 from 0.10 to 0.11 with explicit lowercase hexadecimal formatting. Regression tests check known SHA-256 values so previously written ownership records keep the same representation.
- Respect the Threads proxy. The plugin's auxiliary app-shell request now honors an explicitly configured HTTP(S) proxy. If that request cannot use the selected proxy type, it fails and falls back to the page already fetched by yt-dlp instead of bypassing the proxy.
- Safe shutdown while minimized. Window-close handling runs even when the GUI is hidden. SNATCH requests cancellation and waits for active download workers before allowing the window to close. A regression test checks the cancellation and close veto.
- Updated interface: eframe/egui 0.29 → 0.36.2, with lifecycle, panel, font and drag-and-drop API migration. The old
ab_glyph/unmaintainedttf-parserfont chain is removed. - Updated networking: reqwest 0.12 → 0.13.5, with explicit native TLS to retain Windows Schannel and system-proxy support. HTTP/2 remains disabled in the application configuration.
- Updated archive handling: ZIP 2 → 9.0.2. Tool-package selection handles the new archive-name API and skips undecodable candidate names; existing package/signature tests pass.
- Builds and maintenance: declare Rust 1.99; explicitly enable the X11 and Wayland backends required by the Linux build; separate interface/network/general Dependabot groups; update the CI artifact uploader and isolate push/security concurrency groups.
Download and update
Download snatch-windows-x64.zip, extract it and run snatch-app.exe for the GUI or snatch.exe for the CLI. This release asset is for Windows x64; Linux is checked in CI but no Linux binary is attached here.
To update, finish or cancel active jobs, close SNATCH and replace the application files. Existing configuration and resume records remain in their existing locations. Keep unrelated .part files until you decide how to handle them; SNATCH deliberately refuses to claim them as its own.
The portable ZIP carries an Ed25519-signed manifest under the existing SNATCH publisher key. This is a package signature, not Authenticode; Windows SmartScreen may still warn. No signing-key rotation is included.
English README · Русский README · Verification instructions · Full comparison
Русский
Главное исправление 0.6.1: yt-dlp больше не продолжает чужой <имя>.part при скачивании прямой ссылки с тем же именем файла. Продолжение разрешается только при совпадении записи владельца с URL загрузки. Чужой частичный файл остаётся на месте, а приложение объясняет отказ. Защита действует и при повторной попытке через yt-dlp после отказа aria2. Формат SHA-256 записей продолжения сохранён при обновлении библиотеки.
Дополнительный запрос плагина Threads теперь учитывает HTTP(S)-прокси; неподдерживаемый тип прокси не приводит к прямому запросу в обход него. Закрытие свёрнутого окна отменяет задания и ждёт остановки воркеров.
Обновлены eframe/egui до 0.36.2, reqwest до 0.13.5, SHA-2 до 0.11 и ZIP до 9.0.2. Сохранены Windows Schannel и системные прокси, убрано предупреждение неподдерживаемого ttf-parser. Исправлена Linux-сборка с явным включением X11/Wayland; опубликованный ZIP предназначен для Windows x64.
Для обновления завершите или отмените загрузки, закройте SNATCH и замените файлы программы. Настройки и записи продолжения сохраняются. Архив подписан прежним ключом Ed25519; это не Authenticode и не отмена предупреждения SmartScreen.
Verification and source
- 261 Rust tests passed (2 intentionally ignored); formatting and Clippy with
-D warningspassed on the release commit. - CI and Security both passed for that exact commit. RustSec reported no known dependency vulnerabilities or informational warnings at the release check date, 12 October 2026.
- Fresh native Windows MSVC x64 build; the signed archive passes the project's signature, payload-hash and PE checks. The existing publisher key is retained.
- Source:
bdc796d. - Publisher public-key SHA-256 (Ed25519 SPKI DER):
22f55367a7a9bf635237c2da1e50e4c89338733d7fea5ab616615d75fc620afc.
Verify with the script and trusted key from the official checkout, without extracting or running the ZIP:
python -B scripts/release.py verify .\snatch-windows-x64.zipSHA-256 of snatch-windows-x64.zip (also attached as snatch-windows-x64.zip.sha256):
703f79b6d8fa74129685a17d77a42334d9c0ded729b8e0224872f0e7648e24e9