From 635d37d9e4b35934c1122bac505a87db63829857 Mon Sep 17 00:00:00 2001 From: aeroreyna Date: Mon, 13 Jul 2026 16:19:53 -0400 Subject: [PATCH] Fix system.js splitlines bug (Pythonism) -> split('\n'), fallback to python_mac_ver for version detection --- src/integrations/system.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/integrations/system.js b/src/integrations/system.js index bf2dfb4..9766136 100644 --- a/src/integrations/system.js +++ b/src/integrations/system.js @@ -9,10 +9,12 @@ export async function getSystemInfo() { try { const { stdout } = await execFileAsync("/usr/bin/sw_vers", { timeout: 5000 }); const info = {}; - for (const line of stdout.splitlines()) { + for (const line of stdout.split("\n")) { const [k, ...rest] = line.split(":"); if (!k) continue; - info[k.trim()] = rest.join(":").trim(); + const key = k.trim(); + if (!key) continue; + info[key] = rest.join(":").trim(); } results.sw_vers = info; results.macos_version = info.ProductVersion || info.productVersion || ""; @@ -65,10 +67,16 @@ print(platform.mac_ver()[0]) } catch {} // Is this macOS 26+ ? - if (results.macos_version) { - const major = parseInt(results.macos_version.split(".")[0], 10); + const versionToCheck = results.macos_version || results.python_mac_ver || ""; + if (versionToCheck) { + const major = parseInt(versionToCheck.split(".")[0], 10); results.is_macos_26_plus = major >= 26; results.speech_analyzer_expected = major >= 26 ? "likely available (macOS 26+)" : "not available - requires macOS 26+"; + } else if (results.python_mac_ver) { + const major = parseInt(results.python_mac_ver.split(".")[0], 10); + results.macos_version = results.python_mac_ver; + results.is_macos_26_plus = major >= 26; + results.speech_analyzer_expected = major >= 26 ? "likely available (macOS 26+)" : "not available"; } return results;