Opened 9 years ago

Last modified 2 years ago

#2175 assigned Enhancement

support torrent tagging

Reported by: Elbandi Owned by: charles
Priority: Normal Milestone: Sometime
Component: libtransmission Version: 1.70
Severity: Normal Keywords: feature-disparity
Cc: woodzu123@…, stefan_erikss0n@…, wheex@…, transmission@…, monkeyman23555@…, domen@…, jobjorn@…, styx.mp@…, taem@…, thomas_reardon@…, transmissionbt@…, jisloane@…, plutonium94@…, sio.wtf@…, kenny@…, nrfoconnor+transmission@…, epdmitry@…, nikoli@…, chris@…, youngwook.kim@…, sebastien.andreatta@…, eirnym@…

Description

I wrote a little patch to tagging the torrents. The tags can be set over rpc with transmission-remote.

Attachments (1)

tagging-torrent.patch (9.0 KB) - added by Elbandi 9 years ago.

Download all attachments as: .zip

Change History (62)

comment:1 follow-up: Changed 9 years ago by charles

  • Type changed from Bug to Enhancement

Thanks for the patch!

However there's no C API for this, and also the tags are lost on shutdown. Is this intentional?

comment:2 Changed 9 years ago by charles

Also, how should this interplay with the mac client's "groups" feature?

comment:3 in reply to: ↑ 1 ; follow-up: Changed 9 years ago by Elbandi

Replying to charles:

However there's no C API for this, and also the tags are lost on shutdown. Is this intentional?

Oh, i forgot to saving tags :( I added save/resume to my patch.

Also, how should this interplay with the mac client's "groups" feature?

So, there is a "grouping" feature in mac client? i dont know about it.

Changed 9 years ago by Elbandi

comment:4 in reply to: ↑ 3 Changed 9 years ago by charles

Replying to Elbandi:

Replying to charles:

However there's no C API for this, and also the tags are lost on shutdown. Is this intentional?

Oh, i forgot to saving tags :( I added save/resume to my patch.

Also, how should this interplay with the mac client's "groups" feature?

So, there is a "grouping" feature in mac client? i dont know about it.

Yeah, that's because the people who implemented it decided to ignore the other clients, despite requests that they do it in a portable way, and now want libT and the other clients to clone the way they did it.

comment:5 Changed 9 years ago by Elbandi

I know some programing language including C, but this Objective-C not.

I have a look at the mac client code, and i can a little conclude that, what this "grouping" code do. But many things are not clean for me :/

My solution is, to add some "label" to torrent. But they made groups, and add the torrents to the groups. Right? But i cant see what is the group name, how to save/load this groups, etc.

comment:6 Changed 9 years ago by livings124

What the Mac client does is create a "group", which is essentially an id number with an associated name (and color, etc.). The group id can then be assigned to transfers. This way, group names can be changed in one location, and all torrents in that group will change at once.

comment:7 Changed 9 years ago by charles

  • Summary changed from Tagging torrent to support groups or tagging for torrents

comment:8 Changed 9 years ago by charles

#1492 has been marked as a duplicate of this ticket.

It's not a 1-to-1 match, but the two suggestions overlap so greatly that there's no point in doing both features.

comment:9 Changed 9 years ago by woodzu123

  • Cc woodzu123@… added

Any new ideas??

3 weeks and nobody ask for this very useful future.

What about storing tags in xml file, and sending that file to clients by RPC?

comment:10 Changed 9 years ago by charles

  • Summary changed from support groups or tagging for torrents to support torrent grouping

comment:11 Changed 9 years ago by Bytec

This is one of the most missing features in Transmission for me. I hope it will be implemented soon.

comment:12 Changed 9 years ago by XenoPhoenix

This is a sorely missing feature.

Implementing it solely on the client is completely the wrong way to go in my opinion.

This would be especially useful when running one transmission-daemon for several users as well as the afore mentioned reasons.

comment:13 Changed 8 years ago by mymantheman

  • Cc stefan_erikss0n@… added

seems like I created a duplicate of this ticket (http://trac.transmissionbt.com/ticket/2954)

Would love to see this feature in linux editions of transmission. I see great use of it.

comment:14 Changed 8 years ago by charles

  • Milestone changed from None Set to 2.00
  • Owner set to charles
  • Status changed from new to assigned

comment:15 in reply to: ↑ description Changed 8 years ago by szczetyk

  • Version changed from 1.70 to 1.91

Replying to Elbandi:

I wrote a little patch to tagging the torrents. The tags can be set over rpc with transmission-remote.

Big thnx 4 this patch, but how to apply/and use this feature ? Has it to be applied during compilation process ? Is it possible to use labels under webgui, maybe with some modification of it (webGUI) ?

Best regards.

comment:16 Changed 8 years ago by livings124

  • Version changed from 1.91 to 1.70

comment:17 Changed 8 years ago by charles

  • Keywords feature-disparity added

comment:18 Changed 8 years ago by charles

  • Component changed from Transmission to libtransmission
  • Summary changed from support torrent grouping to support torrent tagging

I'm of two minds about this ticket. Grouping (that is, only one group per torrent) is definitely the way to go wrt group features that affect behavior, such as a per-group priority level, or speed caps, or download directories.

For display-only, though, I still think tagging would be a useful feature. I wonder if there's an elegant way to have both features.

Last edited 8 years ago by charles (previous) (diff)

comment:19 Changed 8 years ago by Elbandi

I dont know, how the mac client do the grouping. but the "tagging" (or we call "labeling") i like: a torrent has many tags, however with grouping, torrent belongs to only one group.

I like tagging torrent type (music/movie/games/app), quality (xvid/dvd/hd, 128/192/256 kbit), language (english/eng-sub/hungarian), etc.

comment:20 Changed 8 years ago by mymantheman

tagging works great for me, but would like to be able to add different seed directories for specific tags, so it will be compatible with my ticket :) http://trac.transmissionbt.com/ticket/2954

(On a side note, I think that if a feature exist in one version and is incompatible with other client, which all depend on each other. An alternative (or rewritten) feature should be added for all clients, including on the one which is already working on.)

comment:21 follow-up: Changed 8 years ago by Longinus00

I am of two minds on the tagging vs. grouping debate. On the one hand, tagging is very helpful for organizing a large quantity of things very precisely. On the other, exclusive groups lets you do neat things like assign all the torrents of a particular group certain properties (doing this with non exclusive tags would be a nightmare).

One solution is to just implement tagging in the backend and let the client emulate exclusive groups on top of that.

comment:22 follow-up: Changed 8 years ago by charles

  • Milestone changed from 2.00 to Sometime

Bumping to post-2.00.

comment:23 in reply to: ↑ 22 Changed 8 years ago by szczetyk

Replying to charles:

Bumping to post-2.00.

Shame, what else can be said. I was waitin' 4 that enhancement 4 a long time.... like everybody else.

comment:24 in reply to: ↑ 21 Changed 8 years ago by buzz

Replying to Longinus00:

On the other, exclusive groups lets you do neat things like assign all the torrents of a particular group certain properties (doing this with non exclusive tags would be a nightmare).

Even that I don't think this is the place for a debate between tags vs. hierarchical organisation (like groups) I argue time has shown that tagging is indeed a capable and worthy mean of structuring data. And transmission is in urgent need of that. Also I am not in favor of the Mac client' groups feature as one of transmissions benefits is that it's cross-platform.

In the end it boils down to a matter of taste. There's no better in this question IMO. But I would love to see transmission support tags/groups anytime soon!

comment:25 Changed 8 years ago by Astara

why isn't this already done? I.e. the ability to add labels or tags or 'class-labels' to torrents? You add the ability to add tags to torrents. You save them in the same directory as the .torrent file.

You make something like XML or JSON that allows structuring.

XML would be more standards friendly, though JSON seems to be more hacker friendly and there's already a JSON parser in transmission, so leaning towards easiest ... JSON wins.

reason for separate file --it's extensible to add other data/torrent for future extension.

Might be good to allow user to specify location of tag file -- in same dir as the data files or where the torrent file is.

I don't see why you can't use it for classes as well. Why are classes 'exclusive' -- they can be but they don't have to be. It depends on how you label things.

All we need to move forward is to add rpc commands to modify a torrent: addtag, delete tag, list tags.

Additional nice op to have on server (to support this, but other things as well) -- a query op. While it could be done on the clients -- doesn't makes sense to duplicate effort, and would much more efficient, since all the data is on the server.

nice to have on server:

  • stating with list of torrents specified by current means, "do":
  • OP:{AND, OR (Union), Exclusive OR} input torrent list where,
  • given field "A", add to return list that ("verb") , "string
    • initially verb can be 'match', 'contain', don't 'contain'...
  • Intially, 'field' could just be 'tags'.

Anyway, just my initial, busy body impression.

comment:26 Changed 8 years ago by wheex

  • Cc wheex@… added

comment:27 Changed 8 years ago by bkuri

  • Cc transmission@… added

comment:28 Changed 8 years ago by veehexx

going on this idea, then i would like to see 2 tag systems. an automatic one (based on tracker), and a user-defined one.

maybe even take it well beyond a simple tagging system, where each tag has a set of rules attached to it; seed time/ratio, speed limits etc.

comment:29 Changed 8 years ago by beh

Transmission isn't a client to organize your files. Tagging is for organizing and that should be done within another application while Transmission focuses on doing what it does best: downloading torrents.

The grouping feature implemented in the Mac client makes downloading torrents easier. Based on tracker, name, etc. it automatically downloads the file to a custom location and (should) set priority. Choosing where to save a torrent's files to and the torrent's priority are both core features of any torrent application and could be made drastically easier to use for Transmission users by implementing the Mac client's solution of grouping across all clients - including the web interface.

comment:30 Changed 8 years ago by monkeyman23555

  • Cc monkeyman23555@… added

comment:31 Changed 8 years ago by iElectric

  • Cc domen@… added
  • Version changed from 1.70 to 2.04+

Would LOVE to see this feature included. I organize my torrents by directory structure. Tt's defined by root (foobar/downloads/) followed by a label (tag).

comment:32 Changed 8 years ago by charles

  • Version changed from 2.04+ to 1.70

comment:33 Changed 8 years ago by nafs

I am a heavy user of groups and would love to see groups in the web client. Any chances that this will be implemented some time soon?

comment:34 Changed 8 years ago by job

  • Cc jobjorn@… added

comment:35 Changed 8 years ago by styx

  • Cc styx.mp@… added

comment:36 Changed 7 years ago by taem

  • Cc taem@… added

comment:37 Changed 7 years ago by reardon

  • Cc thomas_reardon@… added

comment:38 Changed 7 years ago by neptunix

I'm very happy to be able to use groups in mac os client, however this is not possible with linux web client. Is there any possibility to have groups implemented? Thanks

comment:39 Changed 7 years ago by claes

Requested also, ticket #4269. Love the groups feature on the mac and am missing it on linux. Could live with or without tags, just nice to have things organized. It would be really cool have per group rules as well - bandwidth, ratios, scripts, and so on.

comment:40 Changed 7 years ago by sstamoulis

Hi, I love transmission and think this is an important feature! It is also a good idea that this feature is implemented cross-platform too. I will try to take a look in the source code and see if I can come up with something good. Also it was difficult to find this ticket, as tags is not the exact thing that is requested here. A complete organizing system is requested! Thanks devs for your help!!!

comment:41 Changed 7 years ago by AndrewV

It is not fare to delay this patch from going mainstream. I'm using transmission-daemon and have to put a bunch of script on server and desktop to emulate tags. 3/4 of them could be eliminated by adding simple way to add tags, like - group, target file name, seeding rate group, etc. Please, let it be.

comment:42 Changed 7 years ago by livings124

The patch is incomplete and largely out of date.

comment:43 Changed 7 years ago by Elbandi

As i wrote in comment:19, i use this for organizing my torrents. The "current" version can be found in my github repo. Currently good enough for me.

comment:44 Changed 7 years ago by neufeind

  • Cc transmissionbt@… added
  • Version changed from 1.70 to 2.31+

Would be great to have some kind of group/tagging/categories-functionality like this. I'd need it for the web-client and rpc-remote-client. But once it went into the core, I guess that should be a big deal to add to the other interfaces.

So, is it "just" that somebody needs to provide a core-implementation first? Or would we need to find a migration-path for the Mac-only-implementation of this feature? Or how could we get along with this?

comment:45 Changed 7 years ago by livings124

  • Version changed from 2.31+ to 1.70

comment:46 Changed 7 years ago by MrAsker

I agree, please add support for Tags in the Daemon. I've got hundreds of Torrents and it is a mess to work with them in the "transmission-remote-dotnet" GUI that I am using.

If I could Tag/Label? torrents based on eg. content (Music, Movies, TV Shows, Applications, etc ... ) that would make my life a little bit easier.

If "transmission-remote-dotnet" then also can sort the downloads in different folder based on the Tags/Labels? then that would make my life even a bit more easier because then I can have XBMC (that I run on my Apple TV) search directly in my separate DL folders. :)

That would be great!

comment:47 Changed 7 years ago by sloany

  • Cc jisloane@… added

comment:48 Changed 6 years ago by koroboru

  • Cc plutonium94@… added

This is a very useful feature, and it's absence is the only thing that's holding me from switching to Transmission. It's very strange that it isn't implemented for such a long time. I think that even if there is no consensus on how this grouping/labeling should exactly look like, this should better be implemented at least somehow (e.g. simple labels stored on server, shown in ui, with possibility of filtering torrents by label and applying bulk actions (start/pause/force rehash at least)) than not implemented at all.

comment:49 Changed 6 years ago by SIO

  • Cc sio.wtf@… added

comment:50 Changed 6 years ago by kruton

  • Cc kenny@… added

comment:51 Changed 6 years ago by lavacano201014

  • Cc nrfoconnor+transmission@… added

Please commit to the main code. I'd just use the patch, but I'm using this on Windows, and end users trying to build on Windows results in nothing but pain and suffering.

comment:52 Changed 5 years ago by dim-an

  • Cc epdmitry@… added

comment:53 Changed 5 years ago by Nikoli

  • Cc nikoli@… added

comment:54 Changed 5 years ago by chris-

  • Cc chris@… added

comment:55 Changed 5 years ago by sergio

Obviously this is a very requested feature, so can maybe someone explain what would be required to get this patch merged/this feature implemented? It would be nice if this feature could finally find it's way into 2.90

comment:56 Changed 5 years ago by ywkim

  • Cc youngwook.kim@… added

comment:57 Changed 5 years ago by Crupuk

  • Cc sebastien.andreatta@… added

Please considere this ticket for a future release close

comment:58 Changed 4 years ago by takiz

Request this for new transmission versions

comment:59 Changed 4 years ago by eirnym

  • Cc eirnym@… added

comment:60 Changed 3 years ago by mike.dld

Closed #6020 as duplicate of this ticket.

Note: See TracTickets for help on using tickets.