The BitTorrent protocol provides one of the fastest ways to download large files from the internet, but to take advantage of it you need to install a torrent client. Transmission is one such client and it benefits from an extremely small resource footprint as well as the fact that it is incredibly easy to use.
The client is written in objective-c which means, on a Mac, that it integrates tightly with OS X and uses Growl notification and dock badges to keep you informed about the status of the program. Besides speed and low resource requirements, Transmission includes everything you would expect to find in a torrent client.
In addition to the program itself, there is also a web interface for download management, peer exchange, support for magnet links, global and torrent by torrent speed limiting and much more.
One of the key benefits of Transmission over other torrent clients is the number of add-ons that are available. Browse through the add-ons directory and you will find everything from the ability to control torrents from your mobile to an updated web interface and much more.
There are a number of torrent clients to choose from, but Transmission's speed and extension options means that it is well worth a look.
What's new in 3.00?
- Allow the RPC server to listen on an IPv6 address (#161)
- Change TR_CURL_SSL_VERIFY to TR_CURL_SSL_NO_VERIFY and enable verification by default (#334)
- Go back to using hash as base name for resume and torrent files (those stored in configuration directory) (#122)
- Handle "fields" argument in "session-get" RPC request; if "fields" array is present in arguments, only return session fields specified; otherwise return all the fields as before
- Limit the number of incorrect authentication attempts in embedded web server to 100 to prevent brute-force attacks (#371)
- Set idle seed limit range to 1..40320 (4 weeks tops) in all clients (#212)
- Add Peer ID for Xfplay, PicoTorrent, Free Download Manager, Folx, Baidu Netdisk torrent clients (#256, #285, #355, #363, #386)
- Announce INT64_MAX as size left if the value is unknown (helps with e.g. Amazon S3 trackers) (#250)
- Add TCP_FASTOPEN support (should result in slight speedup) (#184)
- Improve ToS handling on IPv6 connections (#128, #341, #360, #692, #737)
- Abort handshake if establishing DH shared secret fails (leads to crash) (#27)
- Don't switch trackers while announcing (leads to crash) (#297)
- Improve completion scripts execution and error handling; add support for .cmd and .bat files on Windows (#405)
- Maintain a "session ID" file (in temporary directory) to better detect whether session is local or remote; return the ID as part of "session-get" response (TRAC-5348, #861)
- Change torrent location even if no data move is needed (#35)
- Support CIDR-notated blocklists (#230, #741)
- Update the resume file before running scripts (#825)
- Make multiscrape limits adaptive (#837)
- Add labels support to libtransmission and transmission-remote (#822)
- Parse session-id header case-insensitively (#765)
- Sanitize suspicious path components instead of rejecting them (#62, #294)
- Load CA certs from system store on Windows / OpenSSL (#446)
- Add support for mbedtls (formely polarssl) and wolfssl (formely cyassl), LibreSSL (#115, #116, #284, #486, #524, #570)
- Fix building against OpenSSL 1.1.0+ (#24)
- Fix quota support for uClibc-ng 1.0.18+ and DragonFly BSD (#42, #58, #312)
- Fix a number of memory leaks (magnet loading, session shutdown, bencoded data parsing) (#56)
- Bump miniupnpc version to 2.0.20170509 (#347)
- CMake-related improvements (Ninja generator, libappindicator, systemd, Solaris and macOS) (#72, #96, #117, #118, #133, #191)
- Switch to submodules to manage (most of) third-party dependencies
- Fail installation on Windows if UCRT is not installed