refactor(logging): Centralize all console messaging to a shared logger (part 1) (#11537)

This commit is contained in:
Abhi
2025-10-20 18:16:47 -04:00
committed by GitHub
parent d5a06d3cd2
commit 995ae717cc
18 changed files with 145 additions and 143 deletions
+14 -11
View File
@@ -6,9 +6,10 @@
import { simpleGit } from 'simple-git';
import { getErrorMessage } from '../../utils/errors.js';
import type {
ExtensionInstallMetadata,
GeminiCLIExtension,
import {
debugLogger,
type ExtensionInstallMetadata,
type GeminiCLIExtension,
} from '@google/gemini-cli-core';
import { ExtensionUpdateState } from '../../ui/state/extensions.js';
import * as os from 'node:os';
@@ -160,7 +161,7 @@ export async function checkForExtensionUpdate(
workspaceDir: cwd,
});
if (!newExtension) {
console.error(
debugLogger.error(
`Failed to check for update for local extension "${extension.name}". Could not load extension from source path: ${installMetadata.source}`,
);
return ExtensionUpdateState.ERROR;
@@ -182,12 +183,14 @@ export async function checkForExtensionUpdate(
const git = simpleGit(extension.path);
const remotes = await git.getRemotes(true);
if (remotes.length === 0) {
console.error('No git remotes found.');
debugLogger.error('No git remotes found.');
return ExtensionUpdateState.ERROR;
}
const remoteUrl = remotes[0].refs.fetch;
if (!remoteUrl) {
console.error(`No fetch URL found for git remote ${remotes[0].name}.`);
debugLogger.error(
`No fetch URL found for git remote ${remotes[0].name}.`,
);
return ExtensionUpdateState.ERROR;
}
@@ -197,7 +200,7 @@ export async function checkForExtensionUpdate(
const lsRemoteOutput = await git.listRemote([remoteUrl, refToCheck]);
if (typeof lsRemoteOutput !== 'string' || lsRemoteOutput.trim() === '') {
console.error(`Git ref ${refToCheck} not found.`);
debugLogger.error(`Git ref ${refToCheck} not found.`);
return ExtensionUpdateState.ERROR;
}
@@ -205,7 +208,7 @@ export async function checkForExtensionUpdate(
const localHash = await git.revparse(['HEAD']);
if (!remoteHash) {
console.error(
debugLogger.error(
`Unable to parse hash from git ls-remote output "${lsRemoteOutput}"`,
);
return ExtensionUpdateState.ERROR;
@@ -217,12 +220,12 @@ export async function checkForExtensionUpdate(
} else {
const { source, releaseTag } = installMetadata;
if (!source) {
console.error(`No "source" provided for extension.`);
debugLogger.error(`No "source" provided for extension.`);
return ExtensionUpdateState.ERROR;
}
const repoInfo = tryParseGithubUrl(source);
if (!repoInfo) {
console.error(
debugLogger.error(
`Source is not a valid GitHub repository for release checks: ${source}`,
);
return ExtensionUpdateState.ERROR;
@@ -244,7 +247,7 @@ export async function checkForExtensionUpdate(
return ExtensionUpdateState.UP_TO_DATE;
}
} catch (error) {
console.error(
debugLogger.error(
`Failed to check for updates for extension "${installMetadata.source}": ${getErrorMessage(error)}`,
);
return ExtensionUpdateState.ERROR;