Skip to content

Commit 7282de1

Browse files
committed
Refactor file synchronization to exclusively use vscode.workspace.fs methods instead of Node.js fs/promises
1 parent f1d700e commit 7282de1

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

‎packages/vscode/src/commands/checkpoints-command/utils/sync-directory.ts‎

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import * as vscode from 'vscode'
22
import * as path from 'path'
3-
import * as fs from 'fs/promises'
43
import { WorkspaceProvider } from '../../../context/providers/workspace-provider'
54

65
export const sync_directory = async (params: {
@@ -13,9 +12,8 @@ export const sync_directory = async (params: {
1312
try {
1413
dest_entries = await vscode.workspace.fs.readDirectory(params.dest_dir)
1514
} catch (e) {
16-
await fs.cp(params.source_dir.fsPath, params.dest_dir.fsPath, {
17-
recursive: true,
18-
force: true
15+
await vscode.workspace.fs.copy(params.source_dir, params.dest_dir, {
16+
overwrite: true
1917
})
2018
return
2119
}
@@ -65,23 +63,26 @@ export const sync_directory = async (params: {
6563
recursive: true
6664
})
6765
}
68-
await fs.cp(source_uri.fsPath, dest_uri.fsPath, {
69-
recursive: true,
70-
force: true
66+
await vscode.workspace.fs.copy(source_uri, dest_uri, {
67+
overwrite: true
7168
})
7269
}
7370
} else if (type == vscode.FileType.File) {
7471
if (dest_stat?.type == vscode.FileType.File) {
7572
if (source_stat.mtime != dest_stat.mtime) {
76-
await fs.copyFile(source_uri.fsPath, dest_uri.fsPath)
73+
await vscode.workspace.fs.copy(source_uri, dest_uri, {
74+
overwrite: true
75+
})
7776
}
7877
} else {
7978
if (dest_stat) {
8079
await vscode.workspace.fs.delete(dest_uri, {
8180
recursive: true
8281
})
8382
}
84-
await fs.copyFile(source_uri.fsPath, dest_uri.fsPath)
83+
await vscode.workspace.fs.copy(source_uri, dest_uri, {
84+
overwrite: true
85+
})
8586
}
8687
}
8788
}

0 commit comments

Comments
 (0)