]> Sergey Matveev's repositories - btrtrc.git/log
btrtrc.git
6 months agoDrop support for go 1.20 master
Matt Joiner [Tue, 10 Oct 2023 08:49:39 +0000 (19:49 +1100)]
Drop support for go 1.20

6 months agoDon't run fs tests on Windows
Matt Joiner [Tue, 10 Oct 2023 08:28:50 +0000 (19:28 +1100)]
Don't run fs tests on Windows

6 months agogo mod tidy
Matt Joiner [Mon, 9 Oct 2023 11:53:34 +0000 (22:53 +1100)]
go mod tidy

6 months agoUpdate to multiple-blobs-per-value squirrel
Matt Joiner [Fri, 29 Sep 2023 04:48:11 +0000 (14:48 +1000)]
Update to multiple-blobs-per-value squirrel

6 months agogorond
Matt Joiner [Tue, 26 Sep 2023 12:20:46 +0000 (22:20 +1000)]
gorond

6 months agoAdd testdata/The-Fanimatrix-(DivX-5.1-HQ).avi.torrent
Matt Joiner [Tue, 26 Sep 2023 12:20:34 +0000 (22:20 +1000)]
Add testdata/The-Fanimatrix-(DivX-5.1-HQ).avi.torrent

It's such a classic torrent. It should be integrated into some tests.

6 months agoSupport scraping from HTTP trackers
Matt Joiner [Tue, 26 Sep 2023 12:19:51 +0000 (22:19 +1000)]
Support scraping from HTTP trackers

6 months agoMerge fs module back into the root module
Matt Joiner [Mon, 25 Sep 2023 11:34:22 +0000 (21:34 +1000)]
Merge fs module back into the root module

It was a dumb idea. Go doesn't want to be modularized anyway.

6 months agoRaise log level for failure to mark piece complete
Matt Joiner [Mon, 25 Sep 2023 11:30:07 +0000 (21:30 +1000)]
Raise log level for failure to mark piece complete

6 months agoDon't do client transfer tests in parallel
Matt Joiner [Mon, 25 Sep 2023 11:29:08 +0000 (21:29 +1000)]
Don't do client transfer tests in parallel

This should make them a lot less flaky.

7 months agoBuffer metainfo loads from files
Matt Joiner [Sat, 16 Sep 2023 03:48:36 +0000 (13:48 +1000)]
Buffer metainfo loads from files

7 months agoBump CI 1.19 go versions to 1.21
Matt Joiner [Thu, 14 Sep 2023 12:58:31 +0000 (22:58 +1000)]
Bump CI 1.19 go versions to 1.21

7 months agoAlso change go requirement for fs module
Matt Joiner [Thu, 14 Sep 2023 12:57:46 +0000 (22:57 +1000)]
Also change go requirement for fs module

7 months agoChange go requirement to 1.20 from 1.21
Matt Joiner [Thu, 14 Sep 2023 12:49:32 +0000 (22:49 +1000)]
Change go requirement to 1.20 from 1.21

Should implement https://github.com/anacrolix/torrent/pull/868 effectively.

7 months agoConfigurable hashers amount per torrent (#867)
Alex Sharov [Wed, 13 Sep 2023 11:15:36 +0000 (18:15 +0700)]
Configurable hashers amount per torrent (#867)

7 months agoFix request heap pop bug
Matt Joiner [Mon, 11 Sep 2023 00:10:13 +0000 (10:10 +1000)]
Fix request heap pop bug

Missed in the changed interface from 613470861e67fdb11c9661930f3490cba0aa19b2. Caused very poor performance. Thanks to @AskAlexSharov for raising the flag in https://github.com/anacrolix/torrent/issues/859#issuecomment-1706059960.

7 months agoUpdate logger usage for received reject messages
Matt Joiner [Sun, 10 Sep 2023 11:29:43 +0000 (21:29 +1000)]
Update logger usage for received reject messages

7 months agoDrop anacrolix/squirrel cache blob usage
Matt Joiner [Mon, 11 Sep 2023 00:04:30 +0000 (10:04 +1000)]
Drop anacrolix/squirrel cache blob usage

7 months agoHandle torrentfs failure in test.sh
Matt Joiner [Fri, 8 Sep 2023 02:41:20 +0000 (12:41 +1000)]
Handle torrentfs failure in test.sh

7 months agoStop benchmark timer before initial run
Matt Joiner [Fri, 8 Sep 2023 01:47:00 +0000 (11:47 +1000)]
Stop benchmark timer before initial run

7 months agoMerge branch 'fuse-t'
Matt Joiner [Tue, 5 Sep 2023 09:03:24 +0000 (19:03 +1000)]
Merge branch 'fuse-t'

7 months agoSwitch to github.com/go-llsqlite/adapter
Matt Joiner [Tue, 5 Sep 2023 08:19:21 +0000 (18:19 +1000)]
Switch to github.com/go-llsqlite/adapter

8 months agoUpdate file_handle.go (#860)
Frederick Robinson [Wed, 23 Aug 2023 21:59:32 +0000 (14:59 -0700)]
Update file_handle.go (#860)

8 months agoFix race in webseed requester sleep duration calculation
Matt Joiner [Tue, 22 Aug 2023 02:45:24 +0000 (12:45 +1000)]
Fix race in webseed requester sleep duration calculation

8 months agoAdd ClientConfig.WebTransport
Matt Joiner [Tue, 22 Aug 2023 02:44:49 +0000 (12:44 +1000)]
Add ClientConfig.WebTransport

8 months agoNote that torrent.Reader is not concurrent-safe
Matt Joiner [Thu, 17 Aug 2023 08:14:46 +0000 (18:14 +1000)]
Note that torrent.Reader is not concurrent-safe

8 months agoDitch lispad/go-generics-tools for anacrolix/generics/heap
Matt Joiner [Wed, 16 Aug 2023 10:51:52 +0000 (20:51 +1000)]
Ditch lispad/go-generics-tools for anacrolix/generics/heap

Fixes https://github.com/anacrolix/torrent/issues/859

8 months agofs: Use a new torrent file reader per handled request
Matt Joiner [Wed, 16 Aug 2023 06:47:54 +0000 (16:47 +1000)]
fs: Use a new torrent file reader per handled request

FUSE-T reuses file handles and issues multiple concurrent reads

8 months agofs/cmd/torrentfs: Mount read-only
Matt Joiner [Wed, 16 Aug 2023 06:38:58 +0000 (16:38 +1000)]
fs/cmd/torrentfs: Mount read-only

8 months agofs: Return file permissions for root node
Matt Joiner [Wed, 16 Aug 2023 06:38:04 +0000 (16:38 +1000)]
fs: Return file permissions for root node

FUSE-T doesn't imply them like other backends.

8 months agofs/cmd/torrentfs: Add main logger
Matt Joiner [Wed, 16 Aug 2023 06:37:28 +0000 (16:37 +1000)]
fs/cmd/torrentfs: Add main logger

8 months agoRemove unnecessary use of SO_REUSEPORT
Matt Joiner [Mon, 14 Aug 2023 01:38:47 +0000 (11:38 +1000)]
Remove unnecessary use of SO_REUSEPORT

Fixes https://github.com/anacrolix/torrent/discussions/856.

8 months agoAdd cove to downstream projects
Matt Joiner [Mon, 14 Aug 2023 04:39:24 +0000 (14:39 +1000)]
Add cove to downstream projects

9 months agoRemove torrentfs-macos job from CI
Matt Joiner [Sun, 23 Jul 2023 06:09:21 +0000 (16:09 +1000)]
Remove torrentfs-macos job from CI

9 months agoIgnore torrentfs-macos CI errors
Matt Joiner [Sun, 23 Jul 2023 06:08:19 +0000 (16:08 +1000)]
Ignore torrentfs-macos CI errors

9 months agofix: torrent file real time completed bytes
liwei [Sat, 22 Jul 2023 16:30:45 +0000 (00:30 +0800)]
fix: torrent file real time completed bytes

9 months agoGet go-libutp fix for go1.21
Matt Joiner [Sun, 23 Jul 2023 06:05:51 +0000 (16:05 +1000)]
Get go-libutp fix for go1.21

9 months agofix: udp tracker panic
liwei [Tue, 4 Jul 2023 10:45:40 +0000 (18:45 +0800)]
fix: udp tracker panic

9 months agochore: remove refs to deprecated io/ioutil
guoguangwu [Sun, 9 Jul 2023 05:29:02 +0000 (13:29 +0800)]
chore: remove refs to deprecated io/ioutil

9 months agochore: unnecessary use of fmt.Sprintf
guoguangwu [Sun, 9 Jul 2023 05:33:05 +0000 (13:33 +0800)]
chore: unnecessary use of fmt.Sprintf

9 months agoAdd sqlite storage build conditions to sqlite storage closed test
Matt Joiner [Tue, 27 Jun 2023 01:36:54 +0000 (11:36 +1000)]
Add sqlite storage build conditions to sqlite storage closed test

Should fix test build failure to build when CGO is disabled.

9 months agoFix error unmarshalling bad metainfo nodes field
Matt Joiner [Mon, 26 Jun 2023 09:48:23 +0000 (19:48 +1000)]
Fix error unmarshalling bad metainfo nodes field

10 months agoTest and fix closed sqlite storage panicking during piece hashing
Matt Joiner [Mon, 26 Jun 2023 00:24:06 +0000 (10:24 +1000)]
Test and fix closed sqlite storage panicking during piece hashing

10 months agoFix UseSources panicking when sqlite storage is closed
Matt Joiner [Fri, 23 Jun 2023 12:14:38 +0000 (22:14 +1000)]
Fix UseSources panicking when sqlite storage is closed

10 months agoLog bad tracker URL error
Matt Joiner [Tue, 6 Jun 2023 00:40:15 +0000 (10:40 +1000)]
Log bad tracker URL error

10 months agoFix incorrect EOF when decoding some peer protocol message types
Matt Joiner [Mon, 29 May 2023 09:01:01 +0000 (19:01 +1000)]
Fix incorrect EOF when decoding some peer protocol message types

Hooray for pedantic fuzz tests. This was found through peer_protocol/FuzzDecoder, when I wrote a go-fuzz-all wrapper.

It probably never caused a problem in production, as EOF would be handled as stream termination anyway, but it isn't clean.

10 months agoReintroduce torrent-wide PEX throttling
Matt Joiner [Wed, 24 May 2023 02:11:10 +0000 (12:11 +1000)]
Reintroduce torrent-wide PEX throttling

https://github.com/anacrolix/torrent/discussions/836

10 months agoRun torrentfs CI on macos
Matt Joiner [Sun, 28 May 2023 03:51:16 +0000 (13:51 +1000)]
Run torrentfs CI on macos

10 months agoAttribute accepted connection to holepunching when connect message is late
Matt Joiner [Sun, 28 May 2023 03:34:58 +0000 (13:34 +1000)]
Attribute accepted connection to holepunching when connect message is late

Also perform holepunch metric adjustments sooner to reduce timing issues in tests.

10 months agofs/test.sh: Handle torrentfs failures synchronously
Matt Joiner [Sun, 28 May 2023 03:52:50 +0000 (13:52 +1000)]
fs/test.sh: Handle torrentfs failures synchronously

10 months agogorond
Matt Joiner [Sun, 28 May 2023 02:04:57 +0000 (12:04 +1000)]
gorond

10 months agoFix logging reported in #841
Matt Joiner [Sun, 28 May 2023 02:04:49 +0000 (12:04 +1000)]
Fix logging reported in #841

10 months agoFix filecache issues on Windows
Matt Joiner [Sat, 27 May 2023 12:11:56 +0000 (22:11 +1000)]
Fix filecache issues on Windows

10 months agofs: Update path to torrentfs
Matt Joiner [Sat, 27 May 2023 10:54:46 +0000 (20:54 +1000)]
fs: Update path to torrentfs

10 months agofs: go mod tidy
Matt Joiner [Sat, 27 May 2023 10:53:59 +0000 (20:53 +1000)]
fs: go mod tidy

10 months agoFix addrPortOrZero for unix sockets on Windows
Matt Joiner [Sat, 27 May 2023 10:36:17 +0000 (20:36 +1000)]
Fix addrPortOrZero for unix sockets on Windows

10 months agoTimeout torrentfs CI after 5 minutes
Matt Joiner [Sat, 27 May 2023 10:10:16 +0000 (20:10 +1000)]
Timeout torrentfs CI after 5 minutes

10 months agoMore Windows test fixes
Matt Joiner [Sat, 27 May 2023 10:13:56 +0000 (20:13 +1000)]
More Windows test fixes

10 months agogo1.19 compat
Matt Joiner [Sat, 27 May 2023 05:05:23 +0000 (15:05 +1000)]
go1.19 compat

10 months agoTest fixes for Windows
Matt Joiner [Sat, 27 May 2023 04:57:41 +0000 (14:57 +1000)]
Test fixes for Windows

10 months agoFixes for storage tests on Windows
Matt Joiner [Sat, 27 May 2023 04:47:25 +0000 (14:47 +1000)]
Fixes for storage tests on Windows

10 months agoAdd check that torrent data cleanup works in TestIssue335
Matt Joiner [Sat, 27 May 2023 02:40:15 +0000 (12:40 +1000)]
Add check that torrent data cleanup works in TestIssue335

I'm seeing a lot of leaked directories on Windows I think. This might be silently failing.

10 months agoFix test failure using missinggo filecache on Windows
Matt Joiner [Sat, 27 May 2023 02:39:28 +0000 (12:39 +1000)]
Fix test failure using missinggo filecache on Windows

10 months agoMake fs a separate module
Matt Joiner [Sat, 27 May 2023 02:10:38 +0000 (12:10 +1000)]
Make fs a separate module

10 months agoAlso run Go CI test job on 1.19
Matt Joiner [Sat, 27 May 2023 00:58:29 +0000 (10:58 +1000)]
Also run Go CI test job on 1.19

10 months agoRun Go CI test job on macos and windows
Matt Joiner [Sat, 27 May 2023 00:46:24 +0000 (10:46 +1000)]
Run Go CI test job on macos and windows

10 months agoAdd WebRTC ICE servers config (#824)
Marco Vidonis [Sat, 27 May 2023 10:27:24 +0000 (11:27 +0100)]
Add WebRTC ICE servers config (#824)

* add ICEServers config

* remove unnecessary check

11 months agoFix ClientConfig.Logger.SetHandlers being clobbered
Matt Joiner [Wed, 24 May 2023 01:58:57 +0000 (11:58 +1000)]
Fix ClientConfig.Logger.SetHandlers being clobbered

Fixes https://github.com/anacrolix/torrent/issues/837.

11 months agoRemove PEX todo
Matt Joiner [Tue, 23 May 2023 11:25:36 +0000 (21:25 +1000)]
Remove PEX todo

11 months agogo1.19 compatibility
Matt Joiner [Tue, 23 May 2023 10:55:30 +0000 (20:55 +1000)]
go1.19 compatibility

11 months agoInclude holepunch message protocol family in metrics
Matt Joiner [Mon, 22 May 2023 05:28:28 +0000 (15:28 +1000)]
Include holepunch message protocol family in metrics

11 months agoAdd holepunch message fuzzing
Matt Joiner [Mon, 22 May 2023 05:27:06 +0000 (15:27 +1000)]
Add holepunch message fuzzing

11 months agoAdd a bunch of holepunch metrics
Matt Joiner [Sun, 21 May 2023 09:33:10 +0000 (19:33 +1000)]
Add a bunch of holepunch metrics

11 months agoPrint peer ID in ASCII-only
Matt Joiner [Sun, 21 May 2023 09:30:39 +0000 (19:30 +1000)]
Print peer ID in ASCII-only

11 months agoFix panic logging unknown holepunch error code
Matt Joiner [Sun, 21 May 2023 09:29:35 +0000 (19:29 +1000)]
Fix panic logging unknown holepunch error code

11 months agoReport ltep extensions in status output
Matt Joiner [Fri, 19 May 2023 07:10:03 +0000 (17:10 +1000)]
Report ltep extensions in status output

11 months agoMove PeerClientName and PeerExtensionIDs to PeerConn
Matt Joiner [Fri, 19 May 2023 04:41:27 +0000 (14:41 +1000)]
Move PeerClientName and PeerExtensionIDs to PeerConn

11 months agofixes anacrolix/torrent#795 (#807)
Pavel Tatarskiy [Fri, 19 May 2023 04:23:34 +0000 (07:23 +0300)]
fixes anacrolix/torrent#795 (#807)

11 months agoAdd doc comment for Torrent.BytesMissing
Matt Joiner [Fri, 19 May 2023 04:18:24 +0000 (14:18 +1000)]
Add doc comment for Torrent.BytesMissing

Fixes https://github.com/anacrolix/torrent/issues/828.

11 months agoDon't panic if changing interest fills the write buffer
Matt Joiner [Fri, 19 May 2023 04:09:27 +0000 (14:09 +1000)]
Don't panic if changing interest fills the write buffer

This was the old behaviour, years ago. I don't know why it's suddenly being triggered lately.

11 months agoFix TestSeedAfterDownloading when cgo is disabled
Matt Joiner [Fri, 19 May 2023 02:27:16 +0000 (12:27 +1000)]
Fix TestSeedAfterDownloading when cgo is disabled

11 months agoSkip test failures due to Go uTP implementation
Matt Joiner [Fri, 19 May 2023 01:36:29 +0000 (11:36 +1000)]
Skip test failures due to Go uTP implementation

11 months agoRetry some utp tests on failure
Matt Joiner [Fri, 19 May 2023 01:38:11 +0000 (11:38 +1000)]
Retry some utp tests on failure

11 months agoTweak logging
Matt Joiner [Thu, 18 May 2023 11:25:44 +0000 (21:25 +1000)]
Tweak logging

11 months agoIgnore dial rate limits for holepunch connects
Matt Joiner [Thu, 18 May 2023 01:37:46 +0000 (11:37 +1000)]
Ignore dial rate limits for holepunch connects

11 months agoAdd ClientConfig.DialRateLimiter, handle dial rate limiting errors
Matt Joiner [Thu, 18 May 2023 00:41:51 +0000 (10:41 +1000)]
Add ClientConfig.DialRateLimiter, handle dial rate limiting errors

11 months agoDon't start another holepunch rendezvous if we're handling one
Matt Joiner [Thu, 18 May 2023 00:26:00 +0000 (10:26 +1000)]
Don't start another holepunch rendezvous if we're handling one

11 months agoRelax TestTcpSimultaneousOpen
Matt Joiner [Wed, 17 May 2023 23:46:08 +0000 (09:46 +1000)]
Relax TestTcpSimultaneousOpen

11 months agoImprove test assertion for Linux
Matt Joiner [Wed, 17 May 2023 02:43:20 +0000 (12:43 +1000)]
Improve test assertion for Linux

11 months agoSwitch Go CI to go1.20
Matt Joiner [Wed, 17 May 2023 02:26:34 +0000 (12:26 +1000)]
Switch Go CI to go1.20

11 months agoFix overflow in average download rate
Matt Joiner [Wed, 17 May 2023 02:13:16 +0000 (12:13 +1000)]
Fix overflow in average download rate

11 months agoUse netip.AddrPort in PEX code and filter unusable addrs much sooner
Matt Joiner [Tue, 16 May 2023 07:55:53 +0000 (17:55 +1000)]
Use netip.AddrPort in PEX code and filter unusable addrs much sooner

11 months agoInclude PeerConn prefix for log messages
Matt Joiner [Tue, 16 May 2023 06:35:26 +0000 (16:35 +1000)]
Include PeerConn prefix for log messages

11 months agoHandle more PeerRemoteAddr variants when calculating dial addr
Matt Joiner [Tue, 16 May 2023 06:35:03 +0000 (16:35 +1000)]
Handle more PeerRemoteAddr variants when calculating dial addr

This should fix https://github.com/anacrolix/torrent/issues/820.

11 months agogorond test files
Matt Joiner [Fri, 12 May 2023 03:47:47 +0000 (13:47 +1000)]
gorond test files

11 months agoAdd holepunching stats and tests
Matt Joiner [Fri, 12 May 2023 03:47:24 +0000 (13:47 +1000)]
Add holepunching stats and tests

11 months agoAttempt holepunch after initial dial fails
Matt Joiner [Thu, 11 May 2023 03:03:54 +0000 (13:03 +1000)]
Attempt holepunch after initial dial fails

11 months agoRestore using just hex in peer extension expvar
Matt Joiner [Wed, 3 May 2023 10:15:06 +0000 (20:15 +1000)]
Restore using just hex in peer extension expvar

11 months agoInclude count of peer conns in status
Matt Joiner [Wed, 3 May 2023 06:40:51 +0000 (16:40 +1000)]
Include count of peer conns in status

11 months agoDrop peer request alloc reservations when peer is closed
Matt Joiner [Wed, 3 May 2023 06:40:35 +0000 (16:40 +1000)]
Drop peer request alloc reservations when peer is closed

Might fix a goroutine leak.