From f5628e573fc8e65243ac5cadc969aa85fa913aaf Mon Sep 17 00:00:00 2001 From: Matt Rubens Date: Fri, 21 Mar 2025 10:51:44 -0400 Subject: [PATCH] Support mentioning binary files (#1880) --- .changeset/wise-icons-sort.md | 5 +++++ src/core/mentions/index.ts | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) create mode 100644 .changeset/wise-icons-sort.md diff --git a/.changeset/wise-icons-sort.md b/.changeset/wise-icons-sort.md new file mode 100644 index 0000000000..d0f4c38835 --- /dev/null +++ b/.changeset/wise-icons-sort.md @@ -0,0 +1,5 @@ +--- +"roo-cline": patch +--- + +Support mentioning binary files diff --git a/src/core/mentions/index.ts b/src/core/mentions/index.ts index 57bb40811e..d32b1ec08d 100644 --- a/src/core/mentions/index.ts +++ b/src/core/mentions/index.ts @@ -152,12 +152,12 @@ async function getFileOrFolderContent(mentionPath: string, cwd: string): Promise const stats = await fs.stat(absPath) if (stats.isFile()) { - const isBinary = await isBinaryFile(absPath).catch(() => false) - if (isBinary) { - return "(Binary file, unable to display content)" + try { + const content = await extractTextFromFile(absPath) + return content + } catch (error) { + return `(Failed to read contents of ${mentionPath}): ${error.message}` } - const content = await extractTextFromFile(absPath) - return content } else if (stats.isDirectory()) { const entries = await fs.readdir(absPath, { withFileTypes: true }) let folderContent = ""