Releases Release 5.9
FEBRUARY 12, 2025

Sourcegraph 5.9

A newer version of Sourcegraph is available: Sourcegraph 6.12.

Highlights

Promoted Prompts for VS Code and Cody Web

IP-based permissions support for Perforce

Details

Improvements

  • Batch Changes Show name of additional fields that cause errors

    feat(batches): show name of additional fields that cause errors

  • Administration Site config 'telemetry: { disableLocalEventLogs }' to disable event_logs

    Long-term local retention of user telemetry as 'event logs' can now be disabled entirely via the telemetry: { disableLocalEventLogs } site configuration.

  • Analytics Log estimated LLM cost telemetry (CODY-4007)
    • Adds cost estimates to the ModelConfiguration returned by .api/llm/supported-models.json
    • Adds llmTokenUsageCostEstimate telemetry value with estimates of each requests LLM cost in pennies
  • Analytics Add check for PGDATASOURCE

    OPTIONAL; info at https://www.notion.so/sourcegraph/Writing-a-changelog-entry-dd997f411d524caabf0d8d38a24a878c

  • Analytics Add source.server.server_client.user_agent to telemetry payload
    • Add the sourcegraph API client user-agent to telemetry payload types under source.server.server_client.user_agent.
  • Analytics Propagate new x-sourcegraph-api-client-* headers to request clients
    • Propagates new X-Sourcegraph-API-Client-Name and X-Sourcegraph-API-Client-Version headers to request clients
  • Cody Add more API docs content

    OPTIONAL; info at https://www.notion.so/sourcegraph/Writing-a-changelog-entry-dd997f411d524caabf0d8d38a24a878c

  • Cody Add embedded API docs via OpenAPI/Redocly
    • New OpenAPI API docs within the instance at the URL $SRC_ENDPOINT/api/openapi/public. Alternatively, reach the page at "User > Settings > OpenAPI Reference".
  • Cody Add Claude 3.5 Sonnet (Latest) & Claude 3 Opus (Latest)

    OPTIONAL; info at https://www.notion.so/sourcegraph/Writing-a-changelog-entry-dd997f411d524caabf0d8d38a24a878c

  • Cody Expose token usage in the LLM API
    • The /.api/completions/stream API now includes used input/output tokens and the upstream model name in the response body when using the query parameter api-version=5 or higher. Does not apply to: Vertex Anthropic, Azure OpenAI (mo model name, and no token usage in streaming response), Gemini (no model name in streaming response)
    • LLM chat completions now support stream: false when using Azure OpenAI and OpenAI-compatible providers.
  • Cody Add support to format raw API responses for Cody
    • The raw HTTP API now accepts the query paramter format=cody or header Accept: application/cody to render files and directories as context items for Cody. Example request path: /github.com/sourcegraph/cody/-/raw/agent/src/index.ts?format=cody.
  • Ci Record Test infrastructure failures
    • add library that writes to TEST_INFRASTRUCTURE_FAILURE_FILE if it is defined for test failures
  • Cody Gateway Add new claude-3-5-haiku-latest model

    OPTIONAL; info at https://www.notion.so/sourcegraph/Writing-a-changelog-entry-dd997f411d524caabf0d8d38a24a878c

    Cody Gateway: add new claude-3-5-haiku-latest & claude-3-5-opus-latest models to Cody Gateway allow list Cody Gateway: add new claude-3-5-haiku-latest dotcom models list
    Backport 11e7481ba3c810ae5b47d32b8cf32066e2f0b2bb from #1470

  • Cody Gateway Deprecate old claude 3.5 sonnet

    OPTIONAL; info at https://www.notion.so/sourcegraph/Writing-a-changelog-entry-dd997f411d524caabf0d8d38a24a878c

  • Sub_repo_perms Add conditional logging for seeing if sub_repo_permisisons are working

    The sub repository permissions implementation now emits logs that describe the rules that were evaluated for a given request whenever tracing is enabled. (We limit these logs for only when tracing is enabled since they can be quite verbose).

  • Uncategorized Add embedded file snippet page
    • Added embeddable page for file snippets

Fixes

  • Code Search (new web ui) Make blob view readonly

    Prevents default browser shortcuts from modifying the file content locally.

  • Code Search Exclude content filters from phrase boosting

    This fixes a bug where we would apply a phrase boost if a content: filter was specified with keyword search enabled. This led to inconsistent behavior (regexp vs keyword search) and it also rendered the content: filter ineffective, because we ran a general text search instead of a just a content search.

  • Code Nav Trigger hovers for all programming languages

    Fixes a bug where hovers were not triggered for less mainstream languages like F#, Standard ML, Visual Basic, Pkl, Hack, MATLAB etc.

  • Code Intel Add more limits in auto-indexing inference code

    Introduces new limits for auto-indexing inference to reduce the risk of continuously growing auto-indexing queues.

    • The number of jobs spawned per round of auto-indexing inference per repo is capped (default: 100) to reduce risk of clogging of auto-indexing queues. Excess jobs will be discarded.
    • The number of paths inspected for a single round of auto-indexing inference per repo is capped (default: 500) to reduce risk of timeouts. Excess paths will be discarded.
  • Code Intel Handle annotated tag hashes passed as 'commit' for uploads

    Fixes handling of SCIP uploads when the hash passed to the -commit flag of src-cli corresponds to the hash of an annotated tag instead of the hash of a commit. Previously, these uploads were not accessible for code navigation.

  • Code Intel Propagate error collector to fix retention tab GraphQL API call

    Fixes a bug where the retention tab for precise indexes would show a nil pointer exception instead of retention information.

  • Batch Changes Enable request splitting by default

    fix(batches): enable request splitting by default

  • Batch Changes Handle spec being nil for suffix salt

    fix(batches): handle spec being nil for suffix salt

  • Batch Changes Enable GQL request splitting via BATCH_CHANGES_REQUEST_SPLITTING

    fix(batches): enable GQL request splitting via BATCH_CHANGES_REQUEST_SPLITTING

  • Batch Changes Display "Deleted Namespace" instead of throwing an error

    fix(batches): display "Deleted Namespace" instead of throwing an error

  • Analytics Only log Cody API events to a remote data store, do n…

    OPTIONAL; info at https://www.notion.so/sourcegraph/Writing-a-changelog-entry-dd997f411d524caabf0d8d38a24a878c

  • Code Monitor Fail monitors with missing/unverified primary email address

    fix(code-monitor): fail monitors with missing/unverified primary email address

  • Cody Fix broken homepage redirect for cody only plans

    When using an instance with a Cody-only license, accessing the home page now correctly redirects you to /cody/dashboard, instead of a non-existent /cody page.
    Backport a4cb5a0723bad18e1c215d81231db457d1abfbdb from #1621

  • Codyapi Restrict audit log retrieval to site admins only

    OPTIONAL; info at https://www.notion.so/sourcegraph/Writing-a-changelog-entry-dd997f411d524caabf0d8d38a24a878c

  • Codyapi Add usage to completions/chat (CODY-3498)

    Added token usage information to .api/llm/chat/completions

  • Dev Correctly propagate error key-value pairs

    Fixes a bug where logs and traces were sometimes missing key-value pairs recorded alongside errors.

  • Release Add stitched migration graph override (#935)

    NA

  • Source Correct Name() documentation for gitserver's ReadDirIterator

    The documentation for gitserver's ReadDir method has been clarified to reflect that the return iterator's Name() method returns the full path of the file, as opposed to just the basename.

  • Source Clarify exclude docs in github connection schema to say that individual expressions within block are `and`-ed together

    The documentation for the "exclude" section in the github code host connection schema has been clarified to explain that each block is OR'd together, and the expressions within each block are AND'd together.

  • Source Multiple GitHub external accounts to the same URL now refresh correctly
    • When there are multiple auth providers configured that point to the same GitHub URL, as can be the case when using private GitHub Apps, user external account tokens will now refresh correctly.
  • Source The sync of a GitHub repositoryQuery failing will no longer cause repos to be deleted
    • GitHub code host connections using repositoryQuery will no longer delete repositories if the sync fails for reasons like a GitHub outage or a token expiring.
  • Uncategorized Retry graphql queries that failed with 502

    fix: retry graphql queries that failed with 502

Self-hosted resources