Matt Joiner
7ac5dfd828
Reinstate File.PrioritizeRegion() for backward compatibility
2016-02-07 17:15:06 +11:00
Matt Joiner
77d6e9e5cb
Use new missinggo iterator style, and speed up torrent.connHasWantedPieces()
2016-02-07 01:22:31 +11:00
Matt Joiner
814daf6420
Publish changes in piece hashing state
2016-02-07 01:21:12 +11:00
Matt Joiner
2e3bc1090b
Speed up torrent.needData, and use new missinggo iterator interface
2016-02-07 01:20:40 +11:00
Matt Joiner
1b8bc1498c
Use missinggo.bitmap for tracking dirty chunks
2016-02-05 15:45:32 +11:00
Matt Joiner
1ea9beb802
tracker: Rename the http client type to httpClient
2016-02-05 15:42:23 +11:00
Matt Joiner
95aa411699
missinggo.ZeroReader is now a var, not a type
2016-02-05 01:20:02 +11:00
Matt Joiner
6942f3e6d5
Changes to piece priority need to be published as a piece state change
...
This occurs because we're now able to deprioritize pieces after readers seek or close
2016-02-05 01:19:42 +11:00
Matt Joiner
63c73e18b3
Add File.Cancel
2016-02-05 01:18:54 +11:00
Matt Joiner
b4f04ddc61
Missing Reader.Close in some tests
2016-02-05 01:17:26 +11:00
Matt Joiner
9b9a3fb20a
Fix the mess that is the connectionLoop after messages are decoded
2016-02-05 01:17:06 +11:00
Matt Joiner
3acdcc3b45
Tidy code
2016-02-04 15:04:46 +11:00
Matt Joiner
89f23c226c
Fix bug in readahead
2016-02-02 04:45:57 +11:00
Matt Joiner
19a304b8ea
connection.Close must be called under the Client lock
2016-02-02 00:45:26 +11:00
Matt Joiner
0e85ff190d
go vet
2016-02-02 00:44:29 +11:00
Matt Joiner
430f26f726
Recalculate all piece priorities more efficiently
2016-02-01 22:06:13 +11:00
Matt Joiner
afa264e6c5
Reintroduce connection piece inclinations, and begin caching piece priorities
2016-02-01 21:11:41 +11:00
Matt Joiner
b8e9ef4be2
Export leecher and seeder in TestClientTransfer
2016-02-01 21:09:25 +11:00
Matt Joiner
3ed628356b
Use missinggo.Event for connection closing event
2016-02-01 21:08:52 +11:00
Matt Joiner
eb838a894c
newTorrent doesn't need to return error
2016-02-01 07:05:43 +11:00
Matt Joiner
b90dacd324
Abstract the pendingPieces as a bitmap
2016-02-01 01:46:28 +11:00
Matt Joiner
9824041e5a
Begin tracking use of file descriptors in UDP tracker
2016-01-31 19:04:15 +11:00
Matt Joiner
3a206d4f12
util/profile was replaced by github.com/anacrolix/envpprof
2016-01-31 18:35:51 +11:00
Matt Joiner
f98d9c0a47
util/levelmu is no longer in use
2016-01-31 18:35:23 +11:00
Matt Joiner
b6947546a9
TODO
2016-01-31 18:35:08 +11:00
Matt Joiner
06e073c026
Obsolete NOTES file
2016-01-30 05:19:39 +11:00
Matt Joiner
16ae96eb29
Merge pull request #60 from jpillora/patch-1
...
list cloud torrent in "projects using Torrent"
2016-01-29 18:04:36 +11:00
Jaime Pillora
72702155ba
list cloud torrent in "projects using Torrent"
2016-01-29 16:13:24 +11:00
Matt Joiner
2a0b78e7ef
Merge branch 'noprio2'
2016-01-28 20:21:04 +11:00
Matt Joiner
779085c6fe
Remove obsolete note about priorities
2016-01-28 17:22:10 +11:00
Matt Joiner
9e50da4892
Fix stall if data goes missing during a read
2016-01-28 13:21:50 +11:00
Matt Joiner
84c34e2c37
TODO
2016-01-28 13:04:25 +11:00
Matt Joiner
ae9bba2611
Fix downloading of unwanted chunks, and write out downloaded chunks using the connection loop goroutine
...
Doing the writes with the connection loop goroutine prevents memory use blowing out when chunks aren't written out quickly enough.
2016-01-28 05:54:48 +11:00
Matt Joiner
90348f6a48
Add pending write helpers
2016-01-25 07:22:33 +11:00
Matt Joiner
94d764e6be
Readers changing wasn't triggering waitAccept
...
Caused occasional stall in TestSeedAfterDownloading.
2016-01-25 04:14:19 +11:00
Matt Joiner
9091c0518d
Use pendingPieces in needData
2016-01-24 15:21:31 +11:00
Matt Joiner
0ad4dda9fc
Move fillRequests and replenishConnRequests into connection.go
2016-01-24 15:21:17 +11:00
Matt Joiner
cafac95de4
Delete finished pieces from pending
2016-01-19 01:41:53 +11:00
Matt Joiner
9f79838033
require->assert in test
2016-01-19 01:41:33 +11:00
Matt Joiner
2f40c48d37
Fix the download/prioritize piece functions
...
This involves adding a pendingPieces field to torrent.
2016-01-19 01:28:56 +11:00
Matt Joiner
df07d93330
dht: Start timer under transaction lock
...
Satisfies race detector
2016-01-19 00:34:40 +11:00
Matt Joiner
fe9d5702f6
Fixes for torrent.Reader not having ReadAt
2016-01-18 20:12:51 +11:00
Matt Joiner
08c0c49c4a
Remove internal/pieceordering
2016-01-18 20:11:53 +11:00
Matt Joiner
06445f2a1e
It's working and the tests are usually passing
...
I still need to handle "prefetch"-style downloading, and some functions haven't been committed to force this issue.
2016-01-18 18:35:14 +11:00
Matt Joiner
8bbfcfcaa4
Resurrect some comments on Torrent methods
2016-01-17 01:49:34 +11:00
Matt Joiner
1a20ac23da
Reexport Torrent.MetaInfo
2016-01-17 01:49:04 +11:00
Matt Joiner
89a6a20af6
Finally make Torrent.torrent private
...
A lot of code was using unintentionally exported stuff from the embedded *torrent in Torrent.
2016-01-17 00:14:15 +11:00
Matt Joiner
8696f32e58
Make Config.DHTConfig not a pointer
2016-01-17 00:12:53 +11:00
Matt Joiner
2beb5f8bd4
Track dirty chunks, instead of pending chunk specs
...
This is the first step toward having purely Reader-based priorities. If a chunk is pending, that currently implies that we want to download it. I want to move that kind of state out to the readers.
2016-01-13 17:11:59 +11:00
Matt Joiner
153c13db43
Revert "Merge pull request #54 from zhulik/master"
...
This reverts commit 5cf75b869c
, reversing
changes made to 09050ff2c5
.
2016-01-06 12:19:49 +11:00