sourcegraph v3.30.0 Release Notes
-
⬆️ ⚠️ Users on 3.29.x are advised to upgrade directly to 3.30.3. If you have already upgraded to 3.30.0, 3.30.1, or 3.30.2 please follow this migration guide.
➕ Added
- ➕ Added support for
select:file.directory
in search queries, which returns unique directory paths for results that satisfy the query. #22449 - An
sg_service
Postgres role has been introduced, as well as ansg_repo_access_policy
policy on therepo
table that restricts access to that role. The role that owns therepo
table will continue to get unrestricted access. #22303 - Every service that connects to the database (i.e. Postgres) now has a "Database connections" monitoring section in its Grafana dashboard. #22570
- A new bulk operation to close many changesets at once has been added to Batch Changes. #22547
- Backend Code Insights will aggregate viewable repositories based on the authenticated user. #22471
- ➕ Added support for highlighting .frugal files as Thrift syntax.
- ➕ Added
file:contains.content(regexp)
predicate, which filters only to files that contain matches of the given pattern. #22666 - 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 tofalse
inrepo-updater
. That environment variable will be deleted in the next release. #22756 - Enabled the ability to query Batch Changes changesets, changesets stats, and file diff stats for an individual repository via the Sourcegraph GraphQL API. #22744
- ➕ Added "Groovy" to the initial
lang:
filter suggestions in the search bar. #22755 - 👍 The
lang:
filter suggestions now show all supported, matching languages as the user types a language name. #22765 - Code Insights can now be grouped into dashboards. #22215
- 🔄 Batch Changes changesets can now be published from the Sourcegraph UI. #18277
- 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. #22804
- 💻 Experimental: Search-based code insights can run over all repositories on the instance. To enable, use the feature flag
"experimentalFeatures": { "codeInsightsAllRepos": true }
and tick the checkbox in the insight creation/edit UI. #22759 - Search References is a new search sidebar section to simplify learning about the available search filters directly where they are used. #21539
🔄 Changed
- Backend Code Insights only fills historical data frames that have changed to reduce the number of searches required. #22298
- 🛠 Backend Code Insights displays data points for a fixed 6 months period in 2 week intervals, and will carry observations forward that are missing. #22298
- Backend Code Insights now aggregate over 26 weeks instead of 6 months. #22527
- Search queries now disallow specifying
rev:
withoutrepo:
. Note that to search across potentially multiple revisions, a query likerepo:.* rev:<revision>
remains valid. #22705 - The extensions status bar on diff pages has been redesigned and now shows information for both the base and head commits. #22123
- The
applyBatchChange
andcreateBatchChange
mutations now accept an optionalpublicationStates
argument to set the publication state of specific changesets within the batch change. #22485 and #22854 - Search queries now return up to 80 suggested filters. Previously we returned up to 24. #22863
- GitHub code host connections can now include
repositoryQuery
entries that match more than 1000 repositories from the GitHub search API without requiring the previously documented work-around of splitting the query up withcreated:
qualifiers, which is now done automatically. #2562
🛠 Fixed
- 🛠 The Batch Changes user and site credential encryption migrators added in Sourcegraph 3.28 could report zero progress when encryption was disabled, even though they had nothing to do. This has been fixed, and progress will now be correctly reported. #22277
- Listing Github Entreprise org repos now returns internal repos as well. #22339
- 🚀 Jaeger works in Docker-compose deployments again. #22691
- 📱 A bug where the pattern
)
makes the browser unresponsive. #22738 - An issue where using
select:repo
in conjunction withand
patterns did not yield expected repo results. #22743 - ⚡️ The
isLocked
andisDisabled
fields of GitHub repositories are now fetched correctly from the GraphQL API of GitHub Enterprise instances. Users that rely on therepos
config in GitHub code host connections should update so that locked and disabled repositories defined in that list are actually skipped. #22788 - Homepage no longer fails to load if there are invalid entries in user's search history. #22857
- An issue where regexp query highlighting in the search bar would render incorrectly on Firefox. #23043
- Code intelligence uploads and indexes are restricted to only site-admins. It was read-only for any user. #22890
- Daily usage statistics are restricted to only site-admins. It was read-only for any user. #23026
- 🚀 Ephemeral storage requests now match their cache size requests for Kubernetes deployments. #2953
✂ Removed
- 🚚 The experimental paginated search feature (the
stable:
keyword) has been removed, to be replaced with streaming search. #22428 - 🚚 The experimental extensions view page has been removed. #22565
- 🚚 A search query diagnostic that previously warned the user when quotes are interpreted literally has been removed. The literal meaning has been Sourcegraph's default search behavior for some time now. #22892
- 🚀 Non-root overlays were removed for
deploy-sourcegraph
in favor of usingnon-privileged
. #3404
📄 API docs (experimental)
0️⃣ API docs is a new experimental feature of Sourcegraph (learn more). It is enabled by default in Sourcegraph 3.30.0.
- 0️⃣ API docs is enabled by default in Sourcegraph 3.30.0. It can be disabled by adding
"apiDocs": false
to theexperimentalFeatures
section of user settings. - 📄 The API docs landing page now indicates what API docs are and provide more info.
- 📄 The API docs landing page now represents the code in the repository root, instead of an empty page.
- Pages now correctly indicate it is an experimental feature, and include a feedback widget.
- 👍 Subpages linked via the sidebar are now rendered much better, and have an expandable section.
- 📚 Symbols in documentation now have distinct icons for e.g. functions/vars/consts/etc.
- Symbols are now sorted in exported-first, alphabetical order.
- 📚 Repositories without LSIF documentation data now show a friendly error page indicating what languages are supported, how to set it up, etc.
- ✅ API docs can now distinguish between different types of symbols, tests, examples, benchmarks, etc. and whether symbols are public/private - to support filtering in the future.
- 0️⃣ Only public/exported symbols are included by default for now.
- 📦 URL paths for Go packages are now friendlier, e.g.
/-/docs/cmd/frontend/auth
instead of/-/docs/cmd-frontend-auth
. - 🤡 URLs are now formatted by the language indexer, in a way that makes sense for the language, e.g.
#Mocks.CreateUserAndSave
instead of#ypeMocksCreateUserAndSave
for a Go methodCreateUserAndSave
on typeMocks
. - Go blank identifier assignments
var _ = ...
are no longer incorrectly included. - Go symbols defined within functions, e.g. a
var
inside afunc
scope are no longer incorrectly included. Functions
,Variables
, and other top-level sections are no longer rendered empty if there are none in that section.- 📚 A new test suite for LSIF indexers implementing the Sourcegraph documentation extension to LSIF is available.
- 📄 We now emit the LSIF data needed to in the future support "Jump to API docs" from code views, "View code" from API docs, usage examples in API docs, and search indexing.
- 💅 Various UI style issues, color contrast issues, etc. have been fixed.
- 📚 Major improvements to the GraphQL APIs for API documentation.
- ➕ Added support for