Add a getter/setter for torrent announce URLs as text that can be copied
and pasted: one URL per line, with a blank line between tiers.
C API: tr_torrentGetTrackerList() and tr_torrentSetTrackerList()
RPC APi: `trackerList` in `torrent-get` and `torrent-set`.
This deprecates `trackerAdd`, `trackerRemove`, and `trackerEdit`
from the RPC API.
* fix: make variable a pointer-to-const
* fix: use init-statement to reduce variable scope
* fix: implicit conversion from long to int
* fix: refactor to not nest more than 3 if|for|do|while|switch statements
* fix: make tr_session::setSocketTos() const
* fix: use array.prototype.some instead of a for loop
* refactor: use nullptr instead of NULL
* fix: oops
* refactor: add fetch options object to tr_webRun()
Fold `tr_webRun()`, `tr_webRunWithCookies()`, and `tr_webRunWebseed()`
into a single API that takes an options argument that callers can
customize to their needs.
Also does a surface cleanup pass to the tr_webseed and tr_web internal
structures, e.g. making fields const where possible, not using raw
pointers, and making some fields private.
This revision is still full of code smells. Refactoring the entire
system is overwhelming, so instead I'm doing it in incremental steps.
Fixes#154. The current 'corrupt' label can confuse users to think that
there is corrupt data on the disk. The phrasing has been changed:
- Downloaded: 1.91 GB
- Corrupt DL: 22.02 MB
+ Downloaded: 1.91 GB (+22.02 MB discarded after failed checksum)
* refactor: prefer constexpr over enum for GUI_PAD values
* refactor: prefer constexpr over enum for PrefsDialog values
* refactor: prefer constexpr over enum for StatsDialog values
* refactor: use enum class for GtrUnicode types
* refactor: prefer constexpr over enum for BT peer msg codes
* refactor: use enum class for TrMakemetaResult
* refactor: prefer constexpr over enum for BT metadata message types
* refactor: use enum class for AwaitingBt
* refactor: use enum class for EncryptionPreference
* refactor: use enum class for TrFormat in rpcimpl
* refactor: prefer constexpr over enum for QApp intervals
* refactor: prefer constexpr over enum for tr_resume bitfields
* refactor: prefer constexpr over enum for Qt/TrFileModel bitfields
* refactor: remove obsolete TODO comment in announce-list
This tag can be used by app stores such as kde discover, gnome software, elementary appcenter, flathub or similar to discern age-appropriate content.
It uses the Open Age Ratings Service (OARS) in order to provide the required information.
* refactor: include <memory> when using shared_ptr or unique_ptr
* refactor: include <cstdio> iff we use it
* refactor: include <cstring> iff we use it
* refactor: include <cstdlib> iff we use it
* refactor: include <string_view> or <string> iff we use it
* refactor: include <array> iff we use it
* refactor: include <ctime> iff we use it
* refactor: include <cctype> iff we use it
* refactor: misc #include cleanups in libtransmission
* (C++) Macros should not be used to define constants
* (C++) Memory should not be managed manually
* (C++) "void*" should not be used in typedefs, member variables, function parameters or return type
* (C++) When the "Rule-of-Zero" is not applicable, the "Rule-of-Five" should be followed
* (C++) "switch" statements should have "default" clauses
* (C++) "explicit" should be used on single-parameter constructors and conversiosn operators
* (C++) Non-const global variables should not be used