Commit Graph

2257 Commits

Author SHA1 Message Date
Matt Joiner cbc98e17aa Fix race spewing Client stats 2019-07-30 17:18:09 +10:00
Matt Joiner f7f33dbc01 Don't test with -race or -v for 32-bit
We just want to know that it builds and works for normal use.
2019-07-26 11:00:28 +10:00
Matt Joiner 711d909272 Fix tests on 32-bit 2019-07-26 10:56:13 +10:00
Matt Joiner 011df3da4a Test 32-bit arch on CircleCI
See https://github.com/anacrolix/missinggo/issues/16
2019-07-26 10:49:36 +10:00
Matt Joiner 77b74dd39d Re-order the logic in Piece.VerifyData for better logging 2019-07-25 14:15:36 +10:00
Matt Joiner e9b10f774d Comments on the VerifyData methods 2019-07-25 14:13:42 +10:00
Matt Joiner bbeb69bb5f Ignore cached piece completion state when verifying data
Forcing data to be checked via VerifyData, and probably other places where piece checks are queued were being short-circuited due to cached piece completion. If a piece check is queued, or verifyData called, the cached completion state should be ignored.
2019-07-25 14:10:21 +10:00
Matt Joiner 018de2c96c Improve comments on some config fields 2019-07-23 11:30:05 +10:00
Matt Joiner e9df943d90
Add astronomer rating badge 2019-07-22 22:42:05 +10:00
Matt Joiner 958ff01eab Change the default client port 2019-07-19 16:19:21 +10:00
Matt Joiner 3c0588d661 Add some commented out logging 2019-07-19 16:17:38 +10:00
Matt Joiner f0e7f5e7a0 Add an error check in a test
Managed to get this to fail, and it just panicked.
2019-07-19 16:17:10 +10:00
Matt Joiner 338287486f Always return errors when handshakes or dialing fails
I intend to use xerrors-style error handling for special cases.
2019-07-19 16:15:46 +10:00
Matt Joiner 63d215568a Tidy up function signature 2019-07-19 14:56:29 +10:00
Matt Joiner 76513bfe0b Restart dial timeout for fallback header obfuscation attempt 2019-07-19 14:46:48 +10:00
Matt Joiner 5774859701 Try with the non-preferred header obfuscation if there's an error
The function called was more selective about what it returned as an error, but that style is outdated (should use xerrors), and no longer returns as expected.
2019-07-19 14:13:42 +10:00
Matt Joiner 1d8873552a Rework header obfuscation and add tests for fallbacks 2019-07-19 13:23:36 +10:00
Matt Joiner 90355b3dc7 Add dummy code for emulating the bug in #114
Useful for ensuring that the test can still reproduce the issue with changes to encryption handling.
2019-07-19 13:07:40 +10:00
Matt Joiner 09b587f17b Comments 2019-07-19 13:04:10 +10:00
Matt Joiner fb7293a94f cmd/torrent: Add flag for progress bar 2019-07-19 13:01:36 +10:00
Matt Joiner 93d34dd122 cmd/torrent: Don't log the public IP flag value 2019-07-19 13:00:31 +10:00
Matt Joiner 219ac4ab42 go mod tidy 2019-07-17 18:17:05 +10:00
Matt Joiner 561e3915f3 cmd/torrent-magnet: Add a description to command help output 2019-07-17 18:12:54 +10:00
Matt Joiner 27b7fbe3f3 Fix announcing to S3 HTTP trackers 2019-07-17 18:12:11 +10:00
Matt Joiner b17f0119fd Use fork of elgatito/upnp that contains go module files
Avoids persistent `go: finding github.com/op/go-logging latest` when using vgo.
2019-07-17 18:03:56 +10:00
Matt Joiner 77074b772a Use tagged github.com/gosuri/uiprogress, and update uilive indirect dep
Messing with the combined progress bar and logging output in cmd/torrent and hoping it is improved.
2019-07-17 18:00:40 +10:00
Matt Joiner 9afa2e70d7 cmd/torrent-metainfo-pprint: Fix -files for single-file torrents 2019-07-17 15:28:49 +10:00
Matt Joiner 5b44954223 Send tracker stopped event from the tracker scraper routine
Fixes potential blocking on the announce while the client lock is held, as well as differing arguments to the other announces introduced by #321.
2019-07-17 11:56:25 +10:00
Matt Joiner e56ea362d9 vgo get -u && go mod tidy 2019-07-16 11:08:17 +10:00
Matt Joiner fa0bbe2e07
Create FUNDING.yml 2019-06-24 14:12:14 +10:00
Matt Joiner 4629a92f9a Ignore ".torrent.bolt.db" which is generated by unit tests 2019-06-21 14:53:57 +10:00
Matt Joiner 12958ad384 Refactor Client.dialFirst 2019-06-21 14:50:49 +10:00
Matt Joiner 06ada2ef0f Remove unnecessary import alias 2019-06-21 14:49:43 +10:00
Matt Joiner 30c705f2f8 Count client listener accepts 2019-06-21 14:49:21 +10:00
Matt Joiner 88b3f92e0b Add go 1.13 to go.mod 2019-06-21 14:49:01 +10:00
Matt Joiner d27b304dfc Remove "Sending stopped event to trackers" log 2019-06-18 10:27:17 +10:00
Matt Joiner 95daebd067 bencode: Decode singleton lists of the expected type
Fixes #297.
2019-06-13 13:07:37 +10:00
Matt Joiner 8e86f45124 Code formatting 2019-06-13 13:06:25 +10:00
Matt Joiner d4584c2ca6 bencode: Improve UnmarshalTypeError string and list parsing error context
Helps with #297.
2019-06-13 12:35:11 +10:00
Matt Joiner 53be473486 Track concurrent chunk writes 2019-06-13 12:18:24 +10:00
Leandro Martelli 7ce45366f5 Adding Started and Stopped events 2019-06-03 09:45:34 +10:00
BruceWang 60e215aa81 Add OnQuery Hook 2019-05-29 15:08:46 +10:00
boypt 25d76e0449 allow ConnStats being marsheled to json 2019-05-29 15:05:31 +10:00
Matt Joiner d2400968fc Update CircleCI to use go1.12 instead of master 2019-04-24 09:35:09 +10:00
Radoslav Georgiev 4a31dffa95 torrentfs: fix a bug where the basenames of files are extracted incorrectly when listing the entries in a directory 2019-04-23 21:02:55 +10:00
Radoslav Georgiev 8249316c78 torrentfs: fix a bug where ENOENT is returned when the node for an entry in the root directory of a torrent is requested 2019-04-23 21:02:55 +10:00
anatasluo 0238a3d30b add one downstream project (#315) 2019-04-16 09:47:07 +10:00
davtoro f40140283a check if peer id exists 2019-04-15 17:58:23 +10:00
Matt Joiner bc249730aa Fix segfault on nil conntrack.EntryHandle instance when dialing
Fixes https://github.com/anacrolix/torrent/issues/314. Comments were added to the the conntrack package master, but have no functional change required here.
2019-04-10 18:27:54 +10:00
Matt Joiner d478888231 When failing to read stored data, try updating only the completion state for the failed piece
On rare occasions, reads are failing in a loop, exhausting all the available file descriptors. It's not clear why, it could be an error in the filecache storage backend I'm using, or some logic error regarding when it's okay to try to read.
2019-04-09 12:57:54 +10:00