Commit Graph

3309 Commits

Author SHA1 Message Date
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
Matt Joiner c47e6b1f60 Use webrtc selected ICE candidate for peer addresses 2022-01-22 18:35:06 +11:00
Matt Joiner b668c826e2 Rename webtorrent source files 2022-01-22 18:34:35 +11:00
Matt Joiner f074b30bcb Use tagged anacrolix/squirrel 2022-01-14 09:22:08 +11:00
Matt Joiner c17186bf85 Switch from missinggo/MultiLess to anacrolix/multiless 2022-01-12 15:07:26 +11:00
Matt Joiner 83a8284d6a Add tests for preferred network direction 2022-01-12 15:01:33 +11:00
Matt Joiner 0c7754da63 Add const noCacheBlobs in sqlite storage benchmarks 2022-01-10 16:20:03 +11:00
Matt Joiner 31243ad4fd go mod tidy 2022-01-07 19:15:59 +11:00
Matt Joiner 726eec2f8d bencode: Support decoding "" as dict key 2022-01-07 19:11:41 +11:00
Matt Joiner 071ade67ae bencode: Return ErrUnexpectedEOF instead of EOF in the middle of values 2022-01-07 19:11:41 +11:00
Matt Joiner 32097526fc Add bencode.Decoder.MaxStrLen 2022-01-07 19:11:41 +11:00
Matt Joiner e8bd16257c fs/test.sh: Use go run instead of godo 2021-12-28 12:06:29 +11:00