Merge master and update toastApiRef to new ApiRef pattern

Resolve merge conflicts from master introducing the new ApiRef_2 type
pattern with `.with()` builder. Update toastApiRef to use the same
`createApiRef<T>().with({ id, pluginId })` pattern as all other API
refs, and regenerate API reports.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
This commit is contained in:
Patrik Oldsberg
2026-03-17 12:28:51 +01:00
190 changed files with 8385 additions and 978 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli-module-actions': patch
---
Added `actions` CLI module for listing and executing actions from the distributed actions registry. Includes `actions list`, `actions execute`, and `actions sources` commands for managing plugin sources.
@@ -0,0 +1,5 @@
---
'@backstage/cli-module-new': patch
---
Added support for the `cli-module` template role for scaffolding new CLI module packages.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli': patch
---
Added a new `cli-module` template for creating CLI module packages.
@@ -0,0 +1,5 @@
---
'@backstage/backend-defaults': minor
---
The actions registry invoke endpoint now accepts direct user credentials in addition to service principals, enabling CLI and other direct user clients to invoke actions.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/frontend-app-api': patch
---
Frontend apps now respect an explicit `pluginId` on `ApiRef`s when deciding which plugin owns an API factory.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/core-plugin-api': patch
---
Updated `createApiRef` to preserve the direct config call without deprecation warnings while staying compatible with the new frontend API ref typing.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli-module-auth': patch
---
Export auth helper utilities for use by other CLI modules. Added per-instance config storage with `getInstanceConfig` and `updateInstanceConfig`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli-defaults': patch
---
Added `@backstage/cli-module-actions` to the default set of CLI modules.
@@ -0,0 +1,5 @@
---
'@backstage/core-compat-api': patch
---
Added a missing dependency on `@backstage/filter-predicates` to `@backstage/core-compat-api`. This fixes package metadata for consumers that use compatibility helpers relying on filter predicate support.
@@ -0,0 +1,5 @@
---
'@backstage/core-components': patch
---
Fixed the shared `Progress` component to provide an accessible name for its loading indicator by default.
@@ -0,0 +1,5 @@
---
'@backstage/frontend-app-api': patch
---
Removed `@backstage/core-plugin-api` leakage from the public API surface. All types such as `ApiHolder` and `ConfigApi` are now imported from `@backstage/frontend-plugin-api`.
@@ -0,0 +1,5 @@
---
'@backstage/frontend-plugin-api': minor
---
Renamed `PluginOptions` to `CreateFrontendPluginOptions` and deprecated the old name. Removed `ResolvedExtensionInputs` from the main entry point; it is still available as an inline type in extension factory signatures.
@@ -0,0 +1,7 @@
---
'@backstage/ui': patch
---
Made Checkbox `children` optional and added a dev warning when neither a visible label, `aria-label`, nor `aria-labelledby` is provided. The label wrapper div is no longer rendered when there are no children, removing the unnecessary gap.
**Affected components:** Checkbox
+7
View File
@@ -0,0 +1,7 @@
---
'@backstage/ui': patch
---
Fixed Table row hover, selected, pressed, and disabled background states to use the correct neutral token level based on the container background.
**Affected components:** Table
@@ -0,0 +1,7 @@
---
'@backstage/ui': patch
---
Updated Table selection checkboxes to use `aria-label` instead of empty fragment children, improving accessibility and removing the unnecessary label gap in the selection cells.
**Affected components:** Table
@@ -0,0 +1,5 @@
---
'@backstage/frontend-test-utils': patch
---
Added a missing dependency on `@backstage/filter-predicates` to `@backstage/frontend-test-utils`. This fixes package metadata for consumers using the frontend test app helpers with predicate-based behavior.
+7
View File
@@ -0,0 +1,7 @@
---
'@backstage/frontend-plugin-api': patch
---
Added a builder form for `createApiRef` in the new frontend system and deprecated the direct `createApiRef({ ... })` call in favor of `createApiRef().with({ ... })`. The builder form now also preserves literal API ref IDs in the resulting `ApiRef` type.
The `createApiRef().with({ ... })` form can also use an explicit `pluginId` to declare API ownership without encoding the plugin ID into the API ref ID, while keeping that metadata internal to runtime handling.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-permission-react': patch
---
Permission checks made in the same tick are now batched into a single call to the permission backend.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-app': patch
---
Updated the default app root to better support phased app preparation by allowing the app layout to be absent during bootstrap, routing bootstrap failures through the app root boundary, and avoiding installation of a guest identity in protected apps that do not provide a sign-in page.
@@ -0,0 +1,5 @@
---
'@backstage/frontend-app-api': patch
---
Added `prepareSpecializedApp` for two-phase app wiring so apps can render a bootstrap tree before full app finalization. The bootstrap phase now supports deferred `app/root.elements`, predicate-gated APIs, reusable `sessionState`, and warnings for bootstrap-visible predicates or bootstrap code that accessed APIs that only became available after finalization. Utility APIs that are materialized during bootstrap are also frozen for the lifetime of the app instance, causing deferred overrides of those APIs to be ignored and reported as app errors.
@@ -0,0 +1,5 @@
---
'@backstage/frontend-defaults': patch
---
Updated `createApp` to use the phased `prepareSpecializedApp` flow, allowing apps to render a bootstrap tree before the full app is finalized.
@@ -0,0 +1,5 @@
---
'@backstage/frontend-plugin-api': patch
---
Added support for `if` predicates on `createFrontendPlugin` and `createFrontendModule`, applying shared conditions to every extension in the feature. Plugin and extension overrides can now also replace or remove existing `if` predicates.