Commit Graph

14551 Commits

Author SHA1 Message Date
Charles Kerr 98e8d5a3da
fix: getBandwidthGroup use right group (#2853)
Fixes #2828.
2022-03-31 15:07:01 -05:00
Matan Ziv-Av 946cf04833
Bandwidth group are written to a dict, not to a list. (#2852)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-03-31 13:35:21 -05:00
Charles Kerr 6e91136b53
fix: three asan issues (#2851)
* fixup! feat: add support for adding torrents by raw hash values (#2608)

fix array-bounds-read issue found by asan

* fixup! refactor: tr_completion (#2220)

fix array-bounds-read issue in tests fixtures

* fixup! refactor: tr_torrents (#2722)

fix memory leak in torrent-tests
2022-03-31 12:12:54 -05:00
Mike Gelfand d943f069f5
Fix code_style.sh to include *.mm files after switch to Obj-C++ (#2846) 2022-03-31 00:52:23 +03:00
Charles Kerr e4461c48d7
refactor: prefer FMT_STRING (#2845)
* use FMT_STRING in libtr client on non-i18n strings

This gives compile-time safety checks.
2022-03-30 14:59:13 -05:00
Charles Kerr f4afb76695
perf: replace tr_torrentFindFile2() with tr_torrrent.findFile() (#2839) 2022-03-30 13:25:41 -05:00
Charles Kerr 4dd25d8112
fix: tr_strbuf move op loses zero-termination (#2843) 2022-03-30 12:10:51 -05:00
Charles Kerr 66638cc80c
test: fix race condition in move-test (#2841) 2022-03-30 01:30:39 -05:00
Charles Kerr 3dadeae700
fix: file progress in GTK Details dialog (#2838) 2022-03-29 20:52:24 -05:00
Charles Kerr f1a028bb84 chore: revert 2f677aebb assertion 2022-03-29 10:27:34 -05:00
Charles Kerr 4177e286a1
fix: sonarcloud (#2837)
* fix: rename variable to avoid shadow warning w/UTP

* fix: add default dtor for tr_strbuf

* fix: implicit conversion may lose precision

* fix: use init-statement to reduce variable scope

* fix: implicit conversion may lose precision

* fix: extract the assignment from this expression

* fix: use init-statement to reduce variable scope

* fix: use init-statement to reduce variable scope

* fix: do not mix public and private data members

* fix: add a condition to cv.wait call

* fix: do not throw uncaught exceptions in destructor
2022-03-29 05:57:04 -05:00
Charles Kerr 2f677aebb0
refactor: add tracer assertionf or bug #2727 (#2836) 2022-03-28 23:29:35 -05:00
Charles Kerr 2996e223dd
refactor: strbuf for metainfo files (#2833)
* refactor: tr_ctorSaveContents takes a string_view filename

* refactor: remove tr_ctorSaveMagnetContents

* refactor: announce_list::save takes a std::string_view

* refactor: magnet() takes an OutputIt arg

Generate the magnet link URL into an output iterator

* refactor: remove deprecated calls to tr_http_escape

* refactor: tr_torrent.torrentFile takes an OutputIterator

* refactor: tr_torrent.torrentFile returns a tr_pathbuf

* refactor: tr_torrent_metainfo.makeFilename returns a tr_pathbuf

* refactor: use tr_urlbuf in announcer-http
2022-03-28 17:13:32 -05:00
dependabot[bot] 3ddf76b560
build(deps): bump minimist from 1.2.5 to 1.2.6 in /web (#2831)
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-03-28 08:10:46 -05:00
Matan Ziv-Av 25f2216dd4
Allow control of transmission-show output (#2825)
- Add flags to control each of the four sections of output (header, info, trackers, files).
- Add a flag to show file size in bytes, instead of human readable units (KiB, MiB, GiB, TiB).
2022-03-27 23:43:28 -05:00
Charles Kerr 9d141ee2b1
refactor: add fmt::formatters (#2829)
* refactor: add fmt::formatters
2022-03-27 21:55:30 -05:00
Charles Kerr 71ad42b1ef
refactor: make err arg optional in tr_sys_* funcs (#2827) 2022-03-27 12:37:29 -05:00
Mike Gelfand 3cd11ee1fb
Fix USE_QT_VERSION CMake option 2022-03-27 03:45:10 +01:00
Mike Gelfand c2549c3c77
Remove CPack symlinks workaround
Looks like it was a CMake defect.
2022-03-27 00:05:55 +00:00
Charles Kerr 4c2cb23c24
refactor: tr_variantToFile() takes a string_view filename (#2824)
* chore: fix shadowed variable warning

"byte" is declared by a third-party UTP header

* refactor: tr_variantFromFile, tr_variantToFile take a string_view filename
2022-03-25 22:39:08 -05:00
Matan Ziv-Av 45422a2ac5
Add support for group-get RPC call to transmission-remote (#2818)
Option `-lg` lists all bandwidth groups with their bandwidth limits.
2022-03-25 20:31:59 -05:00
Charles Kerr 977b2a1bab
refactor: tr_loadFile() tr_saveFile() take a std::string_view filename arg (#2822)
* refactor: tr_saveFile takes a string_view

* refactor: tr_saveFile, tr_loadFile take string_view filename
2022-03-25 19:31:27 -05:00
Charles Kerr 1051160b99
feat: strbuf features (#2821)
* feat: strbuf is always zero-terminated

* feat: tr_strbuf::append() now takes any number of args

* feat: tr_strbuf handles zero-terminated string inputs

* feat: add tr_strbuf::ends_with()

* feat: add tr_strbuf::starts_with()

* refactor: replace buildPath() with join()
2022-03-25 16:16:26 -05:00
Charles Kerr 9451446e6d
fix: set the destructor log level to trace (#2820)
Fixes #2816.
2022-03-25 14:14:27 -05:00
Charles Kerr 7905244320
fix: missing fmt::arg calls in GTK client (#2819) 2022-03-25 12:16:29 -05:00
Charles Kerr b94c6796c8
fix: sonarcloud warnings (#2815)
* fix: add default case to switch statement

* fix: remove redundant static specifier

* fix: use std::optional.value_or

* fix: make type of variable pointer-to-const

* refactor: move log state into a struct

* refactor: make tr_peerMgr constructor explicit

* fix: make type of variable pointer-to-const

* fix: replace insert with try_emplace

* fix: implicit conversion may lose precision

* fix: use init-statement to reduce variable scope

* chore: mark unused return value with (void)
2022-03-25 00:24:04 -05:00
Ali 0a8cfba3b3
Add ability to change piece size during torrent creation in MacOS GUI… (#2805)
* Add ability to change piece size during torrent creation in MacOS GUI (#2416)

* Shouldn't have committed the xcodeproj file
2022-03-24 22:26:21 -05:00
JP-Ellis cf6f279830
Fix finding system PSL library (#2812)
Whilst the library file my be called `libpsl`, CMake expects there to be a `lib` in front and thus the existing code was actually looking for `liblibpsl`.

Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-03-24 21:14:11 -05:00
Charles Kerr bd895b5052
test: fix file-info test edge case (#2811) 2022-03-24 19:03:15 -05:00
Charles Kerr 6e8f9f3ff0
feat: add tr_strbuf (#2810)
* feat: add tr_strbuf class for building tmp strings

Based on fmt::basic_memory_buf, this is a growable string buffer that
has an initial size that's large enough to build most filenames or URLs
without needing heap allocations.

Adds a couple of extra helpers such as a `c_str()` method to make dealing
with old zero-terminated string APIs easier.
2022-03-24 16:41:29 -05:00
Charles Kerr 783fa500e7
fix: set the utp state change log level to trace (#2809)
Fixes #2808.
2022-03-24 13:46:34 -05:00
Charles Kerr f19c09ad9b
fix: bugprone-narrowing-conversions warnings in bitfield.cc (#2806) 2022-03-24 08:31:00 -05:00
Charles Kerr b8c3778cf4
fix: sonarcloud warnings (#2804)
* fix: break will never be executed

* refactor: compile the name fallback string

* fix: replace redundant type with auto

* fix: use init-statement to reduce variable scope

* fix: implicit conversion loses precision

* fix: use in-class initializer

* fix: make variable a pointer-to-const

* fix: local variable name shadows class variable

* fix: implicit conversion may lose precision
2022-03-24 00:18:41 -05:00
Charles Kerr 6db3fbfe64
perf: tell curl_share to share everything (#2802) 2022-03-23 22:02:18 -05:00
SweetPPro 791f59e8ba
fix for editing magnet link tracker list (#2793)
Co-authored-by: SweetPPro <sweetppro@users.noreply.github.com>
2022-03-23 10:18:06 -05:00
David Beinder 53dc3a41b4
fix: return correct bitfield when fully downloaded (#2799)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-03-22 14:01:07 -05:00
Charles Kerr 04a4f4a10c
refactor: a little more logging (#2800)
Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2022-03-22 11:45:56 -05:00
SweetPPro 6e1b89d9a7
fixes "no data found..." error on restart for paused torrents (#2797)
Co-authored-by: SweetPPro <sweetppro@users.noreply.github.com>
2022-03-21 16:15:53 -05:00
Charles Kerr 03ee0028d4
refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
Charles Kerr fcc1510ecb
refactor: use fmt to build the GTK client's user-visible strings (#2788)
Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2022-03-21 09:15:48 -05:00
Charles Kerr 44e30bf092
perf: avoid excess filesystem checks (#2786) 2022-03-18 16:31:25 -05:00
Charles Kerr 7b837bca1f
fixup! refactor: remove deep logging (#2749) (#2785)
handle new log levels in daemon cli invocation
2022-03-18 14:15:43 -05:00
Charles Kerr 68646df4e3
docs: add pid-file to transmission-daemon manpage (#2784)
Fixes #2766.

Co-authored-by: Tim Tassonis <stuff@decentral.ch>
2022-03-18 12:59:45 -05:00
Charles Kerr 22499c677a
refactor: aggregate bandwidth objects (#2783) 2022-03-18 11:34:29 -05:00
Matan Ziv-Av c07bac4e19
Limit bandwidth used by a group of torrents (#2761)
* Add support for bandwidth groups. i.e. Bandwidth limit for a (user specified) group of torrents,
2022-03-18 08:11:59 -05:00
Charles Kerr 6cb0498486
fix: log unexpected announce/scrape keys (#2778)
Fixes #2765.
2022-03-17 19:31:24 -05:00
Charles Kerr fa8aaf7631
refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
Charles Kerr 5df252d1e1
fix: calculate ratio as uploaded / sizeWhenDone (#2770) 2022-03-17 13:41:48 -05:00
Charles Kerr ce10a5314a
fixup! fix: ensure all bytes read / written to file (#2682) (#2780)
fix: infinite loop when pread returns 0
2022-03-17 10:41:02 -05:00
Charles Kerr 54ef7341a2
refactor: fmt pt 4 (#2774)
Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2022-03-16 19:23:44 -05:00