

















@@ -113,14 +113,20 @@ function expectArtifactPresence(
113113}
114114}
115115116+let repoBundledPluginMetadataCache: readonly BundledPluginMetadata[] | undefined;
117+let repoBundledPluginManifestsCache:
118+| ReturnType<typeof listRepoBundledPluginManifestsUncached>
119+| undefined;
120+116121function listRepoBundledPluginMetadata(): readonly BundledPluginMetadata[] {
117-return listBundledPluginMetadata({
122+repoBundledPluginMetadataCache ??= listBundledPluginMetadata({
118123rootDir: repoRoot,
119124includeSyntheticChannelConfigs: false,
120125});
126+return repoBundledPluginMetadataCache;
121127}
122128123-function listRepoBundledPluginManifests() {
129+function listRepoBundledPluginManifestsUncached() {
124130const bundledPluginsDir = path.join(repoRoot, "extensions");
125131return fs
126132.readdirSync(bundledPluginsDir, { withFileTypes: true })
@@ -131,6 +137,11 @@ function listRepoBundledPluginManifests() {
131137});
132138}
133139140+function listRepoBundledPluginManifests() {
141+repoBundledPluginManifestsCache ??= listRepoBundledPluginManifestsUncached();
142+return repoBundledPluginManifestsCache;
143+}
144+134145function createRepoBundledManifestRegistry(): PluginManifestRegistry {
135146return {
136147plugins: listRepoBundledPluginManifests().map(({ manifest, dirName }) => ({
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。