Move extension pack resolution into LocalQueries

This way the debug configuration will be able to override it.
This commit is contained in:
Dave Bartolomeo
2023-03-28 18:26:33 -04:00
parent a00db34999
commit 62cd4e3c64
7 changed files with 21 additions and 5 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

@@ -308,12 +308,17 @@ 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) {
throw new Error("Legacy query server does not support extension packs.");
}
const dbContents = await DatabaseResolver.resolveDatabaseContents(
Uri.file(dbPath),
);

View File

@@ -455,6 +455,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,
{
@@ -462,7 +467,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: string | undefined,
templates: Record<string, string> | undefined,
@@ -135,6 +137,7 @@ export abstract class QueryRunner {
dbPath,
query,
additionalPacks,
extensionPacks,
generateEvalLog,
outputDir,
progress,