1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-01-02 21:16:04 +00:00
transmission/tests/libtransmission
Yat Ho 7e4b4f10a1
refactor: faster wishlist (#7027)
* chore: housekeeping

* perf: short circuit peer has block check

* refactor: track active requests in each respective peer

* refactor: swap `ActiveRequests` with new request tracking method

* refactor: use bitfield to store active requests per peer

* perf: check active request numbers first

* refactor: initialise candidate values in constructor

* refactor: better naming

* refactor: use `find_by_block()` more

* refactor: store wishlist mediator in swarm object

* test: make it compile

* test: update endgame test

* test: new test for choke event

* test: remove redundant lines

* test: new test for request event

* test: new test for reject event

* refactor: cache block have state in wishlist

* test: fix `gotBlockResortsPiece`

* fixup! refactor: track active requests in each respective peer

* fixup! test: fix `gotBlockResortsPiece`

* fix: count webseeds when calculating active requests

* build: update xcode project

* fix: add missing `candidates_dirty_` checks

* chore: remove old `depends-on` comments

* fixup! refactor: use bitfield to store active requests per peer

* refactor: extract block peer event to separate function

* perf: reorder conditions by overhead

* perf: check for completed block instead of completed piece

* chore: remove duplicated "unrequested piece" check

* refactor: merge similar block size sanity check

* refactor: use map to store number of requests in wishlist

* refactor: add asserts

* refactor: flush write buffer as soon as there is new data

* refactor: more accurate function naming

* fix: account for corrupt pieces in wishlist

* fix: account for unaligned blocks in wishlist

* Revert "fix: account for unaligned blocks in wishlist"

This reverts commit c3fce93cbae49c11d62e26caccedf55c1987aa95.

* fixup! refactor: use map to store number of requests in wishlist

* fix: account for unaligned blocks in wishlist v2

* chore: add `[[nodiscard]]`

* fixup! fix: account for unaligned blocks in wishlist v2

* fix: crash when handshake finishes in the middle of function
2024-11-11 19:30:00 -06:00
..
assets
.clang-tidy refactor: fix cppcoreguidelines-avoid-do-while warnings (#6527) 2024-01-20 16:56:42 -06:00
announce-list-test.cc bumping googletest from 1.11.0 to 1.14.0 (#6702) 2024-03-17 15:13:56 -05:00
announcer-test.cc fix: more misc net.cc fixes (#6735) 2024-03-25 21:10:06 -05:00
announcer-udp-test.cc feat: dual stack udp tracker support (#6687) 2024-05-26 15:43:55 -05:00
benc-test.cc chore: fix minor clang-tidy warnings (#6275) 2023-11-21 09:02:03 -06:00
bitfield-test.cc refactor: fix cppcoreguidelines-avoid-do-while warnings (#6527) 2024-01-20 16:56:42 -06:00
block-info-test.cc refactor: tr_block_info cleanup (#6342) 2023-12-05 22:06:27 -06:00
blocklist-test.cc
buffer-test.cc chore: fix minor clang-tidy warnings (#6275) 2023-11-21 09:02:03 -06:00
clients-test.cc
CMakeLists.txt refactor: faster wishlist (#7027) 2024-11-11 19:30:00 -06:00
completion-test.cc refactor: remove torrent_view virtual class (#6738) 2024-03-30 14:45:00 -05:00
copy-test.cc refactor: remove the tr_error** idiom (#6198) 2023-11-04 11:39:41 -05:00
crypto-test.cc perf: lazy initialise Diffie-Hellman in handshake (#6949) 2024-08-23 16:14:45 -05:00
dht-test.cc feat: periodically refresh dht node id (#6695) 2024-03-17 18:24:36 -05:00
dns-test.cc
error-test.cc refactor: remove the tr_error** idiom (#6198) 2023-11-04 11:39:41 -05:00
file-piece-map-test.cc refactor: remove last byte special case in tr_block_info::byte_loc() (#7064) 2024-08-22 19:03:14 -05:00
file-test.cc refactor: remove unused TR_SYS_FILE_APPEND (#7206) 2024-10-29 17:07:13 -05:00
getopt-test.cc
handshake-test.cc fix: more clang-tidy warnings (#6608) 2024-02-17 13:31:49 -06:00
history-test.cc
ip-cache-test.cc chore: misc code cleanups (#6927) 2024-07-14 01:37:55 +01:00
json-test.cc chore: iwyu (#6201) 2023-11-03 12:03:26 -05:00
lpd-test.cc feat: ipv6 lpd (#6700) 2024-05-26 00:04:50 -05:00
magnet-metainfo-test.cc chore: iwyu (#6201) 2023-11-03 12:03:26 -05:00
makemeta-test.cc fix: restore portable file path check (#6853) 2024-05-25 10:08:53 -05:00
move-test.cc Fails with an error if data removal was not possible (#6055) 2024-08-13 05:26:09 +01:00
net-test.cc fix: more misc net.cc fixes (#6735) 2024-03-25 21:10:06 -05:00
open-files-test.cc refactor: constify the inout module (#6328) 2023-12-02 14:16:36 -06:00
peer-mgr-wishlist-test.cc refactor: faster wishlist (#7027) 2024-11-11 19:30:00 -06:00
peer-msgs-test.cc chore: iwyu (#6201) 2023-11-03 12:03:26 -05:00
platform-test.cc
quark-test.cc
remove-test.cc fix: restore portable file path check (#6853) 2024-05-25 10:08:53 -05:00
rename-test.cc Fails with an error if data removal was not possible (#6055) 2024-08-13 05:26:09 +01:00
rpc-test.cc feat: configurable client reqq (#7030) 2024-08-23 21:46:37 -05:00
session-alt-speeds-test.cc chore: iwyu (#6201) 2023-11-03 12:03:26 -05:00
session-test.cc
settings-test.cc refactor: libtransmission Settings (#6592) 2024-02-15 11:31:09 -06:00
strbuf-test.cc chore: fix minor clang-tidy warnings (#6275) 2023-11-21 09:02:03 -06:00
subprocess-test-program.cc refactor: use fstream in subprocess tests (#6733) 2024-03-25 09:13:09 -05:00
subprocess-test-script.cmd
subprocess-test.cc refactor: remove TR_PATH_DELIMITER (#6618) 2024-02-18 01:47:12 -06:00
test-fixtures.h bumping googletest from 1.11.0 to 1.14.0 (#6702) 2024-03-17 15:13:56 -05:00
timer-test.cc test: disable restartWithDifferentInterval for all platforms (#6745) 2024-03-31 14:07:12 -05:00
torrent-files-test.cc fix: restore portable file path check (#6853) 2024-05-25 10:08:53 -05:00
torrent-magnet-test.cc fix: possible heap-use-after-free with magnet links (#6815) 2024-05-24 15:50:01 -05:00
torrent-metainfo-test.cc bumping googletest from 1.11.0 to 1.14.0 (#6702) 2024-03-17 15:13:56 -05:00
torrents-test.cc
tr-peer-info-test.cc chore: iwyu (#6201) 2023-11-03 12:03:26 -05:00
utils-test.cc bumping googletest from 1.11.0 to 1.14.0 (#6702) 2024-03-17 15:13:56 -05:00
values-test.cc chore: fix minor clang-tidy warnings (#6275) 2023-11-21 09:02:03 -06:00
variant-test.cc fix: tr_variant_serde::parse_json() bug fixes (#6901) 2024-07-17 02:34:13 +01:00
watchdir-test.cc refactor: remove torrent_view virtual class (#6738) 2024-03-30 14:45:00 -05:00
web-utils-test.cc fix: more misc net.cc fixes (#6735) 2024-03-25 21:10:06 -05:00