Giter Club home page Giter Club logo

transmission's Introduction

About

Transmission is a fast, easy, and free BitTorrent client. It comes in several flavors:

  • A native macOS GUI application
  • GTK+ and Qt GUI applications for Linux, BSD, etc.
  • A Qt-based Windows-compatible GUI application
  • A headless daemon for servers and routers
  • A web UI for remote controlling any of the above

Visit https://transmissionbt.com/ for more information.

Documentation

Transmission's documentation is currently out-of-date, but the team has recently begun a new project to update it and is looking for volunteers. If you're interested, please feel free to submit pull requests!

Command line interface notes

Transmission is fully supported in transmission-remote, the preferred cli client.

Three standalone tools to examine, create, and edit .torrent files exist: transmission-show, transmission-create, and transmission-edit, respectively.

Prior to development of transmission-remote, the standalone client transmission-cli was created. Limited to a single torrent at a time, transmission-cli is deprecated and exists primarily to support older hardware dependent upon it. In almost all instances, transmission-remote should be used instead.

Different distributions may choose to package any or all of these tools in one or more separate packages.

Building

Transmission has an Xcode project file (Transmission.xcodeproj) for building in Xcode.

For a more detailed description, and dependencies, visit How to Build Transmission in docs

Building a Transmission release from the command line

$ tar xf transmission-4.0.4.tar.xz
$ cd transmission-4.0.4
# Use -DCMAKE_BUILD_TYPE=RelWithDebInfo to build optimized binary with debug information. (preferred)
# Use -DCMAKE_BUILD_TYPE=Release to build full optimized binary.
$ cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo
$ cd build
$ cmake --build .
$ sudo cmake --install .

Building Transmission from the nightly builds

Download a tarball from https://build.transmissionbt.com/job/trunk-linux/ and follow the steps from the previous section.

If you're new to building programs from source code, this is typically easier than building from Git.

Building Transmission from Git (first time)

$ git clone --recurse-submodules https://github.com/transmission/transmission Transmission
$ cd Transmission
# Use -DCMAKE_BUILD_TYPE=RelWithDebInfo to build optimized binary with debug information. (preferred)
# Use -DCMAKE_BUILD_TYPE=Release to build full optimized binary.
$ cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo
$ cd build
$ cmake --build .
$ sudo cmake --install .

Building Transmission from Git (updating)

$ cd Transmission/build
$ cmake --build . -t clean
$ git submodule foreach --recursive git clean -xfd
$ git pull --rebase --prune
$ git submodule update --init --recursive
$ cmake --build .
$ sudo cmake --install .

Contributing

Code Style

You would want to setup your editor to make use of the .clang-format file located in the root of this repository and the eslint/prettier rules in web/package.json.

If for some reason you are unwilling or unable to do so, there is a shell script which you can use: ./code_style.sh

Translations

See language translations.

Sponsors

[MacStadium] macOS CI builds are running on a M1 Mac Mini provided by MacStadium
[SignPath] Free code signing on Windows provided by SignPath.io, certificate by SignPath Foundation

transmission's People

Contributors

ckerr avatar coeur avatar dareiff avatar dependabot[bot] avatar devildimon avatar dmantipov avatar fxcoudert avatar garyelshaw avatar github-actions[bot] avatar ile6695 avatar jech avatar jhujhiti avatar jre avatar kjg avatar kvakvs avatar lasereyess avatar livings124 avatar longinus00 avatar maddthesane avatar mikedld avatar mjarvis avatar muks avatar nevack avatar oleg-chashko avatar petrprogs avatar rukario avatar sweetppro avatar tearfur avatar titer avatar vchimishuk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

transmission's Issues

Contributions?

What is the current status of contributions to Transmission?

Is there anything anyone can do to make more development happen, or increase the pace? Are more maintainers needed? Seems like Trac is filled to the brim with patches that are long overdue, but no significant commits to code have happened since April.

It's really hard to figure this project and its status out at the moment, so some sort of update from the developers would be helpful.

Uncaught exception when dragging multiple items between groups (macOS)

Whenever I drag 2 or more items between groups in the transfers window it causes an uncaught exception. Transmission 2.92 (14714) on macOS 10.12 (16A323).

Exception Name: NSInvalidArgumentException
Description: -[TorrentGroup setGroupValue:determinationType:]: unrecognized selector sent to instance 0x61000003dd00
User Info: (null)

0   CoreFoundation                      0x00007fff7fff57bb __exceptionPreprocess + 171
1   libobjc.A.dylib                     0x00007fff94762a2a objc_exception_throw + 48
2   CoreFoundation                      0x00007fff80075d84 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
3   CoreFoundation                      0x00007fff7ff68fc3 ___forwarding___ + 1059
4   CoreFoundation                      0x00007fff7ff68b18 _CF_forwarding_prep_0 + 120
5   Transmission                        0x0000000106bb7678 Transmission + 71288
6   AppKit                              0x00007fff7e264650 -[NSOutlineView performDragOperation:] + 322
7   AppKit                              0x00007fff7dea42bd NSCoreDragReceiveMessageProc + 749
8   HIServices                          0x00007fff7ecda3ae DoMultipartDropMessage + 328
9   HIServices                          0x00007fff7ecda0b8 DoDropMessage + 41
10  HIServices                          0x00007fff7ecda089 SendDropMessage + 80
11  HIServices                          0x00007fff7ecd8bff DragInApplication + 519
12  HIServices                          0x00007fff7ecd7b9f CoreDragStartDragging + 925
13  AppKit                              0x00007fff7dea0d30 -[NSCoreDragManager _dragUntilMouseUp:accepted:] + 1048
14  AppKit                              0x00007fff7de9dcba -[NSCoreDragManager dragImage:fromWindow:at:offset:event:pasteboard:source:slideBack:] + 1193
15  AppKit                              0x00007fff7de9d800 -[NSWindow(NSDrag) dragImage:at:offset:event:pasteboard:source:slideBack:] + 135
16  AppKit                              0x00007fff7e263602 -[NSOutlineView dragImage:at:offset:event:pasteboard:source:slideBack:] + 211
17  AppKit                              0x00007fff7e34c55c -[NSTableView _doImageDragUsingRowsWithIndexes:event:pasteboard:source:slideBack:startRow:] + 627
18  AppKit                              0x00007fff7e34d3e0 -[NSTableView _performClassicDragOfIndexes:hitRow:event:] + 329
19  AppKit                              0x00007fff7dedaa76 -[NSTableView _performDragFromMouseDown:] + 468
20  AppKit                              0x00007fff7ded8d9f -[NSTableView mouseDown:] + 735
21  AppKit                              0x00007fff7ded8890 -[NSOutlineView mouseDown:] + 74
22  Transmission                        0x0000000106bc5adf Transmission + 129759
23  AppKit                              0x00007fff7e47573d -[NSWindow(NSEventRouting) _handleMouseDownEvent:isDelayedEvent:] + 6341
24  AppKit                              0x00007fff7e471f8c -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 1942
25  AppKit                              0x00007fff7e47142a -[NSWindow(NSEventRouting) sendEvent:] + 541
26  AppKit                              0x00007fff7e311bf5 -[NSApplication(NSEvent) sendEvent:] + 1145
27  AppKit                              0x00007fff7dbf8009 -[NSApplication run] + 1002
28  AppKit                              0x00007fff7dbc2a8a NSApplicationMain + 1237
29  Transmission                        0x0000000106ba87b3 Transmission + 10163
30  Transmission                        0x0000000106ba8300 Transmission + 8960

transmission-remote: options are position-dependent

$ transmission-remote --version
transmission-remote 2.92 (14714)

i got:

$ transmission-remote HOST -n user:pwd -l | wc -l
942

$ transmission-remote HOST -l -n user:pwd | wc -l
Unexpected response: <h1>401: Unauthorized</h1>Unauthorized User-www-form-urlencoded

0

so if i dont set -n before -l i am not authenticated with the remote host; i would have not expected the options are position-dependent and so you have to specify them in a specific order

Add "minimize on close window" in Desktop options

This is a small improvement to provide compatibility with systems that avoid the use of the system tray as GNOME in gnu/linux. It is also handy for environments that use icon task list. Thank you.

Update in-app links

A continuation of the earlier issue w/ the donate link - internal links point to the old site and/or are not HTTPS. Links should be updated to use HTTPS, as well as point to the relevant GitHub page.

Grey window overlay after "Set Location..."

After changing the location of a torrent (right click > Set Location... > Apply) the grey overlay that hides the main window behind the Set Location... dialog does not disappear. When reopening the dialog and choosing Cancel, it disappears.

Drop in systemd unit will not work to change user.

I tried using a systemd drop-in on Debian 8 to modify the user transmission-daemon runs as to my home user. Installed with apt-get transmission-daemon the daemon runs as debian-transmission by calling /lib/systemd/system/transmission-daemon.service which calls the older init.d script.

My drop in is located in /etc/systemd/system/transmission-daemon.service.d/local.conf and looks like:

[Service]
User=pi
Group=pi

Reloading with systemctl daemon-reload && systemctl restart transmission-daemon does show the service as running with systemctl status transmission-daemon but the web interface can't be started and no significant errors are produced by transmission-daemons --log-error flag.

screenshot 2016-11-02 17 57 00

Build failure on Debian Sid

When building master I ran into an issue when launching autogen.sh :

22:12:10 + ./autogen.sh --prefix=/usr/local/transmission
22:12:10 creating libtransmission/version.h
22:12:12 m4/glib-gettext.m4:39: error: m4_copy: won't overwrite defined macro: glib_DEFUN
22:12:12 m4/glib-gettext.m4:39: the top level
22:12:12 autom4te: /usr/bin/m4 failed with exit status: 1
22:12:12 aclocal: error: echo failed with exit status: 1
22:12:12 autoreconf: aclocal failed with exit status: 1

It's fixed by adding the following line before autoreconf :

rm m4/glib-gettext.m4 || die

Inspired by https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c13b5e88c6e9c7bd2698d844cb5ed127ed809f7e

macOS gui leaks memory when "sort transfer by activity" is selected

If you set Transmission (2.92) to sort by activity, there seems to be a memory leak as my system shut it down.

The work around seems to be to sort by any other method.

Should note, I've seen this issue before in an old version of transmission but it was fixed and this didn't seem to happen in Mac OS 10.11.x with 2.92, but I can't be sure as I usually run the latest version of transmission, but I don't know when I updated to 2.92 (I just upgraded Mac OS to 10.12.x two days ago and it started crashing regularly, all memory overruns).

Transmission-remote does not --move

Hi all,

On a Ubuntu 14.04 system,
~# transmission-remote --version
transmission-remote 2.82 (14160)

Let's says torrent id 111 has been fully downloaded in /home/me/Downloads and I want to move it to /media/shared/Downloads.

~# transmission-remote -t 111 --move /media/shared/Downloads/
localhost:9091/transmission/rpc/ responded: "success"

Sounds good, but bad luck torrent id is still in /home/me/Downloads and will never be moved to /media/shared/Downloads, it's not just a matter of delay, I see no target disk activity.

What can I do to investigate this issue?

Check for malicious single file torrent is too restrictive

I'm looking at a single-file torrent that has it's name info key set to something like torrent/data which fails the path_component_is_suspicious check.

Given that the spec says

The name key maps to a UTF-8 encoded string which is the suggested name to
save the file (or directory) as. It is purely advisory.

would relaxing that check be appropriate ?

"Display a Window" checkbox doesn't work?

Hey gang, love the app.

v2.9.2, macOS 10.11.6

Having an issue where when I click magnet links in Safari, the "add" window always pops up asking me where to store the file (despite having the "display a window when opening magnet links" button unchecked.

Happy to provide any logs or anything you need!

Transmission tries to connect IPv6 instances even ipv6 addresses are disabled.

Transmission tries to connect IPv6 instances even ipv6 addresses are disabled.

sysctl.conf:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.br0.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.enp3s0.disable_ipv6 = 1
net.ipv6.conf.enp4s0.disable_ipv6 = 1
net.ipv6.conf.enp5s0.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

systool:

Module = "ipv6"
  Parameters:
    autoconf            = "1"
    disable             = "0"
    disable_ipv6        = "1"

Note: I am not going to disable the whole IPv6 stack, because some apps have dependency on it. I'm only asking Transmission team to add an option to disable listening to IPv6.

My journal log is flooded with these (and more):

-- Logs begin at Wed 2016-11-16 08:25:35 CST, end at Thu 2016-11-17 05:59:39 CST. --
Nov 17 03:40:01 archnet transmission-daemon[313]: [2016-11-17 03:40:01.967] Couldn't connect socket 90 to 2a02:a445:49ed:0:f030:ce43:92b3:eef0, port 50321 (errno 99 - Cannot assign requested address)
Nov 17 03:40:01 archnet transmission-daemon[313]: [2016-11-17 03:40:01.967] Couldn't connect socket 90 to 2001:0:5ef5:79fb:3819:217e:920d:700e, port 37514 (errno 99 - Cannot assign requested address)
Nov 17 03:40:01 archnet transmission-daemon[313]: [2016-11-17 03:40:01.967] Couldn't connect socket 90 to 2001:0:9d38:6ab8:3c4b:1c82:a52d:66a2, port 64677 (errno 99 - Cannot assign requested address)
Nov 17 03:40:01 archnet transmission-daemon[313]: [2016-11-17 03:40:01.967] Couldn't connect socket 90 to 2001:0:9d38:6abd:85d:3dd7:cd55:9536, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:01 archnet transmission-daemon[313]: [2016-11-17 03:40:01.967] Couldn't connect socket 90 to 2001:0:9d38:6ab8:1c31:251b:d166:32cf, port 57438 (errno 99 - Cannot assign requested address)
Nov 17 03:40:03 archnet transmission-daemon[313]: [2016-11-17 03:40:03.967] Couldn't connect socket 45 to 2001:0:5ef5:79fb:3c58:1275:fa92:c6a8, port 59851 (errno 99 - Cannot assign requested address)
Nov 17 03:40:03 archnet transmission-daemon[313]: [2016-11-17 03:40:03.967] Couldn't connect socket 45 to 2001:0:5ef5:79fb:3c58:1275:fa92:c6a8, port 59851 (errno 99 - Cannot assign requested address)
Nov 17 03:40:04 archnet transmission-daemon[313]: [2016-11-17 03:40:04.967] Couldn't connect socket 45 to 2001:0:9d38:6ab8:3c86:1959:a13f:f5be, port 49450 (errno 99 - Cannot assign requested address)
Nov 17 03:40:04 archnet transmission-daemon[313]: [2016-11-17 03:40:04.967] Couldn't connect socket 45 to a7c2:0:5ef5:79fd:34bc:993:b3b8:ee95, port 56112 (errno 99 - Cannot assign requested address)
Nov 17 03:40:04 archnet transmission-daemon[313]: [2016-11-17 03:40:04.967] Couldn't connect socket 63 to 2a02:c7f:600:af00:b034:3267:417b:1d5f, port 51413 (errno 99 - Cannot assign requested address
Nov 17 03:40:04 archnet transmission-daemon[313]: [2016-11-17 03:40:04.967] Couldn't connect socket 63 to 2a02:c7f:600:af00:b034:3267:417b:1d5f, port 51413 (errno 99 - Cannot assign requested address
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:5ef5:79fb:189c:397d:ac02:4538, port 12346 (errno 99 - Cannot assign requested address)
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:5ef5:79fd:87d:1ba4:a152:dd82, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:5ef5:79fd:34bc:993:b3b8:ee95, port 42946 (errno 99 - Cannot assign requested address)
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:9d38:6abd:84:32e3:b218:5789, port 35576 (errno 99 - Cannot assign requested address) (
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:9d38:6abd:383f:2490:44c5:e4, port 45682 (errno 99 - Cannot assign requested address) (
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:9d38:90d7:2c36:36d9:a500:f02c, port 10603 (errno 99 - Cannot assign requested address)
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:5ef5:79fd:3ce2:278b:adb5:7944, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:5ef5:79fd:3ce2:278b:adb5:7944, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:9d38:6abd:30e3:ad0:e73d:2893, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:06 archnet transmission-daemon[313]: [2016-11-17 03:40:06.967] Couldn't connect socket 92 to 2001:0:9d38:6abd:30e3:ad0:e73d:2893, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:08 archnet transmission-daemon[313]: [2016-11-17 03:40:08.967] Couldn't connect socket 38 to 2601:85:4501:61aa:e0f9:dd4c:d654:a3cd, port 30793 (errno 99 - Cannot assign requested address
Nov 17 03:40:08 archnet transmission-daemon[313]: [2016-11-17 03:40:08.967] Couldn't connect socket 38 to 2601:85:4501:61aa:e0f9:dd4c:d654:a3cd, port 30793 (errno 99 - Cannot assign requested address
Nov 17 03:40:09 archnet transmission-daemon[313]: [2016-11-17 03:40:09.968] Couldn't connect socket 48 to 2a02:1810:9d17:fc00:a558:e1f2:6c46:d63a, port 41897 (errno 99 - Cannot assign requested addre
Nov 17 03:40:09 archnet transmission-daemon[313]: [2016-11-17 03:40:09.968] Couldn't connect socket 48 to 2a02:1810:9d17:fc00:a558:e1f2:6c46:d63a, port 41897 (errno 99 - Cannot assign requested addre
Nov 17 03:40:11 archnet transmission-daemon[313]: [2016-11-17 03:40:11.967] Couldn't connect socket 48 to 2001:0:9d38:6ab8:24d7:368b:743d:bc26, port 14844 (errno 99 - Cannot assign requested address)
Nov 17 03:40:23 archnet transmission-daemon[313]: [2016-11-17 03:40:23.967] Couldn't connect socket 36 to 2001:0:9d38:90d7:2407:1849:a9ea:f5a9, port 40414 (errno 99 - Cannot assign requested address)
Nov 17 03:40:23 archnet transmission-daemon[313]: [2016-11-17 03:40:23.967] Couldn't connect socket 36 to 2001:0:9d38:90d7:2867:9a9b:b0be:8881, port 11337 (errno 99 - Cannot assign requested address)
Nov 17 03:40:28 archnet transmission-daemon[313]: [2016-11-17 03:40:28.967] Couldn't connect socket 51 to 2001:0:9d38:6abd:86b:211c:a128:34f1, port 40501 (errno 99 - Cannot assign requested address)
Nov 17 03:40:28 archnet transmission-daemon[313]: [2016-11-17 03:40:28.967] Couldn't connect socket 51 to 2001:0:9d38:6abd:88e:1654:d198:d941, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:28 archnet transmission-daemon[313]: [2016-11-17 03:40:28.967] Couldn't connect socket 51 to 2001:0:9d38:6ab8:34ad:eca:a1ba:d6af, port 40501 (errno 99 - Cannot assign requested address)
Nov 17 03:40:28 archnet transmission-daemon[313]: [2016-11-17 03:40:28.967] Couldn't connect socket 51 to 2001:0:5ef5:79fb:1c53:3643:4006:8239, port 8999 (errno 99 - Cannot assign requested address)
Nov 17 03:40:28 archnet transmission-daemon[313]: [2016-11-17 03:40:28.967] Couldn't connect socket 51 to 2001:0:5ef5:79fd:34c7:3068:2b8f:67af, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:28 archnet transmission-daemon[313]: [2016-11-17 03:40:28.967] Couldn't connect socket 51 to 2001:0:9d38:6abd:e0:2dd3:af2b:4755, port 40500 (errno 99 - Cannot assign requested address) (
Nov 17 03:40:29 archnet transmission-daemon[313]: [2016-11-17 03:40:29.967] Couldn't connect socket 51 to 2001:0:5ef5:79fd:2825:20cc:937c:cb3c, port 64232 (errno 99 - Cannot assign requested address)
Nov 17 03:40:29 archnet transmission-daemon[313]: [2016-11-17 03:40:29.967] Couldn't connect socket 51 to 2001:0:9d38:6abd:1c53:9e5e:4387:6b5a, port 40500 (errno 99 - Cannot assign requested address)
Nov 17 03:40:29 archnet transmission-daemon[313]: [2016-11-17 03:40:29.967] Couldn't connect socket 51 to 2001:0:9d38:6abd:24d8:d7a:2d44:7c2, port 40500 (errno 99 - Cannot assign requested address) (
Nov 17 03:40:29 archnet transmission-daemon[313]: [2016-11-17 03:40:29.967] Couldn't connect socket 51 to 2001:0:9d38:90d7:1833:3fe6:bf90:d5b3, port 58908 (errno 99 - Cannot assign requested address)
Nov 17 03:40:29 archnet transmission-daemon[313]: [2016-11-17 03:40:29.967] Couldn't connect socket 51 to 2405:204:2087:67bc:fb08:e5cb:5ecc:ace, port 6881 (errno 99 - Cannot assign requested address)
Nov 17 03:40:31 archnet transmission-daemon[313]: [2016-11-17 03:40:31.967] Couldn't connect socket 48 to 2001:0:9d38:6ab8:108d:3fce:a0a2:5b88, port 6881 (errno 99 - Cannot assign requested address)
Nov 17 03:40:32 archnet transmission-daemon[313]: [2016-11-17 03:40:32.967] Couldn't connect socket 48 to 2001:0:5ef5:79fd:10a1:381e:a777:714c, port 63302 (errno 99 - Cannot assign requested address)
Nov 17 03:40:33 archnet transmission-daemon[313]: [2016-11-17 03:40:33.967] Couldn't connect socket 51 to 2602:306:3b37:6a70:ed51:80a0:8abd:cb96, port 50001 (errno 99 - Cannot assign requested addres
Nov 17 03:40:33 archnet transmission-daemon[313]: [2016-11-17 03:40:33.967] Couldn't connect socket 51 to 2602:306:3b37:6a70:ed51:80a0:8abd:cb96, port 50001 (errno 99 - Cannot assign requested addres
Nov 17 03:40:35 archnet transmission-daemon[313]: [2016-11-17 03:40:35.967] Couldn't connect socket 51 to 2602:306:8b10:33c0:d1d0:40e1:e538:9824, port 51930 (errno 99 - Cannot assign requested addres
Nov 17 03:40:35 archnet transmission-daemon[313]: [2016-11-17 03:40:35.967] Couldn't connect socket 51 to 2602:306:8b10:33c0:d1d0:40e1:e538:9824, port 51930 (errno 99 - Cannot assign requested addres
Nov 17 03:40:35 archnet transmission-daemon[313]: [2016-11-17 03:40:35.967] Couldn't connect socket 51 to 2601:601:8a02:dc0:2dca:d74a:f030:e279, port 40500 (errno 99 - Cannot assign requested address
Nov 17 03:40:35 archnet transmission-daemon[313]: [2016-11-17 03:40:35.967] Couldn't connect socket 51 to 2602:30a:2c65:c200:b1e3:470c:f6ae:ccaa, port 40500 (errno 99 - Cannot assign requested addres
Nov 17 03:40:35 archnet transmission-daemon[313]: [2016-11-17 03:40:35.967] Couldn't connect socket 51 to 2a02:2149:8237:a200:354a:8b7:d001:b20a, port 40500 (errno 99 - Cannot assign requested addres
Nov 17 03:40:39 archnet transmission-daemon[313]: [2016-11-17 03:40:39.967] Couldn't connect socket 51 to 2001:0:5ef5:79fd:381f:1e95:b85c:1fe9, port 25163 (errno 99 - Cannot assign requested address)
Nov 17 03:40:39 archnet transmission-daemon[313]: [2016-11-17 03:40:39.967] Couldn't connect socket 51 to 2001:0:5ef5:79fd:381f:1e95:b85c:1fe9, port 25163 (errno 99 - Cannot assign requested address)
Nov 17 03:40:44 archnet transmission-daemon[313]: [2016-11-17 03:40:44.967] Couldn't connect socket 51 to 2001:0:9d38:90d7:4f:3180:d8d1:1d3f, port 30238 (errno 99 - Cannot assign requested address) (
Nov 17 03:40:49 archnet transmission-daemon[313]: [2016-11-17 03:40:49.967] Couldn't connect socket 56 to 2001:0:5ef5:79fd:2047:d9fc:b69f:8ee2, port 53787 (errno 99 - Cannot assign requested address)
Nov 17 03:40:49 archnet transmission-daemon[313]: [2016-11-17 03:40:49.967] Couldn't connect socket 56 to 2a02:2149:8154:c00:f0f2:3b09:7bd8:a7a7, port 40500 (errno 99 - Cannot assign requested addres
Nov 17 03:40:49 archnet transmission-daemon[313]: [2016-11-17 03:40:49.967] Couldn't connect socket 56 to 2001:0:5ef5:79fd:24bc:38b2:203b:a5a6, port 64611 (errno 99 - Cannot assign requested address)
Nov 17 03:40:50 archnet transmission-daemon[313]: [2016-11-17 03:40:50.967] Couldn't connect socket 56 to 2001:0:9d38:6ab8:3cd6:6a6:fae1:ec0e, port 8999 (errno 99 - Cannot assign requested address) (
Nov 17 03:40:50 archnet transmission-daemon[313]: [2016-11-17 03:40:50.967] Couldn't connect socket 56 to 2001:0:9d38:6abd:2cef:3bca:b275:ce38, port 40507 (errno 99 - Cannot assign requested address)

[Feature Request] Torrent Tagging / Categories

I'm Leeching and Seeding hundreds of torrents at the same time, so it's obvious I have to sort them in one way or another.
Unfortunately Transmission seems to don't have any Tagging functionality that would allow me to give my Torrents additional names like: Movie, Music, Sorted, Not-Sorted, To Fix, Fixed etc. which improves workflow by alot.
For now I have to scroll through all the torrents and check their directory to somehow guess which ones are sorted and which ones aren't.

I bet it's a hard thing to implement, looking at how old Transmission is and still doesn't have such basic options.

My setup:
Arch Linux Server Machine
transmission-cli 2.92-5
Torrents managed through Web Interface

[feature request] Add an automatic prioritizer for files

When downloading a torrent with multiple files, I most often want to be able to access the "first" file before the rest, so I increase its priority and often lower the third and further files priorities. It would be awesome if that could be selected to happen automatically.

I'm sure it is possible to find some heuristic to figure out the order of the files since they often follow one of a few naming schemes, the most common being that many files have the same filename, except one or two digits that are increased.

Transmission hardcoded to link against libcrypto 0.9.8 makes build not work with newer openssl

This is a follow-up issue, discussed on the forum in: https://forum.transmissionbt.com/viewtopic.php?f=4&t=18178

Transmission's build files seem to have hard-codded the use of libcrypto 0.9.8 som time around version 2.90. As a result, when bulding, it fails to link on newer versions of macports. This is discussed in https://trac.macports.org/ticket/52749#comment:4

Older versions (specifically 2.84) compile and work fine even with the latest version of openssl. Could you please review and hopefully undo the commits discussed in the comment linked above in macports? It seems like the version was pinned intentionally, but this does not seem to be the best option anymore.

Unify settings folder for GUI and CLI versions

The GUI and CLI versions of Transmission seem to be using completely different config files and folders. Even the formats are different (.plist for the GUI version and .json for the CLI.)

Suggest to make this identical for both versions, and if the paths to the config files have to be different because of Homebrew/macOS conventions, a simple symbolic link can unify them.

This way you can use GUI and CLI interchangeably, which I don't see why you shouldn't be able to do. Probably get rid of some surplus code, too.

build failure on osx

Fails to build using autogen.sh or cmake. Used to build fine from subversion repo using cmake.
osx: 10.11.6

$ git clone --recursive https://github.com/transmission/transmission /tmp/transmission    
Cloning into '/tmp/transmission'...
remote: Counting objects: 92704, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 92704 (delta 0), reused 0 (delta 0), pack-reused 92697
Receiving objects: 100% (92704/92704), 74.51 MiB | 1.78 MiB/s, done.
Resolving deltas: 100% (71864/71864), done.
Submodule 'third-party/libevent' (https://github.com/transmission/libevent) registered for path 'third-party/libevent'
Cloning into '/private/tmp/transmission/third-party/libevent'...
Submodule path 'third-party/libevent': checked out 'c51b159cff9f5e86696f5b9a4c6f517276056258'

$ cd /tmp/transmission

$ ./autogen.sh
creating libtransmission/version.h
m4/glib-gettext.m4:39: error: m4_copy: won't overwrite defined macro: glib_DEFUN
m4/glib-gettext.m4:39: the top level
autom4te: /usr/bin/m4 failed with exit status: 1
aclocal: error: echo failed with exit status: 1
autoreconf: /opt/local/bin/aclocal failed with exit status: 1

$ mkdir build && cd build
$ cmake ..
-- The C compiler identification is AppleClang 8.0.0.8000038
-- The CXX compiler identification is AppleClang 8.0.0.8000038
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Git: /opt/local/bin/git (found version "2.10.1")
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
-- Found CURL: /usr/lib/libcurl.dylib (found suitable version "7.43.0", minimum required is "7.15.4")
-- Found ICONV: /usr/lib/libiconv.dylib
-- Performing Test ICONV_SECOND_ARGUMENT_IS_CONST
-- Performing Test ICONV_SECOND_ARGUMENT_IS_CONST - Failed
-- Found OpenSSL: /opt/local/lib/libssl.dylib;/opt/local/lib/libcrypto.dylib (found suitable version "1.0.2j", minimum required is "0.9.7")
-- Checking for modules 'gtk+-3.0>=3.4.0;glib-2.0>=2.32.0;gio-2.0>=2.26.0;gmodule-2.0>=2.32.0;gthread-2.0>=2.32.0'
--
-- Found ZLIB: /usr/lib/libz.dylib (found suitable version "1.2.5", minimum required is "1.2.3")
-- Found EVENT2: /opt/local/lib/libevent.dylib (found suitable version "2.0.22-stable", minimum required is "2.0.10")
-- Could NOT find NATPMP (missing:  NATPMP_LIBRARY NATPMP_INCLUDE_DIR)
-- Found MINIUPNPC: /opt/local/lib/libminiupnpc.dylib (found version "1.9")
-- Could NOT find DHT (missing:  DHT_LIBRARY DHT_INCLUDE_DIR)
-- Could NOT find UTP (missing:  UTP_LIBRARY UTP_INCLUDE_DIR)
-- Could NOT find B64 (missing:  B64_LIBRARY B64_INCLUDE_DIR)
-- Looking for sys/inotify.h
-- Looking for sys/inotify.h - not found
-- Looking for inotify_init
-- Looking for inotify_init - not found
-- Looking for include files sys/types.h, sys/event.h
-- Looking for include files sys/types.h, sys/event.h - found
-- Looking for kqueue
-- Looking for kqueue - found
-- Checking for module 'libsystemd'
--   No package 'libsystemd' found
-- Performing Test NO_LFS_MACROS_REQUIRED
-- Performing Test NO_LFS_MACROS_REQUIRED - Success
-- Looking for stdbool.h
-- Looking for stdbool.h - found
-- Looking for sys/statvfs.h
-- Looking for sys/statvfs.h - found
-- Looking for xfs/xfs.h
-- Looking for xfs/xfs.h - not found
-- Looking for xlocale.h
-- Looking for xlocale.h - found
-- Looking for libintl.h
-- Looking for libintl.h - not found
-- Looking for _configthreadlocale
-- Looking for _configthreadlocale - not found
-- Looking for canonicalize_file_name
-- Looking for canonicalize_file_name - not found
-- Looking for daemon
-- Looking for daemon - found
-- Looking for fallocate64
-- Looking for fallocate64 - not found
-- Looking for getmntent
-- Looking for getmntent - not found
-- Looking for getpagesize
-- Looking for getpagesize - found
-- Looking for htonll
-- Looking for htonll - not found
-- Looking for localtime_r
-- Looking for localtime_r - found
-- Looking for memmem
-- Looking for memmem - found
-- Looking for mkdtemp
-- Looking for mkdtemp - found
-- Looking for ntohll
-- Looking for ntohll - not found
-- Looking for posix_fadvise
-- Looking for posix_fadvise - not found
-- Looking for posix_fallocate
-- Looking for posix_fallocate - not found
-- Looking for posix_memalign
-- Looking for posix_memalign - found
-- Looking for pread
-- Looking for pread - found
-- Looking for pwrite
-- Looking for pwrite - found
-- Looking for statvfs
-- Looking for statvfs - found
-- Looking for strlcpy
-- Looking for strlcpy - found
-- Looking for strsep
-- Looking for strsep - found
-- Looking for syslog
-- Looking for syslog - found
-- Looking for uselocale
-- Looking for uselocale - found
-- Looking for valloc
-- Looking for valloc - found
-- Looking for libintl_gettext in intl
-- Looking for libintl_gettext in intl - not found
-- Looking for sqrt in m
-- Looking for sqrt in m - found
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/transmission/build

$ make -s
Scanning dependencies of target utp-7c4f19abdf
[  0%] Creating directories for 'utp-7c4f19abdf'
[  1%] Performing download step (download, verify and extract) for 'utp-7c4f19abdf'
-- downloading...
    src='https://github.com/transmission/libutp/archive/7c4f19abdf.tar.gz'
    dst='/tmp/transmission/build/third-party/utp-7c4f19abdf/src/7c4f19abdf.tar.gz'
    timeout='none'
-- [download 0% complete]
-- [download 2% complete]
-- [download 4% complete]
-- [download 6% complete]
-- [download 8% complete]
-- [download 10% complete]
-- [download 12% complete]
-- [download 13% complete]
-- [download 15% complete]
-- [download 17% complete]
-- [download 19% complete]
-- [download 21% complete]
-- [download 23% complete]
-- [download 25% complete]
-- [download 26% complete]
-- [download 28% complete]
-- [download 30% complete]
-- [download 32% complete]
-- [download 33% complete]
-- [download 35% complete]
-- [download 37% complete]
-- [download 39% complete]
-- [download 41% complete]
-- [download 43% complete]
-- [download 45% complete]
-- [download 47% complete]
-- [download 49% complete]
-- [download 51% complete]
-- [download 52% complete]
-- [download 53% complete]
-- [download 55% complete]
-- [download 57% complete]
-- [download 59% complete]
-- [download 61% complete]
-- [download 63% complete]
-- [download 65% complete]
-- [download 67% complete]
-- [download 69% complete]
-- [download 71% complete]
-- [download 73% complete]
-- [download 75% complete]
-- [download 77% complete]
-- [download 79% complete]
-- [download 80% complete]
-- [download 82% complete]
-- [download 84% complete]
-- [download 86% complete]
-- [download 88% complete]
-- [download 90% complete]
-- [download 92% complete]
-- [download 94% complete]
-- [download 96% complete]
-- [download 98% complete]
-- [download 100% complete]
-- verifying file...
    file='/tmp/transmission/build/third-party/utp-7c4f19abdf/src/7c4f19abdf.tar.gz'
-- Downloading... done
-- extracting...
    src='/tmp/transmission/build/third-party/utp-7c4f19abdf/src/7c4f19abdf.tar.gz'
    dst='/tmp/transmission/build/third-party/utp-7c4f19abdf/src/utp-7c4f19abdf'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[  1%] Performing patch step for 'utp-7c4f19abdf'
patching file utp.cpp
patching file utp.h
patching file utp.cpp
[  2%] No update step for 'utp-7c4f19abdf'
[  3%] Performing configure step for 'utp-7c4f19abdf'
-- The CXX compiler identification is AppleClang 8.0.0.8000038
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

    CMAKE_C_FLAGS


-- Build files have been written to: /tmp/transmission/build/third-party/utp-7c4f19abdf/src/utp-7c4f19abdf-build
[  4%] Performing build step for 'utp-7c4f19abdf'
Scanning dependencies of target utp
[ 33%] Building CXX object CMakeFiles/utp.dir/utp.cpp.o
In file included from /tmp/transmission/build/third-party/utp-7c4f19abdf/src/utp-7c4f19abdf/utp.cpp:78:
/tmp/transmission/build/third-party/utp-7c4f19abdf/src/utp-7c4f19abdf/./utp_config.h:11:2: warning: implement this in libtransmission [-W#warnings]
#warning implement this in libtransmission
^
1 warning generated.
[ 66%] Building CXX object CMakeFiles/utp.dir/utp_utils.cpp.o
[100%] Linking CXX static library libutp.a
[100%] Built target utp
[  5%] Performing install step for 'utp-7c4f19abdf'
[100%] Built target utp
Install the project...
-- Install configuration: ""
-- Installing: /tmp/transmission/build/third-party/utp-7c4f19abdf/lib/libutp.a
-- Installing: /tmp/transmission/build/third-party/utp-7c4f19abdf/include/libutp/utp.h
-- Installing: /tmp/transmission/build/third-party/utp-7c4f19abdf/include/libutp/utypes.h
[  6%] Completed 'utp-7c4f19abdf'
[  6%] Built target utp-7c4f19abdf
Scanning dependencies of target natpmp-cf7f452d66
[  6%] Creating directories for 'natpmp-cf7f452d66'
[  7%] Performing download step (download, verify and extract) for 'natpmp-cf7f452d66'
-- downloading...
    src='https://github.com/transmission/libnatpmp/archive/cf7f452d66.tar.gz'
    dst='/tmp/transmission/build/third-party/natpmp-cf7f452d66/src/cf7f452d66.tar.gz'
    timeout='none'
-- [download 0% complete]
-- [download 5% complete]
-- [download 11% complete]
-- [download 16% complete]
-- [download 21% complete]
-- [download 27% complete]
-- [download 32% complete]
-- [download 37% complete]
-- [download 43% complete]
-- [download 48% complete]
-- [download 53% complete]
-- [download 59% complete]
-- [download 64% complete]
-- [download 69% complete]
-- [download 71% complete]
-- [download 77% complete]
-- [download 82% complete]
-- [download 88% complete]
-- [download 93% complete]
-- [download 98% complete]
-- [download 100% complete]
-- verifying file...
    file='/tmp/transmission/build/third-party/natpmp-cf7f452d66/src/cf7f452d66.tar.gz'
-- Downloading... done
-- extracting...
    src='/tmp/transmission/build/third-party/natpmp-cf7f452d66/src/cf7f452d66.tar.gz'
    dst='/tmp/transmission/build/third-party/natpmp-cf7f452d66/src/natpmp-cf7f452d66'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[  7%] Performing patch step for 'natpmp-cf7f452d66'
[  8%] No update step for 'natpmp-cf7f452d66'
[  9%] Performing configure step for 'natpmp-cf7f452d66'
-- The C compiler identification is AppleClang 8.0.0.8000038
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

    CMAKE_CXX_FLAGS


-- Build files have been written to: /tmp/transmission/build/third-party/natpmp-cf7f452d66/src/natpmp-cf7f452d66-build
[ 10%] Performing build step for 'natpmp-cf7f452d66'
Scanning dependencies of target natpmp
[ 33%] Building C object CMakeFiles/natpmp.dir/getgateway.c.o
[ 66%] Building C object CMakeFiles/natpmp.dir/natpmp.c.o
[100%] Linking C static library libnatpmp.a
[100%] Built target natpmp
[ 11%] Performing install step for 'natpmp-cf7f452d66'
[100%] Built target natpmp
Install the project...
-- Install configuration: ""
-- Installing: /tmp/transmission/build/third-party/natpmp-cf7f452d66/lib/libnatpmp.a
-- Installing: /tmp/transmission/build/third-party/natpmp-cf7f452d66/include/declspec.h
-- Installing: /tmp/transmission/build/third-party/natpmp-cf7f452d66/include/natpmp.h
[ 12%] Completed 'natpmp-cf7f452d66'
[ 12%] Built target natpmp-cf7f452d66
Scanning dependencies of target b64-c1e3323498
[ 13%] Creating directories for 'b64-c1e3323498'
[ 13%] Performing download step (download, verify and extract) for 'b64-c1e3323498'
-- downloading...
    src='https://github.com/transmission/libb64/archive/c1e3323498.tar.gz'
    dst='/tmp/transmission/build/third-party/b64-c1e3323498/src/c1e3323498.tar.gz'
    timeout='none'
-- [download 5% complete]
-- [download 15% complete]
-- [download 25% complete]
-- [download 35% complete]
-- [download 44% complete]
-- [download 54% complete]
-- [download 64% complete]
-- [download 66% complete]
-- [download 75% complete]
-- [download 85% complete]
-- [download 95% complete]
-- [download 100% complete]
-- verifying file...
    file='/tmp/transmission/build/third-party/b64-c1e3323498/src/c1e3323498.tar.gz'
-- Downloading... done
-- extracting...
    src='/tmp/transmission/build/third-party/b64-c1e3323498/src/c1e3323498.tar.gz'
    dst='/tmp/transmission/build/third-party/b64-c1e3323498/src/b64-c1e3323498'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 14%] Performing patch step for 'b64-c1e3323498'
patching file src/cencode.c
patching file src/cdecode.c
[ 15%] No update step for 'b64-c1e3323498'
[ 15%] Performing configure step for 'b64-c1e3323498'
-- The C compiler identification is AppleClang 8.0.0.8000038
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

    CMAKE_CXX_FLAGS


-- Build files have been written to: /tmp/transmission/build/third-party/b64-c1e3323498/src/b64-c1e3323498-build
[ 16%] Performing build step for 'b64-c1e3323498'
Scanning dependencies of target b64
[ 33%] Building C object CMakeFiles/b64.dir/src/cdecode.c.o
[ 66%] Building C object CMakeFiles/b64.dir/src/cencode.c.o
[100%] Linking C static library libb64.a
[100%] Built target b64
[ 17%] Performing install step for 'b64-c1e3323498'
[100%] Built target b64
Install the project...
-- Install configuration: ""
-- Installing: /tmp/transmission/build/third-party/b64-c1e3323498/lib/libb64.a
-- Installing: /tmp/transmission/build/third-party/b64-c1e3323498/include/b64
-- Installing: /tmp/transmission/build/third-party/b64-c1e3323498/include/b64/cdecode.h
-- Installing: /tmp/transmission/build/third-party/b64-c1e3323498/include/b64/cencode.h
-- Installing: /tmp/transmission/build/third-party/b64-c1e3323498/include/b64/decode.h
-- Installing: /tmp/transmission/build/third-party/b64-c1e3323498/include/b64/encode.h
[ 17%] Completed 'b64-c1e3323498'
[ 17%] Built target b64-c1e3323498
Scanning dependencies of target dht-cc379e406d
[ 18%] Creating directories for 'dht-cc379e406d'
[ 19%] Performing download step (download, verify and extract) for 'dht-cc379e406d'
-- downloading...
    src='https://github.com/transmission/dht/archive/cc379e406d.tar.gz'
    dst='/tmp/transmission/build/third-party/dht-cc379e406d/src/cc379e406d.tar.gz'
    timeout='none'
-- [download 0% complete]
-- [download 5% complete]
-- [download 10% complete]
-- [download 15% complete]
-- [download 19% complete]
-- [download 24% complete]
-- [download 29% complete]
-- [download 34% complete]
-- [download 39% complete]
-- [download 44% complete]
-- [download 49% complete]
-- [download 54% complete]
-- [download 58% complete]
-- [download 63% complete]
-- [download 65% complete]
-- [download 70% complete]
-- [download 75% complete]
-- [download 80% complete]
-- [download 85% complete]
-- [download 90% complete]
-- [download 94% complete]
-- [download 99% complete]
-- [download 100% complete]
-- verifying file...
    file='/tmp/transmission/build/third-party/dht-cc379e406d/src/cc379e406d.tar.gz'
-- Downloading... done
-- extracting...
    src='/tmp/transmission/build/third-party/dht-cc379e406d/src/cc379e406d.tar.gz'
    dst='/tmp/transmission/build/third-party/dht-cc379e406d/src/dht-cc379e406d'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 20%] Performing patch step for 'dht-cc379e406d'
[ 20%] No update step for 'dht-cc379e406d'
[ 21%] Performing configure step for 'dht-cc379e406d'
-- The C compiler identification is AppleClang 8.0.0.8000038
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

    CMAKE_CXX_FLAGS


-- Build files have been written to: /tmp/transmission/build/third-party/dht-cc379e406d/src/dht-cc379e406d-build
[ 21%] Performing build step for 'dht-cc379e406d'
Scanning dependencies of target dht
[ 50%] Building C object CMakeFiles/dht.dir/dht.c.o
[100%] Linking C static library libdht.a
[100%] Built target dht
[ 21%] Performing install step for 'dht-cc379e406d'
[100%] Built target dht
Install the project...
-- Install configuration: ""
-- Installing: /tmp/transmission/build/third-party/dht-cc379e406d/lib/libdht.a
-- Installing: /tmp/transmission/build/third-party/dht-cc379e406d/include/dht/dht.h
[ 22%] Completed 'dht-cc379e406d'
[ 22%] Built target dht-cc379e406d
Scanning dependencies of target transmission
[ 22%] Building C object libtransmission/CMakeFiles/transmission.dir/announcer.c.o
[ 23%] Building C object libtransmission/CMakeFiles/transmission.dir/announcer-http.c.o
[ 24%] Building C object libtransmission/CMakeFiles/transmission.dir/announcer-udp.c.o
/tmp/transmission/libtransmission/announcer-udp.c:45:8: warning: cast from 'struct sockaddr *' to 'struct sockaddr_in *' increases required alignment
    from 1 to 4 [-Wcast-align]
    ((struct sockaddr_in *)sa)->sin_port = htons (port);
    ^~~~~~~~~~~~~~~~~~~~~~~~
/tmp/transmission/libtransmission/announcer-udp.c:47:8: warning: cast from 'struct sockaddr *' to 'struct sockaddr_in6 *' increases required alignment
    from 1 to 4 [-Wcast-align]
    ((struct sockaddr_in6 *)sa)->sin6_port = htons (port);
    ^~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
[ 24%] Building C object libtransmission/CMakeFiles/transmission.dir/bandwidth.c.o
[ 25%] Building C object libtransmission/CMakeFiles/transmission.dir/bitfield.c.o
[ 26%] Building C object libtransmission/CMakeFiles/transmission.dir/blocklist.c.o
[ 26%] Building C object libtransmission/CMakeFiles/transmission.dir/cache.c.o
[ 27%] Building C object libtransmission/CMakeFiles/transmission.dir/clients.c.o
[ 28%] Building C object libtransmission/CMakeFiles/transmission.dir/completion.c.o
[ 28%] Building C object libtransmission/CMakeFiles/transmission.dir/ConvertUTF.c.o
[ 29%] Building C object libtransmission/CMakeFiles/transmission.dir/crypto.c.o
[ 30%] Building C object libtransmission/CMakeFiles/transmission.dir/crypto-utils.c.o
[ 30%] Building C object libtransmission/CMakeFiles/transmission.dir/crypto-utils-openssl.c.o
[ 31%] Building C object libtransmission/CMakeFiles/transmission.dir/error.c.o
[ 32%] Building C object libtransmission/CMakeFiles/transmission.dir/fdlimit.c.o
[ 32%] Building C object libtransmission/CMakeFiles/transmission.dir/file.c.o
[ 33%] Building C object libtransmission/CMakeFiles/transmission.dir/file-posix.c.o
[ 34%] Building C object libtransmission/CMakeFiles/transmission.dir/handshake.c.o
[ 34%] Building C object libtransmission/CMakeFiles/transmission.dir/history.c.o
[ 35%] Building C object libtransmission/CMakeFiles/transmission.dir/inout.c.o
[ 36%] Building C object libtransmission/CMakeFiles/transmission.dir/list.c.o
[ 36%] Building C object libtransmission/CMakeFiles/transmission.dir/log.c.o
[ 37%] Building C object libtransmission/CMakeFiles/transmission.dir/magnet.c.o
[ 38%] Building C object libtransmission/CMakeFiles/transmission.dir/makemeta.c.o
[ 38%] Building C object libtransmission/CMakeFiles/transmission.dir/metainfo.c.o
[ 39%] Building C object libtransmission/CMakeFiles/transmission.dir/natpmp.c.o
[ 40%] Building C object libtransmission/CMakeFiles/transmission.dir/net.c.o
/tmp/transmission/libtransmission/net.c:503:30: warning: cast from 'struct sockaddr *' to 'struct sockaddr_in *' increases required alignment from 1
    to 4 [-Wcast-align]
        (unsigned char*)& ((struct sockaddr_in*)sa)->sin_addr;
                            ^~~~~~~~~~~~~~~~~~~~~~~
/tmp/transmission/libtransmission/net.c:511:30: warning: cast from 'struct sockaddr *' to 'struct sockaddr_in6 *' increases required alignment from 1
    to 4 [-Wcast-align]
        (unsigned char*)& ((struct sockaddr_in6*)sa)->sin6_addr;
                            ^~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
[ 40%] Building C object libtransmission/CMakeFiles/transmission.dir/peer-io.c.o
[ 41%] Building C object libtransmission/CMakeFiles/transmission.dir/peer-mgr.c.o
/tmp/transmission/libtransmission/peer-mgr.c:1717:11: warning: 'tr_torrentSetActivityDate' is deprecated [-Wdeprecated-declarations]
        tr_torrentSetActivityDate (tor, now);
        ^
/tmp/transmission/libtransmission/transmission.h:2045:20: note: 'tr_torrentSetActivityDate' has been explicitly marked deprecated here
TR_DEPRECATED void tr_torrentSetActivityDate (tr_torrent * torrent,
                ^
/tmp/transmission/libtransmission/peer-mgr.c:1733:11: warning: 'tr_torrentSetActivityDate' is deprecated [-Wdeprecated-declarations]
        tr_torrentSetActivityDate (tor, now);
        ^
/tmp/transmission/libtransmission/transmission.h:2045:20: note: 'tr_torrentSetActivityDate' has been explicitly marked deprecated here
TR_DEPRECATED void tr_torrentSetActivityDate (tr_torrent * torrent,
                ^
2 warnings generated.
[ 42%] Building C object libtransmission/CMakeFiles/transmission.dir/peer-msgs.c.o
[ 42%] Building C object libtransmission/CMakeFiles/transmission.dir/platform.c.o
[ 43%] Building C object libtransmission/CMakeFiles/transmission.dir/platform-quota.c.o
[ 44%] Building C object libtransmission/CMakeFiles/transmission.dir/port-forwarding.c.o
[ 44%] Building C object libtransmission/CMakeFiles/transmission.dir/ptrarray.c.o
[ 45%] Building C object libtransmission/CMakeFiles/transmission.dir/quark.c.o
[ 46%] Building C object libtransmission/CMakeFiles/transmission.dir/resume.c.o
/tmp/transmission/libtransmission/resume.c:802:7: warning: 'tr_torrentSetActivityDate' is deprecated [-Wdeprecated-declarations]
    tr_torrentSetActivityDate (tor, i);
    ^
/tmp/transmission/libtransmission/transmission.h:2045:20: note: 'tr_torrentSetActivityDate' has been explicitly marked deprecated here
TR_DEPRECATED void tr_torrentSetActivityDate (tr_torrent * torrent,
                ^
1 warning generated.
[ 46%] Building C object libtransmission/CMakeFiles/transmission.dir/rpcimpl.c.o
[ 47%] Building C object libtransmission/CMakeFiles/transmission.dir/rpc-server.c.o
[ 48%] Building C object libtransmission/CMakeFiles/transmission.dir/session.c.o
[ 48%] Building C object libtransmission/CMakeFiles/transmission.dir/session-id.c.o
[ 49%] Building C object libtransmission/CMakeFiles/transmission.dir/stats.c.o
[ 50%] Building C object libtransmission/CMakeFiles/transmission.dir/torrent.c.o
/tmp/transmission/libtransmission/torrent.c:895:3: warning: 'tr_torrentSetAddedDate' is deprecated [-Wdeprecated-declarations]
tr_torrentSetAddedDate (tor, tr_time ()); /* this is a default value to be
^
/tmp/transmission/libtransmission/transmission.h:2041:20: note: 'tr_torrentSetAddedDate' has been explicitly marked deprecated here
TR_DEPRECATED void tr_torrentSetAddedDate (tr_torrent * torrent,
                ^
1 warning generated.
[ 50%] Building C object libtransmission/CMakeFiles/transmission.dir/torrent-ctor.c.o
[ 51%] Building C object libtransmission/CMakeFiles/transmission.dir/torrent-magnet.c.o
[ 52%] Building C object libtransmission/CMakeFiles/transmission.dir/tr-dht.c.o
[ 52%] Building C object libtransmission/CMakeFiles/transmission.dir/trevent.c.o
[ 53%] Building C object libtransmission/CMakeFiles/transmission.dir/tr-getopt.c.o
[ 54%] Building C object libtransmission/CMakeFiles/transmission.dir/tr-lpd.c.o
[ 54%] Building C object libtransmission/CMakeFiles/transmission.dir/tr-udp.c.o
[ 55%] Building C object libtransmission/CMakeFiles/transmission.dir/tr-utp.c.o
[ 56%] Building C object libtransmission/CMakeFiles/transmission.dir/upnp.c.o
[ 56%] Building C object libtransmission/CMakeFiles/transmission.dir/utils.c.o
[ 57%] Building C object libtransmission/CMakeFiles/transmission.dir/variant-benc.c.o
[ 58%] Building C object libtransmission/CMakeFiles/transmission.dir/variant.c.o
[ 58%] Building C object libtransmission/CMakeFiles/transmission.dir/variant-json.c.o
[ 59%] Building C object libtransmission/CMakeFiles/transmission.dir/verify.c.o
[ 60%] Building C object libtransmission/CMakeFiles/transmission.dir/watchdir.c.o
[ 60%] Building C object libtransmission/CMakeFiles/transmission.dir/watchdir-generic.c.o
[ 61%] Building C object libtransmission/CMakeFiles/transmission.dir/watchdir-kqueue.c.o
[ 62%] Building C object libtransmission/CMakeFiles/transmission.dir/web.c.o
[ 62%] Building C object libtransmission/CMakeFiles/transmission.dir/webseed.c.o
[ 63%] Building C object libtransmission/CMakeFiles/transmission.dir/wildmat.c.o
[ 64%] Linking C static library libtransmission.a
[ 64%] Built target transmission
Scanning dependencies of target transmission-test
[ 65%] Building C object libtransmission/CMakeFiles/transmission-test.dir/libtransmission-test.c.o
[ 65%] Linking C static library libtransmission-test.a
[ 65%] Built target transmission-test
Scanning dependencies of target transmission-test-utils
[ 66%] Building C object libtransmission/CMakeFiles/transmission-test-utils.dir/utils-test.c.o
[ 66%] Linking C executable transmission-test-utils
Undefined symbols for architecture x86_64:
"_libiconv", referenced from:
    _to_utf8 in libtransmission.a(utils.c.o)
"_libiconv_close", referenced from:
    _to_utf8 in libtransmission.a(utils.c.o)
"_libiconv_open", referenced from:
    _to_utf8 in libtransmission.a(utils.c.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [libtransmission/transmission-test-utils] Error 1
make[1]: *** [libtransmission/CMakeFiles/transmission-test-utils.dir/all] Error 2
make: *** [all] Error 2

Support webrtc for webtorrent clients

Hi, how difficult would it be to support clients connecting via webrtc?

Gitocin bounty details:

For all people who will be working on from Gitcoin required things is (the % is what you will be paid) :

Websocket tracker support [25%]
Exchange file beetween nodes [70%]
Use webtorrent if node is behind nat and can't use nat-pmp or upnp [5%]
The port for webtorrent doesn't need to be the same than regular torrent, (cause webtorrent use ICE)

transmission 2.92 crash attempting to download torrent

Hi.

I've took torrent from this page:
https://sdi-tool.org/download/?lang=en

SDI_Update.torrent.zip

During download transmission constantly crashs with the following trace:

Thread 4 "transmission-gt" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fb432550700 (LWP 5392)]
0x000055775a07e1e5 in tr_dh_secret_derive (raw_handle=0x0, prepend_data=prepend_data@entry=0x55775a0c3035, 
    prepend_data_size=prepend_data_size@entry=4, append_data=append_data@entry=0x0, 
    append_data_size=append_data_size@entry=0, hash=hash@entry=0x7fb43254e6c0 "0")
    at crypto-utils-fallback.c:63
63  crypto-utils-fallback.c: Нет такого файла или каталога.
(gdb) bt
#0  0x000055775a07e1e5 in tr_dh_secret_derive (raw_handle=0x0, prepend_data=prepend_data@entry=0x55775a0c3035, 
    prepend_data_size=prepend_data_size@entry=4, append_data=append_data@entry=0x0, 
    append_data_size=append_data_size@entry=0, hash=hash@entry=0x7fb43254e6c0 "0")
    at crypto-utils-fallback.c:63
#1  0x000055775a0a6f90 in tr_cryptoSecretKeySha1 (crypto=<optimized out>, 
    prepend_data=prepend_data@entry=0x55775a0c3035, prepend_data_size=prepend_data_size@entry=4, 
    append_data=append_data@entry=0x0, append_data_size=append_data_size@entry=0, 
    hash=hash@entry=0x7fb43254e6c0 "0") at crypto.c:185
#2  0x000055775a0a7cfc in computeRequestHash (handshake=0x7fb41c756e00, hash=0x7fb43254e6c0 "0", 
    name=0x55775a0c3035 "req1") at handshake.c:392
#3  readYb (inbuf=0x7fb41c54ee00, handshake=0x7fb41c756e00) at handshake.c:438
#4  canRead (io=<optimized out>, arg=0x7fb41c756e00, piece=<optimized out>) at handshake.c:1038
#5  0x000055775a08fcd9 in canReadWrapper (io=0x7fb41c7fcda0) at peer-io.c:206
#6  0x000055775a0b4045 in UTP_ProcessIncoming (conn=conn@entry=0x7fb41c975d30, 
    packet=packet@entry=0x7fb43254eb90 "\001", len=len@entry=384, syn=syn@entry=false) at utp.cpp:2158
#7  0x000055775a0b4e39 in UTP_IsIncomingUTP (incoming_proc=incoming_proc@entry=0x55775a070890 <incoming>, 
    send_to_proc=send_to_proc@entry=0x55775a070a60 <tr_utpSendTo>, 
    send_to_userdata=send_to_userdata@entry=0x55775b117600, buffer=buffer@entry=0x7fb43254eb90 "\001", 
    len=len@entry=384, to=0x7fb43254eb10, tolen=16) at utp.cpp:2587
#8  0x000055775a070b6b in tr_utpPacket (buf=buf@entry=0x7fb43254eb90 "\001", buflen=buflen@entry=384, 
    from=from@entry=0x7fb43254eb10, fromlen=16, ss=ss@entry=0x55775b117600) at tr-utp.c:180
#9  0x000055775a07015d in event_callback (s=<optimized out>, type=<optimized out>, sv=0x55775b117600)
    at tr-udp.c:234
#10 0x00007fb440dcc851 in event_persist_closure (ev=<optimized out>, base=0x7fb41c0008f0)
    at /var/tmp/portage/dev-libs/libevent-2.0.22/work/libevent-2.0.22-stable/event.c:1319
#11 event_process_active_single_queue (activeq=0x7fb41c000d30, base=0x7fb41c0008f0)
---Type <return> to continue, or q <return> to quit---
    at /var/tmp/portage/dev-libs/libevent-2.0.22/work/libevent-2.0.22-stable/event.c:1363
#12 event_process_active (base=<optimized out>)
    at /var/tmp/portage/dev-libs/libevent-2.0.22/work/libevent-2.0.22-stable/event.c:1438
#13 event_base_loop (base=base@entry=0x7fb41c0008f0, flags=flags@entry=0)
    at /var/tmp/portage/dev-libs/libevent-2.0.22/work/libevent-2.0.22-stable/event.c:1639
#14 0x00007fb440dcd70e in event_base_dispatch (event_base=event_base@entry=0x7fb41c0008f0)
    at /var/tmp/portage/dev-libs/libevent-2.0.22/work/libevent-2.0.22-stable/event.c:1468
#15 0x000055775a070ec8 in libeventThreadFunc (veh=0x55775af14320) at trevent.c:255
#16 0x000055775a0567bd in ThreadFunc (_t=0x55775af65770) at platform.c:104
#17 0x00007fb43ff97560 in start_thread (arg=0x7fb432550700) at pthread_create.c:333
#18 0x00007fb43fcdadcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Memory leaks found with AddressSanitizer

Running tests on AddressSanitizer (ASan)-enabled build of Transmission results in several of those tests failing.

Steps to reproduce:

  • Build from master and run the tests
$ git clone https://github.com/milloni/transmission.git
$ cd transmission
$ ./autogen.sh CFLAGS=-fsanitize=address CXXFLAGS=-fsanitize=address
$ make
$ make check 

This gives the following result (libtransmission/test-suite.log):
https://gist.github.com/milloni/b027e4e91b1ef1c15c5db56aab395a26

Platform info:
Fedora 24
Linux 4.7.5-200.fc24.x86_64
gcc 6.2.1
glibc 2.23

Flatpak package

Thanks a lot for your great work. I use Transmission since early 2008 and I am very happy with it.

I would love to install and update Transmission GTK as a flatpak package, because of the sandboxing (useful for an application receiving and sending so much on the net) and to get the new versions directly from the Transmission team.

So, I wrote a flatpak manifest file for building Transmission GTK from HEAD as a flatpak package against the Gnome 3.22 runtime. You can find it here: https://github.com/pdureau/flatpak-manifests It works!

Have you planned to adopt flatpak to distribute Transmission GTK (and maybe Transmission QT)?

Add groups usability

Today the only usage I have seen so far for groups is to filter the view of Transmission.
But why not to give those groups some usage ? I am thinking of having some properties linked to the groups like:

  • having different destination folder for Torrents
  • having different seed ration for those

And possibly having the support for groups with the API, for example when I add a file, I tag in the "seed" group so I know that I will retain this file forever.

Link support for web interface

Just screenshot :)

[censored]

(see selected text).

Yes, i know, include raw html in webgui is not secure and etc..., but, maybe possible strip all html and just make links for all https?://[^s]+?

when adding a duplicate torrent, harvest its info for the extant torrent to use

I'd like to have transmission capable of adding new tracker from torrent that point to the same file.
e.g. I added a torrent via the magnet link; I want to add trackers contained in the .torrent version of the same file; actually, transmission only says that it can't add the file because already in download

I'm on Linux, transmission-2.92

Easier recovery from temporarily missing data files ("No data found!")

I often download torrents via Transmission to my network drive (CIFS or AFP).

However, if I restart my Macbook and the drive isn't mounted yet - Transmission will stop that torrent (expected), but will not allow me to resume it (even if I later mount the network drive) without first removing the torrent then re-adding it. The message given below the torrent is:

Error: No data found! Ensure your drives are connected or use "Move Data File To...". To re-download, remove the torrent and re-add it.

Is there any way of making the resume process easier, so that you can simply right-click and resume and it will check if the files were where they were before?

Download won't start on Windows

Version 2.92, Windows 10 64bit. Both 64bit and 32bit Transmission get peers list, but after that torrent download won't start, freezing on 0%.

Unable to Change File Locations When Symbolically Linked

Hello. I use Transmission 2.92-5 on x86_64 GNU/Linux (4.6.4-1-ARCH). I have considered other BitTorrent clients, but the simplicity and stability of Transmission leaves little to be desired. It has all the functionality I need. Thank you.

If I set a torrent's download location to somewhere within a symbolically linked directory and later try to move the torrent's location to the link's target, Transmission refuses to change the download location. Stopping the torrent, deleting the link, and then changing the download location to the link's target works around this.

The file system is ZFS, and the symbolic link is relative.

[Info] stream files

Hello,

first i wanna thank you for this great torrent application,
i just wonder if there is any possibility to add stream file while they are in download progress !

Best regards,

Icons do not update when file type is changed

If a torrent download is renamed and the rename changes the file type, the icon is not updated in the main window.

For example, if I was downloading a file called MySharedPicture.doc, it would show a Word file icon. Now let's say it is actually a PNG file, so I rename it in Transmission to MySharedPicture.png and the icon in Transmission will stay a Word document (at least until the next time Transmission is run). Note also that QuickLook does handle the file correctly, just the icon is wrong.

Running macOS 10.12.

Add IPv6 support for RPC server

This is a follow up on Trac#2236.

In the Trac discussion, it is mentioned that IPv6 support requires changes to libevent. I decided to check this, but it turns out that IPv6 works fine with the current libevent.

You can verify this yourself by applying this dirty hack, which disables IPv4 and listens to IPv6 instead. Proof that it works.

Properly supporting IPv6 requires some changes to libtransmission/rpc-server.c, and maybe the addition of an additional configuration variable (rpc-bind-address-{ipv4,ipv6} instead of the current rpc-bind-address). I'm not familiar with the Transmission code at all, but if no one else is interested, I will attempt to create a patch myself.

Tasks added remotely don't start until Transmission window has focus

It's weird, I know.

I'm adding torrents remotely to a machine in my LAN (OS X 10.11.6, Transmission 2.92 b14714) via Remote Torrent Adder [0], which works great. I can see the torrents added in the web interface, everything is updated just fine.

However, the torrents I add remotely are always stuck in the "retrieving metadata" state, or "downloading from 0/0 clients". If I VNC to the machine I can see that Transmission is in fact not downloading anything. As soon as I bring the main window to the foreground, the tasks reactivate and start downloading or retrieving metadata immediately.

I know it sounds quite funny, but I've experienced this behavior consistently for quite some time now.

Let me know if I can do anything to help debugging.

[0] https://chrome.google.com/webstore/detail/remote-torrent-adder/oabphaconndgibllomdcjbfdghcmenci

[2.92 x64 daemon W8.1] Special character issues

Hey,

I saw something about fixed symbols in the commits but I'm not sure if this covers all special characters and cases, so here goes. Feel free to close it otherwise:

In Transmission 2.92, running as a 64-bit daemon on Windows 8.1, I've had two instances of unusuable torrents. The program couldn't handle a ':' or 'è' in the torrent name and produced an item in the list that wasn't usable because of a resume error. It left over a file without proper extension in the Resume folder that I also had to delete manually after getting rid of the item in question with Shift+Del.

These also couldn't be fixed by hand after the fact. I had to resort to torrent files that didn't have these characters.

"The handle is invalid" when calling script upon torrent completion

OS: WIndows 10
Transmission version: 2.92

I receive The handle is invalid. over STDERR when the "Call script when torrent is completed" script is called upon torrent completion. I'm unsure if this is an OS problem or an issue with Transmission on Windows 10.

To verify, I created a batch script with the following:

@echo off
echo. 2>C:\Temp\output.txt

The output.txt file contains The handle is invalid. after the torrent completes.

web gui returns empty list on newer browsers

In recent browsers like firefox dev edition and nightly, and chrome nightly, the web gui has been broken for some months. The gui loads, but the list of torrents remains empty. This is the console output in chrome:

jquery.min.js:4 Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.

Failed to load resource: the server responded with a status of 409 (Conflict)

100% CPU on macOS

I'm experiencing frequent 100% CPU usage on macOS 10.12 (also earlier) with only a single file transfer. Let me know how I can provide more information to help developers locate and resolve the problem.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.