2
0
mirror of synced 2025-02-24 14:48:27 +00:00

999 Commits

Author SHA1 Message Date
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 5cf75b869c469196a8473c4962b99a450daaeeec, reversing
changes made to 09050ff2c5607f3991e6ec6422ed57ba0dee0bad.
2016-01-06 12:19:49 +11:00
Matt Joiner
5dabd3ed03 dataBackend/http: Replace connection pooling code with forced HTTP2 2016-01-06 12:10:40 +11:00
Matt Joiner
5cf75b869c Merge pull request #54 from zhulik/master
Mocking  improvements
2016-01-05 19:56:53 +11:00
Gleb Sinyavsky
48c3df2d43 Refactorings 2016-01-05 11:48:16 +03:00
Gleb Sinyavsky
8637086ef9 Merge branch 'master' of https://github.com/anacrolix/torrent 2016-01-04 15:39:08 +03:00