1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2024-12-30 19:46:56 +00:00
Commit graph

1733 commits

Author SHA1 Message Date
Charles Kerr
e59fe7daaf
fix: silence some sonarcloud warnings (#1493)
* refactor: add null ptr check in initPeerRow()

* refactor: add a nullptr gurad in icon_cache_get_mime_type_icon

* chore: silence two "break notreached" warnings

* chore: silence sonarcloud html warnings

* chore: silence sonarcloud uninitialized var warning

* chore: silence sonarcloud nullptr warning
2020-10-31 16:23:43 -05:00
Mike Gelfand
4c7153fa48
Remove autotools-based build system (#1465)
* Support .git files (e.g. for worktrees, submodules)
* Fix symlinks in source tarball, switch to TXZ, adjust non-release name
* Remove autotools stuff
2020-10-13 03:15:19 +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
efaa66a920
fix: resolve some lgtm warnings (#1444)
* fix: warnings found by LGTM static analyzer
2020-09-11 16:07:45 -05:00
Charles Kerr
e127b20c05
chore: fix compiler warnings (#1412)
* chore: fix compiler warnings
2020-08-27 18:41:26 -05:00
Mike Gelfand
b7a8bd45b7 Reformat affected code after recent changes 2020-08-18 20:31:06 +03:00
Mike Gelfand
ff8d0dbf3b Switch from UNUSED macro to TR_UNUSED macro
Since there is no way to mark parameters as [potentially] unused in
standard C and when using MSVC compiler, use the widely accepted
cast-to-void approach instead.
2020-08-18 14:19:55 +03: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
Charles Kerr
6da4a4dfad
Fix or silence gtk warnings (#1380)
* chore: disable deprecation warnings in GTK client

Yes, updating the GTK codebase is still a goal. (help welcomed!)
But there's a deluge of deprecation warnings that drown out other more
important warnings, so turn off deprecation warnings for now.

* fixup! chore: disable deprecation warnings in GTK client

* fix: gtk_tree_sortable_set_sort_column_id caller.

* fix: gtk_window_resize caller.
2020-07-30 14:45:11 -05:00
Charles Kerr
9da4abb003
feat: add 'transfer.complete' notification hint (#1374)
Described at https://developer.gnome.org/notification-spec/#categories ,
this is for a file transfer or download complete notification.
2020-07-28 16:51:01 -05:00
Nicholas Guriev
05a2e15b00
i18n: translate "Ratio:" string in compact view (#1354)
Use already available translation from gettext.

Co-authored-by: Charles Kerr <charles@charleskerr.com>
2020-07-27 13:51:31 -05:00
Charles Kerr
073ae6c206
chore: fix deprecation warnings of GTK_STOCK_ use. (#1370)
* chore: fix deprecation warnings of GTK_STOCK_ use.

This is just a tiny step towards getting all of the GTK code up-to-date,
but GTK_STOCK warnings are the lowest-hanging fruit of the warnings, so
let's fix them.
2020-07-27 12:49:45 -05:00
Charles Kerr
82020d2e8c
fix: fix console warning when adding magnet links (#1229) 2020-05-15 12:22:06 -05:00
Charles Kerr
fa6df52d58
chore: remove unused methods (#1207)
* chore: remove unused methods in qt client

* chore: remove unused libtransmission methods

* chore: remove unused gtk methods

* chore: remove more unused libtransmission methods

* chore: remove more unused code found by @reardonia
2020-05-11 17:20:46 -05:00
Noobsai
79d3133ebc
Fixed showing popup menu on RMB at tray icon (#1210) 2020-05-11 16:19:33 -05:00
Mike Gelfand
2d940e5caf
Bump copyright to 2020 (some more places) (#1206)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2020-05-02 12:26:42 -05:00
Charles Kerr
8739cb9c88
fixup! (trunk) update credits (#1205) 2020-05-02 11:42:18 -05:00
Bogdan Vasiliev
a6482b0061
GTK: behavior improvements of the torrent details window (#892)
* gtk: torrent details file-list default sort

* gtk: save torrent details window size

* gtk: torrent details window size & sort, code style

* gtk: torrent details window, conf.c dict fix

Co-authored-by: Charles Kerr <ckerr@github.com>
2020-04-27 16:34:02 -05:00
andreaskern
def7634f18
fix availability not showing 100% in gtk details view (#1181)
#1180

Co-authored-by: Charles Kerr <ckerr@github.com>
2020-04-26 00:07:40 -05:00
Jakub Steiner
7b53f4238d
icon: update application icon (#1141)
Fixes https://github.com/transmission/transmission/issues/1140

Co-authored-by: Charles Kerr <ckerr@github.com>
2020-04-25 20:01:49 -05:00
Akatsuki
f6030b1d79
gtk: fix window width (#1069)
GTK window width cannot be smaller than the longest torrent title

Source: https://trac.transmissionbt.com/ticket/6128

Co-authored-by: Charles Kerr <ckerr@github.com>
2020-04-24 15:15:57 -05:00
Charles Kerr
b0e33117c5
Fix some gtk warnings (#1038)
* fix gtk deprecation warning: gtk_misc_set_alignment

* fix gtk deprecation warning: gtk_alignment_new

* fix gtk deprecation warning: gtk_tree_view_set_rules_hint

* fix gtk deprecation warning: gtk_image_new_from_stock

* fixup! fix gtk deprecation warning: gtk_alignment_new

* fix gtk deprecation warning: gtk_dialog_set_alternative_button_order

* fix gtk deprecation warning: gtk_show_uri

* fix gtk deprecation warning: gtk_widget_set_margin_left

* fix gtk deprecation warning: gtk_button_set_alignment

* fix gtk deprecation warning: g_type_class_add_private

* fix gtk deprecation warning: gtk_menu_popup

* fix gtk deprecation warning: gtk_misc_set_padding

* chore: uncrustify

* fix: silence G_TYPE_INSTANCE_GET_PRIVATE warning

Deprecaed starting in glib 2.58

* chore: uncrustify
2019-11-06 13:09:27 -06:00
Charles Kerr
abac811dd2
fix: gcc warnings in libtransmission/ and utils/ (#843)
* fix: __attribute__(__printf__) warnings

* fix: implicit fallthrough warning

* fixup! fix: implicit fallthrough warning

* fix: disable warnings for 3rd party code

Since we want to leave upstream code as-is

* fixup! fix: disable warnings for 3rd party code

* fixup! fix: disable warnings for 3rd party code

* silence spurious alignment warning

Xrefs
Discussion: https://stackoverflow.com/a/35554349
Macro inspiration: 90ac46f710/f/src/util/util_safealign.h (_35)

* fixup! fix: disable warnings for 3rd party code

* fixup! fix: implicit fallthrough warning

* make uncrustify happy

* remove uncrustify-test.sh

that's probably off-topic for this PR

* fixup! fix: __attribute__(__printf__) warnings

* Update libtransmission/CMakeLists.txt

Co-Authored-By: ckerr <ckerr@github.com>

* fixup! silence spurious alignment warning

* use -w for DISABLE_WARNINGS in Clang

* refactor: fix libtransmission deprecation warnings

* fix: pthread_create's start_routine's return value

This was defined as `void` on non-Windows but should have been `void*`

* chore: uncrustify

* fix: add DISABLE_WARNINGS option for SunPro Studio

* fix "unused in lambda capture" warnings by clang++

* fix 'increases required alignment' warning

Caused from storing int16_t's in a char array.

* fix net.c 'increases required alignment' warning

The code passes in a `struct sockaddr_storage*` which is a padded struct
large enough for the necessary alignment. Unfortunately it was recast as
a `struct sockaddr*` which has less padding and a smaller alignment. The
warning occrred because of these differing alignments.

* make building quieter so warnings are more visible

* fixup! fix 'increases required alignment' warning

* Fix -Wcast-function-type warnings in GTK+ app code

https://gitlab.gnome.org/GNOME/gnome-terminal/issues/96 talks about both
the issue and its solution.

GCC 8's -Wcast-function-type, enabled by -Wextra, is problematic in glib
applications because it's idiomatic there to recast function signatures,
e.g. `g_slist_free(list, (GFunc)g_free, NULL);`.

Disabling the warning with pragmas causes "unrecognized pragma" warnings
on clang and older versions of gcc, and disabling the warning could miss
actual bugs. GCC defines `void (*)(void)` as a special case that matches
anything so we can silence warnings by double-casting through GCallback.

In the previous example, the warning is silenced by changing the code to
read `g_slist_free(list, (GFunc)(GCallback)g_free, NULL);`).

* fixup! fix "unused in lambda capture" warnings by clang++

* fixup! fix "unused in lambda capture" warnings by clang++

* fix two more libtransmission compiler warnings

* fix: in watchdir, use TR_ENABLE_ASSERTS not NDEBUG
2019-11-06 11:27:03 -06:00
Mike Gelfand
eef4799388 Update Uncrustify config to 0.69 2019-07-15 02:30:41 +03:00
Mike Gelfand
10cdd7f790 Use explicit boolean conversions 2019-07-14 16:25:07 +03:00
Mike Gelfand
a3e4919385 Introduce tr_str_is_empty to relay intent better 2019-07-13 12:00:06 +03:00
Mike Gelfand
c567588587 Remove useless parentheses 2019-03-17 09:18:27 +03:00
Mike Gelfand
5693e59256 Define each identifier in a dedicated statement
* MISRA C++:2008, 8-0-1 - An init-declarator-list or a member-declarator-list
  shall consist of a single init-declarator or member-declarator respectively
* CERT, DCL52-J. - Do not declare more than one variable per declaration
* CERT, DCL04-C. - Do not declare more than one variable per declaration
2019-03-17 09:15:35 +03:00
Mike Gelfand
17307e7484 Extract assignments from expression
Assignments explicitly enclosed in parentheses are ignored.

* MISRA C:2004, 13.1 - Assignment operators shall not be used in expressions
  that yield a Boolean value
* MISRA C++:2008, 6-2-1 - Assignment operators shall not be used in
  sub-expressions
* MISRA C:2012, 13.4 - The result of an assignment operator should not be used
* MITRE, CWE-481 - Assigning instead of Comparing
* CERT, EXP45-C. - Do not perform assignments in selection statements
* CERT, EXP51-J. - Do not perform assignments in conditional expressions
2019-03-17 08:00:15 +03:00
Mike Gelfand
d3b8982195 Uppercase the literal suffixes
* MISRA C++:2008, 2-13-4 - Literal suffixes shall be upper case
* MISRA C:2012, 7.3 - The lowercase character "l" shall not be used in a
  literal suffix
* CERT DCL16-C. - Use "L," not "l," to indicate a long value
* CERT, DCL50-J. - Use visually distinct identifiers
2019-03-17 07:07:48 +03:00
Mike Gelfand
dab4857f90
Merge branch 'master' into rmintltool 2019-02-24 21:52:09 +03:00
Mike Gelfand
82df3a87f4 Update to Uncrustify 0.68.1
Tweak a few rules in the process. Now all code in cli, daemon, gtk,
libtransmission, qt, and utils is properly formatted with no manual
intervention.
2019-02-15 09:21:48 +03:00
Charles Kerr
7058f37bed
Merge pull request #816 from PeterDaveHello/improve-shellscript
fix shell script syntax errors and spacing inconsistencies
2019-02-01 22:36:54 -06:00
Peter Dave Hello
7a0d2e63c7 Refactor shell scripts with syntax and styling fixes 2019-01-16 03:22:29 +08:00
fetzu
3c0cb395c5 Updated copyright strings to 2019
Updated Transmission Project copyright dates to 2005-2019 in headers and code.
2019-01-11 19:36:19 +01:00
userwithuid
8c160aad2d cmake: replace intltool with gettext
requires gettext 0.19.7 or higher
2018-04-18 09:25:13 +00:00
Zachary J. Slater
f388d17c2d Updated copyright string to 2018
Small update to copyright string
2018-04-17 00:50:33 -10:00
Mike Gelfand
94be7dbd9b Merge branch '2.9x' 2018-01-25 03:07:52 +03:00
Mike Gelfand
aa2730d47c Switch to HTTPS links, adjust wiki links where possible
Fixes #39
2018-01-16 01:12:59 +03:00
Robert Vehse
a6ef87b92d Update all instances of the donation link. Fixes #26. 2018-01-15 23:57:46 +03:00
Will Thompson
01ffcd5dcf
gtk: add symbolic icon
The -symbolic icon variant (if available) is used in the GNOME top bar,
and when the high contrast theme is in use.  This icon was created by
Jakub Steiner, and comes from the gnome-icons repository:

https://github.com/gnome-design-team/gnome-icons/blob/master/apps-symbolic/Adwaita/scalable/apps/transmission-symbolic.svg
https://bugzilla.redhat.com/show_bug.cgi?id=1221292

There is some confusion over whether symbolic app icons should be
installed to icons/hicolor/scalable/apps (alongside the regular scalable
icon) or to icons/hicolor/symbolic/apps. On the one hand,
https://wiki.gnome.org/Initiatives/GnomeGoals/HighContrastAppIcons has
this to say:

> […] obtain a suitable symbolic style icon […] and install it to the
> hicolor prefix, the same way you would for the full color variant.
>
> cp myapp-symbolic.svg /usr/share/icons/hicolor/scalable/apps/myapp-symbolic.svg

On the other hand, the Fedora package at
https://src.fedoraproject.org/rpms/transmission/blob/master/f/transmission.spec
ships this icon in icons/hicolor/symbolic/apps:

> # Install the symbolic icon
> mkdir -p  %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps
> cp %{SOURCE1} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/transmission-symbolic.svg

Anecdotally, icons in scalable/ have minimum size 64×64 on openSUSE, so
symbolic/ is the safer location (given the GNOME top bar uses 32×32
icons). This has the advantage of matching the location used in the
distribution which already ships this file.

https://github.com/transmission/transmission/issues/414
2017-11-30 17:38:34 +00:00
Mike Gelfand
7e6f1a8dc8 Set idle seed limit range to 1..40320 (4 weeks tops) in all clients
Fixes: #212
2017-07-05 21:07:16 +03:00
Mike Gelfand
f701d501a8 Move generic macros to a separate tr-macros.h file 2017-06-18 17:11:20 +03:00
Fish2
b0e3d4c37d lossless compression of images saved 72KB 2017-06-03 23:52:34 +01:00
Mike Gelfand
8f3cb1c68d Wrap sizeof arguments in braces 2017-05-20 19:29:23 +03:00
Mike Gelfand
7a1a1acd22 Fix autotools build 2017-05-17 00:56:39 +03:00
Mike Gelfand
ef8cb30f7c Merge pull request #224 from wjt/appdata
gtk: add AppData file
2017-05-16 23:13:25 +03:00
Mike Gelfand
1e3d20422a Reduce for loop variables scope 2017-05-14 01:38:31 +03:00
Will Thompson
23d61b6457
gtk: add AppData file
This file was originally written by Richard Hughes, for Fedora, who
proposed it on the Transmission forum here:
https://forum.transmissionbt.com/viewtopic.php?f=3&t=16443

It's used to display a nice description and screenshot in GNOME
Software. The format is documented here:
https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html

The <_name/> and <_summary/> fields match the Name= and Comment= fields
in the .desktop file so are already translated.

The screenshot is taken with Transmission 2.92 (14714) on Fedora 25.
It's at one of the sizes recommended by the GNOME Shell Screenshot
Window Sizer extension.

The <update_contact/> is based on the Git history.
2017-05-03 17:43:23 +01:00
Mike Gelfand
b99fb6f07a Add queue up/down hotkeys (GTK+ client) 2017-05-01 18:58:27 +03:00