From 2e38df4da93c34aed006d784733caf0f94d4ed6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20G=C3=B6bel?= <dgoebel@techfak.uni-bielefeld.de> Date: Thu, 20 Jun 2024 10:06:06 +0000 Subject: [PATCH] Add support for Nextflow version 22.10 #132 --- package-lock.json | 6 +++--- src/client/models/NextflowVersion.ts | 9 +++++++++ .../parameter-schema/ParameterSchemaFormComponent.vue | 8 ++++++-- src/views/workflows/ArbitraryWorkflowView.vue | 1 + src/views/workflows/StartWorkflowView.vue | 9 +++++---- 5 files changed, 24 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 31fe8f4..d8709f2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2455,9 +2455,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.14.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.5.tgz", - "integrity": "sha512-aoRR+fJkZT2l0aGOJhuA8frnCSoNX6W7U2mpNq63+BxBIj5BQFt8rHy627kijCmm63ijdSdwvGgpUsU6MBsZZA==", + "version": "20.14.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.6.tgz", + "integrity": "sha512-JbA0XIJPL1IiNnU7PFxDXyfAwcwVVrOoqyzzyQTyMeVhBzkJVMSkC1LlVsRQ2lpqiY4n6Bb9oCS6lzDKVQxbZw==", "dev": true, "dependencies": { "undici-types": "~5.26.4" diff --git a/src/client/models/NextflowVersion.ts b/src/client/models/NextflowVersion.ts index e16dfe9..d129f12 100644 --- a/src/client/models/NextflowVersion.ts +++ b/src/client/models/NextflowVersion.ts @@ -3,6 +3,15 @@ /* tslint:disable */ /* eslint-disable */ export enum NextflowVersion { + _22_10_0 = '22.10.0', + _22_10_1 = '22.10.1', + _22_10_2 = '22.10.2', + _22_10_3 = '22.10.3', + _22_10_4 = '22.10.4', + _22_10_5 = '22.10.5', + _22_10_6 = '22.10.6', + _22_10_7 = '22.10.7', + _22_10_8 = '22.10.8', _23_04_0 = '23.04.0', _23_04_1 = '23.04.1', _23_04_2 = '23.04.2', diff --git a/src/components/parameter-schema/ParameterSchemaFormComponent.vue b/src/components/parameter-schema/ParameterSchemaFormComponent.vue index 1955f1d..b995b20 100644 --- a/src/components/parameter-schema/ParameterSchemaFormComponent.vue +++ b/src/components/parameter-schema/ParameterSchemaFormComponent.vue @@ -20,7 +20,7 @@ import type { FlatWorkflowParameters, } from "@/types/WorkflowParameters"; import { useWorkflowExecutionStore } from "@/stores/workflowExecutions"; -import type { ParameterExtension } from "@/client"; +import { NextflowVersion, type ParameterExtension } from "@/client"; import { flattenParameters, nestParameters } from "@/utils/Workflow"; const bucketRepository = useBucketStore(); @@ -50,6 +50,10 @@ const props = defineProps({ allowNotes: { type: Boolean, }, + nextflowVersion: { + type: Object as PropType<NextflowVersion>, + required: true, + }, viewMode: { type: String, default: "simple", @@ -374,7 +378,7 @@ onMounted(() => { Directory in bucket where to save Nextflow log and reports </label> </div> - <div> + <div v-if="props.nextflowVersion >= NextflowVersion._23_04_0"> <code class="bg-secondary-subtle p-2 rounded-top border border-secondary" >--provenance_s3_path</code diff --git a/src/views/workflows/ArbitraryWorkflowView.vue b/src/views/workflows/ArbitraryWorkflowView.vue index 3a58992..b2c6aa0 100644 --- a/src/views/workflows/ArbitraryWorkflowView.vue +++ b/src/views/workflows/ArbitraryWorkflowView.vue @@ -227,6 +227,7 @@ onMounted(() => { :schema="workflowState.parameterSchema" :view-mode="props.viewMode" @start-workflow="startWorkflow" + :nextflow-version="workflowState.workflow.nextflow_version" /> </template> <template v-else> diff --git a/src/views/workflows/StartWorkflowView.vue b/src/views/workflows/StartWorkflowView.vue index f9f4103..d736a62 100644 --- a/src/views/workflows/StartWorkflowView.vue +++ b/src/views/workflows/StartWorkflowView.vue @@ -1,7 +1,6 @@ <script setup lang="ts"> import ParameterSchemaFormComponent from "@/components/parameter-schema/ParameterSchemaFormComponent.vue"; -import type { WorkflowVersion } from "@/client"; -import { ApiError, DocumentationEnum } from "@/client"; +import { ApiError, DocumentationEnum, NextflowVersion } from "@/client"; import { onMounted, reactive, watch } from "vue"; import { useRouter } from "vue-router"; import { Toast } from "bootstrap"; @@ -28,13 +27,11 @@ let errorToast: Toast | null = null; const versionState = reactive<{ // eslint-disable-next-line @typescript-eslint/no-explicit-any parameterSchema?: Record<string, any>; - workflowVersion?: WorkflowVersion; loading: boolean; workflowExecutionError?: string; errorText: string; }>({ parameterSchema: undefined, - workflowVersion: undefined, loading: false, workflowExecutionError: undefined, errorText: "", @@ -128,6 +125,10 @@ onMounted(() => { allow-notes @start-workflow="startWorkflow" :view-mode="viewMode" + :nextflow-version=" + workflowRepository.versionMapping[versionId]?.nextflow_version ?? + NextflowVersion._24_04_2 + " :clowm-info=" workflowRepository.documentationFiles[versionId]?.[ DocumentationEnum.CLOWM_INFO -- GitLab