Page MenuHomePhabricator

Phabricator tags are mixed with projects in the listings
Closed, ResolvedPublic

Description

Looking at T75959, Phabricator clearly has knowledge of tags. It marks them with a different icon than projects. But Phabricator is listing tags as projects. Weird.

Event Timeline

MZMcBride raised the priority of this task from to Needs Triage.
MZMcBride updated the task description. (Show Details)
MZMcBride changed Security from none to None.
MZMcBride added a subscriber: MZMcBride.
Qgil closed this task as Declined.Nov 26 2014, 7:54 AM
Qgil claimed this task.

In Phabricator, all projects are in fact tags and all tags are in fact projects. The visual distinction doesn't come from Phabricator, but from our conventions. Technically, the only difference between a regular project and a tag is an icon and a background color. Phabricator knows no more.

See https://www.mediawiki.org/wiki/Phabricator/Creating_and_renaming_projects#Type_of_project

Declining, because changing the current behavior would be a big big task that should be discussed and eventually done upstream.

The current behavior is actually fine. People can join and watch them, and if someone wants to help working on tasks related to a tag, they can setup the workboard and treat it as an actual project.

MZMcBride reopened this task as Open.Nov 26 2014, 11:42 PM
MZMcBride added a subscriber: Qgil.
In T75961#787412, @Qgil wrote:

Declining, because changing the current behavior would be a big big task that should be discussed and eventually done upstream.

The current behavior is actually fine. People can join and watch them, and if someone wants to help working on tasks related to a tag, they can setup the workboard and treat it as an actual project.

I'm not talking about dramatically changing Phabricator's implementation here. Sorry if that was unclear.

In this task, I'm talking about the list that appears in the basic task view above. Where it says "Projects" above, it should only list projects. Below that, it should have a separate field for "Tags".

Clearly Phabricator is already aware of the difference between a project and a tag by giving a different icon and background color, so why not expose that distinction rather than incorrectly calling (for example) "easy" a project?

I don't think modifying the basic task view to add an additional label will require a Herculean effort. :-)

(I'd also caution against rash actions in Phabricator, just as we did in Bugzilla. It's important to give ideas time to percolate or to be discussed and considered before simply rejecting them because of some silly Phabricator mantra.)

I guess this how you upload an attachment to a task?

This is a screenshot of what I'm referring to.

Qgil added a comment.Nov 27 2014, 12:02 AM

Clearly Phabricator is already aware of the difference between a project and a tag by giving a different icon and background color

No, Phabricator just does what we users do manually when editing a project. Now "easy" is yellow and shows the icon of a tag. Alright, go here and change it for something else. Phabricator just renders what you define there. We cannot define a separate category of projects based on the color and the icon users select for their projects at a certain point of time.

Instead, I recommend you to embrace the Phabricator mantra: projects are tags, tags are projects. :)

In T75961#789848, @Qgil wrote:

No, Phabricator just does what we users do manually when editing a project. Now "easy" is yellow and shows the icon of a tag. Alright, go here and change it for something else. Phabricator just renders what you define there. We cannot define a separate category of projects based on the color and the icon users select for their projects at a certain point of time.

Aha. Thanks for the link.

The easiest way to separate into groups would be with client-side JavaScript, I suppose. The HTML markup already contains the necessary information (e.g., "easy" has a sibling class of "fa-tags" while "MediaWiki-General-or-Unknown" has a sibling class of "fa-briefcase"... we could just say that tags are labeled as Tags while briefcases are labeled as Projects). But client-side JavaScript is kind of gross for this and doing this probably isn't worth the effort, unless others care about this issue (it's too soon to tell).

Maybe changing the label to "Metadata" or "Tags" instead of "Projects" would be a simpler solution. The current term seems wrong to me, but perhaps I just need time to accept it. :-)

Qgil triaged this task as Lowest priority.Nov 27 2014, 6:45 AM

I have seen several comments from upstream maintainers saying that "Projects" should have been called "Tags" since the very beginning. While I agree with this as an advanced user, I can also see why that rename would cause other kinds of trouble, perhaps even affecting reputation adoption ("Phabricator? Do you mean that piece of software where you can't even have a project to organize task?")

Back to your request, the distinction between tags and projects would be purely representational in the UI, and I'm not sure whether this is worth the effort or even a good cause ti pursue. The fact is that Phabricator offers exactly the same to all projects/tags, regardless of the icon and color of choice. It is also interesting to communicate that any tag out there is welcoming a potential group of contributors willing to plan their work around that focus area. For instance, in the case of "easy", we could have different workboard columns for tasks that have been verified as easy (as opposed to i.e. Tim Starling saying that rewriting that API method can be done in a couple of hours), a selection of candidates for "Bug of the Week"...

Let me decline this, setting priority to Needs Volunteer. If someone has an idea to work on this, feel free to reopen and propose.

Qgil closed this task as Declined.Nov 27 2014, 6:45 AM
Qgil reopened this task as Open.Nov 27 2014, 6:57 AM

Reopening as per T76095#790512

Qgil removed Qgil as the assignee of this task.Nov 27 2014, 6:57 AM
Qgil removed a project: Phabricator.
Qgil moved this task from Backlog to Need Discussion on the Phabricator (Upstream) board.
Nemo_bis added a subscriber: Nemo_bis.EditedDec 25 2014, 12:29 PM

It would perhaps help if https://www.mediawiki.org/wiki/Phabricator/Creating_and_renaming_projects#Type_of_project didn't produce the mistaken impression that "project, team, sprint, release, tag, private" constitutes a partition, while in fact "team, sprint, release, tag, private" are a partition* of a non-trivial subset of the set "projects".

An easy solution would be to rename the "project" type (the default) to "component", a terminology users will be familiar with. Then "component, team, sprint, release, tag, private" should be a partition of "project" and we should avoid confusion on what "project" means, because it will be used with one meaning only.

(*) Or at least I hope so. Can they overlap?

Nemo_bis added a comment.EditedJan 6 2015, 10:16 PM

An easy solution would be to rename the "project" type (the default) to "component", a terminology users will be familiar with.

Done. Someone please update the image.

Should we also rename the message "Briefcase" to "Component". It was already inconsistent with the previous alleged name of the thing ("Project"), we now have a chance to make it consistent.

Qgil added a comment.Jan 7 2015, 4:35 PM

Someone please update the image.

Done.

Should we also rename the message "Briefcase" to "Component".

Many icons have their own descriptive name. I don't see a reason to change them.

Nemo_bis renamed this task from Phabricator tags should be listed as tags, not projects to Phabricator tags are mixed with projects in the listings.Jan 11 2015, 11:05 AM
Nemo_bis closed this task as Resolved.
Restricted Application added a subscriber: TerraCodes. · View Herald TranscriptMay 23 2016, 6:05 PM