Skip to content

Releases: backstage/backstage

v1.30.0-next.4

13 Aug 15:23
edb89a2
Compare
Choose a tag to compare
v1.30.0-next.4 Pre-release
Pre-release

v1.30.0-next.3

06 Aug 14:36
841e33c
Compare
Choose a tag to compare
v1.30.0-next.3 Pre-release
Pre-release

v1.30.0-next.2

31 Jul 09:04
03749cf
Compare
Choose a tag to compare
v1.30.0-next.2 Pre-release
Pre-release

v1.30.0-next.1

30 Jul 13:40
130840d
Compare
Choose a tag to compare
v1.30.0-next.1 Pre-release
Pre-release

v1.29.2

24 Jul 10:33
36c9f7a
Compare
Choose a tag to compare

This release fixes an issue where sign-out would not work when using the experimental public entry point.

v1.30.0-next.0

23 Jul 16:02
8711fa8
Compare
Choose a tag to compare
v1.30.0-next.0 Pre-release
Pre-release

v1.29.1

16 Jul 20:37
61d4c98
Compare
Choose a tag to compare

This release fixes an issue where the new health check endpoints in @backstage/backend-defaults would return a 404.

v1.29.0

16 Jul 13:34
0e8d7f6
Compare
Choose a tag to compare

These are the release notes for the v1.29.0 release of Backstage.

A huge thanks to the whole team of maintainers and contributors as well as the amazing Backstage Community for the hard work in getting this release developed and done.

Highlights

BREAKING: Backend System deprecations and removals

As part of the work towards a stable 1.0 release of the new backend system, there are several new deprecations and breaking changes in the backend system packages:

Breaking:

  • The deprecated token option has been removed from PermissionsService, and the request options are now required and must contain a credentials object.
  • The deprecated getPath option has been removed from httpRouterServiceFactory, the plugin paths are now always /api/<pluginId>.
  • It is no longer possible to pass service factory callbacks to the defaultServiceFactories option of createSpecializedBackend.

Deprecations:

  • The ability to define options for service factories through createServiceFactory has been deprecated. See the service architecture documentation for more information on how to define customizable services.
  • The ability to install backend features in callback form, i.e. () => BackendFeature, has been deprecated. This also includes other usages such as startTestBackend, and dynamically imported backend features. No manual changes should be needed for this change, as all backend feature creators have been updated to return BackendFeature instances directly.
  • The ServiceFactoryTest.get method has been renamed to ServiceFactoryTest.getSubject, and is now deprecated.
  • The following types have been renamed to use an *Options suffix instead: ServiceRefConfig, RootServiceFactoryConfig, PluginServiceFactoryConfig.
  • Deprecated all exports related to the legacy status checker in @backstage/backend-common.
  • The isDockerDisabledForTests function exported by @backstage/backend-test-utils has been deprecated.

Backend Health Service

A new health service as been added to the new backend system. This service provides health check endpoints for the backend, and replaces createStatusCheckRouter from @backstage/backend-common.

The service helps implement the new /.backstage/health/v1/readiness and /.backstage/health/v1/liveness endpoints, which provide health checks for the entire backend instance.

You can read more about this new service and how to customize it in the Root Health Service documentation.

New Catalog Logs module

This new @backstage/plugin-catalog-backend-module-logs module is a minimal module that will log any error events that are published by the catalog. This module is useful for making sure that catalog errors are visible in the logs, but you may want to replace it with a more customized solution if the resulting logs are too verbose.

Updates to the @backstage/create-app template

New backstage projects created with @backstage/create-app will now include the Catalog Logs module for logging catalog error events, as well as support for the Postgres Search Engine.

Permission Policy deprecations

The PermissionPolicy interface has been updated to align with the recent changes to the Backstage auth system. The second argument to the handle method is now of the new PolicyQueryUser type. This type maintains the old fields from the BackstageIdentityResponse, which are now all deprecated. Instead, two new fields have been added, which allows access to the same information:

  • credentials - A BackstageCredentials object, which is useful for making requests to other services on behalf of the user as part of evaluating the policy. This replaces the deprecated token field. See the Auth Service documentation for information about how to create a token using these credentials.
  • info - A BackstageUserInfo object, which contains the same information as the deprecated identity, except for the type field that was redundant.

Most existing policies can be updated by replacing the BackstageIdentityResponse type with PolicyQueryUser, which is exported from @backstage/plugin-permission-node, as well as replacing any occurrences of user?.identity with user?.info.

Renaming the setupRequestMockHandlers test utility

The setupRequestMockHandlers utility function exported by @backstage/test-utils and @backstage/backend-test-utils has been renamed to registerMswTestHooks. This is done to better reflect the context and the purpose of the function. The old name is deprecated and will be removed in a future release.

Catalog GitHub module support for repository events

The GitHub provider module and GithubEntityProvider for the Catalog now supports event driven ingestion of repositories by subscribing to repository events from GitHub. This includes the actions archived, deleted, edited, renamed, transferred, and unarchived. This is in addition to the existing support for push events, which you can read more about in the integration documentation for GitHub Discovery.

Contributed by @pjungermann in #25360

Catalog i18n support

The Catalog plugin as well as the Catalog React library now support internationalization (i18n). This means that you can customize the messaging in the catalog, as well as add translations. You can read more about this in the i18n documentation.

Contributed by @mario-mui in #23392

Route Binding configuration improvements

It is now possible to explicitly remove default route bindings, for cases where you don't want a plugin route to be bound to any target at all:

app:
  routes:
    bindings:
      # This has the effect of removing the button for registering new
      # catalog entities in the scaffolder template list view
      scaffolder.registerComponent: false

Scaffolder Fields performance improvements

The EntityPicker and MultiEntityPicker fields have been updated to improve performance with large catalogs. Contributed by @kmikko in #25315, #25380

BREAKING: Catalog LDAP Module improvements

The @backstage/plugin-catalog-backend-module-ldap module has been improved to support multiple or no declarations of both user and group configs.

This change is breaking for readLdapOrg and LdapProviderConfig, which now both always accept arrays of users and groups configurations.

Contributed by @Jenson3210 in #25261

Security Fixes

This release does not contain any security fixes.

Upgrade path

We recommend that you keep your Backstage project up to date with this latest release. For more guidance on how to upgrade, check out the documentation for keeping Backstage updated.

Links and References

Below you can find a list of links and references to help you learn about and start using this new release.

Sign up for our newsletter if you want to be informed about what is happening in the world of Backstage.

v1.29.0-next.2

09 Jul 14:22
3cd43cc
Compare
Choose a tag to compare
v1.29.0-next.2 Pre-release
Pre-release

v1.28.4

04 Jul 11:19
2a0bdac
Compare
Choose a tag to compare

This release fixes an issue where search had the wrong set of dependencies in the new frontend system.