Commit Graph

69171 Commits

Author SHA1 Message Date
Fredrik Adelöw b404647c64 Merge pull request #32080 from backstage/freben/search-first 2025-12-15 19:44:09 +01:00
Patrik Oldsberg a0de7cf2b7 Merge pull request #31933 from backstage/upgrade-jsdom
chore: upgrade jsdom to v27 and Jest to v30
2025-12-15 16:01:01 +01:00
Peter Macdonald 0d04221794 Adds missing ADR to docs site (adr-015) (#32129)
Signed-off-by: Peter Macdonald <peterm4c@pm.me>
2025-12-15 07:44:49 -07:00
backstage-goalie[bot] db35e3bd65 Merge pull request #32127 from backstage/renovate/google-cloud-cloud-sql-connector-1.x-lockfile
Update dependency @google-cloud/cloud-sql-connector to v1.8.5
2025-12-15 09:14:58 +00:00
Fredrik Adelöw c96cfa978a Merge pull request #32000 from JessicaJHee/sync-gh-id
feat(catalog): add github user ID in user entity
2025-12-15 09:49:39 +01:00
Ben Lambert ea4aa7c253 Merge pull request #32126 from backstage/freben/apos
fix broken changeset
2025-12-15 09:38:21 +01:00
renovate[bot] 1281a0f1cc Update dependency @google-cloud/cloud-sql-connector to v1.8.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-15 08:37:44 +00:00
Fredrik Adelöw 0229885b2c fix broken changeset
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2025-12-15 09:37:00 +01:00
Fredrik Adelöw 19ff5a167c Merge pull request #32066 from the-serious-programmer/patch-2
Document usage of authProvidersExtensionPoint for ScmAuthApi
2025-12-15 09:32:51 +01:00
Fredrik Adelöw caf47623b3 Merge pull request #32090 from backstage/renovate/jamesives-github-pages-deploy-action-4.x
chore(deps): update jamesives/github-pages-deploy-action action to v4.7.6
2025-12-15 09:29:52 +01:00
Fredrik Adelöw ada1857fb7 Merge pull request #32088 from backstage/renovate/github-codeql-action-3.x
chore(deps): update github/codeql-action action to v3.31.8
2025-12-15 09:29:38 +01:00
Fredrik Adelöw b1f44f9d0d Merge pull request #32108 from angeliski/add-page-size
chore: add page size options to GithubOrgEntityProvider
2025-12-13 20:03:22 +01:00
Fredrik Adelöw f9e9f53265 Merge pull request #31152 from SonilPro/'code-snippet-wrap-long-lines'
code snippet support for wrap long lines
2025-12-13 19:59:29 +01:00
Fredrik Adelöw e46104b364 Merge pull request #31688 from VDVsx/memory-cache-config-warn
Don't warn when parsing storeOptions for 'memory' cache
2025-12-13 19:59:02 +01:00
Fredrik Adelöw 7c004bf8a7 Merge pull request #31583 from Jonas-Beck/docs/events
docs(events): add documentation for kafka events module
2025-12-13 19:51:03 +01:00
Fredrik Adelöw 7076f21475 Merge pull request #31559 from TobZip/patch-1
Revise VS Code Jest setup and update paths
2025-12-13 19:46:07 +01:00
Fredrik Adelöw 33663d03f3 Merge pull request #31532 from drodil/notifications_ui_improvements2
fix(notifications): ui improvements
2025-12-13 19:44:47 +01:00
Fredrik Adelöw adeb5fd152 Merge pull request #31683 from beverts312/techdocs-schema
fix(techdocs): use correct type for additionalAllowedUriProtocols
2025-12-13 19:34:13 +01:00
Fredrik Adelöw 825ebb9994 Update .changeset/short-cloths-tie.md
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2025-12-13 19:33:04 +01:00
Fredrik Adelöw 65e3fd3b25 Merge pull request #31772 from elaine-mattos/fix/frontend-plugin-template-dependencies
Fix frontend plugin template dependencies
2025-12-13 19:29:49 +01:00
Fredrik Adelöw 77568d46f6 Merge pull request #31805 from kaidubauskas-dd/kaidd/slack-module-rate-limit
Notification slack processor: make rate limit configurable
2025-12-13 19:26:44 +01:00
Fredrik Adelöw fff8c798ae Merge pull request #31922 from StateFarmIns/update-notif-ses-options
fix: Update email processor ses options to match v2 of ses sdk
2025-12-13 19:21:45 +01:00
Fredrik Adelöw cf44ca189d Merge pull request #32078 from VELUX/feature/events-kafka
feat(events): add support for publishing to kafka and multiple instances
2025-12-13 19:19:22 +01:00
Fredrik Adelöw 93539d9ee4 Merge pull request #32117 from williamwu-mongodb/bugfix/add-alpha-permissions-devtools
bugfix: add devtools alpha permissions to devtools-backend
2025-12-13 19:13:32 +01:00
Patrik Oldsberg 8a3f5828c0 Merge pull request #32114 from backstage/rugvip/reinforcements
OWNERS.md: add new core maintainers and sponsor
2025-12-13 18:14:33 +01:00
williamwu-mongodb f5fd27ef0f modify existing changeset
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>
2025-12-12 10:40:55 -08:00
williamwu-mongodb 29c757ca69 remove changeset
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>
2025-12-12 10:33:10 -08:00
williamwu-mongodb 347bd8f99b add changeset
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>
2025-12-12 10:19:15 -08:00
Fredrik Adelöw 33d584fa54 Merge pull request #32116 from backstage/renovate/npm-next-vulnerability 2025-12-12 19:18:17 +01:00
williamwu-mongodb e49a022a16 bugfix: add devtools alpha permissions to devtools-backend
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>
2025-12-12 10:18:09 -08:00
renovate[bot] 06b3889ba3 fix(deps): update dependency next to v15.5.9 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-12 17:52:51 +00:00
Patrik Oldsberg b34128e8e0 Merge pull request #32075 from backstage/sennyeya/node-snapshot
feat(cli): provide --no-node-snapshot by default
2025-12-12 16:54:56 +01:00
Patrik Oldsberg 2460fbc92f OWNERS: add new core maintainers and sponsor
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2025-12-12 16:09:36 +01:00
Patrik Oldsberg 2b0811d368 Merge pull request #32113 from backstage/rugvip/slim
frontend-plugin-api: remove unnecessary dependencies
2025-12-12 14:57:34 +01:00
Johan Persson 87e4e8b4b8 fix(docs): Emphasis Jest 30 upgrade is recommended
Co-authored-by: Patrik Oldsberg <poldsberg@gmail.com>
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2025-12-12 14:49:31 +01:00
Patrik Oldsberg 9b8bde47d1 frontend-plugin-api: remove unnecessary dependencies
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2025-12-12 14:39:24 +01:00
renovate[bot] 4f9a6f8a1f chore(deps): update github/codeql-action action to v3.31.8
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-12 10:23:27 +00:00
Fredrik Adelöw edc118fded Merge pull request #32112 from backstage/renovate/npm-next-vulnerability 2025-12-12 08:26:52 +01:00
renovate[bot] 069306ea81 fix(deps): update dependency next to v15.5.8 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-12 02:00:09 +00:00
Rogerio Angeliski a413977c7c chore: add page size options to GithubOrgEntityProvider
Signed-off-by: Rogerio Angeliski <angeliski@hotmail.com>
2025-12-11 16:12:30 -03:00
Johan Persson 5f88e246e3 chore(create-app): add jest 30 dependencies to template
Add jest and its environment dependencies as devDependencies to the
create-app template, so new Backstage apps are set up with Jest 30
support out of the box.

For Jest 30, apps need @jest/environment-jsdom-abstract and jsdom
instead of jest-environment-jsdom.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2025-12-11 18:07:01 +01:00
Johan Persson a169d7f6e9 fix(cli): add helpful error message for missing jest dependency
Since jest is now a peer dependencies, users must add it as a
devDependency themselves. This commit adds early detection and
a helpful error message when jest is missing, directing users
to the migration guide.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2025-12-11 18:07:01 +01:00
Johan Persson 900053a576 fix(catalog): fix flaky context menu test race condition
The "should render an onClick based context menu item" test was
failing intermittently due to a race condition where the test
would interact with the menu before the entity route parameters
were fully resolved.

Fix by adding explicit waits:
- Wait for entity to load before clicking the menu button
- Wait for menu to open before asserting on menu items

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2025-12-11 18:07:00 +01:00
Johan Persson e70ff47db3 chore: migrate three packages to MSW v2
Migrates test files in config-loader, events-node and kubernetes-react
packages from MSW 1.x to MSW 2.x API to fix compatibility issues with
Jest 30 and JSDOM v26.

Changes:
- Updated msw dependency from ^1.0.0 to ^2.0.0
- Changed imports from `rest` to `http` and `HttpResponse`
- Converted handler syntax from `res(ctx.*)` to `HttpResponse.*`
- Changed `toStrictEqual` to `toEqual` for response assertions

Affected packages:
- @backstage/config-loader
- @backstage/plugin-events-node
- @backstage/plugin-kubernetes-react

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2025-12-11 18:07:00 +01:00
Johan Persson cd0b8a11a3 chore: make jest a peer dependency with v29/v30 support
Move jest from dependencies to peer dependencies, allowing users to
choose between Jest 29 and Jest 30.

The CLI now detects the Jest version at runtime and uses the
appropriate environment:
- Jest 29: Uses standard jest-environment-jsdom
- Jest 30: Uses a custom environment based on @jest/environment-jsdom-abstract
  with fixes for Web API globals (fetch, streams, Error, etc.)

The cross-fetch polyfill is only injected for Jest 29, as with Jest 30+
our patched Jest environment is used. The network request blocker is made
MSW-compatible by checking if fetch was wrapped before blocking.

Jest 30 (with jsdom v27) fixes `Could not parse CSS stylesheet`
warnings/errors when testing components from @backstage/ui or other
packages using CSS `@layer` declarations.

New peer dependencies (install based on your Jest version):
- jest (required, ^29 or ^30)
- Jest 29 requires: jest-environment-jsdom
- Jest 30 requires: @jest/environment-jsdom-abstract, jsdom

Production code changes for jsdom 27 testability:
- AppIdentityProxy: extract navigateToUrl method for spying
- LiveReloadAddon: export utils.reloadPage for spying
- collect.ts: export internal.resolvePackagePath for mocking

MockFetchApi: evaluate global.fetch at call time instead of construction
time, allowing MSW to patch fetch after MockFetchApi is constructed.

Test adaptations for jsdom 27:
- Use RGB values instead of named colors in CSS assertions
- Update error format expectations (hyphenated type names, SyntaxError
  instead of FetchError for JSON parse errors)
- Simplify URL error assertions for cross-version compatibility
- Fix accessible name whitespace handling for external links
- Use history.replaceState for location mocking (non-configurable)
- Use fireEvent.blur for contentEditable elements
- Move async assertions inside waitFor for race conditions
- Remove Blob.prototype.text polyfill (now native)
- Remove test case using credentials in plugin:// URLs

Test adaptations for Jest 30:
- Replace `expect.objectContaining([...])` with direct array equality
- Replace `expect.objectContaining({ length: N })` with
  `expect.any(Array)` + separate `toHaveLength()` assertions
- Use child process for native Node.js module resolution in
  collect.test.ts to work around Jest 30's resolver behavior
- Update snapshot headers for new Jest format

Also removes the jest-haste-map patch which is no longer needed.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2025-12-11 18:06:55 +01:00
Ben Lambert 6dd4fdfae0 Merge pull request #32102 from backstage/copilot/commit-changeset-result
Exit prerelease mode
2025-12-11 14:55:21 +01:00
copilot-swe-agent[bot] 2576e92f29 Exit prerelease mode
Co-authored-by: benjdlambert <3645856+benjdlambert@users.noreply.github.com>
2025-12-11 10:30:59 +00:00
Patrik Oldsberg 0197b44433 Merge pull request #32101 from backstage/rugvip/in
docs: +in
2025-12-11 11:28:57 +01:00
copilot-swe-agent[bot] 93740f4fed Initial plan 2025-12-11 10:25:54 +00:00
Ben Lambert b22618c336 Merge pull request #32099 from backstage/blam/support-public-kety
`integrations`: Add flag for using an app for `publicAccess`
2025-12-11 11:04:13 +01:00