Page MenuHomePhabricator

Index Project milestones to accurately reflect milestone membership
ClosedPublic

Authored by amckinley on May 26 2017, 7:56 PM.
Tags
None
Referenced Files
F13199780: D18033.id43373.diff
Mon, May 13, 6:17 PM
F13193446: D18033.id.diff
Sun, May 12, 1:40 PM
F13192016: D18033.id43372.diff
Sun, May 12, 3:52 AM
F13187767: D18033.diff
Sat, May 11, 4:44 AM
Unknown Object (File)
Tue, May 7, 7:55 AM
Unknown Object (File)
Fri, May 3, 7:37 AM
Unknown Object (File)
Sun, Apr 28, 3:37 PM
Unknown Object (File)
Thu, Apr 25, 1:38 AM
Subscribers
Tokens
"Doubloon" token, awarded by epriestley.

Details

Summary

Fixes T12505. PhabricatorProjectsMembershipIndexEngineExtension->materializeProject() was incorrectly bailing early for milestone objects, which prevented milestone members from being calculated correctly. This was causing problems where (for example) an Owners package owned by a milestone wasn't being satisfied when a member of the milestone approved a revision.

Test Plan

Invoked migration, observed that a user's milestones correctly showed up when searched for. Also observed that accepting a revision on behalf of a milestone now satisfies Owners rules.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

epriestley added inline comments.
src/applications/project/engineextension/PhabricatorProjectsMembershipIndexEngineExtension.php
41–61

We could do the isMilestone() test earlier and skip this extra query I think -- we know milestones never have subprojects or descendants.

This revision is now accepted and ready to land.May 26 2017, 7:57 PM
src/applications/project/engineextension/PhabricatorProjectsMembershipIndexEngineExtension.php
63–66

Actually, since milestones can't have sub-milestones, this is probably better written by adding another clause to the existing if statement.

src/applications/project/engineextension/PhabricatorProjectsMembershipIndexEngineExtension.php
41–61

Jinx, I owe you a coke!

  • dont check for subprojects on milestones

(That update looks right to me.)

This revision was automatically updated to reflect the committed changes.