Skip to content

Commit 763ce57

Browse files
authored
Revert "Add dynamic local schema detection for SourceKit-LSP (#1979)" (#2001)
This reverts commit a59a384.
1 parent 392c940 commit 763ce57

File tree

5 files changed

+2
-365
lines changed

5 files changed

+2
-365
lines changed

CHANGELOG.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,6 @@
22

33
## {{releaseVersion}} - {{releaseDate}}
44

5-
### Added
6-
7-
- When editing .sourcekit-lsp/config.json use the JSON schema from the toolchain ([#1979](https://github.com/swiftlang/vscode-swift/pull/1979))
8-
95
### Fixed
106

117
- Fix extension failing to find `lldb-dap` when `swift.path` points at an Xcode toolchain ([#1998](https://github.com/swiftlang/vscode-swift/pull/1998))

src/WorkspaceContext.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ import { CommentCompletionProviders } from "./editor/CommentCompletion";
2828
import { SwiftLogger } from "./logging/SwiftLogger";
2929
import { SwiftLoggerFactory } from "./logging/SwiftLoggerFactory";
3030
import { LanguageClientToolchainCoordinator } from "./sourcekit-lsp/LanguageClientToolchainCoordinator";
31-
import { SourcekitSchemaRegistry } from "./sourcekit-lsp/SourcekitSchemaRegistry";
3231
import { DocCDocumentationRequest, ReIndexProjectRequest } from "./sourcekit-lsp/extensions";
3332
import { SwiftPluginTaskProvider } from "./tasks/SwiftPluginTaskProvider";
3433
import { SwiftTaskProvider } from "./tasks/SwiftTaskProvider";
@@ -63,7 +62,6 @@ export class WorkspaceContext implements vscode.Disposable {
6362
public documentation: DocumentationManager;
6463
public testRunManager: TestRunManager;
6564
public projectPanel: ProjectPanelProvider;
66-
private sourcekitSchemaRegistry: SourcekitSchemaRegistry;
6765
private lastFocusUri: vscode.Uri | undefined;
6866
private initialisationFinished = false;
6967

@@ -110,7 +108,6 @@ export class WorkspaceContext implements vscode.Disposable {
110108
this.currentDocument = null;
111109
this.commentCompletionProvider = new CommentCompletionProviders();
112110
this.projectPanel = new ProjectPanelProvider(this);
113-
this.sourcekitSchemaRegistry = new SourcekitSchemaRegistry(this);
114111

115112
const onChangeConfig = vscode.workspace.onDidChangeConfiguration(async event => {
116113
// Clear build path cache when build-related configurations change
@@ -235,7 +232,6 @@ export class WorkspaceContext implements vscode.Disposable {
235232
this.statusItem,
236233
this.buildStatus,
237234
this.projectPanel,
238-
this.sourcekitSchemaRegistry.register(),
239235
];
240236
this.lastFocusUri = vscode.window.activeTextEditor?.document.uri;
241237

@@ -251,7 +247,6 @@ export class WorkspaceContext implements vscode.Disposable {
251247
}
252248

253249
dispose() {
254-
this.sourcekitSchemaRegistry.dispose();
255250
this.folders.forEach(f => f.dispose());
256251
this.folders.length = 0;
257252
this.subscriptions.forEach(item => item.dispose());

src/commands/generateSourcekitConfiguration.ts

Lines changed: 2 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,10 @@ import { FolderContext } from "../FolderContext";
1818
import { WorkspaceContext } from "../WorkspaceContext";
1919
import configuration from "../configuration";
2020
import { selectFolder } from "../ui/SelectFolderQuickPick";
21-
import { fileExists } from "../utilities/filesystem";
2221
import restartLSPServer from "./restartLSPServer";
2322

24-
const sourcekitDotFolder: string = ".sourcekit-lsp";
25-
const sourcekitConfigFileName: string = "config.json";
23+
export const sourcekitDotFolder: string = ".sourcekit-lsp";
24+
export const sourcekitConfigFileName: string = "config.json";
2625

2726
export async function generateSourcekitConfiguration(ctx: WorkspaceContext): Promise<boolean> {
2827
if (ctx.folders.length === 0) {
@@ -129,13 +128,6 @@ async function checkURLExists(url: string): Promise<boolean> {
129128
}
130129

131130
export async function determineSchemaURL(folderContext: FolderContext): Promise<string> {
132-
// Check if local schema exists first
133-
if (await hasLocalSchema(folderContext)) {
134-
const localPath = localSchemaPath(folderContext);
135-
return vscode.Uri.file(localPath).toString();
136-
}
137-
138-
// Fall back to remote URL for older toolchains
139131
const version = folderContext.toolchain.swiftVersion;
140132
const versionString = `${version.major}.${version.minor}`;
141133
let branch =
@@ -146,26 +138,6 @@ export async function determineSchemaURL(folderContext: FolderContext): Promise<
146138
return schemaURL(branch);
147139
}
148140

149-
/**
150-
* Returns the path to the local sourcekit-lsp schema file in the toolchain.
151-
* This file only exists in newer toolchains (approximately Swift 6.3+).
152-
*/
153-
export function localSchemaPath(folderContext: FolderContext): string {
154-
return join(
155-
folderContext.toolchain.toolchainPath,
156-
"share",
157-
"sourcekit-lsp",
158-
"config.schema.json"
159-
);
160-
}
161-
162-
/**
163-
* Checks if the local schema file exists in the toolchain.
164-
*/
165-
export async function hasLocalSchema(folderContext: FolderContext): Promise<boolean> {
166-
return await fileExists(localSchemaPath(folderContext));
167-
}
168-
169141
async function getValidatedFolderContext(
170142
uri: vscode.Uri,
171143
workspaceContext: WorkspaceContext

src/sourcekit-lsp/SourcekitSchemaRegistry.ts

Lines changed: 0 additions & 91 deletions
This file was deleted.

0 commit comments

Comments
 (0)