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

20 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

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

20 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

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

20 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.

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

20 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.

20 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

20 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.

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

21 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

21 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

21 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.

21 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)

21 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.

21 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

21 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

21 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

21 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

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

21 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

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

21 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

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

21 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

21 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

21 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

21 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

21 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.

21 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

22 months agoRemove unnecessary use of SO_REUSEPORT v1.52.5
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.

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

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

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

22 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

22 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

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

23 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

23 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

23 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.

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

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

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

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

2 years 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.

2 years agoReintroduce torrent-wide PEX throttling v1.52.0
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

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

2 years 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.

2 years 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

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

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

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

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

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

2 years 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

2 years 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

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

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

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

2 years 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

2 years 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.

2 years 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

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

2 years 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

2 years 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

2 years 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

2 years agoFix ClientConfig.Logger.SetHandlers being clobbered v1.51.3
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.

2 years agoRemove PEX todo v1.51.2
Matt Joiner [Tue, 23 May 2023 11:25:36 +0000 (21:25 +1000)]
Remove PEX todo

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

2 years 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

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

2 years 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

2 years 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

2 years 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

2 years agoReport ltep extensions in status output v1.51.1
Matt Joiner [Fri, 19 May 2023 07:10:03 +0000 (17:10 +1000)]
Report ltep extensions in status output

2 years 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

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

2 years 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.

2 years agoDon't panic if changing interest fills the write buffer v1.51.0
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.

2 years 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

2 years 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

2 years 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

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

2 years 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

2 years 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

2 years 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

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

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

2 years 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

2 years 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

2 years 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

2 years 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

2 years 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.

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

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

2 years 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

2 years 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

2 years 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

2 years 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.