nf-core / nf-core/modules

[FEATURE] STAR handle gzipped files

Open
#1,688 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

wishlist
Dominant language
Nextflow
Stars
429
Forks
1.1k
Avg merge
1d 6h
Merged PRs (30d)
153

Description

Is your feature request related to a problem? Please describe

I'd be cool if we didn't have to include

    withName: STAR_ALIGN {
        ext.args = '--readFilesCommand zcat'
    }
Describe the solution you'd like
    def gzip = reads.name.endsWith(".gz") ? "--readFilesCommand zcat"
    """
    STAR \\
        --genomeDir $index \\
        --readFilesIn $reads  \\
        --runThreadN $task.cpus \\
        --outFileNamePrefix $prefix. \\
        $out_sam_type \\
        $ignore_gtf \\
        $seq_center \\
        $gzip \\
        $args

I can't remember if : is necessary or not in the Elvis operator.

Describe alternatives you've considered
  • Not doing this and leaving it up to users to figure it out.
  • We might want to handle overriding that with args2 maybe or some other method that checks the ext.args for a --readFilesCommand
Additional context

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the STAR_ALIGN module and reading how its command is assembled, including the existing ext.args and args2 handling. Confirm the intended behavior for .gz reads and how an explicit --readFilesCommand override should work; done means gzipped inputs are handled automatically without breaking user overrides.

Written by the indexing model from the issue text.

Assessment

Tech stack
shell
Domain
bioinformatics
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.