Page MenuHomePhabricator

Include project descriptions as part of search index
Closed, ResolvedPublic


Currently if a hashtag is on a given project, I am unable to add the same hashtag to other projects. To me this defeats the purpose of hashtags.

I would like to be able to put the same hashtag on multiple projects, search for a hashtag and return all results with that hashtag, and maybe even see trending hashtags like in Twitter.

We are using Phabricator to manage large numbers of projects, some of which have overlapping technologies and other elements that we would like to make searchable.


Event Timeline

AndrewMemSQL raised the priority of this task from to Needs Triage.
AndrewMemSQL updated the task description. (Show Details)
AndrewMemSQL added a project: Phabricator.
AndrewMemSQL added a subscriber: AndrewMemSQL.
epriestley claimed this task.

We don't plan to implement this.

Hashtags are not intended to be used to categorize projects. The intent is more that projects are (more formal, heavy-weight) hashtags, just hashtags that can have aliases (like #qa instead of #quality_assurance) . When you associate a project with a hashtag, using that #hashtag in other contexts will refer to the project.

For subprojects, see T3670.

See also T3820.

Thanks for the quick reply!

I see your point on hashtags and will re-word my request.

Is it possible to implement searchable tags of some sort to find commonality across projects? That is my main goal here. I have tried to add something like "Tags: offline, demo, certification" to the bottom of my project descriptions but it appears that that text is not searchable. Is there any way to do this in phabricator currently?

I would love to have this functionality either by:
Having a tag field that is searchable through the projects search box
Have more customizable queries so that I can query for projects on a custom field, rather than just Name, Members, Status, Icons, and Color as it stands today


epriestley renamed this task from Allow non-unique, searchable hashtags on projects to Include project descriptions as part of search index.Oct 27 2014, 4:57 PM
epriestley reopened this task as Open.
epriestley triaged this task as Normal priority.
epriestley edited projects, added Search, Projects; removed Phabricator.

Ah, sure, we can make that text searchable.

You can also add custom fields to projects (which are searchable); this document describes what's supported:

(There are various tasks scattered around for improving the power of custom fields, if you hit issues I can point you in the right direction.)

You can also have Herald rules adding i.e. "offline" tag-project to any task associated with "Offline Email Reader" project.

I added a custom text field to my projects and made it searchable.

For a given project, I go to that field and enter comma-separated tags that I want to be searchable (eg. offline, demo, certification).

The issue is that if I search for a tag, the query only returns a result if there is a full match on the field's contents. For example if I have a project with tags "offline, certification", I only get a result on my query if I search "offline, certification". I would like to be able to get results for any project with the tag 'offline' if I search 'offline'. Is this possible with the existing custom fields or do I have to extend the class to make this possible?

Oh, right, there's no fulltext search support for custom fields right now. Fixing description indexing is simple, let me just do that first and we'll go from there. We could build custom field fulltext stuff too, potentially, but that's far more involved.

After D10748:

  • Run phabricator/ $ ./bin/search reindex --type PROJ to rebuild existing project search indexes.
    • Newly created and newly updated projects will automatically be indexed correctly.
    • You can add --background if you have a huge number of projects.
  • You'll now be able to find projects by searching for words in their descriptions using the global search (in the main menu bar). Make sure the selected "Document Types" allow you to find projects.
  • If you have custom fields, you can add fulltext to their configuration to allow them to show up in this index, too.
    • Same rules as above to rebuild the index retroactively.
    • The documentation will be updated once D10748 pushes to note the existence of this option.

This does not add fulltext capability for custom fields to ApplicationSearch (the "advanced search" available in most applications which allows you to filter objects in a detailed way). If you want that, file a separate task and reference this one -- but it's significantly more complicated than this was and we probably won't get to it for a while.

Thanks for the quick turnaround! Much appreciated guys.