Back to Backstage

Release v1.33.0

docs/releases/v1.33.0-changelog.md

1.51.0-next.285.6 KB
Original Source

Release v1.33.0

Upgrade Helper: https://backstage.github.io/upgrade-helper/?to=1.33.0

@backstage/[email protected]

Minor Changes

  • e939cd7: BREAKING The dynamicPluginsFeatureLoader options related to the root logger behavior (transports, level, format) are now gathered under a single logger option which is a function taking an optional Config argument and returning the logger options.

    This breaking change is required for 2 reasons:

    • it's totally possible that the current Config would be required to provide the logger options,
    • the logger-related options should be gathered under a common logger option because, when the root auditing service is introduced, distinct but similarly-named options would be required for the auditor as well.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 1440232: Adds a new createValidatedOpenApiRouterFromGeneratedEndpointMap function that uses the new static server generation in backstage-cli package schema openapi generate --server to create a typed express router.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 5064827: Made it possible to construct mockServices.database with a given knex instance

Patch Changes

@backstage/[email protected]

Minor Changes

  • 656d1ef: Internal update to use the updated generated code from backstage-cli package schema openapi generate --client-package ....
  • 31c4fe0: The client now automatically splits up very large getEntitiesByRefs calls into several smaller requests behind the scenes when needed. This ensures that each individual request does not exceed common Express.js request body limits or overload the server.

Patch Changes

@backstage/[email protected]

Minor Changes

  • bc47b17: BREAKING: Updates ESLint config to ignore all generated source code under src/**/generated/**/*.ts.

  • 6819f8c: Added a new optimization to the repo test command that will filter out unused packages in watch mode if all provide filters are paths that point from the repo root. This significantly speeds up running individual tests from the repo root in a large workspace, for example:

    sh
    yarn test packages/app/src/App.test.tsx
    
  • d849865: The package packing now populates typesVersions for additional entry points rather than using additional package.json files for type resolution. This improves auto completion of separate entry points when consuming published packages.

  • bc71665: BREAKING: The LEGACY_BACKEND_START flag has been removed, along with support for src/run.ts as the development entry point.

Patch Changes

  • 4046d53: Fixed an issue where the --successCache option for the repo test and repo lint commands would be include the workspace path in generated cache keys. This previously broke caching in environments where the workspace path varies across builds.

  • 4a378d3: Fix dev server reloads of plugin discovery for new frontend system.

  • 28b60ad: The check for react-dom/client in the Jest configuration will now properly always run from the target directory.

  • 6b2888c: Fixed an issue with the --successCache flag for repo test where the tree hash for the wrong package directory would sometimes be used to generate the cache key.

  • e30b65d: Added --alwaysPack as a replacement for the now hidden --alwaysYarnPack flag for the build-workspace command.

  • be0278e: Removed circular import

  • a7f97e4: Added a new "rejectFrontendNetworkRequests" configuration flag that can be set in the "jest" field in the root package.json:

    json
    {
      "jest": {
        "rejectFrontendNetworkRequests": true
      }
    }
    

    This flag causes rejection of any form of network requests that are attempted to be made in frontend or common package tests. This flag can only be set in the root package.json and can not be overridden in individual package configurations.

  • 6c48ebd: Add --max-warnings -1 support to backstage-cli package lint

  • 04297a0: The --successCache option for the repo test and repo lint commands now use an additive store that keeps old entries around for a week before they are cleaned up automatically.

  • a2f0559: When using the experimental Rspack flag the app build and dev server now injects configuration via a <script type="backstage.io/config">...</script> tag in index.html rather than the process.env.APP_CONFIG definition, which will now be defined as an empty array instead.

    This requires the app to be using the config loader from the 1.31 release of Backstage. Make sure your app is using at least that version if you are upgrading to this version of the CLI.

    If you have copied the implementation of the defaultConfigLoader, make sure to update it to the new implementation. In particular the config loader needs to be able to read configuration from script tags with the type backstage.io/config.

  • b4627f2: Fixed an issue where the raw-loader for loading HTML templates was not resolved from the context of the CLI package.

  • cd1ef2b: Updated dependency vite to ^5.0.0.

  • 23f1da2: Updated dependency ts-morph to ^24.0.0.

  • b533056: Updated dependency css-loader to ^7.0.0.

  • be008c3: Updated dependency @module-federation/enhanced to ^0.7.0.

  • 6266ed3: Updated dependency del to ^8.0.0.

  • 4046d53: Fixed an issue with the repo lint command where the cache key for the --successCache option would not properly ignore files that should be ignored according to .eslintignores.

  • e19c53c: Fix for the --link flag for package start to deduplicate react-router and react-router-dom.

  • 17850a5: Update upgrade-helper link in versions:bump command to include yarnPlugin parameter when the yarn plugin is installed

  • 09ea093: Fixed an issue where .css style injection would fail for published packages.

  • 702f41d: Bumped dev dependencies @types/node

  • 5d74716: Remove unused backend-common dependency

  • b084f5a: Bump the Webpack dependency range to ^5.94.0, as our current configuration is not compatible with some older versions.

  • e565f73: Added support for .webp files in the frontend tooling.

  • 946fa34: Added a new --link <workspace-path> option for frontend builds that allow you to override module resolution to link in an external workspace at runtime.

    As part of this change the Webpack linked workspace resolution plugin for frontend builds has been removed. It was in place to support the old workspace linking where it was done by Yarn, which is no longer a working option.

  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • d52d7f9: Make readDurationFromConfig support both ISO and ms formats as well, to make it easier to enter time as an end user

Patch Changes

@backstage/[email protected]

Minor Changes

  • dc409c5: The SupportButton component will now be hidden if no support config is specified in app-config

Patch Changes

  • 0f18340: Change core component Table tool bar search box to the a appropriate Search icon and text

  • af9097e: Adds the ability to mock a media query per break point and to change the active break point during a test. Usage example:

    ts
    const { set } = mockBreakpoint({
      initialBreakpoint: 'md',
      queryBreakpointMap: {
        '(min-width:1500px)': 'xl',
        '(min-width:1000px)': 'lg',
        '(min-width:700px)': 'md',
        '(min-width:400px)': 'sm',
        '(min-width:0px)': 'xs',
      },
    });
    // assertions for when the active break point is "md"
    set('lg');
    // assertions for when the active break point is "lg"
    
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 1440232: backstage-repo-tools package schema openapi generate --server now generates complete TS interfaces for all request/response objects in your OpenAPI schema. This fixes an edge case around recursive schemas and standardizes both the generated client and server to have similar generated types.
  • 47fdbb4: Adds a --watch mode to the schema openapi generate command for a better local schema writing experience.

Patch Changes

  • 95401a8: The generate-patch command now properly includes newly created files in the patch.
  • 23f1da2: Updated dependency ts-morph to ^24.0.0.
  • 3f1fb21: The generate-patch command will now fall back to always adding a resolutions entry, even if no matching descriptors are found.
  • dde85ee: Added a new generate-patch command that can be used to generate patches for current changes in a source workspace to be installed it a target workspace.
  • 702f41d: Bumped dev dependencies @types/node
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • c5e39e7: Introduce createDeferred and DeferredPromise.

@backstage/[email protected]

Minor Changes

  • 6836522: Added support for pagination in api-docs plugin - DefaultApiExplorerPage

Patch Changes

@backstage/[email protected]

Minor Changes

  • 815b702: Configuration is no longer injected into static assets if a index.html.tmpl file is present.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 75168e3: BREAKING: The AWS ALB fullProfile will no longer have the its username or email converted to lowercase. This is to ensure unique handling of the users. You may need to update and configure a custom sign-in resolver or profile transform as a result.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 75168e3: BREAKING: The AWS ALB fullProfile will no longer have the its username or email converted to lowercase. This is to ensure unique handling of the users. You may need to update and configure a custom sign-in resolver or profile transform as a result.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 50df3c8: - Updated EntityLayout component to implement breadcrumb navigation based on the entity relations.

    • Added parentEntityRelations prop to EntityLayoutProps to specify relation types for parent entities.
  • 79e9631: Allow OffsetPaginatedCatalogTable to configure Table options and CursorPaginatedCatalogTable to configure paginationPosition.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 39fd704: Internal update to use the new generated server types from backstage-cli package schema openapi generate --server.

  • 76857da: Added entity_ref column to final_entities in order to move refresh_state away from the read path

  • 34d4360: Drop redundant indices from the database.

    The following redundant indices are removed in this version:

    • final_entities_entity_id_idx - overlaps with final_entities_pkey
    • refresh_state_entity_id_idx - overlaps with refresh_state_pkey
    • refresh_state_entity_ref_idx - overlaps with refresh_state_entity_ref_uniq
    • search_key_idx and search_value_idx - these were replaced by the composite index search_key_value_idx in #22594

    No negative end user impact is expected, but rather that performance should increase due to less index churn.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 1b5fdd9: Extended the configuration with the includeArchivedRepos property, which allows including repositories when the project is archived.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 6cf91c5: Use HumanDuration for all duration needs in the public API, instead of luxon types. These are generally compatible, with a few caveats:

    • If you scheduled things to run quarterly (quarter or quarters), you can use { months: 3 } instead.
    • If you used the singular nouns such as year: 1, use plurals instead (e.g. years: 1).

Patch Changes

@backstage/[email protected]

Minor Changes

  • 415aeb3: Add Support for Google LDAP Vendor

Patch Changes

@backstage/[email protected]

Minor Changes

  • bc13b42: The catalogServiceRef now has its own accompanying CatalogService interface that requires Backstage credentials objects to be passed. This new version of the catalogServiceRef has been promoted and is now available via the main @backstage/plugin-catalog-node entry point.

    The old catalogServiceRef with the old CatalogApi type is still available from the /alpha entry point.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71b8704: Bumping @kubernetes/client-node to 1.0.0-rc7 to mitigate CVEs related to the request and tough-cookie packages

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71b8704: Bumping @kubernetes/client-node to 1.0.0-rc7 to mitigate CVEs related to the request and tough-cookie packages

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71b8704: Bumping @kubernetes/client-node to 1.0.0-rc7 to mitigate CVEs related to the request and tough-cookie packages

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71b8704: Bumping @kubernetes/client-node to 1.0.0-rc7 to mitigate CVEs related to the request and tough-cookie packages

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71b8704: Bumping @kubernetes/client-node to 1.0.0-rc7 to mitigate CVEs related to the request and tough-cookie packages

Patch Changes

@backstage/[email protected]

Minor Changes

  • 87ffc1c: Rephrasing labels of the View filter to be more clear. Based on the received users' feedback.

Patch Changes

  • 4186105: Added title to the Notifications' table. The title clearly states the filter selection and total count of messages. This change aligns the look and feel closer to other tables.
  • 3a0731e: The "Created after" filter renamed to the "Sent out" based on the received users' feedback.
  • 3e135f2: The notification's title is emphasized to be clearly distinguished from the description.
  • 97ba58f: Add support for user specific notification settings
  • 1d87c43: Show count of unread notifications in the left-side MenuItem. This replaces the simple true/false bullet.
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • f61d4cc: Add scaffolder permission scaffolder.template.management for accessing the template management features
  • 69fb6e7: Fix contextMenu not being disabled bug in new scaffolder pages

Patch Changes

@backstage/[email protected]

Minor Changes

  • 0587633: Bumped the isolated-vm dependency from v4 to v5, which drops support for Node.js v16.

  • e61d5ef: BREAKING EXPERIMENTAL: The checkpoint method now takes an object instead of previous arguments.

    ts
    await ctx.checkpoint({ key: 'repo.create', fn: () => ockokit.repo.create({...})})
    

    You can also now return void from the checkpoint if the method returns void inside the checkpoint handler.

Patch Changes

@backstage/[email protected]

Minor Changes

  • e61d5ef: BREAKING EXPERIMENTAL: The checkpoint method now takes an object instead of previous arguments.

    ts
    await ctx.checkpoint({ key: 'repo.create', fn: () => ockokit.repo.create({...})})
    

    You can also now return void from the checkpoint if the method returns void inside the checkpoint handler.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 69fb6e7: Fix contextMenu not being disabled bug in new scaffolder pages

Patch Changes

@backstage/[email protected]

Minor Changes

  • 39fd704: Internal update to use the new generated server types from backstage-cli package schema openapi generate --server.

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 702f41d: Bumped dev dependencies @types/node

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 702f41d: Bumped dev dependencies @types/node
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 7907e3b: Bumped create-app version.
  • 42386c2: Bumped create-app version.
  • 702f41d: Updated engines to support Node 20 or 22
  • a917f86: This update adds the @backstage/repo-tools package to the versions.ts file, enabling proper version resolution for templates. The {{version '@backstage/repo-tools'}} placeholder now works as expected in the create-app process.
  • 5872964: Use the main entrypoint for create-app installs
  • 702f41d: Bumped dev dependencies @types/node
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 52ae92d: The getDefaultCredentialsChain function now accepts and applies a region parameter, preventing it from defaulting to us-east-1 when no region is specified.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@techdocs/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • ea75c37: Internal refactor to avoid top-level imports from MUI.

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • a0a9a4a: Browsers silently drop cookies that exceed 4KB, which can be problematic for refresh tokens and other large cookies.This update ensures that large cookies, like refresh tokens, are not dropped by browsers, maintaining the integrity of the authentication process. The changes include both the implementation of the cookie splitting logic and corresponding tests to validate the new functionality.
  • 4e58bc7: Upgrade to uuid v11 internally
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 23f1da2: Updated dependency ts-morph to ^24.0.0.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 9816f51: Fix the event request validation for incoming requests for GitHub webhook events by using the raw body when verifying the signature.
  • 9816f51: Add raw body information to RequestDetails and use the raw body when validating incoming event requests.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 4501631: Fixed an issue where subscribing to events threw an error and gave up too easily. Calling the subscribe method will cause the background polling loop to keep trying to connect to the events backend, even if the initial request fails.

    By default the events service will attempt to publish and subscribe to events from the events bus API in the events backend, but if it fails due to the events backend not being installed, it will bail and never try calling the API again. There is now a new events.useEventBus configuration and option for the DefaultEventsService that lets you control this behavior. You can set it to 'never' to disabled API calls to the events backend completely, or 'always' to never allow it to be disabled.

  • e02a02b: Fix events.useEventBus by propagating config to DefaultEventsService

  • 9816f51: Add raw body information to RequestDetails and use the raw body when validating incoming event requests.

  • 5d74716: Remove unused backend-common dependency

  • 0b57aa1: Fixed an issue where the event bus polling would duplicate and increase exponentially over time.

  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 97ba58f: Add support for user specific notification settings
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 9cf827c: Fix double branch creation in public:bitbucket{Cloud,Server}:pull-request This resulted in the following error when using the actions:

    AlreadyExistsError: Failed to create branch at create-test because it already exists.
    

    The issue was original introduced in d103a48fa306d745599dc0c793668c9e6a479d32

  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

@internal/[email protected]

Patch Changes

@internal/[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

@internal/[email protected]

Patch Changes

@internal/[email protected]

Patch Changes

@internal/[email protected]

Patch Changes