]> Sergey Matveev's repositories - btrtrc.git/log
btrtrc.git
4 years agoBlock updates to latest bazil.org/fuse v1.15.1
Matt Joiner [Thu, 23 Apr 2020 03:25:49 +0000 (13:25 +1000)]
Block updates to latest bazil.org/fuse

4 years agoTake minimal fixes to TestReceiveChunkStorageFailure from master
Matt Joiner [Thu, 23 Apr 2020 03:22:54 +0000 (13:22 +1000)]
Take minimal fixes to TestReceiveChunkStorageFailure from master

4 years agoFix for github.com/anacrolix/log v0.7.0
Matt Joiner [Thu, 23 Apr 2020 00:38:50 +0000 (10:38 +1000)]
Fix for github.com/anacrolix/log v0.7.0

4 years agoUse default bbolt package alias v1.15.0
Matt Joiner [Tue, 24 Mar 2020 01:54:57 +0000 (12:54 +1100)]
Use default bbolt package alias

4 years agoFix bbolt compatibility with go1.14
Matt Joiner [Tue, 24 Mar 2020 01:52:33 +0000 (12:52 +1100)]
Fix bbolt compatibility with go1.14

4 years agoReadme: Add downstream project
Alfonso Montero [Fri, 20 Mar 2020 19:16:32 +0000 (20:16 +0100)]
Readme: Add downstream project

4 years agoRewrite file.bytesLeft
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.

4 years agoRename variables in fileBytesLeft
Matt Joiner [Tue, 24 Mar 2020 00:21:42 +0000 (11:21 +1100)]
Rename variables in fileBytesLeft

4 years agoAdd abstraction and tests for #387
Matt Joiner [Tue, 24 Mar 2020 00:19:11 +0000 (11:19 +1100)]
Add abstraction and tests for #387

4 years agoLogging improvements for DHT
Matt Joiner [Tue, 17 Mar 2020 02:48:09 +0000 (13:48 +1100)]
Logging improvements for DHT

4 years agoUpdate to latest anacrolix/dht
Matt Joiner [Tue, 17 Mar 2020 02:47:53 +0000 (13:47 +1100)]
Update to latest anacrolix/dht

4 years agoAdd doc comments related to #383
Matt Joiner [Mon, 16 Mar 2020 05:30:39 +0000 (16:30 +1100)]
Add doc comments related to #383

4 years agoUse stable bit set for pending pieces PriorityBitmap
Matt Joiner [Thu, 27 Feb 2020 07:33:44 +0000 (18:33 +1100)]
Use stable bit set for pending pieces PriorityBitmap

Fixes #382.

4 years agocmd/torrent: Ditch the progress bar
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.

4 years agoMake io.EOF an expected error from storage.Piece.ReadAt
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.

4 years agoExpose PieceStateRun formatting
Matt Joiner [Thu, 27 Feb 2020 05:42:33 +0000 (16:42 +1100)]
Expose PieceStateRun formatting

4 years agoAdd Piece.State
Matt Joiner [Thu, 27 Feb 2020 05:41:33 +0000 (16:41 +1100)]
Add Piece.State

4 years agoMove requestStrategyDefaults into its own file
Matt Joiner [Wed, 26 Feb 2020 22:45:13 +0000 (09:45 +1100)]
Move requestStrategyDefaults into its own file

4 years agoDisable data downloading on storage write errors
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.

4 years agoMisc cleanup
Matt Joiner [Sat, 22 Feb 2020 08:38:56 +0000 (19:38 +1100)]
Misc cleanup

4 years agoAdd a test for storage write errors
Matt Joiner [Fri, 21 Feb 2020 03:56:21 +0000 (14:56 +1100)]
Add a test for storage write errors

Addresses #377

4 years agoDifferentiate between storage.ClientImpl{,Closer}
Matt Joiner [Fri, 21 Feb 2020 03:12:44 +0000 (14:12 +1100)]
Differentiate between storage.ClientImpl{,Closer}

4 years agoMove envpprof imports around
Matt Joiner [Fri, 21 Feb 2020 01:58:47 +0000 (12:58 +1100)]
Move envpprof imports around

4 years agoExpose PeerConn.PeerPieces
Matt Joiner [Fri, 21 Feb 2020 00:51:24 +0000 (11:51 +1100)]
Expose PeerConn.PeerPieces

Fixes #375.

4 years agoRename connection->PeerConn and fix exports
Matt Joiner [Fri, 21 Feb 2020 00:07:50 +0000 (11:07 +1100)]
Rename connection->PeerConn and fix exports

4 years agoTweak DHT status output
Matt Joiner [Thu, 20 Feb 2020 22:47:46 +0000 (09:47 +1100)]
Tweak DHT status output

4 years agoSupport custom DHT servers
Matt Joiner [Thu, 20 Feb 2020 06:46:29 +0000 (17:46 +1100)]
Support custom DHT servers

Addresses #266.

4 years agoRemove ClientConfig.ProxyURL and DefaultHTTPUserAgent v1.14.0
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.

4 years agoTestClientDisabledImplicitNetworksButDhtEnabled
Matt Joiner [Thu, 20 Feb 2020 05:57:28 +0000 (16:57 +1100)]
TestClientDisabledImplicitNetworksButDhtEnabled

4 years agoAdd support for non-IP-based networks
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.

4 years agoExtract the transfer tests
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.

4 years agoSplit Client dialers and listeners
Matt Joiner [Wed, 19 Feb 2020 23:57:02 +0000 (10:57 +1100)]
Split Client dialers and listeners

4 years agoApply staticcheck
Matt Joiner [Thu, 20 Feb 2020 00:09:57 +0000 (11:09 +1100)]
Apply staticcheck

4 years agoRemove funding file v1.13.0
Matt Joiner [Tue, 28 Jan 2020 22:12:49 +0000 (09:12 +1100)]
Remove funding file

It's drawn automatically from anacrolix/.github now.

4 years agoMake use of requestStrategyDefaults in more places
Matt Joiner [Fri, 24 Jan 2020 08:24:28 +0000 (19:24 +1100)]
Make use of requestStrategyDefaults in more places

4 years agoMove all the request strategy stuff into its file
Matt Joiner [Fri, 24 Jan 2020 06:55:20 +0000 (17:55 +1100)]
Move all the request strategy stuff into its file

4 years agoRestore the default duplicate request timeout strategy
Matt Joiner [Fri, 24 Jan 2020 06:34:07 +0000 (17:34 +1100)]
Restore the default duplicate request timeout strategy

4 years agoExpose request strategies
Matt Joiner [Fri, 24 Jan 2020 06:30:57 +0000 (17:30 +1100)]
Expose request strategies

4 years agoFix unimplemented hooks in request strategies one and two
Matt Joiner [Fri, 24 Jan 2020 04:09:39 +0000 (15:09 +1100)]
Fix unimplemented hooks in request strategies one and two

4 years agogo get -u && go mod tidy v1.12.0
Matt Joiner [Thu, 23 Jan 2020 03:16:46 +0000 (14:16 +1100)]
go get -u && go mod tidy

4 years agoUse CopyN to ensure early io.EOF isn't ignored when hashing pieces
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

4 years agoSkip 1 frame in reader.log
Matt Joiner [Thu, 23 Jan 2020 02:55:40 +0000 (13:55 +1100)]
Skip 1 frame in reader.log

4 years agoFinish fixing IP banning on storage errors
Matt Joiner [Thu, 23 Jan 2020 02:54:37 +0000 (13:54 +1100)]
Finish fixing IP banning on storage errors

4 years agoRecord connection dirtied piece before queuing for hash
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.

4 years agoUpdate code comments
Matt Joiner [Thu, 23 Jan 2020 02:51:14 +0000 (13:51 +1100)]
Update code comments

4 years agoReflow some comments
Matt Joiner [Wed, 22 Jan 2020 04:56:16 +0000 (15:56 +1100)]
Reflow some comments

4 years agoFix race in requestStrategyThree request timeout callback
Matt Joiner [Mon, 20 Jan 2020 00:51:24 +0000 (11:51 +1100)]
Fix race in requestStrategyThree request timeout callback

4 years agoUpgrade github.com/pkg/errors@v0.9.0
Matt Joiner [Tue, 14 Jan 2020 04:42:27 +0000 (15:42 +1100)]
Upgrade github.com/pkg/errors@v0.9.0

4 years agoFix bad init of Torrent.requestStrategy
Matt Joiner [Mon, 13 Jan 2020 23:30:20 +0000 (10:30 +1100)]
Fix bad init of Torrent.requestStrategy

4 years agoFix panic in benchmark due to requestStrategy changes
Matt Joiner [Fri, 10 Jan 2020 06:22:46 +0000 (17:22 +1100)]
Fix panic in benchmark due to requestStrategy changes

4 years agoExtract the request timeout stuff into requestStrategyThree
Matt Joiner [Fri, 10 Jan 2020 05:18:55 +0000 (16:18 +1100)]
Extract the request timeout stuff into requestStrategyThree

4 years agoExtract the request strategy logic
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.

4 years agoFormatting
Matt Joiner [Thu, 9 Jan 2020 23:27:05 +0000 (10:27 +1100)]
Formatting

4 years agoFix typos and spellos in comments
Matt Joiner [Thu, 9 Jan 2020 22:43:44 +0000 (09:43 +1100)]
Fix typos and spellos in comments

4 years agoUpdate missinggo
Matt Joiner [Thu, 9 Jan 2020 12:13:59 +0000 (23:13 +1100)]
Update missinggo

4 years agoResource per piece storage: Store incomplete chunks separately
Matt Joiner [Thu, 9 Jan 2020 11:58:23 +0000 (22:58 +1100)]
Resource per piece storage: Store incomplete chunks separately

4 years agoWhen piece checks fail only ban untrusted peers and only when the entire piece is...
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.

4 years agoImprove hash piece error logging
Matt Joiner [Wed, 8 Jan 2020 22:51:36 +0000 (09:51 +1100)]
Improve hash piece error logging

4 years agoDon't create piece hashers for closed Torrents
Matt Joiner [Tue, 7 Jan 2020 20:29:12 +0000 (07:29 +1100)]
Don't create piece hashers for closed Torrents

4 years agoUse subtests in TestClientTransferVarious
Matt Joiner [Tue, 7 Jan 2020 20:28:52 +0000 (07:28 +1100)]
Use subtests in TestClientTransferVarious

4 years agoPropagate back piece hashing errors
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.

4 years agofixes various vet errors
James Lawrence [Sun, 12 Jan 2020 19:26:29 +0000 (14:26 -0500)]
fixes various vet errors

4 years agoFix a log level
Matt Joiner [Mon, 6 Jan 2020 23:50:18 +0000 (10:50 +1100)]
Fix a log level

4 years agoFix panic in logging
Matt Joiner [Mon, 6 Jan 2020 23:44:58 +0000 (10:44 +1100)]
Fix panic in logging

Found by @ccampbell.

4 years agoUpdate FUNDING.yml
Matt Joiner [Sun, 5 Jan 2020 22:02:11 +0000 (09:02 +1100)]
Update FUNDING.yml

4 years agoDisable accept rate limiting by default
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.

4 years agocmd/torrent: Disable accept rate limiting
Matt Joiner [Sat, 4 Jan 2020 06:16:48 +0000 (17:16 +1100)]
cmd/torrent: Disable accept rate limiting

4 years agoImprove logging and errors for accept rate limiting
Matt Joiner [Sat, 4 Jan 2020 06:14:18 +0000 (17:14 +1100)]
Improve logging and errors for accept rate limiting

4 years agoRevert to log v0.4.0
Matt Joiner [Sat, 4 Jan 2020 05:43:15 +0000 (16:43 +1100)]
Revert to log v0.4.0

4 years agocmd/torrent: Move log setup earlier to avoid race
Matt Joiner [Sat, 4 Jan 2020 05:40:51 +0000 (16:40 +1100)]
cmd/torrent: Move log setup earlier to avoid race

4 years agocmd/torrent: Synchronize stopping
Matt Joiner [Sat, 4 Jan 2020 05:26:49 +0000 (16:26 +1100)]
cmd/torrent: Synchronize stopping

4 years agoUpgrade to log v0.5.0 v1.11.0
Matt Joiner [Fri, 3 Jan 2020 04:37:08 +0000 (15:37 +1100)]
Upgrade to log v0.5.0

4 years agocmd/torrent: Make the addr flag a string
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.

4 years agocmd/torrent: Add dht flag
Matt Joiner [Fri, 3 Jan 2020 03:49:43 +0000 (14:49 +1100)]
cmd/torrent: Add dht flag

4 years agopropagate proxy url parsing err
Steve Yoon [Mon, 30 Dec 2019 17:58:06 +0000 (12:58 -0500)]
propagate proxy url parsing err

4 years agodisable listeners if proxy is configured
Sick Yoon [Sun, 22 Dec 2019 08:19:16 +0000 (03:19 -0500)]
disable listeners if proxy is configured

4 years agoUpdate dht to v2.3.1
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.

4 years agoUse new anacrolix/multiless, and incorporate Peer.Trusted into peer prioritization
Matt Joiner [Mon, 23 Dec 2019 03:04:07 +0000 (14:04 +1100)]
Use new anacrolix/multiless, and incorporate Peer.Trusted into peer prioritization

4 years agobencode: Rename string_values->stringValues
Matt Joiner [Mon, 23 Dec 2019 02:39:34 +0000 (13:39 +1100)]
bencode: Rename string_values->stringValues

4 years agoRemove unnecessary locking in Torrent.Piece
Matt Joiner [Wed, 18 Dec 2019 05:49:15 +0000 (16:49 +1100)]
Remove unnecessary locking in Torrent.Piece

4 years agoAdd connection trust flag, and more tests with small caches
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.

4 years agoSwitch back to anacrolix/sync for the Client lock
Matt Joiner [Tue, 17 Dec 2019 09:49:40 +0000 (20:49 +1100)]
Switch back to anacrolix/sync for the Client lock

4 years agoPossibility to change UPnP ID (#354)
davtoro [Mon, 16 Dec 2019 02:22:24 +0000 (03:22 +0100)]
Possibility to change UPnP ID (#354)

4 years agoCoalesce piece state change notifications on client unlock v1.10.0
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>.

4 years agouse path.utf8 first for some torrent (#350)
Yates [Sun, 8 Dec 2019 09:35:40 +0000 (17:35 +0800)]
use path.utf8 first for some torrent (#350)

4 years agofix if statement in `cmd/torrent/main.go` (#349)
D. HT. Yu [Sun, 8 Dec 2019 09:34:24 +0000 (17:34 +0800)]
fix if statement in `cmd/torrent/main.go` (#349)

4 years agoFix bytesLeft for files (#348)
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

4 years agoUpdate deps
Matt Joiner [Thu, 28 Nov 2019 01:44:34 +0000 (12:44 +1100)]
Update deps

4 years agoAdd comments on File.{first,end}PieceIndex
Matt Joiner [Tue, 26 Nov 2019 05:22:41 +0000 (16:22 +1100)]
Add comments on File.{first,end}PieceIndex

4 years agoChange File.endPieceIndex calculation
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.

4 years agoAdd BytesCompleted method for files (#347)
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

4 years agoInclude piece index in log message
Matt Joiner [Wed, 20 Nov 2019 09:04:47 +0000 (20:04 +1100)]
Include piece index in log message

4 years agoAnthonyraymond export well known (#346)
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

4 years agoExport Peer function (#343)
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

4 years agoUse latest golang.org/x/time v1.9.0
Matt Joiner [Wed, 6 Nov 2019 21:56:56 +0000 (08:56 +1100)]
Use latest golang.org/x/time

Includes rate.Limiter.SetBurst{,At}.

4 years agoInclude traversal stats in completed bootstrap log message
Matt Joiner [Wed, 6 Nov 2019 21:51:14 +0000 (08:51 +1100)]
Include traversal stats in completed bootstrap log message

4 years agoUse default connection tracking values
Matt Joiner [Mon, 4 Nov 2019 01:11:26 +0000 (12:11 +1100)]
Use default connection tracking values

4 years agoMove entirely to etcd-io/bbolt
Matt Joiner [Sun, 3 Nov 2019 22:19:07 +0000 (09:19 +1100)]
Move entirely to etcd-io/bbolt

4 years agoMoved to anacrolix/stm
Matt Joiner [Sun, 3 Nov 2019 02:04:46 +0000 (13:04 +1100)]
Moved to anacrolix/stm

4 years agoUse stm versions of dht and missinggo, and use 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