Merge pull request #2246 from github/dbartol/debug-extension-packs

Move extension pack resolution into `LocalQueries`
This commit is contained in:
Dave Bartolomeo
2023-03-31 14:36:35 -04:00
committed by GitHub
7 changed files with 28 additions and 6 deletions

View File

@@ -178,6 +178,7 @@ export async function runContextualQuery(
{ queryPath: query, quickEvalPosition: undefined },
false,
getOnDiskWorkspaceFolders(),
undefined,
queryStorageDir,
undefined,
templates,

View File

@@ -61,6 +61,7 @@ export class LegacyQueryRunner extends QueryRunner {
dbPath: string,
query: CoreQueryTarget,
additionalPacks: string[],
extensionPacks: string[] | undefined,
generateEvalLog: boolean,
outputDir: QueryOutputDir,
progress: ProgressCallback,
@@ -74,6 +75,7 @@ export class LegacyQueryRunner extends QueryRunner {
query,
generateEvalLog,
additionalPacks,
extensionPacks,
outputDir,
progress,
token,

View File

@@ -9,7 +9,11 @@ import {
DatabaseItem,
DatabaseResolver,
} from "../local-databases";
import { showAndLogExceptionWithTelemetry, upgradesTmpDir } from "../helpers";
import {
showAndLogExceptionWithTelemetry,
showAndLogWarningMessage,
upgradesTmpDir,
} from "../helpers";
import { ProgressCallback } from "../progress";
import { QueryMetadata } from "../pure/interface-types";
import { extLogger, Logger } from "../common";
@@ -308,12 +312,19 @@ export async function compileAndRunQueryAgainstDatabaseCore(
query: CoreQueryTarget,
generateEvalLog: boolean,
additionalPacks: string[],
extensionPacks: string[] | undefined,
outputDir: QueryOutputDir,
progress: ProgressCallback,
token: CancellationToken,
templates: Record<string, string> | undefined,
logger: Logger,
): Promise<CoreQueryResults> {
if (extensionPacks !== undefined && extensionPacks.length > 0) {
await showAndLogWarningMessage(
"Legacy query server does not support extension packs.",
);
}
const dbContents = await DatabaseResolver.resolveDatabaseContents(
Uri.file(dbPath),
);

View File

@@ -458,6 +458,11 @@ export class LocalQueries extends DisposableObject {
throw new Error("Can't run query without a selected database");
}
const additionalPacks = getOnDiskWorkspaceFolders();
const extensionPacks = (await this.cliServer.useExtensionPacks())
? Object.keys(await this.cliServer.resolveQlpacks(additionalPacks, true))
: undefined;
const coreQueryRun = this.queryRunner.createQueryRun(
databaseItem.databaseUri.fsPath,
{
@@ -465,7 +470,8 @@ export class LocalQueries extends DisposableObject {
quickEvalPosition: selectedQuery.quickEvalPosition,
},
true,
getOnDiskWorkspaceFolders(),
additionalPacks,
extensionPacks,
this.queryStorageDir,
undefined,
undefined,

View File

@@ -72,6 +72,7 @@ export class NewQueryRunner extends QueryRunner {
dbPath: string,
query: CoreQueryTarget,
additionalPacks: string[],
extensionPacks: string[] | undefined,
generateEvalLog: boolean,
outputDir: QueryOutputDir,
progress: ProgressCallback,
@@ -85,6 +86,7 @@ export class NewQueryRunner extends QueryRunner {
query,
generateEvalLog,
additionalPacks,
extensionPacks,
outputDir,
progress,
token,

View File

@@ -26,6 +26,7 @@ export async function compileAndRunQueryAgainstDatabaseCore(
query: CoreQueryTarget,
generateEvalLog: boolean,
additionalPacks: string[],
extensionPacks: string[] | undefined,
outputDir: QueryOutputDir,
progress: ProgressCallback,
token: CancellationToken,
@@ -39,10 +40,6 @@ export async function compileAndRunQueryAgainstDatabaseCore(
}
: { query: {} };
const extensionPacks = (await qs.cliServer.useExtensionPacks())
? Object.keys(await qs.cliServer.resolveQlpacks(additionalPacks, true))
: undefined;
const evalLogPath = generateEvalLog ? outputDir.evalLogPath : undefined;
const queryToRun: messages.RunQueryParams = {
db: dbPath,

View File

@@ -70,6 +70,7 @@ export abstract class QueryRunner {
dbPath: string,
query: CoreQueryTarget,
additionalPacks: string[],
extensionPacks: string[] | undefined,
generateEvalLog: boolean,
outputDir: QueryOutputDir,
progress: ProgressCallback,
@@ -109,6 +110,7 @@ export abstract class QueryRunner {
query: CoreQueryTarget,
generateEvalLog: boolean,
additionalPacks: string[],
extensionPacks: string[] | undefined,
queryStorageDir: string,
id = `${basename(query.queryPath)}-${nanoid()}`,
templates: Record<string, string> | undefined,
@@ -134,6 +136,7 @@ export abstract class QueryRunner {
dbPath,
query,
additionalPacks,
extensionPacks,
generateEvalLog,
outputDir,
progress,