]>
Sergey Matveev's repositories - btrtrc.git/log
Alfonso Montero [Fri, 20 Mar 2020 19:16:32 +0000 (20:16 +0100)]
Readme: Add downstream project
Matt Joiner [Tue, 24 Mar 2020 01:15:35 +0000 (12:15 +1100)]
Rewrite file.bytesLeft
Avoids iteration, and should handle files that are entirely inside a single piece, as well as zero-sized at the beginning of a torrent. Should fix #387.
Matt Joiner [Tue, 24 Mar 2020 00:21:42 +0000 (11:21 +1100)]
Rename variables in fileBytesLeft
Matt Joiner [Tue, 24 Mar 2020 00:19:11 +0000 (11:19 +1100)]
Add abstraction and tests for #387
Matt Joiner [Tue, 17 Mar 2020 02:48:09 +0000 (13:48 +1100)]
Logging improvements for DHT
Matt Joiner [Tue, 17 Mar 2020 02:47:53 +0000 (13:47 +1100)]
Update to latest anacrolix/dht
Matt Joiner [Mon, 16 Mar 2020 05:30:39 +0000 (16:30 +1100)]
Add doc comments related to #383
Matt Joiner [Thu, 27 Feb 2020 07:33:44 +0000 (18:33 +1100)]
Use stable bit set for pending pieces PriorityBitmap
Fixes #382.
Matt Joiner [Thu, 27 Feb 2020 05:50:14 +0000 (16:50 +1100)]
cmd/torrent: Ditch the progress bar
I'm not happy with any implementations. The one in use was racy anyway. Helps progress toward fixing #382.
Matt Joiner [Thu, 27 Feb 2020 05:45:57 +0000 (16:45 +1100)]
Make io.EOF an expected error from storage.Piece.ReadAt
Fixes #381.
Matt Joiner [Thu, 27 Feb 2020 05:42:33 +0000 (16:42 +1100)]
Expose PieceStateRun formatting
Matt Joiner [Thu, 27 Feb 2020 05:41:33 +0000 (16:41 +1100)]
Add Piece.State
Matt Joiner [Wed, 26 Feb 2020 22:45:13 +0000 (09:45 +1100)]
Move requestStrategyDefaults into its own file
Matt Joiner [Sat, 22 Feb 2020 08:40:50 +0000 (19:40 +1100)]
Disable data downloading on storage write errors
Also add a hook and Torrent methods to modify this.
Matt Joiner [Sat, 22 Feb 2020 08:38:56 +0000 (19:38 +1100)]
Misc cleanup
Matt Joiner [Fri, 21 Feb 2020 03:56:21 +0000 (14:56 +1100)]
Add a test for storage write errors
Addresses #377
Matt Joiner [Fri, 21 Feb 2020 03:12:44 +0000 (14:12 +1100)]
Differentiate between storage.ClientImpl{,Closer}
Matt Joiner [Fri, 21 Feb 2020 01:58:47 +0000 (12:58 +1100)]
Move envpprof imports around
Matt Joiner [Fri, 21 Feb 2020 00:51:24 +0000 (11:51 +1100)]
Expose PeerConn.PeerPieces
Fixes #375.
Matt Joiner [Fri, 21 Feb 2020 00:07:50 +0000 (11:07 +1100)]
Rename connection->PeerConn and fix exports
Matt Joiner [Thu, 20 Feb 2020 22:47:46 +0000 (09:47 +1100)]
Tweak DHT status output
Matt Joiner [Thu, 20 Feb 2020 06:46:29 +0000 (17:46 +1100)]
Support custom DHT servers
Addresses #266.
Matt Joiner [Thu, 20 Feb 2020 06:04:11 +0000 (17:04 +1100)]
Remove ClientConfig.ProxyURL and DefaultHTTPUserAgent
ProxyURL is no longer used for implicit sockets, this will ensure consumers are aware. It's other behaviour is already more correct specified through HTTPProxy.
DefaultHTTPUserAgent was vestigial, and is specified now through the ClientConfig.
Matt Joiner [Thu, 20 Feb 2020 05:57:28 +0000 (16:57 +1100)]
TestClientDisabledImplicitNetworksButDhtEnabled
Matt Joiner [Thu, 20 Feb 2020 05:47:37 +0000 (16:47 +1100)]
Add support for non-IP-based networks
Includes a test with unix sockets. Exposes AddDialer, AddListener, and reworks Peer.
Matt Joiner [Thu, 20 Feb 2020 02:57:24 +0000 (13:57 +1100)]
Extract the transfer tests
We need them external the torrent package so we can test the API for adding dialers and listeners.
Matt Joiner [Wed, 19 Feb 2020 23:57:02 +0000 (10:57 +1100)]
Split Client dialers and listeners
Matt Joiner [Thu, 20 Feb 2020 00:09:57 +0000 (11:09 +1100)]
Apply staticcheck
Matt Joiner [Tue, 28 Jan 2020 22:12:49 +0000 (09:12 +1100)]
Remove funding file
It's drawn automatically from anacrolix/.github now.
Matt Joiner [Fri, 24 Jan 2020 08:24:28 +0000 (19:24 +1100)]
Make use of requestStrategyDefaults in more places
Matt Joiner [Fri, 24 Jan 2020 06:55:20 +0000 (17:55 +1100)]
Move all the request strategy stuff into its file
Matt Joiner [Fri, 24 Jan 2020 06:34:07 +0000 (17:34 +1100)]
Restore the default duplicate request timeout strategy
Matt Joiner [Fri, 24 Jan 2020 06:30:57 +0000 (17:30 +1100)]
Expose request strategies
Matt Joiner [Fri, 24 Jan 2020 04:09:39 +0000 (15:09 +1100)]
Fix unimplemented hooks in request strategies one and two
Matt Joiner [Thu, 23 Jan 2020 03:16:46 +0000 (14:16 +1100)]
go get -u && go mod tidy
Matt Joiner [Thu, 23 Jan 2020 02:56:39 +0000 (13:56 +1100)]
Use CopyN to ensure early io.EOF isn't ignored when hashing pieces
Matt Joiner [Thu, 23 Jan 2020 02:55:40 +0000 (13:55 +1100)]
Skip 1 frame in reader.log
Matt Joiner [Thu, 23 Jan 2020 02:54:37 +0000 (13:54 +1100)]
Finish fixing IP banning on storage errors
Matt Joiner [Thu, 23 Jan 2020 02:52:17 +0000 (13:52 +1100)]
Record connection dirtied piece before queuing for hash
Not a bug, but probably more robust.
Matt Joiner [Thu, 23 Jan 2020 02:51:14 +0000 (13:51 +1100)]
Update code comments
Matt Joiner [Wed, 22 Jan 2020 04:56:16 +0000 (15:56 +1100)]
Reflow some comments
Matt Joiner [Mon, 20 Jan 2020 00:51:24 +0000 (11:51 +1100)]
Fix race in requestStrategyThree request timeout callback
Matt Joiner [Tue, 14 Jan 2020 04:42:27 +0000 (15:42 +1100)]
Upgrade github.com/pkg/errors@v0.9.0
Matt Joiner [Mon, 13 Jan 2020 23:30:20 +0000 (10:30 +1100)]
Fix bad init of Torrent.requestStrategy
Matt Joiner [Fri, 10 Jan 2020 06:22:46 +0000 (17:22 +1100)]
Fix panic in benchmark due to requestStrategy changes
Matt Joiner [Fri, 10 Jan 2020 05:18:55 +0000 (16:18 +1100)]
Extract the request timeout stuff into requestStrategyThree
Matt Joiner [Fri, 10 Jan 2020 04:09:21 +0000 (15:09 +1100)]
Extract the request strategy logic
Bit messy. Now it'll be easier to clean-up what it depends on, and test.
Matt Joiner [Thu, 9 Jan 2020 23:27:05 +0000 (10:27 +1100)]
Formatting
Matt Joiner [Thu, 9 Jan 2020 22:43:44 +0000 (09:43 +1100)]
Fix typos and spellos in comments
Matt Joiner [Thu, 9 Jan 2020 12:13:59 +0000 (23:13 +1100)]
Update missinggo
Matt Joiner [Thu, 9 Jan 2020 11:58:23 +0000 (22:58 +1100)]
Resource per piece storage: Store incomplete chunks separately
Matt Joiner [Tue, 7 Jan 2020 04:13:28 +0000 (15:13 +1100)]
When piece checks fail only ban untrusted peers and only when the entire piece is dirty
This should help with addressing https://github.com/anacrolix/torrent/issues/364.
Matt Joiner [Wed, 8 Jan 2020 22:51:36 +0000 (09:51 +1100)]
Improve hash piece error logging
Matt Joiner [Tue, 7 Jan 2020 20:29:12 +0000 (07:29 +1100)]
Don't create piece hashers for closed Torrents
Matt Joiner [Tue, 7 Jan 2020 20:28:52 +0000 (07:28 +1100)]
Use subtests in TestClientTransferVarious
Matt Joiner [Tue, 7 Jan 2020 08:18:07 +0000 (19:18 +1100)]
Propagate back piece hashing errors
Attempting to solve https://github.com/anacrolix/torrent/issues/364.
James Lawrence [Sun, 12 Jan 2020 19:26:29 +0000 (14:26 -0500)]
fixes various vet errors
Matt Joiner [Mon, 6 Jan 2020 23:50:18 +0000 (10:50 +1100)]
Fix a log level
Matt Joiner [Mon, 6 Jan 2020 23:44:58 +0000 (10:44 +1100)]
Fix panic in logging
Found by @ccampbell.
Matt Joiner [Sun, 5 Jan 2020 22:02:11 +0000 (09:02 +1100)]
Update FUNDING.yml
Matt Joiner [Sat, 4 Jan 2020 06:17:56 +0000 (17:17 +1100)]
Disable accept rate limiting by default
It messes with any non-standard usage, like localhost etc. It might even just be a bad idea when interacting with clients that behave like ourselves: opening connections with varying encryption and protocols simultaneously to each peer.
Matt Joiner [Sat, 4 Jan 2020 06:16:48 +0000 (17:16 +1100)]
cmd/torrent: Disable accept rate limiting
Matt Joiner [Sat, 4 Jan 2020 06:14:18 +0000 (17:14 +1100)]
Improve logging and errors for accept rate limiting
Matt Joiner [Sat, 4 Jan 2020 05:43:15 +0000 (16:43 +1100)]
Revert to log v0.4.0
Matt Joiner [Sat, 4 Jan 2020 05:40:51 +0000 (16:40 +1100)]
cmd/torrent: Move log setup earlier to avoid race
Matt Joiner [Sat, 4 Jan 2020 05:26:49 +0000 (16:26 +1100)]
cmd/torrent: Synchronize stopping
Matt Joiner [Fri, 3 Jan 2020 04:37:08 +0000 (15:37 +1100)]
Upgrade to log v0.5.0
Matt Joiner [Fri, 3 Jan 2020 03:51:18 +0000 (14:51 +1100)]
cmd/torrent: Make the addr flag a string
This avoids tagflag trying to resolve it, and then passing a bad IP for different listen networks. There's also a patch to tagflag so it doesn't do this anymore.
Matt Joiner [Fri, 3 Jan 2020 03:49:43 +0000 (14:49 +1100)]
cmd/torrent: Add dht flag
Steve Yoon [Mon, 30 Dec 2019 17:58:06 +0000 (12:58 -0500)]
propagate proxy url parsing err
Sick Yoon [Sun, 22 Dec 2019 08:19:16 +0000 (03:19 -0500)]
disable listeners if proxy is configured
Matt Joiner [Sun, 29 Dec 2019 02:00:20 +0000 (13:00 +1100)]
Update dht to v2.3.1
Fixes a race in bootstrap stats.
Matt Joiner [Mon, 23 Dec 2019 03:04:07 +0000 (14:04 +1100)]
Use new anacrolix/multiless, and incorporate Peer.Trusted into peer prioritization
Matt Joiner [Mon, 23 Dec 2019 02:39:34 +0000 (13:39 +1100)]
bencode: Rename string_values->stringValues
Matt Joiner [Wed, 18 Dec 2019 05:49:15 +0000 (16:49 +1100)]
Remove unnecessary locking in Torrent.Piece
Matt Joiner [Wed, 18 Dec 2019 02:52:00 +0000 (13:52 +1100)]
Add connection trust flag, and more tests with small caches
Thanks to observations and feedback from @ccampbell.
Matt Joiner [Tue, 17 Dec 2019 09:49:40 +0000 (20:49 +1100)]
Switch back to anacrolix/sync for the Client lock
davtoro [Mon, 16 Dec 2019 02:22:24 +0000 (03:22 +0100)]
Possibility to change UPnP ID (#354)
Matt Joiner [Fri, 13 Dec 2019 04:55:56 +0000 (15:55 +1100)]
Coalesce piece state change notifications on client unlock
Reported by Craig Campbell <iamcraigcampbell@gmail.com>.
Yates [Sun, 8 Dec 2019 09:35:40 +0000 (17:35 +0800)]
use path.utf8 first for some torrent (#350)
D. HT. Yu [Sun, 8 Dec 2019 09:34:24 +0000 (17:34 +0800)]
fix if statement in `cmd/torrent/main.go` (#349)
i96751414 [Sat, 30 Nov 2019 08:53:35 +0000 (08:53 +0000)]
Fix bytesLeft for files (#348)
* Refactor (*File).bytesLeft
* Always use the same piece size
Matt Joiner [Thu, 28 Nov 2019 01:44:34 +0000 (12:44 +1100)]
Update deps
Matt Joiner [Tue, 26 Nov 2019 05:22:41 +0000 (16:22 +1100)]
Add comments on File.{first,end}PieceIndex
Matt Joiner [Tue, 26 Nov 2019 05:22:24 +0000 (16:22 +1100)]
Change File.endPieceIndex calculation
I think previously it would round-up when it shouldn't.
i96751414 [Tue, 26 Nov 2019 00:54:26 +0000 (00:54 +0000)]
Add BytesCompleted method for files (#347)
* Add BytesCompleted method for files
* Make sure we check limit pieces correctly
* Remove unnecessary info check
Matt Joiner [Wed, 20 Nov 2019 09:04:47 +0000 (20:04 +1100)]
Include piece index in log message
Anthony Raymond [Wed, 20 Nov 2019 05:31:54 +0000 (06:31 +0100)]
Anthonyraymond export well known (#346)
* Export HttpResponse from tracker/http.go
* Update http_test.go
Anthony Raymond [Thu, 14 Nov 2019 23:22:59 +0000 (00:22 +0100)]
Export Peer function (#343)
* Export function to be use-able in library
* Update method call
Matt Joiner [Wed, 6 Nov 2019 21:56:56 +0000 (08:56 +1100)]
Use latest golang.org/x/time
Includes rate.Limiter.SetBurst{,At}.
Matt Joiner [Wed, 6 Nov 2019 21:51:14 +0000 (08:51 +1100)]
Include traversal stats in completed bootstrap log message
Matt Joiner [Mon, 4 Nov 2019 01:11:26 +0000 (12:11 +1100)]
Use default connection tracking values
Matt Joiner [Sun, 3 Nov 2019 22:19:07 +0000 (09:19 +1100)]
Move entirely to etcd-io/bbolt
Matt Joiner [Sun, 3 Nov 2019 02:04:46 +0000 (13:04 +1100)]
Moved to anacrolix/stm
Matt Joiner [Sat, 2 Nov 2019 11:41:53 +0000 (22:41 +1100)]
Use stm versions of dht and missinggo, and use anacrolix/stm
Matt Joiner [Sat, 2 Nov 2019 11:35:57 +0000 (22:35 +1100)]
Use missinggo/v2/conntrack
Matt Joiner [Thu, 17 Oct 2019 06:46:35 +0000 (17:46 +1100)]
Rename peer source constants
Matt Joiner [Thu, 17 Oct 2019 06:46:09 +0000 (17:46 +1100)]
Update dht to include interface change to OnAnnouncePeer
Matt Joiner [Tue, 15 Oct 2019 03:59:23 +0000 (14:59 +1100)]
In the torrent status, sort trackers by the scheme last
Matt Joiner [Sat, 12 Oct 2019 00:07:49 +0000 (11:07 +1100)]
Replace github.com/boltdb/bolt with github.com/etcd-io/bbolt