Commit Graph

15996 Commits

Author SHA1 Message Date
Ilkka Kallioniemi d49b4a9997
feat: update piece size slider values in Qt 'new torrent' dialog (#6211) 2023-11-05 10:54:12 -06:00
Cœur 586a9eb862
fix: Implicit conversion loses integer precision (#4919) 2023-11-05 09:06:24 -06:00
FX Coudert 9cadcbdb86
ci: update workflow to Qt 6 on macOS (#6206)
* Remove brew lines on Linux

* Switch to Qt 6 on macOS
2023-11-04 14:17:45 -05:00
Charles Kerr 2c9768bc12
fix: only append '.added' suffix to watchdir files (#5705) 2023-11-04 13:14:08 -05:00
Charles Kerr 089c438512
ci: bump macos-11 to macos-12 in github actions (#6203) 2023-11-04 12:33:25 -05:00
Charles Kerr a952a0731f
refactor: remove the tr_error** idiom (#6198)
* refactor: remove the tr_error** idiom

* fix: tr_error::message() is only constexpr in c++20 and up

* chore: silence a couple of g++-12 Wshadow warnings
2023-11-04 11:39:41 -05:00
cmo-pomerium 4d95aa5298
docs: link to open source reverse proxy guide on securing transmission (#5867) 2023-11-03 19:04:15 -05:00
Cœur 86f3483a01
pbxproj refactor (#6184)
* pbxproj refactor:
- Renamed "Copy Files" build phase more explicitly
- Factored "Cocoa.framework" references and removed unused frameworks

* - Made timer.h "Project" only instead of Public

* - Declared libtransmission headers as C++ headers
2023-11-03 17:38:09 -05:00
Dmitry Serov 2a65169461
refactor: remove unnecessary NSNotificationCenter observer removals (#5118) 2023-11-03 12:50:45 -05:00
Yat Ho a2b547fb50
chore: iwyu (#6201) 2023-11-03 12:03:26 -05:00
github-actions[bot] d681fa9293
chore: update generated transmission-web files (#6200) 2023-11-03 11:29:36 -05:00
Julien 424a9b5e17
chore: cleanup timespans in remaining headers (#6199)
* chore: cleanup timespans in remaining headers

* fix: reverted change in generated file

See https://github.com/transmission/transmission/actions/runs/6744426558/job/18334261137?pr=6199
2023-11-03 08:31:39 -05:00
Cœur 2e7448c9bc
fix: appendSanitizedComponent is too aggressive on non-WIN32 (and not enough aggressive on WIN32) (#6187) 2023-11-03 00:25:42 -05:00
Dzmitry Neviadomski 1b53226853
chore: replace deprecated NSNamePboardType with NSPasteboardTypeName (#6107)
* chore: replace deprecated NSNamePboardType with NSPasteboardTypeName

* chore: remove NSServices section from Info.plist

It appears to be noop on modern macOS if no action specified.
2023-11-03 00:22:45 -05:00
Julien 2df67c1a73
chore: updated some leftover front-facing copyright years (#6196) 2023-11-03 00:21:35 -05:00
Charles Kerr a6c5dea40c
refactor: work around C3779 error in MSVC 14.37.32822 (#6197) 2023-11-02 23:18:11 -05:00
github-actions[bot] 7d1a32c471
chore: update generated transmission-web files (#6193) 2023-11-01 16:13:51 -05:00
Julien 8ac323d5d6
chore: removed copyright timespans in headers (#4850) 2023-11-01 16:11:11 -05:00
sfan5 aaed2eb26c
feat: sanitize torrent filenames depending on current OS (#3823)
Instead of applying the limitations of the least common denominator (Windows) everywhere.
2023-11-01 15:27:04 -05:00
Mike Gelfand c0ee65578c
Bump 3rd-party deps versions used on Windows (#6192) 2023-11-01 15:09:45 +03:00
Charles Kerr e54b17d92e
refactor: blocklists (#6189) 2023-10-31 19:20:01 -04:00
Dzmitry Neviadomski 1c18737e67
refactor: move macOS default app logic to dedicated class (#6120) 2023-10-30 20:44:32 -04:00
github-actions[bot] aa307d5696
chore: update generated transmission-web files (#6185) 2023-10-30 17:07:49 -04:00
Charles Kerr f0e9f90782
refactor: move tr_session::getAllTorrents to tr_torrents (#6179) 2023-10-30 16:38:02 -04:00
Mike Gelfand 1c421d6d23
Minor CMake maintainability improvements (#6186)
* Prefer `PROJECT_{SOURCE,BINARY}_DIR` to `CMAKE_` ones

* Extend use of 3rd-party dir vars to reduce duplication

* Fix typo in submodule repo name

* Remove `CURL::libcurl` target fallback

The target is always available since CMake 3.12, which is our current
minimum version.
2023-10-30 20:44:34 +03:00
Dzmitry Neviadomski c697d95ad3
fix: crash after nullptr dereference in rpcimpl (#6177) 2023-10-30 13:30:10 -04:00
Rukario ccce37ba6c
refactor: unified shadow properties for web client (#5840) 2023-10-30 12:22:32 -04:00
Charles Kerr e27b05bcec
refactor: make class methods private (#6181) 2023-10-30 02:32:29 -04:00
Yat Ho b7c5aca6ad
feat: update `TR_VCS_REVISION` when git HEAD changes (#6100) 2023-10-30 02:03:40 -04:00
Cœur b72d211d41
Fix building on macOS Mojave (#6180) 2023-10-29 23:32:58 -04:00
Yat Ho d059669c0e
fix: formatting cmdline help message (#6174) 2023-10-29 15:41:39 -04:00
Yat Ho d224985ef8
fixup! perf: cut down excess copying when downloading (#5907) (#6169) 2023-10-27 00:19:24 -04:00
Charles Kerr 72d2823851
refactor: remove tr_torrentTotalSize() (#6166)
this interim function should have been removed when tr_torrentView() was introduced
2023-10-25 16:37:09 -04:00
Charles Kerr 165cf169e6
refactor: extract the lambda method in tr_variant::Map::find() (#6161)
experimental change for msvc 19.37 ftbfs
2023-10-25 15:36:28 -04:00
github-actions[bot] 31de1b68bd
chore: update generated transmission-web files (#6165)
Co-authored-by: ckerr <ckerr@users.noreply.github.com>
2023-10-25 15:32:31 -04:00
Rukario c4f3ac252f
feat: display date & time in torrent detail for web client (#5918) 2023-10-25 15:30:49 -04:00
Rukario 72a86bdf45
fix: fixed graying out buttons in dark mode (#5921) 2023-10-25 14:16:11 -04:00
Charles Kerr 901de536a3
fix: in RPC, default to sort torrents by id (#5604)
When getting all torrents in a batch over RPC, the results are sorted by
info-dict hash. Prior to 4.0.0, they were sorted by ID. This change broke
some peoples' workflows.

I'm OK with breaking workflows if it's necessary to improve the program,
but this was an unintentional side-effect and I don't see any inherent
benefit to either sort order. So this PR restores the 3.00 sort order.

https://xkcd.com/1172/
2023-10-25 13:42:14 -04:00
Yat Ho 5a6f0a5623
fixup! refactor: re-organise net.h member functions (#5878) (#5933)
* fix: check if address is valid in `tr_address::is_any()`

* refactor: add static implementation of `tr_address::is_valid()`
2023-10-25 11:53:46 -04:00
Yat Ho 6e7fdef721
perf: cut down excess copying when downloading (#5907)
* refactor: directly copy from socket to incoming payload

* refactor: directly process the incoming field

There is no need to copy the payload to a new buffer before processing.

`process_peer_message()` isn't going to return until it's done, and nothing else is going to mess with the incoming field while inside `process_peer_message()`.

* refactor: remove while loop

* add assert
2023-10-25 09:51:36 -04:00
github-actions[bot] f62f7427ed
chore: update generated transmission-web files (#6156)
Co-authored-by: ckerr <ckerr@users.noreply.github.com>
2023-10-24 21:31:53 -04:00
Charles Kerr 237223aeaf
refactor: prefer std::set over QSet (#5703)
* refactor: use std::set instead of QSet in WatchDir.cc

* refactor: use std::set instead of QSet in FileTreeView.cc

* refactor: use std::set instead of QSet in ColumnResizer.cc

* refactor: use std::set instead of QSet in Prefs.cc

* chore: fix rebase error that changed libsmall snapshot

* refactor: more replace QSet with std::set
2023-10-24 21:14:37 -04:00
Charles Kerr 69b293a793
refactor: minor decoupling in peer-mgr (#6155)
* refactor: minor decoupling in peer-mgr

Pass a tr_torrents& and TimerMaker& into the tr_peerMgr and HandshakeMediator
constructors so they can be used directly instead of via tr_session.

No functional changes.

* refactor: in HandshakeMediator, make the session reference const
2023-10-24 15:24:52 -04:00
Charles Kerr bbc3ce039f
refactor: remove quark support from tr_variant (#6159) 2023-10-24 14:49:23 -04:00
Benedikt Bergenthal b5eaff114c
macosx/BlocklistDownloader.mm: (#6096)
in (void)startDownload: now trimming whitespaces at the beginning and
end of the BlocklistURL, otherwise the download will fail, if the URL
contains a beginning or trailing whitespace.

Signed-off-by: Benedikt Bergenthal <benedikt@kdrennert.de>
Co-authored-by: Benedikt Bergenthal <benedikt@kdrennert.de>
2023-10-24 11:45:45 -04:00
Charles Kerr eb58996c9f
chore: remove unused tr_announce_list::announce_to_scrape(tr_quark) (#6157)
* chore: remove unused tr_announce_list::announce_to_scrape(tr_quark)

* fixup! chore: remove unused tr_announce_list::announce_to_scrape(tr_quark)

fix test oops
2023-10-24 10:58:01 -04:00
Yat Ho 6d958bd5fc
feat: do separate IPv4 and IPv6 port checks in WebUI (#5953)
* feat: add `ipProtocol` argument to `port-test` rpc method

* chore: update rpc-spec.md

* feat: split port check UI to IPv4 and IPv6 in webUI

* fix: default `open` to false if cannot get response

* chore: minor docs wording tweak

* chore: make clang-tidy happy

* chore: RPC doc tweaks

* fix: bad merge

* chore: review feedback

Co-authored-by: Charles Kerr <charles@charleskerr.com>

* chore: match quark enum with parameter case

* refactor: use descriptive strings for `ipProtocol`

* chore: update docs

* fixup! refactor: use descriptive strings for `ipProtocol`

* fixup! chore: update docs

---------

Co-authored-by: Charles Kerr <charles@charleskerr.com>
2023-10-24 09:27:28 -04:00
Yat Ho 9d4ad2e330
chore: update build instructions (#6102) 2023-10-23 22:24:51 -04:00
Charles Kerr 735639c5c7
refactor: make tr_torrent::labels_ private (#6153) 2023-10-23 18:11:28 -04:00
Charles Kerr c0e5e3a368
refactor: reduce coupling between tr_session and tr_peerMgr (#6151) 2023-10-23 11:34:30 -04:00