Skip to content

Commit 7ec8e88

Browse files
author
epriestley
committed
Merge branch 'master' into phutil_tag
(Final final sync.)
2 parents d817dfa + 51947ac commit 7ec8e88

35 files changed

+498
-201
lines changed

conf/default.conf.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -882,6 +882,10 @@
882882
'image/vnd.microsoft.icon' => true,
883883
),
884884

885+
// Configuration option for enabling imagemagick
886+
// to resize animated profile pictures (gif)
887+
'files.enable-imagemagick' => false,
888+
885889
// -- Storage --------------------------------------------------------------- //
886890

887891
// Phabricator allows users to upload files, and can keep them in various

src/__celerity_resource_map__.php

Lines changed: 41 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1866,7 +1866,7 @@
18661866
),
18671867
'javelin-behavior-pholio-mock-view' =>
18681868
array(
1869-
'uri' => '/res/518a169e/rsrc/js/application/pholio/behavior-pholio-mock-view.js',
1869+
'uri' => '/res/e5f432ac/rsrc/js/application/pholio/behavior-pholio-mock-view.js',
18701870
'type' => 'js',
18711871
'requires' =>
18721872
array(
@@ -2591,7 +2591,7 @@
25912591
),
25922592
'phabricator-core-css' =>
25932593
array(
2594-
'uri' => '/res/03c97d00/rsrc/css/core/core.css',
2594+
'uri' => '/res/2a055ecb/rsrc/css/core/core.css',
25952595
'type' => 'css',
25962596
'requires' =>
25972597
array(
@@ -3400,7 +3400,7 @@
34003400
), array(
34013401
'packages' =>
34023402
array(
3403-
'4b569463' =>
3403+
'acc46105' =>
34043404
array(
34053405
'name' => 'core.pkg.css',
34063406
'symbols' =>
@@ -3443,7 +3443,7 @@
34433443
35 => 'phabricator-object-item-list-view-css',
34443444
36 => 'global-drag-and-drop-css',
34453445
),
3446-
'uri' => '/res/pkg/4b569463/core.pkg.css',
3446+
'uri' => '/res/pkg/acc46105/core.pkg.css',
34473447
'type' => 'css',
34483448
),
34493449
'bc0774e5' =>
@@ -3631,17 +3631,17 @@
36313631
'reverse' =>
36323632
array(
36333633
'aphront-attached-file-view-css' => 'e30a3fa8',
3634-
'aphront-crumbs-view-css' => '4b569463',
3635-
'aphront-dialog-view-css' => '4b569463',
3636-
'aphront-error-view-css' => '4b569463',
3637-
'aphront-form-view-css' => '4b569463',
3638-
'aphront-list-filter-view-css' => '4b569463',
3639-
'aphront-pager-view-css' => '4b569463',
3640-
'aphront-panel-view-css' => '4b569463',
3641-
'aphront-table-view-css' => '4b569463',
3642-
'aphront-tokenizer-control-css' => '4b569463',
3643-
'aphront-tooltip-css' => '4b569463',
3644-
'aphront-typeahead-control-css' => '4b569463',
3634+
'aphront-crumbs-view-css' => 'acc46105',
3635+
'aphront-dialog-view-css' => 'acc46105',
3636+
'aphront-error-view-css' => 'acc46105',
3637+
'aphront-form-view-css' => 'acc46105',
3638+
'aphront-list-filter-view-css' => 'acc46105',
3639+
'aphront-pager-view-css' => 'acc46105',
3640+
'aphront-panel-view-css' => 'acc46105',
3641+
'aphront-table-view-css' => 'acc46105',
3642+
'aphront-tokenizer-control-css' => 'acc46105',
3643+
'aphront-tooltip-css' => 'acc46105',
3644+
'aphront-typeahead-control-css' => 'acc46105',
36453645
'differential-changeset-view-css' => '8aaacd1b',
36463646
'differential-core-view-css' => '8aaacd1b',
36473647
'differential-inline-comment-editor' => '95d0d865',
@@ -3655,7 +3655,7 @@
36553655
'differential-table-of-contents-css' => '8aaacd1b',
36563656
'diffusion-commit-view-css' => 'c8ce2d88',
36573657
'diffusion-icons-css' => 'c8ce2d88',
3658-
'global-drag-and-drop-css' => '4b569463',
3658+
'global-drag-and-drop-css' => 'acc46105',
36593659
'inline-comment-summary-css' => '8aaacd1b',
36603660
'javelin-aphlict' => 'bc0774e5',
36613661
'javelin-behavior' => 'd466c034',
@@ -3724,48 +3724,48 @@
37243724
'javelin-util' => 'd466c034',
37253725
'javelin-vector' => 'd466c034',
37263726
'javelin-workflow' => 'd466c034',
3727-
'lightbox-attachment-css' => '4b569463',
3727+
'lightbox-attachment-css' => 'acc46105',
37283728
'maniphest-task-summary-css' => 'e30a3fa8',
37293729
'maniphest-transaction-detail-css' => 'e30a3fa8',
37303730
'phabricator-busy' => 'bc0774e5',
37313731
'phabricator-content-source-view-css' => '8aaacd1b',
3732-
'phabricator-core-buttons-css' => '4b569463',
3733-
'phabricator-core-css' => '4b569463',
3734-
'phabricator-crumbs-view-css' => '4b569463',
3735-
'phabricator-directory-css' => '4b569463',
3732+
'phabricator-core-buttons-css' => 'acc46105',
3733+
'phabricator-core-css' => 'acc46105',
3734+
'phabricator-crumbs-view-css' => 'acc46105',
3735+
'phabricator-directory-css' => 'acc46105',
37363736
'phabricator-drag-and-drop-file-upload' => '95d0d865',
37373737
'phabricator-dropdown-menu' => 'bc0774e5',
37383738
'phabricator-file-upload' => 'bc0774e5',
3739-
'phabricator-filetree-view-css' => '4b569463',
3740-
'phabricator-flag-css' => '4b569463',
3741-
'phabricator-form-view-css' => '4b569463',
3742-
'phabricator-header-view-css' => '4b569463',
3743-
'phabricator-jump-nav' => '4b569463',
3739+
'phabricator-filetree-view-css' => 'acc46105',
3740+
'phabricator-flag-css' => 'acc46105',
3741+
'phabricator-form-view-css' => 'acc46105',
3742+
'phabricator-header-view-css' => 'acc46105',
3743+
'phabricator-jump-nav' => 'acc46105',
37443744
'phabricator-keyboard-shortcut' => 'bc0774e5',
37453745
'phabricator-keyboard-shortcut-manager' => 'bc0774e5',
3746-
'phabricator-main-menu-view' => '4b569463',
3746+
'phabricator-main-menu-view' => 'acc46105',
37473747
'phabricator-menu-item' => 'bc0774e5',
3748-
'phabricator-nav-view-css' => '4b569463',
3748+
'phabricator-nav-view-css' => 'acc46105',
37493749
'phabricator-notification' => 'bc0774e5',
3750-
'phabricator-notification-css' => '4b569463',
3751-
'phabricator-notification-menu-css' => '4b569463',
3752-
'phabricator-object-item-list-view-css' => '4b569463',
3750+
'phabricator-notification-css' => 'acc46105',
3751+
'phabricator-notification-menu-css' => 'acc46105',
3752+
'phabricator-object-item-list-view-css' => 'acc46105',
37533753
'phabricator-object-selector-css' => '8aaacd1b',
37543754
'phabricator-paste-file-upload' => 'bc0774e5',
37553755
'phabricator-prefab' => 'bc0774e5',
37563756
'phabricator-project-tag-css' => 'e30a3fa8',
3757-
'phabricator-remarkup-css' => '4b569463',
3757+
'phabricator-remarkup-css' => 'acc46105',
37583758
'phabricator-shaped-request' => '95d0d865',
3759-
'phabricator-side-menu-view-css' => '4b569463',
3760-
'phabricator-standard-page-view' => '4b569463',
3759+
'phabricator-side-menu-view-css' => 'acc46105',
3760+
'phabricator-standard-page-view' => 'acc46105',
37613761
'phabricator-textareautils' => 'bc0774e5',
37623762
'phabricator-tooltip' => 'bc0774e5',
3763-
'phabricator-transaction-view-css' => '4b569463',
3764-
'phabricator-zindex-css' => '4b569463',
3765-
'sprite-apps-large-css' => '4b569463',
3766-
'sprite-gradient-css' => '4b569463',
3767-
'sprite-icon-css' => '4b569463',
3768-
'sprite-menu-css' => '4b569463',
3769-
'syntax-highlighting-css' => '4b569463',
3763+
'phabricator-transaction-view-css' => 'acc46105',
3764+
'phabricator-zindex-css' => 'acc46105',
3765+
'sprite-apps-large-css' => 'acc46105',
3766+
'sprite-gradient-css' => 'acc46105',
3767+
'sprite-icon-css' => 'acc46105',
3768+
'sprite-menu-css' => 'acc46105',
3769+
'syntax-highlighting-css' => 'acc46105',
37703770
),
37713771
));

src/__phutil_library_map__.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1259,6 +1259,7 @@
12591259
'PhabricatorSetupCheckExtraConfig' => 'applications/config/check/PhabricatorSetupCheckExtraConfig.php',
12601260
'PhabricatorSetupCheckFacebook' => 'applications/config/check/PhabricatorSetupCheckFacebook.php',
12611261
'PhabricatorSetupCheckGD' => 'applications/config/check/PhabricatorSetupCheckGD.php',
1262+
'PhabricatorSetupCheckImagemagick' => 'applications/config/check/PhabricatorSetupCheckImagemagick.php',
12621263
'PhabricatorSetupCheckInvalidConfig' => 'applications/config/check/PhabricatorSetupCheckInvalidConfig.php',
12631264
'PhabricatorSetupCheckMail' => 'applications/config/check/PhabricatorSetupCheckMail.php',
12641265
'PhabricatorSetupCheckMySQL' => 'applications/config/check/PhabricatorSetupCheckMySQL.php',
@@ -1409,6 +1410,7 @@
14091410
'PholioController' => 'applications/pholio/controller/PholioController.php',
14101411
'PholioDAO' => 'applications/pholio/storage/PholioDAO.php',
14111412
'PholioImage' => 'applications/pholio/storage/PholioImage.php',
1413+
'PholioInlineController' => 'applications/pholio/controller/PholioInlineController.php',
14121414
'PholioInlineSaveController' => 'applications/pholio/controller/PholioInlineSaveController.php',
14131415
'PholioMock' => 'applications/pholio/storage/PholioMock.php',
14141416
'PholioMockCommentController' => 'applications/pholio/controller/PholioMockCommentController.php',
@@ -2673,6 +2675,7 @@
26732675
'PhabricatorSetupCheckExtraConfig' => 'PhabricatorSetupCheck',
26742676
'PhabricatorSetupCheckFacebook' => 'PhabricatorSetupCheck',
26752677
'PhabricatorSetupCheckGD' => 'PhabricatorSetupCheck',
2678+
'PhabricatorSetupCheckImagemagick' => 'PhabricatorSetupCheck',
26762679
'PhabricatorSetupCheckInvalidConfig' => 'PhabricatorSetupCheck',
26772680
'PhabricatorSetupCheckMail' => 'PhabricatorSetupCheck',
26782681
'PhabricatorSetupCheckMySQL' => 'PhabricatorSetupCheck',
@@ -2827,6 +2830,7 @@
28272830
0 => 'PholioDAO',
28282831
1 => 'PhabricatorMarkupInterface',
28292832
),
2833+
'PholioInlineController' => 'PholioController',
28302834
'PholioInlineSaveController' => 'PholioController',
28312835
'PholioMock' =>
28322836
array(
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?php
2+
3+
final class PhabricatorSetupCheckImagemagick extends PhabricatorSetupCheck {
4+
5+
protected function executeChecks() {
6+
$imagemagick = PhabricatorEnv::getEnvConfig('files.enable-imagemagick');
7+
if ($imagemagick) {
8+
list($err) = exec_manual('which convert');
9+
if ($err) {
10+
$message = pht(
11+
'You have enabled Imagemagick in your config, but the \'convert\''.
12+
' binary is not in the webserver\'s $PATH. Disable imagemagick'.
13+
' or make it available to the webserver.');
14+
15+
$this->newIssue('files.enable-imagemagick')
16+
->setName(pht(
17+
"'convert' binary not found or Imagemagick is not installed."))
18+
->setMessage($message)
19+
->addPhabricatorConfig('files.enable-imagemagick')
20+
->addPhabricatorConfig('environment.append-paths');
21+
}
22+
}
23+
}
24+
}
25+

src/applications/config/option/PhabricatorCoreConfigOptions.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ public function getOptions() {
133133
->setDescription(
134134
pht('Array containing list of Uninstalled applications.')
135135
),
136-
);
136+
);
137137
}
138138

139139
protected function didValidateOption(

src/applications/conpherence/controller/ConpherenceUpdateController.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ public function processRequest() {
6464
$top = $request->getInt('image_y');
6565
$left = $request->getInt('image_x');
6666
$file_id = $request->getInt('file_id');
67+
$title = $request->getStr('title');
6768
if ($file_id) {
6869
$orig_file = id(new PhabricatorFileQuery())
6970
->setViewer($user)
@@ -101,6 +102,8 @@ public function processRequest() {
101102
pht('This server only supports these image formats: %s.',
102103
implode(', ', $supported_formats));
103104
}
105+
// use the existing title in this image upload case
106+
$title = $conpherence->getTitle();
104107
} else if ($top !== null || $left !== null) {
105108
$file = $conpherence->getImage(ConpherenceImageData::SIZE_ORIG);
106109
$xformer = new PhabricatorImageTransformer();
@@ -119,7 +122,6 @@ public function processRequest() {
119122
)
120123
->setNewValue($image_phid);
121124
}
122-
$title = $request->getStr('title');
123125
if ($title != $conpherence->getTitle()) {
124126
$xactions[] = id(new ConpherenceTransaction())
125127
->setTransactionType(ConpherenceTransactionType::TYPE_TITLE)

src/applications/conpherence/mail/ConpherenceReplyHandler.php

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,16 @@
55
*/
66
final class ConpherenceReplyHandler extends PhabricatorMailReplyHandler {
77

8+
private $mailAddedParticipantPHIDs;
9+
10+
public function setMailAddedParticipantPHIDs(array $phids) {
11+
$this->mailAddedParticipantPHIDs = $phids;
12+
return $this;
13+
}
14+
public function getMailAddedParticipantPHIDs() {
15+
return $this->mailAddedParticipantPHIDs;
16+
}
17+
818
public function validateMailReceiver($mail_receiver) {
919
if (!($mail_receiver instanceof ConpherenceThread)) {
1020
throw new Exception("Mail receiver is not a ConpherenceThread!");
@@ -67,14 +77,25 @@ protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
6777
$file_phids,
6878
'{F%d}'
6979
);
70-
$xactions = $editor->generateTransactionsFromText(
71-
$conpherence,
72-
$body
80+
81+
$xactions = array();
82+
if ($this->getMailAddedParticipantPHIDs()) {
83+
$xactions[] = id(new ConpherenceTransaction())
84+
->setTransactionType(ConpherenceTransactionType::TYPE_PARTICIPANTS)
85+
->setNewValue(array('+' => $this->getMailAddedParticipantPHIDs()));
86+
}
87+
88+
$xactions = array_merge(
89+
$xactions,
90+
$editor->generateTransactionsFromText(
91+
$conpherence,
92+
$body
93+
)
7394
);
7495

7596
$editor->applyTransactions($conpherence, $xactions);
7697

77-
return null;
98+
return $conpherence;
7899
}
79100

80101
}

src/applications/conpherence/storage/ConpherenceTransaction.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,17 @@ public function getTitle() {
4646

4747
switch ($this->getTransactionType()) {
4848
case ConpherenceTransactionType::TYPE_TITLE:
49-
if ($old) {
49+
if ($old && $new) {
5050
$title = pht(
5151
'%s renamed this conpherence from "%s" to "%s".',
5252
$this->renderHandleLink($author_phid),
5353
phutil_escape_html($old),
5454
phutil_escape_html($new));
55+
} else if ($old) {
56+
$title = pht(
57+
'%s deleted the conpherence name "%s".',
58+
$this->renderHandleLink($author_phid),
59+
phutil_escape_html($old));
5560
} else {
5661
$title = pht(
5762
'%s named this conpherence "%s".',

src/applications/differential/DifferentialReplyHandler.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ private function unsubscribeUser(
172172
DifferentialRevisionEditor::removeCCAndUpdateRevision(
173173
$revision,
174174
$user->getPHID(),
175-
$user->getPHID());
175+
$user);
176176
}
177177

178178

src/applications/differential/controller/DifferentialSubscribeController.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,13 @@ public function processRequest() {
5959
DifferentialRevisionEditor::addCCAndUpdateRevision(
6060
$revision,
6161
$phid,
62-
$phid);
62+
$user);
6363
break;
6464
case 'rem':
6565
DifferentialRevisionEditor::removeCCAndUpdateRevision(
6666
$revision,
6767
$phid,
68-
$phid);
68+
$user);
6969
break;
7070
default:
7171
return new Aphront400Response();

src/applications/differential/editor/DifferentialRevisionEditor.php

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -496,25 +496,27 @@ public function save() {
496496
public static function addCCAndUpdateRevision(
497497
$revision,
498498
$phid,
499-
$reason) {
499+
PhabricatorUser $actor) {
500500

501-
self::addCC($revision, $phid, $reason);
501+
self::addCC($revision, $phid, $actor->getPHID());
502502

503503
$type = PhabricatorEdgeConfig::TYPE_OBJECT_HAS_UNSUBSCRIBER;
504504
id(new PhabricatorEdgeEditor())
505+
->setActor($actor)
505506
->removeEdge($revision->getPHID(), $type, $phid)
506507
->save();
507508
}
508509

509510
public static function removeCCAndUpdateRevision(
510511
$revision,
511512
$phid,
512-
$reason) {
513+
PhabricatorUser $actor) {
513514

514-
self::removeCC($revision, $phid, $reason);
515+
self::removeCC($revision, $phid, $actor->getPHID());
515516

516517
$type = PhabricatorEdgeConfig::TYPE_OBJECT_HAS_UNSUBSCRIBER;
517518
id(new PhabricatorEdgeEditor())
519+
->setActor($actor)
518520
->addEdge($revision->getPHID(), $type, $phid)
519521
->save();
520522
}

src/applications/differential/view/DifferentialChangesetListView.php

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -253,10 +253,15 @@ private function renderViewOptionsDropdown(
253253

254254
$repository = $this->repository;
255255
if ($repository) {
256-
$meta['diffusionURI'] = (string)$repository->getDiffusionBrowseURIForPath(
257-
$changeset->getAbsoluteRepositoryPath($repository, $this->diff),
258-
idx($changeset->getMetadata(), 'line:first'),
259-
$this->getBranch());
256+
try {
257+
$meta['diffusionURI'] =
258+
(string)$repository->getDiffusionBrowseURIForPath(
259+
$changeset->getAbsoluteRepositoryPath($repository, $this->diff),
260+
idx($changeset->getMetadata(), 'line:first'),
261+
$this->getBranch());
262+
} catch (DiffusionSetupException $e) {
263+
// Ignore
264+
}
260265
}
261266

262267
$change = $changeset->getChangeType();

0 commit comments

Comments
 (0)