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
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
Matt Joiner
50fcd908ca
tracker/udp.ConnClient: Make logging configurable
...
Should fix https://github.com/anacrolix/torrent/issues/701#issue-1088130173
2021-12-28 12:05:01 +11:00
Matt Joiner
2e9ecd5a32
Reject peer requests on data read failures
2021-12-27 22:19:04 +11:00
Matt Joiner
f7494791d0
Reduce some logging
2021-12-27 22:06:52 +11:00
Matt Joiner
14d636ec50
Fix TestTorrentDroppedDuringResponsiveRead flakiness
2021-12-27 21:16:51 +11:00
Matt Joiner
fc857d4557
Allow stealing from slower connections within priority classes
2021-12-24 08:56:10 +11:00
Matt Joiner
1bae62fd22
Dynamic outbound max requests
...
This might be one solution to https://github.com/anacrolix/torrent/issues/698 .
2021-12-24 08:55:57 +11:00
Matt Joiner
89b8b78980
Include requests pending cancel in current request count
...
This fix a situation where peers might be dropping our requests, and since we depend on all requests being satisfied before re-requesting, we get stuck waiting for the request to be filled.
2021-12-23 18:55:57 +11:00
Matt Joiner
9d07f3ea77
Replace piece availability with frequencies in Torrent status
2021-12-23 17:01:39 +11:00
Matt Joiner
dbbe2fa71e
Revert go directive to 1.16
2021-12-23 14:00:01 +11:00
Matt Joiner
9f2e2e39fa
cmd/torrent: Add --linear-discard
2021-12-23 14:00:01 +11:00
Matt Joiner
9739afce93
Fix panic in webseeds updating requests when Torrent is closed
...
I think this was caused by PieceRequestOrder being removed if all pieces in a storage capacity key are deleted.
2021-12-23 14:00:01 +11:00
Matt Joiner
7772d50f74
cmd/torrent: Lower burst when there's a download rate limit
2021-12-23 14:00:01 +11:00
Matt Joiner
cc0d223a65
Apply download rate limiter to webseeds
2021-12-23 14:00:00 +11:00
Matt Joiner
87dfef7778
Don't wait for DHT pings
...
Fixes a growing backlog of pings if DHT servers are rate-limited in their queries.
2021-12-23 14:00:00 +11:00
Matt Joiner
80aec73cb5
Make Torrent.cancelRequestsForPiece more efficient
2021-12-23 14:00:00 +11:00
Matt Joiner
506ff8d037
Use relative availabilities to determine piece request order
...
Most overhead comes from peers that connect that have everything, and we just increment every single piece's availability. There may be some unresolved determinism with torrents that share the same ordering.
2021-12-23 14:00:00 +11:00
Matt Joiner
bdb33ef9f7
gofumpt -extra
2021-12-23 14:00:00 +11:00
Matt Joiner
74c70d852a
Add TestHaveAllThenBitfield
...
The result of a misguided attempt to reduce piece peer availability increment and decrement overhead for have all/full-bitfield and conn closes.
2021-12-23 14:00:00 +11:00
Preston
b831060d6e
fix http tracker arg position ( #700 )
...
Co-authored-by: Bot Git <bot@example.com>
2021-12-23 12:34:16 +11:00
martin
b6cc93c0be
* set proxy of websocket tracker to the proxy used by client config
2021-12-16 16:04:59 +11:00
Matt Joiner
73bdd5a7a4
Fix leaked mmap storage in test
2021-12-16 14:19:21 +11:00
Matt Joiner
12c77bc410
Fix race in TextPexConnState
2021-12-16 14:19:21 +11:00
Matt Joiner
48fa9b59fd
Fix go-libutp import when CGO is disabled
2021-12-16 14:19:21 +11:00
Matt Joiner
2b0ec5d762
Test benchmarks in a separate step and limit executions
2021-12-16 14:19:19 +11:00
Matt Joiner
ffb98097fa
Fix BenchmarkUpdatePiecePriorities
2021-12-16 14:00:19 +11:00
Matt Joiner
e7ee568c52
Fix BenchmarkConnectionMainReadLoop
...
Broken by piece request order changes.
2021-12-16 14:00:19 +11:00
Matt Joiner
1668a18859
Some optimizations in PieceRequestOrder.Update and item comparisons
2021-12-15 19:18:16 +11:00
Matt Joiner
8c129d6bfc
Retract v1.39.0
2021-12-13 12:16:43 +11:00
Matt Joiner
c0a888ee17
Tidy up request heaping comments
2021-12-13 12:12:30 +11:00
Matt Joiner
9d9556c97f
Add Peer.cancelAllRequests for webseedPeer
2021-12-13 12:11:38 +11:00
Matt Joiner
98f188dcbe
Update requests after deleting all in some corner cases
...
Choked by non-fast PeerConn, deleted PeerConn. They're not exactly guarded as strictly as they could be, so there's plenty of room for performance improvements here.
2021-12-13 12:09:12 +11:00
Matt Joiner
47ef8d9c2d
Assert that a request isn't cancelled before requesting it again
2021-12-13 11:56:57 +11:00