Page MenuHomePhabricator

D7668.diff
No OneTemporary

D7668.diff

Index: src/applications/diffusion/conduit/ConduitAPI_diffusion_getcommits_Method.php
===================================================================
--- src/applications/diffusion/conduit/ConduitAPI_diffusion_getcommits_Method.php
+++ src/applications/diffusion/conduit/ConduitAPI_diffusion_getcommits_Method.php
@@ -129,6 +129,7 @@
$commits = $this->addRepositoryCommitDataInformation($commits);
$commits = $this->addDifferentialInformation($commits);
+ $commits = $this->addManiphestInformation($commits);
foreach ($commits as $name => $commit) {
$results[$name] = $commit;
@@ -261,4 +262,31 @@
return $commits;
}
+ /**
+ * Enhances the commits list with Maniphest information.
+ */
+ private function addManiphestInformation(array $commits) {
+ $task_type = PhabricatorEdgeConfig::TYPE_COMMIT_HAS_TASK;
+
+ $commit_phids = ipull($commits, 'commitPHID');
+
+ $edge_query = id(new PhabricatorEdgeQuery())
+ ->withSourcePHIDs($commit_phids)
+ ->withEdgeTypes(array($task_type));
+
+ $edges = $edge_query->execute();
+
+ foreach ($commits as $name => $commit) {
+ $task_phids = $edge_query->getDestinationPHIDs(
+ array($commit['commitPHID']),
+ array($task_type));
+
+ $commits[$name] += array(
+ 'taskPHIDs' => $task_phids,
+ );
+ }
+
+ return $commits;
+ }
+
}

File Metadata

Mime Type
text/plain
Expires
Fri, Sep 20, 12:13 AM (3 h, 8 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6622079
Default Alt Text
D7668.diff (1 KB)

Event Timeline