Buf Schema Registry (BSR)

Release Notes

v1.7.0

Release Date: 2024-04-17 | Database version: 266 | Minimum CLI version: v1.24.0

  • Custom options: BSR Generated Documentation has been enhanced to support Protobuf custom options.
  • Protoschema plugins: We released a pair of Protobuf plugins that generate schemas from protos for JSON Schema and PubSub. Additionally, we published a Buf managed module and plugin for BigQuery.
  • Module Archive: A new generic module archive endpoint can be used to download any module from the BSR in an archived format. This is similar to buf export but includes additional files (e.g. license, readme), and it works with standard tools, such as curl or wget.
  • Module descriptor endpoint: A new endpoint enables users to get the FileDescriptorSet of a BSR module from an HTTP endpoint. As with the Module Archive, it works with standard tools and can be easily cached from the client side.
  • Data migrations: This release contains an important data migration that will run asynchronously after startup and could take some time to complete on instances with a lot of data. This migration will need to complete before it is possible to upgrade to future versions, so we recommend upgrading to 1.7.0 as soon as you can.

v1.6.0

Release Date: 2024-03-19 | Database version: 255 | Minimum CLI version: v1.24.0

  • Managed Modules and Plugins: Buf managed modules (e.g. googleapis, protovalidate) and managed plugins are packaged with the BSR release. See these instructions for details on how to enable. Existing customers will be contacted with upgrade instructions.
  • SAML: We now allow for setting the SAML groups attribute name in the BSR helm chart. An example can be found in the on-prem installation docs.
  • SLO Dashboards: The observability dashboards and alerts have been updated to fix a bug where an incorrect histogram bucket was being used. The new Rules and Dashboards are available on the Observability page.

Archive

Release notes for older versions

v1.5.1

Release Date: 2024-02-15 | Database version: 247 | Minimum CLI version: v1.23.0

  • Plugins Sandbox: Added a config option to allow restricted network access from within custom plugins.

v1.5.0

Release Date: 2024-02-13 | Database version: 247 | Minimum CLI version: v1.23.0

  • Icons: The BSR has updated an update icon set that is better aligned with the concepts represented.
  • Search results design: BSR Search uses the new icons to more effectively communicate result types, and also includes richer results on the search page.
  • Pinned dependencies in Python generated SDKs: The BSR now pins module and plugin dependencies in the Python generated SDKs.
  • Reduced memory usage: BSR instances no longer exhibit unbounded memory growth that was caused by a long-lived cache in an upstream dependency.

v1.4.1

Release Date: 2024-01-24 | Database version: 246 | Minimum CLI version: v1.23.0

  • Python registry: The BSR now serves the Python index at /gen/python/simple in addition to /gen/python so that Artifactory correctly detects that the BSR serves a Python repository.
  • Types usage: Types usage can now be viewed from the admin panel for enterprise and on-prem BSR instances. For example, if your server is https://buf.example.com, then usage will be available at https://buf.example.com/admin/usage.

v1.4.0

Release Date: 2024-01-17 | Database version: 246 | Minimum CLI version: v1.23.0

  • Azure support: The BSR now supports deployment in an Azure environment and includes new config options for Azure Blob Storage.
  • OCI registry: The OCI registry used for storing remote plugins and managed modules has been upgraded. The new version adds support for Azure Blob Storage and addresses issues with AWS Workload Identity.

v1.3.1

Release Date: 2023-12-07 | Database version: 241 | Minimum CLI version: v1.23.0

  • Bugfix: As part of the Governance workflow, the “review changes” page for a commit with a breaking change was showing an error and now displays properly.

v1.3.0

Release Date: 2023-12-05 | Database version: 241 | Minimum CLI version: v1.23.0

  • Python support for generated SDKs: Python engineers no longer need to manage a Protobuf toolchain or generate code locally—they can now download pre-packaged generated code for their Protobuf schemas from the BSR using package management tools like pip, Poetry, Conda, and others that support PEP 503 - Simple Repository API.
  • Governance workflow: The BSR now provides the ability to configure a customer SMTP server to send email messages for the governance workflow.
  • Account Merging: When a new SSO provider is configured, existing BSR users will automatically be migrated to the new provider based on email matching the next time they log in.
  • SLO Dashboards: The SLO alerting threshold for slow requests has been decreased from 250s to 75s, in an effort to be more responsive to slow requests. Additionally, the histogram buckets for HTTP metrics have been adjusted so they are now in parity with RPC metrics. Please upgrade by importing the new files.

v1.2.0

Release date: 2023-11-07 | Database version: 239 | Minimum CLI version: v1.23.0

  • Governance flow: Buf's breaking change policy enforcement includes a review flow, so that when developers attempt to push breaking changes to the BSR, commits can be approved or rejected by code owners instead of being rejected outright. This gives downstream consumers protection from breaking schema changes, but allows for nuance in cases where breaking changes are acceptable.
  • Updated activity view: The activity view in the BSR has been updated to support branches and improve the ability to view commit history and tags. Throughout the BSR UI, branches have replaced drafts.
  • Generated SDKs: Remote Packages has been rebranded as Generated SDKs, and includes clearer instructions with plugin filtering based on the preferred programming language.

v1.1.0

Release date: 2023-10-03 | Database version: 222 | Minimum CLI version: v1.23.0

  • The BSR now allows customers to enforce uniqueness of Protobuf types and file paths across all modules. This helps to prevent name conflicts between Protobuf types in an application, which could result in fatal runtime exceptions and outages.
  • BSR Search now includes results from the content of a module. Module content can be either a module element (service, method, message, enum) or a module file (.proto).
  • BSR generated docs now support syntax highlighting and markdown table rendering.
  • This release includes new SLO Dashboards for non-RPC endpoints to give visibility into the entire BSR as a whole. There are now separate dashboards to monitor all HTTP requests and Registry requests. See Observability for more information.

v1.0.4

Release date: 2023-08-28 | Database version: 208

  • Enabled alerting for SLO dashboard
    • Adds high-priority  alerts with severity=page label for high error rate incidents ErrorBudgetBurn
    • Adds low-priority ErrorBudgetBurn alerts with severity=warning label for low error rate incidents

v1.0.3

Release date: 2023-07-21 | Database version: 189

  • Updated the helm chart to default to using a fully-qualified domain name for the OCI Registry
  • Fixed the panic observed in maintenance mode. Previously, a working auth config was assumed; now updated to work without auth.
  • Added the option of allowing the BSR to read trusted certificates from mounted files to address a x509 error.

v1.0.2

Release date: 2023-07-14 | Database version: 186

  • Added support for AWS instance profile credentials
  • Updated Grafana dashboards to include recording rules
  • Added support for prometheus endpoints

v1.0.1

Release date: 2023-07-07 | Database version: 182

  • Updated the BSR to use goose for database migrations
  • Included simple Grafana SLO dashboards with release

v1.0.0

Release date: 2023-06-30

  • Initial release