Commit Graph

16 Commits (master)

Author SHA1 Message Date
Mahesh Binzer-Panchal 233fa70811
Update manual versioning (#1813) 2 years ago
Edmund Miller 5832fbc225
Fix homer/maketagdirectory output collision (#1456)
* fix(homer): Update tagdir to have a prefix

Otherwise they have a naming collision

* test(homer): Update paths

* style(homer): Align ,'s

* chore(homer): Update md5sums
2 years ago
Edmund Miller 27936729f2
Add samtools to homer/maketagdirectory to use bam files (#1437)
* fix(homer): Update dependancies for maketagdirectory

Closes #1363

* test(homer): Add tests for bam usage

* style(homer): Rename meta test

* fix(homer): Update args order and add missing \\

* docs(homer): Add DESeq2 and edgeR

Co-authored-by: FriederikeHanssen <Friederike.hanssen@qbic.uni-tuebingen.de>

* test(homer): Update md5sum

* test(homer): bam => sam

* fix(homer): Use nextflow conda recipe instead of biocontainers with commas

Co-authored-by: FriederikeHanssen <Friederike.hanssen@qbic.uni-tuebingen.de>
2 years ago
Edmund Miller 1fb1801dcb
refactor(homer): Update output path for bedGraph (#1438)
This allow for caching because otherwise it modifies the tag directory input
2 years ago
Edmund Miller 98ed71c8f6
feat(homer): Add pos2bed module (#1435)
* feat(homer): Add pos2bed module

* test(homer): Pass bed format

* test(homer): Add upstream dependencies to avoid regressions

* Update modules/homer/pos2bed/main.nf

Co-authored-by: FriederikeHanssen <Friederike.hanssen@qbic.uni-tuebingen.de>
2 years ago
Edmund Miller e3a5795652
Homer/findpeaks improvements (#1436)
* fix(homer): Update expected file path to improve caching

* docs(homer): Update findpeaks

* test(homer): Add maketagdirectory dependency

Co-authored-by: Robert A. Petit III <robbie.petit@gmail.com>
2 years ago
Matthias Hörtenhuber e745e167c1
Fix formatting in yaml files, add yamllint config (#1279)
* fix yml formatting

* allow fastq.gz and fq.gz as file input, add meta.yml and test

* fix yaml files

* Revert "allow fastq.gz and fq.gz as file input, add meta.yml and test"

This reverts commit 34002d7a7a8c7f7bb4600c3377f35c87849f71a4.

* prettier magic!

* fix comments for yamllint

* remove node version number

* fix linting errors

Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>
2 years ago
Mahesh Binzer-Panchal e20e57f90b
Add when: block (#1261) 2 years ago
Harshil Patel 9d0cad583b
Change syntax from task.ext.suffix to tast.ext.prefix in all modules (#1110)
* Add comment line for consistency

* Remove all functions.nf

* Remove include functions.nf and publishDir options

* Replace options.args3 with task.ext.args3 - 3 modules

* Replace options.args3 with task.ext.args3 - 17 modules

* Replace {task.cpus} with task.cpus

* Replace off on off off off off off off off on off on off on off off off on off off off on on off off off on on off off off off off off off on off off off off on off on on off off off on on on on off off off on off on on off on on off off on on on off on on off on off off off off on off off off on off off on off on off off off on on off on off on off off on off off off on off off off on off off off off on off off off on on on off on on off off on off on on on off on on off on on on off off off off off on on off off on off off off off off on off off on on off on on off on off off off on off off off off on on off on off off on off off on off on off off off off off off off off on on off on off off off.args with

* Add def args = task.ext.args line to all modules in script section

* Replace options.args with args and args_list

* Initialise args2 and args3 properly

* Replace container syntax

* Revert container changes for cellranger/mkref

* Replace getProcessName in all modules

* Replace getSoftwareName in all modules

* Unify modules using VERSION variable

* Replae options.suffix with task.ext.suffix

* Remove NF version restriction for CI

* Bump NF version in README

* Replace task.process.tokenize logic with task.process

* Minor tweaks to unify syntax in tests main.nf

* Add a separate nextflow.config for each module

* Transfer remaining module options to nextflow.config

* Remove addParams from tests main.nf

* Remove TODO statements

* Use -c to import module specific config

* Bump NF version to 21.10.3

* Fix tests for artic/minion

* Fix broken publishDir syntax

* Standardise and fix obvious failing module tests

* Remove kronatools to krona

* Comment out tags in subworkflow test.yml

* Fix failing module tests

* Add consistent indentation to nextflow.config

* Comment out subworklow definitions

* Fix kallistobustools/ref

* Fix rmarkdownnotebook

* Fix jupyternotebook

* Quote task.process

* Add plink2/vcf to pytest_modules.yml

* Remove NF_CORE_MODULES_TEST from pytest CI

* Fix more tests

* Move bacteroides_fragilis to prokaryotes folder

* Fix cooler merge tests

* Fix kallistobustools/count tests

* Fix kallistobustools/ref tests

* Update test_10x_1_fastq_gz file for kallistobustools/count tests

* Fix bcftools/query tests

* Fix delly/call tests

* Fix cooler/zoomify tests

* Fix csvtk/split tests

* Fix gatk4/intervallisttools tests

* Fix gatk4/variantfiltration

* Fix pydamage/filter tests

* Fix test data for unicycler

* Fix gstama/collapse module

* Fix leehom tests

* Fix metaphlan3 tests

* Fix pairtools/select tests

* Update nextflow.config

* Update nextflow.config

* feat: update syntax

* Fix arriba tests

* Fix more failing tests

* Update test syntax

* Remove comments from tests nextflow.config

* Apply suggestions from code review

* Fix kallistobustools/count module

* Update dumpsoftwareversions module

* Update custom/dumpsoftwareversions

* Add args2 to untar module

* Update leftover modules

* Remove last remaining addParams

* Change syntax from task.ext.suffix to tast.ext.prefix

* Change nextflow.config in all tests to use ext.prefix instead of ext.suffix

Co-authored-by: JoseEspinosa <kadomu@gmail.com>
Co-authored-by: Gregor Sturm <mail@gregor-sturm.de>
Co-authored-by: MaxUlysse <max.u.garcia@gmail.com>
3 years ago
Harshil Patel 20d8250d9f
Update all modules to new NF DSL2 syntax (#1099)
* Add comment line for consistency

* Remove all functions.nf

* Remove include functions.nf and publishDir options

* Replace options.args3 with task.ext.args3 - 3 modules

* Replace options.args3 with task.ext.args3 - 17 modules

* Replace {task.cpus} with task.cpus

* Replace off on off off off off off off off on off on off on off off off on off off off on on off off off on on off off off off off off off on off off off off on off on on off off off on on on on off off off on off on on off on on off off on on on off on on off on off off off off on off off off on off off on off on off off off on on off on off on off off on off off off on off off off on off off off off on off off off on on on off on on off off on off on on on off on on off on on on off off off off off on on off off on off off off off off on off off on on off on on off on off off off on off off off off on on off on off off on off off on off on off off off off off off off off on on off on off off off.args with

* Add def args = task.ext.args line to all modules in script section

* Replace options.args with args and args_list

* Initialise args2 and args3 properly

* Replace container syntax

* Revert container changes for cellranger/mkref

* Replace getProcessName in all modules

* Replace getSoftwareName in all modules

* Unify modules using VERSION variable

* Replae options.suffix with task.ext.suffix

* Remove NF version restriction for CI

* Bump NF version in README

* Replace task.process.tokenize logic with task.process

* Minor tweaks to unify syntax in tests main.nf

* Add a separate nextflow.config for each module

* Transfer remaining module options to nextflow.config

* Remove addParams from tests main.nf

* Remove TODO statements

* Use -c to import module specific config

* Bump NF version to 21.10.3

* Fix tests for artic/minion

* Fix broken publishDir syntax

* Standardise and fix obvious failing module tests

* Remove kronatools to krona

* Comment out tags in subworkflow test.yml

* Fix failing module tests

* Add consistent indentation to nextflow.config

* Comment out subworklow definitions

* Fix kallistobustools/ref

* Fix rmarkdownnotebook

* Fix jupyternotebook

* Quote task.process

* Add plink2/vcf to pytest_modules.yml

* Remove NF_CORE_MODULES_TEST from pytest CI

* Fix more tests

* Move bacteroides_fragilis to prokaryotes folder

* Fix cooler merge tests

* Fix kallistobustools/count tests

* Fix kallistobustools/ref tests

* Update test_10x_1_fastq_gz file for kallistobustools/count tests

* Fix bcftools/query tests

* Fix delly/call tests

* Fix cooler/zoomify tests

* Fix csvtk/split tests

* Fix gatk4/intervallisttools tests

* Fix gatk4/variantfiltration

* Fix pydamage/filter tests

* Fix test data for unicycler

* Fix gstama/collapse module

* Fix leehom tests

* Fix metaphlan3 tests

* Fix pairtools/select tests

* Update nextflow.config

* Update nextflow.config

* feat: update syntax

* Fix arriba tests

* Fix more failing tests

* Update test syntax

* Remove comments from tests nextflow.config

* Apply suggestions from code review

* Fix kallistobustools/count module

* Update dumpsoftwareversions module

* Update custom/dumpsoftwareversions

* Add args2 to untar module

* Update leftover modules

* Remove last remaining addParams

Co-authored-by: JoseEspinosa <kadomu@gmail.com>
Co-authored-by: Gregor Sturm <mail@gregor-sturm.de>
Co-authored-by: MaxUlysse <max.u.garcia@gmail.com>
3 years ago
Kevin 3aacd46da2
Backfill software licenses meta (#876)
* backfilled modules with meta.yml that had no license identifier

* harmonized BSD license names

* whitespace linting at modules/unzip/meta.yml:12

* harmonized software from US NIH-NCBI/NIST to 'US-Government-Work'

* Update modules/bcftools/index/meta.yml

`bcftools` is dual-licensed, use associative array to allow for multiple licenses

Co-authored-by: Michael L Heuer <heuermh@acm.org>

Co-authored-by: Michael L Heuer <heuermh@acm.org>
3 years ago
Harshil Patel 49da864287
Update versions key in meta.yml for all modules (#787) 3 years ago
Harshil Patel 7b3315591a
Remove def software lines and emit versions channel as plural (#780)
* Remove def software line

* Replace version with versions in emit statement

* Fix default software names
3 years ago
Gregor Sturm 906577873b
Bulk update modules to use versions.yml (#739)
* New functions.nf

* Convert code to create versions.yml

* Update meta.yml

* update output channel

* Fix more meta.yml

* Manually update remaining modules

* remove superflous echo

* Fix misformatted meta.yml files

* Fix yaml, was list instead of dict

* fix version for bcftools

Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>
3 years ago
Edmund Miller 669fb5caed
Homer Modules (#75)
* feat(homer): Add initial makeTagDirectory

* feat(homer): Add initial findPeaks module

* feat(homer): Update with new options

See 1d30e2c21a

* fix(homer): Correct findpeaks process name

* fix(homer): Takes a bam file instead of bed

* feat(homer): Add initial makeTagDirectory test

* fix(homer): Hardcode genome and configureHomer

I'd like to modularize configureHomer, but I need to figure out how
exactly the genomes work.

* fix(homer): bam => bed

Bam requires samtools to be present, which it's not in this docker image

* feat(homer): Add initial configureHomer script

* ci(homer): Add initial test

* test(homer): Reproducible configuration workaround

- I can't run both tests(one file and two files) at the same time because it breaks
- I can't copy the genome stuff from the configurehomer module because it's read only
- So I can't make the makeTagDirectory module depend on configureHomer

* test(homer): Add placeholder annotatepeaks

The required inputs are necessarily required for all workflows from what
I've used, but I'll need to look at the actual docs

* test(homer): Add missing B.bed

* test(homer): Rename two => groseq

Then all of the various workflows that homer provides can be e2e tested

* feat(homer): Add initial makeUCSCfile module

* test(homer): Add start to makeUCSCfile testing

* chore(homer): Add various cleanups

* test(homer): Rewrite annotatepeaks

Not passing yet

* test(homer): Rewrite configurehomer

* test(homer): Rewrite findpeaks

Still failing

* test(homer): Rewrite makeucscfile

Not passing yet

* test(homer): Rewrite maketagdirectory

All homer modules now follow the new structure. Time to make them pass.

* test(homer): Fix typo for workflow name

* fix(homer): Use correct container

* fix(homer): Accept fasta in maketagdirectory

Apparently all of the homer stuff can just take any old fasta and you
don't need to configure the genome ahead of time with configureHomer

* test(homer): makeTagDirectory passes now

* fix(homer): Update containers in makeucscfile

* test(homer): Rewrite makeucscfile

Takes input from maketagdirectory which is how the module should be used

* fix(homer): Update makeUCSCFile bedgraph path

* test(homer): Update makeucscfile expected output

* fix(homer): Update containers in findpeaks

* fix(homer): Change findpeaks args

The user is just going to have to know what they're doing for now

* test(homer): findPeaks rewrite with tagDir input

* test(homer): Update expected files for findPeaks

And bump filters

* style: Appease editorconfig

* ci: Remove old workflow

* tests(homer): Add md5sums

* test(homer): Add meta test

* style(homer): Capitalize HOMER

* docs(homer): Add maketagdirectory meta.yml

* docs(homer): Add makeucscfile meta.yml

* docs(homer): Add findpeaks meta.yml

* test(homer): Update to new test data standards

* chore: Remove stuff that got revived in the rebase

* chore: software => modules

* test(homer): Update tags

* test(homer): Update annotatepeaks

* ci: Fix uploading of artifacts

GitHub actions doesn't like the / in the tags

* test(homer): Remove annotate md5sum

This is failing and breaking new tests

* test(homer): Use bams instead of beds

* test(homer): Fix meta maketagdirectory

* test(homer): Fix input in all tests

* test(homer): Move back to bed files

Forgot samtools isn't present

* chore(homer): Add TODOs for tests

* test(homer): Add bed format arg

* test(homer): Update md5sums

* test(homer): Fix tags tsvs

* style(homer): Appease nf-core linting

* docs(homer): Be in line with what is in the main.nf file

Co-authored-by: Kevin Menden <kevin.menden@live.com>

Co-authored-by: Kevin Menden <kevin.menden@live.com>
3 years ago
Harshil Patel e937c7950a
Rename software/ directory to modules/ to re-organise module structure (#567)
* Update README

* Rename pytest_software.yml to pytest_modules.yml

* Rename main software directory to modules

* Remove deprecated modules

* Rename tests software to modules

* Replace paths for tests in pytest_modules.yml

* Replace software with modules in Github Actions

* Replace software with modules in main.nf tests

* Rename software to modules in test.yml
3 years ago