Merge branch 'master' into canon-render-prop

This commit is contained in:
Charles de Dreuille
2025-04-04 08:04:58 +01:00
954 changed files with 70220 additions and 32779 deletions
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/canon': minor
---
Fix CSS imports and move CSS outputs out of the dist folder.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/core-components': minor
---
`SimpleStepper` back button now works with `activeStep` property set higher than 0
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/canon': minor
---
Added a new Tooltip component to Canon.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search-backend-module-techdocs': patch
---
Added an extension point that allows for custom entity filtering during document collation.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog': minor
---
Now a custom entity page header can be passed as input to the default entity page.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/create-app': minor
---
Upgraded the TypeScript version in the template to `5.8`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-gitlab': patch
---
fix: Creating a repository in a user namespace would always lead to an error
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-techdocs': patch
---
Fixed double scrollbar issue that would appear on the Entity TechDocs view page that would stop the page from full scrolling to the top when navigating to a new page
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/core-plugin-api': patch
---
Failure to lazy load an extension will now always result in an error being thrown to be forwarded to error boundaries, rather than being rendered using the `BootErrorPage` app component.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/config-loader': patch
---
Added `@types/minimist` to `devDependencies`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/cli': patch
---
Internal change to move the `migrate` and `version:*` commands into a new migrate module.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search-backend-module-elasticsearch': patch
---
Allow `indexPrefix` configuration through the `app-config.yaml`
-6
View File
@@ -1,6 +0,0 @@
---
'@backstage/frontend-app-api': patch
'@backstage/frontend-defaults': patch
---
It's now possible to provide a middleware that wraps all extension factories by passing an `extensionFactoryMiddleware` to either `createApp()` or `createSpecializedApp()`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend-module-bitbucket-provider': patch
---
Enabled persistency of scopes for Bitbucket Cloud.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/core-components': patch
---
Added `classNames` prop to the `Page` component
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-defaults': patch
---
The default auditor service implementation will now log low severity events with `debug` level instead of `info`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-bitbucket-cloud': patch
---
Added `bitbucketCloud:branchRestriction:create` to allow users to create bitbucket cloud branch restrictions in templates
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog': minor
---
Added support of filtering based on system columns in catalog table
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/canon': patch
---
Fix Button types that was preventing the use of native attributes like onClick.
+9
View File
@@ -0,0 +1,9 @@
---
'@backstage/plugin-catalog-backend-module-github': minor
---
**BREAKING**: Explicitly rejects branch names containing a slash character.
The module now rejects any configuration that contains slashes in branch names. The reason for this is that the ingestion will run into downstream problems if they were let through. If you had configuration with a slash in the branch name in `filters.branch`, your application may fail to start up.
If you are affected by this, please move over to using branches that do not have slashes in them.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-defaults': minor
---
Allow pass through of redis client and cluster options to Cache core service
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-techdocs-react': patch
---
Fix catalog entity docs page not loading due to multiple addons data attachment in the New Frontend System.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search-react': patch
---
Capture the number of search results in the search analytics event that correspond to the term entered.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-backend-module-gitlab': patch
---
Updated the path field in the `gitlab:group:ensureExists` action to support also strings with multiple segments (e.g. `group/subgroup`)
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/frontend-plugin-api': patch
---
Added a new Utility API, `DialogApi`, which can be used to show dialogs in the React tree that can collect input from the user.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-techdocs-node': patch
---
Update AWS file retrieval logic from storing file in buffer array to piping to res for better memory efficiency.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli': patch
---
Bump @module-federation/enhanced ^0.9.0 to fix GHSA-593f-38f6-jp5m
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/canon': patch
---
Updated styles for the Menu component in Canon.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-home': patch
---
The starred entities component uses the entity title or display name if it exists
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-unprocessed-entities': patch
---
Added confirmation popup for delete entities in Catalog Unprocessed Entities plugin
-6
View File
@@ -1,6 +0,0 @@
---
'@backstage/cli': patch
'@backstage/plugin-scaffolder-backend': patch
---
build(deps): bump `esbuild` from 0.24.2 to 0.25.0
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-defaults': patch
---
Remove unused dependencies
-6
View File
@@ -1,6 +0,0 @@
---
'@backstage/plugin-kubernetes-backend': patch
'@backstage/plugin-kubernetes': patch
---
refactor: use `KUBERNETES_ANNOTATION` and `KUBERNETES_LABEL_SELECTOR_QUERY_ANNOTATION` annotations from `kubernetes-common`
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-kubernetes': patch
---
Added New Frontend System filter for the Kubernetes tab to use `isKubernetesAvailable` to control its visibility
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-kubernetes-common': patch
---
Export `backstage.io/kubernetes-id` and `backstage.io/kubernetes-label-selector` annotations as constants
-72
View File
@@ -1,72 +0,0 @@
---
'@backstage/plugin-scaffolder-node': minor
---
**DEPRECATION**: We've deprecated the old way of defining actions using `createTemplateAction` with raw `JSONSchema` and type parameters, as well as using `zod` through an import. You can now use the new format to define `createTemplateActions` with `zod` provided by the framework. This change also removes support for `logStream` in the `context` as well as moving the `logger` to an instance of `LoggerService`.
Before:
```ts
createTemplateAction<{ repoUrl: string }, { test: string }>({
id: 'test',
schema: {
input: {
type: 'object',
required: ['repoUrl'],
properties: {
repoUrl: { type: 'string' },
},
},
output: {
type: 'object',
required: ['test'],
properties: {
test: { type: 'string' },
},
},
},
handler: async ctx => {
ctx.logStream.write('blob');
},
});
// or
createTemplateAction({
id: 'test',
schema: {
input: z.object({
repoUrl: z.string(),
}),
output: z.object({
test: z.string(),
}),
},
handler: async ctx => {
ctx.logStream.write('something');
},
});
```
After:
```ts
createTemplateAction({
id: 'test',
schema: {
input: {
repoUrl: d => d.string(),
},
output: {
test: d => d.string(),
},
},
handler: async ctx => {
// you can just use ctx.logger.log('...'), or if you really need a log stream you can do this:
const logStream = new PassThrough();
logStream.on('data', chunk => {
ctx.logger.info(chunk.toString());
});
},
});
```
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/core-app-api': minor
---
The default auth injection middleware for the `FetchApi` will now also take configuration under `discovery.endpoints` into consideration when deciding whether to include credentials or not.
+17
View File
@@ -0,0 +1,17 @@
---
'@backstage/plugin-auth-backend-module-oidc-provider': patch
---
Added custom timeout setting for oidc provider
Here is an example of how to use a custom timeout with the configuration:
```yaml
auth:
oidc:
production:
clientId: ${AUTH_GOOGLE_CLIENT_ID}
clientSecret: ${AUTH_GOOGLE_CLIENT_SECRET}
timeout:
seconds: 30
```
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/frontend-plugin-api': minor
'@backstage/frontend-defaults': minor
'@backstage/frontend-app-api': patch
---
Introduced a `createFrontendFeatureLoader()` function, as well as a `FrontendFeatureLoader` interface, to gather several frontend plugins, modules or feature loaders in a single exported entrypoint and load them, possibly asynchronously. This new feature, very similar to the `createBackendFeatureLoader()` already available on the backend, supersedes the previous `CreateAppFeatureLoader` type which has been deprecated.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli': patch
---
Fixed an issue causing the `repo lint` command to fail when the `--max-warnings` option was used.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/canon': minor
---
We added a new IconButton component with fixed sizes showcasing a single icon.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-react': minor
---
Add support for a new entity predicate syntax when defining `filter`s related to the blueprints exported via `/alpha` for the new frontend system. For more information, see the [entity filters documentation](https://backstage.io/docs/features/software-catalog/catalog-customization#advanced-customization#entity-filters).
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-app': patch
---
Fixed extra app elements not being rendered as part of apps without a sign-in page.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-gitlab': patch
---
add filter for repos by membership and topics
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/canon': patch
---
Internal refactor and fixes to the prop extraction logic for layout components.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search-backend-module-pg': patch
---
Enable normalization in postgres query to change the behavior of the search.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder': minor
---
Allowed passing `ui:disabled` for disabling the input field of all the pickers.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-node': patch
---
Use a different ID for the deprecated alpha version of the catalog service, as it has a different type definition and cannot be used interchangeably with the non-alpha version.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-permission-node': minor
---
**BREAKING** The `ServerPermissionClient` can no longer be instantiated with a `tokenManager` and must instead be instantiated with an `auth` service. If you are still on the legacy backend system, use `createLegacyAuthAdapters()` from `@backstage/backend-common` to create a compatible `auth` service.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-react': patch
---
Fix field extension validation not working when field is in dependencies in an array field
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend': patch
---
Added a fix in `@backstage/plugin-catalog-backend` to prevent duplicate path keys in entity search if only casing is different.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-auth-node': patch
---
Added `AuthResolverContext.resolveOwnershipEntityRefs` as a way of accessing the default ownership resolution logic in sign-in resolvers, replacing `getDefaultOwnershipEntityRefs` from `@backstage/plugin-auth-backend`.
-50
View File
@@ -1,50 +0,0 @@
---
'@backstage/plugin-catalog-react': minor
---
Add a new `defaultGroup` parameter to the `EntityContentBlueprint`, here are usage examples:
Set a default group while creating the extension:
```diff
const entityKubernetesContent = EntityContentBlueprint.make({
name: 'kubernetes',
params: {
defaultPath: '/kubernetes',
defaultTitle: 'Kubernetes',
+ defaultGroup: 'deployment',
filter: 'kind:component,resource',
loader: () =>
import('./KubernetesContentPage').then(m =>
compatWrapper(<m.KubernetesContentPage />),
),
},
});
```
Disassociate an entity content from a default group:
```diff
# app-config.yaml
app:
extensions:
# Entity page content
- - entity-content:kubernetes/kubernetes
+ - entity-content:kubernetes/kubernetes:
+ config:
+ group: false
```
Associate an entity content with a different default or custom group than the one defined in code when the extension was created:
```diff
# app-config.yaml
app:
extensions:
# Entity page content
- - entity-content:kubernetes/kubernetes
+ - entity-content:kubernetes/kubernetes:
+ config:
+ group: custom # associating this extension with a custom group id, the group should have previously been created via entity page configuration
```
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-backend-module-sentry': patch
---
Made "sentry:project:create" action idempotent
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/core-components': patch
---
Fixed the messaging in the `AlertDisplay` where it was claiming that there were older messages available rather than newer.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/frontend-test-utils': patch
---
Added a `initialRouteEntries` option to `renderInTestApp`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/frontend-test-utils': patch
---
The `renderInTestApp` helper now provides a default mock config with mock values for both `app.baseUrl` and `backend.baseUrl`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-backend-module-azure': patch
---
Made "publish:azure" action idempotent
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/frontend-test-utils': minor
---
**BREAKING**: Removed deprecated `setupRequestMockHandlers` which was replaced by `registerMswTestHooks`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/canon': patch
---
To avoid conflicts with Backstage, we removed global styles and set font-family and font-weight for each components.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-gitlab': patch
---
Made gitlab:repo:push action idempotent.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-gitlab': patch
---
Remove usages of `@backstage/backend-common`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-node-test-utils': minor
---
Use update `createTemplateAction` kinds
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-gitlab': patch
---
Made gitlab:issue:edit action idempotent.
-11
View File
@@ -1,11 +0,0 @@
---
'@backstage/frontend-app-api': minor
---
**BREAKING**: The returned object from `createSpecializedApp` no longer contains a `createRoot()` method, and it instead now contains `apis` and `tree`.
You can replace existing usage of `app.createRoot()` with the following:
```ts
const root = tree.root.instance?.getData(coreExtensionData.reactElement);
```
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/frontend-defaults': minor
'@backstage/frontend-app-api': minor
'@backstage/core-compat-api': minor
---
**BREAKING**: Dropped support for the removed opaque `@backstage/ExtensionOverrides` and `@backstage/BackstagePlugin` types.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-react': patch
---
Scaffolding - Template card - button to show template entity detail
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-import': patch
---
Expose the `UnpackNestedValue` type as it's been removed from `react-hook-form`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/core-components': patch
---
Fixed a bug in the SidebarSubmenuItem within the core-components package that caused the dropdown button to be misaligned in the sidebar and the button text to appear in uppercase due to the default <Button> behavior. Also added an example dropdown menu to the app for reference.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-notifications-backend': patch
---
Fix null topics being returned from notification API
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend': minor
---
Added opt-in ability to evict entities from the catalog whose provider is no longer configured. See [Catalog configuration documentation](https://backstage.io/docs/features/software-catalog/configuration#clean-up-entities-from-orphaned-entity-providers)
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-defaults': patch
---
Explicitly stringify extra logger fields with `JSON.stringify` to prevent `[object Object]` errors.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/frontend-plugin-api': minor
---
**BREAKING**: Removed the deprecated `ExtensionOverrides` and `FrontendFeature` types.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-backend-module-bitbucket': patch
---
Made "publish:bitbucket" action idempotent
-12
View File
@@ -1,12 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-confluence-to-markdown': patch
'@backstage/plugin-scaffolder-backend-module-cookiecutter': patch
'@backstage/plugin-scaffolder-backend-module-github': patch
'@backstage/plugin-scaffolder-backend-module-rails': patch
'@backstage/plugin-scaffolder-node-test-utils': patch
'@backstage/plugin-scaffolder-backend': patch
'@backstage/plugin-scaffolder-common': patch
'@backstage/plugin-scaffolder-node': patch
---
Got rid of most `@backstage/backend-common` usages
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/cli': patch
---
Fixed the package prepack command so that it no longer produces unnecessary `index` entries in the `typesVersions` map, which could cause `/index` to be added when automatically adding imports.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-github': patch
---
Added `validateLocationsExist` to the config definition where it was missing.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-home-react': patch
---
Don't render header divider on homepage cards if no title was specified.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-react': patch
---
Deprecated the alpha `ScaffolderFormFieldsApi` and `formFieldsApiRef` as these are being replaced with a different solution.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/frontend-plugin-api': minor
---
**BREAKING**: Removed deprecated variant of `createExtensionDataRef` where the ID is passed directly.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/canon': patch
---
Add global CSS reset for anchor tags.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-notifications-backend-module-slack': minor
---
Added a new Slack NotificationProcessor for use with the notifications plugin
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/cli': patch
---
Internal update to move `test` commands to a separate module.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-test-utils': patch
---
Added support for PostgreSQL version 17
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-signals': patch
---
Fixed multiple signal connection attempts when there are multiple subscriptions at the same time
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-app': patch
---
Added implementation of the new `DialogApi`.
-6
View File
@@ -1,6 +0,0 @@
---
'@backstage/frontend-defaults': patch
'@backstage/frontend-test-utils': patch
---
Internal refactor to match updated `createSpecializedApp`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-techdocs-backend': patch
---
Minor type fix
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/config-loader': minor
---
The include transforms applied during config loading will now only apply to the known keys `$file`, `$env`, and `$include`. Any other key that begins with a `$` will now be passed through as is.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-backend-module-github': patch
---
Made "github:autolinks:create" action idempotent
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/core-components': minor
---
Declared CancelIcon explicitly on Chip component inside Select.tsx to disable onMouseDown event by default that creates the flaw of re-opening select component when user tries to remove a selected filter.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/frontend-defaults': patch
---
Feature discovery and resolution logic used in `createApp` is now exposed via the `discoverAvailableFeatures` and `resolveAsyncFeatures` functions respectively.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-import': patch
---
adding translation for `Register an existing component` text
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-events-backend': patch
---
Allow webhook content to be 5mb instead the default 100kb
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search': patch
---
Expand the default kind filter to include all kinds from the System Model.
-16
View File
@@ -1,16 +0,0 @@
---
'@backstage/plugin-catalog-react': minor
---
Introduces a new `EntityHeaderBlueprint` that allows you to override the default entity page header.
```jsx
import { EntityHeaderBlueprint } from '@backstage/plugin-catalog-react/alpha';
EntityHeaderBlueprint.make({
name: 'my-default-header',
params: {
loader: () => import('./MyDefaultHeader').then(m => <m.MyDefaultHeader />),
},
});
```
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-gitlab': patch
---
Change the if statement in the catch block to match what the new version of Gitbeaker will return
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/canon': minor
---
We are renaming CanonProvider to IconProvider to improve clarity on how to override icons.

Some files were not shown because too many files have changed in this diff Show More