diff --git a/.changeset/angry-sites-fold.md b/.changeset/angry-sites-fold.md
new file mode 100644
index 0000000000..8124ddaf47
--- /dev/null
+++ b/.changeset/angry-sites-fold.md
@@ -0,0 +1,30 @@
+---
+'@backstage/plugin-auth-backend': patch
+---
+
+Added the configuration flag `auth.omitIdentityTokenOwnershipClaim` that causes issued user tokens to no longer contain the `ent` claim that represents the ownership references of the user.
+
+The benefit of this new flag is that issued user tokens will be much smaller in
+size, but they will no longer be self-contained. This means that any consumers
+of the token that require access to the ownership claims now need to call the
+`/api/auth/v1/userinfo` endpoint instead. Within the Backstage ecosystem this is
+done automatically, as clients will still receive the full set of claims during
+authentication, while plugin backends will need to use the `UserInfoService`
+which already calls the user info endpoint if necessary.
+
+When enabling this flag, it is important that any custom sign-in resolvers directly return the result of the sign-in method. For example, the following would not work:
+
+```ts
+const { token } = await ctx.issueToken({
+ claims: { sub: entityRef, ent: [entityRef] },
+});
+return { token }; // WARNING: This will not work with the flag enabled
+```
+
+Instead, the sign-in resolver should directly return the result:
+
+```ts
+return ctx.issueToken({
+ claims: { sub: entityRef, ent: [entityRef] },
+});
+```
diff --git a/.changeset/breezy-hotels-deny.md b/.changeset/breezy-hotels-deny.md
new file mode 100644
index 0000000000..13c8b47a7f
--- /dev/null
+++ b/.changeset/breezy-hotels-deny.md
@@ -0,0 +1,5 @@
+---
+'@backstage/integration': patch
+---
+
+Added missing `organizations` property to `azure` section in `config.d.ts` file
diff --git a/.changeset/bright-moles-sort.md b/.changeset/bright-moles-sort.md
new file mode 100644
index 0000000000..9796729d1a
--- /dev/null
+++ b/.changeset/bright-moles-sort.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-dynamic-feature-service': minor
+---
+
+**BREAKING** Removed support for the legacy backend, please migrate to the new backend system
diff --git a/.changeset/bumpy-showers-design.md b/.changeset/bumpy-showers-design.md
new file mode 100644
index 0000000000..2db5006944
--- /dev/null
+++ b/.changeset/bumpy-showers-design.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder-backend-module-gitlab': patch
+---
+
+If the commit action is not `create` log a more appropriate error message to the end user advising that the files they're trying to modify might not exist
diff --git a/.changeset/calm-toys-occur.md b/.changeset/calm-toys-occur.md
new file mode 100644
index 0000000000..ea03aaf4f8
--- /dev/null
+++ b/.changeset/calm-toys-occur.md
@@ -0,0 +1,17 @@
+---
+'@backstage/plugin-bitbucket-cloud-common': minor
+---
+
+Update Bitbucket Cloud schema and models.
+
+The latest schema was fetched from Bitbucket Cloud and stored locally.
+Based on the updated schema, the models got regenerated.
+
+**BREAKING:**
+
+Due to the schema changes, the model update includes one breaking change:
+
+- `Account.username` was removed.
+
+Additionally, there were a couple of compatible changes including the addition of
+`BaseCommit.committer` and others.
diff --git a/.changeset/chatty-days-wonder.md b/.changeset/chatty-days-wonder.md
deleted file mode 100644
index 5e5114c28e..0000000000
--- a/.changeset/chatty-days-wonder.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-auth-backend-module-bitbucket-provider': patch
----
-
-Enabled persistency of scopes for Bitbucket Cloud.
diff --git a/.changeset/chilly-sheep-scream.md b/.changeset/chilly-sheep-scream.md
deleted file mode 100644
index eb568ffd8f..0000000000
--- a/.changeset/chilly-sheep-scream.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog': minor
----
-
-Added support of filtering based on system columns in catalog table
diff --git a/.changeset/chilly-trams-cheer.md b/.changeset/chilly-trams-cheer.md
new file mode 100644
index 0000000000..0e14423ef8
--- /dev/null
+++ b/.changeset/chilly-trams-cheer.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-kubernetes-react': patch
+---
+
+Add headlamp formatter
diff --git a/.changeset/chubby-cougars-run.md b/.changeset/chubby-cougars-run.md
new file mode 100644
index 0000000000..deb954ef6b
--- /dev/null
+++ b/.changeset/chubby-cougars-run.md
@@ -0,0 +1,6 @@
+---
+'@backstage/plugin-catalog-backend': patch
+---
+
+This patch addresses an issue identified in Backstage when configured with a MySQL database. If an entity of type location
+(e..all.yaml) has more than 70 referenced entities, clicking "Refresh" does not update the referenced entities as expected. This occurs because the TEXT type in MySQL has a limit of 65,535 bytes, which is insufficient to store all the referenced entities, causing the refresh operation to fail.
diff --git a/.changeset/quick-carrots-open.md b/.changeset/chubby-needles-vanish.md
similarity index 51%
rename from .changeset/quick-carrots-open.md
rename to .changeset/chubby-needles-vanish.md
index 7cde586e64..2cd664dcdd 100644
--- a/.changeset/quick-carrots-open.md
+++ b/.changeset/chubby-needles-vanish.md
@@ -2,4 +2,4 @@
'@backstage/canon': patch
---
-Fix types on the Icon component.
+Fix Canon missing dependencies
diff --git a/.changeset/clear-pigs-share.md b/.changeset/clear-pigs-share.md
deleted file mode 100644
index a8241760c8..0000000000
--- a/.changeset/clear-pigs-share.md
+++ /dev/null
@@ -1,9 +0,0 @@
----
-'@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.
diff --git a/.changeset/clever-tomatoes-jump.md b/.changeset/clever-tomatoes-jump.md
deleted file mode 100644
index b18ca53189..0000000000
--- a/.changeset/clever-tomatoes-jump.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/backend-defaults': minor
----
-
-Allow pass through of redis client and cluster options to Cache core service
diff --git a/.changeset/cold-humans-check.md b/.changeset/cold-humans-check.md
new file mode 100644
index 0000000000..5bcb6caa4b
--- /dev/null
+++ b/.changeset/cold-humans-check.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-user-settings': patch
+---
+
+plugin-user-settingsgs support i18n
diff --git a/.changeset/swift-boats-add.md b/.changeset/common-goats-raise.md
similarity index 61%
rename from .changeset/swift-boats-add.md
rename to .changeset/common-goats-raise.md
index 42682437b0..c2d797b719 100644
--- a/.changeset/swift-boats-add.md
+++ b/.changeset/common-goats-raise.md
@@ -2,4 +2,4 @@
'@backstage/plugin-scaffolder-backend-module-github': patch
---
-Made "publish:github" action idempotent
+Use action context logger in Octokit client
diff --git a/.changeset/common-parrots-wink.md b/.changeset/common-parrots-wink.md
deleted file mode 100644
index 7e3578771b..0000000000
--- a/.changeset/common-parrots-wink.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-techdocs-react': patch
----
-
-Fix catalog entity docs page not loading due to multiple addons data attachment in the New Frontend System.
diff --git a/.changeset/cool-knives-design.md b/.changeset/cool-knives-design.md
new file mode 100644
index 0000000000..63197edd16
--- /dev/null
+++ b/.changeset/cool-knives-design.md
@@ -0,0 +1,7 @@
+---
+'@backstage/frontend-plugin-api': patch
+---
+
+The `id` option of `createFrontendPlugin` has been renamed to `pluginId` in order to better align with similar APIs in the frontend and backend systems.
+
+The old `id` option is deprecated and will be removed in a future release.
diff --git a/.changeset/crazy-hands-film.md b/.changeset/crazy-hands-film.md
deleted file mode 100644
index 1d5933b317..0000000000
--- a/.changeset/crazy-hands-film.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@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`)
diff --git a/.changeset/create-app-1743513781.md b/.changeset/create-app-1743513781.md
deleted file mode 100644
index b50d431d4b..0000000000
--- a/.changeset/create-app-1743513781.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/create-app': patch
----
-
-Bumped create-app version.
diff --git a/.changeset/create-app-1742907012.md b/.changeset/create-app-1745325336.md
similarity index 100%
rename from .changeset/create-app-1742907012.md
rename to .changeset/create-app-1745325336.md
diff --git a/.changeset/cruel-lights-sip.md b/.changeset/cruel-lights-sip.md
new file mode 100644
index 0000000000..b38ab052a9
--- /dev/null
+++ b/.changeset/cruel-lights-sip.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-auth-backend-module-github-provider': patch
+---
+
+Added missing types package
diff --git a/.changeset/cuddly-dodos-allow.md b/.changeset/cuddly-dodos-allow.md
deleted file mode 100644
index 0901d630f1..0000000000
--- a/.changeset/cuddly-dodos-allow.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-techdocs-node': patch
----
-
-Update AWS file retrieval logic from storing file in buffer array to piping to res for better memory efficiency.
diff --git a/.changeset/cuddly-kids-sell.md b/.changeset/cuddly-kids-sell.md
deleted file mode 100644
index 3b7cb16841..0000000000
--- a/.changeset/cuddly-kids-sell.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/cli': patch
----
-
-Bump @module-federation/enhanced ^0.9.0 to fix GHSA-593f-38f6-jp5m
diff --git a/.changeset/cuddly-mirrors-ask.md b/.changeset/cuddly-mirrors-ask.md
deleted file mode 100644
index 4fe611d067..0000000000
--- a/.changeset/cuddly-mirrors-ask.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/canon': patch
----
-
-Updated styles for the Menu component in Canon.
diff --git a/.changeset/cyan-pots-appear.md b/.changeset/cyan-pots-appear.md
new file mode 100644
index 0000000000..f82f4548c3
--- /dev/null
+++ b/.changeset/cyan-pots-appear.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-catalog-backend-module-unprocessed': minor
+---
+
+**BREAKING** Removed support for the legacy backend and removed references to `@backstage/backend-common`, please [migrate to the new backend system](https://backstage.io/docs/backend-system/building-plugins-and-modules/migrating)
diff --git a/.changeset/deep-flies-vanish.md b/.changeset/deep-flies-vanish.md
deleted file mode 100644
index 30aa10f290..0000000000
--- a/.changeset/deep-flies-vanish.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-unprocessed-entities': patch
----
-
-Added confirmation popup for delete entities in Catalog Unprocessed Entities plugin
diff --git a/.changeset/dirty-grapes-vanish.md b/.changeset/dirty-grapes-vanish.md
new file mode 100644
index 0000000000..b78660d21e
--- /dev/null
+++ b/.changeset/dirty-grapes-vanish.md
@@ -0,0 +1,7 @@
+---
+'@backstage/backend-defaults': minor
+---
+
+**BREAKING**: The `DefaultSchedulerService` constructor options now requires `RootLifecycleService`, `HttpRouterService`, and `PluginMetadataService` fields.
+
+The scheduler will register a REST API for listing and triggering tasks. Please see [the scheduler documentation](https://backstage.io/docs/backend-system/core-services/scheduler) for more details about this API.
diff --git a/.changeset/dry-carpets-hope.md b/.changeset/dry-carpets-hope.md
new file mode 100644
index 0000000000..569e089a66
--- /dev/null
+++ b/.changeset/dry-carpets-hope.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-catalog-backend-module-backstage-openapi': patch
+---
+
+Do not swallow errors; instead allow them to bubble up to the task scheduler for better tracking and logging.
diff --git a/.changeset/dry-cars-build.md b/.changeset/dry-cars-build.md
deleted file mode 100644
index 60fd3ece49..0000000000
--- a/.changeset/dry-cars-build.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-kubernetes': patch
----
-
-Added New Frontend System filter for the Kubernetes tab to use `isKubernetesAvailable` to control its visibility
diff --git a/.changeset/dull-doodles-trade.md b/.changeset/dull-doodles-trade.md
new file mode 100644
index 0000000000..eb9399fcc7
--- /dev/null
+++ b/.changeset/dull-doodles-trade.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-kubernetes-backend': patch
+---
+
+Changed logging of cluster details to debug to minimise log clutter.
diff --git a/.changeset/early-feet-lay.md b/.changeset/early-feet-lay.md
deleted file mode 100644
index 71a557e5e5..0000000000
--- a/.changeset/early-feet-lay.md
+++ /dev/null
@@ -1,17 +0,0 @@
----
-'@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
-```
diff --git a/.changeset/eleven-ghosts-strive.md b/.changeset/eleven-ghosts-strive.md
new file mode 100644
index 0000000000..ac48c19524
--- /dev/null
+++ b/.changeset/eleven-ghosts-strive.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder': patch
+---
+
+Full support in EntityPicker (and derivatives) for default EntityPresentationApi
diff --git a/.changeset/every-ties-wink.md b/.changeset/every-ties-wink.md
deleted file mode 100644
index 31eff3fb9a..0000000000
--- a/.changeset/every-ties-wink.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/cli': patch
----
-
-Fixed an issue causing the `repo lint` command to fail when the `--max-warnings` option was used.
diff --git a/.changeset/famous-cities-stand.md b/.changeset/famous-cities-stand.md
new file mode 100644
index 0000000000..86ba727997
--- /dev/null
+++ b/.changeset/famous-cities-stand.md
@@ -0,0 +1,7 @@
+---
+'@backstage/plugin-auth-node': patch
+---
+
+Added the `identity` property to `BackstageSignInResult`.
+
+The `prepareBackstageIdentityResponse` function will now also forward the `identity` to the response if present in the provided sign-in result.
diff --git a/.changeset/famous-dragons-bake.md b/.changeset/famous-dragons-bake.md
deleted file mode 100644
index 17b156de06..0000000000
--- a/.changeset/famous-dragons-bake.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-backend-module-gitlab': patch
----
-
-add filter for repos by membership and topics
diff --git a/.changeset/famous-eggs-dance.md b/.changeset/famous-eggs-dance.md
deleted file mode 100644
index 8293746402..0000000000
--- a/.changeset/famous-eggs-dance.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/canon': patch
----
-
-Internal refactor and fixes to the prop extraction logic for layout components.
diff --git a/.changeset/fancy-frogs-like.md b/.changeset/fancy-frogs-like.md
new file mode 100644
index 0000000000..ed3a9fbf81
--- /dev/null
+++ b/.changeset/fancy-frogs-like.md
@@ -0,0 +1,5 @@
+---
+'@backstage/cli': patch
+---
+
+Internal code cleanup
diff --git a/.changeset/fruity-bags-flow.md b/.changeset/fruity-bags-flow.md
new file mode 100644
index 0000000000..bc6034a489
--- /dev/null
+++ b/.changeset/fruity-bags-flow.md
@@ -0,0 +1,23 @@
+---
+'@backstage/plugin-catalog-unprocessed-entities': patch
+'@backstage/frontend-test-utils': patch
+'@backstage/core-compat-api': patch
+'@backstage/plugin-app-visualizer': patch
+'@backstage/plugin-catalog-import': patch
+'@backstage/plugin-catalog-graph': patch
+'@backstage/plugin-notifications': patch
+'@backstage/plugin-user-settings': patch
+'@backstage/plugin-kubernetes': patch
+'@backstage/plugin-scaffolder': patch
+'@backstage/plugin-api-docs': patch
+'@backstage/plugin-devtools': patch
+'@backstage/plugin-techdocs': patch
+'@backstage/plugin-catalog': patch
+'@backstage/plugin-signals': patch
+'@backstage/plugin-search': patch
+'@backstage/plugin-home': patch
+'@backstage/plugin-app': patch
+'@backstage/plugin-org': patch
+---
+
+Internal update to use the new `pluginId` option of `createFrontendPlugin`.
diff --git a/.changeset/funny-hotels-cut.md b/.changeset/funny-hotels-cut.md
deleted file mode 100644
index 7972b68bbb..0000000000
--- a/.changeset/funny-hotels-cut.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend-module-sentry': patch
----
-
-Made "sentry:project:create" action idempotent
diff --git a/.changeset/funny-lizards-clean.md b/.changeset/funny-lizards-clean.md
deleted file mode 100644
index 7c85e28188..0000000000
--- a/.changeset/funny-lizards-clean.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/core-components': patch
----
-
-Fixed the messaging in the `AlertDisplay` where it was claiming that there were older messages available rather than newer.
diff --git a/.changeset/giant-donkeys-punch.md b/.changeset/giant-donkeys-punch.md
deleted file mode 100644
index 522055832a..0000000000
--- a/.changeset/giant-donkeys-punch.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend-module-azure': patch
----
-
-Made "publish:azure" action idempotent
diff --git a/.changeset/green-trainers-float.md b/.changeset/green-trainers-float.md
new file mode 100644
index 0000000000..537fe01736
--- /dev/null
+++ b/.changeset/green-trainers-float.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder': patch
+---
+
+Fix EntityPicker field to render description as markdown, matching other form components in the system.
diff --git a/.changeset/heavy-baths-rule.md b/.changeset/heavy-baths-rule.md
new file mode 100644
index 0000000000..09f26e8b57
--- /dev/null
+++ b/.changeset/heavy-baths-rule.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-catalog-backend-module-github': minor
+---
+
+**BREAKING** The `GithubLocationAnalyzer` now requires the `AuthService` and the `CatalogService` when being constructed and the `TokenManger` has been removed.
diff --git a/.changeset/honest-ties-worry.md b/.changeset/honest-ties-worry.md
deleted file mode 100644
index 74d8c591c1..0000000000
--- a/.changeset/honest-ties-worry.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-react': patch
----
-
-Scaffolding - Template card - button to show template entity detail
diff --git a/.changeset/huge-olives-do.md b/.changeset/huge-olives-do.md
new file mode 100644
index 0000000000..61eb37559f
--- /dev/null
+++ b/.changeset/huge-olives-do.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-events-backend-module-gitlab': patch
+---
+
+Adds support for `object_kind` field with priority over `event_name` on Gitlab webhook event types
diff --git a/.changeset/huge-toys-beam.md b/.changeset/huge-toys-beam.md
deleted file mode 100644
index e36cdcc7f0..0000000000
--- a/.changeset/huge-toys-beam.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-import': patch
----
-
-Expose the `UnpackNestedValue` type as it's been removed from `react-hook-form`
diff --git a/.changeset/icy-mugs-glow.md b/.changeset/icy-mugs-glow.md
new file mode 100644
index 0000000000..553daff24a
--- /dev/null
+++ b/.changeset/icy-mugs-glow.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-bitbucket-cloud-common': patch
+---
+
+Add support for `repo:updated` events as `Events.RepoUpdatedEvent`.
diff --git a/.changeset/itchy-times-behave.md b/.changeset/itchy-times-behave.md
deleted file mode 100644
index dc883487b0..0000000000
--- a/.changeset/itchy-times-behave.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend-module-bitbucket': patch
----
-
-Made "publish:bitbucket" action idempotent
diff --git a/.changeset/large-kings-protect.md b/.changeset/large-kings-protect.md
deleted file mode 100644
index 363e2b7759..0000000000
--- a/.changeset/large-kings-protect.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-backend-module-github': patch
----
-
-Added `validateLocationsExist` to the config definition where it was missing.
diff --git a/.changeset/large-lemons-clap.md b/.changeset/large-lemons-clap.md
new file mode 100644
index 0000000000..cf1a3eed5d
--- /dev/null
+++ b/.changeset/large-lemons-clap.md
@@ -0,0 +1,7 @@
+---
+'@backstage/backend-plugin-api': patch
+'@backstage/backend-defaults': patch
+'@backstage/integration': patch
+---
+
+update documentation
diff --git a/.changeset/lemon-shoes-enter.md b/.changeset/lemon-shoes-enter.md
deleted file mode 100644
index a950989d93..0000000000
--- a/.changeset/lemon-shoes-enter.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/canon': patch
----
-
-Add global CSS reset for anchor tags.
diff --git a/.changeset/light-cameras-fold.md b/.changeset/light-cameras-fold.md
deleted file mode 100644
index 8ec49c5d02..0000000000
--- a/.changeset/light-cameras-fold.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-notifications-backend-module-slack': minor
----
-
-Added a new Slack NotificationProcessor for use with the notifications plugin
diff --git a/.changeset/lovely-cats-take.md b/.changeset/lovely-cats-take.md
new file mode 100644
index 0000000000..ab1ee1c249
--- /dev/null
+++ b/.changeset/lovely-cats-take.md
@@ -0,0 +1,11 @@
+---
+'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch
+---
+
+Support Bitbucket Cloud's `repo:updated` events at `BitbucketCloudEntityProvider`.
+
+To make use of the new event type, you have to configure your webhook or add a new ones
+that delivers this event type to Backstage similar to `repo:push` before.
+
+Only `repo:updated` events that modify a repository's URL (e.g., due to a name change)
+will cause changes (removing the "old", adding the "new" repository).
diff --git a/.changeset/metal-animals-notice.md b/.changeset/metal-animals-notice.md
deleted file mode 100644
index c1a844ddb0..0000000000
--- a/.changeset/metal-animals-notice.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend-module-github': patch
----
-
-Made "github:autolinks:create" action idempotent
diff --git a/.changeset/moody-eagles-smile.md b/.changeset/moody-eagles-smile.md
deleted file mode 100644
index 3fd8a748ab..0000000000
--- a/.changeset/moody-eagles-smile.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-import': patch
----
-
-adding translation for `Register an existing component` text
diff --git a/.changeset/new-hands-scream.md b/.changeset/new-hands-scream.md
new file mode 100644
index 0000000000..03291648db
--- /dev/null
+++ b/.changeset/new-hands-scream.md
@@ -0,0 +1,7 @@
+---
+'@backstage/plugin-auth-backend': minor
+---
+
+**BREAKING**: Removed support for the old backend system, and removed all deprecated exports.
+
+If you were using one of the deprecated imports from this package, you will have to follow the instructions in their respective deprecation notices before upgrading. Most of the general utilities are available from `@backstage/plugin-auth-node`, and the specific auth providers are available from dedicated packages such as for example `@backstage/plugin-auth-backend-module-github-provider`. See [the auth docs](https://backstage.io/docs/auth/) for specific instructions.
diff --git a/.changeset/nice-vans-vanish.md b/.changeset/nice-vans-vanish.md
new file mode 100644
index 0000000000..c52fc42488
--- /dev/null
+++ b/.changeset/nice-vans-vanish.md
@@ -0,0 +1,5 @@
+---
+'@backstage/canon': minor
+---
+
+**Breaking Change** Icons on Button and IconButton now need to be imported and placed like this: } />
diff --git a/.changeset/nine-falcons-repeat.md b/.changeset/nine-falcons-repeat.md
deleted file mode 100644
index a67e925343..0000000000
--- a/.changeset/nine-falcons-repeat.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-'@backstage/plugin-catalog-backend-module-bitbucket-server': minor
-'@backstage/plugin-events-backend-module-bitbucket-server': minor
----
-
-Added the ability for the plugin to receive events coming from Bitbucket Server push webhooks. It then performs a delta mutation on the catalog.
diff --git a/.changeset/odd-bobcats-hang.md b/.changeset/odd-bobcats-hang.md
deleted file mode 100644
index 9b3aeccffc..0000000000
--- a/.changeset/odd-bobcats-hang.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend': patch
-'@backstage/plugin-scaffolder-node': patch
----
-
-Document the internal built-in filters, and ensure that the types are validated when using `createTemplateFilter` and `createTemplateGlobalFunction` from the `zod` schema.
diff --git a/.changeset/old-crews-serve.md b/.changeset/old-crews-serve.md
new file mode 100644
index 0000000000..db6bb4cf23
--- /dev/null
+++ b/.changeset/old-crews-serve.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-catalog-backend-module-incremental-ingestion': minor
+---
+
+**BREAKING** Removed support for the legacy backend, please [migrate to the new backend system](https://github.com/backstage/backstage/tree/v1.38.0/plugins/catalog-backend-module-incremental-ingestion#installation). Also, if you were importing from the `/alpha` export of this package, you should remove the `/alpha` part.
diff --git a/.changeset/open-ghosts-fix.md b/.changeset/open-ghosts-fix.md
new file mode 100644
index 0000000000..144f24dea0
--- /dev/null
+++ b/.changeset/open-ghosts-fix.md
@@ -0,0 +1,5 @@
+---
+'@backstage/canon': patch
+---
+
+Fixed an issue with Canon's DataTable.Pagination component showing the wrong number for the "to" count.
diff --git a/.changeset/orange-queens-grin.md b/.changeset/orange-queens-grin.md
deleted file mode 100644
index 66955655d7..0000000000
--- a/.changeset/orange-queens-grin.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend': minor
----
-
-add template-extensions scaffolder service endpoint
diff --git a/.changeset/pre.json b/.changeset/pre.json
index b443ec4505..718283006e 100644
--- a/.changeset/pre.json
+++ b/.changeset/pre.json
@@ -2,253 +2,233 @@
"mode": "pre",
"tag": "next",
"initialVersions": {
- "example-app": "0.2.107",
- "@backstage/app-defaults": "1.6.0",
- "example-app-next": "0.0.21",
- "app-next-example-plugin": "0.0.21",
- "example-backend": "0.0.36",
- "@backstage/backend-app-api": "1.2.1",
- "@backstage/backend-defaults": "0.8.2",
+ "example-app": "0.2.108",
+ "@backstage/app-defaults": "1.6.1",
+ "example-app-next": "0.0.22",
+ "app-next-example-plugin": "0.0.22",
+ "example-backend": "0.0.37",
+ "@backstage/backend-app-api": "1.2.2",
+ "@backstage/backend-defaults": "0.9.0",
"@backstage/backend-dev-utils": "0.1.5",
- "@backstage/backend-dynamic-feature-service": "0.6.1",
- "example-backend-legacy": "0.2.108",
- "@backstage/backend-openapi-utils": "0.5.1",
- "@backstage/backend-plugin-api": "1.2.1",
- "@backstage/backend-test-utils": "1.3.1",
- "@backstage/canon": "0.2.0",
+ "@backstage/backend-dynamic-feature-service": "0.6.2",
+ "@backstage/backend-openapi-utils": "0.5.2",
+ "@backstage/backend-plugin-api": "1.3.0",
+ "@backstage/backend-test-utils": "1.4.0",
+ "@backstage/canon": "0.3.0",
"@backstage/catalog-client": "1.9.1",
"@backstage/catalog-model": "1.7.3",
- "@backstage/cli": "0.31.0",
+ "@backstage/cli": "0.32.0",
"@backstage/cli-common": "0.1.15",
"@backstage/cli-node": "0.2.13",
"@backstage/codemods": "0.1.52",
"@backstage/config": "1.3.2",
"@backstage/config-loader": "1.10.0",
- "@backstage/core-app-api": "1.16.0",
- "@backstage/core-compat-api": "0.4.0",
- "@backstage/core-components": "0.17.0",
- "@backstage/core-plugin-api": "1.10.5",
- "@backstage/create-app": "0.6.0",
- "@backstage/dev-utils": "1.1.8",
- "e2e-test": "0.2.26",
+ "@backstage/core-app-api": "1.16.1",
+ "@backstage/core-compat-api": "0.4.1",
+ "@backstage/core-components": "0.17.1",
+ "@backstage/core-plugin-api": "1.10.6",
+ "@backstage/create-app": "0.6.1",
+ "@backstage/dev-utils": "1.1.9",
+ "e2e-test": "0.2.27",
"@backstage/e2e-test-utils": "0.1.1",
"@backstage/errors": "1.2.7",
"@backstage/eslint-plugin": "0.1.10",
- "@backstage/frontend-app-api": "0.11.0",
- "@backstage/frontend-defaults": "0.2.0",
- "@internal/frontend": "0.0.7",
- "@backstage/frontend-plugin-api": "0.10.0",
- "@backstage/frontend-test-utils": "0.3.0",
- "@backstage/integration": "1.16.2",
+ "@backstage/frontend-app-api": "0.11.1",
+ "@backstage/frontend-defaults": "0.2.1",
+ "@backstage/frontend-dynamic-feature-loader": "0.1.0",
+ "@internal/frontend": "0.0.8",
+ "@backstage/frontend-plugin-api": "0.10.1",
+ "@backstage/frontend-test-utils": "0.3.1",
+ "@backstage/integration": "1.16.3",
"@backstage/integration-aws-node": "0.1.15",
- "@backstage/integration-react": "1.2.5",
+ "@backstage/integration-react": "1.2.6",
"@internal/opaque": "0.0.1",
"@backstage/release-manifests": "0.0.12",
- "@backstage/repo-tools": "0.13.1",
- "@internal/scaffolder": "0.0.7",
- "@techdocs/cli": "1.9.1",
- "techdocs-cli-embedded-app": "0.2.106",
- "@backstage/test-utils": "1.7.6",
- "@backstage/theme": "0.6.4",
+ "@backstage/repo-tools": "0.13.2",
+ "@internal/scaffolder": "0.0.8",
+ "@techdocs/cli": "1.9.2",
+ "techdocs-cli-embedded-app": "0.2.107",
+ "@backstage/test-utils": "1.7.7",
+ "@backstage/theme": "0.6.5",
"@backstage/types": "1.2.1",
"@backstage/version-bridge": "1.0.11",
"yarn-plugin-backstage": "0.0.4",
- "@backstage/plugin-api-docs": "0.12.5",
- "@backstage/plugin-api-docs-module-protoc-gen-doc": "0.1.9",
- "@backstage/plugin-app": "0.1.7",
- "@backstage/plugin-app-backend": "0.5.0",
- "@backstage/plugin-app-node": "0.1.31",
- "@backstage/plugin-app-visualizer": "0.1.17",
- "@backstage/plugin-auth-backend": "0.24.4",
- "@backstage/plugin-auth-backend-module-atlassian-provider": "0.4.1",
- "@backstage/plugin-auth-backend-module-auth0-provider": "0.2.1",
- "@backstage/plugin-auth-backend-module-aws-alb-provider": "0.4.1",
- "@backstage/plugin-auth-backend-module-azure-easyauth-provider": "0.2.6",
- "@backstage/plugin-auth-backend-module-bitbucket-provider": "0.3.1",
- "@backstage/plugin-auth-backend-module-bitbucket-server-provider": "0.2.1",
- "@backstage/plugin-auth-backend-module-cloudflare-access-provider": "0.4.1",
- "@backstage/plugin-auth-backend-module-gcp-iap-provider": "0.4.1",
- "@backstage/plugin-auth-backend-module-github-provider": "0.3.1",
- "@backstage/plugin-auth-backend-module-gitlab-provider": "0.3.1",
- "@backstage/plugin-auth-backend-module-google-provider": "0.3.1",
- "@backstage/plugin-auth-backend-module-guest-provider": "0.2.6",
- "@backstage/plugin-auth-backend-module-microsoft-provider": "0.3.1",
- "@backstage/plugin-auth-backend-module-oauth2-provider": "0.4.1",
- "@backstage/plugin-auth-backend-module-oauth2-proxy-provider": "0.2.6",
- "@backstage/plugin-auth-backend-module-oidc-provider": "0.4.1",
- "@backstage/plugin-auth-backend-module-okta-provider": "0.2.1",
- "@backstage/plugin-auth-backend-module-onelogin-provider": "0.3.1",
- "@backstage/plugin-auth-backend-module-pinniped-provider": "0.3.1",
- "@backstage/plugin-auth-backend-module-vmware-cloud-provider": "0.5.1",
- "@backstage/plugin-auth-node": "0.6.1",
- "@backstage/plugin-auth-react": "0.1.13",
- "@backstage/plugin-bitbucket-cloud-common": "0.2.28",
- "@backstage/plugin-catalog": "1.28.0",
- "@backstage/plugin-catalog-backend": "1.32.0",
- "@backstage/plugin-catalog-backend-module-aws": "0.4.9",
- "@backstage/plugin-catalog-backend-module-azure": "0.3.3",
- "@backstage/plugin-catalog-backend-module-backstage-openapi": "0.5.0",
- "@backstage/plugin-catalog-backend-module-bitbucket-cloud": "0.4.6",
- "@backstage/plugin-catalog-backend-module-bitbucket-server": "0.3.3",
- "@backstage/plugin-catalog-backend-module-gcp": "0.3.6",
- "@backstage/plugin-catalog-backend-module-gerrit": "0.3.0",
- "@backstage/plugin-catalog-backend-module-github": "0.7.11",
- "@backstage/plugin-catalog-backend-module-github-org": "0.3.8",
- "@backstage/plugin-catalog-backend-module-gitlab": "0.6.4",
- "@backstage/plugin-catalog-backend-module-gitlab-org": "0.2.7",
- "@backstage/plugin-catalog-backend-module-incremental-ingestion": "0.6.4",
- "@backstage/plugin-catalog-backend-module-ldap": "0.11.3",
- "@backstage/plugin-catalog-backend-module-logs": "0.1.8",
- "@backstage/plugin-catalog-backend-module-msgraph": "0.6.8",
- "@backstage/plugin-catalog-backend-module-openapi": "0.2.8",
- "@backstage/plugin-catalog-backend-module-puppetdb": "0.2.8",
- "@backstage/plugin-catalog-backend-module-scaffolder-entity-model": "0.2.6",
- "@backstage/plugin-catalog-backend-module-unprocessed": "0.5.6",
+ "@backstage/plugin-api-docs": "0.12.6",
+ "@backstage/plugin-api-docs-module-protoc-gen-doc": "0.1.10",
+ "@backstage/plugin-app": "0.1.8",
+ "@backstage/plugin-app-backend": "0.5.1",
+ "@backstage/plugin-app-node": "0.1.32",
+ "@backstage/plugin-app-visualizer": "0.1.18",
+ "@backstage/plugin-auth-backend": "0.24.5",
+ "@backstage/plugin-auth-backend-module-atlassian-provider": "0.4.2",
+ "@backstage/plugin-auth-backend-module-auth0-provider": "0.2.2",
+ "@backstage/plugin-auth-backend-module-aws-alb-provider": "0.4.2",
+ "@backstage/plugin-auth-backend-module-azure-easyauth-provider": "0.2.7",
+ "@backstage/plugin-auth-backend-module-bitbucket-provider": "0.3.2",
+ "@backstage/plugin-auth-backend-module-bitbucket-server-provider": "0.2.2",
+ "@backstage/plugin-auth-backend-module-cloudflare-access-provider": "0.4.2",
+ "@backstage/plugin-auth-backend-module-gcp-iap-provider": "0.4.2",
+ "@backstage/plugin-auth-backend-module-github-provider": "0.3.2",
+ "@backstage/plugin-auth-backend-module-gitlab-provider": "0.3.2",
+ "@backstage/plugin-auth-backend-module-google-provider": "0.3.2",
+ "@backstage/plugin-auth-backend-module-guest-provider": "0.2.7",
+ "@backstage/plugin-auth-backend-module-microsoft-provider": "0.3.2",
+ "@backstage/plugin-auth-backend-module-oauth2-provider": "0.4.2",
+ "@backstage/plugin-auth-backend-module-oauth2-proxy-provider": "0.2.7",
+ "@backstage/plugin-auth-backend-module-oidc-provider": "0.4.2",
+ "@backstage/plugin-auth-backend-module-okta-provider": "0.2.2",
+ "@backstage/plugin-auth-backend-module-onelogin-provider": "0.3.2",
+ "@backstage/plugin-auth-backend-module-pinniped-provider": "0.3.2",
+ "@backstage/plugin-auth-backend-module-vmware-cloud-provider": "0.5.2",
+ "@backstage/plugin-auth-node": "0.6.2",
+ "@backstage/plugin-auth-react": "0.1.14",
+ "@backstage/plugin-bitbucket-cloud-common": "0.2.29",
+ "@backstage/plugin-catalog": "1.29.0",
+ "@backstage/plugin-catalog-backend": "1.32.1",
+ "@backstage/plugin-catalog-backend-module-aws": "0.4.10",
+ "@backstage/plugin-catalog-backend-module-azure": "0.3.4",
+ "@backstage/plugin-catalog-backend-module-backstage-openapi": "0.5.1",
+ "@backstage/plugin-catalog-backend-module-bitbucket-cloud": "0.4.7",
+ "@backstage/plugin-catalog-backend-module-bitbucket-server": "0.4.0",
+ "@backstage/plugin-catalog-backend-module-gcp": "0.3.7",
+ "@backstage/plugin-catalog-backend-module-gerrit": "0.3.1",
+ "@backstage/plugin-catalog-backend-module-github": "0.8.0",
+ "@backstage/plugin-catalog-backend-module-github-org": "0.3.9",
+ "@backstage/plugin-catalog-backend-module-gitlab": "0.6.5",
+ "@backstage/plugin-catalog-backend-module-gitlab-org": "0.2.8",
+ "@backstage/plugin-catalog-backend-module-incremental-ingestion": "0.6.5",
+ "@backstage/plugin-catalog-backend-module-ldap": "0.11.4",
+ "@backstage/plugin-catalog-backend-module-logs": "0.1.9",
+ "@backstage/plugin-catalog-backend-module-msgraph": "0.6.9",
+ "@backstage/plugin-catalog-backend-module-openapi": "0.2.9",
+ "@backstage/plugin-catalog-backend-module-puppetdb": "0.2.9",
+ "@backstage/plugin-catalog-backend-module-scaffolder-entity-model": "0.2.7",
+ "@backstage/plugin-catalog-backend-module-unprocessed": "0.5.7",
"@backstage/plugin-catalog-common": "1.1.3",
- "@backstage/plugin-catalog-graph": "0.4.17",
- "@backstage/plugin-catalog-import": "0.12.11",
- "@backstage/plugin-catalog-node": "1.16.1",
- "@backstage/plugin-catalog-react": "1.16.0",
- "@backstage/plugin-catalog-unprocessed-entities": "0.2.15",
+ "@backstage/plugin-catalog-graph": "0.4.18",
+ "@backstage/plugin-catalog-import": "0.12.13",
+ "@backstage/plugin-catalog-node": "1.16.3",
+ "@backstage/plugin-catalog-react": "1.17.0",
+ "@backstage/plugin-catalog-unprocessed-entities": "0.2.16",
"@backstage/plugin-catalog-unprocessed-entities-common": "0.0.7",
- "@backstage/plugin-config-schema": "0.1.66",
- "@backstage/plugin-devtools": "0.1.25",
- "@backstage/plugin-devtools-backend": "0.5.3",
+ "@backstage/plugin-config-schema": "0.1.67",
+ "@backstage/plugin-devtools": "0.1.26",
+ "@backstage/plugin-devtools-backend": "0.5.4",
"@backstage/plugin-devtools-common": "0.1.15",
- "@backstage/plugin-events-backend": "0.5.0",
- "@backstage/plugin-events-backend-module-aws-sqs": "0.4.9",
- "@backstage/plugin-events-backend-module-azure": "0.2.18",
- "@backstage/plugin-events-backend-module-bitbucket-cloud": "0.2.18",
- "@backstage/plugin-events-backend-module-gerrit": "0.2.18",
- "@backstage/plugin-events-backend-module-github": "0.2.18",
- "@backstage/plugin-events-backend-module-gitlab": "0.2.18",
- "@backstage/plugin-events-backend-test-utils": "0.1.42",
- "@backstage/plugin-events-node": "0.4.9",
- "@internal/plugin-todo-list": "1.0.37",
- "@internal/plugin-todo-list-backend": "1.0.37",
+ "@backstage/plugin-events-backend": "0.5.1",
+ "@backstage/plugin-events-backend-module-aws-sqs": "0.4.10",
+ "@backstage/plugin-events-backend-module-azure": "0.2.19",
+ "@backstage/plugin-events-backend-module-bitbucket-cloud": "0.2.19",
+ "@backstage/plugin-events-backend-module-bitbucket-server": "0.1.0",
+ "@backstage/plugin-events-backend-module-gerrit": "0.2.19",
+ "@backstage/plugin-events-backend-module-github": "0.3.0",
+ "@backstage/plugin-events-backend-module-gitlab": "0.3.0",
+ "@backstage/plugin-events-backend-test-utils": "0.1.43",
+ "@backstage/plugin-events-node": "0.4.10",
+ "@internal/plugin-todo-list": "1.0.38",
+ "@internal/plugin-todo-list-backend": "1.0.38",
"@internal/plugin-todo-list-common": "1.0.24",
- "@backstage/plugin-home": "0.8.6",
- "@backstage/plugin-home-react": "0.1.24",
- "@backstage/plugin-kubernetes": "0.12.5",
- "@backstage/plugin-kubernetes-backend": "0.19.4",
- "@backstage/plugin-kubernetes-cluster": "0.0.23",
+ "@backstage/plugin-gateway-backend": "1.0.0",
+ "@backstage/plugin-home": "0.8.7",
+ "@backstage/plugin-home-react": "0.1.25",
+ "@backstage/plugin-kubernetes": "0.12.6",
+ "@backstage/plugin-kubernetes-backend": "0.19.5",
+ "@backstage/plugin-kubernetes-cluster": "0.0.24",
"@backstage/plugin-kubernetes-common": "0.9.4",
- "@backstage/plugin-kubernetes-node": "0.2.4",
- "@backstage/plugin-kubernetes-react": "0.5.5",
- "@backstage/plugin-notifications": "0.5.3",
- "@backstage/plugin-notifications-backend": "0.5.4",
- "@backstage/plugin-notifications-backend-module-email": "0.3.7",
+ "@backstage/plugin-kubernetes-node": "0.2.5",
+ "@backstage/plugin-kubernetes-react": "0.5.6",
+ "@backstage/plugin-notifications": "0.5.4",
+ "@backstage/plugin-notifications-backend": "0.5.5",
+ "@backstage/plugin-notifications-backend-module-email": "0.3.8",
+ "@backstage/plugin-notifications-backend-module-slack": "0.1.0",
"@backstage/plugin-notifications-common": "0.0.8",
- "@backstage/plugin-notifications-node": "0.2.13",
- "@backstage/plugin-org": "0.6.37",
- "@backstage/plugin-org-react": "0.1.36",
- "@backstage/plugin-permission-backend": "0.5.55",
- "@backstage/plugin-permission-backend-module-allow-all-policy": "0.2.6",
+ "@backstage/plugin-notifications-node": "0.2.14",
+ "@backstage/plugin-org": "0.6.38",
+ "@backstage/plugin-org-react": "0.1.37",
+ "@backstage/plugin-permission-backend": "0.6.0",
+ "@backstage/plugin-permission-backend-module-allow-all-policy": "0.2.7",
"@backstage/plugin-permission-common": "0.8.4",
- "@backstage/plugin-permission-node": "0.9.0",
- "@backstage/plugin-permission-react": "0.4.32",
- "@backstage/plugin-proxy-backend": "0.6.0",
- "@backstage/plugin-proxy-node": "0.1.2",
- "@backstage/plugin-scaffolder": "1.29.0",
- "@backstage/plugin-scaffolder-backend": "1.31.0",
- "@backstage/plugin-scaffolder-backend-module-azure": "0.2.7",
- "@backstage/plugin-scaffolder-backend-module-bitbucket": "0.3.8",
- "@backstage/plugin-scaffolder-backend-module-bitbucket-cloud": "0.2.7",
- "@backstage/plugin-scaffolder-backend-module-bitbucket-server": "0.2.7",
- "@backstage/plugin-scaffolder-backend-module-confluence-to-markdown": "0.3.7",
- "@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.3.8",
- "@backstage/plugin-scaffolder-backend-module-gcp": "0.2.7",
- "@backstage/plugin-scaffolder-backend-module-gerrit": "0.2.7",
- "@backstage/plugin-scaffolder-backend-module-gitea": "0.2.7",
- "@backstage/plugin-scaffolder-backend-module-github": "0.6.1",
- "@backstage/plugin-scaffolder-backend-module-gitlab": "0.8.1",
- "@backstage/plugin-scaffolder-backend-module-notifications": "0.1.8",
- "@backstage/plugin-scaffolder-backend-module-rails": "0.5.7",
- "@backstage/plugin-scaffolder-backend-module-sentry": "0.2.7",
- "@backstage/plugin-scaffolder-backend-module-yeoman": "0.4.8",
+ "@backstage/plugin-permission-node": "0.9.1",
+ "@backstage/plugin-permission-react": "0.4.33",
+ "@backstage/plugin-proxy-backend": "0.6.1",
+ "@backstage/plugin-proxy-node": "0.1.3",
+ "@backstage/plugin-scaffolder": "1.30.0",
+ "@backstage/plugin-scaffolder-backend": "1.32.0",
+ "@backstage/plugin-scaffolder-backend-module-azure": "0.2.8",
+ "@backstage/plugin-scaffolder-backend-module-bitbucket": "0.3.9",
+ "@backstage/plugin-scaffolder-backend-module-bitbucket-cloud": "0.2.8",
+ "@backstage/plugin-scaffolder-backend-module-bitbucket-server": "0.2.8",
+ "@backstage/plugin-scaffolder-backend-module-confluence-to-markdown": "0.3.8",
+ "@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.3.9",
+ "@backstage/plugin-scaffolder-backend-module-gcp": "0.2.8",
+ "@backstage/plugin-scaffolder-backend-module-gerrit": "0.2.8",
+ "@backstage/plugin-scaffolder-backend-module-gitea": "0.2.8",
+ "@backstage/plugin-scaffolder-backend-module-github": "0.7.0",
+ "@backstage/plugin-scaffolder-backend-module-gitlab": "0.9.0",
+ "@backstage/plugin-scaffolder-backend-module-notifications": "0.1.9",
+ "@backstage/plugin-scaffolder-backend-module-rails": "0.5.8",
+ "@backstage/plugin-scaffolder-backend-module-sentry": "0.2.8",
+ "@backstage/plugin-scaffolder-backend-module-yeoman": "0.4.9",
"@backstage/plugin-scaffolder-common": "1.5.10",
- "@backstage/plugin-scaffolder-node": "0.8.0",
- "@backstage/plugin-scaffolder-node-test-utils": "0.2.0",
- "@backstage/plugin-scaffolder-react": "1.14.6",
- "@backstage/plugin-search": "1.4.24",
- "@backstage/plugin-search-backend": "2.0.0",
- "@backstage/plugin-search-backend-module-catalog": "0.3.2",
- "@backstage/plugin-search-backend-module-elasticsearch": "1.7.0",
- "@backstage/plugin-search-backend-module-explore": "0.3.0",
- "@backstage/plugin-search-backend-module-pg": "0.5.42",
- "@backstage/plugin-search-backend-module-stack-overflow-collator": "0.3.7",
- "@backstage/plugin-search-backend-module-techdocs": "0.4.0",
- "@backstage/plugin-search-backend-node": "1.3.9",
+ "@backstage/plugin-scaffolder-node": "0.8.1",
+ "@backstage/plugin-scaffolder-node-test-utils": "0.2.1",
+ "@backstage/plugin-scaffolder-react": "1.15.0",
+ "@backstage/plugin-search": "1.4.25",
+ "@backstage/plugin-search-backend": "2.0.1",
+ "@backstage/plugin-search-backend-module-catalog": "0.3.3",
+ "@backstage/plugin-search-backend-module-elasticsearch": "1.7.1",
+ "@backstage/plugin-search-backend-module-explore": "0.3.1",
+ "@backstage/plugin-search-backend-module-pg": "0.5.43",
+ "@backstage/plugin-search-backend-module-stack-overflow-collator": "0.3.8",
+ "@backstage/plugin-search-backend-module-techdocs": "0.4.1",
+ "@backstage/plugin-search-backend-node": "1.3.10",
"@backstage/plugin-search-common": "1.2.17",
- "@backstage/plugin-search-react": "1.8.7",
- "@backstage/plugin-signals": "0.0.17",
- "@backstage/plugin-signals-backend": "0.3.2",
- "@backstage/plugin-signals-node": "0.1.18",
- "@backstage/plugin-signals-react": "0.0.11",
- "@backstage/plugin-techdocs": "1.12.4",
- "@backstage/plugin-techdocs-addons-test-utils": "1.0.46",
- "@backstage/plugin-techdocs-backend": "2.0.0",
+ "@backstage/plugin-search-react": "1.8.8",
+ "@backstage/plugin-signals": "0.0.18",
+ "@backstage/plugin-signals-backend": "0.3.3",
+ "@backstage/plugin-signals-node": "0.1.19",
+ "@backstage/plugin-signals-react": "0.0.12",
+ "@backstage/plugin-techdocs": "1.12.5",
+ "@backstage/plugin-techdocs-addons-test-utils": "1.0.47",
+ "@backstage/plugin-techdocs-backend": "2.0.1",
"@backstage/plugin-techdocs-common": "0.1.0",
- "@backstage/plugin-techdocs-module-addons-contrib": "1.1.22",
- "@backstage/plugin-techdocs-node": "1.13.1",
- "@backstage/plugin-techdocs-react": "1.2.15",
- "@backstage/plugin-user-settings": "0.8.20",
- "@backstage/plugin-user-settings-backend": "0.3.0",
+ "@backstage/plugin-techdocs-module-addons-contrib": "1.1.23",
+ "@backstage/plugin-techdocs-node": "1.13.2",
+ "@backstage/plugin-techdocs-react": "1.2.16",
+ "@backstage/plugin-user-settings": "0.8.21",
+ "@backstage/plugin-user-settings-backend": "0.3.1",
"@backstage/plugin-user-settings-common": "0.0.1",
- "@backstage/plugin-events-backend-module-bitbucket-server": "0.0.0",
- "@backstage/plugin-notifications-backend-module-slack": "0.0.0"
+ "@backstage/plugin-events-backend-module-google-pubsub": "0.0.0"
},
"changesets": [
- "chatty-days-wonder",
- "chilly-sheep-scream",
- "clear-pigs-share",
- "clever-tomatoes-jump",
- "common-parrots-wink",
- "crazy-hands-film",
- "create-app-1742907012",
- "create-app-1743513781",
- "cuddly-dodos-allow",
- "cuddly-kids-sell",
- "cuddly-mirrors-ask",
- "deep-flies-vanish",
- "dry-cars-build",
- "early-feet-lay",
- "every-ties-wink",
- "famous-dragons-bake",
- "famous-eggs-dance",
- "funny-hotels-cut",
- "funny-lizards-clean",
- "giant-donkeys-punch",
- "honest-ties-worry",
- "huge-toys-beam",
- "itchy-times-behave",
- "large-kings-protect",
- "lemon-shoes-enter",
- "light-cameras-fold",
- "metal-animals-notice",
- "moody-eagles-smile",
- "nine-falcons-repeat",
- "odd-bobcats-hang",
- "orange-queens-grin",
- "quick-carrots-open",
- "rotten-bobcats-notice",
- "sad-pots-try",
- "serious-guests-tan",
- "silver-rocks-invite",
- "spotty-towns-show",
- "stale-tables-stick",
- "strange-planes-kneel",
- "sweet-maps-invent",
- "swift-boats-add",
- "tame-sloths-brake",
- "tame-worms-do",
- "thin-snails-judge",
- "tiny-swans-warn",
- "twenty-forks-cheat",
- "twenty-walls-join",
- "unlucky-carrots-shave",
- "wet-penguins-beg",
- "wide-planets-camp",
- "witty-planets-sing"
+ "breezy-hotels-deny",
+ "bright-moles-sort",
+ "bumpy-showers-design",
+ "calm-toys-occur",
+ "chubby-needles-vanish",
+ "cold-humans-check",
+ "common-goats-raise",
+ "create-app-1745325336",
+ "cruel-lights-sip",
+ "cyan-pots-appear",
+ "eleven-ghosts-strive",
+ "green-trainers-float",
+ "heavy-baths-rule",
+ "huge-olives-do",
+ "icy-mugs-glow",
+ "lovely-cats-take",
+ "new-hands-scream",
+ "old-crews-serve",
+ "pretty-corners-speak",
+ "renovate-68baea0",
+ "renovate-e32145b",
+ "sharp-numbers-doubt",
+ "shiny-symbols-grow",
+ "silent-clubs-roll",
+ "small-eggs-develop",
+ "spicy-steaks-swim",
+ "warm-llamas-return",
+ "wise-pillows-smile",
+ "yellow-cows-tickle"
]
}
diff --git a/.changeset/pretty-corners-speak.md b/.changeset/pretty-corners-speak.md
new file mode 100644
index 0000000000..8e24d212fe
--- /dev/null
+++ b/.changeset/pretty-corners-speak.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-test-utils': minor
+---
+
+Add a functional `mockServices.events()`
diff --git a/.changeset/real-sheep-chew.md b/.changeset/real-sheep-chew.md
new file mode 100644
index 0000000000..9ae5b5ae9e
--- /dev/null
+++ b/.changeset/real-sheep-chew.md
@@ -0,0 +1,5 @@
+---
+'@backstage/core-components': patch
+---
+
+Fix the hidden sidebar's sub-menu when the sidebar is scrollable
diff --git a/.changeset/renovate-68baea0.md b/.changeset/renovate-68baea0.md
new file mode 100644
index 0000000000..6370fc8834
--- /dev/null
+++ b/.changeset/renovate-68baea0.md
@@ -0,0 +1,5 @@
+---
+'@backstage/cli': patch
+---
+
+Updated dependency `react-refresh` to `^0.17.0`.
diff --git a/.changeset/renovate-e32145b.md b/.changeset/renovate-e32145b.md
new file mode 100644
index 0000000000..e1fdbcf02d
--- /dev/null
+++ b/.changeset/renovate-e32145b.md
@@ -0,0 +1,5 @@
+---
+'@backstage/core-compat-api': patch
+---
+
+Updated dependency `@backstage-community/plugin-puppetdb` to `^0.6.0`.
diff --git a/.changeset/renovate-ee17247.md b/.changeset/renovate-ee17247.md
new file mode 100644
index 0000000000..a97a63d138
--- /dev/null
+++ b/.changeset/renovate-ee17247.md
@@ -0,0 +1,9 @@
+---
+'@backstage/plugin-kubernetes-backend': patch
+'@backstage/plugin-kubernetes-common': patch
+'@backstage/plugin-kubernetes-node': patch
+'@backstage/plugin-kubernetes-react': patch
+'@backstage/plugin-kubernetes': patch
+---
+
+Updated dependency `@kubernetes/client-node` to `1.1.2`.
diff --git a/.changeset/rotten-bobcats-notice.md b/.changeset/rotten-bobcats-notice.md
deleted file mode 100644
index 0f6d1c74f9..0000000000
--- a/.changeset/rotten-bobcats-notice.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-notifications-backend': patch
----
-
-Allow throttling notification sending not to block the system with huge amount of receiving users
diff --git a/.changeset/sad-pots-try.md b/.changeset/sad-pots-try.md
deleted file mode 100644
index 68c442fc6e..0000000000
--- a/.changeset/sad-pots-try.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-react': patch
----
-
-Add `operation` to alpha `defaultEntityContentGroups`.
diff --git a/.changeset/serious-guests-tan.md b/.changeset/serious-guests-tan.md
deleted file mode 100644
index c051dca464..0000000000
--- a/.changeset/serious-guests-tan.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/integration-react': patch
----
-
-Added scope `project` for Bitbucket Cloud.
diff --git a/.changeset/shaggy-stingrays-check.md b/.changeset/shaggy-stingrays-check.md
new file mode 100644
index 0000000000..74e0013224
--- /dev/null
+++ b/.changeset/shaggy-stingrays-check.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-org': patch
+---
+
+Fixed missing spec.profile field on MyGroupsSidebarItem.tsx so the group spec.profile.displayName is shown on the sidebar"
diff --git a/.changeset/sharp-numbers-doubt.md b/.changeset/sharp-numbers-doubt.md
new file mode 100644
index 0000000000..81e1313780
--- /dev/null
+++ b/.changeset/sharp-numbers-doubt.md
@@ -0,0 +1,26 @@
+---
+'@backstage/plugin-catalog-react': minor
+---
+
+Added EntityOrderFilter to sort entities by different fields/columns. This new filter allows users to specify the order in which entities are displayed in the catalog.
+
+Example usage:
+
+```ts
+import {
+ EntityOrderFilter,
+ useEntityList,
+} from '@backstage/plugin-catalog-react';
+// ...
+const { updateFilters } = useEntityList();
+
+// ...
+updateFilters({
+ order: new EntityOrderFilter([
+ {
+ field: 'metadata.name',
+ order: 'desc',
+ },
+ ]),
+});
+```
diff --git a/.changeset/shiny-symbols-grow.md b/.changeset/shiny-symbols-grow.md
new file mode 100644
index 0000000000..18dd3b8b1f
--- /dev/null
+++ b/.changeset/shiny-symbols-grow.md
@@ -0,0 +1,7 @@
+---
+'@backstage/plugin-scaffolder-backend': patch
+'@backstage/plugin-scaffolder-react': patch
+'@backstage/plugin-scaffolder': patch
+---
+
+Fixing a bug where the name for `templatingExtensions` was incorrectly set to `templateExtensions`
diff --git a/.changeset/silent-clubs-roll.md b/.changeset/silent-clubs-roll.md
new file mode 100644
index 0000000000..c80f884331
--- /dev/null
+++ b/.changeset/silent-clubs-roll.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-permission-backend': minor
+---
+
+**BREAKING** Removed support for the legacy backend system, please [migrate to the new backend system](https://backstage.io/docs/backend-system/building-backends/migrating)
diff --git a/.changeset/silver-rocks-invite.md b/.changeset/silver-rocks-invite.md
deleted file mode 100644
index 3a08bc72af..0000000000
--- a/.changeset/silver-rocks-invite.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend-module-bitbucket-cloud': patch
----
-
-Made "publish:bitbucketCloud" action idempotent
diff --git a/.changeset/slick-brooms-start.md b/.changeset/slick-brooms-start.md
new file mode 100644
index 0000000000..dec874a867
--- /dev/null
+++ b/.changeset/slick-brooms-start.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-events-backend-module-github': patch
+---
+
+Correct README installation instructions.
diff --git a/.changeset/slimy-peas-post.md b/.changeset/slimy-peas-post.md
new file mode 100644
index 0000000000..6a0a80e323
--- /dev/null
+++ b/.changeset/slimy-peas-post.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-plugin-api': patch
+---
+
+Minor doc comment update
diff --git a/.changeset/strange-planes-kneel.md b/.changeset/small-eggs-develop.md
similarity index 56%
rename from .changeset/strange-planes-kneel.md
rename to .changeset/small-eggs-develop.md
index 8e57057aee..618b877fa7 100644
--- a/.changeset/strange-planes-kneel.md
+++ b/.changeset/small-eggs-develop.md
@@ -3,4 +3,4 @@
'@backstage/plugin-scaffolder': minor
---
-add api to retrieve template extensions info from scaffolder-backend
+add templating extensions page
diff --git a/.changeset/spicy-steaks-swim.md b/.changeset/spicy-steaks-swim.md
new file mode 100644
index 0000000000..b2323c9b34
--- /dev/null
+++ b/.changeset/spicy-steaks-swim.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder-backend-module-github': patch
+---
+
+Added optional assignees parameter to `publish:github:pull-request` action
diff --git a/.changeset/spotty-doors-design.md b/.changeset/spotty-doors-design.md
new file mode 100644
index 0000000000..22ee61c9b0
--- /dev/null
+++ b/.changeset/spotty-doors-design.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-notifications-backend-module-slack': patch
+---
+
+Added email-based Slack User ID lookup if `metadata.annotations.slack.com/bot-notify` is missing from user entity
diff --git a/.changeset/spotty-towns-show.md b/.changeset/spotty-towns-show.md
deleted file mode 100644
index 8ec69f3f5e..0000000000
--- a/.changeset/spotty-towns-show.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend-module-github': patch
----
-
-Made "github:branch-protection:create" action idempotent
diff --git a/.changeset/stale-chairs-look.md b/.changeset/stale-chairs-look.md
deleted file mode 100644
index 75a277901a..0000000000
--- a/.changeset/stale-chairs-look.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-techdocs-node': patch
----
-
-Update Azure file retrieval logic from storing file in buffer array to piping to res for better memory efficiency.
diff --git a/.changeset/stale-tables-stick.md b/.changeset/stale-tables-stick.md
deleted file mode 100644
index bea1c3361b..0000000000
--- a/.changeset/stale-tables-stick.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/integration': patch
----
-
-Mark GitHub `webhookSecret` config property as optional. A `webhookSecret` is not required when creating a GitHub App.
diff --git a/.changeset/sweet-maps-invent.md b/.changeset/sweet-maps-invent.md
deleted file mode 100644
index 390ce57dc7..0000000000
--- a/.changeset/sweet-maps-invent.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-unprocessed-entities': patch
----
-
-Fixed the `convertTimeToLocalTimezone` function in the FailedEntities component to correctly parse ISO 8601 date strings and set the timezone to the current local timezone.
diff --git a/.changeset/tame-sloths-brake.md b/.changeset/tame-sloths-brake.md
deleted file mode 100644
index eae1321175..0000000000
--- a/.changeset/tame-sloths-brake.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend-module-notifications': patch
----
-
-Made "notification:send" action idempotent
diff --git a/.changeset/tame-worms-do.md b/.changeset/tame-worms-do.md
deleted file mode 100644
index 21872b9106..0000000000
--- a/.changeset/tame-worms-do.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch
----
-
-Fixed bug in event-based discovery that caused unnecessary API calls to Bitbucket Cloud
diff --git a/.changeset/ten-tables-build.md b/.changeset/ten-tables-build.md
new file mode 100644
index 0000000000..9ddae808fa
--- /dev/null
+++ b/.changeset/ten-tables-build.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-auth-backend': patch
+---
+
+The `static` key store now issues tokens with the same structure as other key stores. Tokens now include the `typ` field in the header and the `uip` (user identity proof) in the payload.
diff --git a/.changeset/thin-snails-judge.md b/.changeset/thin-snails-judge.md
deleted file mode 100644
index c2328ed64f..0000000000
--- a/.changeset/thin-snails-judge.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/cli': patch
----
-
-Resolved a problem where the `start` command did not correctly handle multiple `--require` flags, ensuring all specified modules are now properly loaded.
diff --git a/.changeset/tiny-swans-warn.md b/.changeset/tiny-swans-warn.md
deleted file mode 100644
index 45c6435a5d..0000000000
--- a/.changeset/tiny-swans-warn.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-home-react': patch
----
-
-Fixes auto-hiding of content divider when title not specified
diff --git a/.changeset/twenty-forks-cheat.md b/.changeset/twenty-forks-cheat.md
deleted file mode 100644
index c0a7f03ee8..0000000000
--- a/.changeset/twenty-forks-cheat.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-react': patch
----
-
-Fix offset pagination to reset when updating filters in `useEntityList`
diff --git a/.changeset/twenty-kiwis-punch.md b/.changeset/twenty-kiwis-punch.md
new file mode 100644
index 0000000000..6c54760247
--- /dev/null
+++ b/.changeset/twenty-kiwis-punch.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-defaults': patch
+---
+
+Bug fix: Pass user provided token through to gitlab url resolvers
diff --git a/.changeset/twenty-walls-join.md b/.changeset/twenty-walls-join.md
deleted file mode 100644
index 2282e28775..0000000000
--- a/.changeset/twenty-walls-join.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-scaffolder-backend-module-github': patch
----
-
-Made "github:actions:dispatch" action idempotent
diff --git a/.changeset/unlucky-carrots-shave.md b/.changeset/unlucky-carrots-shave.md
deleted file mode 100644
index e0b4c0128b..0000000000
--- a/.changeset/unlucky-carrots-shave.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-techdocs-module-addons-contrib': patch
----
-
-Fixed rendering issues in `ReportIssue` addon for unsupported repository types and improved shadow DOM event handling. The addon now properly prevents initialization when encountering unsupported repository types and correctly handles selection events within the shadow DOM.
diff --git a/.changeset/warm-llamas-return.md b/.changeset/warm-llamas-return.md
new file mode 100644
index 0000000000..743ad0a5bb
--- /dev/null
+++ b/.changeset/warm-llamas-return.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-events-backend-module-google-pubsub': minor
+---
+
+Added a module that is able to transfer messages from Google Pub/Sub subscriptions into the Backstage events system.
diff --git a/.changeset/wet-penguins-beg.md b/.changeset/wet-penguins-beg.md
deleted file mode 100644
index c4248f86f8..0000000000
--- a/.changeset/wet-penguins-beg.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/cli': minor
----
-
-Internal update to move the `clean`, `pre/postpack` and `fix` commands into their own separate module.
diff --git a/.changeset/wide-planets-camp.md b/.changeset/wide-planets-camp.md
deleted file mode 100644
index c36ed69dff..0000000000
--- a/.changeset/wide-planets-camp.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/plugin-catalog-backend-module-incremental-ingestion': patch
----
-
-fixed misleading example location annotations in docs
diff --git a/.changeset/wise-pillows-smile.md b/.changeset/wise-pillows-smile.md
new file mode 100644
index 0000000000..febdeab2c4
--- /dev/null
+++ b/.changeset/wise-pillows-smile.md
@@ -0,0 +1,5 @@
+---
+'yarn-plugin-backstage': patch
+---
+
+Add both `npm:` and `backstage:` ranges to the lockfile to ensure compatibility with tools that parse the lockfile and ensure dependencies stay locked when building dist workspaces.
diff --git a/.changeset/witty-planets-sing.md b/.changeset/witty-planets-sing.md
deleted file mode 100644
index 4c58393d0e..0000000000
--- a/.changeset/witty-planets-sing.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@backstage/canon': patch
----
-
-Fix the Icon component when the name is not found to return null instead of an empty SVG.
diff --git a/.changeset/yellow-cows-tickle.md b/.changeset/yellow-cows-tickle.md
new file mode 100644
index 0000000000..026c7444f0
--- /dev/null
+++ b/.changeset/yellow-cows-tickle.md
@@ -0,0 +1,7 @@
+---
+'@backstage/catalog-client': minor
+'@backstage/plugin-catalog-react': minor
+'@backstage/plugin-catalog-node': minor
+---
+
+Add `getLocations` method to `CatalogApi` and `CatalogClient`. This method calls the [`GET /locations`](https://backstage.io/docs/features/software-catalog/software-catalog-api/#get-locations) endpoint from the catalog backend.
diff --git a/.eslintrc.js b/.eslintrc.js
index eb2a07b3b0..409b820783 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -20,6 +20,7 @@ module.exports = {
root: true,
plugins: ['@spotify', 'notice', 'react', 'testing-library'],
rules: {
+ 'react/react-in-jsx-scope': 'off',
'notice/notice': [
'error',
{
@@ -47,6 +48,17 @@ module.exports = {
selector:
"CallExpression[arguments.length=0] > MemberExpression[property.name='toUpperCase']",
},
+ {
+ message: "React default imports are deprecated. Follow the x migration guide for details.",
+ selector:
+ "ImportDeclaration[source.value='react'][specifiers.0.type='ImportDefaultSpecifier']",
+ },
+ {
+ message:
+ "React default imports are deprecated. Follow the x migration guide for details. If you need a global type that collides with a React named export (such as `MouseEvent`), try using `globalThis.MouseHandler`.",
+ selector:
+ "ImportDeclaration[source.value='react'] :matches(ImportDefaultSpecifier, ImportNamespaceSpecifier)",
+ },
],
'testing-library/await-async-queries': 'error',
'testing-library/await-async-utils': 'error',
diff --git a/.github/ISSUE_TEMPLATE/.common.yaml b/.github/ISSUE_TEMPLATE/.common.yaml
new file mode 100644
index 0000000000..c870b21b94
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/.common.yaml
@@ -0,0 +1,93 @@
+# This file contains common fields for all issue templates
+# Each field is identified by its ID, and are synced with the `sync.js` script
+#
+# WARNING: After updating this file, run `yarn sync-issue-templates`
+#
+
+body:
+ - id: issue-labels
+ type: checkboxes
+ attributes:
+ label: '📜 Issue Labels'
+ options:
+ - label: 'Please familiarize yourself with the issue labels used in this project: [LABELS.md](https://github.com/backstage/backstage/blob/master/LABELS.md)'
+ required: true
+ - id: search-terms
+ type: textarea
+ attributes:
+ label: '🔎 Search Terms'
+ render: plain
+ description: |
+ What search terms did you use when trying to find similar issues?
+ placeholder: |
+ List of keywords you searched for before creating this issue. Write them down here so that others can find this issue more easily and help provide feedback.
+
+ e.g. "catalog github rate limited", "http root service configurer", "scaffolder template include", "entity card title"
+ validations:
+ required: true
+ - id: project-area
+ type: dropdown
+ attributes:
+ label: '🗃️ Project Area'
+ description: Which project area is this issue most closely related to? This will help find an owner for the issue faster.
+ options:
+ - Unknown
+ - Auditor
+ - Auth
+ - Catalog
+ - CLI Tooling
+ - Core Framework
+ - Design System
+ - Documentation
+ - Events System
+ - Home
+ - Kubernetes Plugin
+ - Microsite
+ - Notifications
+ - OpenAPI Tooling
+ - Permission Framework
+ - Search
+ - Software Templates
+ - TechDocs
+ validations:
+ required: true
+ - type: dropdown
+ id: integration
+ attributes:
+ label: '🔗 External Integration'
+ description: Is this issue related to an integration with any particular external system?
+ options:
+ - N/A
+ - AWS
+ - Azure
+ - Azure DevOps
+ - Bitbucket Cloud
+ - Bitbucket Server
+ - GCP
+ - Gerrit
+ - Gitea
+ - GitHub
+ - GitLab
+ - Other
+ validations:
+ required: true
+ - id: read-code-of-conduct
+ type: checkboxes
+ attributes:
+ label: 'Have you read the Code of Conduct?'
+ options:
+ - label: 'I have read the [Code of Conduct](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
+ required: true
+ - id: willing-to-submit-pr
+ type: dropdown
+ attributes:
+ label: Are you willing to submit a PR?
+ description: This is absolutely not required, but we are happy to guide you in the contribution process.
+ options:
+ - Undecided
+ - Yes, and I have enough information to get started
+ - Yes, but I would like some more guidance
+ - No, but I'm happy to collaborate on a PR with someone else
+ - No, I don't have time to work on this right now
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE/01_bug.yaml b/.github/ISSUE_TEMPLATE/01_bug.yaml
new file mode 100644
index 0000000000..ccaebe8bff
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/01_bug.yaml
@@ -0,0 +1,162 @@
+name: '🪲 Report a bug'
+description: 'Report a bug that you have encountered'
+labels:
+ - type:bug
+ - needs:triage
+body:
+ - type: markdown
+ attributes:
+ value: |
+ Please fill in each section completely, and [search in GitHub](https://github.com/backstage/backstage/search?type=Issues)
+ before reporting a new bug to avoid duplicates. Thank you!
+ # This field is managed by .common.yaml
+ - id: issue-labels
+ type: checkboxes
+ attributes:
+ label: '📜 Issue Labels'
+ options:
+ - label: 'Please familiarize yourself with the issue labels used in this project: [LABELS.md](https://github.com/backstage/backstage/blob/master/LABELS.md)'
+ required: true
+ # This field is managed by .common.yaml
+ - id: search-terms
+ type: textarea
+ attributes:
+ label: '🔎 Search Terms'
+ render: plain
+ description: |
+ What search terms did you use when trying to find similar issues?
+ placeholder: |
+ List of keywords you searched for before creating this issue. Write them down here so that others can find this issue more easily and help provide feedback.
+
+ e.g. "catalog github rate limited", "http root service configurer", "scaffolder template include", "entity card title"
+ validations:
+ required: true
+ - type: markdown
+ attributes:
+ value: '
' # empty space
+ - type: markdown
+ attributes:
+ value: |
+ ## Defining the bug
+
+ Defining the bug accurately will help ensure that it is identified and fixed correctly.
+ # This field is managed by .common.yaml
+ - id: project-area
+ type: dropdown
+ attributes:
+ label: '🗃️ Project Area'
+ description: Which project area is this issue most closely related to? This will help find an owner for the issue faster.
+ options:
+ - Unknown
+ - Auditor
+ - Auth
+ - Catalog
+ - CLI Tooling
+ - Core Framework
+ - Design System
+ - Documentation
+ - Events System
+ - Home
+ - Kubernetes Plugin
+ - Microsite
+ - Notifications
+ - OpenAPI Tooling
+ - Permission Framework
+ - Search
+ - Software Templates
+ - TechDocs
+ validations:
+ required: true
+ # This field is managed by .common.yaml
+ - type: dropdown
+ id: integration
+ attributes:
+ label: '🔗 External Integration'
+ description: Is this issue related to an integration with any particular external system?
+ options:
+ - N/A
+ - AWS
+ - Azure
+ - Azure DevOps
+ - Bitbucket Cloud
+ - Bitbucket Server
+ - GCP
+ - Gerrit
+ - Gitea
+ - GitHub
+ - GitLab
+ - Other
+ validations:
+ required: true
+ - type: textarea
+ id: description
+ validations:
+ required: true
+ attributes:
+ label: '📝 Description & Context'
+ placeholder: |
+ Describe the observed behavior that you believe to be incorrect, as well as any additional context that might be useful in understanding the bug.
+
+ e.g. "When I navigate to the catalog index page, it loads without any issues. This might be related to https://xkcd.com/1172"
+ - type: textarea
+ id: expected-behavior
+ validations:
+ required: true
+ attributes:
+ label: '👍 Expected Behavior'
+ placeholder: |
+ Describe the behavior or result that you expected instead of the observed one.
+
+ e.g. "I expect the catalog index page to overheat my CPU"
+ - type: markdown
+ attributes:
+ value: '
' # empty space
+ - type: markdown
+ attributes:
+ value: |
+ ## Reproducing the bug
+
+ Being able to easily reproduce the bug will significantly increase the likelihood that it can be identified and fixed. Please provide a repository where the bug can be reproduced, unless this is a critical bug that needs immediate attention.
+
+ If you are unable to provide a reproduction repository, please explain the reproduction steps in as much detail as possible, and include the output of `yarn backstage-cli info` if relevant.
+
+ If inadequate or no reproduction steps are provided, the bug report is likely to be labeled as needing reproduction steps before it can be progressed further.
+ - type: input
+ id: reproduction-repo
+ attributes:
+ label: '📦 Reproduction Repo'
+ description: A link to a GitHub repository where the issue can be reproduced
+ placeholder: https://github.com/ghost/my-repro-repo
+ validations:
+ required: false
+ - type: textarea
+ id: steps-to-reproduce
+ attributes:
+ label: '🥾 Reproduction steps'
+ description: 'How do you trigger this bug? Please walk us through it step by step.'
+ placeholder: |
+ 1. Go to '...'
+ 2. Click on '....'
+ 3. Scroll down to '....'"
+ validations:
+ required: false
+ # This field is managed by .common.yaml
+ - id: read-code-of-conduct
+ type: checkboxes
+ attributes:
+ label: 'Have you read the Code of Conduct?'
+ options:
+ - label: 'I have read the [Code of Conduct](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
+ required: true
+ - type: dropdown
+ attributes:
+ label: Are you willing to submit PR?
+ description: This is absolutely not required, but we are happy to guide you in the contribution process.
+ options:
+ - Undecided
+ - Yes, and I have enough information to get started
+ - Yes, but I would like some more guidance
+ - No, but I'm happy to collaborate on a PR with someone else
+ - No, I don't have time to work on this right now
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE/02_documentation.yaml b/.github/ISSUE_TEMPLATE/02_documentation.yaml
new file mode 100644
index 0000000000..dc9ede2c53
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/02_documentation.yaml
@@ -0,0 +1,98 @@
+name: '📖 Report an issue in the documentation'
+description: 'Report an issue in the Backstage documentation'
+labels:
+ - domain:docs
+ - type:documentation
+ - needs:triage
+body:
+ - type: markdown
+ attributes:
+ value: |
+ This template is used to report issues in the Backstage documentation.
+
+ The documentation at [backstage.io](https://backstage.io) is only updated when a new release is made. Before reporting an issue here, please verify that the issue also exists in the ["next"](https://backstage.io/docs/next/overview/what-is-backstage) version of the documentation, which you can access using the top-right dropdown menu.
+ # This field is managed by .common.yaml
+ - id: issue-labels
+ type: checkboxes
+ attributes:
+ label: '📜 Issue Labels'
+ options:
+ - label: 'Please familiarize yourself with the issue labels used in this project: [LABELS.md](https://github.com/backstage/backstage/blob/master/LABELS.md)'
+ required: true
+ # This field is managed by .common.yaml
+ - id: project-area
+ type: dropdown
+ attributes:
+ label: '🗃️ Project Area'
+ description: Which project area is this issue most closely related to? This will help find an owner for the issue faster.
+ options:
+ - Unknown
+ - Auditor
+ - Auth
+ - Catalog
+ - CLI Tooling
+ - Core Framework
+ - Design System
+ - Documentation
+ - Events System
+ - Home
+ - Kubernetes Plugin
+ - Microsite
+ - Notifications
+ - OpenAPI Tooling
+ - Permission Framework
+ - Search
+ - Software Templates
+ - TechDocs
+ validations:
+ required: true
+ # This field is managed by .common.yaml
+ - type: dropdown
+ id: integration
+ attributes:
+ label: '🔗 External Integration'
+ description: Is this issue related to an integration with any particular external system?
+ options:
+ - N/A
+ - AWS
+ - Azure
+ - Azure DevOps
+ - Bitbucket Cloud
+ - Bitbucket Server
+ - GCP
+ - Gerrit
+ - Gitea
+ - GitHub
+ - GitLab
+ - Other
+ validations:
+ required: true
+ - type: textarea
+ id: description
+ validations:
+ required: true
+ attributes:
+ label: '📝 Description'
+ description: Describe the problem you have found in the documentation.
+ placeholder: |
+ Please provide links to the specific pages and sections that need to be corrected, and describe the problem you have found.
+ # This field is managed by .common.yaml
+ - id: read-code-of-conduct
+ type: checkboxes
+ attributes:
+ label: 'Have you read the Code of Conduct?'
+ options:
+ - label: 'I have read the [Code of Conduct](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
+ required: true
+ - type: dropdown
+ attributes:
+ label: Are you willing to submit PR?
+ description: This is absolutely not required, but we are happy to guide you in the contribution process.
+ options:
+ - Undecided
+ - Yes, and I have enough information to get started
+ - Yes, but I would like some more guidance
+ - No, but I'm happy to collaborate on a PR with someone else
+ - No, I don't have time to work on this right now
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE/03_suggestion.yaml b/.github/ISSUE_TEMPLATE/03_suggestion.yaml
new file mode 100644
index 0000000000..cafdd7066f
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/03_suggestion.yaml
@@ -0,0 +1,114 @@
+name: '💡 Suggest a change'
+description: 'Suggest an idea for a new feature or change to Backstage'
+labels:
+ - type:suggestion
+ - needs:triage
+body:
+ - type: markdown
+ attributes:
+ value: |
+ This template helps you propose new features, enhancements, or other ideas for Backstage. You can keep your proposal lightweight, but please provide enough detail for reviewers to understand and respond effectively.
+
+ For complex additions, consider creating a [Backstage Enhancement Proposal](https://github.com/backstage/backstage/blob/master/beps/README.md) (BEP) instead, as this process streamlines discussions and iteration. Don't worry - you can always convert this issue to a BEP later.
+ # This field is managed by .common.yaml
+ - id: issue-labels
+ type: checkboxes
+ attributes:
+ label: '📜 Issue Labels'
+ options:
+ - label: 'Please familiarize yourself with the issue labels used in this project: [LABELS.md](https://github.com/backstage/backstage/blob/master/LABELS.md)'
+ required: true
+ # This field is managed by .common.yaml
+ - id: search-terms
+ type: textarea
+ attributes:
+ label: '🔎 Search Terms'
+ render: plain
+ description: |
+ What search terms did you use when trying to find similar issues?
+ placeholder: |
+ List of keywords you searched for before creating this issue. Write them down here so that others can find this issue more easily and help provide feedback.
+
+ e.g. "catalog github rate limited", "http root service configurer", "scaffolder template include", "entity card title"
+ validations:
+ required: true
+ # This field is managed by .common.yaml
+ - id: project-area
+ type: dropdown
+ attributes:
+ label: '🗃️ Project Area'
+ description: Which project area is this issue most closely related to? This will help find an owner for the issue faster.
+ options:
+ - Unknown
+ - Auditor
+ - Auth
+ - Catalog
+ - CLI Tooling
+ - Core Framework
+ - Design System
+ - Documentation
+ - Events System
+ - Home
+ - Kubernetes Plugin
+ - Microsite
+ - Notifications
+ - OpenAPI Tooling
+ - Permission Framework
+ - Search
+ - Software Templates
+ - TechDocs
+ validations:
+ required: true
+ - type: textarea
+ id: need
+ validations:
+ required: true
+ attributes:
+ label: '🔖 Need'
+ description: What is the rationale for this change, and who will benefit from it?
+ placeholder: |
+ Explain why this change is important and who will benefit from it. Provide context for the change, such as highlighting relevant past work in this area or specific use cases.
+ - type: textarea
+ id: proposal
+ validations:
+ required: true
+ attributes:
+ label: '📝 Proposal'
+ description: Describe the change that you are suggesting.
+ placeholder: |
+ Provide sufficient detail for reviewers to give concrete feedback.
+
+ Including a proposed implementation is optional, but if you do, consider adding design details such as TypeScript examples, database schema, or sequence diagrams.
+
+ If the change requires particular care when being rolled out, it can be helpful to include a plan for a phased release.
+ - type: textarea
+ id: alternatives
+ attributes:
+ label: '🔄 Alternatives'
+ description: Did you consider any other approaches?
+ placeholder: |
+ Did you consider any other approaches, and if so, why did you rule them out?
+
+ These do not need to be as detailed as the main proposal, but should include enough information to understand the idea and why it wasn't suitable.
+ # This field is managed by .common.yaml
+ - id: read-code-of-conduct
+ type: checkboxes
+ attributes:
+ label: 'Have you read the Code of Conduct?'
+ options:
+ - label: 'I have read the [Code of Conduct](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
+ required: true
+ # This field is managed by .common.yaml
+ - id: willing-to-submit-pr
+ type: dropdown
+ attributes:
+ label: Are you willing to submit a PR?
+ description: This is absolutely not required, but we are happy to guide you in the contribution process.
+ options:
+ - Undecided
+ - Yes, and I have enough information to get started
+ - Yes, but I would like some more guidance
+ - No, but I'm happy to collaborate on a PR with someone else
+ - No, I don't have time to work on this right now
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE/04_maintenance.yaml b/.github/ISSUE_TEMPLATE/04_maintenance.yaml
new file mode 100644
index 0000000000..bf81efa5f6
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/04_maintenance.yaml
@@ -0,0 +1,101 @@
+name: '🚧 Track a maintenance task'
+description: 'Track a maintenance task'
+labels:
+ - type:maintenance
+ - needs:triage
+body:
+ - type: markdown
+ attributes:
+ value: |
+ This template helps you track maintenance tasks that require special consideration, such as complex version updates or migrations.
+ # This field is managed by .common.yaml
+ - id: issue-labels
+ type: checkboxes
+ attributes:
+ label: '📜 Issue Labels'
+ options:
+ - label: 'Please familiarize yourself with the issue labels used in this project: [LABELS.md](https://github.com/backstage/backstage/blob/master/LABELS.md)'
+ required: true
+ # This field is managed by .common.yaml
+ - id: search-terms
+ type: textarea
+ attributes:
+ label: '🔎 Search Terms'
+ render: plain
+ description: |
+ What search terms did you use when trying to find similar issues?
+ placeholder: |
+ List of keywords you searched for before creating this issue. Write them down here so that others can find this issue more easily and help provide feedback.
+
+ e.g. "catalog github rate limited", "http root service configurer", "scaffolder template include", "entity card title"
+ validations:
+ required: true
+ # This field is managed by .common.yaml
+ - id: project-area
+ type: dropdown
+ attributes:
+ label: '🗃️ Project Area'
+ description: Which project area is this issue most closely related to? This will help find an owner for the issue faster.
+ options:
+ - Unknown
+ - Auditor
+ - Auth
+ - Catalog
+ - CLI Tooling
+ - Core Framework
+ - Design System
+ - Documentation
+ - Events System
+ - Home
+ - Kubernetes Plugin
+ - Microsite
+ - Notifications
+ - OpenAPI Tooling
+ - Permission Framework
+ - Search
+ - Software Templates
+ - TechDocs
+ validations:
+ required: true
+ - type: textarea
+ id: task
+ validations:
+ required: true
+ attributes:
+ label: '🛠️ Task'
+ description: Describe the task that requires attention
+ placeholder: |
+ Explain what needs to be accomplished, including any relevant context such as dependencies or related components.
+ - type: textarea
+ id: proposal
+ validations:
+ required: true
+ attributes:
+ label: '📊 Priority & Impact'
+ description: Explain the urgency and impact of this task
+ placeholder: |
+ Explain what level of prioritization this task should receive. Are there any particular benefits provided in newer versions in case of a version update, or any security vulnerabilities that can be addressed?
+
+ Also list any important dates or deadlines, such as current versions reaching end of life, or release dates for stable releases.
+ # This field is managed by .common.yaml
+ - id: read-code-of-conduct
+ type: checkboxes
+ attributes:
+ label: 'Have you read the Code of Conduct?'
+ options:
+ - label: 'I have read the [Code of Conduct](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
+ required: true
+ # This field is managed by .common.yaml
+ - id: willing-to-submit-pr
+ type: dropdown
+ attributes:
+ label: Are you willing to submit a PR?
+ description: This is absolutely not required, but we are happy to guide you in the contribution process.
+ options:
+ - Undecided
+ - Yes, and I have enough information to get started
+ - Yes, but I would like some more guidance
+ - No, but I'm happy to collaborate on a PR with someone else
+ - No, I don't have time to work on this right now
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE/05_other.yaml b/.github/ISSUE_TEMPLATE/05_other.yaml
new file mode 100644
index 0000000000..2238c47b6f
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/05_other.yaml
@@ -0,0 +1,24 @@
+name: '❓ Other'
+description: 'Something not captured by any other template'
+labels:
+ - needs:triage
+body:
+ - type: markdown
+ attributes:
+ value: |
+ This template can be used to create issues that don't fit any of the other templates. Valid examples include meta issues or other task tracking issues to help coordinate work, or informative issues that are kept for search purposes.
+
+ Do not use this template to submit support or help requests, as they will be closed. Please use other forums such as our [Community Discord](https://discord.gg/backstage-687207715902193673) instead.
+ - type: checkboxes
+ id: acknowledgement
+ attributes:
+ label: '📝 Acknowledgement'
+ options:
+ - label: I acknowledge that issues using this template may be closed without further explanation.
+ required: true
+ - type: textarea
+ id: contents
+ attributes:
+ label: Content
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE/bug.yaml b/.github/ISSUE_TEMPLATE/bug.yaml
deleted file mode 100644
index 57595621e4..0000000000
--- a/.github/ISSUE_TEMPLATE/bug.yaml
+++ /dev/null
@@ -1,84 +0,0 @@
-name: '🐛 Bug Report'
-description: 'Submit a bug report to help us improve'
-title: '🐛 Bug Report: