@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Put revisions waiting on other reviewers in their own bucket

Summary: Fixes T12323. See that task for discussion.

Test Plan: {F3424441}

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T12323

Differential Revision: https://secure.phabricator.com/D17425

+26
+26
src/applications/differential/query/DifferentialRevisionRequiredActionResultBucket.php
··· 63 63 ->setNoDataString(pht('No revisions are waiting on author action.')) 64 64 ->setObjects($this->filterWaitingOnAuthors($phids)); 65 65 66 + $groups[] = $this->newGroup() 67 + ->setName(pht('Waiting on Other Reviewers')) 68 + ->setNoDataString(pht('No revisions are waiting for other reviewers.')) 69 + ->setObjects($this->filterWaitingOnOtherReviewers($phids)); 70 + 66 71 // Because you can apply these buckets to queries which include revisions 67 72 // that have been closed, add an "Other" bucket if we still have stuff 68 73 // that didn't get filtered into any of the previous buckets. ··· 193 198 $results = array(); 194 199 foreach ($objects as $key => $object) { 195 200 if (empty($statuses[$object->getStatus()])) { 201 + continue; 202 + } 203 + 204 + $results[$key] = $object; 205 + unset($this->objects[$key]); 206 + } 207 + 208 + return $results; 209 + } 210 + 211 + private function filterWaitingOnOtherReviewers(array $phids) { 212 + $statuses = array( 213 + ArcanistDifferentialRevisionStatus::NEEDS_REVIEW, 214 + ); 215 + $statuses = array_fuse($statuses); 216 + 217 + $objects = $this->getRevisionsNotAuthored($this->objects, $phids); 218 + 219 + $results = array(); 220 + foreach ($objects as $key => $object) { 221 + if (!isset($statuses[$object->getStatus()])) { 196 222 continue; 197 223 } 198 224