From 0a60dc1d53a1b9db6dd4f952807b8f2c4d20ccb9 Mon Sep 17 00:00:00 2001
From: Gabriel-Ladzaretti
 <97394622+Gabriel-Ladzaretti@users.noreply.github.com>
Date: Mon, 2 Dec 2024 16:31:50 +0200
Subject: [PATCH] feat: apply `ignorePresets` when resolving the
 `globalExtends` array (#32845)

---
 lib/workers/global/index.ts | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/lib/workers/global/index.ts b/lib/workers/global/index.ts
index 0ef5d1c870..488be90108 100644
--- a/lib/workers/global/index.ts
+++ b/lib/workers/global/index.ts
@@ -96,10 +96,11 @@ export async function validatePresets(config: AllConfig): Promise<void> {
 
 export async function resolveGlobalExtends(
   globalExtends: string[],
+  ignorePresets?: string[],
 ): Promise<AllConfig> {
   try {
     // Make a "fake" config to pass to resolveConfigPresets and resolve globalPresets
-    const config = { extends: globalExtends };
+    const config = { extends: globalExtends, ignorePresets };
     const resolvedConfig = await resolveConfigPresets(config);
     return resolvedConfig;
   } catch (err) {
@@ -133,10 +134,13 @@ export async function start(): Promise<number> {
     await instrument('config', async () => {
       // read global config from file, env and cli args
       config = await getGlobalConfig();
-      if (config?.globalExtends) {
+      if (is.nonEmptyArray(config?.globalExtends)) {
         // resolve global presets immediately
         config = mergeChildConfig(
-          await resolveGlobalExtends(config.globalExtends),
+          await resolveGlobalExtends(
+            config.globalExtends,
+            config.ignorePresets,
+          ),
           config,
         );
       }
-- 
GitLab