public static function newRevisionFromConduitWithDiff(array $fields, DifferentialDiff $diff, $user_phid)
 {
     $revision = new DifferentialRevision();
     $revision->setPHID($revision->generatePHID());
     $revision->setAuthorPHID($user_phid);
     $revision->setStatus(ArcanistDifferentialRevisionStatus::NEEDS_REVIEW);
     $editor = new DifferentialRevisionEditor($revision, $user_phid);
     $editor->copyFieldsFromConduit($fields);
     $editor->addDiff($diff, null);
     $editor->save();
     return $revision;
 }
 public static function newRevisionFromConduitWithDiff(array $fields, DifferentialDiff $diff, $user_phid)
 {
     $revision = new DifferentialRevision();
     $revision->setPHID($revision->generatePHID());
     $revision->setAuthorPHID($user_phid);
     $revision->setStatus(DifferentialRevisionStatus::NEEDS_REVIEW);
     $editor = new DifferentialRevisionEditor($revision, $user_phid);
     $editor->copyFieldsFromConduit($fields);
     $editor->addDiff($diff, null);
     $editor->save();
     // Tasks can only be updated after revision has been saved to the
     // database. Currently tasks are updated only when a revision is created.
     // UI must be used to modify tasks after creating one.
     $editor->updateTasks();
     return $revision;
 }