Skip to content

Commit 52b4f93

Browse files
authored
Respect files.exclude values set to false (#1696)
1 parent bc2c546 commit 52b4f93

File tree

2 files changed

+10
-7
lines changed

2 files changed

+10
-7
lines changed

src/ui/ProjectPanelProvider.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,13 +43,16 @@ const LOADING_ICON = "loading~spin";
4343
*/
4444
function excludedFilesForProjectPanelExplorer(): string[] {
4545
const config = vscode.workspace.getConfiguration("files");
46-
const vscodeExcludeList = config.get<{ [key: string]: boolean }>("exclude");
4746
const packageDepsExcludeList = configuration.excludePathsFromPackageDependencies;
48-
4947
if (!Array.isArray(packageDepsExcludeList)) {
5048
throw new Error("Expected excludePathsFromPackageDependencies to be an array");
5149
}
52-
return [...packageDepsExcludeList, ...Object.keys(vscodeExcludeList ?? {})];
50+
51+
const vscodeExcludeList = config.get<{ [key: string]: boolean }>("exclude") ?? {};
52+
const vscodeFileTypesToExclude = Object.keys(vscodeExcludeList).filter(
53+
key => vscodeExcludeList[key]
54+
);
55+
return [...packageDepsExcludeList, ...vscodeFileTypesToExclude];
5356
}
5457

5558
/**

test/integration-tests/ui/ProjectPanelProvider.test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,7 @@ suite("ProjectPanelProvider Test Suite", function () {
361361
let resetSettings: (() => Promise<void>) | undefined;
362362
beforeEach(async function () {
363363
resetSettings = await updateSettings({
364-
"files.exclude": { "**/*.swift": true },
364+
"files.exclude": { "**/*.swift": true, "**/*.txt": false },
365365
"swift.excludePathsFromPackageDependencies": ["**/*.md"],
366366
});
367367
});
@@ -374,11 +374,11 @@ suite("ProjectPanelProvider Test Suite", function () {
374374

375375
const folders = await treeProvider.getChildren(dep);
376376
const manifest = folders.find(n => n.name === "Package.swift") as FileNode;
377-
expect(manifest).to.be.undefined;
377+
expect(manifest, "Package.swift was not found").to.be.undefined;
378378
const readme = folders.find(n => n.name === "README.md") as FileNode;
379-
expect(readme).to.be.undefined;
379+
expect(readme, "README.md was not found").to.be.undefined;
380380
const licence = folders.find(n => n.name === "LICENSE.txt") as FileNode;
381-
expect(licence).to.not.be.undefined;
381+
expect(licence, "LICENSE.txt was not found").to.not.be.undefined;
382382
});
383383

384384
afterEach(async () => {

0 commit comments

Comments
 (0)