[go: up one dir, main page]

Skip to content

Provide native support for SCIP indexes for use with Code Intelligence

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Problem to Solve

GitLab currently only supports LSIF compatible indexes for providing native code intelligence. While the LSIF format originated much of what drives Code Intelligence, Sourcegraph has shifted to using SCIP. This means much of the tooling to generate indexes is now driven via the SCIP toolchain and LSIF is no longer supported.

Proposal

GitLab should natively support SCIP indexes to provide Code Intelligence. This would make it compatible with modern tooling which is shifting to support SCIP.

Current Workarounds

While GitLab does not natively support SCIP, v0.4.0 of the SCIP CLI provides a convert command. This allows you to generate an index with a SCIP indexer and then convert it to LSIF for upload to GitLab.

GitLab provides a CI/CD Component which does a SCIP to LSIF conversion for some languages.

Original Description

To improve the code navigation different projects and companies used different approach. One, SourceGraph, built a new protocol for that, called SICP: https://github.com/sourcegraph/scip

It might be a nice way to improve the code indexing for further navigation in GitLab

SCIP (pronunciation: "skip") is a language-agnostic protocol for indexing source code, which can be used to power code navigation functionality such as Go to definition, Find references, and Find implementations.

Moreover, as SourceGraph works on using AI to understand the code (Cody), they could improve the SCIP to take this into the account. It would be a nice addition to GitLab, while being open-source and being used by more than one project and company.

Related epic: &4212

Related issues: https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=created_date&state=opened&search=LSIF&first_page_size=20

Edited by 🤖 GitLab Bot 🤖