Skip to content

Commit 3020bf7

Browse files
authored
Merge pull request #3094 from github/koesie10/remove-legacy-query-server
Remove the legacy query server
2 parents d28cc6e + 76534bc commit 3020bf7

File tree

15 files changed

+111
-2436
lines changed

15 files changed

+111
-2436
lines changed

extensions/ql-vscode/src/codeql-cli/cli.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { EOL } from "os";
22
import { spawn } from "child-process-promise";
33
import * as child_process from "child_process";
44
import { readFile } from "fs-extra";
5-
import { dirname, join, delimiter } from "path";
5+
import { delimiter, dirname, join } from "path";
66
import * as sarif from "sarif";
77
import { SemVer } from "semver";
88
import { Readable } from "stream";
@@ -15,7 +15,7 @@ import {
1515
DecodedBqrs,
1616
DecodedBqrsChunk,
1717
} from "../common/bqrs-cli-types";
18-
import { allowCanaryQueryServer, CliConfig } from "../config";
18+
import { CliConfig } from "../config";
1919
import {
2020
DistributionProvider,
2121
FindDistributionResultKind,
@@ -1772,11 +1772,6 @@ export class CliVersionConstraint {
17721772
return (await this.cli.getVersion()).compare(v) >= 0;
17731773
}
17741774

1775-
async supportsNewQueryServer() {
1776-
// This allows users to explicitly opt-out of the new query server.
1777-
return allowCanaryQueryServer();
1778-
}
1779-
17801775
async supportsQlpacksKind() {
17811776
return this.isVersionAtLeast(
17821777
CliVersionConstraint.CLI_VERSION_WITH_QLPACKS_KIND,

extensions/ql-vscode/src/config.ts

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -461,20 +461,6 @@ export function isCanary() {
461461
return !!CANARY_FEATURES.getValue<boolean>();
462462
}
463463

464-
/**
465-
* Enables the experimental query server
466-
*/
467-
export const CANARY_QUERY_SERVER = new Setting(
468-
"canaryQueryServer",
469-
ROOT_SETTING,
470-
);
471-
472-
// The default value for this setting is now `true`
473-
export function allowCanaryQueryServer() {
474-
const value = CANARY_QUERY_SERVER.getValue<boolean>();
475-
return value === undefined ? true : !!value;
476-
}
477-
478464
const LOG_INSIGHTS_SETTING = new Setting("logInsights", ROOT_SETTING);
479465
export const JOIN_ORDER_WARNING_THRESHOLD = new Setting(
480466
"joinOrderWarningThreshold",

extensions/ql-vscode/src/extension.ts

Lines changed: 17 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
workspace,
1414
} from "vscode";
1515
import { LanguageClient } from "vscode-languageclient/node";
16-
import { arch, platform, homedir } from "os";
16+
import { arch, homedir, platform } from "os";
1717
import { ensureDir } from "fs-extra";
1818
import { join } from "path";
1919
import { dirSync } from "tmp-promise";
@@ -35,13 +35,13 @@ import {
3535
} from "./config";
3636
import {
3737
AstViewer,
38-
install,
38+
createIDEServer,
3939
getQueryEditorCommands,
40+
install,
4041
TemplatePrintAstProvider,
4142
TemplatePrintCfgProvider,
4243
TemplateQueryDefinitionProvider,
4344
TemplateQueryReferenceProvider,
44-
createIDEServer,
4545
} from "./language-support";
4646
import { DatabaseManager } from "./databases/local-databases";
4747
import { DatabaseUI } from "./databases/local-databases-ui";
@@ -68,15 +68,15 @@ import {
6868
getErrorStack,
6969
} from "./common/helpers-pure";
7070
import {
71-
ResultsView,
72-
WebviewReveal,
7371
LocalQueries,
7472
QuickEvalCodeLensProvider,
73+
ResultsView,
74+
WebviewReveal,
7575
} from "./local-queries";
7676
import {
7777
BaseLogger,
78-
showAndLogExceptionWithTelemetry,
7978
showAndLogErrorMessage,
79+
showAndLogExceptionWithTelemetry,
8080
showAndLogInformationMessage,
8181
showAndLogWarningMessage,
8282
} from "./common/logging";
@@ -88,10 +88,6 @@ import {
8888
} from "./common/logging/vscode";
8989
import { QueryHistoryManager } from "./query-history/query-history-manager";
9090
import { CompletedLocalQueryInfo } from "./query-results";
91-
import {
92-
LegacyQueryRunner,
93-
QueryServerClient as LegacyQueryServerClient,
94-
} from "./query-server/legacy";
9591
import { QLTestAdapterFactory } from "./query-testing/test-adapter";
9692
import { TestUIService } from "./query-testing/test-ui";
9793
import { CompareView } from "./compare/compare-view";
@@ -1242,29 +1238,17 @@ async function createQueryServer(
12421238
{ title: "CodeQL query server", location: ProgressLocation.Window },
12431239
task,
12441240
);
1245-
if (await cliServer.cliConstraints.supportsNewQueryServer()) {
1246-
const qs = new QueryServerClient(
1247-
app,
1248-
qlConfigurationListener,
1249-
cliServer,
1250-
qsOpts,
1251-
progressCallback,
1252-
);
1253-
ctx.subscriptions.push(qs);
1254-
await qs.startQueryServer();
1255-
return new NewQueryRunner(qs);
1256-
} else {
1257-
const qs = new LegacyQueryServerClient(
1258-
app,
1259-
qlConfigurationListener,
1260-
cliServer,
1261-
qsOpts,
1262-
progressCallback,
1263-
);
1264-
ctx.subscriptions.push(qs);
1265-
await qs.startQueryServer();
1266-
return new LegacyQueryRunner(qs);
1267-
}
1241+
1242+
const qs = new QueryServerClient(
1243+
app,
1244+
qlConfigurationListener,
1245+
cliServer,
1246+
qsOpts,
1247+
progressCallback,
1248+
);
1249+
ctx.subscriptions.push(qs);
1250+
await qs.startQueryServer();
1251+
return new NewQueryRunner(qs);
12681252
}
12691253

12701254
function getContextStoragePath(ctx: ExtensionContext) {

extensions/ql-vscode/src/query-results.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ import {
2222
QueryOutputDir,
2323
QueryWithResults,
2424
} from "./run-queries-shared";
25-
import { formatLegacyMessage } from "./query-server/legacy";
2625
import { sarifParser } from "./common/sarif-parser";
26+
import { formatLegacyMessage } from "./query-server/format-legacy-message";
2727

2828
/**
2929
* query-results.ts
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import * as legacyMessages from "./legacy-messages";
2+
3+
// Used for formatting the result of a legacy query which might still be in the
4+
// user's query history.
5+
export function formatLegacyMessage(result: legacyMessages.EvaluationResult) {
6+
switch (result.resultType) {
7+
case legacyMessages.QueryResultType.CANCELLATION:
8+
return `cancelled after ${Math.round(
9+
result.evaluationTime / 1000,
10+
)} seconds`;
11+
case legacyMessages.QueryResultType.OOM:
12+
return "out of memory";
13+
case legacyMessages.QueryResultType.SUCCESS:
14+
return `finished in ${Math.round(result.evaluationTime / 1000)} seconds`;
15+
case legacyMessages.QueryResultType.TIMEOUT:
16+
return `timed out after ${Math.round(
17+
result.evaluationTime / 1000,
18+
)} seconds`;
19+
case legacyMessages.QueryResultType.OTHER_ERROR:
20+
default:
21+
return result.message ? `failed: ${result.message}` : "failed";
22+
}
23+
}

0 commit comments

Comments
 (0)