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

46 Commits

Author SHA1 Message Date
Matt Joiner
b84298351a Move a few methods to Torrent, and track how many DHT announces occur
I suspect that DHT announces may occur too regularly, or without a break for torrents that aren't able to get over the lower water pending peer mark.
2016-06-15 15:29:47 +10:00
Matt Joiner
5051d1dcd0 Add Torrent.AddTrackers 2016-05-23 10:18:58 +10:00
Matt Joiner
20870ec4ff Rework torrent tracker scraping
New scrapers are added anytime trackers are added to a torrent. In the future they will also be stopped as soon as they're removed. All trackers are concurrently scraped, the old-style of sticking to one tracker that works is abandoned for now.
2016-05-22 22:45:08 +10:00
Matt Joiner
b714da8184 Torrent.AddPeers can't fail, so don't return an error 2016-05-12 12:26:09 +10:00
Matt Joiner
528836ab4c Get rid of obsoleted Torrent.ceaseNetworking, and clean up Torrent.closing 2016-05-11 21:44:55 +10:00
Matt Joiner
c4a6f66a95 Lock now required around missinggo.Event variables 2016-05-09 16:44:06 +10:00
Matt Joiner
a45a09b877 Rework setting of info bytes 2016-05-09 15:47:39 +10:00
Matt Joiner
f6b83130c9 Move a bunch of Torrent methods from client.go 2016-05-03 16:47:11 +10:00
Matt Joiner
1fab765329 Change the behaviour of Torrent.Length with when info isn't available 2016-04-20 20:10:39 +10:00
Matt Joiner
61acdf6184 Improve some docs 2016-04-20 20:10:10 +10:00
Matt Joiner
dcec4f3dce Improve doc on Torrent.Drop
https://github.com/anacrolix/torrent/issues/73
2016-04-18 21:52:30 +10:00
Matt Joiner
b80bb6393a Use metainfo.Hash for piece and info hashes 2016-04-04 13:01:31 +10:00
Matt Joiner
d3a1c79c79 Merge Torrent and torrent types 2016-04-03 18:40:43 +10:00
Matt Joiner
08830b97a1 Make everything on type torrent private 2016-04-03 16:50:53 +10:00
Matt Joiner
775cf53809 Get mmap storage working 2016-03-28 21:57:04 +11:00
Matt Joiner
dcdf85a474 Ditch the torrent stateMu for the client mutex 2016-02-21 03:31:50 +11:00
Matt Joiner
3c801bed27 Export torrent.String to Torrent 2016-02-20 14:39:56 +11:00
Matt Joiner
54b538d322 Export Torrent.PieceState() 2016-02-07 21:57:57 +11:00
Matt Joiner
63c73e18b3 Add File.Cancel 2016-02-05 01:18:54 +11:00
Matt Joiner
afa264e6c5 Reintroduce connection piece inclinations, and begin caching piece priorities 2016-02-01 21:11:41 +11:00
Matt Joiner
779085c6fe Remove obsolete note about priorities 2016-01-28 17:22:10 +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
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
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
Gleb Sinyavsky
48c3df2d43 Refactorings 2016-01-05 11:48:16 +03:00
Gleb Sinyavsky
be8e44da3c peersKey is a public type now 2015-12-27 15:27:32 +03:00
Gleb Sinyavsky
fd34e0a3c1 Download.Peers() func added 2015-12-27 15:19:39 +03:00
Gleb Sinyavsky
5b790bf874 Torrent structs replaced with Download interface in exported Client methods 2015-12-27 14:49:15 +03:00
Matt Joiner
8a6ae76686 Standardize Torrent method receivers 2015-12-12 14:03:25 +11:00
Matt Joiner
86c4c609f1 Expose Torrent.SetDisplayName 2015-12-12 14:03:04 +11:00
Matt Joiner
83045db3e5 Docs 2015-12-12 14:00:07 +11:00
Matt Joiner
2bdb6a14da Expose torrent.Seeding 2015-11-22 18:44:33 +11:00
Matt Joiner
d01c6221e6 Remove sync.Cond from piece
It's not trivial to ensure that anyone waiting on the piece Cond will wake on events like the torrent being dropped from the client.
2015-11-06 00:40:16 +11:00
Matt Joiner
eebd09c0fe Allow subscribing to torrent piece state changes 2015-09-06 12:33:22 +10:00
Matt Joiner
5ea0c26717 Some doc comments 2015-09-06 12:31:23 +10:00
Matt Joiner
06ebc4c37e Explicitly import Torrent.InfoHash 2015-08-02 03:55:48 +10:00
Matt Joiner
8ce61e911d Torrent.BytesCompleted was racy 2015-07-21 22:54:02 +10:00
Matt Joiner
4b6c8b1c39 Move methods to correct file 2015-06-23 02:02:22 +10:00
Matt Joiner
7e8ee950bc Docs and comments 2015-06-03 13:30:55 +10:00
Matt Joiner
21fb4933fc Change the way piece state is exposed to give more detail 2015-06-01 18:22:12 +10:00
Matt Joiner
ca74d8ed33 Made Torrent.GotInfo a function, to avoid use of zero-initialized channel 2015-04-30 00:30:19 +10:00
Matt Joiner
0ec0302d1c Publicly expose Torrent.GotInfo 2015-04-28 15:24:17 +10:00
Matt Joiner
28b299e7c8 Rework the Torrent Reader interface, to allow reader options, and add "responsive" as one such option
Had several weeks of testing. Removes a lot of the "helper" reading methods, but this was necessary to allow per-Torrent reading options.
2015-04-14 23:59:41 +10:00