Matt Joiner
|
7600ac70e3
|
Move torrent tracker methods into torrent.go
|
2016-05-19 22:49:37 +10:00 |
|
Matt Joiner
|
02ea8b1081
|
Rename storage.I->Client
|
2016-05-16 21:50:43 +10:00 |
|
Matt Joiner
|
6f470a2d02
|
Don't log missing files during hashing
|
2016-05-16 19:50:46 +10:00 |
|
Matt Joiner
|
c0283d3314
|
Return an error from Torrent.setMetadataSize
This should mean connections sending ridiculous metadata sizes get dropped.
|
2016-05-16 18:48:56 +10:00 |
|
Matt Joiner
|
d2951c6c4b
|
Move requestPendingMetadata onto connection from Client
|
2016-05-16 18:46:38 +10:00 |
|
Matt Joiner
|
2b46a17b39
|
Bit of a tidy in the tracker code
|
2016-05-12 12:43:37 +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
|
a45a09b877
|
Rework setting of info bytes
|
2016-05-09 15:47:39 +10:00 |
|
Matt Joiner
|
2d160b0419
|
metainfo.InfoEx.Hash becomes a function, UpdateBytes is added, and Bytes used in marshalling
Fixes #80.
|
2016-05-05 22:40:38 +10:00 |
|
Matt Joiner
|
f6b83130c9
|
Move a bunch of Torrent methods from client.go
|
2016-05-03 16:47:11 +10:00 |
|
Matt Joiner
|
28c9ec2bd1
|
Some changes to metainfo.InfoEx and testutil
|
2016-04-30 11:07:29 +10:00 |
|
Seth Hoenig
|
9f4bf70e17
|
refactor struct identifiers to follow conventional go names
|
2016-04-18 23:11:11 -05:00 |
|
Matt Joiner
|
da4d40ed7e
|
Merge all our global consts and vars into global.go
For easier referral to other parties.
|
2016-04-14 17:19:07 +10:00 |
|
Matt Joiner
|
48871324f4
|
Comments and logs around bad metadata size
|
2016-04-07 19:13:51 +10:00 |
|
Matt Joiner
|
49a3c87a53
|
Fix possible deadlock
|
2016-04-04 20:39:57 +10:00 |
|
Matt Joiner
|
82ee860e8d
|
Apply unconvert linter
|
2016-04-04 15:28:25 +10:00 |
|
Matt Joiner
|
1566e2afdc
|
Remove deadcode
|
2016-04-04 15:18:51 +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
|
501ae0c98c
|
Comments
|
2016-04-03 16:52:52 +10:00 |
|
Matt Joiner
|
08830b97a1
|
Make everything on type torrent private
|
2016-04-03 16:50:53 +10:00 |
|
Matt Joiner
|
bc8fb2a165
|
If we fail to write to a piece, check its completion state
|
2016-04-03 16:36:57 +10:00 |
|
Matt Joiner
|
a5b54f21a1
|
Make opening a torrent in storage an explicit method
This is storage types where opening can fail, like mmap
|
2016-03-28 22:40:29 +11:00 |
|
Matt Joiner
|
775cf53809
|
Get mmap storage working
|
2016-03-28 21:57:04 +11:00 |
|
Matt Joiner
|
b97b50aca9
|
New storage interface
|
2016-03-28 20:38:30 +11:00 |
|
Matt Joiner
|
bb04cb8843
|
Tidy up bytesLeft calculations
This should fix a bug where completion is shown as negative in WriteStatus
|
2016-03-22 13:11:36 +11:00 |
|
Matt Joiner
|
e2ffcd008b
|
Add t.bytesLeftAnnounce
Now it's safe to remove tracker specific bytesLeft contract
|
2016-03-22 09:06:48 +11:00 |
|
Matt Joiner
|
61af11fddc
|
Off by one error in torrent.pieceLength?
|
2016-02-21 17:25:47 +11:00 |
|
Matt Joiner
|
5b443fb63d
|
Refresh all piece completion states when data is missing
|
2016-02-21 17:24:59 +11:00 |
|
Matt Joiner
|
e20858a1e8
|
Move dataReadAt to torrent.readAt, and do the waitNoPendingWrites check there
|
2016-02-21 03:32:59 +11:00 |
|
Matt Joiner
|
dcdf85a474
|
Ditch the torrent stateMu for the client mutex
|
2016-02-21 03:31:50 +11:00 |
|
Matt Joiner
|
f6472fc1fd
|
Code comment
|
2016-02-20 14:41:04 +11:00 |
|
Matt Joiner
|
d5f888069f
|
Ditch Data.WriteSectionTo, and fix cmd/torrent-verify
|
2016-02-18 11:45:31 +11:00 |
|
Matt Joiner
|
589ab02dc4
|
Ensure piece completion state is correct at startup
|
2016-02-17 17:20:21 +11:00 |
|
Matt Joiner
|
73208b97ca
|
Code comments
|
2016-02-17 17:09:43 +11:00 |
|
Matt Joiner
|
0f9f7ba01b
|
Add torrent.completedPieces bitmap
Reduce load on data.PieceComplete for torrents with lots of pieces, when reader position changes. Not sure of the improvement yet.
|
2016-02-17 00:00:55 +11:00 |
|
Matt Joiner
|
b514434581
|
Trigger piece request order changes on connections in a few spots
The client was requesting already obtained data in certain circumstances. This fixes it.
|
2016-02-11 17:57:57 +11:00 |
|
Matt Joiner
|
034c816934
|
torrent.piecePartiallyDownloaded incorrectly returned true when all the chunks were dirty
|
2016-02-10 00:46:54 +11:00 |
|
Matt Joiner
|
24b8b13d2d
|
Fix pending of already completed pieces when pending ranges of pieces
|
2016-02-08 21:36:50 +11:00 |
|
Matt Joiner
|
dab95b5431
|
Remove unreachable code
|
2016-02-08 03:01:54 +11:00 |
|
Matt Joiner
|
623d9e0e06
|
Rework requesting of shuffled pending pieces
|
2016-02-07 21:58:48 +11:00 |
|
Matt Joiner
|
dc215d083e
|
Export PieceStateChange through piece state change pubsub
|
2016-02-07 21:55:47 +11:00 |
|
Matt Joiner
|
0c28a0f1b1
|
Use new tracker package interface
|
2016-02-07 18:49:35 +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
|
1b8bc1498c
|
Use missinggo.bitmap for tracking dirty chunks
|
2016-02-05 15:45:32 +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
|
89f23c226c
|
Fix bug in readahead
|
2016-02-02 04:45:57 +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 |
|