Commit Graph

219 Commits

Author SHA1 Message Date
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
Patrik Oldsberg 2c6ea33a74 Merge pull request #31946 from backstage/rugvip/tsbumps
cli: switch tsconfig to default to bundler resolution
2025-12-02 23:31:11 +01:00
Patrik Oldsberg f85dafa7f2 update API reports for moduleResolution: bundler
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2025-12-02 22:25:00 +01:00
github-actions[bot] 336db00d21 Version Packages (next) 2025-12-02 15:37:41 +00:00
KoB 8fa8d87e3b feat(kubernetes-plugin): add secrets rendering (#31415)
* feat: mask secret datas

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* feat: add secrets accordion

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* feat: add test code for secrets accordion

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* feat: add test code for secrets fetch

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* chore: changeset

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* chore: yarn build:api-reports

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* chore: remove secrets from default object and rollback test code

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* chore: extract to helper function

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* chore: add test code for helper function

Signed-off-by: 김병준 <kingbj0429@gmail.com>

---------

Signed-off-by: 김병준 <kingbj0429@gmail.com>
2025-12-01 19:35:34 -05:00
KoB f966a8557f feat(kubernetes-plugin): enable a pod terminal at GCP GKE (#31915)
* chore: remove google for enabling pod terminal at gke

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* chore: add chageset

Signed-off-by: 김병준 <kingbj0429@gmail.com>

* chore: update test code for enabling a pod terminal at gke

Signed-off-by: 김병준 <kingbj0429@gmail.com>

---------

Signed-off-by: 김병준 <kingbj0429@gmail.com>
2025-12-01 19:34:10 -05:00
github-actions[bot] 756986e5e7 Version Packages (next) 2025-11-25 16:21:32 +00:00
Fredrik Adelöw dd65c2bb7e fix forgotten api report
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2025-11-25 13:14:15 +01:00
Ben Lambert b877a56871 Merge pull request #31674 from its-mitesh-kumar/feat/kubernetes-localization
fix(kubernetes): add missing i18n support for kubernetes and kubernetes-react plugin
2025-11-25 10:42:46 +01:00
its-mitesh-kumar 0afbd91822 updating api report
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
2025-11-19 14:02:00 +05:30
its-mitesh-kumar bb42830a77 address remaining comments
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
2025-11-18 20:17:39 +05:30
its-mitesh-kumar ff28f897c4 addressing review comments
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
2025-11-18 19:37:25 +05:30
github-actions[bot] 792f4d7e3d Version Packages 2025-11-18 12:23:09 +00:00
github-actions[bot] 20fae88bdf Version Packages (next) 2025-11-11 21:45:56 +00:00
renovate[bot] 1906d3712b fix(deps): update dependency @kubernetes/client-node to v1.4.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-10 14:25:08 +00:00
its-mitesh-kumar c623e3d80d updating the tests
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
2025-11-06 18:25:21 +05:30
its-mitesh-kumar 93cd34b403 updating the api report
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
2025-11-06 18:14:32 +05:30
its-mitesh-kumar b3c58d8a68 adding api report
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
2025-11-06 16:00:07 +05:30
its-mitesh-kumar 9d5d9cb73a feat(kubernetes): adding localization support
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
2025-11-06 15:34:46 +05:30
github-actions[bot] 807af8ce0e Version Packages (next) 2025-10-21 16:14:43 +00:00
Patrik Oldsberg b436f73803 Merge pull request #31166 from schultzp2020/constructor-parameters
refactor: convert constructor parameter properties for erasableSyntaxOnly compatibility
2025-10-15 18:56:42 +02:00
github-actions[bot] d6ce2db9ca Version Packages 2025-10-14 15:29:54 +00:00
Paul Schultz 05f60e1e0a refactor: convert constructor parameter properties for erasableSyntaxOnly compatibility
Signed-off-by: Paul Schultz <pschultz@pobox.com>
2025-10-14 08:29:21 -05:00
github-actions[bot] ffb5b44d86 Version Packages (next) 2025-09-30 14:42:12 +00:00
Fredrik Adelöw e5ece8f6b1 Merge pull request #31208 from kingbj940429/kubernetes-configmaps-rendering
feat(kubernetes-plugin): add configmaps rendering
2025-09-30 14:32:21 +02:00
김병준 cee51f7c4e chore: deelete public comment
Signed-off-by: 김병준 <kingbj0429@gmail.com>
2025-09-30 10:42:44 +09:00
Fredrik Adelöw 9556a3bb16 Merge pull request #31065 from koalaty-code/kubernetes-pod-cpu-metrics
fix(kubernetes): fixes calculation of pod cpu utilization
2025-09-29 22:56:08 +02:00
github-actions[bot] c2c60546d2 Version Packages (next) 2025-09-24 12:57:42 +00:00
github-actions[bot] c73bfa46d4 Version Packages (next) 2025-09-23 15:00:29 +00:00
김병준 5787cda0b9 feat: add test for configmap
Signed-off-by: 김병준 <kingbj0429@gmail.com>
2025-09-20 14:07:50 +09:00
김병준 f569535114 feat: add kubernetes configmap component
Signed-off-by: 김병준 <kingbj0429@gmail.com>
2025-09-20 13:55:54 +09:00
github-actions[bot] b799a2d07f Version Packages 2025-09-16 13:22:58 +00:00
Adam Letizia f7a414425d fix(kubernetes): fixes calculation of pod cpu utilization
Signed-off-by: Adam Letizia <LetiziaAdam@JohnDeere.com>
2025-09-09 08:33:04 -05:00
github-actions[bot] ac48eeb3ba Version Packages (next) 2025-09-02 12:17:03 +00:00
github-actions[bot] b93a3471c2 Version Packages 2025-08-19 13:01:39 +00:00
github-actions[bot] 531a48848c Version Packages (next) 2025-07-29 14:40:44 +00:00
github-actions[bot] 9a7cae26c9 Version Packages 2025-07-15 14:26:41 +00:00
github-actions[bot] 952cefedd8 Version Packages (next) 2025-07-01 11:50:02 +00:00
github-actions[bot] f1e160615c Version Packages (next) 2025-06-24 12:20:36 +00:00
github-actions[bot] 58558ef2c1 Version Packages 2025-06-17 12:45:56 +00:00
Patrik Oldsberg 7edb8c182c Merge pull request #29623 from GabDug/xterm-deprecation
chore(deps): Update deprecated xterm to new package under @xterm
2025-06-14 11:39:40 +02:00
github-actions[bot] f628f44cab Version Packages (next) 2025-06-10 14:28:09 +00:00
github-actions[bot] 389d265b60 Version Packages 2025-05-20 08:25:02 +00:00
github-actions[bot] 35a0c4b598 Version Packages (next) 2025-05-06 13:51:57 +00:00
github-actions[bot] 125d09682e Version Packages (next) 2025-04-29 14:27:15 +00:00
Fredrik Adelöw 28aa309325 Merge pull request #29665 from GabDug/typos
chore(typos): fix various code typos
2025-04-28 16:50:18 +02:00
Vincenzo Scamporlino 5c8fbb8526 Merge pull request #29570 from yolossn/headlamp-formatter
feat(kubernetes): add headlamp dashboard formatter
2025-04-23 22:32:41 +02:00
Gabriel Dugny 72d019d663 chore(typos): Fix low-impact typos
Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>
2025-04-23 17:56:22 +02:00
Fredrik Adelöw 835764ac43 fixup
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2025-04-22 17:31:19 +02:00