Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WDL Graph enhancements #3369

Open
6 of 16 tasks
maryvictol opened this issue Sep 13, 2023 · 2 comments
Open
6 of 16 tasks

WDL Graph enhancements #3369

maryvictol opened this issue Sep 13, 2023 · 2 comments
Assignees
Labels
kind/enhancement New feature or request

Comments

@maryvictol
Copy link
Collaborator

maryvictol commented Sep 13, 2023

WDL Graph enhancements:

  • Tasks from imported WDL files should be shown in the list of existing tasks in the Properties > Document Tasks list and Actions > Add Call.

  • It would be useful to show Task's inputs default values in Call (maybe as a hint) if the default value isn't changed in Call.

  • It would be useful to show Workflow's inputs as a white circle in case of input doesn't have value.

  • Input/output should be shown as a blue circle if it has any value independent of its connection to other input/output.

  • Construction .* isn't parsed for the call's output. Replacing call output names with a * should act as a match-all wildcard. (From draft-2 SPEC: The following syntax is deprecated but is still supported to maintain backward compatibility)
    For example: cram2filtered.wdl
    output { FilterVariantTranches.* } gives the error Error parsing wdl script: Line 158, column 29: mismatched input '.' expecting Identifier.

  • [Version 1.0] Compound types created by user using struct should be shown in the Type dropdown for Parameters.

  • Relative import should be supported.

  • [Version draft -2] Parameters specified inside Scatter should be handled as Declarations.

Bugs:

  • Using Call's input parameter in an expression for another input parameter in the same Call gives Unknown dependency issue (?) :
    mitochondria-pipeline.wdl
  • Parameters specified in the Scatter body aren't recognized in the Call outside the scatter body.
    For example: gatk4-rna-best-practices.wdl
scatter (interval in ScatterIntervalList.out) {
        call HaplotypeCaller { ... }
		File HaplotypeCallerOutputVcf = HaplotypeCaller.output_vcf
		File HaplotypeCallerOutputVcfIndex = HaplotypeCaller.output_vcf_index
	}

    call MergeVCFs {
        input:
            input_vcfs = HaplotypeCallerOutputVcf,
            input_vcfs_indexes =  HaplotypeCallerOutputVcfIndex,
            ...
    }

Inputs for call MergeVCFs input_vcfs and input_vcfs_indexes have errors unknown dependency HaplotypeCallerOutputVcf. Did you mean "HaplotypeCallerOutputVcf" (string value)? and unknown dependency HaplotypeCallerOutputVcfIndex. Did you mean "HaplotypeCallerOutputVcfIndex" (string value)? correspondingly.

scatter (unmapped_bam in flowcell_unmapped_bams) {
    ...
    call SamToFastqAndBwaMemAndMba { ... }

    Float mapped_bam_size = size(SamToFastqAndBwaMemAndMba.output_bam, "GB")
   ...
  }

Scatter's Item mapped_bam_size has error unknown dependency SamToFastqAndBwaMemAndMba.output_bam. Did you mean "SamToFastqAndBwaMemAndMba.output_bam" (string value)?

  • Issues for Calls, Scatters, Workflow, etc. aren't shown in the Issues lists for Properties of corresponding entities and in Document Tasks for corresponding Call (they're shown only in the Document issues).
    For example: Exome_Workflow.wdl
  • Revert changes button doesn't work if the graph has issues.

  • [Version draft-2] Error declaration "docker" of task "GetBwaVersion": Value required for Call's, Workflow's input parameters. (for example: PairedEndSingleSampleWf-fc-b37.wdl

  • [Version 1.0] unknown dependency issue when a custom structure nested within another custom structure is used in the parameter value.
    For example: WholeGenomeGermlineSingleSample.wdl

  • [Version 1.0] unknown dependency issue when declaration from if block is used in the parameter value.
    For example: WholeGenomeGermlineSingleSample.wdl
    Workflow output parameters:
    File? output_bam = provided_output_bam
    File? output_bam_index = provided_output_bam_index

@rodichenko
Copy link
Contributor

It would be useful to show Task's inputs default values in Call (maybe as a hint) if the default value isn't changed in Call.

Implemented by 8116851

Tasks from imported WDL files should be shown in the list of existing tasks in the Properties > Document Tasks list and Actions > Add Call.

[Version 1.0] Compound types created by user using struct should be shown in the Type dropdown for Parameters.

Relative import should be supported.

[Version draft -2] Parameters specified inside Scatter should be handled as Declarations.

Implemented by 8cab106

Parameters specified in the Scatter body aren't recognized in the Call outside the scatter body.

Outputs of Calls located inside Scatter aren't recognized in Scatter item expression.

Fixed by 8cab106

@maryvictol
Copy link
Collaborator Author

Relative import should be supported.

@rodichenko
Recursive relative import isn't supported.

rodichenko added a commit that referenced this issue Oct 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants