]>
Sergey Matveev's repositories - btrtrc.git/log
Matt Joiner [Tue, 14 Jun 2022 00:06:36 +0000 (10:06 +1000)]
internal/testutil.Info: Support multi-file Torrents
Matt Joiner [Tue, 14 Jun 2022 04:06:36 +0000 (14:06 +1000)]
ExportStatusWriter: take testing.TB instead of *testing.T
Alex Sharov [Tue, 14 Jun 2022 05:57:08 +0000 (12:57 +0700)]
github.com/edsrzf/mmap-go v1.1.0
Matt Joiner [Wed, 1 Jun 2022 08:24:50 +0000 (18:24 +1000)]
Revert "Switch requestState to be a slice"
This reverts commit
9eb80abc29498ecc8ba2b174457b46ca75296dec .
Via email I received a report of excessive memory use: Memory use with a slice is proportional to the total size of all torrents loaded into the Client, which can be very large.
Matt Joiner [Wed, 1 Jun 2022 08:18:37 +0000 (18:18 +1000)]
Demote webrtc conn error logging level to debug
Fixes #716.
Nathanael Demacon [Mon, 23 May 2022 00:42:51 +0000 (02:42 +0200)]
Implement a public `Peer.DownloadRate` (#750)
Matt Joiner [Thu, 12 May 2022 03:47:12 +0000 (13:47 +1000)]
Use Option for cached Torrent length
Fixes https://github.com/anacrolix/torrent/issues/630.
Matt Joiner [Thu, 12 May 2022 03:33:57 +0000 (13:33 +1000)]
Set debug log level for outgoing connection error
Contributed by @tsynik in https://github.com/anacrolix/torrent/issues/702#issuecomment-
1010523079 .
Matt Joiner [Wed, 11 May 2022 01:20:52 +0000 (11:20 +1000)]
Use reusable roaring iterators
Matt Joiner [Wed, 11 May 2022 10:40:58 +0000 (20:40 +1000)]
Add fallback piece ordering for non-readahead priorities
Matt Joiner [Wed, 11 May 2022 10:23:14 +0000 (20:23 +1000)]
cmd/torrent: Respect default client max unverified bytes
Matt Joiner [Wed, 11 May 2022 06:08:19 +0000 (16:08 +1000)]
Disable update requests timer
Matt Joiner [Wed, 11 May 2022 04:15:33 +0000 (14:15 +1000)]
Make piece states a slice and reuse it and request indexes between runs
Matt Joiner [Wed, 11 May 2022 04:14:25 +0000 (14:14 +1000)]
Use intermediate t in Peer.getDesiredRequestState
Matt Joiner [Wed, 11 May 2022 02:24:27 +0000 (12:24 +1000)]
Switch requestState to be a slice
Matt Joiner [Mon, 9 May 2022 09:37:35 +0000 (19:37 +1000)]
Reuse piece order state for request ordering
Matt Joiner [Mon, 9 May 2022 09:37:08 +0000 (19:37 +1000)]
Default 64 MiB max unverified bytes
Matt Joiner [Thu, 12 May 2022 00:34:26 +0000 (10:34 +1000)]
Cache chunksPerRegularPiece
Matt Joiner [Mon, 9 May 2022 09:34:43 +0000 (19:34 +1000)]
Combine pending and last requested
Matt Joiner [Mon, 9 May 2022 02:53:47 +0000 (12:53 +1000)]
Update ajwerner/btree
Matt Joiner [Mon, 9 May 2022 02:49:52 +0000 (12:49 +1000)]
cmd/torrent: Improve context error handling
Matt Joiner [Mon, 9 May 2022 00:51:50 +0000 (10:51 +1000)]
Remove redundant type conversions
Matt Joiner [Mon, 9 May 2022 02:51:01 +0000 (12:51 +1000)]
Move undirtiedChunksIter into its own file
Matt Joiner [Fri, 6 May 2022 06:44:53 +0000 (16:44 +1000)]
Use a generic heap implementation for request selection
Matt Joiner [Fri, 6 May 2022 06:27:43 +0000 (16:27 +1000)]
Order readahead requests by piece index
Matt Joiner [Fri, 6 May 2022 06:24:46 +0000 (16:24 +1000)]
Retain peer local request ordering
Matt Joiner [Mon, 9 May 2022 01:34:08 +0000 (11:34 +1000)]
Add and use typed roaring bitmap
Matt Joiner [Mon, 9 May 2022 02:01:14 +0000 (12:01 +1000)]
cmd/torrent download: Fix waiting for pieces when some are already complete
Matt Joiner [Thu, 5 May 2022 07:45:17 +0000 (17:45 +1000)]
Add Torrent.pieceIndexOfRequestIndex
Matt Joiner [Mon, 9 May 2022 01:10:57 +0000 (11:10 +1000)]
Add a test for allocations in undirtiedChunksIter.Iter
Alex Sharov [Sun, 8 May 2022 01:36:43 +0000 (08:36 +0700)]
Infer pp.Decoder.MaxLength from chunk size (#743)
Matt Joiner [Wed, 27 Apr 2022 23:45:49 +0000 (09:45 +1000)]
cmd/torrent: Export Prometheus metrics
afjoseph [Mon, 25 Apr 2022 14:11:15 +0000 (16:11 +0200)]
[client] Handle nil IP in badPeerAddr()
Matt Joiner [Tue, 26 Apr 2022 00:57:40 +0000 (10:57 +1000)]
Support custom path escaping for WebSeeds
Matt Joiner [Tue, 26 Apr 2022 00:46:01 +0000 (10:46 +1000)]
WebSeed PathEscaper API tweaks
FIGBERT [Mon, 25 Apr 2022 08:49:59 +0000 (01:49 -0700)]
Use Torrent logger instead of default logger (#740)
afjoseph [Fri, 22 Apr 2022 02:23:43 +0000 (04:23 +0200)]
fixup! [webseed] Add a custom URL encoder for webseeds
afjoseph [Thu, 21 Apr 2022 14:21:29 +0000 (16:21 +0200)]
[webseed] Add a custom URL encoder for webseeds
FIGBERT [Thu, 14 Apr 2022 09:02:45 +0000 (02:02 -0700)]
Use PeerConn logger instead of default logger (#736)
Matt Joiner [Mon, 11 Apr 2022 05:44:24 +0000 (15:44 +1000)]
Fix races around Reader and Torrent.Drop when Torrent is closed
Matt Joiner [Mon, 11 Apr 2022 04:53:35 +0000 (14:53 +1000)]
Merge branch 'supress_webrtc_logs'
Matt Joiner [Mon, 11 Apr 2022 04:53:02 +0000 (14:53 +1000)]
Fix webrtc logging for JS build
Jonathan McDowell [Mon, 11 Apr 2022 04:22:05 +0000 (05:22 +0100)]
Avoid heap allocation in GetRequestablePieces (#734)
The calculation of whether we should ignore a piece in
GetRequestablePieces ends up doing an allocation for every piece, when
all we really need to do is query the index in the torrent. Provide an
IgnorePiece function instead, which avoids the need for a temporary
allocation.
Observed to cut out 40% of object allocations in some workloads (large
download, lots of seeds).
Matt Joiner [Mon, 11 Apr 2022 04:00:06 +0000 (14:00 +1000)]
cmd/torrent: Fix panic with IPv6 public IP
alex.sharov [Sat, 9 Apr 2022 07:06:05 +0000 (14:06 +0700)]
discard logger factory
Matt Joiner [Fri, 8 Apr 2022 04:12:23 +0000 (14:12 +1000)]
Update anacrolix/envpprof
Matt Joiner [Thu, 31 Mar 2022 06:04:36 +0000 (17:04 +1100)]
Ensure unlock occurs on panic in reader
Matt Joiner [Thu, 17 Mar 2022 22:15:50 +0000 (09:15 +1100)]
Use Info.BestName in a few more places
Matt Joiner [Thu, 17 Mar 2022 05:08:00 +0000 (16:08 +1100)]
Rearrange transfer tests so build directives are applied by the right packages
Matt Joiner [Thu, 17 Mar 2022 04:30:07 +0000 (15:30 +1100)]
Merge branch 'master' into crawshaw-386-wasm
Matt Joiner [Thu, 17 Mar 2022 04:16:04 +0000 (15:16 +1100)]
Merge branch 'go1.18'
Matt Joiner [Thu, 17 Mar 2022 04:08:06 +0000 (15:08 +1100)]
cmd/torrent: Add download --save-metainfos and fix up signal notification
Matt Joiner [Thu, 17 Mar 2022 04:07:10 +0000 (15:07 +1100)]
Prefer UTF-8 fields when present
Matt Joiner [Thu, 17 Mar 2022 03:59:36 +0000 (14:59 +1100)]
Add Info "name.utf-8" field
Comes up frequently with non-English torrents
Matt Joiner [Thu, 17 Mar 2022 03:59:02 +0000 (14:59 +1100)]
Expose File.{Begin,End}PieceIndex
Matt Joiner [Thu, 17 Mar 2022 03:58:32 +0000 (14:58 +1100)]
Update dht logging
Matt Joiner [Thu, 17 Mar 2022 03:55:55 +0000 (14:55 +1100)]
Use generic pubsub
Matt Joiner [Thu, 17 Mar 2022 02:56:23 +0000 (13:56 +1100)]
go1.18
Matt Joiner [Tue, 15 Mar 2022 06:52:24 +0000 (17:52 +1100)]
Add dummy sqlite storage Go file
Matt Joiner [Tue, 15 Mar 2022 04:51:41 +0000 (15:51 +1100)]
Don't build storage/sqlite tests without cgo
Matt Joiner [Tue, 15 Mar 2022 03:37:52 +0000 (14:37 +1100)]
Fix 386 cross compile and wasm build for crawshaw
Matt Joiner [Tue, 15 Mar 2022 02:42:34 +0000 (13:42 +1100)]
Merge branch 'crawshaw'
Matt Joiner [Tue, 15 Mar 2022 02:42:00 +0000 (13:42 +1100)]
Export Torrent.UseSources
Matt Joiner [Tue, 15 Mar 2022 01:41:22 +0000 (12:41 +1100)]
Merge branch 'http-proxying'
Matt Joiner [Fri, 11 Mar 2022 03:23:13 +0000 (14:23 +1100)]
Merge branch 'master' into crawshaw
Matt Joiner [Fri, 11 Mar 2022 03:23:05 +0000 (14:23 +1100)]
Expose Torrent.AddWebSeeds
Matt Joiner [Fri, 11 Mar 2022 02:33:34 +0000 (13:33 +1100)]
Support banning webseeds
Matt Joiner [Thu, 27 Jan 2022 04:12:26 +0000 (15:12 +1100)]
When banning an IP drop peers that match
Matt Joiner [Fri, 11 Mar 2022 02:32:45 +0000 (13:32 +1100)]
Pull GO_LOG support from anacrolix/log
Matt Joiner [Fri, 11 Mar 2022 02:33:34 +0000 (13:33 +1100)]
Support banning webseeds
Matt Joiner [Fri, 11 Mar 2022 02:32:45 +0000 (13:32 +1100)]
Pull GO_LOG support from anacrolix/log
Matt Joiner [Fri, 11 Mar 2022 01:11:01 +0000 (12:11 +1100)]
Add cmd/torrent-create -u
Matt Joiner [Fri, 11 Mar 2022 01:03:18 +0000 (12:03 +1100)]
Test that empty info names are ignored in multi-file torrent webseed URLs
Matt Joiner [Thu, 10 Mar 2022 23:47:02 +0000 (10:47 +1100)]
Add cmd/torrent-create -i
Matt Joiner [Wed, 9 Mar 2022 09:58:06 +0000 (20:58 +1100)]
Merge branch 'master' into crawshaw
Matt Joiner [Wed, 9 Mar 2022 09:57:54 +0000 (20:57 +1100)]
cmd/torrent: Add TODO about missing subcommand
Matt Joiner [Wed, 9 Mar 2022 09:57:23 +0000 (20:57 +1100)]
Add bencode.Bytes.GoString
Matt Joiner [Wed, 9 Mar 2022 09:56:06 +0000 (20:56 +1100)]
cmd/torrent: Add --port-forward
Matt Joiner [Wed, 9 Mar 2022 09:56:06 +0000 (20:56 +1100)]
cmd/torrent: Add --port-forward
Matt Joiner [Tue, 1 Mar 2022 23:51:36 +0000 (10:51 +1100)]
Merge branch 'master' into crawshaw
Matt Joiner [Tue, 1 Mar 2022 23:51:19 +0000 (10:51 +1100)]
cmd/torrent announce: Use NumWant -1
tracker.opentrackr.org will actually send no peers back unless you ask for them.
Matt Joiner [Tue, 1 Mar 2022 23:49:55 +0000 (10:49 +1100)]
Quote http tracker error response body
Matt Joiner [Fri, 25 Feb 2022 08:59:47 +0000 (19:59 +1100)]
Merge branch 'http-proxying' into crawshaw
Matt Joiner [Fri, 25 Feb 2022 08:52:23 +0000 (19:52 +1100)]
Expect 200 OK in torrent source response
Matt Joiner [Fri, 25 Feb 2022 08:51:11 +0000 (19:51 +1100)]
Fix error quoting in log
Matt Joiner [Fri, 25 Feb 2022 07:38:12 +0000 (18:38 +1100)]
Separate torrent sources source file
Matt Joiner [Fri, 25 Feb 2022 07:35:21 +0000 (18:35 +1100)]
Use HTTP proxy config for torrent sources
Matt Joiner [Fri, 25 Feb 2022 08:49:49 +0000 (19:49 +1100)]
Fix race in MergeSpec using DisableInitialPieceCheck
Matt Joiner [Wed, 23 Feb 2022 07:03:38 +0000 (18:03 +1100)]
Expose webseed.EscapePath
DeepSource Bot [Mon, 21 Feb 2022 21:23:20 +0000 (21:23 +0000)]
Update .deepsource.toml
Matt Joiner [Sun, 20 Feb 2022 05:16:57 +0000 (16:16 +1100)]
Add scrape subcommand to cmd/torrent
Matt Joiner [Sun, 20 Feb 2022 05:15:45 +0000 (16:15 +1100)]
Quote UDP tracker response error bodies with %#q
FIGBERT [Tue, 15 Feb 2022 05:18:32 +0000 (21:18 -0800)]
Pass client logger to anacrolix/go-libutp sockets (#722)
* Update anacrolix/go-libutp (v1.1.0 -> v1.2.0)
* Pass client logger to anacrolix/go-libutp
* Pass logger instead of option
The project now compiles properly when CGO is not enabled.
Additionally, the new argument (now log.Logger instead of
utp.NewSocketOpt) is now required. The tests have been updated to match
this change, and now pass logger.Default to NewUtpSocket.
* Correct function signature of NewUtpSocket
deepsource-autofix[bot] [Fri, 11 Feb 2022 11:45:12 +0000 (22:45 +1100)]
Format code with gofumpt (#724)
This commit fixes the style issues introduced in
b81470d according to the output
from gofumpt.
Details: https://deepsource.io/gh/anacrolix/torrent/transform/
ccafd976 -fc9a-4c8a-bbfe-
bc36426e79cb /
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
DeepSource Bot [Fri, 11 Feb 2022 06:33:32 +0000 (06:33 +0000)]
Update .deepsource.toml
Matt Joiner [Thu, 10 Feb 2022 04:35:29 +0000 (15:35 +1100)]
Merge branch 'master' into go1.18
Matt Joiner [Thu, 10 Feb 2022 04:08:22 +0000 (15:08 +1100)]
Checkout go from github
Matt Joiner [Thu, 10 Feb 2022 04:03:43 +0000 (15:03 +1100)]
Run tests on tip
Matt Joiner [Thu, 10 Feb 2022 04:04:53 +0000 (15:04 +1100)]
Fix and add caching to gotip CI actions
Fix and add caching to gotip CI actions
Matt Joiner [Thu, 10 Feb 2022 04:31:43 +0000 (15:31 +1100)]
go CI: Use common action and parallel jobs