文件最后提交记录最后更新时间
feat(core): switch direct downloader from gopeed to aria2 Gopeed's last release is aging and its SChannel-linked Windows build chokes on modern CDN TLS handshakes (we hit SEC_I_MESSAGE_FRAGMENT on twimg.com). Replace it with aria2 — same short flags (-x/-s/-k carry over verbatim), stricter arg handling, and well-trodden cross-platform builds. Binaries are vendored in-tree at extra/aria2/<os>/<arch>/ rather than pulled from a single GitHub release, because aria2 static builds for Linux / macOS / Windows come from different upstream repos. To keep the deps pipeline unified: - scripts/download-deps.ts grows a "source": "local" branch that copies from extra/<tool>/<os>/<arch>/ into .deps/<os>-<arch>/ instead of fetching from GitHub. Resulting layout matches the rest of the tools, so binaryResolver.ts needs no changes. - scripts/deps-versions.json: gopeed entry removed, aria2 entry added with source:"local" + path:"extra/aria2". - apps/core/internal/core/types.go: BinaryNames[TypeDirect] "gopeed""aria2c". - apps/core/internal/core/schema/loader.go: direct schema's Args map to aria2's flags (-d / -o, plus --console-log-level=notice / --summary-interval=1 / --allow-overwrite=true / --auto-file-renaming=false for parseable output and predictable rerun behaviour). ConsoleReg regexes updated to aria2's summary line format (e.g. "DL:512KiB" for speed, "(83%)" for percent). --check-certificate=false tacked on as a workaround for the SChannel handshake issue on the bundled 1.19.0 Windows build — proper fix is upgrading the vendored binary to a build that links against OpenSSL (e.g. 1.37.0), comment calls that out. - apps/core/.env, Dockerfile, apps/electron/scripts/build.ts, apps/core/README.md: gopeed → aria2c / aria2 references. No DB migration: existing type: "direct" rows keep working, the underlying binary just swaps. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> 1 个月前
feat(core): switch direct downloader from gopeed to aria2 Gopeed's last release is aging and its SChannel-linked Windows build chokes on modern CDN TLS handshakes (we hit SEC_I_MESSAGE_FRAGMENT on twimg.com). Replace it with aria2 — same short flags (-x/-s/-k carry over verbatim), stricter arg handling, and well-trodden cross-platform builds. Binaries are vendored in-tree at extra/aria2/<os>/<arch>/ rather than pulled from a single GitHub release, because aria2 static builds for Linux / macOS / Windows come from different upstream repos. To keep the deps pipeline unified: - scripts/download-deps.ts grows a "source": "local" branch that copies from extra/<tool>/<os>/<arch>/ into .deps/<os>-<arch>/ instead of fetching from GitHub. Resulting layout matches the rest of the tools, so binaryResolver.ts needs no changes. - scripts/deps-versions.json: gopeed entry removed, aria2 entry added with source:"local" + path:"extra/aria2". - apps/core/internal/core/types.go: BinaryNames[TypeDirect] "gopeed""aria2c". - apps/core/internal/core/schema/loader.go: direct schema's Args map to aria2's flags (-d / -o, plus --console-log-level=notice / --summary-interval=1 / --allow-overwrite=true / --auto-file-renaming=false for parseable output and predictable rerun behaviour). ConsoleReg regexes updated to aria2's summary line format (e.g. "DL:512KiB" for speed, "(83%)" for percent). --check-certificate=false tacked on as a workaround for the SChannel handshake issue on the bundled 1.19.0 Windows build — proper fix is upgrading the vendored binary to a build that links against OpenSSL (e.g. 1.37.0), comment calls that out. - apps/core/.env, Dockerfile, apps/electron/scripts/build.ts, apps/core/README.md: gopeed → aria2c / aria2 references. No DB migration: existing type: "direct" rows keep working, the underlying binary just swaps. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> 1 个月前