Charles Kerr
7c11809672
fix: more clang-tidy warnings ( #6608 )
...
* fix: readability-redundant-casting warnings in gtk
* fix: bugprone-move-forwarding-reference warnings in gtk
* fix: readability-redundant-casting warnings in qt
* fix: bugprone-switch-missing-default-case warnings in qt
* fix: readability-use-std-min-max warning in qt client
* fix: readability-static-accessed-through-instance warning in qt client
* fix: cppcoreguidelines-avoid-const-or-ref-data-members warning in qt client
* fix: readability-avoid-nested-conditional-operator warning in qt client
* fixup! fix: readability-use-std-min-max warning in qt client
* fix: readability-redundant-member-init warnings in gtk client
* fix: performance-avoid-endl warnings in gtk client
* chore: disable readability-qualified-auto
too many false warnings
* chore: disable cppcoreguidelines-avoid-const-or-ref-data-members
* chore: fix readability-duplicate-include warning in gtk client
* chore: fix modernize-use-nodiscard warning in gtk client
* chore: fix readability-convert-member-functions-to-static warning in gtk client
* fixup! fix: bugprone-move-forwarding-reference warnings in gtk
* chore: fix performance-enum-size warning in gtk client
* fix: cppcoreguidelines-prefer-member-initializer warning in gtk client
* fix: readability-identifier-naming warning in qt client
* Revert "chore: fix performance-enum-size warning in gtk client"
This reverts commit 5ce6b562f8
.
* fix: readability-redundant-member-init warning in move tests
* fix: readability-redundant-casting warnings in tests
* fixup! fix: readability-identifier-naming warning in qt client
* fixup! fix: readability-avoid-nested-conditional-operator warning in qt client
* fix: readability-static-accessed-through-instance warning in qt client
* fix: readability-redundant-casting warning in watchdir tests
2024-02-17 13:31:49 -06:00
Charles Kerr
64d9d57363
chore: fix minor clang-tidy warnings ( #6275 )
2023-11-21 09:02:03 -06:00
Charles Kerr
37f01fac4c
refactor: migrate variant api ( #6238 )
2023-11-10 15:41:32 -06: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
Yat Ho
a2b547fb50
chore: iwyu ( #6201 )
2023-11-03 12:03:26 -05:00
Yat Ho
2130eb941a
refactor: drop jsonsl in favour of RapidJSON ( #6138 )
2023-10-21 14:00:12 -05:00
Charles Kerr
59c638c63d
refactor: replace tr_variant::is_*() with tr_variant::holds_alternative() ( #5930 )
2023-08-21 16:16:54 -05:00
Charles Kerr
5837603b6f
refactor: make tr_variant follow RAII ( #5923 )
2023-08-20 23:15:23 -05:00
Charles Kerr
a4d205612a
refactor: add tr_variant_serde ( #5903 )
2023-08-17 11:02:45 -05:00
tearfur
5ec4ca550e
chore: iwyu ( #5746 )
2023-07-08 10:24:03 -05:00
Charles Kerr
862abe909c
fix: bugprone-unchecked-optional-access warnings in tests ( #4672 )
2023-01-26 10:50:42 -06:00
Mike Gelfand
57e6b06921
Modernize CMake code (ongoing refactoring) ( #4515 )
...
* Use imported CMake target for CURL
* Use imported CMake target for fmtlib
* Use imported CMake target for WideInteger
* Use imported CMake target for FastFloat
* Use imported CMake target for UtfCpp
* Use imported CMake target for Threads
* Use imported CMake target for Iconv
* Use imported CMake target for crypto backend
* Use imported CMake target for GTK
* Use imported CMake target for Qt
* Use imported CMake target for deflate
* Use imported CMake target for libevent
* Use imported CMake target for natpmp
* Use imported CMake target for miniupnpc
* Use imported CMake target for dht
* Use imported CMake target for psl
* Use imported CMake target for libutp
* Use imported CMake target for libb64
* Use include directories from libtransmission target
2023-01-02 16:23:51 +00:00
Charles Kerr
092d411663
refactor: tr_rand_buffer(), tr_rand_int() again ( #4415 )
2022-12-21 09:58:32 -06:00
Charles Kerr
8df26dd2fc
refactor: re-enable some clang tidy warnings in tests ( #4170 )
2022-11-14 14:16:29 -06:00
Charles Kerr
bfec98c323
refactor: avoid tr_new() in transmission-remote ( #3665 )
2022-08-17 20:25:42 -05:00
Charles Kerr
83ffa6bf1b
chore: fix spdx abbreviations ( #3602 )
2022-08-08 13:05:39 -05:00
Charles Kerr
868fc1ab78
Refactor/tr variant from buf ( #3592 )
...
* refactor: use std::string in tr_watchdir_inotify_on_event()
* refactor: add template tr_variantFromBuf() variant
if it has .data() and .size() it is good
2022-08-05 16:12:45 -05:00
Charles Kerr
3ed6b187bb
refactor: iwyu utils.h ( #3583 )
2022-08-04 08:44:18 -05:00
Charles Kerr
2866638e1b
refactor: add tr_torrent_files::move() and remove() ( #2919 )
2022-04-15 18:39:04 -05:00
Charles Kerr
f79a75cb21
test: fuzz test tr_variantFromBuf() ( #2892 )
...
* test: fuzz test tr_torrent_metainfo.parseBenc()
* fix: better error-checking in benc string parsing
* fix: return benc failure if the parse stack is unbalanced
* fix: stack range error when logging json parse errors
* test: fuzz test tr_variantFromBuf()
2022-04-06 16:39:39 -05:00
Charles Kerr
e83a57efa3
refactor: re-enable some clang-tidy rules ( #2498 )
2022-01-24 13:07:55 -06:00
Charles Kerr
5efec26a3b
refactor: SAX-like benc parser pt. 1 ( #2490 )
...
* refactor: add SAX-like benc parser
This is the first part of a series of PRs whose end goal is to avoid
the overhead of tr_variant when parsing bencoded data, e.g. when
parsing .torrent files on startup or when parsing announce/scrape
tracker responses.
This PR introduces a SAX-like benc parser, reimplements variant-benc
to use the SAX benc parser (so that we don't have two benc parsers),
and updates the benc + variant tests.
2022-01-24 00:30:00 -06:00
Charles Kerr
df1cca9b57
chore: update copyright years, make notices consistent ( #2463 )
2022-01-20 12:27:56 -06:00
Charles Kerr
43b9d5c147
fix: potential infinite loop when parsing benc ( #2389 )
2022-01-10 14:27:05 -06:00
Charles Kerr
fa35b8ad39
refactor: use std::string in tr_variantToStr() ( #2351 )
...
* refactor: use std::string in tr_variantToStr()
2021-12-27 16:47:25 -06:00
Charles Kerr
a79a868257
refactor: make tr_variantFromBuf() public ( #2187 )
...
* refactor: add tr_variantFromBuf() and support inplace json/benc parsing
2021-11-17 23:37:35 -06:00
Charles Kerr
1ba81938bf
refactor: use std::string_view in benc parser ( #2182 )
...
* refactor: use std::string_view to parse benc
* refactor: simplify private parsing API in variant.cc
* chore: remove unneeded includes
* refactor: merge tr_variantFromBenc and tr_variantFromBencFull
2021-11-16 21:29:30 -06:00
Charles Kerr
250a2e3cc5
refactor: remove unused pieces of str to variant ( #2166 )
...
* feat: add tr_variantInitStrView()
* refactor: remove unused function tr_variantFromJsonFull
* refactor: tr_variantFromJson() now takes a string_view
* refactor: tr_variantFromBenc() now takes a string_view
* refactor: remove unused source arg from tr_variantFromBencFull()
* refactor: make tr_variantFromBuf() private
2021-11-15 01:21:57 -06:00
Charles Kerr
4091f273fa
refactor: prefer tr_variantDictFindStrView() in tests ( #2132 )
...
* refactor: prefer string_view in tests
2021-11-12 12:04:55 -06:00
Charles Kerr
ba59060737
feat: new function tr_variantGetStrView() ( #2079 )
...
* feat: new method tr_variantGetStrView()
* test: add new variant tests
2021-11-01 16:30:18 -05:00
Charles Kerr
236a0965fa
refactor: tr_variant*Str() functions now take a std::string_view ( #1990 )
...
* refactor tr_variant*Str functions now take a std::string_view
* refactor: tr_torrentPrimaryMimeType returns a string-view
2021-10-19 21:30:50 -05:00
Charles Kerr
567f1e48c8
tr_quark_new() now takes a std::string_view ( #1961 )
2021-10-15 08:28:47 -05:00
Mike Gelfand
407201c207
Combine all tests in a single executable to speed up the build
2021-08-16 23:16:36 +03:00
Mike Gelfand
db3d40d0ed
Switch to clang-format for code formatting, include Mac client
2021-08-16 00:38:29 +03:00
Charles Kerr
be219ddee0
chore: add precommit hook for testing code style ( #1448 )
...
* chore: add precommit hook for testing code style
* chore: use prettier + eslint for js code
2020-09-13 21:41:32 -05:00
Charles Kerr
9f7c865454
refactor: don't store torrent hashes in QStrings ( #1428 )
...
* refactor: keep torrent hash in std::array<char,20>
This replaces the hashString QString allocation with a compile-time
array that's included in sizeof the Torrent struct that owns it.
2020-09-07 16:19:10 -05:00
Berbe
8445e090a7
Fix: Test structure shadowing Google Test suite one ( #1417 )
...
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2020-09-07 13:52:05 -05:00
Charles Kerr
677dc73eac
refactor: use GTest for running tests ( #1383 )
...
* refactor: use google-test on libtransmission tests
2020-08-11 13:11:55 -05:00