Commit Graph

15669 Commits

Author SHA1 Message Date
Charles Kerr 0fbafc9e18
refactor: prefer std::queue over QQueue (#5704)
* refactor: prefer std::queue over QQueue

* refactor: prefer std::pair over QPair
2023-06-30 18:04:16 -05:00
Charles Kerr 2fa693170a
refactor: prefer std::unordred_map over QHash (#5701)
* refactor: use std::unordered_map instead of QHash in RpcClient.cc

* chore remove unused #include <QHash>

* refactor: use std::unordered_map instead of QHash in FileTreeItem
2023-06-30 14:36:08 -05:00
Chris Kankiewicz bdd813a4c3
docs: update documentation of logging levels (#5700) 2023-06-30 12:28:19 -05:00
Charles Kerr 8183d7fddf
refactor: utils naming (#5696)
* chore: rename tr_strvContains to tr_strv_contains

* chore: rename tr_strvStartsWith to tr_strv_starts_with

* chore: rename tr_strvEndsWith to tr_strv_ends_with

* chore: rename tr_strvSep to tr_strv_sep

* chore: rename tr_strvStrip to tr_strv_strip

* chore: rename tr_strvToBuf to tr_strv_to_buf

* refactor: rename tr_saveFile() to tr_file_save()

rename tr_loadFile() to tr_file_read()

rename tr_moveFile() to tr_file_move()

* refactor: rename tr_parseNum() to tr_num_parse()

refactor: rename tr_parseNumRange() to tr_num_parse_range()

* chore: group related functions together in header
2023-06-30 09:49:58 -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
Charles Kerr cb101ec6cf
refactor: make tr_logGetQueueEnabled() private (#5693)
it is only used in log.cc, so remove it from the public header
2023-06-29 14:19:40 -05:00
tearfur b79de0b431
perf: convert comparator functors to static constexpr (#5687) 2023-06-29 13:13:25 -05:00
Charles Kerr 2f2ae61d0c
refactor: remove unused function tr_peer.bandwidth() (#5691) 2023-06-29 11:14:05 -05:00
Charles Kerr 22bb9e5757
refactor: rename tr_dirSpace() to tr_sys_path_capacity() (#5689) 2023-06-29 10:23:00 -05:00
Charles Kerr 3474a1da58
chore: remove tr_wait(); use std::this_thread::sleep_for() (#5683) 2023-06-29 08:51:39 -05:00
Charles Kerr fd4a0b1d16
chore: remove unused function tr_env_get_int() (#5682) 2023-06-28 22:04:07 -05:00
Charles Kerr 7e1ecf2f0f
refactor: remove useless TR_DEBUG_FD env var (#5681)
This feature was originally meant to redirect verbose logging to *any*
fd, but it now only supports writing to stdout or stderr, and defaults
to stderr.

Redirecting to stdout isn't very useful and complicates the code, so
just remove it and always use stderr.
2023-06-28 16:26:15 -05:00
tearfur 7fa1498ed5
perf: make `CompareCacheBlockByKey` constexpr (#5678) 2023-06-28 10:23:38 -05:00
tearfur 6bbe6537cb
feat: bypass disk write cache when `cache-size-mb` is zero 2023-06-28 08:57:26 -05:00
Charles Kerr 9afced725a
refactor: remove libtransmission::Buffer (#5676)
* refactor: use StackBuffer in announcer-udp

* chore: update buffer tests

* refactor: remove unused libtransmission::Buffer

superseded by libtransmission::StackBuffer
2023-06-27 19:06:25 -05:00
SweetPPro 635268854b
refactor: view-based TorrentTableView in macOS client (#5147)
Converted TorrentTableView from older style cell based table to more modern view based
* floating group rows are now used for an improved groups experience
* individual group indicators are hidden when _Use Groups_ is selected to minimize visual clutter (see #3328 )
* removed negated `usesAlternatingRowBackgroundColors` flag for minimal view in Controller.mm (personal preference - easy to restore)
2023-06-27 14:40:44 -05:00
Geoffrey Bonneville 7fdfabe184
fix: do not write log if file handler is bad (#5675) 2023-06-27 13:44:10 -05:00
Charles Kerr 2db2091599
perf: in cache, flush biggest contiguous blocks (#5671) 2023-06-27 12:08:29 -05:00
Charles Kerr 24bc3d135d
perf: add StackBuffer using small::vector (#5672)
* perf: use libtransmission::StackBuffer in variant-benc

* perf: use libtransmission::StackBuffer in variant-json

* perf: use libtransmission::StackBuffer in handshake

* perf: use libtransmission::StackBuffer in peer-msgs

* perf: use libtransmission::StackBuffer in peer-io
2023-06-27 10:51:20 -05:00
tearfur 70decc1d9d
perf: improve IPv4 `tr_address` comparison (#5651) 2023-06-26 21:17:32 -05:00
Gary Elshaw 26416f340f
fix: improve resolution of Qt app icon (#5570) 2023-06-26 10:07:43 -05:00
tearfur ed02f98014
ditch `std::lldiv` so that functions can take matching parameter types (#5659)
* ditch `std::lldiv` so that functions can take matching parameter types

* revert unintended change
2023-06-25 13:29:58 -05:00
Charles Kerr dc88b97f37
refactor: small again (#5666)
* refactor: restore the non-small parts of 5654

* refactor: restore the peer-mgr-active-requests parts of 5654

* chore: iwyu evbuffer in web.h
2023-06-25 12:33:32 -05:00
tearfur aa6f00b162
refactor: global-ip-cache.cc nits (#5655) 2023-06-24 14:30:37 -05:00
LaserEyess 9b5a75528e
fix: broken unix socket support (#5665)
The changes in #5523 made two errors in the new implementation

1. tr_unix_address::to_string() got the ternary check backwards, leading
   to always printing an empty string when the address is valid.
2. The inputs to tr_strvStartsWith in tr_unix_address::from_string()
   were backwards as well, leading to the check failing for valid
   socket addresses.

Co-authored-by: LaserEyess <LaserEyess@users.noreply.github.com>
2023-06-24 13:57:20 -05:00
kramo 46dac775e0
Update GTK screenshot (#5660) 2023-06-23 14:50:07 -05:00
Charles Kerr df1adf0e0f
chore: revert small buffer (#5654)
* Revert "perf: use libsmall in libtransmission, pt 3 (#5653)"

This reverts commit 3b03494580.

* Revert "perf: use small in libtransmission (#5650)"

This reverts commit 559f6f0332.
2023-06-22 18:42:48 -05:00
tearfur 41cfdce6fd
refactor: replace some C idioms with C++ ones (#5656)
* tidy up legecy practices

* remove undefined std::ignore usage

* avoid extra function stack level in daemon.cc
2023-06-22 17:58:16 -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 b562b2de4b
feat: new default piece size calculation for transmission-create (#5615) 2023-06-22 11:50:57 -05:00
Charles Kerr 3b03494580
perf: use libsmall in libtransmission, pt 3 (#5653)
* refactor: use BufferReader, BufferWriter in peer-socket

* feat: expose GrowthFactor in tr-buffer

* perf: choose better defaults for the peer message buffers

* chore: sync tests

* refactor: use small::map in ActiveRequests::Impl
2023-06-22 00:24:42 -05:00
Emir SARI 38ea020eca
i18n: Apply i18n to percentage values (#5568)
Some languages use different percentage formatting style other than
100% (e.g. Turkish and French, %100-100 %). This commit enables the use
of NSNumberFormatter(), in order to provide localized formatting.
2023-06-21 23:21:24 -05:00
Charles Kerr 559f6f0332
perf: use small in libtransmission (#5650)
* refactor: reimplement Buffer using small

* refactor: use SmallBuffer in announcer-udp

* refactor: use SmallBuffer in variant-json

* refactor: use SmallBuffer in variant-benc

* refactor: use SmallBuffer in handshake

* refactor: use SmallBuffer in peer-msgs

* refactor: delete move semantics on stack-based buffers
2023-06-21 22:41:09 -05:00
tearfur 40e80989b2
encode `&key=` as fixed-width 8-digit hex (#5652) 2023-06-21 11:53:06 -05:00
Charles Kerr 432fc9bafc
refactor: add libsmall dependency (#5649)
* refactor: add small dependency

* refactor: use small in variant.cc

* refactor: use small in cache.h
2023-06-20 22:50:36 -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
lvd2 d0b0810457
fix: add 'years' and 'Infinity' to ETA in transmission-remote (#5584) 2023-06-20 12:29:57 -05:00
tearfur 280dea4e33
add support for sending the `ipv4` parameter during ltep handshake (#5643) 2023-06-20 10:51:07 -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 4b9b9920bf
refactor: prefer std::map over QMap in transmission-qt (#5641)
* refactor: use std::map instead of QMap in PrefsDialog.cc

* refactor: use std::map instead of QMap in DetailsDialog.cc

* refactor: use std::map instead of QMap in OptionsDialog.cc

* refactor: use std::map instead of QMap in FileTreeModel.cc
2023-06-19 16:51:34 -05:00
Dmitry Antipov 040bc8a1ce
fix: Qt 6.5 deprecation warning (#5552) 2023-06-19 16:22:54 -05:00
LaserEyess 23a52fa1c5
fixup: dedup tr_rpc_address with tr_address (#5523)
* fixup: dedup tr_rpc_address with tr_address

tr_rpc_address was duplicating a lot of work that tr_address was doing a
lot better. Fall back to using tr_address for ipv4/ipv6 connections and
make a tr_unix_addr for handling unix sockets.

* remove unnecessary functions
2023-06-19 15:51:20 -05:00
Василий Чай ddac05954b
fix: return error when renaming into existing file (#5563) 2023-06-19 00:30:55 -05:00
tearfur b8ff35c4ce
handle IPv6 NAT during LTEP handshake (#5565)
* fix: peer handshake reported wrong ipv6 address

https://github.com/transmission/transmission/issues/5542#issuecomment-1556710922
2023-06-18 19:06:31 -05:00
Charles Kerr fd583ac878
deps: bump libfmt to v10.0.0 (#5635)
seems to be semver/minor safe for our API use

Fixes #5511.

Possibly fixes #5627.
2023-06-18 17:36:39 -05:00
github-actions[bot] 1664088ba5
chore: update generated transmission-web files (#5588) 2023-06-18 15:55:43 -05:00
Gary Elshaw 0fd7989b18
fix: restore png files that were corrupted in recent "compression" script 2023-06-18 14:11:56 -05:00
Cœur bd9d110d45
fix 'setNeedsDisplay' is deprecated: first deprecated in macOS 10.14 (#5633) 2023-06-18 13:32:34 -05:00
Cœur 76166d8fa7
refactor: replace NSMutableDictionary with constant attributes (#5221) 2023-06-12 11:03:22 -05:00
Robin Seth Ekman c379cd727f
fix: transmission-remote only list every other label (fixes #5571) (#5572) 2023-06-11 20:19:54 -05:00