Simple caching for parsed workflow and template

This commit is contained in:
Jacob Wallraff
2023-03-02 16:43:23 -08:00
parent 4b8613da02
commit f2f377c21c
10 changed files with 58 additions and 12 deletions
+1 -1
View File
@@ -77,7 +77,7 @@ export async function complete(
}
const {token, keyToken, parent, path} = findToken(newPos, result.value);
const template = await convertWorkflowTemplate(result.context, result.value, config?.fileProvider, {
const template = await convertWorkflowTemplate(file.name, result.context, result.value, config?.fileProvider, {
fetchReusableWorkflowDepth: config?.fileProvider ? 1 : 0,
errorPolicy: ErrorPolicy.TryConversion
});
+1 -1
View File
@@ -19,7 +19,7 @@ export async function documentLinks(document: TextDocument): Promise<DocumentLin
return [];
}
const template = await convertWorkflowTemplate(result.context, result.value!, undefined, {
const template = await convertWorkflowTemplate(file.name, result.context, result.value!, undefined, {
errorPolicy: ErrorPolicy.TryConversion
});
+1 -1
View File
@@ -52,7 +52,7 @@ export async function hover(document: TextDocument, position: Position, config?:
const {token, keyToken, parent} = tokenResult;
const tokenDefinitionInfo = (keyToken || parent || token)?.definitionInfo;
const template = await convertWorkflowTemplate(result.context, result.value, config?.fileProvider, {
const template = await convertWorkflowTemplate(file.name, result.context, result.value, config?.fileProvider, {
errorPolicy: ErrorPolicy.TryConversion,
fetchReusableWorkflowDepth: config?.fileProvider ? 1 : 0
});
@@ -18,7 +18,7 @@ export async function testGetWorkflowContext(input: string): Promise<WorkflowCon
let template: WorkflowTemplate | undefined;
if (result.value) {
template = await convertWorkflowTemplate(result.context, result.value, testFileProvider, {
template = await convertWorkflowTemplate("wf.yaml", result.context, result.value, testFileProvider, {
fetchReusableWorkflowDepth: 1
});
}
+1 -1
View File
@@ -57,7 +57,7 @@ export async function validate(textDocument: TextDocument, config?: ValidationCo
const result: ParseWorkflowResult = parseWorkflow(file, nullTrace);
if (result.value) {
// Errors will be updated in the context. Attempt to do the conversion anyway in order to give the user more information
const template = await convertWorkflowTemplate(result.context, result.value, config?.fileProvider, {
const template = await convertWorkflowTemplate(file.name, result.context, result.value, config?.fileProvider, {
fetchReusableWorkflowDepth: config?.fileProvider ? 1 : 0,
errorPolicy: ErrorPolicy.TryConversion
});