Sourcegraph 3.30 release

⚠️ WARNING: Users upgrading from 3.29 are advised to upgrade directly to Sourcegraph 3.30.3. This release contains critical fixes to issues in previous 3.30.x releases.

If you have already upgraded to 3.30.0, 3.30.1, or 3.30.2 and are encountering issues, please follow this migration guide.

Sourcegraph 3.30 is now available! For this release, we introduced:

Batch Changes: Publish and unpublish changesets from the GUI

Batch Changes features a powerful idempotent spec-based workflow, where the spec file defines the batch change. In particular, the published property defines if changesets are published to the codehost or not.

This workflow is great for reproducibility and having a completely CLI-based workflow, and we are keeping it!

In addition, we are allowing changesets to be published and unpublished directly from the GUI, to make the workflow more approachable to new users. Simply omit the published field in the specs, and the GUI will become the source of truth for publishing changesets.

Publish changesets from GUI demo

New code search reference

We've added a new search reference to the search results sidebar. The search reference lists search filters which can be expanded to display documentation and examples. The reference can be used to learn about filters or as a shortcut to using the filters in queries.

Search reference demo

Introducing API docs

Try out our brand new experimental feature that builds on top of Sourcegraph's semantic understanding of your code to analyze and generate API documentation. We're starting with Go and would love to hear from you what language we should tackle next.

Read the Sneak peek: API documentation generated for all your code blog post for more details.

Sourcegraph's new API docs feature

Changelog highlights

  1. Batch Changes
    Batch Changes changesets can now be published from the Sourcegraph UI.
  2. Search
    Search References is a new search sidebar section to simplify learning about the available search filters directly where they are used.
  3. API Docs
    API docs is enabled by default in Sourcegraph 3.30.0. It can be disabled by adding `"apiDocs": false` to the `experimentalFeatures` section of user settings.
  4. Performance
    Repository syncing is now done in streaming mode by default. Customers with many repositories should notice code host updates much faster, with repo-updater consuming less memory. Using the previous batch mode can be done by setting the `ENABLE_STREAMING_REPOS_SYNCER` environment variable to `false` in `repo-updater`. That environment variable will be deleted in the next release.
  5. Search
    Added support for `` in search queries, which returns unique directory paths for results that satisfy the query.
  6. Search
    Added `file:contains.content(regexp)` predicate, which filters only to files that contain matches of the given pattern.
  7. Batch Changes
    You can now use a new bulk operation to close many changesets at once in Batch Changes.
  8. Code Browsing
    All `.frugal` files will now be displayed with Thrift syntax highlighting.
  9. Batch Changes
    Enabled the ability to query Batch Changes changesets, changesets stats, and file diff stats for an individual repository via the Sourcegraph GraphQL API.
  10. Batch Changes
    The repository page now has a new button to view Batch Change changesets created in that specific repository, with a badge indicating how many changesets are currently open.
  11. Search
    Search queries now disallow specifying `rev:` without `repo:`. Note that to search across potentially multiple revisions, a query like `repo:.* rev:<revision>` remains valid.
  12. Extensions
    The extensions status bar on diff pages has been redesigned and now shows information for both the base and head commits.
  13. Search
    Search queries now return up to 80 suggested filters. Previously we returned up to 24.
  14. Search
    The `lang:` filter suggestions now show all supported, matching languages as the user types a language name.

Get Cody, the AI coding assistant

Cody makes it easy to write, fix, and maintain code.