Commit Graph

3370 Commits

Author SHA1 Message Date
DeepSource Bot 81d6d4ac86 Update .deepsource.toml 2022-02-21 21:23:20 +00:00
Matt Joiner 0e4546b738 Add scrape subcommand to cmd/torrent 2022-02-20 16:16:57 +11:00
Matt Joiner fe43ce07c8 Quote UDP tracker response error bodies with %#q 2022-02-20 16:15:45 +11:00
FIGBERT 7d41b9b21c
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
2022-02-15 16:18:32 +11:00
deepsource-autofix[bot] e3d08999e1
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>
2022-02-11 22:45:12 +11:00
DeepSource Bot b81470dc39 Update .deepsource.toml 2022-02-11 06:33:32 +00:00
Matt Joiner f521c78de6 Merge branch 'master' into go1.18 2022-02-10 15:35:29 +11:00
Matt Joiner e0f489bfb2 Checkout go from github 2022-02-10 15:32:01 +11:00
Matt Joiner a18e96b471 Run tests on tip 2022-02-10 15:32:01 +11:00
Matt Joiner 3a57995bfc Fix and add caching to gotip CI actions
Fix and add caching to gotip CI actions
2022-02-10 15:32:01 +11:00
Matt Joiner 205266cb60 go CI: Use common action and parallel jobs 2022-02-10 15:31:43 +11:00
Matt Joiner 5966935cfb Fix and add caching to gotip CI actions 2022-02-10 14:57:03 +11:00
Matt Joiner 06d87cb235 Merge branch 'master' into go1.18 2022-02-10 12:50:16 +11:00
Matt Joiner e3594cce50 go CI: Use common action and parallel jobs 2022-02-10 12:33:04 +11:00
Matt Joiner 47a15797a4 Exclusively use crawshaw instead of zombiezen for sqlite
Zombiezen doesn't support as many platforms as crawshaw for example.
2022-02-10 10:22:39 +11:00
Matt Joiner f9664389d5 Align Peer stats for webseed peers 2022-02-10 10:13:53 +11:00
Matt Joiner 3181b6d667 fs/test.sh: Fail if hash does not match 2022-02-10 09:20:23 +11:00
Matt Joiner 6fbcfe0695 Re-enable CI wasm/js package build checks 2022-02-09 14:12:43 +11:00
Matt Joiner aa3569b863 Pull webrtc SCTP Transport wasm support 2022-02-09 14:12:42 +11:00
Matt Joiner d28b5a2193 Ensure gotip bin is used for go 2022-02-07 16:29:34 +11:00
Matt Joiner 068f885f8c go CI: Add GOPATH bin to GITHUB_PATH
This should fix godo not being in the path in a later step.
2022-02-07 16:16:10 +11:00
Matt Joiner 0f90f394a3 Merge branch 'master' into go1.18 2022-02-07 15:33:05 +11:00
Eng Zer Jun 841a702e34
test: use `T.TempDir` to create temporary test directory (#718)
The directory created by `T.TempDir` is automatically removed when the
test and all its subtests complete.

Reference: https://pkg.go.dev/testing#T.TempDir
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2022-02-02 18:26:46 +11:00
Matt Joiner d6534ea7e8 fs/test.sh: Add torrents before mounting 2022-01-31 17:35:53 +11:00
Matt Joiner a324fbfee3 Make use of the lazylog branch of anacrolix/log
This avoids significant allocations and overhead.
2022-01-31 17:22:36 +11:00
Matt Joiner 6568928bfd Debug CI godo installation 2022-01-31 12:57:14 +11:00
Matt Joiner 21163f3f37 Continue on wasm build error 2022-01-31 11:55:07 +11:00
Matt Joiner eeb04bf654 Run fs/test.sh on 32 bit 2022-01-31 11:52:57 +11:00
Matt Joiner 7349eda7ef fs/test.sh: Use Sintel file so webrtc is tested 2022-01-31 11:48:39 +11:00
Matt Joiner 79959587cd Revert "fs/test.sh: Use go run instead of godo"
This reverts commit e8bd16257c.
2022-01-31 11:47:40 +11:00
Matt Joiner 68e47c4bea Include peer net.Conn endpoint addresses in webrtc conn string 2022-01-27 15:24:48 +11:00
Matt Joiner b68ab1db12 When banning an IP drop peers that match 2022-01-27 15:12:26 +11:00
Matt Joiner f1e250672f Fix v4 in v6 IPs from being banned as IPv4 2022-01-27 15:11:01 +11:00
Matt Joiner 60057327b3 Ban peers for dirtying pieces if they are solely responsible 2022-01-27 15:09:05 +11:00
Matt Joiner b5edd9ce89 Merge branch 'lazylog' into smartban 2022-01-27 14:06:45 +11:00
Matt Joiner 7b7f1207b2 Merge branch 'master' into lazylog 2022-01-27 13:49:16 +11:00
Matt Joiner 1512857348 Include peer net.Conn endpoint addresses in webrtc conn string 2022-01-27 13:45:36 +11:00
Matt Joiner 52e793ff6d Resolve deps 2022-01-23 14:59:31 +11:00
Matt Joiner 7a20e9fe8a Lazy logging 2022-01-23 09:37:11 +11:00
Matt Joiner 1cff4fe95e Switch to external anacrolix/generics 2022-01-22 18:43:04 +11:00
Matt Joiner 9e5dac9514 Forget smart ban blocks after piece passes hash check 2022-01-22 18:43:04 +11:00
Matt Joiner 4fb4541297 Apply smart bans under Client lock 2022-01-22 18:43:04 +11:00
Matt Joiner 4a8611b23e Do smart banning on existing badPeerIPs 2022-01-22 18:43:04 +11:00
Matt Joiner f4d4b59d89 Add some generic map helpers 2022-01-22 18:43:04 +11:00
Matt Joiner 53cf508061 Implement smart ban using generics 2022-01-22 18:43:04 +11:00
Matt Joiner 245c728762 Use gotip for CI build 2022-01-22 18:40:33 +11:00
Matt Joiner 935dc3da0a Switch to ajwerner/btree in piece request ordering 2022-01-22 18:40:33 +11:00
Matt Joiner 934944e498 Add AjwernerBtree as an alternative btree backing for piece request order
Also add some scans to benchmarks. Make a few changes to reduce allocations using piece request order.
2022-01-22 18:40:33 +11:00
Matt Joiner c54dc22592 Benchmark PieceRequestOrder with varying styles of path hint usage
Add per-piece piece request order path hints
2022-01-22 18:39:36 +11:00
Matt Joiner 62060fb897 Use tidwall/btree generics for piece request ordering 2022-01-22 18:39:36 +11:00