All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Change connection manager upsert timeout to 5 minutes
- Fix issue with repo display names being poorly formatted, especially for gerrit. (#259)
- Added config setting
resyncConnectionIntervalMs
to control how often a connection should be re-synced. (#260)
- Fix issue with match highlighting not appearing when first clicking on a search result. (#255)
Sourcebot v3 is here and brings a number of structural changes to the tool's foundation, including a SQL database, parallelized indexing, authentication support, multitenancy, and more. Checkout the migration guide for information on upgrading your instance to v3.
- [Breaking Change] Changed the config schema such that connection objects are specified in the
connection
map, instead of therepos
array. See migration guide. - Updated the tool's color-palette in dark mode.
- Added parallelized repo indexing and connection syncing via Redis & BullMQ. See the architecture overview.
- Added repo indexing progress indicators in the navbar.
- Added authentication support via OAuth or email/password. For instructions on enabling, see this doc.
- Added the following UI for managing your deployment when auth is enabled:
- connection management: create and manage your JSON configs via a integrated web-editor.
- secrets: import personal access tokens (PAT) into Sourcebot (AES-256 encrypted). Reference secrets in your connection config by name.
- team & invite management: invite users to your instance to give them access. Configure team roles & permissions.
- Added multi-tenancy support. See this doc.
- [Breaking Change] Removed
db.json
in favour of a Postgres database for transactional workloads. See the architecture overview. - [Breaking Change] Removed local folder & arbitrary .git repo support. If your deployment depended on these features, please open a discussion and let us know.
- [Breaking Chnage] Removed ability to specify a
token
as a string literal from the schema. - [Breaking Change] Removed support for
DOMAIN_SUB_PATH
configuration.
- Fixed bug where Sourcebot Cloud card was shown to self-hosted users
- Made syntax reference guide keyboard shortcut hints clickable. (#229)
- Remove
repo_synced
telemetry event.
- Added
maxTrigramCount
to the config to control the maximum allowable of trigrams per document.
- Fixed issue with version upgrade toast not appearing without a hard refresh. (#179)
- Added a syntax reference guide. The guide can be opened using the hotkey "Cmd + /" ("Ctrl + /" on Windows). (#169)
- Fixed issue where we crash on startup if the install / upgrade PostHog event fails to send. (#159)
- Fixed issue with broken file links. (#161)
- Added support for creating share links to snippets of code. (#149)
- Added support for indexing raw remote git repository. (#152)
- Added config option
settings.reindexInterval
andsettings.resyncInterval
to control how often the index should be re-indexed and re-synced. (#134) - Added
exclude.size
to the GitHub config to allow excluding repositories by size. (#137)
- Fixed issue where config synchronization was failing entirely when a single api call fails. (#142)
- Fixed 'directory not found' error in certain scenarios when deleting a repository. (#136)
- Added config support for filtering GitLab & GitHub repositories by topic. (#121)
- Added additional language syntax support. (#125)
- Added additional language icon support. (#129)
- Made language suggestions case insensitive. (#124)
- Stale repositories are now automatically deleted from the index. This can be configured via
settings.autoDeleteStaleRepos
in the config. (#128)
- Added config option
settings.maxFileSize
to control the maximum file size zoekt will index. (#118)
- Fixed syntax highlighting for zoekt query language. (#115)
- Fixed issue with Gerrit repo fetching not paginating. (#114)
- Fixed visual issues with filter panel. (#105)
- Gerrit support. (#104)
- Added search history to the search bar. (#99)
- Added symbol suggestions as suggestion type. (#98)
- Fixed issue where incorrect repository icons were shown occasionally in the filter panel. (#95)
- Fixed homepage links not resolving correctly when DOMAIN_SUB_PATH is set. (#96)
- Added file suggestions as a suggestion type. (#88)
- Added icon and link support for self-hosted repositories. (#93)
- Changed how PostHog telemetry key is passed into the docker image. (#92)
- Added search suggestions to the search bar. (#85)
- Added
DOMAIN_SUB_PATH
environment variable to allow overriding the default domain subpath. (#74) - Added option
all
to the GitLab index schema, allowing for indexing all projects in a self-hosted GitLab instance. (#84)
- Bumped NodeJS version to v20. (#78)
- Added support for syntax highlighting in the search bar. (#66)
- Changed the
exclude.repo
property to support glob patterns. (#70)
- Added additional telemetry events. (#63)
- Added support for indexing and searching repositories across multiple revisions (tag or branch). (#58)
- Local directory indexing support. (#56)
- Added filtering panel for filtering results by repository and by language. (#48)
- Fixed issue with GitLab sub-projects not being included recursively. (#54)
- Fixed slow rendering performance when rendering a large number of results. (#52)
- Fixed issue with either
star_count
orfork_count
not being included in the GitLab api response. (#55)
- Fixed issue with GitLab projects that are not owned but still visible by the provided
token
not being synchronized. (#51)
- Gitea support (#45)
- Added a toast notification when a new Sourcebot version is available (#44)
- Added support for specifying urls for the
--configPath
option in the backend.
- [Breaking Change] Added index schema v2. This new schema brings many quality of life features like clearer syntax, ability to specify individual
repos
,projects
,groups
, andorgs
, and the ability to easilyexclude
repositories. - Added a
SOURCEBOT_VERSION
build argument to the Docker image. (#41) - Added the
sourcebot_version
property to all PostHog events for versioned telemetry. (#41
- Fixed issue with unicode characters not being displayed correctly (#38)
- Fixed issue with filtering by gitlab groups (#36)
- Added
GITLAB_HOSTNAME
andGITHUB_HOSTNAME
environment variables to allow overriding the default hostnames for GitLab and GitHub.
- Initial release