← Back to all sparks
T

Transmission

INFRA · APIS
Velocity0.0

Lightweight cross-platform BitTorrent client

Transmission rewrote its RPC API to JSON-RPC 2.0 — then the 4.1 beta train stalled.

bittorrentjson-rpcapi-migrationbeta-freezeutpcross-platform
◆Current state
The whole visible history is the 4.1.0 beta series, running from December 2024 to January 2026 and developed in parallel with the 4.0.x bug-fix line since 2023. Across those betas the client picked up sequential downloading, a selectable µTP-versus-TCP preferred transport, proxy support for web connections, IPv6 and dual-stack UDP trackers, native platform icons, and a JSON-RPC 2.0-compliant RPC API with snake_case unified across RPC and settings.json. Feature freeze was declared at beta.5 in January 2026, and nothing has shipped since.
◆Where it's heading
The interesting work is at the integration boundary, not in the download engine: the RPC surface has been standardised and renamed, and beta.5 was largely spent repairing what those changes broke, including backwards-incompatible keys accidentally written into settings files. That is the cost profile of an API migration in a project with a large ecosystem of third-party remotes. With feature freeze held for seven months and no 4.1.0 final, the release is late relative to its own stated plan.
◆Prediction
The next release should be 4.1.0 final or a further beta rather than new features, since the branch is frozen — but the entries give no signal on what is holding it.

◆Recent moves

  1. 9mo ago

    4.1.0-beta.5 enters feature freeze and repairs settings-file damage

    Feature freeze for 4.1.0, and the fix list reads as cleanup after the previous betas — stuck downloads from beta.1, broken Windows icons from beta.4, and backwards-incompatible keys beta.4 had been writing into settings files across five separate issues. The RPC version header added here helps clients detect the new JSON-RPC support.

    View source ↗
  2. 10mo ago

    4.1.0-beta.4 replaces the RPC API with a JSON-RPC 2.0 one

    ⚡ SPARK

    The pivot point of the 4.1 cycle: the RPC surface every third-party client depends on is standardised, and RPC and settings.json strings are unified to snake_case. Native platform icons ship alongside, but the API change is what the following beta spent most of its fixes on.

    View source ↗
  3. 11mo ago

    4.1.0-beta.3 adds proxy support and streaming-friendly sequential writes

    Sequential mode now flushes verified pieces to disk immediately, which makes the data usable by streaming apps while the download is still running — a small change that opens a real use case. Proxy support for web connections and respect for tracker interval keys round it out.

    View source ↗
  4. 1y ago

    4.1.0-beta.2 adds sequential downloading and BEP-7 tracker fallback

    Sequential downloading arrives as an option, alongside support for trackers still on the old BEP-7 IPv4/IPv6 parameters and immediate disconnection of blocklisted peers on blocklist update. Incremental protocol and peer-handling work in the pre-freeze phase of the branch.

    View source ↗
  5. 1y ago

    4.1.0-beta.1 opens a branch two years in development

    The first beta of a branch that had been developing alongside 4.0.x since early 2023, with major internal changes. The preferred-transport setting for choosing µTP over TCP and improved µTP performance are the notable additions — early evidence that this cycle is about transport and interface choices rather than the core download loop.

    View source ↗