* 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
* fix: crash when `--global-seedratio` argument is invalid
* fix: crash when `--global-idle-seeding-limit` argument is invalid
* fix: crash when `--peers` argument is invalid
* fix: crash when `--tracker-remove` argument is invalid
* fix: crash when `--seedratio` argument is invalid
* fix: crash when `--idle-seeding-limit` argument is invalid
(cherry picked from commit f6d4585b38)
* fix: crash on invalid command-line value for --cache arg
* Update utils/remote.cc
Co-authored-by: Yat Ho <lagoho7@gmail.com>
---------
Co-authored-by: Yat Ho <lagoho7@gmail.com>
(cherry picked from commit f200bedd57)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* fix: url port parsing
- `tr_urlParse()` should fail if cannot parse port
- Avoid parsing scheme ports to numbers
- Port should not be parsed to a negative number
- Port should not be parsed to `0`
- Directly parse number string to `uint16_t`
* test: invalid port
(cherry picked from commit cf0a596a45)
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.
* 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
* 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()`
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.
* 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>
* 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
* 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