Files
codeql/go/old-change-notes/1.24/extractor-go.md
2022-05-20 10:07:19 -07:00

1.2 KiB

condition: enterprise-only

Improvements to Go analysis

Improvements to the autobuilder

  • When Makefiles or custom build scripts are present in the codebase, the autobuilder uses them to install dependencies. The build command to invoke can be configured via lgtm.yml, or by setting the environment variable CODEQL_EXTRACTOR_GO_BUILD_COMMAND.
  • The autobuilder now attempts to automatically detect when dependencies have been vendored and use -mod=vendor appropriately.

Changes to code extraction

  • The extractor now supports Go 1.14.
  • In resource-constrained environments, the environment variable CODEQL_EXTRACTOR_GO_MAX_GOROUTINES can be used to limit the number of parallel goroutines started by the extractor, which reduces CPU and memory requirements. The default value for this variable is 32.
  • The extractor now uses buffered i/o for writing database files, which reduces the amount of time taken for extraction.
  • The extractor now compresses intermediate files used for constructing databases, which reduces the amount of disk space it requires.
  • The extractor now supports extracting go.mod files, enabling queries on dependencies and their versions.