Project: Backstage (App Definition and Development / Application Definition & Image Build)
File: v1.9.0.md

id: v1.9.0 title: v1.9.0 description: Backstage Release v1.9.0 These are the release notes for the v1.9.0 release of . 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. The catalog client has a new `getEntitiesByRefs` method, and the catalog backend has a corresponding new . These allow for the efficient batch fetching of entities by their refs, which may be useful e.g. in GraphQL resolvers or similar contexts where you need to fetch large numbers of entities at the same time. The management of AWS credentials in the backend saw some significant improvement, through the introduction of the `@backstage/integration-aws-node` package and its corresponding `AwsCredentialsManager` interface. This is leveraged e.g. in the . Contributed by in There was further work to advance the functionality, which propagates and processes events such as webhooks. It has modules for , , , , , and , along with other improvements. Contributed by and others in the community. Introduces incremental entity providers, which are used for streaming very large data sources into the catalog. Contributed by The new custom field explorer lets you view and play around with available installed custom field extensions. Contributed by in Individual Scaffolder task workers can now run multiple (defaults to 10) tasks concurrently using the `concurrentTasksLimit` option, leading to more efficient resource usage. Contributed by in We have started working on phasing out the Prometheus Metrics exposed using the `prom-client` in favor of replacement metrics using . The `prom-client` metrics have always been a band-aid and never fully established but we want to notify existing users of their future removal. Backstage does not provide any default exporter or instructions on how to export the new metrics yet but you should expect documentation

We hope to fully incorporate OpenTelemetry into other plugins once we gain confidence and establish patterns. Added in . The `getProvider` and `getRouter` methods of the main app instance from `@backstage/core-app-api` have been deprecated. Instead, there is now an `AppRouter` component that is a drop-in replacement for the router, and a new `createRoot` method for creating the root app component. This change will simplify the internal logic of the app, and also makes it more clear that the app is created from a React element tree. Work has progressed with the new system and we have been able to add a couple of new features, most notable are shutdown lifecycle events and stop functionality to the Backend. All core service references are now exported via a single `coreServices` object. For example, the `loggerServiceRef` is now accessed via `coreServices.logger` instead, . All service interfaces are now suffixed with `*Service`. Root scoped services are now always initialized, whether they are depended directly on by others or not; this allows features such as the metrics exporter to work correctly. This new package is part of an ongoing effort to make more of the repository tooling in the main Backstage repository available to the rest of the community. The main piece that has been added so far is the tooling needed to use API reports. 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 . Below you can find a list of links and references to help you learn about and start using this new release. , , and Backstage's for discussions and support Backstage , , and Sign up for our if you want to be informed about what is happening in the world of Backstage.