Repository navigation
0.4.0
What's New
🚀 New CLI Interface
UpdateChecker now has a modern command-line interface built with Typer. New CLI options:
| Option | Description |
|---|---|
--config, -c |
Path to config file |
--async/--no-async |
Enable/disable parallel processing |
--threads, -t |
Number of threads for parallel processing |
--entries, -e |
Process specific entries only |
--force |
Force re-download, skip HEAD/MD5 checks |
--verbose, -v |
Enable verbose output |
--gh-token |
GitHub token for API requests |
⚡ Parallel Chunked Downloads
Large files (≥10MB) are now downloaded in parallel chunks for faster transfers. The downloader automatically:
- Detects file size via HEAD request
- Checks if server supports HTTP Range requests
- Falls back to single connection if chunked download isn't supported
Progress shows download speed in human-readable format (KB/s, MB/s, etc.).
🔧 Configuration Improvements
- GitHub Token Support: Add
github_tokenat the top level of your config to avoid rate limits - Chunked Download Control: New
chunked_downloadoption per entry (true,false, ornullfor auto) - Content-Length Check: New
use_content_length_checkoption to avoid re-downloads when file size matches
📝 Other Improvements
- Enhanced logger with byte size formatting and download speed display
- Cleaner code organization with separate downloader module
- PyCharm run configurations included
Breaking Changes
- Entry point changed: Run with
uv run updatechecker(automatically uses new CLI) - Dynaconf removed: Config is now pure YAML - no special syntax required
Upgrading
No config changes required for existing users. The new options are optional and have sensible defaults.
If you were using environment variables or custom entry points, note that the internal module structure has changed:
- Main module renamed from
__main__.pytoupdatechecker.py - Entry point is now
cli:cliinstead of__main__:main
Full Changelog: 0.3.0...0.4.0