MonoTorrent 2.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package MonoTorrent --version 2.0.0
NuGet\Install-Package MonoTorrent -Version 2.0.0
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" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MonoTorrent --version 2.0.0
#r "nuget: MonoTorrent, 2.0.0"
#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

// Install MonoTorrent as a Cake Tool
#tool nuget:?package=MonoTorrent&version=2.0.0

General

This is the first stable release of the 2.0 series. There are far too many changes between 1.x and 2.0 to list, but suffice it to say there have been numerous bug fixes and performance improvements across the board. In particular, there have been substantial improvements to the Streaming mode.

If you were using StreamProvider in past releases, the new approach is to use ClientEngine.AddStreamingAsync which will return a TorrentManager configured for streaming. Once you start the download you can create a stream to any of the files in the torrent using TorrentManager.StreamProvider, just like before.

MonoTorrent now uses an in-memory cache by default, which reduces the number of disk operations substantially. This feature works in tandem with incremental hashing, which means that even if some blocks in a given piece arrive out-of-order, it is still possible to hash all blocks before writing them to disk, eliminating the need to re-read them later.

Finally, the last big features are around how state is saved/restored. FastResume data for a torrent will, by default, be saved every 20-30 seconds. In the event of a crash you will be able to resume the torrent without having to run a complete hash check. This can be controlled by EngineSettings.FastResumeMode if you want to use one of the other behaviours. Additionally, you can serialize a ClientEngine to disk, and restore it, using ClientEngine.SaveStateAsync and the static method ClientEngine.RestoreStateAsync. This should be invoked just before your application closes, or whenever is appropriate. It will flush a fresh copy of fast resume data to disk for all loaded torrent, as well as capturing all mutable state in a TorrentManager so it can be restored later. For example, ITorrentFile.Priority will be maintained, and so will the paths where files are stored if you have used TorrentManager.MoveFileAsync.

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 (10)

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
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.0-beta.rev0159 1,830 2/1/2023
3.0.0-beta.rev0157 121 2/1/2023
3.0.0-beta.rev0106 639 12/23/2022
3.0.0-beta.rev0104 108 12/15/2022
3.0.0-beta.rev0102 354 12/6/2022
3.0.0-beta.rev0068 213 11/12/2022
3.0.0-beta.rev0064 118 11/6/2022
3.0.0-beta.rev0050 106 11/2/2022
3.0.0-beta.rev0034 149 10/18/2022
3.0.0-beta.rev0015 148 9/26/2022
3.0.0-beta.rev0010 209 8/7/2022
3.0.0-beta.rev0000 180 7/10/2022
3.0.0-alpha.unstable.rev0233 121 7/8/2022
3.0.0-alpha.unstable.rev0217 119 6/25/2022
2.0.7 55,743 12/23/2022
2.0.6 5,306 7/19/2022
2.0.5 16,782 3/27/2022
2.0.4 321,806 1/13/2022
2.0.3 1,415 12/22/2021
2.0.2 1,271 12/4/2021
2.0.1 5,343 10/29/2021
2.0.0 15,088 5/4/2021
2.0.0-alpha.unstable.rev0193 206 4/3/2021
2.0.0-alpha.unstable.rev0192 178 4/2/2021
2.0.0-alpha.unstable.rev0167 179 3/18/2021
2.0.0-alpha.unstable.rev0147 188 3/13/2021
2.0.0-alpha.unstable.rev0132 191 2/25/2021
2.0.0-alpha.unstable.rev0123 188 2/20/2021
2.0.0-alpha.unstable.rev0122 162 2/18/2021
2.0.0-alpha.unstable.rev0112 187 2/17/2021
2.0.0-alpha.unstable.rev0107 204 2/10/2021
2.0.0-alpha.unstable.rev0037 256 12/19/2020
2.0.0-alpha.unstable.rev0031 233 12/18/2020
2.0.0-alpha.unstable.rev0017 208 12/10/2020
2.0.0-alpha.unstable.build1 250 12/7/2020
1.0.30 1,295 1/7/2022
1.0.29 11,305 2/16/2021
1.0.28 6,563 11/25/2020
1.0.27 1,497 11/24/2020
1.0.26 1,336 11/24/2020
1.0.25 1,453 11/14/2020
1.0.24 2,403 8/12/2020
1.0.23 2,195 7/6/2020
1.0.22 4,871 5/26/2020
1.0.21 2,928 4/24/2020
1.0.20 1,858 4/13/2020
1.0.19 20,122 3/27/2020
1.0.18 2,355 3/16/2020
1.0.17 1,453 3/9/2020
1.0.16 1,470 3/3/2020
1.0.16-alpha 1,245 2/5/2020
1.0.15 1,509 2/2/2020
1.0.14 1,375 1/30/2020
1.0.13 1,473 1/30/2020
1.0.12 1,511 1/16/2020
1.0.11 4,016 1/8/2020
1.0.10 1,941 12/11/2019
1.0.9 1,741 12/2/2019
1.0.9-beta 1,167 11/28/2019
1.0.8 1,487 11/19/2019
1.0.7 1,504 11/2/2019
1.0.6 1,423 11/1/2019
1.0.5 1,378 11/1/2019
1.0.4 1,445 10/30/2019
1.0.3 1,531 10/16/2019
1.0.2 1,492 9/27/2019
1.0.1 1,524 9/6/2019
1.0.0 1,604 9/6/2019
0.99.136-beta 1,225 9/6/2019
0.99.134-beta 1,204 9/5/2019
0.99.119-alpha 1,147 9/4/2019
0.9.0 10,448 6/10/2011