Releases: lu-zhengda/tsm
Releases · lu-zhengda/tsm
v0.6.0
Full Changelog: v0.5.0...v0.6.0
v0.5.0
Full Changelog: v0.4.0...v0.5.0
v0.4.0
Full Changelog: v0.3.0...v0.4.0
v0.3.0
Full Changelog: v0.2.0...v0.3.0
Full Changelog: v0.2.0...v0.3.0
v0.2.0
Full Changelog: v0.1.1...v0.2.0
v0.1.1 - Security Hardening
Security Fixes
- HTTPS support: auto-detects HTTPS when port is 443
- Safe password input: replaced
sttywithrpasswordcrate (signal-safe, no broken terminal) - Atomic config write: writes to temp file with
0o600permissions, then renames (no TOCTOU race) - Config directory: created with
0o700permissions - Password redaction: custom
Debugimpl hides passwords from logs - Host validation: rejects hosts with URL-injection characters
- Profile name validation: restricted to
[a-zA-Z0-9_-], max 64 chars - TOML error handling: surfaces parse errors instead of silently overwriting
--passwordwarning: help text warns about process list visibility
Other Changes
- Replaced custom base64 with
base64crate - Removed unused
thiserrordependency - Fixed tilde fallback in config path resolution
- Added
.env.example(removed.envwith placeholder credentials)
Install
cargo install transmission-cliv0.1.0
Initial Release
A CLI for Transmission BitTorrent client.
Features
- Torrent management: list, add, start, stop, remove, verify
- Torrent details: info, files
- Speed control: set limits, alt-speed mode
- Session info: session, stats, free space
- Login: interactive credential setup with connection testing
- Config: layered resolution (CLI flags > env vars > config file)
- Profiles: named config profiles for multiple servers
- Security: config file stored with
chmod 600permissions - Output: table (default) and JSON output for scripting
- Shell completions: bash, zsh, fish, powershell, elvish
Install
cargo install --git https://github.com/lu-zhengda/tsm --tag v0.1.0