Commit Graph

72873 Commits

Author SHA1 Message Date
Fredrik Adelöw 056e18e4bf refactor(catalog-node,catalog-backend): permissions cleanup step 2
Remove the deprecated alpha exports CatalogPermissionRuleInput,
CatalogPermissionExtensionPoint, and catalogPermissionExtensionPoint
from catalog-node, and remove the corresponding CatalogPermissionExtensionPointImpl,
addPermissions, and addPermissionRules from catalog-backend. Custom permission
rules and permissions are now registered via coreServices.permissionsRegistry.

Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-03 21:36:46 +02:00
Patrik Oldsberg 205c8c8dc1 Merge pull request #33714 from backstage/rugvip/dev-db
cli: experimental embedded-postgres support for local dev
2026-04-03 21:07:15 +02:00
Andre Wanlin 735af5b2d6 Merge pull request #33421 from awanlin/docs/clean-up-items
Clean up of the contrib folder
2026-04-03 12:53:38 -05:00
Andre Wanlin 8bf97618ee Fixed links
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-04-03 12:39:28 -05:00
Andre Wanlin e66fa1898c Sidebar fix
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-04-03 12:30:40 -05:00
Andre Wanlin 6e6eff9b90 Fixes
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-04-03 12:28:56 -05:00
Andre Wanlin 13c3c0ab15 Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
2026-04-03 12:28:56 -05:00
Andre Wanlin d42d56d62b Fixed broken link
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-04-03 12:28:56 -05:00
Andre Wanlin 5cbd39e980 Clean up of the contrib folder
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-04-03 12:28:53 -05:00
Patrik Oldsberg a4b9c45277 Merge pull request #33054 from StateFarmIns/theme-fix-mui-5-class-name-prefix
fix: MUI 5 v5- class name prefix reliability
2026-04-03 19:15:45 +02:00
Fredrik Adelöw 3dfb6ddc3c Merge pull request #33743 from backstage/freben/permissions-cleanup-step-1
refactor(catalog-backend): permissions cleanup step 1
2026-04-03 18:14:47 +02:00
Patrik Oldsberg 8f9c1d64b8 verify-links: catch broken anchors, directory links, and invisible characters (#33713)
* verify-links: catch broken anchors, directory links, and invisible characters

Enhances the link verification script to catch several categories of
broken links that were previously missed:

- Broken anchors (cross-file and same-file) by extracting heading slugs
  from target documents and verifying anchors resolve
- Directory links missing index.md suffix within docs/
- Invisible/zero-width characters in URLs
- Case-sensitive anchor mismatches

Also strips fenced code blocks before scanning for links to avoid false
positives, and handles duplicate heading slug deduplication (GitHub and
Docusaurus append -1, -2, etc.).

Fixes a few newly-caught broken links in existing docs.

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

* Fix CodeQL incomplete multi-character sanitization alert

Apply HTML tag stripping in a loop so that nested fragments
like <scr<script>ipt> are fully removed.

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

---------

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-04-03 17:48:40 +02:00
Rajib Quayum 452bb50432 chore: fix documentation
Signed-off-by: Rajib Quayum <rajibq@users.noreply.github.com>
2026-04-03 10:30:00 -04:00
Rajib Quayum a0100d4197 chore: add changeset
Signed-off-by: Rajib Quayum <rajibq@users.noreply.github.com>
2026-04-03 10:06:11 -04:00
Fredrik Adelöw 7e63730288 chore: add changeset for permissions cleanup step 1
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-03 16:05:49 +02:00
Fredrik Adelöw c1802eb603 refactor(catalog-backend): permissions cleanup step 1
Make `permissionsRegistry` required and `permissions` always a
`PermissionsService` in `CatalogEnvironment`. Remove the deprecated
`PermissionAuthorizer` fallback path and the `createPermissionIntegrationRouter`
fallback — catalog now exclusively uses `permissionsRegistry.addResourceType`
to register its permission resource type.

Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-03 16:03:15 +02:00
Rajib Quayum e22fc0af9c chore: update docs for MUI v5 class name prefix issue
Signed-off-by: Rajib Quayum <rajibq@users.noreply.github.com>
2026-04-03 10:01:25 -04:00
Fredrik Adelöw 75db4afdec Merge pull request #33742 from backstage/freben/host-discovery-baseurl-warnings
feat(backend-defaults): warn on localhost or invalid backend.baseUrl in HostDiscovery
2026-04-03 15:34:27 +02:00
Rajib Quayum 2c541a782b fix: prevent occasional duplication of the MUI v5 prefix
Signed-off-by: Rajib Quayum <rajibq@users.noreply.github.com>
2026-04-03 09:29:06 -04:00
Rajib Quayum 51ee29bac7 chore: pulls in master
Signed-off-by: Rajib Quayum <rajibq@users.noreply.github.com>
2026-04-03 09:27:25 -04:00
Rajib Quayum a4dc401ac3 chore: revert all previous changes
Signed-off-by: Rajib Quayum <rajibq@users.noreply.github.com>
2026-04-03 09:24:04 -04:00
Fredrik Adelöw 57543abb7c Update packages/backend-defaults/src/entrypoints/discovery/HostDiscovery.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-03 15:01:45 +02:00
Fredrik Adelöw 308c672680 feat(backend-defaults): warn on localhost or invalid backend.baseUrl in HostDiscovery
Adds startup warnings to HostDiscovery.fromConfig when backend.baseUrl
is set to a localhost address in a production environment, or when the
value is not a valid URL at all.

Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-03 14:48:26 +02:00
Riley Martine d5899c2362 Allow passing showArrowHeads to entity-card:catalog-graph/relations and /catalog-graph page (#33706)
* Allow passing showArrowHeads to entity-card:catalog-graph/relations and /catalog-graph page

Signed-off-by: Riley Martine <rmartine@integralads.com>

* Update .changeset/nine-signs-end.md

Signed-off-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>

---------

Signed-off-by: Riley Martine <rmartine@integralads.com>
Signed-off-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>
Co-authored-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>
2026-04-03 12:34:45 +00:00
Fredrik Adelöw 3cdf048f77 Merge pull request #33534 from kurtaking/migrate-scaffolder-to-metrics-service 2026-04-03 09:19:45 +02:00
Kurt King b37a79ef5b Merge branch 'master' of https://github.com/backstage/backstage into migrate-scaffolder-to-metrics-service 2026-04-02 22:47:04 -06:00
Fredrik Adelöw b8158ed1bf Merge pull request #33726 from backstage/renovate/npm-lodash-vulnerability 2026-04-03 06:31:28 +02:00
Fredrik Adelöw a071c6b44d Merge pull request #33722 from backstage/dependabot/npm_and_yarn/lodash-es-4.18.1 2026-04-03 06:30:17 +02:00
Patrik Oldsberg 6e2d963126 Merge pull request #33712 from backstage/rugvip/catalog-nfs-catalog-index-page
catalog: export CatalogIndexPage from alpha entry point
2026-04-03 01:01:33 +02:00
Patrik Oldsberg 15660cfbf9 Merge pull request #33682 from backstage/github-support-app-no-org
Fix GitHub app credentials for bare host URLs
2026-04-03 00:58:55 +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
Yata Rupesh 7d5a3a2567 Change accordion snippet height to auto for GroupMultipleOpen
Signed-off-by: Yata Rupesh <99956608+RupeshRoyal@users.noreply.github.com>
2026-04-02 14:19:14 +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
renovate[bot] 4acb606f21 chore(deps): update dependency lodash to v4.18.1 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-02 10:39:07 +00:00
dependabot[bot] 6dc116caf1 chore(deps): Bump lodash-es from 4.17.23 to 4.18.1
Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.23 to 4.18.1.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.23...4.18.1)

---
updated-dependencies:
- dependency-name: lodash-es
  dependency-version: 4.18.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-02 07:45:22 +00:00
Patrik Oldsberg c0908fe5b5 cli: add error handling for config close and startup failure cleanup
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-02 00:38:35 +02:00
Patrik Oldsberg 13c5f97337 cli: clean up stale embedded-postgres temp directories on startup
Uses a PID file to track which process owns each temp directory, so
concurrent instances from different projects are not affected.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-02 00:34:49 +02:00
Patrik Oldsberg 77d17a5110 cli: add experimental warning for embedded-postgres
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-02 00:34:48 +02:00
Patrik Oldsberg 7e7e763163 cli: add tests for embedded-postgres config detection
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-02 00:34:48 +02:00
Patrik Oldsberg 1f88d2624b cli: address review feedback for embedded-postgres
- Close embedded DB on shutdown to avoid leaking the Postgres process
  and temp directory
- Use fs.remove instead of deprecated fs.rmdir with recursive option
- Guard against absolute config paths in readDatabaseClient
- Forward embedded-postgres error logs to console.error

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-02 00:34:48 +02:00
Patrik Oldsberg ae1cdd9e9f cli: remove custom embedded-postgres type declarations
The 18.x version ships its own .d.ts files that TypeScript resolves
correctly, so the custom module declaration is no longer needed.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 21:30:27 +02:00
Patrik Oldsberg d80e59ce9e cli: bump embedded-postgres to 18.3.0-beta.16
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 21:26:28 +02:00
Patrik Oldsberg 7bf4814173 cli: make embedded-postgres an optional peer dependency
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 21:22:14 +02:00
Patrik Oldsberg 45075dddcd cli: use ForwardedError for embedded-postgres import failure
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 21:20:10 +02:00
Patrik Oldsberg a922b3b921 cli: fix error message for missing embedded-postgres dependency
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 21:19:28 +02:00
Patrik Oldsberg b43c1f1bcb cli: simplify config loading using ConfigSources.toConfig
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 19:55:11 +02:00
Patrik Oldsberg 6537e5f8c1 cli: fix type errors and test for embedded-postgres
Fix implicit any types in startEmbeddedDb callbacks, replace the
re-export type declaration with an inline type definition for the
embedded-postgres module, and update runBackend tests to mock the
config loading and use async timer advancement.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 15:40:31 +02: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 3bddf23896 refactor(auth0): use URL/URLSearchParams for logout URL construction
Replace manual string concatenation with URL and URLSearchParams for
safer encoding and better readability.

Signed-off-by: Jonathan Roebuck <jroebuck@spotify.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 13:43:34 +01: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