Commit Graph

13578 Commits

Author SHA1 Message Date
Mike Gelfand 8c9faf1f71 Set default Mac target version in CMake to avoid extra warnings 2021-08-17 00:32:32 +03: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 647c171636 Clean-up leftover mentions of uncrustify, fix custom format targets 2021-08-16 01:08:56 +03:00
Mike Gelfand db3d40d0ed Switch to clang-format for code formatting, include Mac client 2021-08-16 00:38:29 +03:00
Mike Gilbert 409f59889b
Restore support for the INSTALL_LIB option (#1756)
It appears this was removed by accident.

Fixes: 677dc73eac
2021-08-13 21:26:38 +03:00
Daniel Kamil Kozar 79e8bc5c46
Remove unnecessary "id" member of TrNotification in gtk/notify.c (#851)
The "id" member's only purpose is to serve as the key for the
active_notifications hash table. However, the same thing can be very easily
achieved by switching the GHashTable's hash/equal functions to "direct", which
just use the void pointers (which all keys are in a GHashTable) directly as if
they were values, and use GUINT_TO_POINTER() when referring to this hash table's
key.

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2021-08-08 00:24:11 +03:00
dubhater a7370fe8fb
Qt: Move icon after "Alternative Speed Limits" label (#503)
Looks better and matches the Gtk client.

Co-authored-by: dubhater <cantabile.desu@gmail.com>
Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2021-08-07 17:57:59 +03:00
dubhater f804043b85
Qt: Use file selector in Set Location if session is local (#502)
It's the only place where Session::isServer() is used to decide if
a file selector should be used, or a text box. Session::isLocal()
is used everywhere else.

Co-authored-by: dubhater <cantabile.desu@gmail.com>
Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2021-08-07 17:08:37 +03:00
dubhater 6f76d8fae7
Qt: Add tooltips for Options, Statistics buttons (#501)
Same as in the Gtk client.

Co-authored-by: dubhater <cantabile.desu@gmail.com>
Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2021-08-07 14:21:06 +03:00
Sam Marcus 55060fcaa9
Update README.md (#459) 2021-08-07 13:31:28 +03:00
Koro ab1c452dd7
Display more progress information during torrent creation. (#1405)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2021-08-07 13:15:06 +03:00
RobCrowston 0155252823
Add in-kernel file copying for several platforms. (#1092)
* Add in-kernel copying support for Linux (sendfile64(2), copy_file_range(2)), FreeBSD 13 (copy_file_range(2)), MacOS (copyfile(2)), and Windows (CopyFileExA).

* Fix macro name USE_COPY_FILE_RANGE.

* Minor bugfixes for userspace fallback.

* Fix linux sendfile64 bugs.

* Remove some overzealous asserts.

* Allow transmission-test-copy to take an optional argument for an external reference file.

* Fix return value error of tr_sys_path_copy.

* Use COPYFILE_ALL for Macs without COPYFILE_CLONE.

* Add in-kernel file copying for several platforms.

Numerous operating systems now have support for copying files directly in the
kernel, which is generally more efficient than copying in a userspace read(2)/
write(2) loop. (This becomes particularly relevant for 4th gen PCI-E storage,
which approaches the latency of DRAM.) For Linux I use sendfile64(2), and, for
later kernels, copy_file_range(2). FreeBSD 13 will also support
copy_file_range(2). MacOS has copyfile(2), and Windows has CopyFileExA.
Operating systems lacking such a syscall continue to use the existing
read(2)/write(2) loop.

* Appease uncrustify.

* Appease uncrustify.

* copy-test: generate random content at run time.

* copy-test: Stylistic changes and more check()s.

* copy-test: files_are_identical should follow test idioms

* tr_sys_path_copy: numerous tweaks as requested by review.

* s/old file/source file; s/new file/destination file.

* tr_sys_path_copy: handle win32 wide characters in paths.

* Uncrustify.

* test-copy: Use non-string create_file_with_contents.

* tr_sys_path_copy: numerous fixes.

Per review: generate test file content at runtime; tidy use of check();
fix style; re-measure file sizes in the copy; define a macro when the
system does not provide it; use Unicode APIs on Windows; and fix
documentation.

* Updated as per comments.

* Rebase kernel-copy changes onto 3.0 with gtest.

* Undo irrelevant comment change.

* Fix syntax error.

* Use tr_malloc() instead of tr_valloc().

* Use EXPECT instead of TR_ASSERT in gtest.

* Add error handling.

* Acceptable coding style has changed again.

Now it's camelCase. Also use nullptr instead of NULL, etc.

* Fix east/west const.

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2021-08-07 12:04:03 +03:00
Dmitry Serov af3a4d4557
Modern Objective-C syntax (#509)
* Update enabled complier warnings

* Convert to Modern Objective-C syntax using Xcode's tool

* Convert to modern objc syntax manually, fix some PR issues

* Remove unnecessary parentheses

* Use property syntax for all custom properties

* Use property syntax for all system properties

* Fix erroneously autoreleased values

* Revert VDKQueue to old objc syntax

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
Co-authored-by: Mitch Livingston <livings124@mac.com>
2021-08-07 10:27:56 +03:00
dependabot[bot] 53d49f3a81
chore(deps): bump dns-packet from 1.3.1 to 1.3.4 in /web (#1715)
Bumps [dns-packet](https://github.com/mafintosh/dns-packet) from 1.3.1 to 1.3.4.
- [Release notes](https://github.com/mafintosh/dns-packet/releases)
- [Changelog](https://github.com/mafintosh/dns-packet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mafintosh/dns-packet/compare/v1.3.1...v1.3.4)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-13 21:51:54 -05:00
Charles Kerr 07d385cf44
refactor: torrent-complete-sound-command is a list (#1710)
* refactor: torrent-complete-sound-command is a list
2021-05-25 11:21:41 -05:00
Charles Kerr 16ec15d84b fixup! fix: dangling reference crash in FreeSpaceLabel (#1604) 2021-05-22 10:53:52 -05:00
Charles Kerr 5c8f7d410c
refactor: qt deprecations, pt 1 (#1707)
* refactor: use QMultiMap in DetailsDialog::onRemoveTrackerClicked()

* refactor: use 'QWindowFlags = {}' in BaseDialog

Fixes deprecated use:

> ../qt/BaseDialog.h:16:59: warning: 'QFlags' is deprecated: Use default constructor instead [-Wdeprecated-declarations]

* refactor: remove empty string in string_view ctor

Fixes readability-redundant-string-init warning:

> ../qt/Prefs.cc:379:20: error: redundant string initialization [readability-redundant-string-init,-warnings-as-errors]
>    auto constexpr SessionUsername = std::string_view { "" };
>                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2021-05-21 16:38:08 -05:00
Charles Kerr c9a9652abf
silence readability-function-cognitive-complexity (#1703) 2021-05-20 15:00:20 -05:00
Dzmitry Neviadomski 59cf023e57
Update libevent to 2.1.12-stable. (#1588)
* Update libevent to 2.1.12-stable.

Fixes `kq_init: detected broken kqueue; not using.: Undefined error: 0`
message on start on macOS.

* Do not build libevent samples.

* Explicitly set library type to static on MSVC for libevent.

Co-authored-by: Mitch Livingston <livings124@mac.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-05-20 11:36:12 -05:00
Charles Kerr e419d6dee7 fixup! chore: bump imagemagick version in choco install on appveyor (#1699) 2021-05-20 10:08:37 -05:00
Lucas Clemente Vella 1194b88258
Renaming variables to better reflect what they do. (#1660)
Because bound IPv4 is hardly ever a public address.

Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-05-19 15:45:03 -05:00
Charles Kerr d2473f4c2f
chore: bump web client deps (#1698)
* chore: bump web client dependencies
2021-05-19 08:43:46 -05:00
Charles Kerr 95a45b0bad
chore: bump imagemagick version in choco install on appveyor (#1699)
The old version number is erroring out.
2021-05-18 19:30:23 -05:00
Charles Kerr 7fd9fa15b7
fix: dangling reference crash in FreeSpaceLabel (#1694)
* fix: dangling reference crash in FreeSpaceLabel

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2021-05-18 12:36:46 -05:00
Charles Kerr 7026c91797
Appveyor CI is failing due to a 302 redirect. (#1697)
This PR changes the download URL to the new location.

Example of CI failure:
https://ci.appveyor.com/project/transmissionbt/transmission/builds/39088944/job/wy2w6jn6y8cgkjlv#L349
2021-05-18 09:41:17 -05:00
Mitch Livingston 8dd2928976
Merge pull request #1681 from deepwell/1363-add-unrecognized-client-names
Add unrecognized client names #1363
2021-05-14 17:27:17 -04:00
Mark Deepwell c7feedcf45
Support uTorrent Web with both azureus style and the one without the dash at the end 2021-05-11 21:39:09 -07:00
Mark Deepwell d57f575892
Retain full BitLord build number 2021-04-27 20:47:37 -07:00
Mark Deepwell 7ff6d8cf36
Add unrecognized client names #1363
This is based off of PR#1526 by azy5030 to add in: Torrent Web, BiglyBT, and FrostWire. I made the additional change requested by livings124.

In addition this also adds support for: HTTP Seed, aria2 (#532), and BitLord.
2021-04-27 20:47:33 -07:00
Mike Gelfand faafc9e02f Generate app icon file for CMake build
TODO: Look into switching to .car file for all resources.

Fixes: #1672
2021-04-25 00:56:48 +03:00
Mike Gelfand 28b0e53006 Don't include GoogleTest module
It's not used, and is only available since CMake 3.9.
2021-04-24 23:50:01 +03:00
Mitch Livingston 8566df0698
Merge pull request #1653 from transmission/icon-assets
Update app icon from icns to pngs in the asset catalog
2021-03-29 22:15:29 -04:00
Mitchell Livingston 7edd656536 Update app icon from icns to pngs in the asset catalog 2021-03-29 22:07:55 -04:00
Mitch Livingston fc0e14da06
Merge pull request #1651 from transmission/icon-badges
Simplified download badges
2021-03-29 19:04:45 -04:00
Mitch Livingston 9371795c05
Merge pull request #1650 from transmission/big-sur-icon
macOS icon redesigned for Big Sur
2021-03-29 19:02:29 -04:00
Mitchell Livingston 20bd1146ce Simplified download badges
Thanks to Rodger Werner
2021-03-29 18:39:57 -04:00
Mitchell Livingston 92a3ea346c Update NEWS.md 2021-03-29 18:22:59 -04:00
Mitchell Livingston 180e59ab6b macOS icon redesigned for Big Sur 2021-03-29 18:05:30 -04:00
Mitch Livingston 9c5e6f7ea6
Merge pull request #1619 from npapke/issue-564
Properly parse dht_search()
2021-02-27 10:45:31 -05:00
Norbert Papke d2c8137518 Fixes transmission/transmission#564
Per analysis by cfpp2p
(https://github.com/transmission/transmission/issues/564#issuecomment-377612224),
a duplicate search is not an error.
2021-02-06 10:56:09 -08:00
Charles Kerr 090a4b5ff8
fix: dangling reference crash in FreeSpaceLabel (#1604) 2021-01-24 22:20:21 -06:00
Charles Kerr 270a937909
feat: add remote server version to the about dialog (#1603) 2021-01-24 11:43:14 -06:00
Mitch Livingston 7e3068d87a
Merge pull request #1587 from nevack/nevack/move-ivars-to-impl
Move ivars to @implementation.
2021-01-20 07:35:19 -05:00
Dzmitry Neviadomski e5bff86ae7 Remove redutant statements. 2021-01-18 05:52:38 +03:00
Dzmitry Neviadomski 18266e080e Move ivars to @implementation. 2021-01-12 22:06:30 +03:00
Mitch Livingston d499c9c856
Merge pull request #1579 from transmission/deprecation-cleanup
Fix a few deprecation warnings
2021-01-03 09:35:18 -05:00
Mitchell Livingston e9ece48c87 remove unused method 2021-01-02 23:30:47 -05:00
Mitchell Livingston 1527698de4 Fix a few deprecation warnings 2021-01-02 23:29:08 -05:00
Mitch Livingston df04a59350
Merge pull request #1572 from transmission/remove-unused-gradient
Remove unused background gradient variables
2020-12-30 23:17:39 -05:00
Mitchell Livingston 37573c9821 Remove unused background gradient variables 2020-12-30 20:18:12 -05:00