Features
- feat(transport): share TLS client session cache across NetworkPool transports (#556)
- feat(shutdown): added functionality to shutdown surge when all downloads are done (#538)
- feat: migrate config format to TOML and add CLI management (#515)
- feat: apply worker size heuristic to resumed download (#512)
- feat: support precise per-task worker and chunk size overrides (#504)
- Add confirmation popup for removing downloads (#539)
- Fix
surge serviceadd CLI support for system token retrieval (#536) - Refactor Core Architecture & Eliminate Polling (#522)
- Downloader: coordinated host-scoped rate-limit backoff (replaces per-worker blind retry collapse) (#518)
Fixes
- fix: ignore hidden and build directories in unicode lint test (#565)
- fix: sporadic 'context cancelled' errors when adding downloads via HTTP API (#561)
- fix: refine redirect header forwarding to safely handle cross-origin same-site and cross-site requests (#542)
- fix: emit EventError once after all retries; skip retries for 4xx errors (#541)
- fix/fallback (#520)
- fix: broken fallback to single downloader (#519)
- Fix footer separator character in view.go (#527)
Refactoring & Chores
- refactor: units (#513)
- refactor (#510)
- ci: automate dependabot minor/patch updates (#554)
- Update black color value in surge.toml (#529)
- Change black color value in light theme (#528)
- docs: add FOSS United to acknowledgements (#508)
- chore(deps): bump github.com/kardianos/service from 1.2.4 to 1.3.0 (#532)
- chore(deps): bump github.com/pelletier/go-toml/v2 from 2.4.2 to 2.4.3 (#533)
- chore(deps): bump charm.land/bubbletea/v2 from 2.0.7 to 2.0.8 (#526)
- chore(deps): bump charm.land/lipgloss/v2 from 2.0.4 to 2.0.5 (#524)
- chore(deps): bump charm.land/bubbles/v2 from 2.1.0 to 2.1.1 (#525)