sourcegraph/cmd/symbols/internal
Matthew Manela b2e550c8e5
feat(search): Enable improved symbol parsing for large repos (when using Rockskip) (#63988)
During an investigation, we saw that Rockskip was not using scip-ctags
for symbol parsing when applicable. This means that
1. Rockskip is getting less than optimal symbols for certain languages
(like Go)
2. Rockskip is getting no symbols for languages not in universal ctags
(Magik)

This PR attempts to solve this problem but updating Rockskip to re-use
the ctags parser pool logic from symbol service.

### Key Changes
- Update parser pool to be re-usable
- Push common logic for parser type detection into the parser pool
module
- Update rockskip service config to take a parser pool 
- Update and add unit/integration tests


## Questions
- What performance impact will using this pooled parser have compared to
its previous behavior of spawning a new ctags process each time?



## Test plan
- [x] Add unit tests
- [x] Update integration tests
- [x] Manually test rockskip
- [x] Manually test symbolservice (in case of regression)

---------

Co-authored-by: Keegan Carruthers-Smith <keegan.csmith@gmail.com>
2024-07-31 15:27:31 -04:00
..
api feat(search): Enable improved symbol parsing for large repos (when using Rockskip) (#63988) 2024-07-31 15:27:31 -04:00
database symbols: Make symbols specific code internal (#63736) 2024-07-10 01:26:22 +02:00
fetcher symbols: Make symbols specific code internal (#63736) 2024-07-10 01:26:22 +02:00
gitserver symbols: Make symbols specific code internal (#63736) 2024-07-10 01:26:22 +02:00
observability symbols: Make symbols specific code internal (#63736) 2024-07-10 01:26:22 +02:00
parser feat(search): Enable improved symbol parsing for large repos (when using Rockskip) (#63988) 2024-07-31 15:27:31 -04:00
rockskip feat(search): Enable improved symbol parsing for large repos (when using Rockskip) (#63988) 2024-07-31 15:27:31 -04:00
squirrel symbols: Make symbols specific code internal (#63736) 2024-07-10 01:26:22 +02:00
types symbols: Make symbols specific code internal (#63736) 2024-07-10 01:26:22 +02:00