Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

MonoTorrent

The official repository for MonoTorrent, a bittorrent library for .NET
Collective - Host: opensource - https://opencollective.com/monotorrent - Code: https://github.com/alanmcgovern/monotorrent

* MonoTorrent/MonoTorrent.Client/Modes/Mode.cs:

* MonoTorrent/MonoTorrent.Client/ClientEngine.cs:
* MonoTorrent/MonoTorrent.Client/Modes/Metadata...

github.com/alanmcgovern/monotorrent - ebc00a3184a676093263c4b19e21bb0ada3ba3ab authored over 14 years ago by Alan McGovern <[email protected]>
Add the first metadata mode NUnit tests.

svn path=/trunk/bitsharp/; revision=153289

github.com/alanmcgovern/monotorrent - 6736696df289bcd7d630c82c6ea00c8001aa1961 authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Common/Check.cs:

* MonoTorrent/MonoTorrent.Client/Modes/Mode.cs:
* MonoTorrent.Tests/Client/TorrentManagerTest.cs:...

github.com/alanmcgovern/monotorrent - e1e7ef1a48b5ede04b64d5f55e43a785616aae5d authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Common/EventArgs/TorrentCreatorEventArgs.cs:

cosmetic

svn path=/trunk/bitsharp/; revision=153225

github.com/alanmcgovern/monotorrent - c4e953df1697a6a7b0fb870e96161cc2a8c64dec authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent.sln:

* MonoTorrent/MonoTorrent.Client/Modes/Mode.cs:
* MonoTorrent/MonoTorrent.Client/Managers/Torrent...

github.com/alanmcgovern/monotorrent - 888a13ace7c71464ab5eae053e04283b46caaedf authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Common/Torrent.cs: Doh, i shouldn't be

setting 'originalDictionary' here, it should only be set in
LoadInternal. Patch by olivier.

...

github.com/alanmcgovern/monotorrent - 4b9f4e06f7c4ba6f92ac8925715f4bb3fafa7e2c authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Common/Torrent.cs:

* MonoTorrent/MonoTorrent.Client/Modes/MetadataMode.cs: Implement
Torrent.ToBytes () and Torren...

github.com/alanmcgovern/monotorrent - 5a0e09ed50d188288c534dc2b43abe5b6ea74871 authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Client/Modes/StoppingMode.cs:

* MonoTorrent/MonoTorrent.Client/Managers/TorrentManager.cs:
* MonoTorrent/MonoTorrent.Client/Man...

github.com/alanmcgovern/monotorrent - 3b9193c61053fc52ea363281ba3d7afd7c7aa78d authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Client/Managers/ConnectionManager.cs:

Accumulate returns a long and we were trying to cast a boxed long to
an int which caused an e...

github.com/alanmcgovern/monotorrent - ecfb884b88a7cd7ba2d4ab7db6a49518a135fcb0 authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Common/TorrentCreator.cs: Fix build for VS

svn path=/trunk/bitsharp/; revision=152770

github.com/alanmcgovern/monotorrent - cfb0e740ed72f152708159c76553d23a68fc332c authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Client/Managers/PieceManager.cs: fix the

build

svn path=/trunk/bitsharp/; revision=152768

github.com/alanmcgovern/monotorrent - 18f54c53803b4dd15a0e99b067460b862e16121e authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Client/Managers/PieceManager.cs: Correctly

update each peer when a piece is hashed. Patch by sfomra. Thanks!

svn path=/trunk/bitsharp/; r...

github.com/alanmcgovern/monotorrent - 5f78957a793b1b1b9efc00d8cbaa168e21c18832 authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Common/Torrent.cs: Remove another public

setter which shouldn't be public.

svn path=/trunk/bitsharp/; revision=152646

github.com/alanmcgovern/monotorrent - 3a3537ef7b62aada3f37873763bfd4dcc9340616 authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Common/Torrent.cs: This should not be

publicly settable. If anyone actually alters the size they'll just
break the torrent complete...

github.com/alanmcgovern/monotorrent - 3aa4fa4eed5c27442c4a1d861d6fa9663025ed2f authored over 14 years ago by Alan McGovern <[email protected]>
* TrackerApp/TrackerApp.csproj:

* MonoTorrent/MonoTorrent.csproj:
* SampleClient/SampleClient.csproj:
* MonoTorrent.Dht/MonoTorre...

github.com/alanmcgovern/monotorrent - 413e55f29b92e389af4f891ba5b008f29ae55139 authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Client/Managers/ConnectionManager.cs:

Exceute this in the main loop so that the engine doesn't explode if
the user happens to add/r...

github.com/alanmcgovern/monotorrent - 0df653b56b2b0dac2b34d08274fc8847e8a52a7d authored over 14 years ago by Alan McGovern <[email protected]>
* MonoTorrent.Tests/MonoTorrent.Tests.csproj:

* MonoTorrent.Tests/Common/CustomFileSource.cs:
* MonoTorrent.Tests/Common/TorrentCreatorTests.cs...

github.com/alanmcgovern/monotorrent - 3bfcfb0a46aee522b388cbc7163f3d54913a5b78 authored over 14 years ago by Alan McGovern <[email protected]>
Add overloads to TorrentCreator.Create to match the ones in EndCreate.

svn path=/trunk/bitsharp/; revision=150259

github.com/alanmcgovern/monotorrent - 7fabd1f75466d94d6f82e9fccf4796b73275aa72 authored over 14 years ago by Alan McGovern <[email protected]>
Add the path to the current file to the TorrentCreatorEventArgs.

svn path=/trunk/bitsharp/; revision=150099

github.com/alanmcgovern/monotorrent - d6a4f548508e86096a3c1af2fe15b34b42da97a0 authored over 14 years ago by Alan McGovern <[email protected]>
Ensure that the DHT engine doesn't get double-initialized. Patch by olivier.

svn path=/trunk/bitsharp/; revision=150098

github.com/alanmcgovern/monotorrent - 679b497164c23a6b4c12ce920dc9ed14a50968a9 authored over 14 years ago by Alan McGovern <[email protected]>
Split TorrentCreator into two parts so that the logic required to decide which files should be included in the .torrent is separated from the logic required to generate the .torrent. TorrentCreator now requires an object implementing ITorrentFileSource when generating the .torrent metadata. This makes it trivial to specify exactly what files should be included in the generation process and also makes it trivial to relocate files inside the .torrent should that be required.

svn path=/trunk/bitsharp/; revision=150096

github.com/alanmcgovern/monotorrent - e1a4e8e01fb61f7e036a25e6975b70acd0e1ff26 authored over 14 years ago by Alan McGovern <[email protected]>
Update build files again.

svn path=/trunk/bitsharp/; revision=150095

github.com/alanmcgovern/monotorrent - 88bfb98f06312fbcd3c2a58a84e7cd5c5eee70d0 authored over 14 years ago by Alan McGovern <[email protected]>
Fix Exception for hasheck and metamode and better handling when access is denied on disk.

svn path=/trunk/bitsharp/; revision=149963

github.com/alanmcgovern/monotorrent - 915786232b902b4301cf91e558ce8faebbee0978 authored over 14 years ago by Olivier Dufour <[email protected]>
Commit oliviers patch to allow the Nodes extension of the .torrent metadata to be parsed and used. When loading this section of the .torrent metadata, a new Initialize task will be started as this is probably the best way of ensuring that the nodes are not discarded instantly due to their target DHT bucket being full.

svn path=/trunk/bitsharp/; revision=149867

github.com/alanmcgovern/monotorrent - 3bf51afee932cba840a5ef7664e10d1ae6084deb authored over 14 years ago by Alan McGovern <[email protected]>
Change the base32 decode table to map char -> byte rather than casting the char to an int. Makes it clearer as to how the table should be used.

svn path=/trunk/bitsharp/; revision=149853

github.com/alanmcgovern/monotorrent - 5b16bd13b02cd509d82a3a7aae3f26a70649b60f authored over 14 years ago by Alan McGovern <[email protected]>
When in metadata mode, ensure that we always try to connect to other peers. Also make sure we don't throw a stupid exception when we receive a MetaData request message after handling it correctly.

svn path=/trunk/bitsharp/; revision=149715

github.com/alanmcgovern/monotorrent - 1b972de83f9c1634ca09cdbc6f22566462bb249c authored almost 15 years ago by Alan McGovern <[email protected]>
Add support for base32 encoded magnet links. Patch from olivier.

svn path=/trunk/bitsharp/; revision=149714

github.com/alanmcgovern/monotorrent - e522ef0b358ba184eee48d84d8e5802e0fb0a054 authored almost 15 years ago by Alan McGovern <[email protected]>
Fix a few more places which use TorrentManager.Torrent.InfoHash instead of just TorrentManager.InfoHash. Thanks to olivier.

svn path=/trunk/bitsharp/; revision=149712

github.com/alanmcgovern/monotorrent - 75d56ea22c8047de3795777dc358483eae4b2f4a authored almost 15 years ago by Alan McGovern <[email protected]>
Fix a few more places which use TorrentManager.Torrent.InfoHash instead of just TorrentManager.InfoHash. Thanks to olivier.

svn path=/trunk/bitsharp/; revision=149711

github.com/alanmcgovern/monotorrent - b2cebc9af0ba18facee515a987438f803dd35b36 authored almost 15 years ago by Alan McGovern <[email protected]>
Remove old file.

svn path=/trunk/bitsharp/; revision=149710

github.com/alanmcgovern/monotorrent - 0715ee63f22cc8441aa98dc2be0292e05d6e61b6 authored almost 15 years ago by Alan McGovern <[email protected]>
Bump to .NET 3.0. This is the min version that MonoTorrent will support from now on.

svn path=/trunk/bitsharp/; revision=149709

github.com/alanmcgovern/monotorrent - 919b60f12b1f00f90c1236905c5922ce77833358 authored almost 15 years ago by Alan McGovern <[email protected]>
Use .Equals as we're comparing an InfoHash and byte []

svn path=/trunk/bitsharp/; revision=149697

github.com/alanmcgovern/monotorrent - 6a8c6c57626de7402c9ba405a719818117739672 authored almost 15 years ago by Alan McGovern <[email protected]>
Change places where we access TorrentManager.Torrent.InfoHash to TorrentManager.InfoHash so we don't explode when in MetadataMode.

svn path=/trunk/bitsharp/; revision=149695

github.com/alanmcgovern/monotorrent - c641efbd24c399a7fcff3db0c094cbd8794c25e6 authored almost 15 years ago by Alan McGovern <[email protected]>
Ensure that we annouce to the DHT as long as the current mode allows you to accept connections.

svn path=/trunk/bitsharp/; revision=149694

github.com/alanmcgovern/monotorrent - 9913262c4685f3d27e7111a5cbd0c82227be49ee authored almost 15 years ago by Alan McGovern <[email protected]>
When we enter ErrorMode, ensure that the download and upload speeds are reset to zero as they'll no longer be ticked.

svn path=/trunk/bitsharp/; revision=149693

github.com/alanmcgovern/monotorrent - 4b9589a153046591a00e8848a306c83f0f9c9f03 authored almost 15 years ago by Alan McGovern <[email protected]>
Remove an extra check which may prevent MonoTorrent from re-announces its active torrents to the DHT engine.

svn path=/trunk/bitsharp/; revision=149692

github.com/alanmcgovern/monotorrent - e1863784f40082e434cf1e9c670c4bba901c31eb authored almost 15 years ago by Alan McGovern <[email protected]>
Fix bug of 24 days running

svn path=/trunk/bitsharp/; revision=149321

github.com/alanmcgovern/monotorrent - 0e3cbe02e16a7b65250d3ee61c4a5fcb2b177a38 authored almost 15 years ago by Olivier Dufour <[email protected]>
Fix bugs in metadata mode thanks to thenextman

svn path=/trunk/bitsharp/; revision=149283

github.com/alanmcgovern/monotorrent - 40a13ba3e3fe58e6bf3bb1a69f13719dfb3d3448 authored almost 15 years ago by Olivier Dufour <[email protected]>
Refactor the client side Udp Tracker implementation to remove some of the layers of wrapper classes which were being used. Fixes several crashers when a udp tracker failed to respond correctly.

svn path=/trunk/bitsharp/; revision=148852

github.com/alanmcgovern/monotorrent - 9a7101ebad5c5634fb30111c3bf55ea4aa8fc589 authored almost 15 years ago by Alan McGovern <[email protected]>
Revert the change to make disk reads async when sending data to a remote peer as it caused a regression.

svn path=/trunk/bitsharp/; revision=148359

github.com/alanmcgovern/monotorrent - 4d722de3e88492c0c76e09763e34326fe873ab56 authored almost 15 years ago by Alan McGovern <[email protected]>
Use the correct check to see if Extended messaging is supported.

svn path=/trunk/bitsharp/; revision=148358

github.com/alanmcgovern/monotorrent - ad7162c130572a8cbdab64ef547155a1178d361e authored almost 15 years ago by Alan McGovern <[email protected]>
* MonoTorrent/MonoTorrent.Client/PeerConnections/PeerId.cs: Make the

IConnection public for the case where users are passing in custom
IConnections.

svn path=/tr...

github.com/alanmcgovern/monotorrent - 8fd193569b8ef155be325d5b24288bb16d8d9a64 authored almost 15 years ago by Alan McGovern <[email protected]>
Ensure that if peers are found via the LocalPeerListener or DHT they are added inside the main loop.

svn path=/trunk/bitsharp/; revision=147056

github.com/alanmcgovern/monotorrent - 72900f96a408bbf3accc53860ee52a51dc913a2d authored almost 15 years ago by Alan McGovern <[email protected]>
Missing from last commit

svn path=/trunk/bitsharp/; revision=146954

github.com/alanmcgovern/monotorrent - aa055e7ac962f3942f9889ff1ba033073172db32 authored almost 15 years ago by Alan McGovern <[email protected]>
When every piece has been uploaded at least once, switch to normal mode automagically.

svn path=/trunk/bitsharp/; revision=146953

github.com/alanmcgovern/monotorrent - 6bd8223bb5aff6b6bbb87986686d84af303ba934 authored almost 15 years ago by Alan McGovern <[email protected]>
Enable InitialSeeding by default. It appears to work well enough.

svn path=/trunk/bitsharp/; revision=146785

github.com/alanmcgovern/monotorrent - 1fef19a61ca60a87edd985be1e064d177fd7e1ef authored almost 15 years ago by Alan McGovern <[email protected]>
Attempt to fix a rare ObjectDisposed exception which shuts down the listener.

svn path=/trunk/bitsharp/; revision=146784

github.com/alanmcgovern/monotorrent - 1e80de31ca975b24aad6cf27b0e22d5d69698154 authored almost 15 years ago by Alan McGovern <[email protected]>
Commit the fix as in the other version of BigInteger to prevent IndexOutOfRange exceptions

svn path=/trunk/bitsharp/; revision=146783

github.com/alanmcgovern/monotorrent - f6b3f2a8017017fd3b5504f3aef54c39c1a80cde authored almost 15 years ago by Alan McGovern <[email protected]>
Add an additional test.

svn path=/trunk/bitsharp/; revision=146782

github.com/alanmcgovern/monotorrent - 1ec53bc62ad839158ed27c28f968cfdc01b13886 authored almost 15 years ago by Alan McGovern <[email protected]>
Undelete this file as I actually need it.

svn path=/trunk/bitsharp/; revision=146779

github.com/alanmcgovern/monotorrent - f97a1af7a572dbe9440007ec6dcc19d8cfa9757e authored almost 15 years ago by Alan McGovern <[email protected]>
If the initial byte[] is of length zero, replace it with a length 1 array to prevent crashers later on.

svn path=/trunk/bitsharp/; revision=146582

github.com/alanmcgovern/monotorrent - f2ad7751c973dd6dca5b66afeef76e5820bbb2bc authored almost 15 years ago by Alan McGovern <[email protected]>
Remove unused file.

svn path=/trunk/bitsharp/; revision=146581

github.com/alanmcgovern/monotorrent - 7b9725c0f1b13b994ab7c3dac190bd621a8f1652 authored almost 15 years ago by Alan McGovern <[email protected]>
Add an extra try/catch in case the user disposes while we're in the finally block.

svn path=/trunk/bitsharp/; revision=146389

github.com/alanmcgovern/monotorrent - 66038cc97b4de5a32e38081ecd72a8a83191f84c authored almost 15 years ago by Alan McGovern <[email protected]>
MemoryWriter should clone the input buffer if it is being stored, otherwise things get far too complex trying to decide when a buffer should be reused. Rewrite the tests for the new API.

svn path=/trunk/bitsharp/; revision=146306

github.com/alanmcgovern/monotorrent - cf86c844c465bdd3f2d48f26b240724deaaaf1b9 authored almost 15 years ago by Alan McGovern <[email protected]>
Nuke a method which isn't required anymore

svn path=/trunk/bitsharp/; revision=146305

github.com/alanmcgovern/monotorrent - bc43813882975176a226df360f5f2afdd70e1492 authored almost 15 years ago by Alan McGovern <[email protected]>
.... and keep the right extension ;)

svn path=/trunk/bitsharp/; revision=146302

github.com/alanmcgovern/monotorrent - 9154178aea09abb176e23713e4e0b2e774b98ac4 authored almost 15 years ago by Alan McGovern <[email protected]>
Rename the file so it's obvious what tests it contains.

svn path=/trunk/bitsharp/; revision=146301

github.com/alanmcgovern/monotorrent - 719344ac5737f003c81af983ee0299ca98f5b888 authored almost 15 years ago by Alan McGovern <[email protected]>
Update the tests for DiskManager so that they properly cover all the cases where exceptions could be thrown. Fix the places where disk IO related exceptions weren't being handled properly.

svn path=/trunk/bitsharp/; revision=146300

github.com/alanmcgovern/monotorrent - 573400f8c1137850cba961b6df3e1cec98eda319 authored almost 15 years ago by Alan McGovern <[email protected]>
Rewrite BeginGetHash to use a standard 16kB buffer to compute the hash of an entire piece and also allow better fast-fail support for cases where the data could not be read from disk (i.e. the piece hasn't been downloaded yet).

svn path=/trunk/bitsharp/; revision=146239

github.com/alanmcgovern/monotorrent - 57802dc24d704a1e47375d98edaa3179cfed13aa authored almost 15 years ago by Alan McGovern <[email protected]>
Fix a possible overflow.

svn path=/trunk/bitsharp/; revision=146238

github.com/alanmcgovern/monotorrent - 52c1d376e89ee28c09606bbd445211e42d0cae2a authored almost 15 years ago by Alan McGovern <[email protected]>
Add a 'Count' property to Cache.

svn path=/trunk/bitsharp/; revision=146236

github.com/alanmcgovern/monotorrent - 689ecbe1853170968a61c981e6fd660ffe5b2ffe authored almost 15 years ago by Alan McGovern <[email protected]>
Should pre-create the AsyncCallback and reuse it.

svn path=/trunk/bitsharp/; revision=146235

github.com/alanmcgovern/monotorrent - 1456bac042bea989360d71ae840bc3c41f7852bb authored almost 15 years ago by Alan McGovern <[email protected]>
Properly implement support for MaxPendingRequests. As part of this redo the logic which controls how many pending piece requests we have so that it increases at a slower rate.

svn path=/trunk/bitsharp/; revision=146234

github.com/alanmcgovern/monotorrent - 8ae4cc5d117729a34940222d89a9d5cd0ccaa20b authored almost 15 years ago by Alan McGovern <[email protected]>
When a piece is hashed successfully, remove it from the list of fast pieces we're allowed request as we are never going to request it again. This will allow the engine to hit the fastpath more frequently and avoid useless calculations.

svn path=/trunk/bitsharp/; revision=146233

github.com/alanmcgovern/monotorrent - ba7a2c82703c714d5efff18a3a6712366cf561de authored almost 15 years ago by Alan McGovern <[email protected]>
When deciding if a piece can be requested off a peer, we need to use IsAllowedFastPieces, not AmAllowedFastPieces.

svn path=/trunk/bitsharp/; revision=146232

github.com/alanmcgovern/monotorrent - 6f8a7190966ec99f19c25e08e10182476a1d71c4 authored almost 15 years ago by Alan McGovern <[email protected]>
Remove the check around the call to Tick as it's unnecessary.

svn path=/trunk/bitsharp/; revision=146231

github.com/alanmcgovern/monotorrent - 72074c917d46be8c3aa61c23b332e7bcc6ed879b authored almost 15 years ago by Alan McGovern <[email protected]>
Clean up DiskManager a bit more. Finally make BufferedIO a private class in DiskManager so that the complexity of it is hidden. Expose a much simpler set of internal functions to perform IO. Temporarily disable the MemoryWriter tests as they don't make much sense with the simplified API.

svn path=/trunk/bitsharp/; revision=146010

github.com/alanmcgovern/monotorrent - 1030cb973e6159659e5fd863758691faa4faf2c3 authored almost 15 years ago by Alan McGovern <[email protected]>
Instead of populating the data in a PieceMessage synchronously when Encode is called, PieceMessages are now stored in a separate queue and processed one by one. Once their data has been read from disk, they are added to the main message queue and sent to the remote peer. This should increase the performance of the engine when data is being uploaded as disk IO has been removed from the core loop. It should also increase the maximum upload rate.

svn path=/trunk/bitsharp/; revision=145694

github.com/alanmcgovern/monotorrent - a6ce33293d7635d9956e0f3e4a7f0bae4518bba6 authored almost 15 years ago by Alan McGovern <[email protected]>
Allow a RejectRequest message to be created directly from a RequestMessage.

svn path=/trunk/bitsharp/; revision=145649

github.com/alanmcgovern/monotorrent - c822c007c2eec56e9c56e4e029e72a673ccf8c92 authored almost 15 years ago by Alan McGovern <[email protected]>
The mainloop should use a synchronized autocreating cache.

svn path=/trunk/bitsharp/; revision=145648

github.com/alanmcgovern/monotorrent - 9d8335b00d89a1f316008fbfd2a61315a9313ab2 authored almost 15 years ago by Alan McGovern <[email protected]>
Make SynchronizedCache lock on the actual cache. Constrain cached items to be classes aswell so that null can be returned to signal that there was nothing in the cache.

svn path=/trunk/bitsharp/; revision=145647

github.com/alanmcgovern/monotorrent - aeb768665e2d6d5b3f2598d790bcc702bd172acc authored almost 15 years ago by Alan McGovern <[email protected]>
Make MainLoop use the Cache<T> class too. Go consistency!

svn path=/trunk/bitsharp/; revision=145247

github.com/alanmcgovern/monotorrent - 8b2d9c95cc3cfd9db8b1cb985d1babbe1802179d authored almost 15 years ago by Alan McGovern <[email protected]>
Comment this out as there's already a main method.

svn path=/trunk/bitsharp/; revision=145243

github.com/alanmcgovern/monotorrent - 9d1ca825b6a07d227603e54296f25f0d0e24e4f2 authored almost 15 years ago by Alan McGovern <[email protected]>
Move logic which used to live in PieceWriter to DiskWriter and simplify the PieceWriter interface. Now custom implementations don't have to worry about the complexities of figuring out where to write a chunk of data. Also, hashing torrents with hundreds of small files is now much faster.

svn path=/trunk/bitsharp/; revision=145239

github.com/alanmcgovern/monotorrent - 61966c41731433720a7a642273ac6eb6d96032a2 authored almost 15 years ago by Alan McGovern <[email protected]>
These tests now throw a BEncodingException, which is a better behaviour.

svn path=/trunk/bitsharp/; revision=145234

github.com/alanmcgovern/monotorrent - fca4783fe4ee7b8d9b7df01cb95d67dbc9360143 authored almost 15 years ago by Alan McGovern <[email protected]>
Disable write support for RawReader as I don't need it.

svn path=/trunk/bitsharp/; revision=145231

github.com/alanmcgovern/monotorrent - c7caf72693cd1c2023bdb15c7f77e351be58c825 authored almost 15 years ago by Alan McGovern <[email protected]>
BinaryReader.Peek () is implemented by reading a byte and then seeking backwards and refilling the entire buffer. This resulted in several hundred extra re-reads while loading a single .torrent file. To resolve this i rewrote RawReader to be a Stream subclass and implemented a proper Peek () so that the extra re-reads can be avoided. Parsing .torrent files is now > 5x faster on my SSD.

svn path=/trunk/bitsharp/; revision=145179

github.com/alanmcgovern/monotorrent - dc5f34279e188e078d163b2287233f13159be5c6 authored almost 15 years ago by Alan McGovern <[email protected]>
Make BufferedIO cacheable.

svn path=/trunk/bitsharp/; revision=145164

github.com/alanmcgovern/monotorrent - f19f859373ba5fc45a5132735ffd32860d451b0b authored almost 15 years ago by Alan McGovern <[email protected]>
Refactor DiskManager to use the new cache class.

svn path=/trunk/bitsharp/; revision=145163

github.com/alanmcgovern/monotorrent - 39bbc57df7efd368ae260be0ad71b049b4e6b32c authored almost 15 years ago by Alan McGovern <[email protected]>
Refactor NetworKIO to use the Cache class.

svn path=/trunk/bitsharp/; revision=145162

github.com/alanmcgovern/monotorrent - ee505f4e4078f0d875279aac66d58d106dcb0f59 authored almost 15 years ago by Alan McGovern <[email protected]>
Don't use a threadpool thread for TimeoutDispatcher.

svn path=/trunk/bitsharp/; revision=145161

github.com/alanmcgovern/monotorrent - 78d107f7de6d50ed9c9262bc3d2414bbd301480f authored almost 15 years ago by Alan McGovern <[email protected]>
Add an extra Check method

svn path=/trunk/bitsharp/; revision=145160

github.com/alanmcgovern/monotorrent - df639326e874dc70cf2364e8b4d7b3f953af47f6 authored almost 15 years ago by Alan McGovern <[email protected]>
Don't use a managed buffer for FileStreams. MonoTorrents usage pattern is to always read in 16kB chunks, so its a waste for FileStream to buffer.

svn path=/trunk/bitsharp/; revision=145159

github.com/alanmcgovern/monotorrent - 57cdb1c3408be0e08ba276960acea7bb7209f4bf authored almost 15 years ago by Alan McGovern <[email protected]>
Don't use a threadpool thread for MainLoop.

svn path=/trunk/bitsharp/; revision=145158

github.com/alanmcgovern/monotorrent - b49ce8c7ccc3bac628d6a7016682a9ebb20fbd44 authored almost 15 years ago by Alan McGovern <[email protected]>
Add a class which simplifies the handling of caching items.

svn path=/trunk/bitsharp/; revision=145157

github.com/alanmcgovern/monotorrent - a7a30d6c11b8df8a51b40871b1ca1992da5d1f36 authored almost 15 years ago by Alan McGovern <[email protected]>
There's no need to call Directory.Exists before trying to create the directory.

svn path=/trunk/bitsharp/; revision=145140

github.com/alanmcgovern/monotorrent - 566eb1b1776d480246c412a0cc4bbe8cb51f8975 authored almost 15 years ago by Alan McGovern <[email protected]>
If the file exists already, there's no need to perform the directory existence checks.

svn path=/trunk/bitsharp/; revision=145139

github.com/alanmcgovern/monotorrent - 28703a9cb1931dec791341db473ed05b20208ea6 authored almost 15 years ago by Alan McGovern <[email protected]>
If a file does not contain all the data we need, fast-fail so that we don't read data from other files needlessly.

svn path=/trunk/bitsharp/; revision=145133

github.com/alanmcgovern/monotorrent - 13d809a7a5d66f1e31e8c06922508d3fca99ae19 authored almost 15 years ago by Alan McGovern <[email protected]>
If we're hashing a file, don't queue a flush to disk when the piece is hashed.

svn path=/trunk/bitsharp/; revision=145130

github.com/alanmcgovern/monotorrent - 55341ea7cf6e2b2e3a3f887c39f5ee87d6946933 authored almost 15 years ago by Alan McGovern <[email protected]>
And commit the actual change...

svn path=/trunk/bitsharp/; revision=145129

github.com/alanmcgovern/monotorrent - 57523bb0c8857533dc610f87187b4aae9a7a4f9b authored almost 15 years ago by Alan McGovern <[email protected]>
If the TorrentManager is available, use it to get the total size of the torrent rather than summing it up. Speeds up hashing on torrents with hundreds of files.

svn path=/trunk/bitsharp/; revision=145128

github.com/alanmcgovern/monotorrent - cf7686ef1da3e9794ca363252e0265d49c8bbeb7 authored almost 15 years ago by Alan McGovern <[email protected]>
Prevent a possible race condition by only starting the processing of items while holding the timeouts lock. When there are no items in the queue, just sleep until an item is added.

svn path=/trunk/bitsharp/; revision=145127

github.com/alanmcgovern/monotorrent - 7665a4323eac9238f71f26900db04daed6d82482 authored almost 15 years ago by Alan McGovern <[email protected]>
Make the torrent creator tests work for the new implementation

svn path=/trunk/bitsharp/; revision=144586

github.com/alanmcgovern/monotorrent - cfed2ad5833ff3982deaf071e4ec50f5249ee0c5 authored almost 15 years ago by Alan McGovern <[email protected]>
Replace lamda with anon delegate.

svn path=/trunk/bitsharp/; revision=144583

github.com/alanmcgovern/monotorrent - 33144376a43b953bff9163c85215a12ebb99285c authored almost 15 years ago by Alan McGovern <[email protected]>
Ensure that PieceLength is automatically set to the recommended value if the user doesn't explicitly set one.

svn path=/trunk/bitsharp/; revision=143914

github.com/alanmcgovern/monotorrent - f353f175092f18ee77ee7818e838557cb3d00c27 authored about 15 years ago by Alan McGovern <[email protected]>
These class should not be public

svn path=/trunk/bitsharp/; revision=143913

github.com/alanmcgovern/monotorrent - 2a9ce5352046413886bcd0cd0f7c5502af36e2f5 authored about 15 years ago by Alan McGovern <[email protected]>
Put DiskManager in the correct namespace.

svn path=/trunk/bitsharp/; revision=143912

github.com/alanmcgovern/monotorrent - 081db208a768919d9e40eb32ddcadb6b5b3f551c authored about 15 years ago by Alan McGovern <[email protected]>
Fix the name of the TorrentCreator class.

svn path=/trunk/bitsharp/; revision=143911

github.com/alanmcgovern/monotorrent - 346213bef303dc578875e3d8d19471f94af90228 authored about 15 years ago by Alan McGovern <[email protected]>
Expose a helper method to allow the user to generate the list of FileMappings for a specified path.

svn path=/trunk/bitsharp/; revision=143898

github.com/alanmcgovern/monotorrent - 024333fe0d711ae61be6e9376505fc39fd12e0d3 authored about 15 years ago by Alan McGovern <[email protected]>
Rewrite the TorrentCreator to fix the following bugs:

1) Fixed a bug creating a torrent from a directory which contains only one file.
2) MD5 hashes we...

github.com/alanmcgovern/monotorrent - 376c03a9610639802343ed48f7daedb63821e146 authored about 15 years ago by Alan McGovern <[email protected]>