Page MenuHomePhabricator

Project "Profile" and "Subproject" tabs now require members/watchers, but do not load them
Closed, ResolvedPublic

Description

Reproduction

  1. Go to project profile.

Error

Unhandled Exception ("PhabricatorDataNotAttachedException")

Attempting to access attached data on PhabricatorProject, but the data is not actually attached. Before accessing attachable data on an object, you must load and attach it.
Data is normally attached by calling the corresponding needX() method on the Query class when the object is loaded. You can also call the corresponding attachX() method explicitly.

Version

I'm on master commit 89e567ffd94594bd7ab8f2deb7fab3b2f632d1a9.

Event Timeline

I can't reproduce this. Here's an example of a profile working correctly for me locally:

Screen Shot 2017-05-15 at 4.12.13 AM.png (1×1 px, 95 KB)

Can you reproduce this issue on this install?

Yes on the Almanac project profile.

I think more narrow reproduction instructions are:

  • Find a project which has active subprojects or milestones.
  • View the profile tab or the "Subprojects" tab.

@chad, this is because PhabricatorProjectListView needs members and watchers after D17880.

The project profile tab uses a list view to show subprojects.

The project "Subprojects" tab uses a list view to show subprojects and milestones.

We can fix this by just adding needMembers() + needWatchers() everywhere, but that results in these broken-ish/redundant/silly/questionable interfaces:

Screen Shot 2017-05-15 at 6.31.49 AM.png (1×1 px, 204 KB)

Screen Shot 2017-05-15 at 6.33.36 AM.png (159×318 px, 13 KB)

I'll just ship up the "unbreak" diff, and you can either counter-diff me or figure out something else.

epriestley renamed this task from Project profile broken to Project "Profile" and "Subproject" tabs now require members/watchers, but do not load them.May 15 2017, 1:43 PM

This should now be resolved in HEAD of master and stable. Thanks for the report!