Yat Ho
eea7d4d886
refactor: re-organise `net.h` member functions ( #5878 )
2023-08-17 22:13:01 -05:00
tearfur
449549c84f
fix: do not mark peer as not connectable when we are currently connected ( #5889 )
2023-08-14 16:46:09 -05:00
tearfur
0c7992baa2
fix: cover all pex disabled cases in `get_peer_candidate()` ( #5806 )
2023-08-14 09:56:43 -05:00
tearfur
72f604dbf8
fixup! perf: improve sorting performance in `tr_peerMgrGetPeers()` ( #5807 )
2023-08-13 22:02:11 -05:00
tearfur
a2849219f7
feat: split connectable and non-connectable pool ( #5801 )
2023-08-01 09:56:26 -05:00
tearfur
f758cb3597
refactor: avoid code duplication ( #5793 )
2023-07-17 08:56:57 -05:00
tearfur
01f25b030c
perf: improve sorting performance in `tr_peerMgrGetPeers()` ( #5792 )
2023-07-15 08:18:37 -05:00
Charles Kerr
32af004248
perf: reuse the vector in receonnectPulse(). ( #5788 )
2023-07-14 17:46:10 -05:00
Charles Kerr
c867f00153
refactor: replace `peer_atom` with `tr_peer_info` ( #5773 )
2023-07-14 07:06:25 -05:00
tearfur
2ec19e694d
chore: minor code cleanup ( #5760 )
2023-07-13 09:10:43 -05:00
Charles Kerr
a9a6e54858
refactor: make tr_socket_address a class ( #5772 )
2023-07-12 17:29:47 -05:00
Charles Kerr
bc562eb9a5
perf: avoid atom lookup in tr_peerMgrSetUtpSupported() ( #5766 )
2023-07-12 10:10:20 -05:00
tearfur
78367c098f
perf: use `std::unordered_map` for `tr_swarm.pool` and Handshakes ( #5740 )
2023-07-11 11:57:29 -05:00
Charles Kerr
8169d524ea
feat: do not auto-disconnect when a known seed initiates a connection and we are seeding ( #5756 )
2023-07-08 14:27:31 -05:00
tearfur
8e822a3cbb
perf: avoid copying/moving elements in peer candidate list ( #5755 )
2023-07-08 13:09:34 -05:00
tearfur
5ec4ca550e
chore: iwyu ( #5746 )
2023-07-08 10:24:03 -05:00
Charles Kerr
82f08420fd
fix: crash regression in tr_peerMgr::make_new_peer_connections()
2023-07-08 09:32:20 -05:00
Charles Kerr
fdf042d32c
refactor: add tr_compare_3way() ( #5742 )
...
* refactor: add tr_compare_3way()
This is a small templated utility function to make libtransmission's
sorting / comparison code more consistent and easier to read.
2023-07-06 18:51:08 -05:00
Charles Kerr
685e245f4a
perf: faster get peer candidates ( #5734 )
2023-07-05 23:16:18 -05:00
Charles Kerr
f83a60830a
refactor: add tr_socket_address typedef ( #5730 )
2023-07-05 11:33:50 -05:00
tearfur
6482d78852
perf: reduce copying in `enforceSwarmPeerLimit()` ( #5731 )
...
* reduce copying in `enforceSwarmPeerLimit()`
* clearer comparator naming
2023-07-05 10:10:04 -05:00
tearfur
2a9c30a616
add constexpr noexcept ( #5729 )
2023-07-04 23:50:39 -05:00
tearfur
8543555584
refactor: use `std::pair` to store socket addresses ( #5723 )
2023-07-04 20:29:12 -05:00
Charles Kerr
5b38e819da
perf: minor cleanups ( #5728 )
...
* refactor: in torrent_metainfo.is_private(), cheaper to return a bool than a bool const&
* refactor: in tr_torrent::id(), cheaper to return an int than an int const&
* refactor: in tr_metainfo_builder.is_private(), cheaper to return a bool than a bool const&
* refactor: break peer_atom.flags2 into separate bools
2023-07-04 19:47:51 -05:00
Charles Kerr
56b27057fd
refactor: add lightweight observable / observer for decoupling ( #5716 )
2023-07-04 15:47:18 -05:00
Charles Kerr
ce66e5c442
iwyu: remove, add std headers where used ( #5694 )
...
* chore: remove unused #include <array>
* chore: remove unused #include <chrono>
* chore: remove unused #include <set>
* chore: remove unused #include <algorithm>
* chore: remove unused #include "interned-string.h"
* chore: remove unused #include <list>
* chore: remove unused #include <optional>
* chore: iwyu <cstddef>
* chore: iwyu <ctime>
* chore: remove unused #include <cerrno>
* chore: remove unused #include <deque>
* chore: remove unused #include <vector>
* chore: remove unused #include <memory>
* chore: remove unused #include <unordered_set>
* chore: remove unused #include <array>
* chore: remove unused #include <mutex>
* chore: remove unused #include <functional>
* chore: remove unused #include <cmath>
2023-06-29 23:51:55 -05:00
tearfur
b79de0b431
perf: convert comparator functors to static constexpr ( #5687 )
2023-06-29 13:13:25 -05:00
tearfur
699b3d8416
perf: use a std::map to store peers in `tr_swarm` ( #5645 )
2023-06-22 15:21:44 -05:00
tearfur
548f840b8d
fixup: refactor handshake objects to use socket address as key as well ( #5644 )
2023-06-20 13:10:26 -05:00
tearfur
64261685d8
fix: use both address + port together as a key for peer lookup ( #5619 )
2023-06-19 20:26:39 -05:00
Charles Kerr
0d3b321bac
refactor: use snake_case for libtransmission class methods ( #5497 )
2023-05-05 23:11:05 -05:00
Charles Kerr
9d2507c7e3
refactor: snake_case in libtransmission class methods ( #5428 )
2023-04-22 20:25:55 -05:00
Charles Kerr
7d86d67bc7
chore: prefer fmt/core.h over fmt/format.h ( #5404 )
2023-04-16 15:34:19 -05:00
Charles Kerr
d445c7f061
fix: crash in peer stats ( #5279 )
2023-04-14 16:03:08 -05:00
Charles Kerr
d72cb67cfb
chore: include directory name in libtransmission #includes ( #5308 )
2023-04-14 14:33:23 -05:00
Pierre Dubouilh
ebfba686b0
feat: sequential download ( #4795 )
2023-04-14 11:47:54 -05:00
Charles Kerr
d63165e8a4
perf: fix wishlist cpu load regression, pt. 2 ( #5273 )
2023-03-22 10:24:10 -05:00
Charles Kerr
5cc3bf8a97
fix: generate peer-id on launch ( #5233 )
2023-03-15 20:53:48 -05:00
Charles Kerr
86fd89fff4
fix: remove interest strategy code that could contribute to oscillating download speeds. ( #5176 )
2023-03-10 13:21:51 -06:00
Charles Kerr
ac319321b5
fix: assertion failure in std::clamp() when called from rechokeDownloads() ( #5080 )
2023-02-27 11:59:00 -06:00
Charles Kerr
f551b4adbf
fix: magnet links are always paused when added ( #4856 )
2023-02-13 12:33:33 -06:00
Charles Kerr
b7099270b6
fix: tr_swarm order of destruction ( #4847 )
2023-02-12 00:30:30 -06:00
Julien
4b8cfa2e57
chore: update copyrights to 2023 ( #4834 )
2023-02-11 14:49:42 -06:00
Charles Kerr
c75f9a4a7a
refactor: tidy libtransmission symbol visibility ( #4680 )
2023-01-27 14:25:08 -06:00
Cœur
c89edcd1f6
underscores in documentation comments should be code escaped ( #4639 )
2023-01-23 10:26:11 -06:00
Charles Kerr
7367d465b5
style: use the new paragraph comment style everywhere ( #4634 )
2023-01-22 13:21:30 -06:00
Charles Kerr
d9278bd167
refactor: misc-use-anonymous-namespace pt. 5 ( #4552 )
2023-01-07 16:55:00 -06:00
Charles Kerr
cb10255ef1
refactor: misc-use-anonymous-namespace pt. 4 ( #4550 )
2023-01-07 12:58:16 -06:00
Charles Kerr
b47c34726b
refactor: tr_peer_socket keeps track of peer count ( #4534 )
2023-01-04 15:37:55 -06:00
Charles Kerr
106bcbbe7b
fix: clang-tidy-15 warnings ( #4525 )
2023-01-03 14:10:12 -06:00