MonoTorrent 2.0.0-alpha.unstable.rev0107

Suggested Alternatives

MonoTorrent 3.0.1

This is a prerelease version of MonoTorrent.
There is a newer version of this package available.
See the version list below for details.
dotnet add package MonoTorrent --version 2.0.0-alpha.unstable.rev0107                
NuGet\Install-Package MonoTorrent -Version 2.0.0-alpha.unstable.rev0107                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MonoTorrent" Version="2.0.0-alpha.unstable.rev0107" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MonoTorrent --version 2.0.0-alpha.unstable.rev0107                
#r "nuget: MonoTorrent, 2.0.0-alpha.unstable.rev0107"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install MonoTorrent as a Cake Addin
#addin nuget:?package=MonoTorrent&version=2.0.0-alpha.unstable.rev0107&prerelease

// Install MonoTorrent as a Cake Tool
#tool nuget:?package=MonoTorrent&version=2.0.0-alpha.unstable.rev0107&prerelease                

General

  • Refactored the piece picking API to simplify the way custom picking algorithms can be implemented. IPiecePicker is responsible for tracking which blocks have been requested from each peer. IPieceRequester is responsible for determining how to prioritise piece requests, and which peer to attempt to download new blocks from.

For example the StreamingPieceRequester uses StandardPicker to prioritise pieces which are needed immediately by issuing multiple requests for blocks in those pieces, and by requesting them off peers who have high transfer rates. It then limits the number of outstanding requests for lower priority pieces so that it can react quickly if the user seeks to a new position in the stream.

Similarly, the StandardPieceRequester uses a StandardPicker to implement normal bittorrent rarest-first downloading logic. The standard requester will also automatically begin issuing duplicate requests for blocks once every block has been requested at least once.

The same StandardPicker is used by bother IPieceRequester implementations as it is flexible enough to support nearly every usecase.

  • Some small fixes around the new immutable API for setting allowed encyption types.
  • Add the necessary API to set EngineSettings.DiskCacheBytes and ensured this can be set to 0 to disable the in-memory disk cache. This is now off by default as it is still experimental.
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on MonoTorrent:

Package Downloads
H.Runners.TorrentRunner

Allows you to download torrents.

BitTorrentStorage

Bit Torrent Storage

GitHub repositories (11)

Showing the top 5 popular GitHub repositories that depend on MonoTorrent:

Repository Stars
Sonarr/Sonarr
Smart PVR for newsgroup and bittorrent users.
Radarr/Radarr
Movie organizer/manager for usenet and torrent users.
Prowlarr/Prowlarr
Prowlarr is an indexer manager/proxy built on the popular *arr .net/reactjs base stack to integrate with your various PVR apps, supporting management of both Torrent Trackers and Usenet Indexers.
Lidarr/Lidarr
Looks and smells like Sonarr but made for music.
Readarr/Readarr
Book Manager and Automation (Sonarr for Ebooks)
Version Downloads Last updated
3.0.3-alpha.unstable.rev0049 276 9/14/2024
3.0.3-alpha.unstable.rev0024 77 8/28/2024
3.0.3-alpha.unstable.rev0003 105 8/19/2024
3.0.2 2,970 8/4/2024
3.0.1 184 8/2/2024
3.0.0 336 7/28/2024 3.0.0 is deprecated because it has critical bugs.
3.0.0-beta.rev0264 94 7/17/2024 3.0.0-beta.rev0264 is deprecated because it is no longer maintained.
3.0.0-beta.rev0240 125 6/30/2024 3.0.0-beta.rev0240 is deprecated because it is no longer maintained.
3.0.0-beta.rev0159 2,309 2/1/2023 3.0.0-beta.rev0159 is deprecated because it is no longer maintained.
3.0.0-beta.rev0157 157 2/1/2023 3.0.0-beta.rev0157 is deprecated because it is no longer maintained.
3.0.0-beta.rev0106 761 12/23/2022 3.0.0-beta.rev0106 is deprecated because it is no longer maintained.
3.0.0-beta.rev0104 135 12/15/2022 3.0.0-beta.rev0104 is deprecated because it is no longer maintained.
3.0.0-beta.rev0102 403 12/6/2022 3.0.0-beta.rev0102 is deprecated because it is no longer maintained.
3.0.0-beta.rev0068 250 11/12/2022 3.0.0-beta.rev0068 is deprecated because it is no longer maintained.
3.0.0-beta.rev0064 147 11/6/2022 3.0.0-beta.rev0064 is deprecated because it is no longer maintained.
3.0.0-beta.rev0050 135 11/2/2022 3.0.0-beta.rev0050 is deprecated because it is no longer maintained.
3.0.0-beta.rev0034 184 10/18/2022 3.0.0-beta.rev0034 is deprecated because it is no longer maintained.
3.0.0-beta.rev0015 183 9/26/2022 3.0.0-beta.rev0015 is deprecated because it is no longer maintained.
3.0.0-beta.rev0010 253 8/7/2022 3.0.0-beta.rev0010 is deprecated because it is no longer maintained.
3.0.0-beta.rev0000 213 7/10/2022 3.0.0-beta.rev0000 is deprecated because it is no longer maintained.
3.0.0-alpha.unstable.rev0233 151 7/8/2022 3.0.0-alpha.unstable.rev0233 is deprecated because it is no longer maintained.
3.0.0-alpha.unstable.rev0217 151 6/25/2022 3.0.0-alpha.unstable.rev0217 is deprecated because it is no longer maintained.
2.0.7 88,170 12/23/2022
2.0.6 5,482 7/19/2022 2.0.6 is deprecated because it is no longer maintained.
2.0.5 16,925 3/27/2022 2.0.5 is deprecated because it is no longer maintained.
2.0.4 321,898 1/13/2022 2.0.4 is deprecated because it is no longer maintained.
2.0.3 1,528 12/22/2021 2.0.3 is deprecated because it is no longer maintained.
2.0.2 1,345 12/4/2021 2.0.2 is deprecated because it is no longer maintained.
2.0.1 5,426 10/29/2021 2.0.1 is deprecated because it is no longer maintained.
2.0.0 15,342 5/4/2021 2.0.0 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0193 243 4/3/2021 2.0.0-alpha.unstable.rev0193 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0192 217 4/2/2021 2.0.0-alpha.unstable.rev0192 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0167 215 3/18/2021 2.0.0-alpha.unstable.rev0167 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0147 223 3/13/2021 2.0.0-alpha.unstable.rev0147 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0132 228 2/25/2021 2.0.0-alpha.unstable.rev0132 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0123 222 2/20/2021 2.0.0-alpha.unstable.rev0123 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0122 197 2/18/2021 2.0.0-alpha.unstable.rev0122 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0112 225 2/17/2021 2.0.0-alpha.unstable.rev0112 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0107 242 2/10/2021 2.0.0-alpha.unstable.rev0107 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0037 290 12/19/2020 2.0.0-alpha.unstable.rev0037 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0031 273 12/18/2020 2.0.0-alpha.unstable.rev0031 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0017 243 12/10/2020 2.0.0-alpha.unstable.rev0017 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.build1 297 12/7/2020 2.0.0-alpha.unstable.build1 is deprecated because it is no longer maintained.
1.0.30 1,393 1/7/2022 1.0.30 is deprecated because it is no longer maintained.
1.0.29 11,427 2/16/2021 1.0.29 is deprecated because it is no longer maintained.
1.0.28 6,991 11/25/2020 1.0.28 is deprecated because it is no longer maintained.
1.0.27 1,567 11/24/2020 1.0.27 is deprecated because it is no longer maintained.
1.0.26 1,396 11/24/2020 1.0.26 is deprecated because it is no longer maintained.
1.0.25 1,533 11/14/2020 1.0.25 is deprecated because it is no longer maintained.
1.0.24 2,472 8/12/2020 1.0.24 is deprecated because it is no longer maintained.
1.0.23 2,261 7/6/2020 1.0.23 is deprecated because it is no longer maintained.
1.0.22 5,165 5/26/2020 1.0.22 is deprecated because it is no longer maintained.
1.0.21 2,991 4/24/2020 1.0.21 is deprecated because it is no longer maintained.
1.0.20 1,922 4/13/2020 1.0.20 is deprecated because it is no longer maintained.
1.0.19 23,396 3/27/2020 1.0.19 is deprecated because it is no longer maintained.
1.0.18 2,421 3/16/2020 1.0.18 is deprecated because it is no longer maintained.
1.0.17 1,513 3/9/2020 1.0.17 is deprecated because it is no longer maintained.
1.0.16 1,532 3/3/2020 1.0.16 is deprecated because it is no longer maintained.
1.0.16-alpha 1,294 2/5/2020 1.0.16-alpha is deprecated because it is no longer maintained.
1.0.15 1,570 2/2/2020 1.0.15 is deprecated because it is no longer maintained.
1.0.14 1,434 1/30/2020 1.0.14 is deprecated because it is no longer maintained.
1.0.13 1,539 1/30/2020 1.0.13 is deprecated because it is no longer maintained.
1.0.12 1,579 1/16/2020 1.0.12 is deprecated because it is no longer maintained.
1.0.11 4,104 1/8/2020 1.0.11 is deprecated because it is no longer maintained.
1.0.10 2,040 12/11/2019 1.0.10 is deprecated because it is no longer maintained.
1.0.9 1,834 12/2/2019 1.0.9 is deprecated because it is no longer maintained.
1.0.9-beta 1,214 11/28/2019 1.0.9-beta is deprecated because it is no longer maintained.
1.0.8 1,554 11/19/2019 1.0.8 is deprecated because it is no longer maintained.
1.0.7 1,571 11/2/2019 1.0.7 is deprecated because it is no longer maintained.
1.0.6 1,489 11/1/2019 1.0.6 is deprecated because it is no longer maintained.
1.0.5 1,444 11/1/2019 1.0.5 is deprecated because it is no longer maintained.
1.0.4 1,517 10/30/2019 1.0.4 is deprecated because it is no longer maintained.
1.0.3 1,608 10/16/2019 1.0.3 is deprecated because it is no longer maintained.
1.0.2 1,581 9/27/2019 1.0.2 is deprecated because it is no longer maintained.
1.0.1 1,590 9/6/2019 1.0.1 is deprecated because it is no longer maintained.
1.0.0 1,689 9/6/2019 1.0.0 is deprecated because it is no longer maintained.
0.99.136-beta 1,273 9/6/2019 0.99.136-beta is deprecated because it is no longer maintained.
0.99.134-beta 1,259 9/5/2019 0.99.134-beta is deprecated because it is no longer maintained.
0.99.119-alpha 1,195 9/4/2019 0.99.119-alpha is deprecated because it is no longer maintained.
0.9.0 10,564 6/10/2011 0.9.0 is deprecated because it is no longer maintained.