Charles Kerr
ceb12b8c61
refactor: avoid evbuffer use in tr_web, tr_webseed ( #7743 )
...
* refactor: add Task::add_data()
* refactor: move response body preallocation to Task ctor
* refactor: make Task::body() private
* refactor: add FetchOptions::on_data_received callback
* refactor: remove FetchOptions::buffer
* refactor: remove evbuffer from web.cc
* refactor: remove evbuffer from webseed.cc
* refactor: remove unused evbuffer_unique_ptr
* fix: copypaste error
Xref: https://github.com/transmission/transmission/pull/7743\#discussion_r2516592222
2025-11-12 16:27:39 -06:00
Charles Kerr
af92dc5d80
perf: use http range request info to preallocate response body buffer ( #7800 )
2025-11-11 09:32:00 -06:00
Yat Ho
bfb5e35021
chore: add suffix to private and protected members ( #7746 )
2025-10-30 10:13:27 -05:00
Mike Gelfand
f8d8676f60
Sync translations ( #7742 )
...
* Fix "Message contains an embedded URL" xgettext warnings
See https://www.gnu.org/software/gettext/manual/html_node/No-embedded-URLs.html
* Sync translations with code
* Sync translations with Transifex
2025-10-27 14:39:58 +01:00
Yat Ho
c215de34d5
chore: move away from fmt/core.h ( #7557 )
2025-05-06 01:01:12 -05:00
Yat Ho
03c2dbd63c
feat: make proxy_url nullable ( #7486 )
...
* fix: clang-tidy warning
* refactor: make `proxy_url` nullable
2025-05-01 16:57:46 +01:00
Alexander Terentyev
2c5b7f94d1
feat: proxy support for web-connections ( #5038 )
...
* feature: proxy support for web-connections
* forgotten changes
* fix code-styles
* Documentation for new setting "proxy-url"
* Create property proxyUrl for class tr_web. Lazy creation of tr_web object in tr_session after loaded settings from file
* Update docs/Editing-Configuration-Files.md
Simplify the documentation text
Co-authored-by: ThinkChaos <ThinkChaos@users.noreply.github.com >
* Fix merge error
* Fix merge error.
* Simplify tr_web's lifecycle. Fix error. Rename quark to sneak_case-style
* Fix parameter value test
---------
Co-authored-by: ThinkChaos <ThinkChaos@users.noreply.github.com >
Co-authored-by: Charles Kerr <charles@charleskerr.com >
2025-03-10 17:32:18 -05:00
Dzmitry Neviadomski
7e87adcd91
Fix building transmission with C++23 ( #6832 )
...
* fix: operator== should return bool in tr_strbuf
Fixes build error with C++20/C++23
error: return type 'auto' of selected 'operator==' function for rewritten '!=' comparison is not 'bool'
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fix: explicitly specify Blocklist::size() return type as size_t
Fixes building with C++20/C++23
error: no matching function for call to 'size'
function 'size' with deduced return type cannot be used before it is defined
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fix: wrap runtime format strings with fmt::runtime in library, daemon and cli
fmt::format_string ctor is consteval with C++20
See https://github.com/fmtlib/fmt/issues/2438
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fix: wrap runtime format strings with fmt::runtime for GTK client
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fix: allow to override C and CXX standard via cmdline or env
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fix: add job to check if transmission compiles with C++23
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Address code review by mikedld
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fix new found fmt build errors
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Address code review by tearfur
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fix: make tr_net_init_mgr singleton buildable with C++23
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
---------
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
Co-authored-by: Charles Kerr <charles@charleskerr.com >
2025-03-10 13:08:57 -05:00
Charles Kerr
c398bd26f3
build: remove the test to see if curl is at least 7.15.6 ( #7462 )
...
CMakeLists.txt requires curl >= 7.28.0, so we do not need to test this.
2025-03-05 14:35:31 -06:00
Charles Kerr
05797a9e93
perf: cache curl version ( #7461 )
...
it doesn't change during runtime, so no need to
keep calling curl_version_info(CURLVERSION_NOW)
2025-03-04 08:16:21 -06:00
pathC
5163ac3e1f
fix: not correctly sending UA to trackers related to curl gh6312 ( #7447 )
...
fallback to http1.1 when using flawed curl.
curl 7.71.0-7.74.0 are affected.
2025-03-03 23:14:20 -06:00
Yat Ho
43e869b18e
feat: warn about problematic curl versions ( #7457 )
2025-03-03 21:32:25 -06:00
Yat Ho
790bd2f0ab
fix: crashes related to curl gh10936 ( #7416 )
2025-01-27 22:36:47 +00:00
Yat Ho
6bf62959b4
refactor: set CURLOPT_MAXREDIRS once ( #7233 )
2024-11-06 14:36:34 -06:00
Yat Ho
f1102f0b4d
fix: don't double count webseed download data rate ( #7235 )
...
Regression from f1a53840f9
2024-11-06 13:55:58 -06:00
Mike Gelfand
c21ee87eea
Add CI configuration for clang-tidy on Windows ( #6997 )
...
* Add CI configuration for clang-tidy on Windows
* Fix issues reported by clang-tidy on Windows
* Workaround clang-tidy defects on Windows
* Fix C-style casts (which clang-tidy didn't report)
2024-07-16 22:13:29 +01:00
Charles Kerr
eeea3c540f
fix: clang-tidy-19 warnings ( #6597 )
...
* fix: readability-redundant-casting warnings in libtransmission
* fix: readability-avoid-return-with-void-value warnings in libtransmission
* fix: readability-redundant-member-init warnings in libtransmission
* fix: readability-redundant-inline-specifier warnings in libtransmission
* fix: performance-avoid-endl warnings in libtransmission
* fix: bugprone-multi-level-implicit-pointer-conversion warnings in libtransmission
* fix: bugprone-switch-missing-default-case warnings in libtransmission
* fix: readability-redundant-string-cstr warnings in libtransmission
* fixup! fix: bugprone-multi-level-implicit-pointer-conversion warnings in libtransmission
2024-02-13 10:42:19 -06:00
Charles Kerr
646883174b
chore: fix misc-use-anonymous-namespace warnings from clang-tidy ( #6488 )
2024-01-04 23:12:51 -06:00
Yat Ho
adc209d7e8
refactor: RPC port-test improvements ( #6274 )
2023-11-22 23:02:21 -06:00
Charles Kerr
64d9d57363
chore: fix minor clang-tidy warnings ( #6275 )
2023-11-21 09:02:03 -06:00
Yat Ho
90e91d6284
refactor: directly check if announcers are idle instead of using a stop counter ( #6237 )
2023-11-12 21:43:43 -06:00
Julien
8ac323d5d6
chore: removed copyright timespans in headers ( #4850 )
2023-11-01 16:11:11 -05:00
Yat Ho
48dcff975a
fix: workaround HSTS upgrading to HTTPS for HTTP trackers ( #5969 )
2023-09-03 18:26:39 -05:00
tearfur
a88b353576
chore: rename other publicAddress() functions ( #5873 )
2023-08-14 10:31:12 -05:00
tearfur
5ec4ca550e
chore: iwyu ( #5746 )
2023-07-08 10:24:03 -05:00
tearfur
2211086338
fix: conform to libcurl requirements to avoid memory leak ( #5702 )
2023-07-05 22:05:03 -05:00
Charles Kerr
3474a1da58
chore: remove tr_wait(); use std::this_thread::sleep_for() ( #5683 )
2023-06-29 08:51:39 -05:00
Charles Kerr
7d86d67bc7
chore: prefer fmt/core.h over fmt/format.h ( #5404 )
2023-04-16 15:34:19 -05:00
Charles Kerr
d72cb67cfb
chore: include directory name in libtransmission #includes ( #5308 )
2023-04-14 14:33:23 -05:00
Charles Kerr
b2b0f0db39
fix: crash in curl_easy_pause() ( #5161 )
2023-03-05 23:42:52 -06:00
Julien
4b8cfa2e57
chore: update copyrights to 2023 ( #4834 )
2023-02-11 14:49:42 -06:00
Charles Kerr
93db8f088a
fix: cppcoreguidelines-pro-type-cstyle-cast ( #4685 )
...
* fix: libtransmission cppcoreguidelines-pro-type-cstyle-cast
* fix: libtransmission cppcoreguidelines-avoid-do-while
* refactor: inline static class fields
* fix: libtransmission cppcoreguidelines-avoid-reference-coroutine-parameters
* fix: announcer.cc cppcoreguidelines-narrowing-conversions
2023-01-28 15:26:23 -06:00
Charles Kerr
c75f9a4a7a
refactor: tidy libtransmission symbol visibility ( #4680 )
2023-01-27 14:25:08 -06:00
Charles Kerr
5a8aab2c2d
fixup! fix: omit curlopt options if curl is old ( #4675 )
2023-01-26 16:03:11 -06:00
Charles Kerr
b1744d513e
fix: omit curlopt options if curl is old ( #4675 )
2023-01-26 12:52:32 -06:00
Charles Kerr
7367d465b5
style: use the new paragraph comment style everywhere ( #4634 )
2023-01-22 13:21:30 -06:00
Charles Kerr
3bc1a1be04
fix: when setting Accept-Encoding to identity, disable curl decoding. ( #4609 )
...
Also, change `CURLOPT_ENCODING` usage to `CURLOPT_ACCEPT_ENCODING`.
This key was renamed upstream in 7.21.6; our CURL_MINIMUM is 7.28.0.
Fixes #753 .
2023-01-17 16:07:10 -06:00
Charles Kerr
acd5d28fb1
fix: handle webseed servers that do not serve partial content ( #4601 )
...
Fixes #4595 .
2023-01-16 15:08:25 -06:00
Dmitry Antipov
acbf483bae
refactor: switch to C++11-compatible tr_wait() from tr_wait_msec() ( #4576 )
2023-01-12 12:03:14 -06:00
Charles Kerr
106bcbbe7b
fix: clang-tidy-15 warnings ( #4525 )
2023-01-03 14:10:12 -06:00
Charles Kerr
806491232b
refactor: add constexpr ( #4514 )
2023-01-01 22:43:23 -06:00
Charles Kerr
14a3d01e45
fix: sonarcloud ( #4453 )
2022-12-23 10:56:27 -06:00
Charles Kerr
a1892f2c7c
fix: 4.0.0-beta.2 regression transmission-show --scrape did not exit cleanly ( #4447 )
2022-12-23 08:03:26 -06:00
Charles Kerr
f03fc9270b
Fix/long shutdown crash on shutdown ( #4285 )
2022-11-30 13:00:34 -06:00
Charles Kerr
22d12aedc5
refactor: GTK favicon lookup improvements ( #4278 )
2022-11-29 18:09:32 -06:00
Charles Kerr
67e992ddf0
refactor: better TR_CURL_SSL_NO_VERIFY ( #4159 )
...
clear CURLOPT_CAINFO, CURLOPT_CAPATH iff verification is disabled
2022-11-13 17:17:16 -06:00
Charles Kerr
7e817b5a43
refactor: fix thread sanitizer warnings in tr_sessionClose() ( #4130 )
2022-11-09 20:30:34 -06:00
Charles Kerr
4d8509c180
refactor: add libtransmission::evhelpers ( #4104 )
2022-11-06 15:11:30 -06:00
Charles Kerr
831eb8d40f
refactor: make tr_session_thread a unique_ptr owned by tr_session ( #4069 )
2022-11-04 16:20:27 -05:00
Charles Kerr
d130f7d593
refactor: prefer std::unique_ptr over std::shared_ptr ( #3741 )
2022-08-30 19:30:47 -05:00