Commit Graph

17483 Commits

Author SHA1 Message Date
Jake Smith 1956b3f398 Remove cachekey logic, not needed as only a single bitbucket connection is supported, rework tests and update api report
Signed-off-by: Jake Smith <jakemgsmith@gmail.com>
2025-12-16 10:20:57 +01:00
Jake Smith 37fba1d8ec Add config example, changeset and API reports
Signed-off-by: Jake Smith <jakemgsmith@gmail.com>
2025-12-16 10:20:57 +01:00
Jake Smith 959e6ecc5a Add Bitbucket Cloud OAuth support
Signed-off-by: Jake Smith <jakemgsmith@gmail.com>
2025-12-16 10:20:57 +01:00
Fredrik Adelöw 608248b984 Merge pull request #31497 from benjidotsh/cache/improved-valkey-support 2025-12-15 23:12:33 +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
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 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
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 2b0811d368 Merge pull request #32113 from backstage/rugvip/slim
frontend-plugin-api: remove unnecessary dependencies
2025-12-12 14:57:34 +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
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 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 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
benjdlambert 45146fbbc7 chore: fix api reports
Signed-off-by: benjdlambert <ben@blam.sh>
2025-12-11 10:47:44 +01:00
benjdlambert f2b7585824 feat: support marking a github app as a public token generator
Signed-off-by: benjdlambert <ben@blam.sh>
2025-12-11 09:33:46 +01:00
Patrik Oldsberg ce948cdf25 Merge pull request #32096 from backstage/rugvip/es2022
cli: move back to ES2022 in tsconfig
2025-12-10 23:40:23 +01:00
Andre Wanlin 6c53ccc136 Merge pull request #31655 from williamwu-mongodb/feature/add-scheduled-tasks-devtools-plugin
feat: add scheduled tasks UI to devtools plugin
2025-12-10 16:26:54 -06:00
Patrik Oldsberg c07af9f966 cli: move back to ES2022 in tsconfig
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2025-12-10 20:46:08 +01:00
aramissennyeydd 51a4cd3b76 fix type error
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-10 13:58:45 -05:00
aramissennyeydd d78945eff9 fix test errors by adding to repo test as well
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-09 17:52:18 -05:00
github-actions[bot] e08f48a9b5 Version Packages (next) 2025-12-09 15:00:09 +00:00
Patrik Oldsberg 625148b35f Merge pull request #28129 from backstage/sennyeya/deployment-discovery
feat: add a new system metadata service
2025-12-09 12:48:52 +01:00
Fredrik Adelöw d5cde2a0ee Merge pull request #31678 from vandr0iy/vandr0iy/configurable-referrer-policy
feat(frontend): allow configuration of the referrerPolicy
2025-12-09 12:36:05 +01:00
aramissennyeydd 238852ca7d fix build
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-08 17:44:53 -05:00
aramissennyeydd 0def824b4d remove --no-node-snapshots flag
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-08 17:28:19 -05:00
aramissennyeydd ed2ca0efc7 feat: provide --no-node-snapshot by default
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-08 17:01:39 -05:00
Patrik Oldsberg 80c8d9dab7 Merge pull request #32047 from backstage/rugvip/element-boundary
frontend-plugin-api: new error boundary API option + boundary for app root elements
2025-12-08 16:25:00 +01:00
Fredrik Adelöw e69770271e Merge pull request #32060 from backstage/renovate/archiver-7.x
chore(deps): update dependency @types/archiver to v7
2025-12-08 16:07:09 +01:00
Patrik Oldsberg 75683ed6c0 frontend-plugin-api: new error boundary API option + boundary for app root elements
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2025-12-08 16:06:08 +01:00
Ben Lambert cecac33e8e Merge pull request #31908 from Caitlin-cooling/overflow-tooltip-width
feat: Add tooltipClasses prop to OverflowTooltip component
2025-12-08 13:49:04 +01:00
renovate[bot] 3016a7982c chore(deps): update dependency @types/archiver to v7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-08 11:58:52 +00:00
Fredrik Adelöw 2bae83ab2e Version Policy Update - Node 22 to 24
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2025-12-08 10:53:38 +01:00
williamwu-mongodb 291bf9df13 feat: add scheduled tasks UI to devtools plugin
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove circular dependency

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove another unused backend defaults dependency

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

revert package.json

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

revert the other package.json

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

modify yarn lock file

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix api report for type

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix bulid api reports

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback and fixes

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback and fixes

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

add changeset

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

rebase yarn.lock

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix import for task response type

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix lint

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix debounce import

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

add lodash

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove debounce logic

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove unused auth

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

readd back changeset

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove example app from changeset

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

Update plugins/devtools/src/components/Content/ScheduledTasksContent/ScheduledTasksContent.tsx

Co-authored-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

Update .changeset/short-lizards-find.md

Co-authored-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>
2025-12-06 13:13:33 -08:00
renovate[bot] c132997b5e fix(deps): update dependency @opentelemetry/auto-instrumentations-node to ^0.67.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-06 10:06:58 +00:00
Fredrik Adelöw 5d68b8ccf1 Merge pull request #32032 from backstage/renovate/opentelemetry-js-monorepo
fix(deps): update opentelemetry-js monorepo to ^0.208.0
2025-12-06 10:53:44 +01:00
Fredrik Adelöw 8d237d6d53 Merge pull request #31955 from backstage/renovate/logform-2.x-lockfile
chore(deps): update dependency logform to v2.7.0
2025-12-05 16:35:44 +01:00
renovate[bot] 91e04e66a9 fix(deps): update opentelemetry-js monorepo to ^0.208.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-05 14:13:05 +00:00
Fredrik Adelöw 25b560e8c0 fixup
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2025-12-05 14:48:05 +01:00
Fredrik Adelöw 2cdfa9cf13 Merge pull request #32027 from backstage/renovate/typescript-json-schema-0.x
fix(deps): update dependency typescript-json-schema to ^0.67.0
2025-12-05 14:10:52 +01:00
renovate[bot] 741c47a38b fix(deps): update dependency typescript-json-schema to ^0.67.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-05 12:30:46 +00:00
renovate[bot] 122664749c fix(deps): update dependency esbuild to ^0.27.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-05 11:07:28 +00:00
vandr0iy a98c71a435 feat(frontend): adding the referrer options to config.d.ts
Signed-off-by: vandr0iy <5510334+vandr0iy@users.noreply.github.com>
2025-12-04 12:09:31 +01:00
vandr0iy 863734d633 feat(frontend): allow configuration of the referrerPolicy
Signed-off-by: vandr0iy<5510334+vandr0iy@users.noreply.github.com>
Signed-off-by: vandr0iy <5510334+vandr0iy@users.noreply.github.com>
2025-12-04 12:09:31 +01:00
aramissennyeydd defc7cd33e fix rebase issues
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-03 15:04:19 -05:00
aramissennyeydd feb70c3395 fix api reports
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-03 14:57:50 -05:00
aramissennyeydd 570b6ed139 fix report
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-03 10:59:22 -05:00
aramissennyeydd 3c6161d3ae delete system metadata custom plugin
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2025-12-03 10:59:22 -05:00