sourcegraph/cmd/symbols
Erik Seliger f61ce6e8e8
tenant: Introduce first version of tenant package (#64271)
This PR aims to craft the /internal/tenant package for use by all Sourcegraph cluster-internal services to properly scope data visibility to the correct requesting tenant.
For now, we only expose methods we know we will DEFINITELY need.

This PR also adds the required middlewares so we can start to tinker with it in implementations.

## Test plan

CI passes. We don't enforce anything for now except not passing unparseable tenant IDs, which should be fine.
2024-08-08 12:02:19 +02:00
..
internal feat(search): Enable improved symbol parsing for large repos (when using Rockskip) (#63988) 2024-07-31 15:27:31 -04:00
rockskipintegration feat(search): Enable improved symbol parsing for large repos (when using Rockskip) (#63988) 2024-07-31 15:27:31 -04:00
shared tenant: Introduce first version of tenant package (#64271) 2024-08-08 12:02:19 +02:00
BUILD.bazel Revert "Revert "refactor: upgrade to rules_oci 2.0 (2nd attempt)"" (#64354) 2024-08-08 09:00:08 +00:00
cargo-config.sh syntax-highlighter: initial ctags work (w/ musl scip-ctags) (#52643) 2023-05-30 17:19:39 -04:00
CODENOTIFY all: add keegancsmith to CODENOTIFY for many pkgs (#14241) 2020-09-29 11:03:53 +02:00
ctags-install-alpine.sh symbols: minor update last bumped comment (#58455) 2023-11-21 14:39:52 +02:00
image_test.yaml ctags: ensure that binary has correct featureset (#60084) 2024-02-05 09:39:06 +00:00
main.go remove more remannts of OSS build (#58253) 2023-11-10 07:59:03 +00:00
README.md Update symbols docs (#31600) 2022-02-26 01:28:28 +00:00

symbols

Indexes symbols in repositories using Ctags. Similar in architecture to searcher, except over ctags output.

The ctags output is stored in SQLite files on disk (one per repository@commit). Ctags processing is lazy, so it will occur only when you first query the symbols service. Subsequent queries will use the cached on-disk SQLite DB.

It is used by basic-code-intel to provide the jump-to-definition feature.

It supports regex queries, with prefix queries (^foo) and exact match queries (^foo$) optimized to perform index lookups. The symbols sidebar and search-based code intel benefit from these optimizations.