Matt Joiner
|
28455fb817
|
Speed up stuff relating to checking piece completion
|
2015-03-18 18:34:35 +11:00 |
Matt Joiner
|
29238ff23f
|
Change the interface to add torrents to a Client
|
2015-03-18 18:32:31 +11:00 |
Matt Joiner
|
a7dddd9be6
|
Rewrite handshaking and connection management
|
2015-03-18 18:28:13 +11:00 |
Matt Joiner
|
203da0aab0
|
Tidy up extension bytes handling; don't close conn from handshake writer; force protocol encryption for now
|
2015-03-13 06:21:13 +11:00 |
Matt Joiner
|
e85b7e228b
|
Add support for Fast Extension
|
2015-03-12 20:06:23 +11:00 |
Matt Joiner
|
e6fbde0dc6
|
Rework piece completion
|
2015-03-11 02:41:21 +11:00 |
Matt Joiner
|
914bc12bb6
|
Harmless improvements
|
2015-03-11 02:39:01 +11:00 |
Matt Joiner
|
d7695c4585
|
Change torrent.Name()
|
2015-03-09 17:35:29 +11:00 |
Matt Joiner
|
ad6ac3f2cd
|
More cleaning of public interface
|
2015-03-08 17:28:14 +11:00 |
Matt Joiner
|
3e753bb8ad
|
Change up the data storage interfaces a bit
|
2015-03-07 17:11:45 +11:00 |
Matt Joiner
|
779f4d3b97
|
Implement Handle.ReadAt
|
2015-03-04 13:06:33 +11:00 |
Matt Joiner
|
4eb70e0673
|
Support opening handles to Torrent and File
|
2015-03-01 14:32:54 +11:00 |
Matt Joiner
|
a2d69b4931
|
Make blob data stateful
|
2015-02-27 12:45:55 +11:00 |
Matt Joiner
|
315c703456
|
Rename TorrentData->Data
|
2015-02-27 01:43:37 +11:00 |
Matt Joiner
|
22746dda23
|
Ditch the intermediate MetaInfo type
|
2015-02-26 22:17:58 +11:00 |
Matt Joiner
|
c75dbccea3
|
Hide a whole bunch of functions seen via torrent
|
2015-02-25 15:42:47 +11:00 |
Matt Joiner
|
0eb418360b
|
Allow configuring Client torrent data opener, config dir, disabling metainfo cache, and prune with a timer instead of goroutine
|
2015-02-25 14:48:39 +11:00 |
Matt Joiner
|
9fb7934d0c
|
Comments
|
2015-02-25 01:34:57 +11:00 |
Matt Joiner
|
4b1b009049
|
Encapsulate torrent data, and provide os.File and mmap-based implementations
|
2015-02-10 00:14:52 +11:00 |
Matt Joiner
|
029d6939f8
|
Hide some methods that shouldn't be public
|
2015-02-10 00:12:29 +11:00 |
Matt Joiner
|
4ca6b4e2c7
|
Fix some stuff Rob Clifford broke through stress testing
|
2015-02-06 14:54:59 +11:00 |
Matt Joiner
|
89fc37d46f
|
Expose PieceStatusCharSequence
|
2015-01-26 20:52:59 +11:00 |
Matt Joiner
|
78caa4533b
|
Scale readahead with unchoked connections
|
2015-01-11 00:16:57 +11:00 |
Matt Joiner
|
d54c5ddf24
|
Remove a bunch of dead code
|
2014-12-28 12:51:09 +11:00 |
Matt Joiner
|
3a221dc57d
|
Rip out the pieces by bytes left and responsive download strategy stuff
|
2014-12-26 17:15:17 +11:00 |
Matt Joiner
|
262f045fd1
|
Fixes due to not pending chunk specs prematurely
|
2014-12-09 00:22:05 -06:00 |
Matt Joiner
|
a081ad63d9
|
Save memory by not pending chunks prematurely
|
2014-12-08 21:57:13 -06:00 |
Matt Joiner
|
bacb1af357
|
Write piece status as counts of contiguous identical states
|
2014-12-06 21:16:02 -06:00 |
Matt Joiner
|
b6ae4caa6a
|
Set priorities ahead of the current read position
|
2014-12-05 00:56:28 -06:00 |
Matt Joiner
|
ac1afa19b8
|
mmap_span: Avoid allocating the span slice on every use
|
2014-12-05 00:54:55 -06:00 |
Matt Joiner
|
91c2c1f5c7
|
Piece priorities, torrent read interface and many fixes
|
2014-12-03 01:07:50 -06:00 |
Matt Joiner
|
a87e753572
|
When metadata arrives, we also need to init request ordering
|
2014-12-02 18:42:22 -06:00 |
Matt Joiner
|
c41919807e
|
Reuse the info bytes when marshalling torrent metainfo
|
2014-12-01 23:33:38 -06:00 |
Matt Joiner
|
5c8de6dd7c
|
Skip mapping files with length 0
|
2014-12-01 19:13:08 -06:00 |
Matt Joiner
|
c7283182b6
|
Trivial
|
2014-12-01 16:40:18 -06:00 |
Matt Joiner
|
fb2b626175
|
Don't send constructed MetaInfo down a channel when it's available, build it on demand
|
2014-12-01 16:37:40 -06:00 |
Matt Joiner
|
cb75f49bf7
|
torrent.String, if the name isn't available, use the info hash
|
2014-12-01 14:29:30 -06:00 |
Matt Joiner
|
db0232e03f
|
Not ever hashed takes higher priority than partially downloaded
|
2014-12-01 03:28:25 -06:00 |
Matt Joiner
|
06aff91f8c
|
Don't open new connections or announce when new connections aren't wanted
|
2014-11-21 00:09:55 -06:00 |
Matt Joiner
|
9c37205dde
|
Include trackers in WriteStatus
|
2014-11-21 00:07:42 -06:00 |
Matt Joiner
|
06e240e198
|
Expose a wrapped metainfo type with helper methods
|
2014-11-18 14:36:27 -06:00 |
Matt Joiner
|
e37d369864
|
Move half-open tracking into per-torrent
|
2014-11-16 13:30:44 -06:00 |
Matt Joiner
|
ecf2639856
|
Add magnet-metainfo, tool to download magnet to torrent file
|
2014-09-25 18:05:52 +10:00 |
Matt Joiner
|
e30f2777fc
|
Missing torrent functions
|
2014-09-14 04:06:17 +10:00 |
Matt Joiner
|
97ae59dfaf
|
Improve the data waiter system
|
2014-09-14 03:50:15 +10:00 |
Matt Joiner
|
0217bc6163
|
Improvements to written status
|
2014-09-14 03:43:11 +10:00 |
Matt Joiner
|
dcc3de7a70
|
New worst conn algorithm that incorporates useful/unwanted chunk download rates
|
2014-09-14 03:40:35 +10:00 |
Matt Joiner
|
ced8a7b78f
|
New worst conns algorithm that takes into account connection useful chunk hit rate
|
2014-09-11 20:31:31 +10:00 |
Matt Joiner
|
ed08bd2837
|
Introduce socket/torrent limits, work in progress
|
2014-08-28 10:06:36 +10:00 |
Matt Joiner
|
c33b889b5e
|
Cease networking on a torrent if it's finished and we're not going to seed
|
2014-08-28 09:39:27 +10:00 |