Skip to content
This repository was archived by the owner on Sep 30, 2024. It is now read-only.
This repository was archived by the owner on Sep 30, 2024. It is now read-only.

codeintel: faster symbol search via LSIF #27173

@chrismwendt

Description

@chrismwendt

The biggest complaint related to symbols today is that the search-based hover popover is slow to appear on big repos. This is slow because we have to re-process each commit separately, and big repos tend to have high commit volume, which means caching is not very effective.

Let's autoindex document symbols using existing LSIF indexers or a new lsif-tree-sitter so that we get symbols data pushed through diffs for recent commits (what most people a viewing).

Tasks:

  • Add documentSymbolResult to lsif-* (example implementation Spike adding deprecations to document symbols lsif-go#141)
  • Write a new lsif-tree-sitter (or lsif-ctags) which emits only symbols
  • Autoindex all repos that don't have symbol data with lsif-tree-sitter
  • Add a new GraphQL endpoint under lsif for symbols
  • Prefer symbol search via LSIF if available rather than ctags+SQLite

Tangentially related RFC Improving symbols search

Metadata

Metadata

Assignees

Labels

team/graphGraph Team (previously Code Intel/Language Tools/Language Platform)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions