Commit Graph

16562 Commits

Author SHA1 Message Date
Charles Kerr
5533bc314a refactor: remove _APICOMPAT suffix from keys moved into api-compat.cc 2026-01-06 12:35:56 -06:00
Charles Kerr
6d1910da30 refactor: move deprecated keys from quark.h to api-compat.cc 2026-01-06 12:27:22 -06:00
Charles Kerr
bc3a29cfc0 refactor: reimplement tr_quark using transmission::symbol 2026-01-06 12:07:03 -06:00
Charles Kerr
0cdc243822 feat: add transmission::symbol 2026-01-06 11:09:22 -06:00
Charles Kerr
9b52950a96 refactor: remove redundant Prefs class methods in trqt (#8069)
* refactor: replace Prefs.getInt() with Prefs.get<int>()

* refactor: replace Prefs.getBool() with Prefs.get<bool>()

* refactor: replace Prefs.getDouble() with Prefs.get<double>()

* refactor: replace Prefs.getString() with Prefs.get<QString>()

* refactor: replace Prefs.getDateTime() with Prefs.get<QDateTime>()

* refactor: remove Prefs::toggleBool()

* refactor: remove unused Prefs::isClient()
2026-01-06 10:01:42 -06:00
Yat Ho
8a0d5f0648 fix(mac): copyright notices (#8068)
* chore(mac): fix copyright year

* chore(mac): use em dash in copyright notice

* fix(ci): check for emdash in copyright notice

* fix(ci): process QuickLookExtension plist files
2026-01-05 21:47:26 -05:00
Charles Kerr
11d3fc6f5a fix: qt sessionSet() encryption (#8067) 4.1.0-beta.5 2026-01-05 19:05:46 -06:00
Charles Kerr
a63bbf7273 chore: bump to 4.1.0-beta.5 (#8066) 2026-01-05 18:15:23 -06:00
Mitch Livingston
ea7c84b174 #7908: Explicitly flag menu item icons as "action image" (#8055)
This will make the icons only appear in macOS 26+, without having to manually remove them for earlier releases. This also will allow us to use newer symbol images.
2026-01-05 17:15:44 -06:00
Charles Kerr
f360d5cc0f docs: add release notes for 4.1.0-beta.5 (#8065) 2026-01-05 16:07:38 -06:00
Charles Kerr
5a1b959874 fix: encryption mode regression in Qt app (#8064)
recognize settings.json value for encryption preferences
2026-01-05 15:26:35 -06:00
Mike Gelfand
cf0cec32f5 chore: sync translations (#8059)
* Sync translations with code

* Sync translations with Transifex
2026-01-04 11:45:46 -06:00
Nick
866809aa36 Fix copyright year (#8058)
Fix copyright typo introduced in #8039
2026-01-04 07:58:52 -06:00
Mitchell Livingston
0335d02bd1 Only show file inspector menu action images on macOS 26+ 2026-01-03 10:06:16 -05:00
Charles Kerr
c8d4ce9e9a refactor: de-intern display mode strings (#8052)
* refactor: replace should_convert_child_strings() with a State.path stack

* refactor: de-intern the TR_KEY_sort_ keys

* refactor: de-intern the TR_KEY_show_ keys
2026-01-03 07:41:06 -06:00
Charles Kerr
046de3f6f0 refactor: use a map of getters, setters for session_get and session_set properties (#8024)
* refactor: session_get, session_set use an accessor table

* fix: lambda capture of structured binding declaration

* fix: readability-identifier-naming

* fix: regression

* chore: remove redundant code

* fix: regression

* chore: fix patch shear after rebase

* fix: namespace regression

Co-authored-by: Yat Ho <lagoho7@gmail.com>
2026-01-02 22:39:37 -06:00
Charles Kerr
d7d0d87f78 refactor: remove tr_url_query_view (#8049)
replace bespoke struct with std:: container
2026-01-02 22:39:37 -06:00
Yat Ho
3a4e115c52 fix: wishlist edge case when got bad piece in unaligned torrents (#8047)
* test: add failing test case

* fix: got bad piece in unaligned torrents
2026-01-02 13:04:53 -06:00
Yat Ho
03b5035d88 fix: unconst variable to be moved (#8048) 2026-01-02 12:39:39 -06:00
Yat Ho
f93165c0bc feat: unify encryption mode serialization format for settings.json and rpc (#8032)
* feat: `settings.json` `encryption` is now string

* feat: api-compat for encryption in `settings.json`

* feat: rpc now uses the same strings as `settings.json` for encryption modes

* feat: api-compat for encryption in rpc

* code review: use `to_variant()`
2026-01-02 11:38:54 -06:00
Yat Ho
60c0a176ce refactor(qt): use enum values to define encryption dropdown (#8034) 2026-01-02 11:36:40 -06:00
Yat Ho
d726c0d213 fix: optional serializer edge cases (#8044)
* fix: should reject when deserializing wrong optional type

* fix: reject nested optionals in serializer
2026-01-02 10:40:59 -06:00
Yat Ho
bf2cc7fb78 fix: remove block from wishlist when received (#8042)
Given the unreliable nature of network transfers, it's entirely possible for a requested block to arrive after it has timed out. We need to update the wishlist accordingly in cases like this.
2026-01-02 09:10:52 -06:00
Cœur
0cd11628a4 Fix: "attempt to insert nil object from objects[0]" (#8035) 2025-12-31 22:02:55 -06:00
github-actions[bot]
5ce17df2e5 chore: update copyright years (#8039)
* chore: update copyright year in COPYING

* chore: update copyright year in user-facing files (1)

* chore: update copyright year in user-facing files (2)

* chore: update copyright year in cmake/transmission.rc.in

---------

Co-authored-by: github-actions <github-actions@github.com>
2025-12-31 21:59:44 -06:00
Yat Ho
2491ea10cb docs: deprecate session_get.tcp_enabled (#8036)
* docs: deprecate `session_get.tcp_enabled`

* docs: fix typo
2025-12-31 09:00:00 -06:00
namoen0301
398fe70b02 GHA CI: Add support for Windows arm64 (#7758) 2025-12-31 06:25:27 +00:00
Yat Ho
be80b149b1 fix: torrent dates were not bumped in some cases (#8029)
* refactor: new `tr_torrent::bump_date_edited()`

* fix: `mark_edited()` should also bump `date_changed_`

* fix: torrent should be marked edited when setting labels

* fix: torrent should be marked change when setting file priority
2025-12-29 09:32:37 -06:00
Yat Ho
4542c1bf8a docs(rpc): add missing changelog for recent commits (#8031) 2025-12-29 06:19:41 -06:00
Yat Ho
332c58995c fix(remote): attach id to methods that can return errors (#8028)
* fix(remote): attach id to `session_set` requests

* fix(remote): attach id to `torrent_set` requests

* fix(remote): attach id to `torrent_set_location` requests

* fix(remote): attach id to `torrent_rename_path` requests
2025-12-28 23:08:17 -06:00
Yat Ho
c9c5d780a0 feat(remote): console message for HTTP 204 response (#8027) 2025-12-28 22:43:59 -06:00
Charles Kerr
109ee8e6ff Revert "fix: cache the value of tr_peerMgrGetDesiredAvailable() (#7961)" (#8026)
This reverts commit c0a8f3bbe6.
2025-12-28 18:43:04 -06:00
Elek, David
6392f0c306 fix: opening torrent opens in an new tr instance (#7629) (#7841) 2025-12-28 15:50:45 -06:00
Elek, David
8beb761a3f fix: increase the width of up/down ratio display to 8 (#8019) 2025-12-28 09:52:55 -06:00
Charles Kerr
91f39c56a8 refactor: register converters in tr_lib_init() (#8023) 2025-12-28 09:36:49 -06:00
Yat Ho
80a0e4d048 feat(remote): print blocklist size after update (#8021) 2025-12-28 09:36:40 -06:00
Yat Ho
1ff6e75c61 chore: deprecate non-semver rpc version scheme (#8022) 2025-12-28 09:36:30 -06:00
Evgeny Kulikov
116412b27c Fix. Mac GUI. Incorrect filter selected when hiding the Filter Bar and then showing it again (#7844)
* Set filter to "All" when hiding the filter bar

Otherwise the filters will reset but the tab, for example "Downloading" will still be selected
when the filter is shown again. We want to keep the tabs synchronized with filters state.

* Remove unused BOOL parameter (the method is always called with YES)

---------

Co-authored-by: beyondcompute <beyondcompute@users.noreply.github.com>
2025-12-26 12:01:22 -06:00
Yat Ho
d0bcda1623 fix: discard any non-int tag when converting to tr4 (#8017)
Co-authored-by: reardonia <2925104+reardonia@users.noreply.github.com>
2025-12-26 11:59:17 -06:00
Yat Ho
ccba9ecd9d fix: rpcimpl array size (#8014) 2025-12-26 11:36:38 -06:00
Yat Ho
6a4c1bae3f fix: dedupe Access-Control-Expose-Headers header (#8018)
Co-authored-by: reardonia <2925104+reardonia@users.noreply.github.com>
2025-12-26 10:28:29 -06:00
Yat Ho
9794e41ae0 fix: detect is_torrent in rpc response too (#8015) 2025-12-26 08:39:18 -06:00
Charles Kerr
291482f82c refactor: remove now-unused api_compat::get_export_settings_style() (#8012) 2025-12-26 01:20:34 -06:00
Charles Kerr
64f9c512da refactor: remove tr_quark_convert() (#8009)
* refactor: remove tr_quark_convert() call from makeState()

* refactor: remove tr_quark_convert() call from tr_variant::merge()

* refactor: remove tr_quark_convert()
2025-12-25 14:53:51 -06:00
Charles Kerr
ae44cacc31 chore: silence MSVC C4702 unreachable code warning (#8010) 2025-12-25 14:53:37 -06:00
Charles Kerr
c0a8f3bbe6 fix: cache the value of tr_peerMgrGetDesiredAvailable() (#7961)
* perf: cache the value of tr_peerMgrGetDesiredAvailable()

* fix: invalidate swarm piece availability when a peer connection closes
2025-12-25 14:32:40 -06:00
Charles Kerr
850d2a277f refactor: use snake_case for action names in GTK client (#8008)
* refactor use snake_case for action names in GTK app

* refactor: remove tr_quark_convert() use
2025-12-25 14:01:23 -06:00
Yat Ho
1859201e01 refactor: rename cache_size_mb to cache_size_mib (#7971) 2025-12-25 14:00:07 -06:00
Cœur
3da2a2543e refactor: removing menu icons on older Macs (#7994) 2025-12-25 13:59:11 -06:00
Yat Ho
a1184061a0 feat: torrent_get.wanted is now boolean (#7997) 2025-12-25 11:42:43 -06:00