v1.7.0
These are the release notes for the v1.7.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
GitHub Catalog Import now Powered by the Backend
The analysis performed during catalog imports (i.e. when supplying the URL of a repository rather than an individual YAML file in the Create flow) is now powered by the backend rather than frontend code. This means that the catalog backend needs to be supplied with a location analyzer for this use case to continue to function.
If you want to make use of this feature, check out the installation instructions in the changelog.
Contributed by @kissmikijr in #13800
Permission Rule Changes
When defining permission rules, it's now necessary to provide a Zod Schema that specifies the parameters the
rule expects. This has been added to help better describe the parameters in the
response of the metadata endpoint and to validate the parameters before a rule
is executed. The signatures of the rule methods (apply
and toQuery
) have
changed slightly as well.
You can read more about this in the permissions documentation and the changelog.
Migration: jest
v29
Both jest
, jest-runtime
, and jest-environment-jsdom
as used by the
Backstage CLI were bumped to version 29. This is up from version 27, so check
out both the v28 and
v29 (later
here) migration guides, since
your existing tests may be affected.
Particular changes that were encountered in the main Backstage repository are:
- The updated snapshot format.
jest.useFakeTimers('legacy')
is nowjest.useFakeTimers({ legacyFakeTimers: true })
.- Error objects collected by
withLogCollector
from@backstage/test-utils
are now objects with adetail
property rather than a string.
Migration: react-router
v6
Newly created Backstage repositories now use the stable version 6 of
react-router
, just like the main repository does.
Migrating to the stable version of react-router
is optional for the time
being; Backstage has support for both versions. But if you want to do the same
for your existing repository, please follow this guide.
Support for the beta version will be removed in a later release.
Support for __mocks__
and __testUtils__
directories
The Backstage CLI now has built-in support for __mocks__
and __testUtils__
directories in your code. These can be used for mocks and shared utilities in
tests.
New Arguments for the Router of @backstage/plugin-bazaar-backend
The bazaar-backend createRouter
function now requires that the identityApi
is passed to the router.
Deprecated plugin: @backstage/plugin-catalog-backend-module-bitbucket
This has been deprecated and split into
@backstage/plugin-catalog-backend-module-bitbucket-cloud
and
@backstage/plugin-catalog-backend-module-bitbucket-server
, for BitBucket Cloud
and BitBucket Server respectively. Please update your dependencies accordingly,
depending on which product you use.
The original package will be removed in a future release.
Contributed by @pjungermann in #14070
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.
- 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.