news/news-4.0.0.md
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:
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."
transmission/transmission so that contributors can submit PRs to improve it.torrent-added-verify-mode, to force-verify added torrents. (#4611)4.0.0-beta.3 potential socket leak. (#4616)4.0.0-beta.3 regression that failed to detect largefile build flags on 32bit systems. (#4627)4.0.0-beta.1 UI bug when removing a tracker from the announce list. (#4635)4.0.0-beta.1 FTBFS error on CentOS 7. (#4673, #4675)4.0.0-beta.1 regression that broke the Piece View "blinking" when a piece completes. (#4587)4.0.0-beta.1 regression that incorrectly handled corrupt blocklists. (#4705)4.0.0-beta.1 regression making it impossible to close "Set location" dialog (GTK 3 only). (#4625)4.0.0-beta.2 regression leading to crash during progress bars rendering on some systems. (#4688)4.0.0-beta.1 potential crash when detecting mime-types. (#4569)4.0.0-beta.1 regression that broke file priority buttons in the web client. (#4610)systemd unit. (#4612)4.0.0-beta.1 regression when displaying session info. (#4624)4.0.0-beta.1 regression when displaying tracker info. (#4633)Last but certainly not least, a big Thank You to these people who contributed to this release:
4.0.0-beta.3 potential socket leak. (#4616)4.0.0-beta.1 regression that broke file priority buttons in the web client. (#4610)systemd unit. (#4612)