74233 Commits

Author SHA1 Message Date
Fredrik Adelöw 3eb1e79a8b Merge pull request #32973 from johnphilip283/search-on-first-navigate
perform search on first navigate
2026-02-24 09:41:47 +01:00
John Philip 1e8fdd338c add patch
Signed-off-by: John Philip <jphilip@spotify.com>
2026-02-24 03:25:07 -05:00
John Philip d5eb954544 changeset
Signed-off-by: John Philip <jphilip@spotify.com>
2026-02-24 03:20:29 -05:00
Patrik Oldsberg 48235027e4 chore: remove applied patch files
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-24 00:32:29 +01:00
renovate[bot] cc91faf318 chore(deps): update dependency nodemon to v3.1.13
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-23 23:10:10 +00:00
John Philip 5cefb88bb2 perform search on first navigate
Signed-off-by: John Philip <jphilip@spotify.com>
2026-02-23 16:30:33 -05:00
Iury Lenon Alves 6a8fb13971 docs: add usage example for openapi ref resolution
Signed-off-by: Iury Lenon Alves <iuryalves.uk@gmail.com>
2026-02-23 21:24:15 +00:00
Iury Lenon 0a39019a4d Update docs/features/software-catalog/configuration.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Iury Lenon <iuryalves.uk@gmail.com>
2026-02-23 21:15:09 +00:00
Iury Lenon 1a8a464d1d Update docs/features/software-catalog/configuration.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Iury Lenon <iuryalves.uk@gmail.com>
2026-02-23 21:09:46 +00:00
Patrik Oldsberg 2a515460e8 Fix prettier existence checks and import order
Use fs.pathExists instead of checking resolved path strings which are
always truthy. Fix import ordering in e2e-test runCommand.ts.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 22:08:37 +01:00
Iury Lenon Alves a9587e4dd1 docs: move openapi ref support to configuration.md and add install steps
Signed-off-by: Iury Lenon Alves <iuryalves.uk@gmail.com>
2026-02-23 21:02:06 +00:00
Patrik Oldsberg 909c742c18 Stabilize translation API in the new frontend system
Remove @alpha tags from translation-related types and switch all
translation API imports in new frontend system packages to use stable
paths from @backstage/frontend-plugin-api instead of
@backstage/core-plugin-api/alpha.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-23 21:23:05 +01:00
Patrik Oldsberg 8c3802c5ba Add @backstage/cli to changeset, remove cli-common mock from create-app test
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 21:15:48 +01:00
Patrik Oldsberg 641d88cb07 Address PR review comments
- Remove cli-node/src/paths.ts compat layer, migrate all cli-node
  internal usage to import targetPaths from @backstage/cli-common
- Use single-arg overrideTargetPaths('/root') where dir === rootDir
- Scope mockDir to each describe block in bump.test.ts to avoid
  shared state issues with overrideTargetPaths
- Remove unnecessary overrideTargetPaths from plugin-manager.test.ts
- Remove stale findPaths mock from createApp.test.ts
- Use overrideTargetPaths in getWorkspaceRoot.test.ts and cli-node tests

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 21:01:27 +01:00
Patrik Oldsberg 3856774252 Merge pull request #32969 from backstage/rugvip/scaffolder-export-form-fields-api
scaffolder: add back form fields API alpha exports
2026-02-23 20:42:57 +01:00
Patrik Oldsberg ee87720300 scaffolder: add back form fields API alpha exports
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 20:23:57 +01:00
Johan Persson 0f462f85fe refactor(ui): enforce required children on bg provider component types
Strengthens BgPropsConstraint to also check that children is
present and non-optional in the OwnProps type of bg provider
components. This ensures children can only flow through
childrenWithBgProvider, preventing silent bypasses of the bg
context system.

Box and Accordion OwnProps updated to comply — children is now
required. BoxProps updated to Omit children from
React.HTMLAttributes to avoid an incompatible duplicate property
declaration. Storybook stories updated accordingly.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-23 18:20:16 +01:00
Johan Persson f2f6e3d47a refactor(ui): centralize prop resolution in useDefinition
Extract prop-splitting and responsive resolution with default
fallbacks from `useDefinition` into a new `resolveDefinitionProps`
helper. This makes `propDefs.default` the single authoritative
source of truth for default values.

Previously, `useBgProvider` had a separate manual default lookup
(`props.bg ?? (definition.propDefs as any).bg?.default`) that
duplicated the main resolution loop.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-23 18:20:16 +01:00
Patrik Oldsberg ebc01ef04d Add overrideTargetPaths test utility and fix rebase issues
Adds `overrideTargetPaths` to `@backstage/cli-common/testUtils` for
cleanly mocking `targetPaths` in tests without `jest.mock` or
`jest.spyOn`. Migrates all existing test mocks to use the new utility.

Also fixes translations module imports broken by the rebase.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 17:25:31 +01:00
Fredrik Adelöw 63ad13904b do not use the very particular 'true' array syntax, but instead the normal one
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-02-23 16:43:36 +01:00
Andre Wanlin 344242adcf Merge pull request #32970 from backstage/awanlin/api-extractor-repo-tools-bump
Added patch
2026-02-23 08:01:41 -06:00
Patrik Oldsberg 553e727d5f Fix lint errors: add eslint-disable for __dirname, fix no-use-before-define
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-23 14:44:11 +01:00
Patrik Oldsberg 6fa63d411f Fix prettier formatting
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-23 14:44:11 +01:00
Patrik Oldsberg fc03fa6ab2 Fix backend package.json reference to search-backend-module-explore
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-23 14:44:11 +01:00
Patrik Oldsberg 07816d67f3 Address PR review comments
- Refactor targetPaths/findOwnPaths to class-based implementations with
  unified caching and .dir/.rootDir properties alongside resolve methods
- Replace jest.mock with jest.spyOn in plugin-manager.test.ts
- Remove paths compatibility wrapper from repo-tools, migrate all internal
  consumers to use targetPaths from @backstage/cli-common directly
- Fix changeset package name (@techdocs/cli not @backstage/techdocs-cli)
- Add migration examples to cli-common changeset
- Update API report for cli-common

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-02-23 14:44:11 +01:00
Patrik Oldsberg 70fc178697 Replace findPaths with targetPaths and findOwnPaths
Split the path resolution API in @backstage/cli-common into
targetPaths (cwd-based singleton) and findOwnPaths (package-relative).
Migrate all consumers across the repo away from the deprecated findPaths.

Rename TargetPaths/OwnPaths properties to resolve/resolveRoot,
removing the redundant type prefix from property names.

Make findOwnPaths calls lazy in modules - called inside functions
rather than at module scope.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 14:44:10 +01:00
Patrik Oldsberg 29e91e9159 Give each CLI module its own paths instead of importing from lib/
Split the paths API in @backstage/cli-common into targetPaths (a lazily
initialized singleton for cwd-based paths) and findOwnPaths (a cached function
for package-relative paths). Most CLI module files only need target paths, which
can now be imported directly without __dirname. The few files that need own paths
use findOwnPaths(__dirname).

Added hierarchical caching to findOwnDir so the filesystem walk only happens
once per package. targetPaths re-resolves automatically if process.cwd() changes.

The deprecated findPaths function is preserved for backward compatibility,
delegating to the new primitives internally.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 14:44:10 +01:00
Patrik Oldsberg 56bd494b0c Give each CLI module its own paths instead of importing from lib/
Each module file that needs paths now calls findPaths(__dirname) directly from
@backstage/cli-common. This removes the coupling between modules and lib/paths,
and will continue to work when modules are extracted into separate packages since
each package's __dirname resolves to its own root.

Added hierarchical caching to findOwnDir in cli-common so that the filesystem
walk only happens once per package - subsequent calls from sibling directories
hit the cache at a common ancestor.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 14:44:10 +01:00
Patrik Oldsberg 158bfe8a69 Give each CLI module its own paths instead of importing from lib/
Each module now has a local paths.ts that calls findPaths(__dirname) directly.
This makes modules fully independent of lib/paths.ts, and the pattern will
continue to work when modules are extracted into separate packages since each
package's __dirname will resolve to its own root.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 14:44:10 +01:00
Andre Wanlin 2ce812ab3c Update .patches/pr-32950.txt
Co-authored-by: Fredrik Adelöw <freben@gmail.com>
Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
2026-02-23 07:43:46 -06:00
Andre Wanlin 8b6b3e1188 Added patch
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-02-23 07:36:12 -06:00
Andre Wanlin ca0fb2d9ef Merge pull request #32950 from awanlin/topic/api-extractor-repo-tools
Updated `@microsoft/api-extractor` to `7.57.3`
2026-02-23 07:11:50 -06:00
Fredrik Adelöw b06bcdcb35 transfer filters across to the query too
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-02-23 13:54:29 +01: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
Fredrik Adelöw 0a4b3a16ae Update docs/features/software-catalog/api.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-02-23 13:25:49 +01:00
Patrik Oldsberg ce676fea2f Merge pull request #32904 from backstage/rugvip/translation-export-import
cli: add translations export and import commands
2026-02-23 13:18:03 +01:00
Andre Wanlin d0469f605a Updated to latest patch version
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-02-23 06:08:29 -06:00
Patrik Oldsberg e75d80dbc5 Merge pull request #32956 from backstage/rugvip/cli-node-parallel-helpers
cli-node: move parallel worker utilities from cli
2026-02-23 12:05:05 +01:00
Patrik Oldsberg f467a4126e Return object from runWorkerQueueThreads
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 11:38:23 +01:00
Patrik Oldsberg 951924d0c2 Update CLI changeset message
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 11:25:17 +01:00
Patrik Oldsberg 90ffb54552 Rename parallel/ to concurrency/ and split into separate files
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 11:21:51 +01:00
Patrik Oldsberg 67958e2d6c Fix prettier formatting
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 10:59:43 +01:00
Fredrik Adelöw 78b37160d6 Merge pull request #32953 from backstage/freben/catalog-client-ref
🧹  touch up the catalog client docs
2026-02-23 09:53:54 +01:00
Fredrik Adelöw e9991c2ac0 Merge pull request #32954 from backstage/freben/reversible-auth 2026-02-23 09:01:47 +01:00
Fredrik Adelöw 5805d6d79f Merge pull request #32964 from backstage/freben/catalog-ded 2026-02-23 09:01:30 +01:00
André Ahlert Junior df3913ec19 Add n8n to plugin directory
Signed-off-by: André Ahlert Junior <andreahlert@users.noreply.github.com>
2026-02-23 04:13:37 -03:00
Patrik Oldsberg 1dfc3436d9 cli: address review feedback from freben
Fix whitespace alignment in CLI command summary, improve export command
description to clarify it operates from an app context, and update the
corresponding docs section.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 01:05:15 +01:00
Patrik Oldsberg 4f0c7ec86a Address PR review feedback
- Rename runParallelWorkers to runConcurrentTasks, return void
- Rename ParallelWorkerOptions to ConcurrentTasksOptions
- Rename parallelismFactor to concurrencyFactor
- Remove unused runWorkerThreads and WorkerThreadsOptions
- Rename workerData to context in WorkerQueueThreadsOptions
- Drop threadCount from public API types
- Rename env var to BACKSTAGE_CLI_CONCURRENCY
- Make cli-node changeset a patch

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 00:41:17 +01:00
Fredrik Adelöw 2eb3cf6344 use fake timers
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-02-22 23:38:14 +01:00
Fredrik Adelöw fbf382f1f8 catalog: minor internal optimisation
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-02-22 22:37:18 +01:00