74233 Commits

Author SHA1 Message Date
Fredrik Adelöw a1f6de6ac0 Merge pull request #33678 from milliehartnt123/milliehartnt123-modify-graphics-update-comp
Fix repository name and owner in graphics
2026-03-30 22:52:20 +02:00
Fredrik Adelöw c64d386fc6 Fix flaky api-docs alpha test by increasing findByText timeout
The test assertions for lazy-loaded extension components used the
default 1000ms RTL timeout, which is insufficient under CI load.
Increased to 10000ms to match the pattern in createDevApp.test.tsx.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-30 22:51:48 +02:00
backstage-goalie[bot] 3bd006e7f5 Merge pull request #33683 from backstage/renovate/undici-7.x-lockfile
chore(deps): update dependency undici to v7.24.6
2026-03-30 20:45:38 +00:00
Vincenzo Scamporlino d96b7281dc Make owner parameter optional in getAppToken and getInstallationCredentials methods
Signed-off-by: Vincenzo Scamporlino <vincenzos@spotify.com>
2026-03-30 21:59:27 +02:00
renovate[bot] 629351c6ad chore(deps): update dependency undici to v7.24.6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-30 19:56:55 +00:00
backstage-goalie[bot] b678af1a20 Merge pull request #33679 from backstage/renovate/mini-css-extract-plugin-2.x-lockfile
chore(deps): update dependency mini-css-extract-plugin to v2.10.2
2026-03-30 19:51:17 +00:00
Fredrik Adelöw f55c195f03 Use lodash sortBy for entity sorting to avoid repeated presentation lookups
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-30 21:42:51 +02:00
Vincenzo Scamporlino d1124998ca Fix SingleInstanceGithubCredentialsProvider to return app credentials for bare host URLs
Signed-off-by: Vincenzo Scamporlino <vincenzos@spotify.com>
2026-03-30 21:35:40 +02:00
Patrik Oldsberg 96657b9812 Merge pull request #33549 from backstage/rugvip/hide-compat-wrapper-headers
core-compat-api: hide page header for compat-wrapped legacy pages
2026-03-30 21:22:19 +02:00
Fredrik Adelöw 0277801a96 Remove duplicate presentation API exports from alpha, import from public API
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-30 21:16:11 +02:00
Fredrik Adelöw 5bc450b7f1 Rename entityPresentation parameter to entityPresentationApi for consistency
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-30 20:57:39 +02:00
renovate[bot] 722bcc3000 chore(deps): update dependency mini-css-extract-plugin to v2.10.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-30 18:37:07 +00:00
asheen1234 3e5acb5e97 Add GitLabRepoOwnerPicker and tests
Signed-off-by: asheen1234 <sergeantnumnumz@gmail.com>
2026-03-30 14:34:07 -04:00
Patrik Oldsberg d10af0be6d Merge pull request #33657 from backstage/rugvip/replace-discord-action
workflows: replace Ilshidur/action-discord with inline github-script
2026-03-30 20:28:04 +02:00
milliehartnt123 a9d22e1acd Fix repository name and owner in graphics
Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>
2026-03-30 13:22:07 -04:00
Patrik Oldsberg f48e496e65 Merge pull request #33668 from backstage/docs-auth-oidc-new-frontend
docs: migrate OIDC auth docs to new frontend system
2026-03-30 17:42:42 +02:00
Patrik Oldsberg 19b3196c67 docs: fix Prettier formatting in OIDC auth docs
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 17:26:29 +02:00
Patrik Oldsberg cd0a7b58cc Merge pull request #33581 from backstage/rugvip/dual-frontend-system-support
plugins: add title and icon to NFS plugin definitions
2026-03-30 17:26:05 +02:00
Patrik Oldsberg bf1eb45609 Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-30 17:14:00 +02:00
Patrik Oldsberg ebc6622ec5 Apply suggestion from @freben
Co-authored-by: Fredrik Adelöw <freben@gmail.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-30 16:43:43 +02:00
Patrik Oldsberg 26537124e0 Merge pull request #33665 from backstage/rugvip/docs-notifications-new-frontend
docs: migrate notifications docs to new frontend system
2026-03-30 16:42:19 +02:00
Patrik Oldsberg 014ba202ba Merge pull request #33670 from backstage/rugvip/app-routes-redirect-config
plugin-app: add redirect config to app/routes extension
2026-03-30 16:40:37 +02:00
Fredrik Adelöw 0a51db2547 Merge pull request #33676 from backstage/freben/catalog-search-table-sync
catalog: Reduce search table write churn during stitching
2026-03-30 16:27:23 +02:00
Fredrik Adelöw 9da73bf599 catalog: Reduce search table write churn during stitching
Replace the bulk DELETE + INSERT of all search rows with a minimal sync
that only touches rows that actually changed:

- Postgres: single writable CTE with unnest — DELETE stale rows and
  INSERT new ones in one atomic statement using snapshot isolation
- MySQL: temporary table merge with deadlock retry (errno 1213)
- SQLite: unchanged bulk replace (sufficient for dev/test)

For a typical user entity with ~200 search rows where one annotation
changed, this reduces the operation from ~400 row writes to ~2.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-30 16:01:37 +02:00
Charles de Dreuille 293bd67c64 Merge pull request #33675 from backstage/fix/storybook-apptheme-api
fix(storybook): register appThemeApiRef in Storybook API providers
2026-03-30 13:55:46 +01:00
Patrik Oldsberg baa72405ac Fix root path redirect matching all routes
Special-case `from: '/'` in redirect config to use an exact path match
instead of the `/*` wildcard, which would match the entire app.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 14:46:18 +02:00
Patrik Oldsberg 6cabf73736 Merge pull request #33669 from backstage/rugvip/docs-getting-started-new-frontend
docs: migrate getting-started docs to new frontend system
2026-03-30 14:40:34 +02:00
Charles de Dreuille 3bd5a0c7b8 Improve Toast setup
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-30 13:13:23 +01:00
Fredrik Adelöw aa8c802cf2 Merge pull request #33672 from backstage/freben/kebabs
remove some cli deprecation warnings
2026-03-30 13:42:46 +02:00
Charles de Dreuille 4dab043bd5 Update Toast.stories.tsx
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-30 12:05:12 +01:00
Patrik Oldsberg 0f8b40ddc5 docs: address copilot review comments
Add installation example for extraIcons in the customize-theme guide
and fix "productional code" typo in quickstart-app-plugin--old.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 12:57:47 +02:00
Charles de Dreuille cf2de9c8b8 Update Toast.stories.tsx
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-30 11:56:42 +01:00
Charles de Dreuille b651807e56 fix(storybook): replace require() with ESM import in Toast stories
The RealAlertApiStory component used require('@backstage/core-plugin-api')
inside the function body. Vite bundles Storybook as ESM, where require is
not available at runtime, causing a ReferenceError. Replace with a
standard top-level import.

Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
Made-with: Cursor
2026-03-30 11:55:27 +01:00
Charles de Dreuille e21dd5edc4 fix(storybook): register appThemeApiRef in Storybook API providers
Add AppThemeSelector as an implementation for appThemeApiRef in the
shared Storybook API registry. Without this, any story that renders
a ToastContainer fails with NotImplementedError for core.apptheme.

Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
Made-with: Cursor
2026-03-30 11:49:34 +01:00
Patrik Oldsberg 88296d5d33 docs: pass auth environment in OAuth2.create example
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 12:48:01 +02:00
Patrik Oldsberg c38a71f855 docs: migrate OIDC auth docs to new frontend system
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 12:45:05 +02:00
renovate[bot] c368cf3db7 chore(deps): update dependency @types/use-sync-external-store to v1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-30 10:43:01 +00:00
Patrik Oldsberg 561f555fb1 docs: address copilot review feedback
Fix links in viewing-catalog.md and filter-catalog.md to point to
the new frontend system catalog-customization.md instead of the old
guide. Fix the Kubernetes entity content extension ID to use the
correct `entity-content:kubernetes/kubernetes` format. Wrap raw
extension definitions in `createFrontendModule` in search and
scaffolder docs. Correct TechDocs addon installation instructions
to explicitly install addon modules rather than claiming
auto-discovery.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 12:42:11 +02:00
Patrik Oldsberg 89e3f98fa1 Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-30 12:39:13 +02:00
MT Lewis c16c5084d0 cli-module-build: pack packages in batches inside createDistWorkspace
When passing --always-yarn-pack, we previously
packed all packages in parallel. Since
package.json files are rewritten during packing,
this could cause intermittent "No local workspace
found for this range" failures.

To fix this, we now pack packages in batches,
starting with the ones that have no workspace
dependencies and expanding out to include packages
whose dependencies have already been packed.

Signed-off-by: MT Lewis <mtlewis@users.noreply.github.com>
2026-03-30 11:38:25 +01:00
Patrik Oldsberg 769fa96fe8 docs: address review feedback on notifications docs
Use dynamic import pattern for SubPageBlueprint loader instead of
Promise.resolve, and fix missing comma in TypeScript example.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 12:36:27 +02:00
Charles de Dreuille ac9286767c Merge pull request #33673 from backstage/bui-manifest
Improve BUI manifest
2026-03-30 11:34:01 +01:00
Patrik Oldsberg 964e8f9779 Update docs/notifications/index--old.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-30 12:30:11 +02:00
Patrik Oldsberg b70d3ca1ab Update docs/notifications/index.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-30 12:30:04 +02:00
Patrik Oldsberg e1b0ed1cff Fix changeset to target catalog-import instead of catalog-graph
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 12:28:44 +02:00
Charles de Dreuille 6d120233a2 Update Table.tsx
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-30 11:19:43 +01:00
Charles de Dreuille dd880df9f0 Update report.api.md
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-30 11:18:03 +01:00
Charles de Dreuille dc009ed8a9 Improve BUI manifest
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-30 11:02:31 +01:00
Fredrik Adelöw e7f90f47a8 Update packages/cli-module-test-jest/src/commands/repo/test.test.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-03-30 11:53:54 +02:00
Fredrik Adelöw d3b8c370e1 Update docs/tooling/cli/03-commands.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-03-30 11:53:30 +02:00