Project: Backstage (App Definition and Development / Application Definition & Image Build)
File: v1.3.0-next.2-changelog.md

55647ec7df: BREAKING: Server-to-server tokens that are authenticated by the `ServerTokenManager` now must have an `exp` claim that has not expired. Tokens where the `exp` claim is in the past or missing are considered invalid and will throw an error. This is a followup to the deprecation from the `1.2` release of Backstage where perpetual tokens were deprecated. Be sure to update any usage of the `getToken()` method to have it be called every time a token is needed. Do not store tokens for later use. Updated dependencies @backstage/integration@1.2.1-next.2 b157c2eb1c: Breaking: Use identityApi to provide auth token for pagerduty API calls. Updated dependencies @backstage/core-components@0.9.5-next.2 dc39366bdb: - Added a new page under `/create/tasks` to show tasks that have been run by the Scaffolder. Ability to filter these tasks by the signed in user, and all tasks. Added optional method to the `ScaffolderApi` interface called `listTasks` to get tasks with an required `filterByOwnership` parameter. ac0c7e45ee: Fixes review mask in `MultistepJsonForm` to work as documented. `show: true` no longer needed when mask is set. fd505f40c0: Handle binary files and files that are too large during dry-run content upload. Updated dependencies @backstage/plugin-catalog-common@1.0.3-next.1 @backstage/core-components@0.9.5-next.2 @backstage/integration@1.2.1-next.2 ce0d8d7eb1: Fixed a bug in `publish:github` action that didn't permit to add users as collaborators. This fix required changing the way parameters are passed to the action. In order to add a team as collaborator, now you must use the `team` field instead of `username`. In order to add a user as collaborator, you must use the `user` field. It's still possible to use the field `username` but is deprecated in favor of `team`. ```yaml id: publish name: Publish action: publish:github input: repoUrl: ... collaborators: access: ... team: my_team access: ... user: my_username ``` 582003a059: - Added an optional `list` method on the `TaskBroker` and `TaskStore` interface to list tasks by an optional `userEntityRef` Implemented a `list` method on the `DatabaseTaskStore` class to list tasks by an optional `userEntityRef` Added a route under `/v2/tasks` to list tasks by a `userEntityRef` using the `createdBy` query parameter Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/plugin-catalog-backend@1.2.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/cli@0.17.2-next.2 @backstage/backend-common@0.14.0-next.2 026cfe525a: Fix the public path configuration of the frontend app build so that a trailing `/` is always appended when needed. 9002ebd76b: Updated dependency `@rollup/plugin-commonjs` to `^22.0.0`. 1a33e8b287: Updated dependency `minimatch` to `5.1.0`. ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. 1cf9caecd6: fix Sidebar Contexts deprecation message aaf7652084: Bump version of `cypress` in newly scaffolded Backstage Applications. To apply this change to your own instance, please make the following change to `packages/app/package.json` under `devDependencies`. ```diff "cypress": "^7.3.0", "cypress": "^9.7.0", ``` e37c71b5a4: Updated to support deployments of Azure DevOps Server under TFS or similar sub path Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 f96e98f4cd: Updated dependency `cypress` to `^10.0.0`. Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/plugin-techdocs-node@1.1.2-next.2 Updated dependencies @backstage/plugin-techdocs-node@1.1.2-next.2 Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 bc6fb57094: Updated dependency `passport` to `^0.6.0`. Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/plugin-auth-node@0.2.2-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/backend-test-utils@0.1.25-next.2 Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/plugin-catalog-common@1.0.3-next.1 @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/plugin-permission-node@0.6.2-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/backend-tasks@0.3.2-next.2 @backstage/plugin-catalog-backend@1.2.0-next.2 b8884fd579: Add a new provider `AzureDevOpsEntityProvider` as replacement for `AzureDevOpsDiscoveryProcessor`. In order to migrate from the `AzureDevOpsDiscoveryProcessor` you need to apply the following changes: Before: ```yaml catalog: locations: type: azure-discovery target:

``` ```ts / packages/backend/src/plugins/catalog.ts / import { AzureDevOpsDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-azure'; const builder = await CatalogBuilder.create(env); / ... other processors ... */ builder.addProcessor(new AzureDevOpsDiscoveryProcessor(env.reader)); ``` After: ```yaml catalog: providers: azureDevOps: anyProviderId: host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com organization: myorg # For on-premise this would be your Collection project: myproject repository: service-* path: /catalog-info.yaml ``` ```ts / packages/backend/src/plugins/catalog.ts / import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; const builder = await CatalogBuilder.create(env); / ... other processors and/or providers ... */ builder.addEntityProvider( AzureDevOpsEntityProvider.fromConfig(env.config, { logger: env.logger, schedule: env.scheduler.createScheduledTaskRunner({ frequency: { minutes: 30 }, timeout: { minutes: 3 }, }), }), ); ``` Visit <https://backstage.io/docs/integrations/azure/discovery> for more details and options on configuration. Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/backend-tasks@0.3.2-next.2 @backstage/plugin-catalog-backend@1.2.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/plugin-catalog-backend@1.2.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/backend-tasks@0.3.2-next.2 @backstage/plugin-catalog-backend@1.2.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/backend-tasks@0.3.2-next.2 @backstage/plugin-catalog-backend@1.2.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/plugin-catalog-backend@1.2.0-next.2 7d8acfc32e: Replaced all usages of `@backstage/search-common` with `@backstage/plugin-search-common` Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. Updated dependencies @backstage/core-components@0.9.5-next.2 2fc98ac50c: Fix broken app-config in the example in the README Updated dependencies @backstage/core-components@0.9.5-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/plugin-auth-node@0.2.2-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 5553f09e80: ability to configure refresh interval on Kubernetes tab Updated dependencies @backstage/core-components@0.9.5-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 306d0b4fdd: Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component. Example: ```diff // app/src/components/Root/Root.tsx <SidebarPage> <Sidebar> //... <SidebarGroup label="Menu" icon={<MenuIcon />}> {/ Global nav, not org-specific /} //... <SidebarItem icon={HomeIcon} to="catalog" text="Home" /> <MyGroupsSidebarItem singularTitle="My Squad" pluralTitle="My Squads" icon={GroupIcon} filter={{ 'spec.type': 'team' }} /> //... </SidebarGroup> </ Sidebar> </SidebarPage> ``` Updated dependencies @backstage/core-components@0.9.5-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/plugin-auth-node@0.2.2-next.2 @backstage/plugin-permission-node@0.6.2-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/plugin-auth-node@0.2.2-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 Updated dependencies @backstage/plugin-scaffolder-backend@1.3.0-next.2 @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 Updated dependencies @backstage/plugin-scaffolder-backend@1.3.0-next.2 @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 5388e6bdc5: Fixed a bug that could cause analytics events in other parts of Backstage to capture nonsensical values resembling search modal state under some circumstances. Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/core-components@0.9.5-next.2 7d8acfc32e: `RouterOptions` and `createRouter` now marked as public exports Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/backend-common@0.14.0-next.2 @backstage/plugin-search-backend-node@0.6.2-next.2 @backstage/plugin-auth-node@0.2.2-next.2 @backstage/plugin-permission-node@0.6.2-next.2 7d8acfc32e: Additional types now exported publicly: ElasticSearchAgentOptions ElasticSearchConcreteQuery ElasticSearchQueryTranslator ElasticSearchConnectionConstructor, ElasticSearchTransportConstructor, ElasticSearchNodeOptions, ElasticSearchOptions, ElasticSearchAuth, Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/plugin-search-backend-node@0.6.2-next.2 Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/backend-common@0.14.0-next.2 @backstage/plugin-search-backend-node@0.6.2-next.2 7d8acfc32e: Replaced all `@beta` exports with `@public` exports Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/backend-common@0.14.0-next.2 @backstage/backend-tasks@0.3.2-next.2 7d8acfc32e: `@beta` exports now replaced with `@public` exports ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. Updated dependencies @backstage/core-components@0.9.5-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/backend-tasks@0.3.2-next.2 @backstage/plugin-tech-insights-node@0.3.1-next.1 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/plugin-tech-insights-node@0.3.1-next.1 Updated dependencies @backstage/backend-common@0.14.0-next.2 61fba6e50b: In order to ensure a good, stable TechDocs user experience when running TechDocs with `techdocs.builder` set to `local`, the number of concurrent builds has been limited to 10. Any additional builds requested concurrently will be queued and handled as prior builds complete. In the unlikely event that you need to handle more concurrent builds, consider scaling out your TechDocs backend deployment or using the `external` option for `techdocs.builder`. Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/plugin-catalog-common@1.0.3-next.1 @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 @backstage/plugin-techdocs-node@1.1.2-next.2 Updated dependencies @backstage/plugin-search-common@0.3.5-next.1 @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/integration@1.2.1-next.2 Updated dependencies @backstage/plugin-scaffolder@1.3.0-next.2 @backstage/cli@0.17.2-next.2 @backstage/plugin-pagerduty@0.4.0-next.2 @backstage/plugin-search-common@0.3.5-next.1 @backstage/plugin-cost-insights@0.11.28-next.2 @backstage/plugin-catalog-common@1.0.3-next.1 @backstage/plugin-kubernetes@0.6.6-next.2 @backstage/core-components@0.9.5-next.2 @backstage/plugin-search@0.8.2-next.2 @backstage/plugin-org@0.5.6-next.2 Updated dependencies @backstage/plugin-scaffolder-backend@1.3.0-next.2 @backstage/backend-common@0.14.0-next.2 @backstage/plugin-search-backend@0.5.3-next.2 @backstage/plugin-auth-backend@0.14.1-next.2 @backstage/plugin-search-backend-module-elasticsearch@0.1.5-next.2 @backstage/integration@1.2.1-next.2 @backstage/plugin-techdocs-backend@1.1.2-next.2 @backstage/plugin-search-backend-node@0.6.2-next.2 example-app@0.2.72-next.2 @backstage/backend-tasks@0.3.2-next.2 @backstage/plugin-app-backend@0.3.33-next.2 @backstage/plugin-auth-node@0.2.2-next.2 @backstage/plugin-azure-devops-backend@0.3.12-next.2 @backstage/plugin-badges-backend@0.1.27-next.2 @backstage/plugin-catalog-backend@1.2.0-next.2 @backstage/plugin-code-coverage-backend@0.1.31-next.2 @backstage/plugin-graphql-backend@0.1.23-next.2 @backstage/plugin-jenkins-backend@0.1.23-next.2 @backstage/plugin-kafka-backend@0.2.26-next.2 @backstage/plugin-kubernetes-backend@0.6.0-next.2 @backstage/plugin-permission-backend@0.5.8-next.2 @backstage/plugin-permission-node@0.6.2-next.2 @backstage/plugin-proxy-backend@0.2.27-next.1 @backstage/plugin-rollbar-backend@0.1.30-next.2 @backstage/plugin-scaffolder-backend-module-rails@0.4.1-next.1 @backstage/plugin-search-backend-module-pg@0.3.4-next.2 @backstage/plugin-tech-insights-backend@0.4.1-next.2 @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.17-next.1 @backstage/plugin-tech-insights-node@0.3.1-next.1 @backstage/plugin-todo-backend@0.1.30-next.2 Updated dependencies @backstage/backend-common@0.14.0-next.2 @backstage/plugin-auth-node@0.2.2-next.2