21074 Commits

Author SHA1 Message Date
Roland Fuszenecker c69e03ce3d feat(backend-defaults): add AWS RDS IAM authentication support for PostgreSQL
Signed-off-by: Roland Fuszenecker <roland.fuszenecker@seon.io>
2026-04-02 15:34:02 +02:00
Johan Persson c193ef1f9f feat(catalog): add Kind field to About Card
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-04-02 15:03:09 +02:00
Patrik Oldsberg ee1531dca5 catalog: export CatalogIndexPage from alpha entry point
Export NfsDefaultCatalogPage as CatalogIndexPage from the ./alpha entry
point along with CatalogIndexPageProps, CatalogTableRow, and
CatalogTableColumnsFunc. This allows adopters to use and customize the
catalog index page within a PageBlueprint in the new frontend system.

No changes to the stable main entry point API.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-02 14:03:16 +02:00
Aurnik aa5faacb2b Fix docs quality check: replace 'draggable' with 'movable'
Signed-off-by: Aurnik <aurnikislam@gmail.com>
2026-04-02 08:58:38 +13:00
Aurnik 419141ed6a Fix home page widgets not being draggable/resizable after first save
Fixes #32677

Signed-off-by: Aurnik <aurnikislam@gmail.com>
2026-04-02 08:53:30 +13:00
Patrik Oldsberg 7bc057e8b6 Merge pull request #33703 from backstage/feat/auth0-federated-logout
feat(auth): support provider logout redirects, implement Auth0 federated logout
2026-04-01 15:27:27 +02:00
Jonathan Roebuck 25e8a65b46 refactor(auth0): rename config key federated to federatedLogout
The `federated` config key was ambiguous. Rename to `federatedLogout`
for clarity since it specifically controls federated logout behavior.

Signed-off-by: Jonathan Roebuck <jroebuck@spotify.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 13:41:06 +01:00
Patrik Oldsberg 8f93ed9e12 scaffolder: address copilot review feedback
- Use translation key for "No schema defined" fallback instead of hardcoded string
- Add aria-label to the enum format button for accessibility
- Remove unnecessary `as any` casts on defaultWidth column config
- Fix "Github" -> "GitHub" capitalization in test data
- Update changeset wording to match actual sidebar list UI

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 14:32:38 +02:00
wpessers cca9fc2bb6 feat(catalog): add retries to octokit client
Signed-off-by: wpessers <warre.pessers@gmail.com>
2026-04-01 14:23:55 +02:00
Jonathan Roebuck e2d96b7140 chore: address PR feedback on changesets
Add @backstage/plugin-app to core-app-api changeset, reword to avoid
internal export name, and downgrade auth-node bump to patch.

Signed-off-by: Jonathan Roebuck <jroebuck@spotify.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 13:09:59 +01:00
Patrik Oldsberg 538d0a1488 cli: enable embedded-postgres via config instead of env var
Rather than requiring the `EXPERIMENTAL_DEV_DB` environment variable,
the embedded postgres server is now started automatically when
`backend.database.client` is set to `embedded-postgres` in the app
config. The CLI reads the config before spawning the backend and
injects the actual pg connection details via env override.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 13:03:11 +02:00
Patrik Oldsberg f14df56222 cli: experimental support for using embedded-postgres as dev DB
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 12:57:49 +02:00
Patrik Oldsberg b9fec1bdc8 Merge pull request #33642 from backstage/dist-workspace-pack-batching
cli-module-build: pack packages in batches inside createDistWorkspace
2026-04-01 11:54:21 +02:00
Fredrik Adelöw 9c953f9eff Merge pull request #32943 from Vivek1819/fix/scaffolder-markdown-links-new-tab
fix(scaffolder): open markdown links in new tab for template outputs
2026-04-01 11:49:20 +02:00
Hellgren Heikki 19a2a038aa feat(notifications): migrate to backstage ui
migrated notifications plugin to use backstage ui instead
material ui.

Signed-off-by: Hellgren Heikki <heikki.hellgren@op.fi>
2026-04-01 08:41:59 +03:00
Aditya Kumar 4e265fec15 Merge branch 'master' into devtools-bui-config 2026-04-01 08:30:32 +05:30
Karthik 329f5920b6 feat(techdocs): add techdocs-cli option to disable external font download
Signed-off-by: Karthik <karthik.jk11@gmail.com>
2026-03-31 21:39:52 +05:30
Karthik 5ef8d166cb feat(techdocs): add app-config option to disable external font download
Signed-off-by: Karthik <karthik.jk11@gmail.com>
2026-03-31 21:30:45 +05:30
github-actions[bot] a2cb332e25 Version Packages (next) 2026-03-31 15:30:51 +00:00
Patrik Oldsberg 292b6431a2 Merge pull request #33688 from backstage/fix-frontend-plugin-legacy-id
Fix template name collision and export path in CLI new module
2026-03-31 17:24:04 +02:00
Jonathan Roebuck 9244b70c57 chore: add changesets, update API reports, fix type errors
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Jonathan Roebuck <jroebuck@spotify.com>
2026-03-31 16:20:23 +01:00
Fredrik Adelöw 8a2a81fa1e Merge pull request #33687 from backstage/freben/bump-glob-rollup
Bump glob to v13 and rollup to v4.59+ to fix security vulnerabilities
2026-03-31 16:06:22 +02:00
Fredrik Adelöw 739b655063 Merge pull request #33250 from backstage/renovate/use-sync-external-store-1.x
chore(deps): update dependency @types/use-sync-external-store to v1
2026-03-31 15:58:16 +02:00
Fredrik Adelöw 9ee88aeb59 Merge pull request #33170 from dbmdz/gitlab-repo-picker-improvements
Gitlab repo picker improvements
2026-03-31 15:55:10 +02:00
Fredrik Adelöw ad19cb040f Merge pull request #33629 from jonkoops/auditor-zod-v4-refactor
refactor(backend-defaults): migrate internal Zod usage from v3 to v4
2026-03-31 15:52:18 +02:00
Fredrik Adelöw c3b4782b97 Merge pull request #33361 from lokeshkaki/feat/azure-scm-events
feat(catalog-backend-module-azure): add Azure DevOps SCM event translation layer
2026-03-31 15:03:26 +02:00
Fredrik Adelöw c5958fc175 Merge pull request #33362 from lokeshkaki/feat/gitlab-scm-events
feat(catalog-backend-module-gitlab): add GitLab SCM event translation layer for catalog reprocessing
2026-03-31 14:59:18 +02:00
Vincenzo Scamporlino e38bcefb99 Fix template name collision between new and legacy frontend plugin templates
The legacy frontend plugin template had the same name (`frontend-plugin`) as
the new frontend plugin template, causing a conflict error when both were shown
(e.g. when the frontend system could not be auto-detected). Rename the legacy
template to `frontend-plugin-legacy` so both can coexist.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Vincenzo Scamporlino <vincenzos@spotify.com>
2026-03-31 14:36:53 +02:00
Johan Persson feaf3d1ade fix(ui): fix HeaderNav hover indicator covering tab text
Add `position: relative` and `z-index: 2` to nav items so they
paint above the hover/active indicator, matching the Tabs pattern.
This fixes themes with opaque `--bui-bg-neutral-2` values obscuring
tab labels on hover.

Also fix `--bui-font-family` (non-existent) to `--bui-font-regular`.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-31 13:43:25 +02:00
Patrik Oldsberg 9bfa74bbb5 Merge pull request #33446 from Sarabadu/patch-2
Rename frontend-plugin to legacy-frontend-plugin
2026-03-31 10:30:13 +02:00
Patrik Oldsberg 0a09b718c8 Update .changeset/legal-results-kneel.md
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-31 10:28:41 +02:00
Fredrik Adelöw 2e5c5f85b2 Bump glob to v13 and rollup to v4.59+ to fix security vulnerabilities
Addresses the high severity rollup path traversal vulnerability
(GHSA-mw96-cpmx-2vgc) and the glob security advisory by upgrading
all instances across the monorepo. Updates code that used the legacy
callback-based glob API to use the modern promise/sync 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 23:13:08 +02:00
Fredrik Adelöw 0419acede2 Revert "Bump glob to v13 and rollup to v4.59+ to fix security vulnerabilities"
This reverts commit 6d76b1729b.

Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-30 23:11:17 +02:00
Fredrik Adelöw 6d76b1729b Bump glob to v13 and rollup to v4.59+ to fix security vulnerabilities
Addresses the high severity rollup path traversal vulnerability
(GHSA-mw96-cpmx-2vgc) and the glob security advisory by upgrading
all instances across the monorepo. Updates code that used the legacy
callback-based glob API to use the modern promise/sync 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 23:10:09 +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
asheen1234 3e5acb5e97 Add GitLabRepoOwnerPicker and tests
Signed-off-by: asheen1234 <sergeantnumnumz@gmail.com>
2026-03-30 14:34:07 -04: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 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 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
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
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 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
Fredrik Adelöw 6cc48113fc remove some cli deprecation warnings
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-30 09:44:30 +02:00
Patrik Oldsberg 4a01a66da3 docs: document app/routes redirect configuration
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 01:36:07 +02:00
Patrik Oldsberg e5baa20a1b plugin-app: add redirect config to app/routes extension
Allow users to configure URL redirects on the app/routes extension
through app-config. Redirects are specified as an array of {from, to}
path pairs in the extension config schema.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 00:34:56 +02:00
Patrik Oldsberg 3c0b453d7e Revert NFS page variants, keep only title and icon additions
Roll back the NFS page component changes (BuiHeader, headerVariant,
NfsCatalogGraphPage, NfsDefaultImportPage) from catalog-graph and
catalog-import plugins. Only the title and icon metadata additions to the
new frontend system plugin definitions are retained.

For the kubernetes plugin, replace the generic RiShipLine icon with a
proper Kubernetes helm wheel SVG icon from Simple Icons.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-30 00:19:41 +02:00
Fredrik Adelöw 0336f92de8 Merge pull request #33658 from backstage/freben/clarify-fetch-failures
Add FetchMiddlewares.clarifyFailures and improve permission error handling
2026-03-29 12:51:04 +02:00