Back to Backstage

Release v1.50.0-next.1

docs/releases/v1.50.0-next.1-changelog.md

1.51.0-next.253.7 KB
Original Source

Release v1.50.0-next.1

Upgrade Helper: https://backstage.github.io/upgrade-helper/?to=1.50.0-next.1

@backstage/[email protected]

Minor Changes

  • 4559806: Added support for typed examples on actions registered via the actions registry. Action authors can now provide examples with compile-time-checked input and output values that match their schema definitions.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 400aa23: Added FetchMiddlewares.clarifyFailures() which replaces the uninformative "TypeError: Failed to fetch" with a message that includes the request method and URL.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 49397c1: Simplified the type signature of createRouteRef by replacing the dual TParams/TParamKeys type parameters with a single TParamKey parameter. This is a breaking change for callers that explicitly provided type arguments, but most usage that relies on inference is unaffected.

Patch Changes

  • ddc5247: Fixed FlattenedMessages type to avoid excessive type instantiation depth in TypeScript 6 when using createTranslationRef with the translations option.
  • fa55078: Refactored the internal createSchemaFromZod helper to use a schema-first generic pattern, replacing the ZodSchema<TOutput, ZodTypeDef, TInput> constraint with TSchema extends ZodType. This avoids "excessively deep" type inference errors when multiple Zod copies are resolved.

@backstage/[email protected]

Minor Changes

  • fa55078: BREAKING: Refactored SignInResolverFactoryOptions to use a schema-first generic pattern, following Zod's recommended approach for writing generic functions. The type parameters changed from <TAuthResult, TOptionsOutput, TOptionsInput> to <TAuthResult, TSchema extends ZodType>.

    This fixes "Type instantiation is excessively deep and possibly infinite" errors that occurred when the Zod version in a user's project did not align with the one in Backstage core.

    If you use createSignInResolverFactory without explicit type parameters (the typical usage), no changes are needed:

    ts
    // This usage is unchanged
    createSignInResolverFactory({
      optionsSchema: z.object({ domain: z.string() }).optional(),
      create(options = {}) {
        /* ... */
      },
    });
    

    If you reference SignInResolverFactoryOptions with explicit type parameters, update as follows:

    diff
    - SignInResolverFactoryOptions<MyAuthResult, MyOutput, MyInput>
    + SignInResolverFactoryOptions<MyAuthResult, typeof mySchema>
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 309b712: Added a new execute-template actions registry action that executes a scaffolder template with provided input values and returns a task ID for tracking progress.

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 4559806: Added support for typed examples on actions registered via the actions registry. Action authors can now provide examples with compile-time-checked input and output values that match their schema definitions.
  • 5cd814f: Refactored auditor severity log level mappings to use zod/v4 with schema-driven defaults and type inference.
  • 6e2aaab: Fixed AwsS3UrlReader failing to read files from S3 buckets configured with custom endpoint hosts. When an integration was configured with a specific endpoint like https://bucket-1.s3.eu-central-1.amazonaws.com, the URL parser incorrectly fell through to the non-AWS code path, always defaulting the region to us-east-1 instead of extracting it from the hostname.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 2e5c5f8: Bumped glob dependency from v7/v8/v11 to v13 to address security vulnerabilities in older versions. Bumped rollup from v4.27 to v4.59+ to fix a high severity path traversal vulnerability (GHSA-mw96-cpmx-2vgc).
  • a7a14b7: Added DOM.AsyncIterable to the default lib in the shared TypeScript configuration, enabling standard async iteration support for DOM APIs such as FileSystemDirectoryHandle. This aligns behavior with TypeScript 6.0, where this lib is included in DOM by default.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 2e5c5f8: Bumped glob dependency from v7/v8/v11 to v13 to address security vulnerabilities in older versions. Bumped rollup from v4.27 to v4.59+ to fix a high severity path traversal vulnerability (GHSA-mw96-cpmx-2vgc).

@backstage/[email protected]

Patch Changes

  • 2e5c5f8: Bumped glob dependency from v7/v8/v11 to v13 to address security vulnerabilities in older versions. Bumped rollup from v4.27 to v4.59+ to fix a high severity path traversal vulnerability (GHSA-mw96-cpmx-2vgc).

@backstage/[email protected]

Patch Changes

  • 64a91d0: Rename the legacy frontend-plugin to frontend-plugin-legacy

@backstage/[email protected]

Patch Changes

  • 2e5c5f8: Bumped glob dependency from v7/v8/v11 to v13 to address security vulnerabilities in older versions. Bumped rollup from v4.27 to v4.59+ to fix a high severity path traversal vulnerability (GHSA-mw96-cpmx-2vgc).
  • 6cc4811: Minor error message update

@backstage/[email protected]

Patch Changes

  • 77ab7d5: Hide the default page header for pages created through the compatibility wrappers, since legacy plugins already render their own headers.
  • 49397c1: Removed unnecessary type argument from internal createRouteRef call.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • Bumped create-app version.

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • df43b0e: Fixed no-mixed-plugin-imports rule to return null from non-fixable suggestion handlers and added an explicit SuggestionReportDescriptor[] type annotation, matching the stricter type checking in TypeScript 6.0.

@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

  • 2e5c5f8: Bumped glob dependency from v7/v8/v11 to v13 to address security vulnerabilities in older versions. Bumped rollup from v4.27 to v4.59+ to fix a high severity path traversal vulnerability (GHSA-mw96-cpmx-2vgc).
  • 8e9679b: Parallelized CLI report generation, reducing wall-clock time by ~4x.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 2e5c5f8: Bumped glob dependency from v7/v8/v11 to v13 to address security vulnerabilities in older versions. Bumped rollup from v4.27 to v4.59+ to fix a high severity path traversal vulnerability (GHSA-mw96-cpmx-2vgc).

  • 8d79835: Added RangeSlider component for selecting numeric ranges.

    Affected components: RangeSlider

  • 5081bcc: Fixed Avatar becoming elliptical in flex layouts by preventing it from shrinking.

    Affected components: Avatar

  • d840ba9: Fixed relative href resolution for BUI link components. Relative paths like ../other are now correctly turned into absolute paths before reaching the React Aria layer, ensuring client-side navigation goes to the right place.

    Affected components: ButtonLink, Card, CellProfile, CellText, Link, ListRow, MenuItem, MenuListBoxItem, Row, SearchAutocompleteItem, Tab, Tag

  • 3bc23a5: Added support for disabling pagination in useTable complete mode by setting paginationOptions: { type: 'none' }. This skips data slicing and produces pagination: { type: 'none' } in tableProps, removing the need for consumers to manually override the pagination prop on Table. Also fixed complete mode not reacting to dynamic changes in paginationOptions.pageSize.

    Affected components: useTable

  • c368cf3: Updated dependency @types/use-sync-external-store to ^1.0.0.

  • d0f055f: Added showPaginationLabel prop to TablePagination and useTable pagination options. When set to false, the pagination label (e.g., "1 - 20 of 150") is hidden while navigation controls remain visible. Defaults to true.

    Affected components: TablePagination, useTable

  • feaf3d1: Fixed HeaderNav hover indicator covering tab text when theme uses opaque background colors. Also fixed an incorrect CSS variable reference (--bui-font-family--bui-font-regular).

    Affected components: Header

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • e5baa20: Added support for configuring URL redirects on the app/routes extension. Redirects can be configured through app-config as an array of {from, to} path pairs, which will cause navigation to the from path to be redirected to the to path.

    For example:

    yaml
    app:
      extensions:
        - app/routes:
            config:
              redirects:
                - from: /old-path
                  to: /new-path
    
  • 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/plugin-auth-backend-module-bitbucket-server-provider@0.2.14-next.1

Patch Changes

@backstage/plugin-auth-backend-module-cloudflare-access-provider@0.4.14-next.1

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

  • 2e5c5f8: Bumped glob dependency from v7/v8/v11 to v13 to address security vulnerabilities in older versions. Bumped rollup from v4.27 to v4.59+ to fix a high severity path traversal vulnerability (GHSA-mw96-cpmx-2vgc).
  • 6884814: Improved catalog entity filter query performance by switching from IN (subquery) to EXISTS (correlated subquery) patterns. This enables PostgreSQL semi-join optimizations and fixes NOT IN NULL-semantics pitfalls by using NOT EXISTS instead.
  • 9da73bf: Reduced search table write churn during stitching by syncing only changed rows instead of doing a full delete and re-insert. On Postgres this uses a single writable CTE, on MySQL a temporary table merge with deadlock retry, and on SQLite the previous bulk replace.
  • 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

  • b11e338: Fixed a bug where GithubEntityProvider with validateLocationsExist: true and filters.branch configured would always check for the catalog file on the repository's default branch (HEAD) instead of the configured branch. This caused repositories to be filtered out when the catalog file only existed on the non-default branch.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/plugin-catalog-backend-module-incremental-ingestion@0.7.11-next.1

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/plugin-catalog-backend-module-scaffolder-entity-model@0.2.19-next.1

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

@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

  • 864a799: Fix the display of the description in GitlabRepoPicker:

    • Move owner.description helper text outside the allowedOwners conditional so it renders for both Select and Autocomplete modes.
    • Update the Autocomplete label to use fields.gitlabRepoPicker.owner.inputTitle instead of fields.gitlabRepoPicker.owner.title.
  • a7a14b7: Removed custom IterableDirectoryHandle and WritableFileHandle types in favor of the standard DOM FileSystemDirectoryHandle and FileSystemFileHandle types, which are now available through the DOM.AsyncIterable lib added to the shared TypeScript configuration.

  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/plugin-scaffolder-backend-module-confluence-to-markdown@0.3.20-next.1

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/plugin-search-backend-module-stack-overflow-collator@0.3.19-next.1

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

@internal/[email protected]

Patch Changes

@internal/[email protected]

Patch Changes

[email protected]

Patch Changes

@internal/[email protected]

Patch Changes