Page MenuHomePhabricator

When computing the "Subscribers" policy, use materialized membership
ClosedPublic

Authored by epriestley on Mar 13 2018, 3:27 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Dec 22, 1:45 PM
Unknown Object (File)
Thu, Dec 19, 6:17 PM
Unknown Object (File)
Tue, Dec 17, 8:09 AM
Unknown Object (File)
Tue, Dec 17, 7:42 AM
Unknown Object (File)
Mon, Dec 16, 5:17 PM
Unknown Object (File)
Thu, Dec 12, 12:20 AM
Unknown Object (File)
Tue, Dec 10, 8:09 AM
Unknown Object (File)
Sun, Dec 8, 8:09 PM
Subscribers
None

Details

Summary

Fixes T13104. The "Subscribers" policy implementation still uses older logic to query project membership and misses parent projects and milestones which a user is a member of.

Instead of doing an edge query for explicit membership, use a project query to find all projects the viewer belongs to.

Test Plan
  • Created a parent project A.
  • Created a subproject B.
  • As Bailey, created a task with "Visible To: Bailey, Subscribers".
  • Added parent project A as a task subscriber.

Then:

  • As Alice, verified I could not see the task.
  • As Alice, joined subproject B.
    • Before patch: still unable to see the task.
    • After patch: can see the task.
  • Removed parent project A as a subscriber, verified I could no longer see the task.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Mar 13 2018, 3:28 PM
epriestley requested review of this revision.
This revision was automatically updated to reflect the committed changes.