@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.

Extend "fulltext" and "ngrams" interfaces from "indexable" interface

Summary: Ref T8788. See D17702. This allows `bin/search index` to index stuff which only implements `Ngrams`, not `Fulltext`.

Test Plan: Kinda poked around `bin/search index` a bit, yell if you hit more issues deeper down the stack?

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T8788

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

+11 -3
+3
src/__phutil_library_map__.php
··· 2924 2924 'PhabricatorIndexEngine' => 'applications/search/index/PhabricatorIndexEngine.php', 2925 2925 'PhabricatorIndexEngineExtension' => 'applications/search/index/PhabricatorIndexEngineExtension.php', 2926 2926 'PhabricatorIndexEngineExtensionModule' => 'applications/search/index/PhabricatorIndexEngineExtensionModule.php', 2927 + 'PhabricatorIndexableInterface' => 'applications/search/interface/PhabricatorIndexableInterface.php', 2927 2928 'PhabricatorInfrastructureTestCase' => '__tests__/PhabricatorInfrastructureTestCase.php', 2928 2929 'PhabricatorInlineCommentController' => 'infrastructure/diff/PhabricatorInlineCommentController.php', 2929 2930 'PhabricatorInlineCommentInterface' => 'infrastructure/diff/interface/PhabricatorInlineCommentInterface.php', ··· 8025 8026 'PhabricatorFulltextEngineExtension' => 'Phobject', 8026 8027 'PhabricatorFulltextEngineExtensionModule' => 'PhabricatorConfigModule', 8027 8028 'PhabricatorFulltextIndexEngineExtension' => 'PhabricatorIndexEngineExtension', 8029 + 'PhabricatorFulltextInterface' => 'PhabricatorIndexableInterface', 8028 8030 'PhabricatorFulltextResultSet' => 'Phobject', 8029 8031 'PhabricatorFulltextStorageEngine' => 'Phobject', 8030 8032 'PhabricatorFulltextToken' => 'Phobject', ··· 8299 8301 'PhabricatorNavigationRemarkupRule' => 'PhutilRemarkupRule', 8300 8302 'PhabricatorNeverTriggerClock' => 'PhabricatorTriggerClock', 8301 8303 'PhabricatorNgramsIndexEngineExtension' => 'PhabricatorIndexEngineExtension', 8304 + 'PhabricatorNgramsInterface' => 'PhabricatorIndexableInterface', 8302 8305 'PhabricatorNotificationBuilder' => 'Phobject', 8303 8306 'PhabricatorNotificationClearController' => 'PhabricatorNotificationController', 8304 8307 'PhabricatorNotificationClient' => 'Phobject',
+2 -1
src/applications/search/interface/PhabricatorFulltextInterface.php
··· 1 1 <?php 2 2 3 - interface PhabricatorFulltextInterface { 3 + interface PhabricatorFulltextInterface 4 + extends PhabricatorIndexableInterface { 4 5 5 6 public function newFulltextEngine(); 6 7
+3
src/applications/search/interface/PhabricatorIndexableInterface.php
··· 1 + <?php 2 + 3 + interface PhabricatorIndexableInterface {}
+2 -1
src/applications/search/interface/PhabricatorNgramsInterface.php
··· 1 1 <?php 2 2 3 - interface PhabricatorNgramsInterface { 3 + interface PhabricatorNgramsInterface 4 + extends PhabricatorIndexableInterface { 4 5 5 6 public function newNgrams(); 6 7
+1 -1
src/applications/search/management/PhabricatorSearchManagementIndexWorkflow.php
··· 213 213 214 214 private function loadPHIDsByTypes($type) { 215 215 $objects = id(new PhutilClassMapQuery()) 216 - ->setAncestorClass('PhabricatorFulltextInterface') 216 + ->setAncestorClass('PhabricatorIndexableInterface') 217 217 ->execute(); 218 218 219 219 $normalized_type = phutil_utf8_strtolower($type);