id | title | description |
---|---|---|
v1.18.0 |
v1.18.0 |
Backstage Release v1.18.0 |
These are the release notes for the v1.18.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.
Integrators can now bring their own auth strategies through the use of the addAuthStrategy
method on KubernetesBuilder
. As part of this, setAuthTranslatorMap
has also been removed and the concept moves into the auth strategies instead.
Contributed by @jamieklassen in #19903
If you ingest users/groups from GitLab using GitlabOrgDiscoveryEntityProvider
, you now have to scope its work to a certain group. The backend will not start up successfully without that.
catalog:
providers:
gitlab:
yourProviderId:
host: gitlab.com
orgEnabled: true
+ group: org/teams
Contributed by @sbarrypoppulo in #18889
There’s a new OpenCost plugin that provides a port of the latest OpenCost UI to Backstage. The plugin's README covers installation and configuration.
Contributed by @mattray in #18383
The minimum TypeScript version is now v5.0, please make sure that you upgrade the TypeScript dependency in your own projects accordingly.
We believe that we have now reached a point where we want to encourage use of the New Backend System. There are still things to iron out and plugins to be migrated, but we consider it to be ready for production use. Please check out the migration guide for backends, and use the legacyPlugin
helper to install any plugins that are not ready for use directly with the new system.
For local development we also encourage you to try out the new package start
command for backends in the CLI, which you enable by setting EXPERIMENTAL_BACKEND_START=1
in the environment. This new way of running the backend no longer uses Webpack, in favor of a more plain watch mode with module loaders. It does however still maintain the SQLite database state across restarts without filesystem overhead. If all goes according to plan this will be the new default starting from the next release.
Plugins and modules leveraging the New Backend System are now supposed to be the default export of their respective packages. This clarifies what the main entrypoint of each package is, facilitates automatic feature discovery, and also lets you easily make dynamic import one-liners in your code. We have made this change to a lot of the packages that had already been migrated to the new backend system. So after upgrading to this version of Backstage, you may find that imports in your backend package no longer match.
For example, if you are currently importing plugins using the following pattern:
import { examplePlugin } from '@backstage/plugin-example-backend';
backend.add(examplePlugin);
They may now need to be migrated to:
backend.add(import('@backstage/plugin-example-backend'));
The CLI has received a new backstage-cli fix
command, typically configured to be run as yarn fix
. The command will scan through all packages in the project and make sure that they are declared correctly. Initially it will make sure that package exports are declared correctly, replacing the backstage-cli migrate package-exports
command, as well as making sure that frontend packages set "sideEffects": false
. The latter fix has been applied to all @backstage/*
packages as well, which allows for more optimized frontend builds.
The @backstage/plugin-auth-backend
now has support for the new backend system, as well as installing auth providers via modules. As part of this the auth backend has received a substantial redesign, with all of the APIs needed to build your own providers now exported from @backstage/plugin-auth-node
. It is now also possible to configure fixed sign-in resolvers via static configuration for a limited number of providers.
You can read more about these changes in the @backstage/plugin-auth-node
changelog.
A new set of experimental APIs have been added to the frontend system to support internationalization. This allows for both translations to other languages, as well as overriding default messages. Partial support has so far been added to the @backstage/plugin-user-settings
and @backstage/plugin-adr
plugins. See the docs for more details.
Contributed by @mario-mui in #17436
Two new packages have been added to support the work towards frontend declarative integration: @backstage/frontend-plugin-api
and @backstage/frontend-app-api
. These packages are still highly experimental and should not be used.
The session expiration check has been improved for all auth providers. The expiration of both the Backstage identity token as well as provider specific tokens will be considered when deciding whether the session has expired.
It is now possible to download the results of a dry-run as a zip archive from the template editor dry-run results view.
Contributed by @fyyyyy in #19388
The integration for Azure DevOps now allows for configuration of separate credentials for different organizations. See the documentation for more information.
Contributed by @sanderaernouts in #18213
The Scaffolder’s integrations into the catalog have a new dedicated home. The ScaffolderEntitiesProcessor
and its corresponding New Backend System catalogModuleScaffolderEntityModel
now should be imported from here, since they have been deprecated in the Scaffolder backend plugin package.
Great efforts have been made by VMware to move the needle in terms of better MySQL support across the core and plugins. Check out the PR for details!
Contributed by @PeteLevineA in #18921
This release does not contain any security fixes.
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.
Below you can find a list of links and references to help you learn about and start using this new release.
- Backstage official website, documentation, and getting started guide
- GitHub repository
- Backstage's versioning and support policy
- Community Discord for discussions and support
- Changelog
- Backstage Demos, Blog, Roadmap and Plugins
Sign up for our newsletter if you want to be informed about what is happening in the world of Backstage.