Commit Graph

1561 Commits

Author SHA1 Message Date
github-actions[bot] c1b510cabb Version Packages (next) 2026-03-24 14:54:00 +00:00
Fredrik Adelöw 2d12c3dbd1 unbreak reports in master
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-03-20 14:09:58 +01:00
Johan Persson 00d09525ed refactor(techdocs): extract shared hooks from reader components
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-19 15:16:15 +01:00
Johan Persson dc3cc87599 feat(techdocs): migrate alpha plugin pages to BUI header system
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-03-19 14:50:42 +01:00
github-actions[bot] 5725b5fcfa Version Packages 2026-03-17 21:39:07 +00:00
Patrik Oldsberg ed8d9ce67c further NFS icon migration and alignment
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-16 21:39:40 +01:00
github-actions[bot] ed7c4e3bef Version Packages (next) 2026-03-10 17:34:12 +00:00
Fredrik Adelöw e46834752a fix(techdocs): fix flaky useReaderState stale content test
Switch from real timers to fake timers so state transitions are
deterministic. The test previously relied on a ~100ms real-time window
between the 1000ms buildingTimeout and the 1100ms mock sync delay,
which was too tight for slow CI machines to observe reliably.

Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-03-09 20:58:22 +01:00
dependabot[bot] 9795d3022b chore(deps): bump dompurify from 3.3.1 to 3.3.2
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 3.3.1 to 3.3.2.
- [Release notes](https://github.com/cure53/DOMPurify/releases)
- [Commits](https://github.com/cure53/DOMPurify/compare/3.3.1...3.3.2)

---
updated-dependencies:
- dependency-name: dompurify
  dependency-version: 3.3.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-05 19:18:40 +00:00
Patrik Oldsberg d0206c499a Remove deprecated defaultPath migration helper from PageBlueprint
The `defaultPath` param was a compile-time migration artifact typed to
produce an error, guiding users to use `path` instead. The migration
period is over, so this removes it from the public API surface.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-05 09:53:22 +01:00
github-actions[bot] db0d171511 Version Packages (next) 2026-03-03 14:16:49 +00:00
Patrik Oldsberg 30e08dfbcc Add default entity content groups for techdocs and api-docs plugins
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-25 15:37:10 +01:00
github-actions[bot] 4bd6a3a1af Version Packages (next) 2026-02-24 19:24:06 +00:00
Andre Wanlin 4541817031 Updated API reports due to the package change
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-02-23 06:29:04 -06:00
github-actions[bot] e6df5d52ce Version Packages 2026-02-17 16:06:18 +00:00
Patrik Oldsberg b7ae1243e0 frontend-plugin-api: make header actions a element[]
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-17 12:35:20 +01:00
Patrik Oldsberg 018ca876d0 add plugin title and icons
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-17 11:55:34 +01:00
Patrik Oldsberg 4d2b2642c0 frontend-plugin-api: added noHeader param for page blueprint
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-17 11:55:28 +01:00
Patrik Oldsberg d2705be180 frontend-plugin-api: add support for sub page icons
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-17 11:55:28 +01:00
Patrik Oldsberg abd0a5ad52 frontend-plugin-api: migration to IconElement + API reports
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-17 11:55:23 +01:00
Patrik Oldsberg e1f22f2d15 plugin icons and titles
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-17 11:55:22 +01:00
Ferin Patel af59acbab7 Merge branch 'backstage:master' into master 2026-02-15 13:45:51 -04:00
Gabriel Dugny c47f3d8a73 Flip boolean config
Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>
2026-02-10 23:59:40 +01:00
Gabriel Dugny 46c1c648b0 Merge remote-tracking branch 'origin/master' into techdocs-nfs
Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>

# Conflicts:
#	packages/techdocs-cli-embedded-app/package.json
#	plugins/techdocs/src/alpha/index.tsx
#	yarn.lock
2026-02-10 23:47:25 +01:00
github-actions[bot] 7c41134684 Version Packages (next) 2026-02-10 16:14:59 +00:00
Fredrik Adelöw 1107812a0f Merge pull request #32631 from backstage/freben/predicates-2
Introduce the `@backstage/filter-predicates` package
2026-02-10 16:17:35 +01:00
Andreas Berger 491a06cbf1 Add the ability to show icons for the tabs on the entity page (new frontend)
Signed-off-by: Andreas Berger <andreas@berger-ecommerce.com>
2026-02-05 11:15:56 +01:00
Paul Schultz a7e0d506a2 feat: enable react router feature flags for v7
Signed-off-by: Paul Schultz <pschultz@pobox.com>
2026-02-03 09:37:11 -06:00
github-actions[bot] 1ea737c1e2 Version Packages (next) 2026-02-03 14:24:29 +00:00
Fredrik Adelöw 7feb83b586 introduce the @backstage/filter-predicates package
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-02-03 14:47:13 +01:00
github-actions[bot] d4b85dddee Version Packages (next) 2026-01-27 15:51:11 +00:00
Patrik Oldsberg 22dce2b644 techdocs: migrate nfs addons to utility API
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-01-26 16:53:04 +01:00
Patrik Oldsberg 7edb810248 frontend-plugin-api: add new internal option for extension inputs
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-01-23 11:41:15 +01:00
Gabriel Dugny 9e29545114 fix(techdocs): Improve sidebar position, scroll (#31483)
Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>
2026-01-21 11:15:05 +01:00
github-actions[bot] 2e902e7b43 Version Packages 2026-01-20 16:40:05 +00:00
bond yan 2bfbf56da7 Merge pull request #32260 from GabDug/blv/techdocs-copy-button-layout
fix(techdocs): Code block Copy To Clipboard button layout with latest mkdocs-material
2026-01-19 14:17:16 -05:00
bond yan 1861ee760c Merge pull request #32087 from leboncoin/fix-techdocs-colors-calc
fix(techdocs): correct colors calculation
2026-01-19 14:15:00 -05:00
Gabriel Dugny 27798df0a3 Migrate techdocs-cli-embedded-app to NFS
Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>
2026-01-11 20:25:25 +01:00
Gabriel Dugny 94ff7abe78 fix(techdocs): Code block Copy To Clipboard button layout with latest mkdocs-material
Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>
2026-01-07 14:22:19 +01:00
github-actions[bot] e237d65cdc Version Packages (next) 2026-01-05 22:23:51 +00:00
Backstage Service Account 9f1ee3e667 Version Packages (next) (#32222)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-30 16:06:20 +01:00
ferin79 0a887797ce Added title prop to OffsetPaginatedDocsTable for proper display
Signed-off-by: ferin79 <ferinpatel79@gmail.com>
2025-12-17 22:50:02 -04:00
github-actions[bot] c24788d5bb Version Packages 2025-12-16 14:08:20 +00: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 adeb5fd152 Merge pull request #31683 from beverts312/techdocs-schema
fix(techdocs): use correct type for additionalAllowedUriProtocols
2025-12-13 19:34:13 +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
github-actions[bot] e08f48a9b5 Version Packages (next) 2025-12-09 15:00:09 +00:00
Thomas Cardonne 0afb8a63ec fix(techdocs): correct colors calculation
Signed-off-by: Thomas Cardonne <thomas.cardonne@adevinta.com>
2025-12-09 15:26:40 +01:00
Fredrik Adelöw f3f84f1e4b make .withOverrides have a simplified result type
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2025-12-03 16:51:12 +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