Commit Graph

71558 Commits

Author SHA1 Message Date
Patrik Oldsberg 0f61db8bfe Merge pull request #33147 from backstage/rugvip/simplify-extension-attach-to
Simplify the `ExtensionAttachTo` type
2026-03-05 13:52:02 +01:00
Patrik Oldsberg 9581cdfbc5 Merge pull request #33144 from backstage/rugvip/remove-any-extension-data-ref
Remove deprecated `AnyExtensionDataRef` type
2026-03-05 13:51:54 +01:00
Patrik Oldsberg be07392d48 Merge pull request #33143 from backstage/rugvip/remove-allowUnknownExtensionConfig
Remove `allowUnknownExtensionConfig` option from frontend app APIs
2026-03-05 13:51:46 +01:00
Patrik Oldsberg ec9665666a fix api report generation to use standard pipeline flags
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 13:51:32 +01:00
Patrik Oldsberg f41cd2478e Merge pull request #33142 from backstage/rugvip/deprecate-nav-item-blueprint
Deprecate NavItemBlueprint in @backstage/frontend-plugin-api
2026-03-05 13:51:00 +01:00
Patrik Oldsberg 1408dfc6ca Merge pull request #33141 from backstage/rugvip/deprecate-withApis-frontend-plugin-api
Deprecate `withApis` in `@backstage/frontend-plugin-api`
2026-03-05 13:50:53 +01:00
Patrik Oldsberg 9989e9f98d Merge pull request #33139 from backstage/rugvip/move-analytics-blueprint-to-app-react
Move AnalyticsImplementationBlueprint to @backstage/plugin-app-react
2026-03-05 13:50:43 +01:00
Patrik Oldsberg 9b8d43069d Merge pull request #33138 from backstage/rugvip/fix-dialog-api-jsx-type-inconsistency
Fix JSX type reference inconsistency in DialogApiDialog
2026-03-05 13:50:34 +01:00
Patrik Oldsberg 369079ef50 Merge pull request #33137 from backstage/rugvip/remove-page-blueprint-defaultpath
Remove deprecated `defaultPath` migration helper from `PageBlueprint`
2026-03-05 13:50:25 +01:00
Patrik Oldsberg cae80d6d91 Freeze the empty ApiHolder singleton
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-05 13:50:19 +01:00
Patrik Oldsberg d7311c8bac Address review feedback from PR #33140
- Keep explicit error when API context provider exists but v1 is not
  available, only return empty holder when there is no provider at all
- Update tests in core-app-api to expect the new error message when
  rendering outside a provider
- Add @backstage/core-plugin-api to changeset since it re-exports
  useApiHolder

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-05 13:32:15 +01:00
Patrik Oldsberg b56f573815 frontend-test-utils: deprecate standalone mock API exports
Deprecate all standalone mock API exports in favor of the `mockApis`
namespace. This includes the mock classes, their option types, and
the `ErrorWithContext` type. Inline option types into the `mockApis`
function signatures to avoid dependence on the deprecated types.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 13:14:55 +01:00
Johan Persson 7960d54215 feat(ui): support native HTML attributes on Grid components
Extend GridProps and GridItemProps to accept standard HTML div
attributes by inheriting from React.HTMLAttributes<HTMLDivElement>.
The rest props are spread onto the underlying div elements.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-05 12:43:03 +01:00
Johan Persson a733fd1a68 feat(ui): support native HTML attributes on Flex component
Extend FlexProps to accept standard HTML div attributes (e.g. onClick,
id, aria-*) by inheriting from React.HTMLAttributes<HTMLDivElement>.
The rest props are spread onto the underlying div element.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-05 12:43:03 +01:00
Patrik Oldsberg 749ccb432d Use plain text instead of @link in deprecation tags
The {@link} tags resolve to the local deprecated symbols rather than
the new ones in @backstage/plugin-app-react, and TSDoc doesn't support
cross-package links.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 12:34:33 +01:00
Patrik Oldsberg fa0277093e Address review feedback
- Remove {@link} from @deprecated tag (freben feedback)
- Use Object.hasOwn instead of hasOwnProperty
- Use NotImplementedError instead of plain Error
- Add @backstage/errors dependency
- Add tests for withApis in core-compat-api

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 12:30:47 +01:00
Patrik Oldsberg 01929491d7 Keep internal array attachTo support, only simplify public types
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 11:51:10 +01:00
Patrik Oldsberg 4bff1b5220 Update changesets to note the flag was a no-op
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 11:51:06 +01:00
Patrik Oldsberg a447ea8162 Update API reports
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 11:46:42 +01:00
Patrik Oldsberg a1de46c7f2 Update API reports
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 11:46:17 +01:00
renovate[bot] 14fb1e1b62 chore(deps): update github/codeql-action action to v3.32.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-05 10:33:45 +00:00
Patrik Oldsberg 925e4ed003 Merge pull request #33145 from backstage/rugvip/remove-createPublicSignInApp
Remove deprecated `createPublicSignInApp` from `@backstage/frontend-defaults`
2026-03-05 11:29:11 +01:00
Patrik Oldsberg dab6c46168 Move ExtensionFactoryMiddleware from frontend-plugin-api to frontend-app-api
The `ExtensionFactoryMiddleware` type is only used by the app-level wiring
and has been moved to `@backstage/frontend-app-api` as its canonical location.

The type is preserved in `@backstage/frontend-plugin-api` with a `@deprecated`
tag pointing to the new location. All internal usages have been updated to
import from the new location.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 10:37:51 +01:00
Patrik Oldsberg a9440f0622 Simplify the ExtensionAttachTo type
Simplified the `ExtensionAttachTo` type to only support a single
attachment target, removing the array form for attaching to multiple
extension points. Also removed the deprecated `ExtensionAttachToSpec`
type alias.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 10:37:05 +01:00
Patrik Oldsberg 33de79d5dd Remove deprecated createPublicSignInApp from @backstage/frontend-defaults
The function was deprecated in favor of using `createApp` with the
`appModulePublicSignIn` module from `@backstage/plugin-app/alpha`.
This removes the function, its tests, and updates the documentation
to use the recommended approach.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-05 10:33:45 +01:00
Patrik Oldsberg 6573901551 Remove deprecated AnyExtensionDataRef type
The `AnyExtensionDataRef` type alias was deprecated in favor of using
`ExtensionDataRef` without type parameters, which is equivalent since
all type parameters have defaults. This removes the deprecated type,
its export, and updates `ExtensionDataRefToValue` to use
`ExtensionDataRef` directly.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 10:33:38 +01:00
Patrik Oldsberg 92af1ae9c0 Remove allowUnknownExtensionConfig option from frontend app APIs
The `allowUnknownExtensionConfig` option was unused in practice — unknown
extension config was always reported via the error collector regardless of
the flag. For `createSpecializedApp`, unknown extension config is now always
included in the returned errors. For `createApp`, it is handled as a
console warning via `maybeCreateErrorPage`.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 10:32:08 +01:00
Patrik Oldsberg 8a3a906fb7 Deprecate NavItemBlueprint in @backstage/frontend-plugin-api
Nav items are now automatically inferred from PageBlueprint extensions
based on their title and icon params, making NavItemBlueprint redundant.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 10:30:38 +01:00
Patrik Oldsberg b15a685e52 Deprecate withApis in @backstage/frontend-plugin-api
Moved withApis to @backstage/core-compat-api and deprecated the export
in @backstage/frontend-plugin-api, pointing users to the new location.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 10:19:10 +01:00
Patrik Oldsberg fe848e09e6 Change useApiHolder to not throw when outside API context
Instead of throwing a NotImplementedError, useApiHolder now returns an
empty ApiHolder when no API context is available in the React tree.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 10:18:26 +01:00
Patrik Oldsberg 2c383b535b Move AnalyticsImplementationBlueprint to @backstage/plugin-app-react
Migrated the AnalyticsImplementationBlueprint and
AnalyticsImplementationFactory from @backstage/frontend-plugin-api to
@backstage/plugin-app-react. The original exports are deprecated with
pointers to the new location.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 10:01:46 +01:00
Patrik Oldsberg 1bec049493 Fix JSX type reference inconsistency in DialogApiDialog
The `update` method used `React.JSX.Element` for the first union member
and plain `JSX.Element` for the second. These resolve to the same type
but the inconsistency within a single method signature is confusing.
Aligned both to use `JSX.Element` to match the rest of the file.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 09:55:33 +01:00
Patrik Oldsberg d0206c499a Remove deprecated defaultPath migration helper from PageBlueprint
The `defaultPath` param was a compile-time migration artifact typed to
produce an error, guiding users to use `path` instead. The migration
period is over, so this removes it from the public API surface.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 09:53:22 +01:00
dependabot[bot] 3ba7ee4c98 chore(deps): bump multer from 2.0.2 to 2.1.1
Bumps [multer](https://github.com/expressjs/multer) from 2.0.2 to 2.1.1.
- [Release notes](https://github.com/expressjs/multer/releases)
- [Changelog](https://github.com/expressjs/multer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/expressjs/multer/compare/v2.0.2...v2.1.1)

---
updated-dependencies:
- dependency-name: multer
  dependency-version: 2.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-05 07:25:45 +00:00
Fredrik Adelöw d0b53e39fd Merge pull request #33134 from backstage/renovate/npm-tar-vulnerability 2026-03-05 08:19:47 +01:00
renovate[bot] b100983df6 chore(deps): update dependency tar to v7.5.10 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-05 04:40:14 +00:00
dependabot[bot] 8aea060b88 chore(deps): bump svgo from 2.8.0 to 2.8.2
Bumps [svgo](https://github.com/svg/svgo) from 2.8.0 to 2.8.2.
- [Release notes](https://github.com/svg/svgo/releases)
- [Commits](https://github.com/svg/svgo/compare/v2.8.0...v2.8.2)

---
updated-dependencies:
- dependency-name: svgo
  dependency-version: 2.8.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-05 01:05:41 +00:00
dependabot[bot] 5b54feda88 chore(deps): bump immutable from 5.0.2 to 5.1.5 in /microsite
Bumps [immutable](https://github.com/immutable-js/immutable-js) from 5.0.2 to 5.1.5.
- [Release notes](https://github.com/immutable-js/immutable-js/releases)
- [Changelog](https://github.com/immutable-js/immutable-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/immutable-js/immutable-js/compare/v5.0.2...v5.1.5)

---
updated-dependencies:
- dependency-name: immutable
  dependency-version: 5.1.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-04 23:27:32 +00:00
dependabot[bot] ad651d723c chore(deps): bump @hono/node-server from 1.19.9 to 1.19.10
Bumps [@hono/node-server](https://github.com/honojs/node-server) from 1.19.9 to 1.19.10.
- [Release notes](https://github.com/honojs/node-server/releases)
- [Commits](https://github.com/honojs/node-server/compare/v1.19.9...v1.19.10)

---
updated-dependencies:
- dependency-name: "@hono/node-server"
  dependency-version: 1.19.10
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-04 21:28:38 +00:00
dependabot[bot] 014b42d23a chore(deps): bump hono from 4.12.0 to 4.12.5
Bumps [hono](https://github.com/honojs/hono) from 4.12.0 to 4.12.5.
- [Release notes](https://github.com/honojs/hono/releases)
- [Commits](https://github.com/honojs/hono/compare/v4.12.0...v4.12.5)

---
updated-dependencies:
- dependency-name: hono
  dependency-version: 4.12.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-04 21:11:27 +00:00
Charles de Dreuille c7fb3299ee Merge pull request #33116 from backstage/interactive-cards
feat(ui): add interactive overlay to Card component
2026-03-04 20:40:07 +00:00
Charles de Dreuille 16d424276a Improve types
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-04 20:24:12 +00:00
Charles de Dreuille 0c772a3223 Card styles updates
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-04 19:40:25 +00:00
Fredrik Adelöw fcc5b172e3 Merge pull request #33119 from backstage/freben/cli-common-runcheck-stdio-ignore
Fix runCheck to ignore stdio of spawned process
2026-03-04 19:48:19 +01:00
Charles de Dreuille 90b1cfc8a0 Fix for scrollable body section
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-04 16:59:25 +00:00
Fredrik Adelöw 918b697cbd Add test verifying runCheck does not leak stdio
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-04 17:41:08 +01:00
Fredrik Adelöw 9361965db9 Fix runCheck to ignore stdio of spawned process
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-04 17:33:29 +01:00
Charles de Dreuille db927510dc Add new Interactive card
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-04 15:24:23 +00:00
Peter Macdonald 6d67a35c20 Update Auditor docs to point to correct Auditor documentation for the catalog
Signed-off-by: Peter Macdonald <peterm4c@pm.me>
2026-03-04 14:13:59 +01:00
Patrik Oldsberg d757071651 Merge pull request #33082 from backstage/bui-migrate-catalog-entity-cards
feat(catalog,org): migrate entity cards from MUI/InfoCard to BUI
2026-03-04 11:50:41 +01:00