mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-26 00:32:41 +01:00
T4670 Remove the any-author flag from the which command, make any-author the default, and annotate the username of the owner of the revision.
Summary: Remove any-author flag from 'arc which' make any-author be the default behavior. Annotate revision with the owners username. Test Plan: Apply a patch that you don't own (arc patch Dxxx) run 'arc which' verify that: 1. You see the revision 2. You see the original authors username next to the revision (owned by sjobs) etc. Reviewers: epriestley, #blessed_reviewers Reviewed By: epriestley, #blessed_reviewers Subscribers: epriestley, Korvin Differential Revision: https://secure.phabricator.com/D8690
This commit is contained in:
parent
b8e4261455
commit
0e5bea940c
1 changed files with 27 additions and 8 deletions
|
@ -43,9 +43,6 @@ EOTEXT
|
||||||
|
|
||||||
public function getArguments() {
|
public function getArguments() {
|
||||||
return array(
|
return array(
|
||||||
'any-author' => array(
|
|
||||||
'help' => "Show revisions by any author, not just you.",
|
|
||||||
),
|
|
||||||
'any-status' => array(
|
'any-status' => array(
|
||||||
'help' => "Show committed and abandoned revisions.",
|
'help' => "Show committed and abandoned revisions.",
|
||||||
),
|
),
|
||||||
|
@ -138,13 +135,9 @@ EOTEXT
|
||||||
echo $commits."\n\n\n";
|
echo $commits."\n\n\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
$any_author = $this->getArgument('any-author');
|
|
||||||
$any_status = $this->getArgument('any-status');
|
$any_status = $this->getArgument('any-status');
|
||||||
|
|
||||||
$query = array(
|
$query = array(
|
||||||
'authors' => $any_author
|
|
||||||
? null
|
|
||||||
: array($this->getUserPHID()),
|
|
||||||
'status' => $any_status
|
'status' => $any_status
|
||||||
? 'status-any'
|
? 'status-any'
|
||||||
: 'status-open',
|
: 'status-open',
|
||||||
|
@ -169,8 +162,34 @@ EOTEXT
|
||||||
"working copy, a new revision will be **created** if you run ".
|
"working copy, a new revision will be **created** if you run ".
|
||||||
"'arc diff{$arg}'.\n\n"));
|
"'arc diff{$arg}'.\n\n"));
|
||||||
} else {
|
} else {
|
||||||
|
$other_author_phids = array();
|
||||||
foreach ($revisions as $revision) {
|
foreach ($revisions as $revision) {
|
||||||
echo ' D'.$revision['id'].' '.$revision['title']."\n";
|
if ($revision['authorPHID'] != $this->getUserPHID()) {
|
||||||
|
$other_author_phids[] = $revision['authorPHID'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$other_authors = array();
|
||||||
|
if ($other_author_phids) {
|
||||||
|
$other_authors = $this->getConduit()->callMethodSynchronous(
|
||||||
|
'user.query',
|
||||||
|
array(
|
||||||
|
'phids' => $other_author_phids,
|
||||||
|
));
|
||||||
|
$other_authors = ipull($other_authors, 'userName', 'phid');
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($revisions as $revision) {
|
||||||
|
$title = $revision['title'];
|
||||||
|
$monogram = 'D'.$revision['id'];
|
||||||
|
|
||||||
|
if ($revision['authorPHID'] != $this->getUserPHID()) {
|
||||||
|
$author = $other_authors[$revision['authorPHID']];
|
||||||
|
echo pht(" %s (%s) %s\n", $monogram, $author, $title);
|
||||||
|
} else {
|
||||||
|
echo pht(" %s %s\n", $monogram, $title);
|
||||||
|
}
|
||||||
|
|
||||||
echo ' Reason: '.$revision['why']."\n";
|
echo ' Reason: '.$revision['why']."\n";
|
||||||
echo "\n";
|
echo "\n";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue