Skip to content

Releases: ikatson/rqbit

v8.0.0

06 Jan 16:58
bc5e23b
Compare
Choose a tag to compare

rqbit v8.0.0

Why a major release? Lots of merged PRs since v7.0.1, minor breaking changes in librqbit API and CLI naming.
Other than that, it's a checkpoint to release all the work by many contributors.

Breaking changes

  • Minimal Rust version bumped from 1.75 to 1.78
  • CLI parameters changes:
    • renamed disable-upnp -> disable-upnp-port-forward
    • removed upnp-server-hostname
    • added enable-upnp-server
  • librqbit API changes: if any, they are minor, but might be some depending on usage. All should be easy to fix just by resolving compilation errors.

UI features

  • There's a banner in the bottom showing total up/down speed and uploaded/downloaded bytes since restart
  • Upload multiple files through UI

Some Other features

  • upload/download rate limits
  • watching a directory for .torrent files and adding them automatically (usage in #237)
  • Improved UPNP server support. Now works on some Samsung TVs, and should be more reliable overall.

HTTP API changes

BitTorrent protocol features

  • BEP-47 padding files
  • BEP-53 select only files from magnet
  • BEP-11 Peer EXchange

What's Changed

  • feat: add on_piece_completed method on TorrentStorage by @cocool97 in #219
  • PEX - Peer Exchange initial impl by @izderadicka by @ikatson in #221
  • [Feature] UPNP MediaServer: send notifies on all interfaces, no need to specify hostname by @ikatson in #222
  • [Feature] option to disable upload by @ikatson in #223
  • Desktop same workspace by @ikatson in #225
  • [Feature] [UPnP] connection manager stub by @ikatson in #226
  • Various tweaks to peer protocol information by @ikatson in #227
  • Smarter fastresume by @ikatson in #228
  • Standardized m3u8 formatting by @Artrix9095 in #229
  • Remove error when adding duplicate torrents by @Artrix9095 in #230
  • [UPnP / DLNA] Updates for Samsung to work by @ikatson in #231
  • UPNP: join all multicast groups from all interfaces (not just the default one picked by the kernel) by @ikatson in #232
  • Fastresume: check at least one piece from each file + windows fix by @ikatson in #235
  • In PEX we should also look at dropped peers by @izderadicka in #233
  • Upload multiple files through UI (fix #68) by @ikatson in #236
  • [Feature] watching a directory for .torrent files and adding them automatically by @ikatson in #237
  • [Feature] SSDP IPv6 support by @ikatson in #238
  • [Refactor] Re-use code in "merge_streams" by @ikatson in #240
  • Change to restarting of dead peers by @izderadicka in #239
  • Add support for adding custom trackers by @Moeweb647252 in #243
  • Correct peer outgoing address for incomming peers by @izderadicka in #244
  • [Refactor] Generic peer IP by @ikatson in #246
  • [Perf] Increase http_api stream capacity (perf optimisation) by @ikatson in #247
  • feat: upgrade to tauri 2.0 by @PastaPastaPasta in #249
  • feat: implement BEP-53 support by @PastaPastaPasta in #248
  • refactor: use byteorder crate to enhance portability (to BE systems), and enhance code readability, avoiding manual byte manipulations by @PastaPastaPasta in #250
  • Disable upload: do not expose in default builds, move under a feature flag. by @ikatson in #251
  • Migrate linux configuration to a better named path. by @ikatson in #253
  • Fix: transactional pause by @Mrreadiness in #254
  • Add CLI parameter to allow send downloads to remote server by @izderadicka in #257
  • Added destination_fodler to TorrentDetailsResponse by @markolo25 in #263
  • Endpoint to show all torrents and all stats by @ikatson in #268
  • BEP-47 padding files + refactor related code by @ikatson in #269
  • BEP-47 - UI support and updates by @ikatson in #270
  • [feature] support 40-byte infohash (not a magnet) as a way to add torrents by @ikatson in #271
  • Update minimal Rust version to 1.76 by @ikatson in #278
  • [feature] upload/download rate limits by @ikatson in #275
  • Basic auth in HTTP API by @ikatson in #279
  • Enable thin LTO release but not release-github by @luigi311 in #283
  • Clippy updates + update Rust deps by @ikatson in #289
  • PEX - sharing peers with othes [continue #261] by @ikatson in #284
  • [feature] HTTP API timeouts by @ikatson in #290
  • [breaking] multiple refactorings in preparation for deferring torrent metadata resolution by @ikatson in #292
  • Prepare v8.0.0 by @ikatson in #294

New Contributors

Full Changelog: v7.0.1...v8.0.0

v7.1.0-beta.1

13 Sep 08:29
7a807f3
Compare
Choose a tag to compare
v7.1.0-beta.1 Pre-release
Pre-release

What's Changed since 7.1.0-beta.0

  • UPNP: join all multicast groups from all interfaces (not just the default one picked by the kernel) by @ikatson in #232
  • Fastresume: check at least one piece from each file + windows fix by @ikatson in #235
  • In PEX we should also look at dropped peers by @izderadicka in #233

Full Changelog: v7.1.0-beta.0...v7.1.0-beta.1

v7.1.0-beta.0

02 Sep 14:11
0fa24e6
Compare
Choose a tag to compare
v7.1.0-beta.0 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v7.0.1...v7.1.0-beta.0

v7.0.1

28 Aug 13:05
c139697
Compare
Choose a tag to compare

7.0.1 - hotfix release

The binaries were ok, but the cargo crate had an issue were it couldn't parse torrents - fixed here c063cc5

NOTE: also for 7.0.0 and 7.0.1 the docker images and linux binaries were compiled to use ring for SHA1, instead of openssl, which turned out to be very slow. I reverted to openssl and rebuilt these without upgrading the version as nothing in rqbit changed, only the build parameters (enabled features).

7.0.0 release notes

Full Changelog: v7.0.0...v7.0.1

v7.0.0

27 Aug 17:48
973c3dd
Compare
Choose a tag to compare

rqbit 7

Major new features:

  • Integrated UPnP server to browse and stream directly to your LAN devices (e.g. TVs) more here
  • SOCKS5 proxy support docs
  • Now publishing multi-arch Docker images
  • Playlist generation support through API and UI links
  • Aggregate statistics in API and visible in UI
  • MANY reliability improvements
  • Fastresume - to restart quickly without rehashing

There's minor breaking changes in the CLI and librqbit API.

Merged PRs

Full Changelog: v6.0.0...v7.0.0

v7.0.0-beta.3

23 Aug 23:46
4ad12c3
Compare
Choose a tag to compare

Major feature

UPnP server integrated into rqbit - it can advertise all known torrents to local network, and you can browse and stream torrents from compatible devices (checked on my LG and Sony TVs).

Configurable both from UI and CLI.

CLI usage

rqbit --upnp-server-hostname 192.168.0.112 --upnp-server-friendly-name "rqbit is awesome" server start ...

UI

Screenshot 2024-08-24 at 00 36 50

What's Changed

Full Changelog: v7.0.0-beta.2...v7.0.0-beta.3

v7.0.0-beta.2

21 Aug 12:31
c697809
Compare
Choose a tag to compare

What's Changed

  • [Feature] Fast resume - quick restart without rehashing by @ikatson in #203
  • [Feature] session stats (combined down/up speed + UI) by @ikatson in #204

Also fixed bugged desktop UI

Full Changelog: v7.0.0-beta.1...v7.0.0-beta.2

v7.0.0-beta.1

19 Aug 16:35
d99ebcc
Compare
Choose a tag to compare

Reliability improvements. Also fix a bug introduced in 7.0.0-beta.0

For the rest of 7.0.0 changes see https://github.com/ikatson/rqbit/releases/edit/v7.0.0-beta.0

What's Changed

Full Changelog: v7.0.0-beta.0...v7.0.0-beta.1

v7.0.0-beta.0

15 Aug 13:57
45779da
Compare
Choose a tag to compare

NOTE: don't use this, it has a bug where torrents are not deleted. Use https://github.com/ikatson/rqbit/releases/tag/v7.0.0-beta.1 instead

rqbit 7.0.0 beta 0

Why a major upgrade? There's minor breaking changes in the CLI and librqbit API.

Biggest changes:

  • socks5 proxy support
  • m3u playlist generation support
  • postgres backend for session storage (instead of regular json file)
  • now sharing torrent metadata with peers who request it
  • HTTP API now accepts info_hashes in addition to integer indexes

What's Changed

Full Changelog: v6.0.0...v7.0.0-beta.0

v6.0.0

06 Aug 13:24
b090736
Compare
Choose a tag to compare

rqbit v6.0.0

There's a ton of internal changes an refactorings.

librqbit API might have changed a tiny bit, mostly from newly added options.

Biggest changes:

  • streaming API + exposed HTTP endpoint + Web UI linking to file streams
  • librqbit: dynamic storage backends
  • ability to write to disk in background with buffering up to certain memory size. Isn't proven useful yet, but may be useful for disks with occasional latency spikes.
  • optimisations

PRs merged

New Contributors

Full Changelog: v5.6.4...v6.0.0