Page MenuHomePhabricator

Fix the bog of questionable value that is Project detail pages
Closed, ResolvedPublic

Description

This task discusses the future direction of project pages. Making a decision here is partially blocked on other work, like T3670: after seeing how it turns out, we'll have a better sense of what we want to do with project pages. We don't expect to make significant changes here in the short term until more influencing work finishes.

Project pages aren't very useful right now. Some specific problems include:

  • The information they show is arbitrary (handful of most recent tasks).
  • The information they show is incomplete (e.g., no way to get to repositories or mocks or other objects).
  • Workboards, which are relatively important and tied closely to projects, are also relatively hard to get to.
  • Most information shown on the pages (members, description) and most actions (leave, flag) are rarely used.

Likely directions for project pages include:

  • Stepping back from them and building something more broad and general, likely with a high-level focus on status/progress/completion. This would happen after T3670; or
  • replacing them with dashboards.

Particularly, it seems very unlikely that the future of project pages is expanding them as they exist today (for example, by adding more hard-coded features). If we decide to go in that direction, it would be simpler and more powerful to do it through dashboards.

(If you want a page showing repositories/tasks/revisions/mocks/etc for a project, Dashboards are almost certainly the best answer regardless of what we end up doing with project pages. Currently, building a dashboard for a project is somewhat cumbersome. We may allow you to explicitly parameterize dashboards in the future, so a dashboard renders for a specific project.)

Related Objects

Event Timeline

epriestley raised the priority of this task from to Normal.
epriestley updated the task description. (Show Details)
epriestley added projects: Projects, Dashboards.
epriestley added subscribers: epriestley, chad, btrahan.
epriestley added a subscriber: swisspol.

◀ Merged tasks: T5148.

T4011 is related, but discusses the project list view.

epriestley renamed this task from Fix the bog of questionable value that is Project pages to Fix the bog of questionable value that is Project detail pages.Jul 5 2014, 5:39 PM

marsh, bog, muskeg, quagmire, mire, morass, fen

I observe that there have been some changes here. Overall, very positive ... nice to have the project links default to the Workboard, which is usually where I want to go when I click.

For projects without workboards, though, it default to the information view, which no longer contains the list of tasks. Could this perhaps be something that is configurable? Not all projects want/need a Workboard, and for such projects it would typically be more useful to default to the list of open tasks than the project info view. The new UI for this essentially now requires 2 clicks to get to useful information, where 1 was previously needed.

Other than that, like where this is going.

Not all projects want/need a Workboard

We are using Phabricator for Repository hosting and reviews, not for tasks. We use projects to label and categorize repositories.
Sadly, the Project app does not provide *any* links to the repositories. (Previously we had a hack in place to make it list them, which is gone for now, after an update with merge conflicts.)
What we do as a workaround is hack in pre-built search queries in Diffusion, which searches for repositories by project label.
The project app listing repositories would be a big improvement for us.

One option that I miss from the old project interface, is the ability to quickly create a new task in the project when viewing it.

Would be nice to have that back - perhaps a button on the left sidebar?

  • The list of tasks on the Project page was '10 tasks sorted by Priority', "All Tasks" were always another click away.
  • Task creation can quickly still occur in the 'quick create' dropdown in the header on any page, not just Projects.

Overall, we're moving forward with the idea that subprojects, facts, calendar, and other applications are all going to want to be a part of Projects and are planning that direction accordingly.

  • Aware of this. It was still very useful to have the ability to quickly get an overview of the most important tasks in a project (since those are the ones a developer is most likely to be working on). I prefer using workboards myself (so the new default works well for me), but not all users/projects do.
  • Task creation from the dropdown is not context sensitive, the way the create task shortcut in the projects was. The most common Phabricator usage error I've observed so far is people forgetting to assign projects to their tasks (often resulting in those tasks "disappearing").

Look forward to the future changes in "projects".

To make projects useful to us, listing the associated repositories in addition to the tasks and users would be necessary.

Another 5 cents on the subject:

One thing that we think would be extremely useful: the ability to specify links (preferably more than one) to Wiki and/or Diviner docs.

For example, on a software "Project", I would love to be able to have two links prominently visible - one that goes to the software's "Developer Guide" (our catch-all docs for architecture and design + other useful information - we now tend to document this using Phriction), and one that goes to the "Code Documentation" (Doxygen/JavaDoc pages - perhaps in future something generated through Diviner? ;-D). A link to repositories (as suggested by @devurandom) would also be something we might often find useful. Other types of "Projects" would probably want to link to other types of pages (operational docs, user docs, etc).

Currently, we link to relevant pages in the project description, but this is not very useful with the project page now defaulting to a Workboard. In my experience, most users never bother to actually view the description page now (why should they, after all... it is less useful now than the old default project pages).

We are using phabricator for reviews, repo hosting and task. The whole lot.

Here are the problems we face with projects:

  • No strong linkage between a project and a repository. When on a project page, we want to be able to go back and forth between repository details (source code, recent commits etc..) and project details.
  • No strong linkage between a project and open revisions. From a project page, I would like to be able to see outstanding review requests for that project.
  • No project documentation. Diffusion will render any README file in the codebase; I'd like to see that in projects, perhaps instead of the description.
  • Even better, I'd like to see it render multiple-page docs. I'd like to be able to store the source in the repository along with everything else aswell. (i.e. just a link to a per-project phriction would be a half-baked solution IMO).
epriestley claimed this task.

This is an amorphous, unfocused task and substantially resolved by profile menus and changes in HEAD or planned in connection with T10054, see also M1450.