Transmission Changelog

What's new in Transmission 4.0.5

Dec 9, 2023
  • HIGHLIGHTS:
  • Fixed 4.0.0 bug where the IP address field in UDP announces were not encoded in network byte order. [BEP-15]. (#6132)
  • Fixed a bug that incorrectly escaped JSON strings in some locales. (#6005, #6133)
  • Fixed 4.0.4 decreased download speeds for people who set a low upload bandwidth limit. (#6134)
  • ALL PLATFORMS:
  • Fixed bug that prevented editing trackers on magnet links. (#5957)
  • Fixed HTTP tracker announces and scrapes sometimes failing after adding a torrent file by HTTPS URL. (#5969)
  • In RPC responses, change the default sort order of torrents to match Transmission 3.00. (#5604)
  • Fixed tr_sys_path_copy() behavior on some Synology Devices. (#5974)
  • macOS Client:
  • Support Sonoma when building from sources. (#6016, #6051)
  • Fixed early truncation of long group names in groups list. (#6104)
  • Qt Client:
  • Fix: only append .added suffix to watchdir files. (#5705)
  • GTK Client:
  • Fixed crash when opening torrent file from "Recently used" section in GTK 4. (#6131, #6142)

New in Transmission 4.0.3 (Apr 18, 2023)

  • All Platforms:
  • Fixed 4.0.2 higher CPU load while downloading. Regression introduced by #5167. (#5266, #5273)
  • Fixed 4.0.0 bug where the torrentGet RPC method returned wrong trackerStats.tier values. (#5274)
  • Fixed 4.0.0 HTTP announce behavior with bind-address-ipv* settings. (#5296)
  • Fixed 4.0.0 bug in code that detects the computer's IPv6 support. (#5312)
  • Silenced 4.0.0 minor log warnings for cross_seed_entry and uid entries in torrent files. (#5365)
  • When adding a duplicate torrent via the RPC API, the return value now matches Transmission 3's return value. (#5370)
  • Fixed use of metainfo display-name as a fallback name. (#5378)
  • Updated torrent Peer ID generation to happen once per session, even for public torrents. (#5233)
  • macOS Client:
  • Added support for non-UTF-8 magnets. (#5244)
  • Fixed potential memory leak in tr_strv_convert_utf8(). (#5264)
  • Fixed crash on launch from tapping on a notification. (#5280)
  • Qt Client:
  • Fixed 4.0.2 FTBFS on Qt 5.13. (#5238)
  • GTK Client:
  • Fixed 4.0.0 preferences dialog being too large for small displays. (#5276, #5360)
  • Fixed 4.0.0 regression of percents, speeds, sizes, etc. not being i18nized properly. (#5288)
  • Fixed FTBFS in GTKMM 4.10. (#5289, #5295)
  • Web Client:
  • Fixed confusing Inspector UI when waiting for initial data from the server. (#5249)
  • Fixed a keyboard shortcut conflict. (#5318)
  • Turned off keyboard shortcuts when input fields have focus. (#5381)
  • Show announce URL's origins in the inspector's tracker list. (#5382)
  • Added missing date-added field in the Inspector's info tab. (#5386)
  • Daemon:
  • Set the log level sooner at startup to ensure events aren't missed. (#5345)
  • transmission-remote:
  • Fixed 4.0.0 bug in the display of how much of a torrent has been downloaded. (#5265)
  • Everything Else:
  • Bumped fallback version of libdeflate from v1.17 to bugfix release v1.18. (#5388)
  • Documentation improvements. (#5278)

New in Transmission 4.0.2 (Mar 19, 2023)

  • HIGHLIGHTS:
  • Fixed 4.0.1 bug where some torrents thought they were magnet links. (#5025)
  • Fixed 4.0.0 bug that broke watchdirs in the macOS client. (#5058, macOS Client)
  • Fixed 4.0.0 bug where download speed limits were ignored for uTP peers. (#5086)
  • Fixed 4.0.0 bug using announce-list when creating single-tracker private torrents. (#5106)
  • All Platforms:
  • Restored support for path.utf-8 keys in torrent info dictionaries. (#3454)
  • Fixed value of TR_TIME_LOCALTIME environment variable in torrent scripts. (#5006)
  • Limited in-kernel file copying to 2 GiB blocks at a time to avoid potential issues with CIFS mounts. (#5039)
  • Simplified filename info in log messages. (#5055)
  • Fixed std::clamp() assertion failures. (#5080, #5203)
  • Fixed small error calculating protocol overhead when receiving peer messages. (#5091)
  • Fixed incorrect escaping of non-BMP characters when generating JSON. (#5096)
  • Fixed 4.0.0 crash when receiving malformed piece data from peers. (#5097)
  • Fixed 4.0.0 potential crash when downloading from webseeds. (#5161)
  • Improved handling of the leechers param in trackers' announce responses. (#5164)
  • Fixed 4.0.0 regression that stopped increasing the download priority of files' first and last pieces. These pieces are important for making incomplete files previewable / playable while still being downloaded. (#5167)
  • Fixed display of IPv6 tracker URLs. (#5174)
  • Fixed code that could stop being interested in peers that have pieces we want to download. (#5176)
  • Improved sanity checking of magnet links added via RPC. (#5202)
  • Fixed a misleading error message when Transmission is unable to write to the incomplete-dir. (#5217)
  • Worked around an older libdht bug that could provide invalid peer info. (#5218)
  • Restored RPC torrentGet.wanted return value to match 3.00 behavior. (#5170)
  • macOS Client
  • Fixed minor UI bugs, e.g. layout and control alignment. (#5016, #5018, #5019, #5021, #5035, #5066)
  • Added up / down arrows to upload / download badge info. (#5095)
  • Fixed 4.0.0 bug where macOS users could see some of their old torrents reappear after removing & restarting. (#5117)
  • Fixed "Unrecognized colorspace number -1" error messages from macOS. (#5219)
  • Fixed bug that caused local data to not be found when adding a new torrent in a custom folder. (#5060)
  • Fixed crash on startup in copyWithZone(). (#5079)
  • Qt CLIENT:
  • Ensured that "Open File" opens the torrent's folder for multi-file torrents. (#5115)
  • Fixed 4.0.0 bug that prevented batch-adding trackers to multiple torrents at once. (#5122)
  • Fixed per-torrent ratio display in main window. (#5193)
  • GTK Client:
  • Fixed 4.0.0 ignoring -m/--minimized command line option. (#5175)
  • Fixed assertion failure in the progress display when creating a new torrent. (#5180)
  • Web Client:
  • Fixed minor UI bugs, e.g. layout and control alignment. (#5001)
  • Fixed 4.0.0 bug that that failed to save alternate speed begin/end settings changes. (#5033)
  • Fixed broken keyboard shortcuts on desktop Safari. (#5054)
  • Improved colors in both light & dark mode. (#5083, #5114, #5151)
  • Daemon:
  • Made the "unrecognized argument" error message more readable. (#5029)
  • transmission-remote
  • Fixed a spurious error message when adding magnet links. (#5088)
  • Everything Else:
  • Documentation improvements. (#4971, #4980, #5099, #5135, #5214, #5225)
  • Updated translations. (#5182)
  • Fixed 4.0.1 failure to discover tests when cross-compiling without an emulator. (#5197)

New in Transmission 4.0.1 (Feb 23, 2023)

  • Transmission 4.0.1:
  • The 4.0.0 release two weeks ago generated a lot of useful feedback (thank you!!) so we've been busy fixing bugs. This release has only bug fixes, documentation improvements, and build script fixes to make packaging easier.
  • RIP, Yeeshkul. TJ, your tracker is one of the first things that got me (@ckerr) interested in torrents when I started contributing to the Transmission project back in 2007. So long and thanks for all the fish.
  • WHAT'S NEW IN 4.0.1:
  • Highlights:
  • Added Qt 5 builds for older Windows system, since Qt 6 requires Windows 10 or newer. (#4855)
  • Fixed 4.0.0 bug that caused some torrents to have poor speed and some of their checksums to be incorrectly marked as failed. (#4879, #4880, #4890)
  • Fixed 4.0.0 bug that caused beachballing / jank. (#4936)
  • Fixed 4.0.0 bug that caused blocklists to use more memory than necessary. (#4953)
  • Fixed 4.0.0 issue that failed to migrate magnet links from Transmission 3. (#4840)
  • libtransmission (All Platforms)
  • Follow BEP 27's placement of private field when creating new torrents. (#4809)
  • Fixed 4.0.0 bug that failed to retry to connect to peers with TCP if UTP failed first. (#4897)
  • Fixed 4.0.0 bug that could prevent port forwarding settings from being saved. (#4842)
  • Fixed 4.0.0 crash that occurred when removing a webseed torrent while downloading. (#4847)
  • Fixed 4.0.0 regression that paused magnet links when adding them. (#4856)
  • Fixed 4.0.0 illegal instruction exception on some x86 Windows machines. (#4886)
  • Fixed 4.0.0 build failure due to incompatible system and bundled libutp headers. (#4877)
  • Fixed 4.0.0 build failure on NetBSD. (#4863)
  • Fixed 4.0.0 build error when building bundled libb64 and libutp. (#4762, #4810)
  • Fixed 4.0.0 build failure when compiling with Clang on Windows. (#4978)
  • Fixed 4.0.0 build issue that prevented distro versions of libdeflate from being used. (#4968)
  • Removed a harmless "unable to read resume file" error message to avoid confusion. (#4799)
  • Fixed 4.0.0 libtransmission compiler warnings. (#4805)
  • macOS Client
  • Added padding to widgets in macOS client to avoid being hidden below scroller. (#4788)
  • Fixed 4.0.0 layout issue in the pieces view. (#4884)
  • Fixed 4.0.0 bug that didn't highlight the current selection in View > Use Groups. (#4896)
  • Fixed dock icon badge colors to Apple accessibility guidelines. (#4813)
  • Qt Client
  • Fixed incorrect display of some trackers' announce URLs. (#4846)
  • Fixed "Open Folder" feature for local sessions. (#4963)
  • Fixed Qt 6 deprecation warnings. (#4710)
  • GTK Client
  • Fixed 4.0.0 crash on opening torrent details dialog. (#4859)
  • Fixed 4.0.0 bug that froze the app after showing or hiding via system tray (GTK 3 only). (#4939)
  • Fixed 4.0.0 rounding error in the progressbar's percentage display. (#4933)
  • Fixed 4.0.0 blurred progress bars in main window. (#4756)
  • Fixed awkward grammar in the Details Dialog's running-time row. (#4898)
  • Web Client
  • Fixed 4.0.0 bug that failed to apply settings changes immediately. (#4839)
  • Fixed label searches that have spaces or hyphens. (#4932)
  • Fixed highlight color of selected context menu rows in dark mode. (#4984)
  • EVERYTHING ELSE:
  • Changed default build to skip clang-tidy linting due to upstream bug. (#4824)
  • Build: Use CXX symbol checking to verify system libutp. (#4909)
  • Build: add option to disable installation of web assets. (#4906)
  • Build: set /utf-8 flag when using MSVC. (#4975)

New in Transmission 4.0.0 (Feb 13, 2023)

  • HIGHLIGHTS:
  • This is a major release, both in numbering and in effort! It's been in active development for over a year and has a huge list of changes -- over a thousand commits -- since
  • Transmission 3.00. Some of the highlights include:
  • Resource Efficiency - Use less memory and fewer CPU cycles
  • Better Community - Pull requests welcomed and used
  • Code Modernization - Migrated from C90 to modern C++
  • New Features - What would a major release be without them?
  • RESOURCE EFFICIENCY:
  • The code has been extensively profiled and improved to fix inefficient code and memory use. For example, a stress test of starting transmission-daemon with 25,000 torrents is almost entirely IO-bound, using 50% fewer CPU cycles and 70% fewer memory allocations than Transmission 3.00.
  • The remote control GUIs (transmission-qt and transmission-web) now use the RPC API "table" mode, resulting in smaller payloads / less bandwidth use.
  • RPC payloads are now compressed using libdeflate, a "heavily optimized [library that is] significantly faster than the zlib library."
  • COMMUNITY:
  • The project is much more responsive to bug reports and code submissions than it has been in the past.
  • There is a new group of volunteer contributors who are working on Transmission!
  • Transmission 4.0.0 includes over 350 new community commits (see the Thank You section below and in the previous 4.0.0 betas) since 3.00 and welcomes new contributors.
  • Documentation has been moved into the transmission/transmission so that contributors can submit PRs to improve it.
  • CODE MODERNIZATION:
  • The entire codebase has been migrated from C to C++. In the process, we've removed thousands of lines of custom code and used standard C++ tools instead. The core's code has shrunk by 18%. The core codebase has been extensively refactored to be more testable and maintainable.
  • The GTK client has been ported to gtkmm.
  • The Web client has been rewritten in modern JavaScript and no longer uses jQuery. The entire gzipped bundle is now 68K.
  • The unit tests have been expanded and ported to Google Test. Clang sanitizer builds are run during CI.
  • The core library is now fuzz tested.
  • Transmission now uses Sonarcloud, Coverity, LGTM, and clang-tidy static analysis on new code. Several hundred code warnings have been fixed compared to Transmission 3.00.
  • NEW FEATURES:
  • Support for using BitTorrent v2 torrents and hybrid torrents. (Support for creating v2 and hybrid torrents is slated for an upcoming release.)
  • Users can now set "default" trackers that can be used to announce all public torrents.
  • Newly-added seeds can start immediately and verify pieces on demand, instead of needing a full verify before seeding can begin. (#2626)
  • Added an option to omit potentially-identifying information (e.g. User-Agent and date created) when creating new torrents. (#3452)
  • The Web client has been rewritten and now supports mobile use.
  • When creating new torrents, users can now specify the piece size. (#3768, #3145, #2805)
  • IPv6 blocklists are now supported. (#3835)
  • Beginning with 4.0.0-beta.1, Transmission releases now use semver versioning.
  • Dozens of other new features -- too many to list here! We've been working on this for a year!

New in Transmission 4.0.0 Beta 3 (Jan 5, 2023)

  • What's New in 4.0.0-beta.3:
  • libtransmission (All Platforms):
  • Dropped obsolete CyaSSL and PolarSSL crypto backends (WolfSSL and MbedTLS are still supported). (#4495)
  • Updated extension protocol handshake to include yourip value as suggested by BEP 10. (#4504)
  • Fixed out-of-order teardown bug that could cause a crash on shutdown. (#4331, #4348, #4451)
  • Fixed 4.0.0-beta.1 bug that broke detection of a peer's UDP port in a peer handshake. (#4334)
  • Fixed 4.0.0-beta.2 regression that broke port forwarding in some settings. (#4343)
  • Fixed 4.0.0-beta.2 bitfield crash. (#4346)
  • Fixed 4.0.0-beta.1 pattern matching in whitelist and host_whitelist. (#4353)
  • Fixed 4.0.0-beta.2 crash when pausing a torrent. (#4358)
  • Fixed 4.0.0-beta.2 IPv6 μTP socket binding regression. (#4469)
  • Followed BEP 7 suggestion to remove &ipv4= and &ipv6= query parameters from tracker announcements. (#4502)
  • Followed BEP 7 suggestion to make the tracker announce &key= query parameter unique per-torrent. (#4508)
  • Updated the bookkeeping to ensure both TCP and uTP connections honor the connection limit. (#4534)
  • Made small performance improvements in libtransmission. (#4393, #4401, #4404, #4412, #4424, #4425, #4431, #4519)
  • Improved test coverage in the code that checks for reserved IP address use. (#4462)
  • macOS Client:
  • Sorting by size now only uses the sizes of files that are wanted. (#4365)
  • Fixed memory leak in the blocklist downloader. (#4309)
  • Fixed UI issues in the main window when using Groups. (#4333)
  • Improved layout of macOS UI elements. (#4366, #4367, #4460)
  • Fixed the background style of torrents selected in the main window. (#4458)
  • Updated code that had been using deprecated API. (#4308, #4441)
  • Removed unused or unnecessary code. (#4374, #4440)
  • Fixed 4.0.0-beta.1 regression that showed an incorrect icon or name in the drag overlay. (#4428)
  • Fixed the file display of torrents that consist of just a single file in a single folder. (#4454)
  • Qt Client:
  • Fixed progress bars positioning on Mac. (#4489)
  • Added Qt dependencies for Windows build instructions and minor fixes. (#4363)
  • Updated Qt CMakeLists.txt to include support for building svg. (#4437)
  • GTK Client:
  • Fixed 4.0.0-beta.1 regression leading to potential crash on startup upon watch directory setup. (#4355)
  • Fixed 4.0.0-beta.1 regression that prevented closing the "update blocklist" dialog. (#4391, #4392)
  • Fixed a bug that hid the "Enable µTP for peer communication" checkbox. (#4349)
  • Removed unused or unnecessary code. (#4416)
  • transmission-remote:
  • Fixed 4.0.0-beta.1 bug that showed the wrong ETA for some torrents. (#4506)
  • transmission-show:
  • Fixed 4.0.0-beta.2 regression that caused transmission-show --scrape to not exit cleanly. (#4447)
  • Everything Else:
  • Added Windows build manual. (#4291)
  • Removed Visual C++ redistributable libraries installation from the MSI package. (#4339)
  • Removed obsolete 'lightweight' build option. (#4509)

New in Transmission 4.0.0 Beta 2 (Dec 5, 2022)

  • Transmission 4.0.0-beta.2:
  • What's New in Transmission 4:
  • Support for using BitTorrent v2 torrents and hybrid torrents. (Support for creating v2 and hybrid torrents is slated for an upcoming release.)
  • Users can now set "default" trackers that can be used to announce all public torrents.
  • Newly-added seeds can start immediately and verify pieces on demand, instead of needing a full verify before seeding can begin. (#2626)
  • Added an option to omit potentially-identifying information (e.g. User-Agent and date created) when creating new torrents. (#3452)
  • The Web client has been rewritten and now supports mobile use.
  • Added support for GTK 4. (#3916, GTK Client)
  • When creating new torrents, users can now specify the piece size. (#3768, #3145, #2805)
  • IPv6 blocklists are now supported. (#3835)
  • What's New in 4.0.0-beta.2:
  • Highlights:
  • Added support for GTK 4. (#3916, GTK Client)
  • Prefer ayatana-indicator over appindicator, if present. (#4001, GTK Client)
  • Lots of bugfixes!
  • libtransmission (All Platforms)
  • Fixed 4.0.0-beta.1 regression that could misformat the port forwarding log messages. (#3911)
  • Fixed 4.0.0-beta.1 regression that could crash when mixing IPv4 and IPv6 addresses in an IP blocklist. (#4011)
  • Fixed 4.0.0-beta.1 regression that could fail to serve web client files from Windows. (#4099)
  • Fixed 4.0.0-beta.1 bug that returned an incorrect key in group-get RPC responses. (#4171)
  • Fixed data overflow in Message Log. (#4237)
  • Fixed 4.0.0-beta.1 regression that broke the TR_TORRENT_LABELS environment variable when running user scripts. (#4260)
  • Fixed slow shutdown caused by waiting on unresponsive trackers to reply. (#4285)
  • Minor efficiency improvements in libtransmission. (#4116, #4216, #4220, #4224, #4226)
  • Improved DHT bootstrapping on startup. (#4122)
  • Made host lookups more efficient for users that disable CA verification. (#4159)
  • Lowered CPU overhead in tr_peerIo::write() when writing to encrypted streams. (#4258)
  • Improved detection of preinstalled system copies of libutp. (#4072)
  • Use a newer version of fast_float as a fallback when no preinstalled version can be found on the system. (#4098)
  • Updated libtransmission's copy of the mime-types list. (#4246)
  • macOS Client:
  • Added the ability to sort by activity using the filter bar. (#3944)
  • Fixed sort order when sorting by activity was reversed. (#3924)
  • Fixed a potential hang when updating blocklists. (#4010)
  • Fixed formatting of ETA dates for slow torrents. (#4085)
  • Corrected the display in user locale of some quantities above 1000. (#4109)
  • Fixed 4.0.0-beta.1 Inspector filter crash. (#4138)
  • Fixed 4.0.0-beta.1 regression that could crash when displaying some torrents that contain invalid UTF-8. (#4144)
  • Fixed 4.0.0-beta.1 UI glitch when users attempted to set piece size too high or too low. (#4145)
  • Fixed missing 4.0.0-beta.1 translations. (#4161)
  • Fixed a long-standing bug that could freeze the UI on startup while Time Machine was active. (#4208)
  • Fixed deleting previously selected torrent when attempting to clear search field using ⌘⌫. (#4245)
  • The 'Transmission' name has been removed from the Toolbar in Big Sur and later OS versions. (#3919)
  • Improved sizing and alignment of the Message Log window. (#3962)
  • Changed Badge display so that upload is up and download is down. (#4055)
  • Auto enlarge search field. (#4067)
  • Support UserNotifications framework. (#3040)
  • Fixed various Xcode and CMake build issues. (#3940, #3946, #3951, #4156, #4185, #4195, #4231, #4234)
  • Fixed macOS API deprecation warnings. (#3950, #4112, #4190, #4221)
  • Fixed various macOS API warnings. (#4202)
  • GTK Client:
  • Added support for GTK 4. (#3916)
  • Prefer ayatana-indicator over appindicator, if present. (#4001)
  • Changed progress bar color depending on torrent state. (#3976)
  • Fixed 4.0.0-beta.1 regression that could cause a crash after completing a download. (#3963)
  • Fixed an issue where already open Details dialog didn't update files list once magnet metainfo is retrieved. (#4004)
  • Fixed 4.0.0-beta.1 regression that broke bulk-adding torrents from watchdirs. (#4079)
  • Fixed broken ETA formatting in the 4.0.0-beta.1 Torrent Details dialog. (#4227)
  • Fixed 4.0.0-beta.1 regression that made the About dialog difficult to close. (#3892)
  • Fixed 4.0.0-beta.1 regression that made duplicate add/edit tracker error dialogs being shown twice. (#3898)
  • Increased default Message Log window size to avoid toolbar controls being hidden on overflow. (#3971)
  • Turned on more clang-tidy checks and fixed warnings. (#4127, #4137, #4158, #4160, #4167, #4174, #4183)
  • Improved favicons lookup for unreachable tracker servers. (#4278)
  • Web Client:
  • Fix: chrome needs vendor prefix(-webkit-) for mask. (#4056)
  • Improved layout of 'Add Torrents' dialog. (#4063)
  • Improved inspector dialog styling on Chrome. (#4095)
  • Refresh web interface across desktop and mobile. (#3985)
  • Docs: refresh web-interface page. (#4277)
  • Fixed webpack conflict error when building source map. (#4058)
  • Fix: inspector icon should be disabled as default. (#4093)
  • transmission-remote
  • Improved and documented the rename command. (#3973)
  • Fixed a 4.0.0-beta.1 regression that misformatted the display of a torrent's start time. (#3909)
  • transmission-create
  • Fixed a 4.0.0-beta.1 regression that misformatted the display of the number of files in a torrent. (#3996)
  • Everything Else:
  • Improved libtransmission unit tests. (#3812, #4121, #4170, #4173)
  • Turned on more clang-tidy checks and fixed warnings. (#4131)
  • Updated documentation. (#3904, #3927, #3982, #4101)
  • Bumped deps versions used for Windows release builds. (#4092)
  • Added CodeQL workflow. (#4125)
  • Use a newer version of libb64 as a fallback when no preinstalled version can be found on the system. (#4129)

New in Transmission 4.0.0 Beta 1 (Oct 7, 2022)

  • Welcome to the first beta release of Transmission 4.0.0! It's been in active development for over a year and has a huge list of changes -- over 1,000 commits -- since Transmission 3.00. Some of the highlights include:
  • Resource Efficiency - Use less memory, fewer CPU cycles
  • Better Community - Pull requests welcomed and used
  • Code Modernization - Rewritten in C++
  • New Features - What would a major release be without them?
  • Resource Efficiency:
  • The code has been extensively profiled and improved to fix inefficient code and memory use. For example, a stress test of starting transmission-daemon with 25,000 torrents is almost entirely IO-bound, using 50% fewer CPU cycles and 70% fewer memory allocations than Transmission 3.00.
  • The remote control GUIs (transmission-qt and transmission-web) now use the RPC API "table" mode, resulting in smaller payloads / less bandwidth use.
  • RPC payloads are now compressed using libdeflate, a "heavily optimized [library that is] significantly faster than the zlib library."
  • Community:
  • The project is much more responsive to bug reports and code submissions than it has been in the past.
  • There is a new group of volunteer contributors who are working on Transmission!
  • Transmission 4.0.0-beta.1 includes over 300 new community commits (see the Thank You section below for a list) and is welcoming new contributors.
  • Documentation has been moved into the transmission/transmission so that contributors can submit PRs to improve it
  • Code Modernization:
  • The entire codebase has been migrated from C to C++. In the process, we've removed thousands of lines of custom code and used standard C++ tools instead. The core's code has shrunk by 18%. The core codebase has extensively refactored to be more testable and maintainable.
  • The GTK client has been ported to gtkmm.
  • The Web client has been rewritten in modern JavaScript and no longer uses jQuery. The entire gzipped bundle is now 68K.
  • The unit tests have been expanded and ported to Google Test. Clang sanitizer builds are run during CI.
  • The core library is now fuzz tested.
  • Transmission now uses Sonarcloud, Coverity, LGTM, and clang-tidy static analysis on new code. Several hundred code warnings have been fixed compared to Transmission 3.00.
  • New Features:
  • Support for using BitTorrent v2 torrents and hybrid torrents. (Support for creating v2 and hybrid torrents is slated for an upcoming release.)
  • Users can now set "default" trackers that can be used to announce all public torrents.
  • Newly-added seeds can start immediately and verify pieces on demand, instead of needing a full verify before seeding can begin. (#2626)
  • Added an option to omit potentially-identifying information (e.g. User-Agent and date created) when creating new torrents. (#3452)
  • The Web client has been rewritten and now supports mobile use.
  • When creating new torrents, users can now specify the piece size. (#3768, #3145, #2805)
  • IPv6 blocklists are now supported. (#3835)
  • Beginning with 4.0.0-beta.1, Transmission releases now use semver versioning.
  • Dozens of other new features -- too many to list here! We've been working on this for a year!
  • Other Changes:
  • [All Platforms] [macOS Client] [Qt Client] [GTK Client] [Daemon] [Web Client] [Utils] [Everything Else!]
  • All Platforms:
  • Fix small scrape/announce packet size that could trip SYN flood detection on some systems (#3236)
  • Remove the 1024 open files limit previously required by how libcurl was used (#893)
  • Add configurable anti-brute force settings (#1447)
  • Fetch metadata of stopped magnets (#1080)
  • Stop logging excessive error messages after they repeat too many times. In some cases, repetitive messages had been spamming syslogs. (#2756)
  • macOS Client:
  • Transmission is now a Universal (Apple Silicon and Intel) app.
  • Refresh of the UI to better fit into modern macOS.
  • A new icon designed for Big Sur by Rodger Werner.
  • Qt Client:
  • Support both Qt5 and Qt6 (#2069)
  • Nicer error handling when duplicate torrents are added (#1410)
  • More efficient use of RPC (#1234, #1322, #1333)
  • More efficient state updates (#1334, #1335, #1336, #1428, #1430, #1432, #1433, #1234)
  • Slightly more efficient RPC requests (#1373)
  • Better caching of tracker favicons (#1402)
  • Fix memory leaks (#1378)
  • Fix FreeSpaceLabel crash (#1604)
  • Add remote server version info in the About dialog (#1603)
  • Support TR_RPC_VERBOSE environment variable for debugging RPC calls (#1435)
  • Allow filtering by info hash (#1763)
  • GTK Client:
  • Ported to GTKMM
  • When creating new torrents, their piece size can be specified.
  • The File menu now incorporates normal quick key operations.
  • The Details dialog now includes the date a torrent was added.
  • The Details dialog now renders large file lists faster. ([#2992](https://github.com/transmission/transmission/pull/2992], #2993
  • Better i18n of phrases for past, present, and future tense (#3214)
  • Daemon:
  • TODO
  • Web Client:
  • The web client has been given a major overhaul. (#1476)
  • User-visible highlights include:
  • Mobile is now fully supported.
  • Added fullscreen support on mobile.
  • Better support for dark mode.
  • Added mime icons to the torrent list.
  • Improved theme consistency across the app.
  • Maintainer highlights include:
  • Updated code to use ES6 APIs.
  • No longer use jQuery UI.
  • No longer use jQuery.
  • Use Webpack to bundle the Javascript, CSS, and assets together -- the entire bundle size is now 68K gzipped.
  • Added eslint / prettier / stylelint tooling.
  • Uses torrent-get's 'table' mode for more efficient RPC calls.
  • Utils:
  • Allow webseed URLs when creating torrents in transmission-create
  • Display more progress information during torrent creation in transmission-create (#1405)
  • Everything Else!
  • https://transmissionbt.com/ has been redesigned! Thanks to @shatteredsite the redesign and to @Oleg-Chashko and @GaryElshaw for feedback!
  • Roger Werner made a new Transmission icon!

New in Transmission 3.00 (Dec 3, 2021)

  • All Platforms:
  • 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
  • Mac Client:
  • Bump minimum macOS version to 10.10
  • Dark Mode support (#644, #722, #757, #779, #788)
  • Remove Growl support, notification center is always used (#387)
  • Fix autoupdate on High Sierra and up by bumping the Sparkle version (#121, #600)
  • Transition to ARC (#336)
  • Use proper UTF-8 encoding (with macOS-specific normalization) when setting download/incomplete directory and completion script paths (#11)
  • Fix uncaught exception when dragging multiple items between groups (#51)
  • Add flat variants of status icons for message log (#134)
  • Optimize image resources size (#304, #429)
  • Update file icon when file name changes (#37)
  • Update translations
  • GTK+ Client:
  • Add queue up/down hotkeys (#158)
  • Modernize the .desktop file (#162)
  • Add AppData file (#224)
  • Add symbolic icon variant for the Gnome top bar and when the high contrast theme is in use (#414, #449)
  • Update file icon when its name changes (#37)
  • Switch from intltool to gettext for translations (#584, #647)
  • Update translations, add new translations for Portuguese (Portugal)
  • Qt Client:
  • Bump minimum Qt version to 5.2
  • Fix dropping .torrent files into main window on Windows (#269)
  • Fix prepending of drive letter to various user-selected paths on Windows (#236, #307, #404, #437, #699, #723, #877)
  • Fix sorting by progress in presence of magnet transfers (#234)
  • Fix .torrent file trashing upon addition (#262)
  • Add queue up/down hotkeys (#158)
  • Reduce torrent properties (file tree) memory usage
  • Display tooltips in torrent properties (file tree) in case the names don't fit (#411)
  • Improve UI look on hi-dpi displays (YMMV)
  • Use session ID (if available) to check if session is local or not (#861)
  • Use default (instead of system) locale to be more flexible (#130)
  • Modernize the .desktop file (#162)
  • Update translations, add new translations for Afrikaans, Catalan, Danish, Greek, Norwegian Bokmål, Slovenian
  • Daemon:
  • Use libsystemd instead of libsystemd-daemon (TRAC-5921)
  • Harden transmission-daemon.service by disallowing privileges elevation (#795)
  • Fix exit code to be zero when dumping settings (#487)
  • Web Client:
  • Fix tracker error XSS in inspector (CVE-?)
  • Fix performance issues due to improper use of setInterval() for UI refresh (TRAC-6031)
  • Fix recognition of https:// links in comments field (#41, #180)
  • Fix torrent list style in Google Chrome 59+ (#384)
  • Show ETA in compact view on non-mobile devices (#146)
  • Show upload file button on mobile devices (#320, #431, #956)
  • Add keyboard hotkeys for web interface (#351)
  • Disable autocompletion in torrent URL field (#367)
  • Utils:
  • Prevent crash in transmission-show displaying torrents with invalid creation date (#609)
  • Handle IPv6 RPC addresses in transmission-remote (#247)
  • Add --unsorted option to transmission-show (#767)
  • Widen the torrent-id column in transmission-remote for cleaner formatting (#840)
  • Code Signing Policy:
  • Windows MSI packages: free code signing provided by SignPath.io, certificate by SignPath Foundation

New in Transmission 2.94 (May 2, 2018)

  • All Platforms:
  • Fix building against LibreSSL (#284, #486, #570)
  • Fix building against mbedTLS (#115, #528)
  • Fix torrents ETA calculation (#522)
  • Fix cross-compilation issues caused by miniupnpc configuration test (#475)
  • Qt Client:
  • Fix bad downloaded percentage in DetailsDialog (#547)
  • Web Client:
  • Fix tracker error XSS in inspector (CVE pending; found by Rory McNamara of Gotham Digital Science)
  • Fix torrent name HTML-escaping in trackers inspector tab

New in Transmission 2.93 (Apr 20, 2018)

  • All Platforms:
  • Fix CVE-2018-5702 (#468)
  • Fix crash on handshake if establishing DH shared secret fails (#27)
  • Fix crash when switching to next tracker during announcement (#297)
  • Fix potential issue during password salt extraction in OOM situation (#141)
  • Workaround glib_DEFUN- and glib_REQUIRE-related configuration issue (#215)
  • Fix building against OpenSSL 1.1.0+ (#24)
  • Mac Client:
  • Fix uncaught exception when dragging multiple items between groups (#51)
  • Don't hard-code libcrypto version to 0.9.8 in Xcode project (#71)

New in Transmission 2.92 (Mar 7, 2016)

  • Mac Client:
  • Build OSX.KeRanger?.A ransomware removal into the app

New in Transmission 2.90 (Feb 29, 2016)

  • All Platforms:
  • Fix renaming torrent files with common prefix
  • Fix some more thread safety bugs in the tr_list datatype
  • Fix infinite loop when removing torrent data
  • Add support for CyaSSL/WolfSSL and PolarSSL cryptographic backends; bump OpenSSL minimum to v0.9.7
  • Initial CMake build system support
  • Many improvements to support Windows builds with MSVS and MinGW; drop XP/2003 support, only Vista and up now
  • Allow building against system UTP and DHT libraries
  • Fix several memory leaks and buffer overflows
  • Support miniupnpc API v14
  • Fix "prefetch-enabled" value type in settings.json (boolean instead of integer)
  • Fix some issues discovered by static analysis (cppcheck, coverity)
  • Fix invalid JSON encoding for non-printable characters
  • Fix multi-threaded locale use when encoding/decoding JSON data
  • Fix encrypted communication with libevent 2.1+
  • Prevent completed pieces modification by webseeds
  • Require absolute paths in RPC requests
  • Fix and unify torrent origin display in GTK+, Qt and web clients
  • Fix crash on session shutdown (evdns_getaddrinfo_cancel)
  • Retry if RPC server fails to bind to specified address
  • Improve error checking on metadata retrieval
  • Improve UTF-8 validity checking (merge changes from LLVM)
  • Don't build transmission-cli by default (it's long deprecated)
  • Mac Client:
  • UI fixes for OS X 10.9+
  • Trim potential URIs from clipboard
  • Allow downloading files from http servers (not https) on OS X 10.11+
  • Change Sparkle Update URL to use HTTPS instead of HTTP (addresses Sparkle vulnerability)
  • Fix global options popover layout
  • Fix building with Xcode 7+
  • Drop OS X 10.6 support
  • GTK+ Client:
  • Fix overshoot and undershoot indicators display with GTK+ 3.16+ in main window
  • Don't require DISPLAY if started with --version argument
  • Qt Client:
  • Improve performance in Torrent Properties dialog for torrents with lots of files
  • Prevent entering file renaming mode with mouse double-click
  • Add context menu on files tab of Torrent Properties dialog resembling that of Mac client
  • Remove torrent file from watch directory even if "show options dialog" is not set
  • Use theme-provided icons in system tray and About dialog
  • Fix initial watch directory scan
  • Improve filter bar look and feel; lots of other small visual fixes; RTL layout fixes
  • Show message to the user when duplicate torrent is being added
  • Improve magnets handling in main window
  • Display notifications via tray icon if D-Bus is not available
  • Show notice on top of filtered torrents list; clear whole filter on notice double-click
  • Add proper compiler flags to indicate C++11 use
  • Fix translation files loading
  • Add Chinese (China), German, Indonesian, Italian (Italy), Korean, Polish (Poland), Ukrainian translations; update existing translations
  • Daemon:
  • Run as service on Windows when in background mode
  • Rework directory watching, add support for native mechanisms on BSD/Darwin (kqueue) and Windows (ReadDirectoryChanges?)
  • Don't make assumptions of remote path validity in transmission-remote
  • Web Client:
  • Content Security Policy enhancements
  • Enable "resume now" for queued torrents
  • Mark appropriate fields in preferences dialog as HTML5 number fields
  • Update to jQuery 1.11.2, jQueryUI 1.11.4; use jQueryUI menus instead of custom ones

New in Transmission 2.84 (Jul 2, 2014)

  • Fix peer communication vulnerability (no known exploits) reported by Ben Hawkes

New in Transmission 2.83 (May 19, 2014)

  • All Platforms:
  • Licensing change: the GNU GPLv2 code can now be used under GNU GPL v2 or v3
  • Fix network hanging issues that could occur when both UTP and DHT were enabled
  • Fix 2.82 file descriptor leak when importing a blocklist
  • Disallow torrents that contain "/../" in the path
  • Fix 2.82 bug that didn't retain peers between sessions
  • Fix potential dangling memory error in UDP tracker DNS lookups
  • Remember a torrent's "queued" state between Transmission sessions
  • Updated third party libraries: DHT updated to v0.22; miniupnpc updated to v1.9
  • Autoconf script fixes: better detection of ccache, minupnpc
  • Fix the X-Transmission-Session-Id header to be valid with the SPDY protocol
  • Fix thread safety bugs in the tr_list datatype
  • When determining free disk space on NetBSD>=6, support its Quota feature
  • Windows portability improvements
  • Mac Client:
  • Share option in File menu and context menu
  • Show all torrents when the filter bar is hidden
  • Show zero-byte files correctly
  • Coalesce multiple Speed Limit Auto Enabled/Disabled? notifications
  • Turkish localization
  • Removed Brazilian Portuguese localization because of lack of localizer (European Portuguese localization remains)
  • GTK+ Client:
  • Fix threading issue on shutdown
  • Qt Client:
  • Fix toggle-downloading-by-pressing-spacebar in the file list
  • Fix "Open URL" crash from dangling pointer
  • Support launching downloaded files from inside Transmission
  • On Windows, use native Windows icons
  • Improved network status info and tooltip in the status bar
  • Fix "Open Torrent" dialog crash in Qt 5.2
  • Daemon:
  • On systemd systems, fix config reloading via 'systemctl reload'
  • Use libevent's event loop
  • Fix discrepancy in curl SSL setup between tr-daemon and tr-remote
  • Fix broken OS X build
  • Web Client:
  • Support file renaming in the web client
  • Fix incorrect torrent state being displayed for magnet links
  • Make URLs in the torrent's comment field clickable (and sanitize them to prevent cross-scripting)

New in Transmission 2.82 (Aug 9, 2013)

  • All Platforms:
  • Fix webseed crash
  • Fix crash when adding UDP trackers whose host's canonical name couldn't be found
  • Fix crash when sending handshakes to some peers immediately after adding a magnet link
  • Fix crash when parsing incoming encrypted handshakes when the user is removing the related torrent
  • Add safeguard to prevent zombie processes after running a script when a torrent finishes downloading
  • Fix "bad file descriptor" error
  • Queued torrents no longer show up as paused after exiting & restarting
  • Fix 2.81 compilation error on OpenBSD
  • Don't misidentify Tixati as BitTornado?
  • GTK+ Client:
  • Fix crash that occurred in some cases after using Torrent > Set Location
  • Fix crash where on_app_exit() got called twice in a row
  • Fix 2.81 compilation error on older versions of glib
  • Can now open folders that have a '#' in their names
  • Silence gobject warning when updating a blocklist from URL
  • Qt Client:
  • Qt 5 support
  • Web Client:
  • Fix syntax error in index.html's meta name="viewport"
  • Fix file uploading issue in Internet Explorer 11

New in Transmission 2.81 (Jul 19, 2013)

  • All Platforms:
  • Fix 2.80 bug that showed the incorrect status for some peers
  • Better handling of announce errors returned by some trackers
  • Fix compilation error on Solaris
  • GTK+ Client:
  • Fix minor memory leaks
  • Remove OnlyShowIn?= from the .desktop file
  • Qt Client:
  • Remove OnlyShowIn?= from the .desktop file
  • Daemon:
  • Change the systemd script to start Transmission after the network's initialized
  • Web Client:
  • Slightly better compression of png files

New in Transmission 2.80 (Jun 27, 2013)

  • All Platforms:
  • Support renaming a transfer's files and folders
  • Remove the most frequent thread locks in libtransmission (ie, fewer beachballs)
  • Show the free disk space available when adding torrent
  • Faster reading and parsing of local data files
  • Better use of the OS's filesystem cache
  • Lengthen the prefetch cache for data sent to peers
  • Other small speedups
  • Replace the previous JSON parser with jsonsl to resolve DFSG licensing issue
  • Fix fails-to-build when compiling with -Werror=format-security
  • Improved unit tests in libtransmission
  • Tarballs are now released only in .xz format
  • Mac Client:
  • Use VDKQueue for watching for torrent files
  • GTK+ Client:
  • Simplify the tracker filter pulldown's interface (now matches the Qt client)
  • Synced preferences text & shortcuts
  • Remove deprecated calls to gdk_threads_enter()
  • Silence a handful of console warnings
  • Qt Client:
  • More efficient updates when receiving information from the server
  • Add an option to play a sound when a torrent finishes downloading
  • Add an option to start up iconified into the notification area
  • Fix an issue with the tray icon preventing hibernation/logout
  • Other CPU speedups
  • Open the correct folder when clicking on single-file torrents
  • Synced preferences text & shortcuts
  • Fix non Latin-1 unit strings
  • Daemon:
  • Add support for specifying recently-active torrents in transmission-remote
  • Web Client:
  • Extend the cookie lifespan so that settings like sort order don't get lost
  • Utils:
  • Support user-defined piece sizes in transmission-create

New in Transmission 2.77 (Feb 18, 2013)

  • All Platforms:
  • Fix 2.75 regression that broke JSON parsing of real numbers in locales that don't use '.' as a decimal separator
  • Don't invalidate the OS's file cache when closing files
  • Fix overflow error when setting speed limits above ~8589 kB/s
  • Generated magnet links didn't include webseeds
  • Fix minor memory leaks when using webseeds
  • GTK+ Client:
  • Minor pluralization fixes in the UI
  • Fix folder mis-selection issue in the Preferences dialog
  • Fix GTK+ console warnings on shutdown
  • Qt Client:
  • Fix non Latin-1 symbol issue when showing file transfer speeds
  • Fix issue when creating new torrents with multiple trackers
  • Fix lost text selection in the properties dialog's 'comment' field
  • Daemon:
  • Fix documentation errors in the spec and manpages
  • Web Client:
  • Fix minor DOM leak
  • CLI:
  • Fix transmission-cli failure when the download directory doesn't exist

New in Transmission 2.76 (Jan 9, 2013)

  • All Platforms:
  • Better error logging when user-provided scripts can't be executed
  • The "Time Remaining" property wasn't set for torrents with webseeds but no peers
  • Fix rare error that created a directory name "$HOME"
  • GTK+ Client:
  • Fix sort-by-age regression introduced in 2.74
  • The "Edit Trackers" window didn't resize properly due to a 2.70 regression
  • Raise the main window when presenting it from an App Indicator
  • Qt Client:
  • Add magnet link support to transmission-qt.desktop
  • Fix notification area bug that inhibited logouts & desktop hibernation
  • Use the "video" icon when the torrent is an mkv or mp4 file
  • Toggling the "Append '.part' to incomplete files' names" had no effect
  • Fix display of the torrent name in the Torrent Options dialog
  • Fix cursor point bug in the filterbar's entry field
  • Fix crash when adding a magnet link when Transmission was only visible in the system tray
  • Fix free-memory-read error on shutdown
  • Daemon:
  • Better watchdir support
  • Documentation fixes in transmission-remote's manpage
  • Web Client:
  • Fix indentation of the torrent list and toolbar buttons on mobile devices
  • CLI:
  • If the Download directory doesn't exist, try to create it instead of exiting

New in Transmission 2.75 (Dec 27, 2012)

  • Fix crash on non-English localizations

New in Transmission 2.74 (Dec 13, 2012)

  • All Platforms:
  • Fix a bug that prevented IPv6 addresses from being saved in dht.dat
  • Better handling of magnet links that contain 'tr.x=' parameters
  • Add filtering of addresses used for uTP peer connections
  • Fix detection of whether or not a peer supports uTP connections
  • Web Client:
  • Fix a multi-file selection bug
  • Fix bug where the upload and download arrows and rates would not appear for downloading torrents
  • Fix bug when displaying the tracker list

New in Transmission 2.72 (Oct 19, 2012)

  • All Platforms:
  • Fix crash when adding magnet links with malformed webseeds
  • Fix handling of magnet links' webseed URLs that contain whitespace
  • Fix remaining time estimates of magnet links that have webseeds
  • Show the webseed count in the torrent list when downloading from webseeds
  • Mac:
  • When possible allow automatic switching to the integrated GPU on dual-GPU machines
  • Include seeding-complete transfers in the badged count on the Dock icon
  • GTK+:
  • When adding torrents by URL from the clipboard, handle whitespace in the link
  • Qt:
  • Fix dialog memory leaks
  • Web Client:
  • Minor interface fixes

New in Transmission 2.71 (Sep 26, 2012)

  • All Platforms:
  • Improved speed with the µTP protocol
  • Fix bug that caused some incoming encrypted peer connections to fail
  • Fix bugs with the speed limit scheduler
  • Fix crasher with magnet links
  • Mac:
  • Notification Center support on Mountain Lion
  • Torrent files can be previewed with Quick Look in the Finder
  • Add an option to remove transfers when seeding completes
  • Fix displaying the Web Client with Bonjour
  • Fix bugs with Time Machine exclusions
  • Other minor interface tweaks and bug fixes
  • Removed Simplified Chinese localization because of lack of localizer
  • GTK+:
  • Require GTK+ 3.4
  • Qt:
  • Control speed limit from the icon tray
  • Improved behavior when clicking on torrents in the torrent list
  • Fix bug where torrent files were not deleted
  • Fix bug with unicode characters in the default location
  • Web Client:
  • The file inspector tab displays files nested under directories
  • Improved scrolling on iPad
  • Fix incorrectly rendered characters
  • Fix bug involving attempts to post notifications without permission

New in Transmission 2.61 (Jul 24, 2012)

  • GTK+:
  • Support startup notification
  • Require GTK+ 3
  • Qt:
  • Fix bug when opening the web client via the Preferences dialog
  • Better opening of magnet links
  • The Torrent File list now handles very long lists faster
  • Fix i18n problem introduced in 2.60
  • Web Client:
  • Close potential cross-scripting vulnerability from malicious torrent files
  • Utils:
  • Add magnet link generation to the transmission-show command line tool

New in Transmission 2.60 (Jul 6, 2012)

  • All Platforms:
  • Fix issues when adding magnet links
  • Improved scraping behavior for certain trackers
  • Fix bug where cleared statistics might not save
  • Updated versions of miniupnpc and libuTP
  • Fixed compilation issues with Solaris and FreeBSD
  • Other minor fixes
  • Mac:
  • Ready for Gatekeeper on Mountain Lion
  • Retina graphics
  • Add a filter and select all/deselect all buttons to the add window
  • Support Lion's window restoration for several windows
  • Web Client:
  • Notification of downloading and seeding completion (requires browser support of notifications)
  • Re-add select all and deselect all buttons to the file inspector tab
  • Qt:
  • Add Basque translation

New in Transmission 2.52 (May 19, 2012)

  • All Platforms:
  • Fix bug with zero termination of multiscrape strings
  • Update the bundled libnatpmp and miniupnp port forwarding libraries
  • Mac:
  • Add select all and deselect all buttons to the file inspector tab
  • Minor interface tweaks and bug fixes
  • Danish localization
  • GTK+:
  • Fix minor bug in Ubuntu app indicator support

New in Transmission 2.51 (Apr 9, 2012)

  • All Platforms:
  • Update the bundled libnatpmp and miniupnp port forwarding libraries
  • Add environment variable options to have libcurl verify SSL certs
  • Support user-specified CXX environment variables during compile time
  • GTK+:
  • Fix crash when adding torrents on systems without G_USER_DIRECTORY_DOWNLOAD
  • Honor the notification sound setting
  • Add a tooltip to files in the torrents' file list
  • Fix broken handling of the Cancel button in the "Open URL" dialog
  • Improve support for Gnome Shell and Unity
  • Catch SIGTERM instead of SIGKILL
  • Qt:
  • Progress bar colors are now similar to the Mac and Web clients'
  • Improve the "Open Folder" behavior
  • Web Client:
  • Fix global seed ratio progress bars
  • Fix sometimes-incorrect ratio being displayed in the inspector
  • If multiple torrents are selected, show the aggregate info in the inspector
  • Upgrade to jQuery 1.7.2
  • Daemon:
  • Show magnet link information in transmission-remote -i

New in Transmission 2.50 (Feb 21, 2012)

  • All Platforms:
  • Fix crash when adding some magnet links
  • Improved support for downloading webseeds with large files
  • Gracefully handle incorrectly-compressed data from webseed downloads
  • Fairer bandwidth distribution across connected peers
  • Use less CPU when calculating undownloaded portions of large torrents
  • Use the Selection Algorithm, rather than sorting, to select peer candidates
  • Use base-10 units when displaying bandwidth speed and disk space
  • If the OS has its own copy of natpmp, prefer it over our bundled version
  • Fix Fails-To-Build error on Solaris 10 from use of mkdtemp()
  • Fix Fails-To-Build error on FreeBSD from use of alloca()
  • Fix Fails-To-Build error when building without a C++ compiler for libuTP
  • Mac:
  • Requires Mac OS X 10.6 Snow Leopard or newer
  • Animated rows in the main window (Lion only)
  • Quarantine downloaded files (to protect against malware)
  • The inspector no longer floats above other windows (by popular demand)
  • Mist notifications: basic notification support for users without Growl
  • Support pasting a torrent file URL into the main window (Lion only)
  • Minor interface tweaks and bug fixes
  • GTK+:
  • Fix regression that broke the "--minimized" command-line argument
  • Instead of notify-send, use the org.freedesktop.Notifications DBus API
  • Fix a handful of small memory leaks
  • Qt:
  • Fix FTB when building without libuTP support on Debian
  • Web Client:
  • Filtering by state and tracker
  • Sorting by size
  • Larger, easier-to-press toolbar buttons
  • Fix the torrent size and time remaining in the inspector's details tab
  • Bundle jQuery and the stylesheets to avoid third-party CDNs
  • Upgrade to jQuery 1.7.1
  • Fix runtime errors in IE 8, IE 9, and Opera
  • Revise CSS stylesheets to use SASS
  • Minor interface tweaks
  • Daemon:
  • Fix corrupted status string in transmission-remote

New in Transmission 2.50 Beta 1 (Feb 16, 2012)

  • All Platforms:
  • Fix crash when adding some magnet links
  • Improved support for downloading webseeds with large files
  • Gracefully handle incorrectly-compressed data from webseed downloads
  • Fairer bandwidth distribution across connected peers
  • Use less CPU when calculating undownloaded portions of large torrents
  • Use the Selection Algorithm, rather than sorting, to select peer candidates
  • Use base-10 units when displaying bandwidth speed and disk space
  • If the OS has its own copy of natpmp, prefer it over our bundled version
  • Fix Fails-To-Build error on Solaris 10 from use of mkdtemp()
  • Fix Fails-To-Build error on FreeBSD from use of alloca()
  • Fix Fails-To-Build error when building without a C++ compiler for libuTP
  • Mac:
  • Requires Mac OS X 10.6 Snow Leopard or newer
  • Animated rows in the main window (Lion only)
  • Quarantine downloaded files (to protect against malware)
  • The inspector no longer floats above other windows (by popular demand)
  • Mist notifications: basic notification support for users without Growl
  • Support pasting a torrent file URL into the main window (Lion only)
  • Minor interface tweaks and bug fixes
  • GTK+:
  • Fix regression that broke the "--minimized" command-line argument
  • Instead of notify-send, use the org.freedesktop.Notifications DBus API
  • Fix a handful of small memory leaks
  • Qt:
  • Fix FTB when building without libuTP support on Debian
  • Web Client:
  • Filtering by state and tracker
  • Sorting by size
  • Larger, easier-to-press toolbar buttons
  • Fix the torrent size and time remaining in the inspector's details tab
  • Bundle jQuery and the stylesheets to avoid third-party CDNs
  • Upgrade to jQuery 1.7.1
  • Fix runtime errors in IE 8, IE 9, and Opera
  • Revise CSS stylesheets to use SASS
  • Minor interface tweaks
  • Daemon:
  • Fix corrupted status string in transmission-remote

New in Transmission 2.42 (Oct 31, 2011)

  • All Platforms:
  • Fix error connecting to UDP trackers from big-endian computers
  • Fix RPC error when editing UDP trackers
  • Fix build failure when a C++ compiler is not installed
  • GTK+:
  • Support GTK+ 3.2
  • Fix crasher on systems not running DBus
  • Qt:
  • Updated Lithuanian translation
  • Web Client:
  • Fix bug which broke Opera support

New in Transmission 2.40 Beta 1 (Sep 19, 2011)

  • All Platforms:
  • Torrent queuing
  • Improved webseed support
  • Fix crash when removing a magnetized transfer
  • Fix adding transfers over RPC when a subfolder does not exist
  • Other minor fixes
  • GTK+:
  • Add GTK+ 3 support
  • Make popup notification and system sounds system-configurable
  • Add a settings option to hard-delete files instead of using the recycle bin
  • Raise the minimum library requirements for GTK+ to 2.22 and glib to 2.28
  • Qt:
  • Add popup notification for finished torrents
  • Fix non-UTF-8 display issue in the "New Torrent" dialog
  • Daemon:
  • SSL support in transmission-remote
  • Web Client:
  • Speed improvements
  • Add filtering by tracker
  • Allow preference changes on mobile devices
  • Allow compact view on mobile devices
  • Stop ratio functionality
  • Compact view interface improvements
  • Utils:
  • Fix transmission-edit bug when adding a tracker to a single-tracker torrent
  • Fix transmission-create bug when specifying a directory with a leading "./"

New in Transmission 2.33 (Jul 21, 2011)

  • All Platforms:
  • Improved webseed support
  • Better support for moving and deleting files
  • Fix "Too many open files" bug
  • Apply blocklists towards DHT communication
  • Fix displayed availability
  • GTK+:
  • Remove deprecated GConf2 dependency
  • Qt:
  • Fix high CPU issues
  • Fix wrong torrent count on tracker filterbar
  • Update Spanish translation

New in Transmission 2.32 (Jul 5, 2011)

  • All Platforms:
  • Fix error caused by some "open-file-limit" configuration settings
  • Fix 2.30 problem seeding to some peers
  • Fix bug converting torrent file text contents to UTF-8
  • Better µTP support on systems running uClibc
  • Other small bug fixes
  • GTK+:
  • Fix 2.30 error opening torrents from a web browser
  • Remove GNOME desktop proxy support
  • Web Client:
  • Fix bug when adding torrents
  • Add torrents by info hash in the add dialog
  • Sorting by ratio
  • Allow drag-and-drop to add links

New in Transmission 2.30 (May 18, 2011)

  • All Platforms:
  • µTP support
  • UDP tracker support
  • Multiscrape support
  • Download scarcest pieces first
  • The "lazy bitfield" feature has been superseded by the "Fast Extension" BEP6
  • Scripts are passed the environment
  • GTK+:
  • Added 256 x 256 icon by Andreas Nilsson
  • Register as a magnet link handler in the .desktop file
  • Web Client:
  • Peer and Network preferences

New in Transmission 2.30 Beta 3 (Apr 18, 2011)

  • µTP support
  • UDP tracker support
  • Multiscrape support
  • Download scarcest pieces first
  • The "lazy bitfield" feature has been superseded by the "Fast Extension" BEP6
  • Scripts are passed the environment
  • Added 256 x 256 icon by Andreas Nilsson
  • Register as a magnet link handler in the .desktop file
  • Peer and Network preferences

New in Transmission 2.30 Beta 2 (Apr 11, 2011)

  • All Platforms:
  • µTP support
  • UDP tracker support
  • Multiscrape support
  • Download scarcest pieces first
  • The "lazy bitfield" feature has been superseded by the "Fast Extension" BEP6
  • Scripts are passed the environment
  • GTK+:
  • Added 256 x 256 icon by Andreas Nilsson
  • Register as a magnet link handler in the .desktop file
  • Web Client:
  • Peer and Network preferences

New in Transmission 2.30 Beta 1 (Apr 4, 2011)

  • All Platforms:
  • µTP support
  • UDP tracker support
  • Multiscrape support
  • Download scarcest pieces first
  • The "lazy bitfield" feature has been superseded by the "Fast Extension" BEP6
  • Scripts are passed the environment
  • GTK+:
  • Added 256 x 256 icon by Andreas Nilsson
  • Register as a magnet link handler in the .desktop file
  • Web Client:
  • Peer and Network preferences

New in Transmission 2.22 (Mar 7, 2011)

  • All Platforms:
  • Faster endgame
  • Fix bug where leechers might be disconnected while seeding in some situations
  • Fix 2.20 bug that sometimes showed inaccurate upload/download speeds
  • Support for unsorted blacklists
  • Fix IPv6 DHT
  • Re-add support to automatically close idle peers
  • Fix bug where the resume file did not save the time checked for the last piece
  • GTK+:
  • Fix setting individual idle seeding time
  • Qt:
  • Fix loading localizations on Linux
  • CLI:
  • Fix bandwidth display issue

New in Transmission 2.21 (Feb 9, 2011)

  • Fix compile error in the the 2.20 tarball
  • Several updated translations
  • Updated Spanish translation

New in Transmission 2.20 (Feb 7, 2011)

  • All Platforms:
  • Remember downloaded files when a drive is unplugged
  • File re-verification is no longer needed in some situations
  • Fix "Too many open files" error
  • Show the total downloading and seeding time per torrent
  • Fix webseeds
  • Better support for IPv6-only trackers
  • Add the ability to shutdown Transmission sessions via RPC
  • NAT-PMP and UPnP now also map the UDP port
  • Update the DHT code to dht-0.18
  • Faster parsing of bencoded data
  • Improve support for running scripts when a torrent finishes downloading
  • Fix reannounce interval when trackers return a 404 error
  • Fix checksum error on platforms running uClibc 0.9.27 or older
  • Fix memmem() errors on Solaris
  • GTK+:
  • Add "Add" and "Remove" buttons to the tracker list
  • Add filesize column to the files list
  • Several minor bugfixes and interface improvements
  • Qt:
  • Accept info_hash values in the "Add url..." dialog
  • Daemon:
  • Add "reannounce to tracker" option to transmission-remote
  • transmission-remote can now read auth info from environment variables
  • Fix configuration file bug with transmission-daemon running on Macs
  • Web Client:
  • Right-clicking a torrent now works with Firefox / Firegestures / Ubuntu
  • Utils:
  • Fix error when replacing substrings in tracker announce URLs
  • Webseeds are now displayed in transmission-show

New in Transmission 2.13 (Dec 13, 2010)

  • All Platforms:
  • Fix "No Announce Scheduled" tracker error
  • Fix build error on Solaris 10
  • Fix RPC documentation errors
  • Fix minor packaging errors
  • GTK+:
  • Unblur the statusbar icons
  • Fix truncation error in the Torrent Properties dialog.
  • Qt:
  • Fix crash when opening the Torrent Properties dialog on magnet links
  • Fix "undo" error when making changes in the Torrent Properties dialog
  • Add Brazilian Portuguese Translation
  • Add Spanish (LAC) Translation

New in Transmission 2.12 (Nov 15, 2010)

  • All Platforms:
  • Make the blocklist URL user-configurable
  • Several minor bug fixes and CPU speed improvements
  • Use slightly less bandwidth in DHT messages
  • Fix 2.10 build issue on uClibc systems
  • Mac:
  • Sort the file list alphabetically
  • Ensure the proper extension is used when saving the torrent file
  • Allow the Quick Look command when the inspector window has focus
  • GTK+:
  • Fix 2.11 crash when opening the Properties dialog on a magnet link torrent
  • Fix 2.00 regression which failed to inhibit hibernation on laptops
  • Qt:
  • Fix 2.10 build issue on Ubuntu
  • CLI:
  • Fix 2.10 crash
  • Web Client:
  • Upgrade to jQuery 1.4.3
  • Fix 2.11 regression when using the web client on IE7 or IE8

New in Transmission 2.11 (Oct 18, 2010)

  • All Platforms:
  • Fix a 2.10 crash
  • Fix minor build issues on various platforms, particularly embedded systems
  • Fix issue when saving bencoded files on small hardware running uClibc
  • Fix minor rounding issue when displaying percentages
  • Fix the optimistic unchoke interval
  • GTK+:
  • Fix drag-and-dropping a magnet link
  • Fix hiding dialogs when hiding Transmission in the notification area
  • Qt:
  • Fix crash in the file tree
  • Daemon:
  • Fix missing status message when using "transmission-remote --add"
  • Web Client:
  • Add Transmission website links to the action menu

New in Transmission 2.10 (Oct 11, 2010)

  • All Platforms:
  • Support for automatically stopping idle seeding torrents
  • Small memory cache to reduce disk IO
  • gzip compression support added to the RPC server
  • Add support for a cookies.txt file
  • Minor CPU optimizations
  • GTK+:
  • Files and folders can be opened by clicking on them in the files list
  • Update the interface when session changes are made via RPC
  • Fix the Details dialog to fit on a netbook screen
  • Qt:
  • Tracker announce list editing
  • New filterbar
  • Improved display for showing a torrent's tracker announces
  • Better DBUS integration
  • Support adding torrents via drag-and-drop
  • Add Desktop Notification for added/complete torrents
  • Other minor improvements
  • Web Client:
  • Peer list added to the inspector
  • Compact view mode
  • Support filtering by active and finished
  • Support sorting by size
  • Daemon:
  • Allow the .pidfile location to be set in settings.json
  • Utils:
  • New command-line utility "transmission-edit" for editing torrent files
  • New command-line utility "transmission-show" for viewing torrent files
  • New command-line utility "transmission-create" for creating torrent files

New in Transmission 2.10 (Oct 11, 2010)

  • All Platforms:
  • Support for automatically stopping idle seeding torrents
  • Small memory cache to reduce disk IO
  • gzip compression support added to the RPC server
  • Add support for a cookies.txt file
  • Minor CPU optimizations
  • GTK+:
  • Files and folders can be opened by clicking on them in the files list
  • Update the interface when session changes are made via RPC
  • Fix the Details dialog to fit on a netbook screen
  • Qt:
  • Tracker announce list editing
  • New filterbar
  • Improved display for showing a torrent's tracker announces
  • Better DBUS integration
  • Support adding torrents via drag-and-drop
  • Add Desktop Notification for added/complete torrents
  • Other minor improvements
  • Web Client:
  • Peer list added to the inspector
  • Compact view mode
  • Support filtering by active and finished
  • Support sorting by size
  • Daemon:
  • Allow the .pidfile location to be set in settings.json
  • Utils:
  • New command-line utility "transmission-edit" for editing torrent files
  • New command-line utility "transmission-show" for viewing torrent files
  • New command-line utility "transmission-create" for creating torrent files

New in Transmission 2.04 (Aug 8, 2010)

  • All Platforms:
  • Fix display bug in tr_truncd()
  • Fix long shutdown time in some situations
  • GTK+:
  • Fix inaccurate "active torrent" counts in the filterbar
  • Fix display bug with magnet link names
  • Qt:
  • Fix crash when accessing a password-protected remote session
  • Web Client:
  • Fix bad redirect

New in Transmission 2.01 (Jun 27, 2010)

  • All Platforms:
  • Better tracker announce management when completed torrents are moved from the incomplete directory
  • Speed up moving local data from one disk to another
  • Better parsing of nonstandard magnet links
  • GTK+:
  • Faster torrent file parsing
  • Fix the magnet link options dialog does not respect setting
  • Add an error popup if "Add URL" fails
  • Qt:
  • Fix crash after getting magnet torrent metadata
  • Fix torrent ratio goals
  • Fix "add torrent" dialog bug on KDE desktops that popped up previous torrents
  • Fix 2.00 bug that prevented multiple instances from being run
  • Fix remote mode bug that kept the torrent list from being shown
  • Support encryption settings in the preferences dialog
  • Use flagStr in the status field of the peer list
  • Request a full refresh when changing the session source
  • Fix the torrent list jumping to the top when a torrent is removed
  • Web Client:
  • Fix display bug caused by removal of a torrent hidden by the current filter

New in Transmission 2.0 (Jun 17, 2010)

  • All Platforms:
  • "Local Peer Discovery" for finding peers on the local network
  • Optimize download requests for the bandwidth available
  • Smarter heuristics when deciding the order to connect to peers
  • Faster verification of local data
  • Faster startup
  • Support more blocklist file formats
  • Use IEC standard units (KiB, MiB, GiB) instead of (KB, MB, GB)
  • Better handling of 404 tracker errors
  • GTK+:
  • New filterbar to filter by tracker, private/public, etc.
  • Compact View replaces Minimal View, taking up considerably less space
  • Show the Torrent Options dialog when adding magnet links
  • "Set Location" now supports moving multiple torrents at once
  • The Properties window now fits on low resolution screens
  • Add favicon support to the Properties dialog's Tracker tab
  • Qt:
  • Show the Torrent Options dialog when adding magnet links
  • Show all active trackers in the tracker display list
  • Show file sizes in the file tree
  • Added a confirm dialog when removing torrents
  • Properties and torrent options no longer jump around while editing
  • Allow setting locations for remote sessions
  • Miscellaneous UI fixes
  • Daemon:
  • Let users specify a script to be invoked when a torrent finishes downloading
  • Better support for adding per-torrent settings when adding a new torrent
  • Optional pidfile support
  • Option to start torrents paused
  • Option to delete .torrent files from watch directory
  • Web Client:
  • The context menu now works when multiple rows are selected
  • Show ETA for seeding torrents that have a seed ratio set

New in Transmission 1.93 (May 10, 2010)

  • All Platforms:
  • Fix rare crash when some peers disconnected unexpectedly
  • Fix bug which didn't parse scheduled speed limit dates correctly
  • Fix bug that broke magnet links whose names contained slashes
  • Fix crash when updating the blocklist when the disk is full
  • Fix slow file preallocation on Unix systems not using ext3/ext4
  • Fix regression which broke the "bind-address-ipv4" configuration setting
  • For better security, Web client connections are disabled by default
  • Update to miniupnpc-1.4
  • Transmission builds out-of-the-box with Curl 7.15.5. (Hello CentOS!)
  • GTK+:
  • Use the size for the system tray icon
  • Qt:
  • Fix bug that crashed when removing more than one torrent at once
  • Fix bug when parsing the remote password from the command line
  • Add support for the "incomplete directory" in the preferences dialog
  • Don't show "time remaining" for paused torrents
  • Daemon:
  • Fix bug parsing RPC requests when setting which files to not download
  • Fix possible crash when using inotify for the daemon's watchdir
  • Fix bugs in the configure script
  • Fix bug updating the blocklist over RPC
  • Web Client:
  • Fix bug that broke the "reverse sort order" menu checkbox

New in Transmission 1.92 (Mar 15, 2010)

  • Fix possible data corruption issue caused by data sent by bad peers during endgame
  • Fix potential buffer overflow when adding maliciously-crafted magnet links
  • Fix announces to IPv6 trackers
  • Fix DNS problems on some platforms, including Debian
  • Fix issues with the incomplete directory functionality
  • Fix port forwarding error on some routers by updating libnatpmp and miniupnp

New in Transmission 1.91 (Feb 22, 2010)

  • Fix 1.90 crash-on-startup bug that affected some users
  • Fix 1.90 bug that caused the "turtle mode" state to be forgotten between sessions
  • Fix 1.83 crash when adding a torrent by URL from an ftp source via the web client
  • For the BitTorrent? spec's "downloaded=X" passage, use the de facto standard

New in Transmission 1.90 (Feb 18, 2010)

  • All Platforms:
  • Add an option to disable the .part suffix for incomplete files
  • Add priority selector to GUI clients' add torrent windows
  • Fix 1.81 bug that broke HTTP requests to sites that gave HTTP 301 redirects
  • Fix 1.8x bug in announcing "finished downloading" and "stopping" at the same time
  • Fix 1.8x bug in announcing partial seeds
  • Try harder to make announces finish, even if the tracker responds slowly
  • Fix bug that didn't honor download speed limits of 0
  • Use fallocate64() for fast file preallocation on systems that support it
  • Magnet link improvements
  • Don't let "Disk is full" errors cause loss of configuration files
  • Faster parsing of bencoded data, such as torrent files
  • GTK+:
  • Give more helpful error messages if "Set Location" or "Add Magnet Link" fail
  • Add optional support for libappindicator
  • Minor build fixes
  • Daemon:
  • Add transmission-remote support for port testing and blocklist updating
  • Add transmission-daemon support for incomplete-dir, dht, and seedratio
  • If settings.json is corrupt, give an error telling where the problem is
  • Add option to specify where log messages should be written
  • Web Client:
  • Add a tracker tab to the inspector
  • Fix 1.8x display error when showing magnet link information
  • Qt:
  • Fix bug that prevented torrents from being added via web browsers

New in Transmission 1.83 (Jan 30, 2010)

  • Fix 1.80 announce error that caused uploads and downloads to periodically freeze
  • Fix 1.80 announce timeout error that caused "no response from tracker" message
  • Fix 1.80 "file not found" error message that stopped some torrents
  • Fix 1.82 crash when adding new torrents via their ftp URL
  • Fix 1.80 crash when receiving invalid request messages from peers
  • Fix 1.82 error when updating the blocklist

New in Transmission 1.82 (Jan 24, 2010)

  • The 1.81 announce did not contain the port number

New in Transmission 1.81 (Jan 24, 2010)

  • Fix 1.80 bug that misparsed some magnet links
  • Fix 1.80 bug that caused startup to be very sluggish for some people

New in Transmission 1.80 (Jan 21, 2010)

  • All Platforms:
  • Add support for magnet links
  • Add support for trackerless torrents
  • Add optional "incomplete directory" where partial downloads are stored
  • Add .part to incomplete files' filenames
  • Find more peers by announcing to each tier in a torrent's tracker list, rather than only one
  • Fix vulnerability from maliciously-crafted torrent files that could overwrite other files
  • Improved IPv6 support
  • Improved PEX sharing with other peers
  • Faster management of large peer lists
  • DHT improvements to bootstrapping and IPv6
  • Newly-added torrents without local data don't wait in the "Verify Local Data" queue anymore
  • Add an OS hint to not cache local data during torrent verification
  • Use less CPU when making encrypted handshakes to peers
  • Better filtering of bad IP addresses
  • Fix bug that gave "too many open files" error messages
  • Fix bug that could crash Transmission on shutdown
  • Fix bug that could unpause or repause a torrent on startup
  • When uploading, improve disk IO performance by prefetching the data in batches
  • Portability fixes for embedded systems
  • Other small bugfixes and improvements
  • GTK+:
  • Support org.gnome.SessionManager? interface for inhibiting hibernation
  • Added support for adding torrents by URL or magnet link
  • Add optional "download complete" sound using the XDG sound naming spec
  • When creating a torrent, make it easier to auto-add that new torrent
  • New statusbar "Ratio" icon submitted by jimmac
  • Fix minor memory leaks
  • GNOME HIG improvements
  • Daemon:
  • When running as a daemon, send log messages to syslog
  • Reload settings.json when receiving SIGHUP
  • transmission-remote now allows per-torrent speed limits to be set
  • Web Client:
  • Add speed limit "turtle mode" support
  • Double-clicking a torrent opens/closes the torrent inspector
  • Add "Start When Added" checkbox when adding torrents
  • Add Select All / Deselect All buttons to the file inspector
  • Add version information to the preferences dialog
  • Ensure the context menu goes away when clicking on torrents
  • Fix bug that obscured part of the context menu

New in Transmission 1.80 Beta 2 (Dec 11, 2009)

  • All Platforms:
  • Fix 1.80 beta 1 tracker connection / announce bug
  • Fix 1.80 beta 1 crash "Assertion failed: (a->byteCount == b->byteCount)"
  • Fix 1.80 beta 1 crash when being controlled by transmission-remote-dotnet
  • Fix 1.80 beta 1 crash when a malformed magnet link is given to Transmission
  • Better prefetching of local data that's being uploaded to peers
  • GTK+:
  • Fix 1.80 beta 1 bug in "Copy Magnet Link to Clipboard" on non-GNOME desktops
  • Support org.gnome.SessionManager? interface for inhibiting hibernation
  • Minor GNOME HIG improvements
  • Web Client:
  • Fix the turtle drop-down in IE
  • Add "Start When Added" checkbox when adding torrents
  • Add Select All / Deselect All buttons

New in Transmission 1.76 (Oct 26, 2009)

  • All Platforms:
  • Fix possible data loss when moving torrents to where they already are
  • Fix minor protocol error that didn't send a port message to some peers
  • Fix manpage errors
  • Mac:
  • Fix a potential crasher on Snow Leopard
  • When creating a torrent with multiple trackers, place each tracker into its own tier
  • Fix display glitch when changing sort to "Queue Order"
  • Daemon:
  • Fix possible data loss when using "transmission-remote --find"
  • Fix ratio-limit bug on some uClibc systems
  • Fix invalid JSON "nan" error on optware
  • GTK+:
  • Fix crash in the Preferences dialog when testing to see if the port is open
  • Fix crash on exit when a torrent's Properties dialog is open
  • Fix broken SIGINT (ctrl-c) handling
  • Fix tray menu's main window status when Transmission is started minimized
  • Fix 1.61 build failure on systems with new versions of glib but older versions of gtk
  • Fix tracker address display error in the torrent Properties dialog
  • Qt:
  • Fix crash when removing expired torrents from the display
  • Fix client from closing, rather than closing to the system tray, when clicking X
  • Cannot open a torrent in KDE4 with right-clicking

New in Transmission 1.75 (Sep 15, 2009)

  • All Platforms:
  • Don't wait so long on unresponsive trackers if there are other trackers to try
  • Adding corrupt/invalid torrents could crash Transmission
  • Fix 1.74 bug that caused a high CPU load on startup
  • Fix 1.74 bug that stopped multitracker if a single tracker sent an error message
  • Fix bug in converting other charsets to UTF-8
  • Handle HTTP redirects more gracefully
  • Faster verification of local data for torrents with small piece size
  • Fix 1.74 build error when compiling without DHT
  • GTK+:
  • Fix "sort by time remaining"
  • Fix the turtle toggle button on old versions of GTK+
  • Fix startup error if another copy of the Transmission GTK client is running
  • Fix clang build issue

New in Transmission 1.75 Beta 1 (Sep 8, 2009)

  • All Platforms:
  • Adding corrupt/invalid torrents could crash Transmission
  • Fix a couple of high CPU problems with UTF-8 and with embedded machines
  • Fix 1.74 bug that stopped some torrents after getting a tracker error message
  • Handle HTTP redirects more gracefully
  • Faster verification of local data for torrents with small piece size
  • Fix 1.74 build error when compiling without DHT
  • GTK+:
  • Fix the turtle toggle button on old versions of GTK+

New in Transmission 1.74 (Aug 25, 2009)

  • All Platforms:
  • Better data recovery in the case of an OS or Transmission crash
  • If a data file is moved, stop the torrent instead of redownloading it
  • Fix bug that didn't list some peers in the resume file and in PEX
  • More helpful torrent error messages
  • DHT now honors the bind-address-ipv4 configuration option
  • Fix Debian build error with miniupnpc
  • Fix Cygwin build error with strtold
  • Update to a newer snapshot of miniupnpc
  • GTK+:
  • Fix crash that occurred when adding torrents on some desktops
  • Synchronize the statusbar's and torrent list's speeds
  • Fix the Properties dialog's "Origin" field for multiple torrents
  • Qt:
  • New Russian Translation
  • If Transmission was minimized, clicking on it the icon tray didn't raise it
  • Daemon:
  • Speed Limit mode support added to transmission-remote
  • Add a "session stats" readout to transmission-remote
  • Web Client:
  • Progress bar shows seeding progress
  • Fix bug that displayed "%nan" when verifying a torrent
  • "Pause All" only appeared to pause torrents with peers until refresh

New in Transmission 1.74 Beta 1 (Aug 20, 2009)

  • All Platforms:
  • Better data recovery in the case of an OS or Transmission crash
  • Upgrade DHT to version 0.8
  • If a data file is moved, stop the torrent instead of redownloading it
  • Fix bug that didn't list some peers in the resume file and in PEX
  • More helpful torrent error messages
  • DHT now honors the bind-address-ipv4 configuration option
  • Fix Debian build error with miniupnpc
  • Fix Cygwin build error with strtold
  • Update to a newer snapshot of miniupnpc
  • GTK+:
  • Fix crash that occurred when adding torrents on some desktops
  • Synchronize the statusbar's and torrent list's speeds
  • Fix the Properties dialog's "Origin" field for multiple torrents
  • Qt:
  • New Russian Translation
  • If Transmission was minimized, clicking on it the icon tray didn't raise it
  • Daemon:
  • Add a "session stats" readout to transmission-remote
  • Web Client:
  • Progress bar shows seeding progress
  • Fix bug that displayed "%nan" when verifying a torrent
  • "Pause All" only appeared to pause torrents with peers until refresh

New in Transmission 1.73 (Jul 20, 2009)

  • All Platforms:
  • Fix bug where user-configured peer limits could be exceeded
  • Use less memory in some high-peer situations
  • Better estimation of time left to download
  • Support supportcrypto and requirecrypto flags in http tracker announces
  • Update to newer snapshots of libnatpmp and miniupnpc
  • Make DHT a compile-time option
  • GTK+:
  • Use GDK-safe versions of g_idle_add() and g_timeout_add*()
  • Save some space in GTK+ >= 2.16.0 by not building SexyIconEntry
  • Qt:
  • Fix bug that crashed Qt client when setting alternative up/down speeds
  • Daemon:
  • Add umask support
  • Web Client:
  • Inspector and Add Torrent buttons for iPhone/iPod Touch
  • Add location field to inspector
  • CLI:
  • Some torrent files created with transmission-cli were invalid

New in Transmission 1.72 (Jun 17, 2009)

  • All Platforms:
  • Fix 1.70 crash with assertion "tv->tv_usec >= 0"
  • Fix 1.70 crash with assertion "tr_peerIoSupportsFEXT( msgs->peer->io )"
  • Better DHT announce management
  • Fix error in reporting webseed counts via RPC
  • Better file preallocation on embedded systems
  • GTK+:
  • Fix 1.70 crash when setting options in the Properties dialog
  • Fix a rare crash in desktop notifications
  • Can now sort the file list by priority, download, and completeness
  • Adding a torrent from a browser sometimes didn't work.
  • Various usability improvements
  • Daemon:
  • Remote didn't always send the right Encoding header in requests

New in Transmission 1.71 (Jun 9, 2009)

  • All Platforms:
  • Fix 1.70 bug that caused high CPU use in high-peer swarms
  • Fix 1.70 build problems with DHT and libevent
  • Daemon:
  • Fix watchdir issue on OSes that don't have inotify
  • GTK+:
  • Fix 1.70 intltool build problem
  • Fix crash when the OS's stock mime-type icons are misconfigured
  • Handle very long torrent file lists faster
  • Web Client:
  • Fix 1.70 bug where some torrents appeared to be duplicates

New in Transmission 1.70 (Jun 5, 2009)

  • All Platforms:
  • Distributed hash table (DHT) support for public torrents
  • Add option for moving and finding a torrent's data on the disk
  • JSON RPC messages can be ~85% shorter, saving bandwidth and CPU
  • When available, use the system's copy of libevent instead of building one
  • Automatically pause torrents when verifying
  • Fix small bugs and memory leaks
  • Web Client:
  • Big speed improvements, especially with large torrents
  • Fix 1.61 bug that broke adding torrents via the web client
  • Add the ability to upload multiple torrents at once
  • Torrents added by URL were always paused, regardless of preferences
  • Comments and announce addresses were cut off in the inspector
  • The "data remaining" field wasn't updated when the number reached 0
  • Smaller design adjustments
  • GTK+:
  • Fix intltool build problem
  • Make it clearer that the status bar's ratio mode button is a button
  • Torrent comment box did not scroll, so long comments were partially hidden
  • Qt:
  • Initial torrent list was sometimes incorrect
  • Add-torrent-and-delete-source deleted the source even if there was an error
  • Prefs dialog didn't show or modify "Stop seeding torrents at ratio"

New in Transmission 1.61 (May 12, 2009)

  • All Platforms:
  • Close potential CSRF security hole for Web Client users
  • Fix locale error in the JSON parser
  • Qt:
  • Various small bugfixes to the beta Qt client
  • Daemon:
  • transmission-remote was unable to select torrents by their SHA1 hash
  • Web Client:
  • Fix 1.60 error when serving Web Client files on some embedded
  • Add response header to allow clients to cache static files

New in Transmission 1.60 (May 5, 2009)

  • All Platforms:
  • Seed ratio limiting
  • Transfer prioritization
  • Option to specify if transfers are included in the global bandwidth limits
  • Random port, with optional randomization on startup
  • Improvements to UPnP port forwarding
  • Support for file preallocation on XFS filesystems
  • Qt:
  • New beta Qt client!
  • GTK+:
  • Speed Limit: Second set of bandwidth limits that can be toggled or scheduled
  • Properties dialog now lets you edit/view multiple torrents at once
  • Allow sorting of the torrent list by size and by ETA
  • Show the file icon in the list
  • Daemon:
  • Watch folder for auto-adding torrents
  • Many new features in the RPC/JSON interface
  • Allow users to specify a specific address when listening for peers
  • Web Client:
  • File selection and prioritization
  • Add option to verify local data
  • Fix "Remove Data" bug

New in Transmission 1.52 (Apr 13, 2009)

  • GTK+ and Daemon:
  • Always honor the XDG setting for the download directory
  • GTK+:
  • Fix formatting error when showing speeds measured in MB/s
  • Fix bug that caused some scheduled speed limit time settings to be lost
  • Use the new blocklist URL when updating the blocklist
  • Web Client:
  • On the server, better filtering of bad URLs
  • On the server, faster json serialization
  • Fix "Remove Data" bug
  • Fix minor web client 301 redirect error
  • Better Internet Explorer support

New in Transmission 1.51 (Feb 27, 2009)

  • All Platforms
  • Fix configure script issues with non-gcc compilers and user-defined CFLAGS environment variables
  • Decrease CPU usage in some situations
  • Close a rare race condition on startup
  • More efficient use of libcurl when curl 7.18.0 or newer is present
  • GTK+
  • Play nicely with Ubuntu's new notification server
  • Add Pause All and Resume All buttons
  • Web Client
  • Support for Internet Explorer
  • Layout fixes when viewed on an iPhone/iPod touch

New in Transmission 1.50 (Feb 14, 2009)

  • All Platforms:
  • IPv6 support for peers, and for trackers with explicit IPv6 addresses
  • Improved connectivity for encrypted peers
  • Fix 1.42 error that made tracker announces slower over time
  • Fix a Mac-centric peer connection bug from 1.41
  • Use less CPU cycles when managing very fast peers
  • Better handling of non-UTF-8 torrent files
  • When removing local data, only remove data from the torrent
  • Close potential DoS vulnerability in 1.41
  • Many other bugfixes
  • GTK+:
  • Various usability improvements
  • Better Gnome HIG compliance in the statusbar, properties dialog, and more
  • Daemon:
  • Lots of new options added to transmission-remote
  • Fix 1.42 whitelist bug
  • Make i18n support optional for cli and daemon clients
  • CLI:
  • Support session.json settings, just as the Daemon and GTK+ clients do
  • Web Interface:
  • Torrents can now be added by URL
  • Add the ability to "remove local data" from the web client

New in Transmission 1.50 Beta 3 (Jan 27, 2009)

  • About 1.50: 1.50 doesn't have many visual changes, but has lots of improvements under the hood, including IPv6 support, better management of peers, trackers, and local files, and lots of bug fixes.
  • About 1.50 beta 3: this beta has three high-priority peer connectivity fixes: one affecting mac users, one affecting encrypted peer traffic, and one affecting swarms with low peer counts. Also, the "add torrent by URL" feature has been reintroduced into the Web UI.

New in Transmission 1.42 (Dec 27, 2008)

  • Transmission 1.42 is now available for download, fixing a lockup issue in 1.41.

New in Transmission 1.41 (Dec 24, 2008)

  • All Platforms:
  • Better peer management
  • Support BitTorrent Enhancement Proposal (BEP) #21 "Extension for Partial Seeds"
  • Partial support for BEP #6 "Fast Extension" (reject, have all/none)
  • Honor the peer's BEP #10 reqq key, when available
  • Fix 1.40 "Got HTTP Status Code: 0" error message
  • Fix 1.40 "lazy bitfield" error
  • Fix 1.40 "jumpy upload speed" bug
  • More accurate bandwidth measurement and allocation
  • Fix handshake peer_id error
  • Corrrectly handle Windows-style newlines in Bluetack blocklists
  • File selection & priority was reset when editing a torrent's tracker list
  • Fix autoconf/automake build warnings
  • GTK+:
  • In the Details dialog's peer tabs, rows were sometimes duplicated
  • Minor bugfixes, usability changes, and locale improvements
  • Three new translations: Afrikaans, Asturian, Bosnian
  • Sixteen updated translations
  • Daemon:
  • Fix 1.40 bug in handling IP whitelist
  • Minor bugfixes and output cleanup
  • Windows portability
  • CLI:
  • Fix small free-memory-read bug

New in Transmission 1.40 (Nov 10, 2008)

  • All Platforms:
  • Tracker communication uses fewer resources
  • More accurate bandwidth limits
  • Reduce disk fragmentation by preallocating files
  • Better stability, security, and performance in the Web UI and RPC server
  • Support compression when serving Web UI and RPC responses
  • Simplify the RPC whitelist
  • Fix bug that prevented handshakes with encrypted BitComet peers
  • Fix 1.3x bug that could re-download some data unnecessarily
  • Lazy bitfields
  • GTK+:
  • Option to automatically update the blocklist weekly
  • Added off-hour bandwidth scheduling
  • Simplify file/priority selection in the details dialog
  • Fix a couple of crashes
  • 5 new translations: Australian, Basque, Kurdish, Kurdish (Sorani), Malay
  • 43 updated translations
  • Web Client:
  • The Web Client is now out of beta
  • Minor display fixes
  • On iPhone/iPod touch, launching from the home screen hides the address bar
  • Daemon:
  • Added the ability to get detailed peer information on torrents
  • Fix bug that didn't handle --config-dir and TRANSMISSION_HOME correctly
  • Windows portability

New in Transmission 1.40 Beta 1 (Nov 4, 2008)

  • This version contains a few new features, but mostly concentrates on bugfixes, stability, better network management, and slightly lighter memory and cpu footprints.

New in Transmission 1.34 (Sep 17, 2008)

  • All Clients:
  • Don't reconnect too frequently to the same peer
  • Webseed bugfix
  • Fix bug that caused some transfers to not be scraped
  • Fix BSD build issues
  • Handle OpenTracker's `downloaded' key in announce responses
  • GTK+:
  • Minor display fixes
  • 15 updated translations + 1 new language
  • Daemon:
  • Minor display fixes
  • Web Client:
  • Minor display fixes
  • CLI:
  • Fix crash when creating a torrent file