What's Changed
This release introduces per-task option management (proxy, headers, user-agent, referer) directly from the task detail drawer, platform-specific tray icons, and several quality-of-life improvements across the codebase.
✨ New Features
- Per-task options management — Override proxy, User-Agent, Cookie, Referer, and Authorization per download via a dedicated Options tab in the task detail drawer, with dirty-state tracking and smooth apply animations
- Per-task proxy toggle — Tri-state proxy selector (None / Global / Custom) for individual downloads, with automatic detection of the current proxy mode
- Platform-specific tray icons — Centralized icon helper with native-resolution icons for macOS, Windows, and Linux
- Pre-release lint checks —
release.shnow runs ESLint and Clippy before tagging to catch issues early
🛠 Improvements
- Configurable resource detection limits — Replaced hardcoded URL detection limits with configurable constants to support batch URLs
- Split-limit hint update — Updated locale strings across all 26 languages to reflect engine hard limits
- ESLint config tiering — Separate thresholds for Vue SFC (1000), test files (500, no per-function limit), and regular TS (350/80) to match each file type's structural characteristics
- Composable refactoring — Extracted
useTaskDetailOptionswith pure utility functions for header parsing, proxy detection, and option diffing
🐛 Bug Fixes
- Tray icon assertion — Replaced length check with
is_emptyfor tray icon image validation
📦 Downloads
| Platform | Architecture | File |
|---|---|---|
| macOS | Apple Silicon · Intel | .dmg
|
| Windows | x64 · ARM64 | -setup.exe
|
| Linux | x64 · ARM64 | .AppImage .deb
|