Skip to content

Commit d73161f

Browse files
committed
Fix review comment
1 parent 690a6e1 commit d73161f

File tree

1 file changed

+20
-5
lines changed

1 file changed

+20
-5
lines changed

src/commands/generateSourcekitConfiguration.ts

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export async function generateSourcekitConfiguration(ctx: WorkspaceContext): Pro
2626

2727
if (ctx.folders.length === 1) {
2828
const folder = ctx.folders[0];
29-
const success = await createSourcekitConfiguration(folder);
29+
const success = await createSourcekitConfiguration(ctx, folder);
3030
void vscode.window.showTextDocument(vscode.Uri.file(sourcekitConfigFilePath(folder)));
3131
return success;
3232
}
@@ -40,22 +40,32 @@ export async function generateSourcekitConfiguration(ctx: WorkspaceContext): Pro
4040
}
4141

4242
return (
43-
await Promise.all(foldersToGenerate.map(folder => createSourcekitConfiguration(folder)))
43+
await Promise.all(
44+
foldersToGenerate.map(folder => createSourcekitConfiguration(ctx, folder))
45+
)
4446
).reduceRight((prev, curr) => prev || curr);
4547
}
4648

4749
export const sourcekitFolderPath = (f: FolderContext) => join(f.folder.fsPath, ".sourcekit-lsp");
4850
export const sourcekitConfigFilePath = (f: FolderContext) =>
4951
join(sourcekitFolderPath(f), "config.json");
5052

51-
async function createSourcekitConfiguration(folderContext: FolderContext): Promise<boolean> {
53+
async function createSourcekitConfiguration(
54+
workspaceContext: WorkspaceContext,
55+
folderContext: FolderContext
56+
): Promise<boolean> {
5257
const sourcekitFolder = vscode.Uri.file(sourcekitFolderPath(folderContext));
5358
const sourcekitConfigFile = vscode.Uri.file(sourcekitConfigFilePath(folderContext));
5459

5560
try {
5661
await vscode.workspace.fs.stat(sourcekitConfigFile);
5762
return true;
58-
} catch {
63+
} catch (error) {
64+
if ((error as NodeJS.ErrnoException).code !== "ENOENT") {
65+
workspaceContext.outputChannel.appendLine(
66+
`Failed to read file at ${sourcekitConfigFile.fsPath}: ${error}`
67+
);
68+
}
5969
// Ignore, don't care if the file doesn't exist yet
6070
}
6171

@@ -67,7 +77,12 @@ async function createSourcekitConfiguration(folderContext: FolderContext): Promi
6777
);
6878
return false;
6979
}
70-
} catch {
80+
} catch (error) {
81+
if ((error as NodeJS.ErrnoException).code !== "ENOENT") {
82+
workspaceContext.outputChannel.appendLine(
83+
`Failed to read folder at ${sourcekitFolder.fsPath}: ${error}`
84+
);
85+
}
7186
await vscode.workspace.fs.createDirectory(sourcekitFolder);
7287
}
7388
const version = folderContext.toolchain.swiftVersion;

0 commit comments

Comments
 (0)