and though bugs are the bane of my existence, rest assured the wretched thing will get the best of care here

Code Intelligence (FREE)

Introduced in GitLab 13.1.

Code Intelligence adds code navigation features common to interactive development environments (IDE), including:

  • Type signatures and symbol documentation.
  • Go-to definition.

Code Intelligence is built into GitLab and powered by LSIF (Language Server Index Format), a file format for precomputed code intelligence data.

Configuration

Enable code intelligence for a project by adding a GitLab CI/CD job to the project's .gitlab-ci.yml which will generate the LSIF artifact:

code_navigation:
  image: sourcegraph/lsif-go:v1
  allow_failure: true # recommended
  script:
    - lsif-go
  artifacts:
    reports:
      lsif: dump.lsif

The generated LSIF file size may be limited by the artifact application limits (ci_max_artifact_size_lsif), default to 100MB (configurable by an instance administrator).

After the job succeeds, code intelligence data can be viewed while browsing the code:

Code intelligence

Find references

To find where a particular object is being used, you can see links to specific lines of code under the References tab:

Find references

Language support

Generating an LSIF file requires a language server indexer implementation for the relevant language.

Language Implementation
Go sourcegraph/lsif-go
JavaScript sourcegraph/lsif-node
TypeScript sourcegraph/lsif-node

View a complete list of available LSIF indexers on their website and refer to their documentation to see how to generate an LSIF file for your specific language.