* fix: warning: declaration shadows a variable in the global namespace [clang-diagnostic-shadow]
* fix: warning: use 'contains' to check for membership [readability-container-contains]
* fix: warning: variable gl_confdir can be made static or moved into an anonymous namespace to enforce internal linkage [misc-use-internal-linkage]
* warning: function 'TorrentFilter::match_mode' has a definition with different parameter names [readability-inconsistent-declaration-parameter-name]
* build: add sigslot dependency
* refactor: use sigslot for tr::Blocklists
* refactor: use sigslot for torrent, peer-mgr, wishlist
* refactor: remove tr::SimpleObservable
* chore: make lint happy
warning: method 'make_wishlist' can be made static [readability-convert-member-functions-to-static]
warning: invalid case style for function 'make_wishlist' [readability-identifier-naming]
warning: do not declare C-style arrays, use std::array<> instead [cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays]
* refactor: remove unused forward declaration of tr_peer
* chore: remove slop
* refactor: Blocklist::observe_changes() now returns a scoped connection
* build: use transmission/sigslot fork
* refactor: copyediting
* refactor: fix cyclical dependency loop between Wishlist and tr_peerMgr::WishlistMediator
* perf: when selection changes, only update the rows whose selection changed
previously we were updating all rows
* perf: coalesce pending reloads in TorrentTableView
* refactor: return a copy rather thabn a mutable index
* refactor: move the assignment out of the if statement
* make symmetricDifference an NSIndexSet method
* fix: warning: declaration shadows a variable in the global namespace [clang-diagnostic-shadow]
* fix: warning: use 'contains' to check for membership [readability-container-contains]
* fix: warning: variable gl_confdir can be made static or moved into an anonymous namespace to enforce internal linkage [misc-use-internal-linkage]
* warning: function 'TorrentFilter::match_mode' has a definition with different parameter names [readability-inconsistent-declaration-parameter-name]
* refactor: use std::filesystem for tr_sys_path_is_same()
* refactor: use std::filesystem for tr_sys_path_exists()
* refactor: use std::filesystem for tr_sys_path_is_relative()
* refactor: use std::filesystem for tr_sys_path_get_info()
* refactor: use std::filesystem for tr_sys_dir_create()
* refactor: add `maybe_set_error()` helper
* refactor: change behavior to match previous impl
* fix: tr_sys_path_is_same() checks
refactor: address code review feedback
* refactor: address code review feedback
* chore: fix readability-else-after-return clang-tidy warning
* fix: warning: Value stored to 'created' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
fix: warning: parameter 'permissions' is unused [misc-unused-parameters]
* ci: work around a MSVC STL 14.44.35207 clang-tidy false warning
* refactor: simplify return logic of tr_sys_path_is_same()
* Revert "fix: put torrent in "recently active" set after changing queue position (#8290)"
This reverts commit c4283e0c8f.
* fix: update changed dates after setting torrent queue position
* refactor: callers now own the return value of tr_torrentStat()
fix one potential thread issue by simplifying ownership
* refactor: make tr_stat_errtype an enum class; move into tr_stat
* refactor: order tr_stat fields to reduce padding
* chore: fix branch shear
* fix: int-to-enum-class comparison
* fix: namespace regression
* chore: make clang-tidy happy
* refactor: tr_torrentPeers() now returns a std::vector<tr_peer_stat>
* refactor: make tr_peer_stat.client a std::string_view
* refactor: make tr_peer_stat.flag_str a std::string
* refactor: make tr_peer_stat.addr a std::string
* refactor: rename tr_peer_stat field names to camel_case
* refactor: use Speed type for tr_peer_stat speed fields
* refactor: add default initializers to tr_peer_stat fields
* refactor: order tr_peer_stat fields to reduce padding
* fix: typo in [Torrent peers] getter
* refactor: make tr_peer_stat.user_agent a std::string
* refactor: pass by reference instead of by pointer in DetailsDialog
* fixup! refactor: add default initializers to tr_peer_stat fields
* fix: some errors are not returned in `tr_sys_path_get_capacity()`
* test: disable well-formed free_space tests
There are no reliable way to test them.
* chore: remove unused tr_announcerCreate() declaration
added in d27c4c5 but never used
* chore: remove unused ParserStack::parentType()
added in 5efec26 but never used
* chore: remove tr_port::set_network()
added in 32f854a but never used
* chore: remove tr_torrent_metainfo::pieces_offset()
added in 52f6e80 but never used
* chore: remove unused `tr_session::setPeerCongestionAlgorithm()`
unused after 611d36a
chore: remove unused `tr_session::setAnnounceIP()`
unused after 611d36a
* refactor: tr_sys_file_open() now takes a std::string_view arg
* refactor: tr_sys_path_copy() now takes a std::string_view arg
* refactor: tr_blocklistSetContent() now takes a std::string_view arg
* refactor: tr_sys_path_remove() now takes a std::string_view arg
* refactor: tr_sys_path_exists() now takes a std::string_view arg
* refactor: tr_sys_dir_create() now takes a std::string_view arg
* refactor: add private stat_sv(), lstat_sv() helpers in file-posix.cc
* refactor: tr_sys_path_is_same() now takes a std::string_view arg
* refactor: tr_sys_path_rename() now takes a std::string_view arg