Commit Graph

72378 Commits

Author SHA1 Message Date
Patrik Oldsberg cb63f122df Merge pull request #33450 from backstage/rugvip/catalog-entity-page-no-header
catalog: disable page layout header for entity page
2026-03-20 12:00:12 +01:00
Patrik Oldsberg d39c2dcce3 Merge pull request #33441 from backstage/rugvip/remove-plugin-header-action-define-params
frontend-plugin-api: remove defineParams from PluginHeaderActionBlueprint
2026-03-20 11:48:11 +01:00
Fredrik Adelöw 78457904ee Merge pull request #33347 from backstage/dependabot/npm_and_yarn/undici-7.24.0
chore(deps): bump undici from 7.22.0 to 7.24.0
2026-03-20 11:15:10 +01:00
Fredrik Adelöw 10e7e657b3 Merge pull request #33456 from backstage/renovate/actions-cache-digest
chore(deps): update actions/cache digest to 6682284
2026-03-20 11:14:32 +01:00
Fredrik Adelöw 21d3d2d356 Merge pull request #33457 from backstage/renovate/actions-cache-5.x
chore(deps): update actions/cache action to v5.0.4
2026-03-20 11:14:15 +01:00
Fredrik Adelöw cc0326a6a5 Merge pull request #33243 from backstage/renovate/opentelemetry-js-monorepo
fix(deps): update opentelemetry-js monorepo to ^0.213.0
2026-03-20 10:53:49 +01:00
Fredrik Adelöw ca2113f511 Merge pull request #33288 from backstage/renovate/node-gyp-12.x
chore(deps): update dependency node-gyp to v12
2026-03-20 10:32:17 +01:00
renovate[bot] b445d25735 chore(deps): update actions/cache action to v5.0.4
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 09:30:54 +00:00
renovate[bot] 0e3942620b chore(deps): update actions/cache digest to 6682284
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 09:30:46 +00:00
Fredrik Adelöw 884b8691b0 Merge pull request #33305 from backstage/renovate/wait-for-expect-4.x
chore(deps): update dependency wait-for-expect to v4
2026-03-20 10:26:36 +01:00
dependabot[bot] e928e7387c chore(deps): bump undici from 7.22.0 to 7.24.0
Bumps [undici](https://github.com/nodejs/undici) from 7.22.0 to 7.24.0.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v7.22.0...v7.24.0)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 7.24.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-20 09:24:58 +00:00
Fredrik Adelöw e7cfb0cc8e Merge pull request #33306 from backstage/renovate/windows-2025.x
chore(deps): update dependency windows to v2025
2026-03-20 10:24:20 +01:00
Fredrik Adelöw dd5cc5be52 Merge pull request #33307 from backstage/renovate/docker-build-push-action-7.x
chore(deps): update docker/build-push-action action to v7
2026-03-20 10:24:00 +01:00
Fredrik Adelöw c7abbf0373 Merge pull request #33311 from backstage/renovate/docker-login-action-4.x
chore(deps): update docker/login-action action to v4
2026-03-20 10:23:45 +01:00
Fredrik Adelöw f62aff93e8 Merge pull request #33314 from backstage/renovate/docker-setup-buildx-action-4.x
chore(deps): update docker/setup-buildx-action action to v4
2026-03-20 10:23:11 +01:00
Fredrik Adelöw ed3f0f9f0d Merge pull request #33315 from backstage/renovate/major-github-artifact-actions
chore(deps): update github artifact actions (major)
2026-03-20 10:22:06 +01:00
Fredrik Adelöw 57926b473b Merge pull request #33320 from backstage/renovate/github-codeql-action-4.x
chore(deps): update github/codeql-action action to v4
2026-03-20 10:20:49 +01:00
Fredrik Adelöw e1ee0d53b4 Merge pull request #33453 from backstage/dependabot/npm_and_yarn/flatted-3.4.2
build(deps): bump flatted from 3.4.1 to 3.4.2
2026-03-20 10:14:51 +01:00
Fredrik Adelöw 57167514ae Merge pull request #33452 from backstage/dependabot/npm_and_yarn/docs-ui/flatted-3.4.2
build(deps): bump flatted from 3.3.3 to 3.4.2 in /docs-ui
2026-03-20 10:11:55 +01:00
dependabot[bot] bdbbf00eab build(deps): bump flatted from 3.4.1 to 3.4.2
Bumps [flatted](https://github.com/WebReflection/flatted) from 3.4.1 to 3.4.2.
- [Commits](https://github.com/WebReflection/flatted/compare/v3.4.1...v3.4.2)

---
updated-dependencies:
- dependency-name: flatted
  dependency-version: 3.4.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-20 08:14:44 +00:00
dependabot[bot] 9d8e9d05b6 build(deps): bump flatted from 3.3.3 to 3.4.2 in /docs-ui
Bumps [flatted](https://github.com/WebReflection/flatted) from 3.3.3 to 3.4.2.
- [Commits](https://github.com/WebReflection/flatted/compare/v3.3.3...v3.4.2)

---
updated-dependencies:
- dependency-name: flatted
  dependency-version: 3.4.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-20 08:10:13 +00:00
Patrik Oldsberg 7e163ab470 Merge pull request #33437 from backstage/techdocs-bui-header-migration
feat(techdocs): migrate alpha plugin pages to BUI header system
2026-03-20 09:06:57 +01:00
Johan Persson 31a8120587 Add .patches entry for PR #33377
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-20 09:05:23 +01:00
Johan Persson d66a3ec9ab feat(frontend-plugin-api): add titleRouteRef to PageBlueprint
Add `titleRouteRef` to `PageLayoutProps` so the plugin header title
links back to the plugin root. `PageBlueprint` resolves it from
`plugin.routes.root` with fallback to `params.routeRef`.

- PageLayout swap resolves the title link via a conditional child
  component that calls `useRouteRef` only when a route ref exists
- Header actions get stable React keys via `cloneElement`

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-20 09:05:23 +01:00
Patrik Oldsberg e44915ed29 Add patch entry for PR #33450
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-20 09:00:43 +01:00
Patrik Oldsberg d7b6077909 catalog: disable page layout header for entity page
The entity page in the new frontend system already renders its own
header through the EntityHeader extension, so the default page layout
header from the PageBlueprint was redundant. This disables it by
passing noHeader: true to the page factory.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-20 08:59:25 +01:00
Patrik Oldsberg 364d4fe187 frontend-app-api: add apis to specialized app result types (#33445)
* frontend-app-api: add `apis` to specialized app result types

Added `apis: ApiHolder` to both `BootstrapSpecializedApp` and
`FinalizedSpecializedApp` types, and included the APIs in the returned
objects from `getBootstrapApp()`, `finalizeFromSessionState()`, and
`finalizeFromBootstrapError()`.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor

* Add .patches entry for PR #33445

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor

---------

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-19 20:57:20 +01:00
Patrik Oldsberg f5d727ab60 Fix prettier formatting in changeset
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-19 19:23:17 +01:00
Patrik Oldsberg a39ab35042 Apply suggestions from code review
Co-authored-by: Patrik Oldsberg <poldsberg@gmail.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-19 19:09:06 +01:00
Patrik Oldsberg ce6d262e81 Merge pull request #33443 from backstage/rugvip/unprocessed-entities-devtools
catalog-unprocessed-entities: integrate as DevTools tab by default
2026-03-19 19:09:01 +01:00
Patrik Oldsberg b6f1fae0d9 catalog-unprocessed-entities: integrate as DevTools tab by default
The unprocessed entities view is now provided as a DevTools sub-page
directly from the plugin, removing the need for manual wiring. The
standalone page is still available but disabled by default.

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-19 18:55:32 +01:00
Johan Persson 00d09525ed refactor(techdocs): extract shared hooks from reader components
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-19 15:16:15 +01:00
Patrik Oldsberg 5a9297ac8d Downgrade changeset to patch (not a breaking change)
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-19 15:05:59 +01:00
Patrik Oldsberg 3d969f541a Clean up example app comments and add missing backend plugin (#33440)
Made-with: Cursor

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-19 14:52:06 +01:00
Johan Persson 7ae5419d44 chore: add PR #33437 to patch release
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-19 14:50:42 +01:00
Johan Persson bcbb6eb6b8 fix(ui): make SearchAutocomplete background-aware
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-19 14:50:42 +01:00
Johan Persson 8c2e24e612 fix(ui): add aria-hidden to PluginHeader icon
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-19 14:50:42 +01:00
Johan Persson dc3cc87599 feat(techdocs): migrate alpha plugin pages to BUI header system
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-19 14:50:42 +01:00
Patrik Oldsberg e220589506 frontend-plugin-api: remove defineParams from PluginHeaderActionBlueprint
Replace the defineParams + createExtensionBlueprintParams pattern with
inline param types on the factory, matching PageBlueprint, SubPageBlueprint,
and other blueprints. Update the app-visualizer usage accordingly.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-19 13:43:08 +01:00
Andre Wanlin 6a3e5f41c0 Merge pull request #33435 from jonkoops/link-corporate-proxy
docs: add corporate proxy tutorial to sidebar navigation
2026-03-19 07:36:19 -05:00
Jon Koops 8f0a47f545 docs: add corporate proxy tutorial to sidebar navigation
The corporate proxy tutorial added in #33006 is not visible in the
docs sidebar. Add it to the Technical tutorials section so that it
is discoverable at https://backstage.io/docs/tutorials/corporate-proxy.

Signed-off-by: Jon Koops <jonkoops@gmail.com>
2026-03-19 11:20:35 +01:00
Fredrik Adelöw dd523dbdc0 Merge pull request #33432 from backstage/freben/fix-catalog-filter-flicker
Fix catalog filter flicker caused by stale render cycle
2026-03-19 11:01:48 +01:00
Fredrik Adelöw cf17daca99 Only suppress loading for non-paginated tables
For paginated tables, always show the loading indicator since stale
data from a different page would be misleading. The loading
suppression (showing stale data during refresh) only applies to the
non-paginated table where the stale filtered results are still
meaningful.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-19 10:37:34 +01:00
Fredrik Adelöw e073aaa9ac Add gap between title text and loading spinner
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-19 10:14:13 +01:00
Fredrik Adelöw eb30aafd2c Align loading spinner with title text and reduce size
Wrap the title + spinner in an inline-flex container for vertical
centering, and reduce the spinner to 0.8em so it doesn't affect the
overall box height.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-19 10:13:32 +01:00
Fredrik Adelöw 7db2f07322 Show inline spinner in table title during filter refresh
When filters change and a fetch is in progress but stale data is still
displayed, show a small circular spinner after the title text (e.g.
"Owned Components (5) ⟳") to indicate that updated results are being
loaded.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-19 10:11:03 +01:00
Fredrik Adelöw 744f9044a2 Keep showing stale table data during filter loading
The Table component replaces all data rows with a loading spinner when
isLoading is true. This caused a flash of empty table between filter
changes. Now only show the loading state when there's no data to
display yet (initial load), keeping stale results visible during
filter transitions.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-19 10:06:14 +01:00
Fredrik Adelöw 51aacae34b Fix catalog filter flicker caused by stale render cycle
The EntityListProvider exposed entities from `outputState` (synced via
useEffect) but `loading` from `useAsyncFn`. When the async function
resolved, `loading` flipped to false one render before `outputState`
updated, causing a flash of stale data between the loading indicator
and the new results.

Use `resolvedValue` directly in the context value when available,
eliminating the extra render lag.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-19 09:49:05 +01:00
Fredrik Adelöw e9306006f6 Merge pull request #33420 from backstage/worktree-exclude-stories-from-tsc
chore: exclude stories from tsc type checking
2026-03-19 09:47:09 +01:00
Fredrik Adelöw 5ea9806f17 Merge pull request #33430 from backstage/freben/sched-cancel-doc
add docs for the scheduler cancel endpoint
2026-03-19 09:45:53 +01:00