]> Sergey Matveev's repositories - btrtrc.git/log
btrtrc.git
4 years agoFix a crash when receiving a request when we don't yet have the torrent info v1.7.1
Matt Joiner [Fri, 23 Aug 2019 02:19:28 +0000 (12:19 +1000)]
Fix a crash when receiving a request when we don't yet have the torrent info

4 years agoReduce tracker retry for failed announces to 1 minute v1.7.0
Matt Joiner [Wed, 21 Aug 2019 03:16:55 +0000 (13:16 +1000)]
Reduce tracker retry for failed announces to 1 minute

4 years agoLots of improvements to logging
Matt Joiner [Thu, 22 Aug 2019 03:59:04 +0000 (13:59 +1000)]
Lots of improvements to logging

4 years agoAdd missing debug level to log statement
Matt Joiner [Thu, 22 Aug 2019 00:20:13 +0000 (10:20 +1000)]
Add missing debug level to log statement

4 years agoRestrict the number of concurrent piece hashes
Matt Joiner [Wed, 21 Aug 2019 03:31:33 +0000 (13:31 +1000)]
Restrict the number of concurrent piece hashes

This fixes bad behaviour where running out of file descriptors, and overloading the system with goroutines and concurrent I/O may cause newly started torrents to fail to hash data.

4 years agoTidy up piece completion change handling
Matt Joiner [Wed, 21 Aug 2019 00:43:06 +0000 (10:43 +1000)]
Tidy up piece completion change handling

4 years agoInclude the piece number when logging piece hash errors
Matt Joiner [Wed, 21 Aug 2019 11:00:47 +0000 (21:00 +1000)]
Include the piece number when logging piece hash errors

4 years agogoimports -local
Matt Joiner [Wed, 21 Aug 2019 10:58:40 +0000 (20:58 +1000)]
goimports -local

4 years agoMake Reader log through its parent
Matt Joiner [Wed, 21 Aug 2019 10:55:43 +0000 (20:55 +1000)]
Make Reader log through its parent

4 years agoUpgrade to simplified logger
Matt Joiner [Wed, 21 Aug 2019 10:44:12 +0000 (20:44 +1000)]
Upgrade to simplified logger

4 years agogofmt simplify
Matt Joiner [Mon, 19 Aug 2019 02:15:54 +0000 (12:15 +1000)]
gofmt simplify

4 years agoAdd mse/cmd/mse
Matt Joiner [Sun, 18 Aug 2019 06:52:00 +0000 (16:52 +1000)]
Add mse/cmd/mse

4 years agometainfo: Add fuzzing func
Matt Joiner [Sun, 18 Aug 2019 06:51:20 +0000 (16:51 +1000)]
metainfo: Add fuzzing func

4 years agogo mod tidy v1.6.0
Matt Joiner [Thu, 15 Aug 2019 00:21:00 +0000 (10:21 +1000)]
go mod tidy

4 years agoAdd some timing code to Client.dialFirst
Matt Joiner [Thu, 15 Aug 2019 00:17:39 +0000 (10:17 +1000)]
Add some timing code to Client.dialFirst

4 years agoDon't include the handshake in the dial timeout for outgoing connections
Matt Joiner [Sun, 11 Aug 2019 03:17:47 +0000 (13:17 +1000)]
Don't include the handshake in the dial timeout for outgoing connections

4 years agoUpdate all imports of dht to v2
Matt Joiner [Sat, 10 Aug 2019 08:46:07 +0000 (18:46 +1000)]
Update all imports of dht to v2

4 years agoInclude remote address when logging failure to establish outbound connection v1.5.2
Matt Joiner [Tue, 30 Jul 2019 07:26:12 +0000 (17:26 +1000)]
Include remote address when logging failure to establish outbound connection

4 years agofs: Fix test failure when default client port is unavailable
Matt Joiner [Tue, 30 Jul 2019 07:25:10 +0000 (17:25 +1000)]
fs: Fix test failure when default client port is unavailable

4 years agoNewClient nil ClientConfig should use dynamic port
Matt Joiner [Tue, 30 Jul 2019 07:19:14 +0000 (17:19 +1000)]
NewClient nil ClientConfig should use dynamic port

It's pretty hard to test otherwise, if something's already on the default port.

4 years agoFix race spewing Client stats
Matt Joiner [Tue, 30 Jul 2019 07:18:09 +0000 (17:18 +1000)]
Fix race spewing Client stats

4 years agoDon't test with -race or -v for 32-bit v1.5.1
Matt Joiner [Fri, 26 Jul 2019 01:00:28 +0000 (11:00 +1000)]
Don't test with -race or -v for 32-bit

We just want to know that it builds and works for normal use.

4 years agoFix tests on 32-bit
Matt Joiner [Fri, 26 Jul 2019 00:56:13 +0000 (10:56 +1000)]
Fix tests on 32-bit

4 years agoTest 32-bit arch on CircleCI
Matt Joiner [Fri, 26 Jul 2019 00:49:36 +0000 (10:49 +1000)]
Test 32-bit arch on CircleCI

See https://github.com/anacrolix/missinggo/issues/16

4 years agoRe-order the logic in Piece.VerifyData for better logging v1.5.0
Matt Joiner [Thu, 25 Jul 2019 04:15:36 +0000 (14:15 +1000)]
Re-order the logic in Piece.VerifyData for better logging

4 years agoComments on the VerifyData methods
Matt Joiner [Thu, 25 Jul 2019 04:13:42 +0000 (14:13 +1000)]
Comments on the VerifyData methods

4 years agoIgnore cached piece completion state when verifying data
Matt Joiner [Thu, 25 Jul 2019 04:10:21 +0000 (14:10 +1000)]
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.

4 years agoImprove comments on some config fields
Matt Joiner [Tue, 23 Jul 2019 01:30:05 +0000 (11:30 +1000)]
Improve comments on some config fields

4 years agoAdd astronomer rating badge
Matt Joiner [Mon, 22 Jul 2019 12:42:05 +0000 (22:42 +1000)]
Add astronomer rating badge

4 years agoChange the default client port
Matt Joiner [Fri, 19 Jul 2019 06:19:21 +0000 (16:19 +1000)]
Change the default client port

4 years agoAdd some commented out logging
Matt Joiner [Fri, 19 Jul 2019 06:17:38 +0000 (16:17 +1000)]
Add some commented out logging

4 years agoAdd an error check in a test
Matt Joiner [Fri, 19 Jul 2019 06:17:10 +0000 (16:17 +1000)]
Add an error check in a test

Managed to get this to fail, and it just panicked.

4 years agoAlways return errors when handshakes or dialing fails
Matt Joiner [Fri, 19 Jul 2019 06:15:46 +0000 (16:15 +1000)]
Always return errors when handshakes or dialing fails

I intend to use xerrors-style error handling for special cases.

4 years agoTidy up function signature
Matt Joiner [Fri, 19 Jul 2019 04:56:29 +0000 (14:56 +1000)]
Tidy up function signature

4 years agoRestart dial timeout for fallback header obfuscation attempt
Matt Joiner [Fri, 19 Jul 2019 04:46:48 +0000 (14:46 +1000)]
Restart dial timeout for fallback header obfuscation attempt

4 years agoTry with the non-preferred header obfuscation if there's an error
Matt Joiner [Fri, 19 Jul 2019 04:13:42 +0000 (14:13 +1000)]
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.

4 years agoRework header obfuscation and add tests for fallbacks
Matt Joiner [Fri, 19 Jul 2019 03:23:36 +0000 (13:23 +1000)]
Rework header obfuscation and add tests for fallbacks

4 years agoAdd dummy code for emulating the bug in #114
Matt Joiner [Fri, 19 Jul 2019 03:07:40 +0000 (13:07 +1000)]
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.

4 years agoComments
Matt Joiner [Fri, 19 Jul 2019 03:04:10 +0000 (13:04 +1000)]
Comments

4 years agocmd/torrent: Add flag for progress bar
Matt Joiner [Fri, 19 Jul 2019 03:01:36 +0000 (13:01 +1000)]
cmd/torrent: Add flag for progress bar

4 years agocmd/torrent: Don't log the public IP flag value
Matt Joiner [Fri, 19 Jul 2019 03:00:31 +0000 (13:00 +1000)]
cmd/torrent: Don't log the public IP flag value

4 years agogo mod tidy v1.4.0
Matt Joiner [Wed, 17 Jul 2019 08:17:05 +0000 (18:17 +1000)]
go mod tidy

4 years agocmd/torrent-magnet: Add a description to command help output
Matt Joiner [Wed, 17 Jul 2019 08:12:54 +0000 (18:12 +1000)]
cmd/torrent-magnet: Add a description to command help output

4 years agoFix announcing to S3 HTTP trackers
Matt Joiner [Wed, 17 Jul 2019 08:12:11 +0000 (18:12 +1000)]
Fix announcing to S3 HTTP trackers

4 years agoUse fork of elgatito/upnp that contains go module files
Matt Joiner [Wed, 17 Jul 2019 08:03:56 +0000 (18:03 +1000)]
Use fork of elgatito/upnp that contains go module files

Avoids persistent `go: finding github.com/op/go-logging latest` when using vgo.

4 years agoUse tagged github.com/gosuri/uiprogress, and update uilive indirect dep
Matt Joiner [Wed, 17 Jul 2019 08:00:40 +0000 (18:00 +1000)]
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.

4 years agocmd/torrent-metainfo-pprint: Fix -files for single-file torrents
Matt Joiner [Wed, 17 Jul 2019 05:28:49 +0000 (15:28 +1000)]
cmd/torrent-metainfo-pprint: Fix -files for single-file torrents

4 years agoSend tracker stopped event from the tracker scraper routine v1.3.1
Matt Joiner [Wed, 17 Jul 2019 01:56:25 +0000 (11:56 +1000)]
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.

4 years agovgo get -u && go mod tidy v1.3.0
Matt Joiner [Tue, 16 Jul 2019 01:08:17 +0000 (11:08 +1000)]
vgo get -u && go mod tidy

4 years agoCreate FUNDING.yml
Matt Joiner [Mon, 24 Jun 2019 04:12:14 +0000 (14:12 +1000)]
Create FUNDING.yml

4 years agoIgnore ".torrent.bolt.db" which is generated by unit tests
Matt Joiner [Fri, 21 Jun 2019 04:53:57 +0000 (14:53 +1000)]
Ignore ".torrent.bolt.db" which is generated by unit tests

4 years agoRefactor Client.dialFirst
Matt Joiner [Fri, 21 Jun 2019 04:50:49 +0000 (14:50 +1000)]
Refactor Client.dialFirst

4 years agoRemove unnecessary import alias
Matt Joiner [Fri, 21 Jun 2019 04:49:43 +0000 (14:49 +1000)]
Remove unnecessary import alias

4 years agoCount client listener accepts
Matt Joiner [Fri, 21 Jun 2019 04:49:21 +0000 (14:49 +1000)]
Count client listener accepts

4 years agoAdd go 1.13 to go.mod
Matt Joiner [Fri, 21 Jun 2019 04:49:01 +0000 (14:49 +1000)]
Add go 1.13 to go.mod

4 years agoRemove "Sending stopped event to trackers" log
Matt Joiner [Tue, 18 Jun 2019 00:27:17 +0000 (10:27 +1000)]
Remove "Sending stopped event to trackers" log

4 years agobencode: Decode singleton lists of the expected type
Matt Joiner [Thu, 13 Jun 2019 03:07:37 +0000 (13:07 +1000)]
bencode: Decode singleton lists of the expected type

Fixes #297.

4 years agoCode formatting
Matt Joiner [Thu, 13 Jun 2019 03:06:25 +0000 (13:06 +1000)]
Code formatting

4 years agobencode: Improve UnmarshalTypeError string and list parsing error context
Matt Joiner [Thu, 13 Jun 2019 02:35:11 +0000 (12:35 +1000)]
bencode: Improve UnmarshalTypeError string and list parsing error context

Helps with #297.

4 years agoTrack concurrent chunk writes v1.2.0
Matt Joiner [Thu, 13 Jun 2019 02:18:08 +0000 (12:18 +1000)]
Track concurrent chunk writes

4 years agoAdding Started and Stopped events
Leandro Martelli [Fri, 31 May 2019 16:11:01 +0000 (17:11 +0100)]
Adding Started and Stopped events

4 years agoAdd OnQuery Hook
BruceWang [Thu, 23 May 2019 02:13:48 +0000 (10:13 +0800)]
Add OnQuery Hook

4 years agoallow ConnStats being marsheled to json
boypt [Thu, 23 May 2019 05:58:17 +0000 (13:58 +0800)]
allow ConnStats being marsheled to json

5 years agoUpdate CircleCI to use go1.12 instead of master v1.1.4
Matt Joiner [Tue, 23 Apr 2019 23:34:51 +0000 (09:34 +1000)]
Update CircleCI to use go1.12 instead of master

5 years agotorrentfs: fix a bug where the basenames of files are extracted incorrectly when...
Radoslav Georgiev [Tue, 16 Apr 2019 20:28:10 +0000 (23:28 +0300)]
torrentfs: fix a bug where the basenames of files are extracted incorrectly when listing the entries in a directory

5 years agotorrentfs: fix a bug where ENOENT is returned when the node for an entry in the root...
Radoslav Georgiev [Tue, 16 Apr 2019 20:23:03 +0000 (23:23 +0300)]
torrentfs: fix a bug where ENOENT is returned when the node for an entry in the root directory of a torrent is requested

5 years agoadd one downstream project (#315)
anatasluo [Mon, 15 Apr 2019 23:47:07 +0000 (19:47 -0400)]
add one downstream project (#315)

5 years agocheck if peer id exists
davtoro [Sat, 13 Apr 2019 13:25:19 +0000 (15:25 +0200)]
check if peer id exists

5 years agoFix segfault on nil conntrack.EntryHandle instance when dialing v1.1.3
Matt Joiner [Wed, 10 Apr 2019 08:27:54 +0000 (18:27 +1000)]
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.

5 years agoWhen failing to read stored data, try updating only the completion state for the...
Matt Joiner [Tue, 9 Apr 2019 02:57:54 +0000 (12:57 +1000)]
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.

5 years agoMake the default conntracker instance unlimited for now
Matt Joiner [Tue, 9 Apr 2019 02:54:41 +0000 (12:54 +1000)]
Make the default conntracker instance unlimited for now

There are rate limiting issues in the DHT that need to be resolved.

5 years agoImprove some types in reader.readOnceAt
Matt Joiner [Tue, 9 Apr 2019 02:53:18 +0000 (12:53 +1000)]
Improve some types in reader.readOnceAt

5 years agoFix leaked conntrack.EntryHandle v1.1.2
Matt Joiner [Thu, 28 Mar 2019 21:48:56 +0000 (08:48 +1100)]
Fix leaked conntrack.EntryHandle

5 years agoRemove gomobile from CI
Matt Joiner [Fri, 22 Mar 2019 14:34:55 +0000 (01:34 +1100)]
Remove gomobile from CI

https://github.com/golang/go/issues/27234

5 years agoFix gomobile install in CI
Matt Joiner [Fri, 22 Mar 2019 12:36:59 +0000 (23:36 +1100)]
Fix gomobile install in CI

5 years agoFix race condition in Torrent.SetDisplayName v1.1.1
Matt Joiner [Wed, 20 Mar 2019 00:01:56 +0000 (11:01 +1100)]
Fix race condition in Torrent.SetDisplayName

5 years agovgo get -u v1.1.0
Matt Joiner [Tue, 19 Mar 2019 09:43:51 +0000 (20:43 +1100)]
vgo get -u

5 years agovgo mod tidy
Matt Joiner [Tue, 19 Mar 2019 09:35:06 +0000 (20:35 +1100)]
vgo mod tidy

5 years agoAdd github.com/spaolacci/murmur3 indirect
Matt Joiner [Tue, 19 Mar 2019 08:09:31 +0000 (19:09 +1100)]
Add github.com/spaolacci/murmur3 indirect

5 years agoFix race in Torrent.String
Matt Joiner [Tue, 12 Mar 2019 00:22:25 +0000 (11:22 +1100)]
Fix race in Torrent.String

5 years agoUpdate missinggo and dht
Matt Joiner [Mon, 11 Mar 2019 00:51:29 +0000 (11:51 +1100)]
Update missinggo and dht

5 years agoPanic on chunk write errors
Matt Joiner [Sun, 10 Mar 2019 23:45:43 +0000 (10:45 +1100)]
Panic on chunk write errors

The torrent client will download indefinitely when this occurs, a strategy to handle or raise the error more appropriately is required.

5 years agoMake use of the new context parameter in conntrack Wait
Matt Joiner [Sun, 10 Mar 2019 23:43:02 +0000 (10:43 +1100)]
Make use of the new context parameter in conntrack Wait

5 years agoUpdate to missinggo v0.2.0
Matt Joiner [Sun, 3 Mar 2019 03:40:49 +0000 (14:40 +1100)]
Update to missinggo v0.2.0

5 years agoFix double quoting in a log statement
Matt Joiner [Sun, 3 Mar 2019 03:30:46 +0000 (14:30 +1100)]
Fix double quoting in a log statement

5 years agoMove multiless to missinggo
Matt Joiner [Sun, 3 Mar 2019 03:30:02 +0000 (14:30 +1100)]
Move multiless to missinggo

5 years agoAdds more flags to torrent-create
Masih Yeganeh [Wed, 6 Feb 2019 06:51:03 +0000 (10:21 +0330)]
Adds more flags to torrent-create

Flags for setting Comment and CreatedBy fields and starting with empty AnnounceList

5 years agoAvoid allocating a slice when iterating pending chunks
Matt Joiner [Tue, 19 Feb 2019 03:41:52 +0000 (14:41 +1100)]
Avoid allocating a slice when iterating pending chunks

5 years agogo mod tidy
Matt Joiner [Tue, 19 Feb 2019 03:38:31 +0000 (14:38 +1100)]
go mod tidy

5 years agoTorrent.String: Quote raw names
Matt Joiner [Sat, 16 Feb 2019 07:33:14 +0000 (18:33 +1100)]
Torrent.String: Quote raw names

5 years agoReduce allocations for Piece.hash
Matt Joiner [Wed, 30 Jan 2019 06:54:02 +0000 (17:54 +1100)]
Reduce allocations for Piece.hash

5 years agoReport allocs in BenchmarkAddLargeTorrent
Matt Joiner [Wed, 30 Jan 2019 04:19:32 +0000 (15:19 +1100)]
Report allocs in BenchmarkAddLargeTorrent

5 years agoRemove unnecessary blank line
Matt Joiner [Wed, 30 Jan 2019 04:18:00 +0000 (15:18 +1100)]
Remove unnecessary blank line

5 years agoReorder some code in dht announcer
Matt Joiner [Tue, 22 Jan 2019 00:41:07 +0000 (01:41 +0100)]
Reorder some code in dht announcer

5 years agoFix cancellation of dht announce when peers are wanted
Matt Joiner [Tue, 22 Jan 2019 00:16:41 +0000 (01:16 +0100)]
Fix cancellation of dht announce when peers are wanted

5 years agogo.mod: Require dht with krpc.Msg.Token change
Matt Joiner [Mon, 21 Jan 2019 21:59:13 +0000 (22:59 +0100)]
go.mod: Require dht with krpc.Msg.Token change

5 years agoRestart DHT announces at regular intervals
Matt Joiner [Mon, 21 Jan 2019 02:46:26 +0000 (03:46 +0100)]
Restart DHT announces at regular intervals

The existing implementation would crawl the DHT until the address bloom filter was full. This could take ages unless enough peers were found to fill the pending nodes for the torrent to the high water mark. Fixes #301.

5 years agoFix benchmark not building with changes to krpc.Msg.Token
Matt Joiner [Mon, 21 Jan 2019 21:53:42 +0000 (22:53 +0100)]
Fix benchmark not building with changes to krpc.Msg.Token

5 years agoFix test for dht query context changes
Matt Joiner [Mon, 21 Jan 2019 21:36:40 +0000 (22:36 +0100)]
Fix test for dht query context changes

5 years agoFix build error
Matt Joiner [Wed, 16 Jan 2019 10:11:47 +0000 (10:11 +0000)]
Fix build error