Plugins: centralize compatibility formatting

This commit is contained in:
Vincent Koc
2026-03-17 20:31:59 -07:00
parent 7ba8dd112f
commit 5c4903d3fd
8 changed files with 244 additions and 14 deletions

View File

@@ -13,7 +13,10 @@ import {
writeConfigFile,
} from "../config/config.js";
import { normalizeSecretInputString } from "../config/types.secrets.js";
import { buildPluginCompatibilityNotices } from "../plugins/status.js";
import {
buildPluginCompatibilityNotices,
formatPluginCompatibilityNotice,
} from "../plugins/status.js";
import type { RuntimeEnv } from "../runtime.js";
import { defaultRuntime } from "../runtime.js";
import { resolveUserPath } from "../utils.js";
@@ -112,7 +115,7 @@ export async function runSetupWizard(
`Detected ${compatibilityNotices.length} plugin compatibility notice${compatibilityNotices.length === 1 ? "" : "s"} in the current config.`,
...compatibilityNotices
.slice(0, 4)
.map((notice) => `- ${notice.pluginId}: ${notice.message}`),
.map((notice) => `- ${formatPluginCompatibilityNotice(notice)}`),
...(compatibilityNotices.length > 4
? [`- ... +${compatibilityNotices.length - 4} more`]
: []),