diff --git a/.changeset/brave-beers-happen.md b/.changeset/brave-beers-happen.md
new file mode 100644
index 0000000000..34bbb95666
--- /dev/null
+++ b/.changeset/brave-beers-happen.md
@@ -0,0 +1,5 @@
+---
+'@backstage/frontend-plugin-api': patch
+---
+
+Update alpha component ref type to be more specific than any, delete boot page component and use new plugin type for error boundary component extensions.
diff --git a/.changeset/good-wolves-leave.md b/.changeset/good-wolves-leave.md
new file mode 100644
index 0000000000..51ac99a55a
--- /dev/null
+++ b/.changeset/good-wolves-leave.md
@@ -0,0 +1,5 @@
+---
+'@backstage/frontend-app-api': patch
+---
+
+Use the new plugin type for error boundary components.
diff --git a/.changeset/sharp-dingos-learn.md b/.changeset/sharp-dingos-learn.md
new file mode 100644
index 0000000000..9447ca9698
--- /dev/null
+++ b/.changeset/sharp-dingos-learn.md
@@ -0,0 +1,5 @@
+---
+'@backstage/core-compat-api': patch
+---
+
+Delete alpha DI compatibility helper for components, migrating components should be simple without a helper.
diff --git a/packages/app-next/src/App.tsx b/packages/app-next/src/App.tsx
index ccfeb61b58..d7ec30bf95 100644
--- a/packages/app-next/src/App.tsx
+++ b/packages/app-next/src/App.tsx
@@ -17,7 +17,7 @@
import React from 'react';
import { createApp } from '@backstage/frontend-app-api';
import { pagesPlugin } from './examples/pagesPlugin';
-import { CustomNotFoundErrorPage } from './examples/notFoundErrorPageExtension';
+import notFoundErrorPage from './examples/notFoundErrorPageExtension';
import graphiqlPlugin from '@backstage/plugin-graphiql/alpha';
import techRadarPlugin from '@backstage/plugin-tech-radar/alpha';
import userSettingsPlugin from '@backstage/plugin-user-settings/alpha';
@@ -33,10 +33,7 @@ import {
} from '@backstage/frontend-plugin-api';
import techdocsPlugin from '@backstage/plugin-techdocs/alpha';
import { homePage } from './HomePage';
-import {
- collectLegacyComponents,
- collectLegacyRoutes,
-} from '@backstage/core-compat-api';
+import { collectLegacyRoutes } from '@backstage/core-compat-api';
import { FlatRoutes } from '@backstage/core-app-api';
import { Route } from 'react-router';
import { CatalogImportPage } from '@backstage/plugin-catalog-import';
@@ -118,10 +115,6 @@ const collectedLegacyPlugins = collectLegacyRoutes(
,
);
-const legacyAppComponents = collectLegacyComponents({
- NotFoundErrorPage: CustomNotFoundErrorPage,
-});
-
const app = createApp({
features: [
graphiqlPlugin,
@@ -137,7 +130,7 @@ const app = createApp({
scmAuthExtension,
scmIntegrationApi,
signInPage,
- ...legacyAppComponents,
+ notFoundErrorPage,
],
}),
],
diff --git a/packages/app-next/src/examples/notFoundErrorPageExtension.tsx b/packages/app-next/src/examples/notFoundErrorPageExtension.tsx
index 82acc25fb5..06e9b50bb8 100644
--- a/packages/app-next/src/examples/notFoundErrorPageExtension.tsx
+++ b/packages/app-next/src/examples/notFoundErrorPageExtension.tsx
@@ -17,7 +17,7 @@
import React from 'react';
import {
createComponentExtension,
- coreComponentsRefs,
+ coreComponentRefs,
} from '@backstage/frontend-plugin-api';
import { Box, Typography } from '@material-ui/core';
import { Button } from '@backstage/core-components';
@@ -36,15 +36,9 @@ export function CustomNotFoundErrorPage() {
>
404
- Bowie was unable to locate this page. Please contact your support team
- if this page used to exist.
+ Unable to locate this page. Please contact your support team if this
+ page used to exist.
-