MonoTorrent 3.0.0-beta.rev0034

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 3.0.0-beta.rev0034
                    
NuGet\Install-Package MonoTorrent -Version 3.0.0-beta.rev0034
                    
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="3.0.0-beta.rev0034" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MonoTorrent" Version="3.0.0-beta.rev0034" />
                    
Directory.Packages.props
<PackageReference Include="MonoTorrent" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MonoTorrent --version 3.0.0-beta.rev0034
                    
#r "nuget: MonoTorrent, 3.0.0-beta.rev0034"
                    
#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.
#addin nuget:?package=MonoTorrent&version=3.0.0-beta.rev0034&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=MonoTorrent&version=3.0.0-beta.rev0034&prerelease
                    
Install as a Cake Tool

What's Changed

  • Set up CI with Azure Pipelines yaml by @alanmcgovern in https://github.com/alanmcgovern/monotorrent/pull/552
  • Tidy up DiskWriter by @alanmcgovern in https://github.com/alanmcgovern/monotorrent/pull/557
  • Small perf and memory optimisations by @alanmcgovern in https://github.com/alanmcgovern/monotorrent/pull/558
  • Added more tweaks to TorrentCreator to improve how events are emitted after the recent refactorings.
  • Misc API changes to migrate some classes to structs, and some structs to readonly structs.
  • Migrated PiecePicker to exclusively use PieceSegment rather than BlockInfo. Selecting pieces just needs the piece index and block index. It does not need the block length, which is what BlockInfo provides. BitTorrent V2 makes block length a much more complex thing to define.
  • Updated how the built-in disk writer handles concurrency when writing to the same file. When targeting .NET 6.0 and above the new, higher performance, RandomAccess API is used to read/write data. For .NET versions older than 6.0 multiple concurrent FileStreams are opened to allow safe concurrent reads/writes.
  • AllowedFast messages are now combined into an AllowedFastBundle to save a small amount of memory
  • Messages used to be decoded using a Dictionary lookup. This was converted to a simple array lookup, which makes it a much cheaper operation for one of the most commonly called codepaths in the library.

Full Changelog: https://github.com/alanmcgovern/monotorrent/compare/release-v3.0.0-beta-0010...release-v3.0.0-beta-0034

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  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.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 is compatible.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.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 11 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)
rogerfar/rdt-client
Real-Debrid Client Proxy
Whisparr/Whisparr
aelassas/wexflow
Workflow Engine and Automation Platform
IllusionMods/KKManager
Mod, plugin and card manager for games by Illusion that use BepInEx
immisterio/Lampac
insomniachi/Totoro
A Windows 10/11 only application that is a go to for all things anime.
Version Downloads Last Updated
3.0.3-alpha.unstable.rev0049 554 9/14/2024
3.0.3-alpha.unstable.rev0024 90 8/28/2024
3.0.3-alpha.unstable.rev0003 112 8/19/2024
3.0.2 8,769 8/4/2024
3.0.1 336 8/2/2024
3.0.0 505 7/28/2024 3.0.0 is deprecated because it has critical bugs.
3.0.0-beta.rev0264 106 7/17/2024 3.0.0-beta.rev0264 is deprecated because it is no longer maintained.
3.0.0-beta.rev0240 142 6/30/2024 3.0.0-beta.rev0240 is deprecated because it is no longer maintained.
3.0.0-beta.rev0159 2,486 2/1/2023 3.0.0-beta.rev0159 is deprecated because it is no longer maintained.
3.0.0-beta.rev0157 185 2/1/2023 3.0.0-beta.rev0157 is deprecated because it is no longer maintained.
3.0.0-beta.rev0106 805 12/23/2022 3.0.0-beta.rev0106 is deprecated because it is no longer maintained.
3.0.0-beta.rev0104 166 12/15/2022 3.0.0-beta.rev0104 is deprecated because it is no longer maintained.
3.0.0-beta.rev0102 432 12/6/2022 3.0.0-beta.rev0102 is deprecated because it is no longer maintained.
3.0.0-beta.rev0068 279 11/12/2022 3.0.0-beta.rev0068 is deprecated because it is no longer maintained.
3.0.0-beta.rev0064 170 11/6/2022 3.0.0-beta.rev0064 is deprecated because it is no longer maintained.
3.0.0-beta.rev0050 159 11/2/2022 3.0.0-beta.rev0050 is deprecated because it is no longer maintained.
3.0.0-beta.rev0034 210 10/18/2022 3.0.0-beta.rev0034 is deprecated because it is no longer maintained.
3.0.0-beta.rev0015 220 9/26/2022 3.0.0-beta.rev0015 is deprecated because it is no longer maintained.
3.0.0-beta.rev0010 289 8/7/2022 3.0.0-beta.rev0010 is deprecated because it is no longer maintained.
3.0.0-beta.rev0000 244 7/10/2022 3.0.0-beta.rev0000 is deprecated because it is no longer maintained.
3.0.0-alpha.unstable.rev0233 186 7/8/2022 3.0.0-alpha.unstable.rev0233 is deprecated because it is no longer maintained.
3.0.0-alpha.unstable.rev0217 187 6/25/2022 3.0.0-alpha.unstable.rev0217 is deprecated because it is no longer maintained.
2.0.7 114,923 12/23/2022
2.0.6 5,549 7/19/2022 2.0.6 is deprecated because it is no longer maintained.
2.0.5 17,097 3/27/2022 2.0.5 is deprecated because it is no longer maintained.
2.0.4 321,962 1/13/2022 2.0.4 is deprecated because it is no longer maintained.
2.0.3 1,576 12/22/2021 2.0.3 is deprecated because it is no longer maintained.
2.0.2 1,389 12/4/2021 2.0.2 is deprecated because it is no longer maintained.
2.0.1 5,482 10/29/2021 2.0.1 is deprecated because it is no longer maintained.
2.0.0 15,602 5/4/2021 2.0.0 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0193 296 4/3/2021 2.0.0-alpha.unstable.rev0193 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0192 265 4/2/2021 2.0.0-alpha.unstable.rev0192 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0167 262 3/18/2021 2.0.0-alpha.unstable.rev0167 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0147 273 3/13/2021 2.0.0-alpha.unstable.rev0147 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0132 281 2/25/2021 2.0.0-alpha.unstable.rev0132 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0123 274 2/20/2021 2.0.0-alpha.unstable.rev0123 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0122 249 2/18/2021 2.0.0-alpha.unstable.rev0122 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0112 283 2/17/2021 2.0.0-alpha.unstable.rev0112 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0107 302 2/10/2021 2.0.0-alpha.unstable.rev0107 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0037 345 12/19/2020 2.0.0-alpha.unstable.rev0037 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0031 328 12/18/2020 2.0.0-alpha.unstable.rev0031 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.rev0017 301 12/10/2020 2.0.0-alpha.unstable.rev0017 is deprecated because it is no longer maintained.
2.0.0-alpha.unstable.build1 356 12/7/2020 2.0.0-alpha.unstable.build1 is deprecated because it is no longer maintained.
1.0.30 1,449 1/7/2022 1.0.30 is deprecated because it is no longer maintained.
1.0.29 11,512 2/16/2021 1.0.29 is deprecated because it is no longer maintained.
1.0.28 7,288 11/25/2020 1.0.28 is deprecated because it is no longer maintained.
1.0.27 1,636 11/24/2020 1.0.27 is deprecated because it is no longer maintained.
1.0.26 1,453 11/24/2020 1.0.26 is deprecated because it is no longer maintained.
1.0.25 1,591 11/14/2020 1.0.25 is deprecated because it is no longer maintained.
1.0.24 2,565 8/12/2020 1.0.24 is deprecated because it is no longer maintained.
1.0.23 2,322 7/6/2020 1.0.23 is deprecated because it is no longer maintained.
1.0.22 5,411 5/26/2020 1.0.22 is deprecated because it is no longer maintained.
1.0.21 3,062 4/24/2020 1.0.21 is deprecated because it is no longer maintained.
1.0.20 1,985 4/13/2020 1.0.20 is deprecated because it is no longer maintained.
1.0.19 28,987 3/27/2020 1.0.19 is deprecated because it is no longer maintained.
1.0.18 2,487 3/16/2020 1.0.18 is deprecated because it is no longer maintained.
1.0.17 1,574 3/9/2020 1.0.17 is deprecated because it is no longer maintained.
1.0.16 1,607 3/3/2020 1.0.16 is deprecated because it is no longer maintained.
1.0.16-alpha 1,360 2/5/2020 1.0.16-alpha is deprecated because it is no longer maintained.
1.0.15 1,652 2/2/2020 1.0.15 is deprecated because it is no longer maintained.
1.0.14 1,501 1/30/2020 1.0.14 is deprecated because it is no longer maintained.
1.0.13 1,624 1/30/2020 1.0.13 is deprecated because it is no longer maintained.
1.0.12 1,659 1/16/2020 1.0.12 is deprecated because it is no longer maintained.
1.0.11 4,193 1/8/2020 1.0.11 is deprecated because it is no longer maintained.
1.0.10 2,113 12/11/2019 1.0.10 is deprecated because it is no longer maintained.
1.0.9 1,905 12/2/2019 1.0.9 is deprecated because it is no longer maintained.
1.0.9-beta 1,277 11/28/2019 1.0.9-beta is deprecated because it is no longer maintained.
1.0.8 1,622 11/19/2019 1.0.8 is deprecated because it is no longer maintained.
1.0.7 1,637 11/2/2019 1.0.7 is deprecated because it is no longer maintained.
1.0.6 1,557 11/1/2019 1.0.6 is deprecated because it is no longer maintained.
1.0.5 1,513 11/1/2019 1.0.5 is deprecated because it is no longer maintained.
1.0.4 1,585 10/30/2019 1.0.4 is deprecated because it is no longer maintained.
1.0.3 1,680 10/16/2019 1.0.3 is deprecated because it is no longer maintained.
1.0.2 1,651 9/27/2019 1.0.2 is deprecated because it is no longer maintained.
1.0.1 1,655 9/6/2019 1.0.1 is deprecated because it is no longer maintained.
1.0.0 1,781 9/6/2019 1.0.0 is deprecated because it is no longer maintained.
0.99.136-beta 1,345 9/6/2019 0.99.136-beta is deprecated because it is no longer maintained.
0.99.134-beta 1,321 9/5/2019 0.99.134-beta is deprecated because it is no longer maintained.
0.99.119-alpha 1,260 9/4/2019 0.99.119-alpha is deprecated because it is no longer maintained.
0.9.0 10,920 6/10/2011 0.9.0 is deprecated because it is no longer maintained.