Skip to content

Commit 5f3dbe1

Browse files
nvnieuwkmvheetve
andauthored
Release 0.3.0 (#124)
* Birth of a pipeline (#2) * cleaned up the code and docs before starting * cleaned up the github actions * cleaned some more code * removed unused pipeline code * added an easily adjustable input checker * removed some CI * added the variant callers * linting * tests update * ci update * linting * linting * linting * turned off actions * added read counts + delly updates * added scatter count to delly call * added versions and multiqc * updated the manta workflow * updated the whamg workflow * added versions to whamg * added some additional test data * updated the test data * updated the test data * updated the test data * updated the test data * overal updates and improvements * small updates * small updates * metrics part 1 * metrics part 2 * Module evidence qc (#3) * make bincov matrix part 1 * added ploidy and parts of calcmedcov * added WGD * removed delly and added a reheader to MANTA * added all code to the module (some parts are still broken) * small updates * small ploidy matrix fix * small updates to evidenceQC + re-added delly * Module gather batch evidence (#4) * added groundwork for the module * added groundwork for the module * more work done * removed commented lines * Continue module gather batch evidence (#19) * printsvevidence update (not done yet) * restructured the pipeline to match nf-core v2.6 * updated module paths * some small "improvements" * Template update for nf-core/tools version 2.6 * additional fixes to the template * removed wrong file * Added clarifying comments to GSE * updated some of the modules to 4.3.0.0 * fixed some issues caused by gatk4.3.0.0 * latest additions * Refactoring (#20) * refactored gather sample evidence * refactor the rest * New series of fixes and features (#21) * update whamg * update local tests * updated whamg officially * updated whamg + fixed svtk standardize * small work on scramble (still no correct data for this tool) * updated schema * improved whamg bed file integration * added a merge vcfs subworkflow * small fix * update test config * added the samplesheet validation and conversion script * hotfix dev test (#22) * Add smoove & tests (#23) * Template update for nf-core/tools version 2.6 * hotfix dev test * fixed a lot of issues * added smoove * updated the schema * fix samplesheet and schema * add better outdir folders * add tests * tests fix * fix secrets * fix typo * add more tests * add template yml * Template update for nf-core/tools version 2.7.2 * fixes after template merge * linting * more linting * even more linting * black * Refactor the pipeline to prepare for subworkflow export to nf-core (#24) * refactored the pipeline * remove unused modules * removed unused workflows * Add gridss (#25) * refactored the pipeline * remove unused modules * removed unused workflows * add gridss * add stub to local modules * fix stubs * fully add gridss * add tests * copy fix? * add gridss test to ci * exclude gridss vcfs from metrics (not supported) * update min nextflow version to fix caching issue * update gridss * remove TODOs [no ci] * Add genotyping (#26) * update scattering * update delly * bump commit * add --output_callers parameter * small fix to --output_callers * fix schema and test config * removed reheadering from manta * update bcftools/sort * update bcftools/sort * update headers after jasmine merge * small fix * finished genotyping * fix for paragraph/multigrmpy * updated the samplesheet conversion * removed some unused modules * add merging of samples from the same family * removed scattering from whamg * Updated jasmine (added support for bgzip to the module) * fix prettier * fix tests * fix tests again and remove black CI * add linting ci to nf-core.yml * Adopted SVINSSEQ as uniform ins sequence info key * disabled whamg for now * add missing format header * add patch for delly * fix header typo * remove local test profile * updated test profiles and added big tests * add delly args * add new args to schema and config * Add annotation + viola + join checks + cleanup (#29) * add join checks * fix delly mismatches * Added viola * fix header issues in single caller runs * header fix? * appease eclint * add stub to reverse_bed * fix for gridss? * appease eclint again! * typo * fix permissions * fix shebang * fix shebang again * disable gridss * fix tests * remove old code from gatk-sv * Add VEP to the pipeline * add some QOL parameters * update tests * QOL changes (variables and joins) * disable scattering for delly * remove unused gatk modules * update modules * made BED files optional * add metro map and update readme * forgot to save svg * fix linting * fix vep test * free up CI space? * use another cache for vep * edit PosCon3 samplesheet_big.csv (#30) * Add bcftools sort (#31) * add join checks * fix delly mismatches * Added viola * fix header issues in single caller runs * header fix? * appease eclint * add stub to reverse_bed * fix for gridss? * appease eclint again! * typo * fix permissions * fix shebang * fix shebang again * disable gridss * fix tests * remove old code from gatk-sv * Add VEP to the pipeline * add some QOL parameters * update tests * QOL changes (variables and joins) * disable scattering for delly * remove unused gatk modules * update modules * made BED files optional * add metro map and update readme * forgot to save svg * fix linting * fix vep test * free up CI space? * use another cache for vep * add bcftools sort * fix smoove output (#33) * fix smoove output * update according to other modules * Fully implement annotation (#35) * Template update for nf-core/tools version 2.6 * Template update for nf-core/tools version 2.7.2 * first steps * fully implement the annotation * update test * offer a lamb to the linting gods * bug fix * offer a virgin to the linting gods (hope this is enough) * Add dynamic VCFanno config creation * go on a pilgrimage to the mountain of the linting gods and make a blood sacrifice * fix and update annotate test to stub * update vep container on stub runs * add postannotations support to the configs * simplified the vcfanno config code and made it smarter * added new fields from the annotsv vcf to the default configs * added a param for the default annotsv file name * fix small bug with param * fix small bug with param * Add all default configs * sacrificing my firstborn child to the linting gods * Moved the unused configs to a separate folder * update configs * update vep config * add option to annotate on small variants with AnnotSV (real test files should still be added) * Remove unused VEP parameters * fix issues * add tests for small variants vcfs * add an option to also output the annotsv outputs * Merge wrongly placed commits (#40) * fixes for big tests * metro map update * Template update for nf-core/tools version 2.8 * black linting * update modules * update modules * fix local modules * bump * eclint * update genome in docs * update vcfanno configs retina and rpe * fix rpe bed file in config * Cnv support (#50) * Template update for nf-core/tools version 2.6 * Template update for nf-core/tools version 2.7.2 * first steps * fully implement the annotation * update test * offer a lamb to the linting gods * bug fix * offer a virgin to the linting gods (hope this is enough) * Add dynamic VCFanno config creation * go on a pilgrimage to the mountain of the linting gods and make a blood sacrifice * fix and update annotate test to stub * update vep container on stub runs * add postannotations support to the configs * simplified the vcfanno config code and made it smarter * added new fields from the annotsv vcf to the default configs * added a param for the default annotsv file name * fix small bug with param * fix small bug with param * Add all default configs * sacrificing my firstborn child to the linting gods * Moved the unused configs to a separate folder * update configs * update vep config * add option to annotate on small variants with AnnotSV (real test files should still be added) * Remove unused VEP parameters * fix issues * add tests for small variants vcfs * add an option to also output the annotsv outputs * Merge wrongly placed commits (#40) * fixes for big tests * metro map update * Template update for nf-core/tools version 2.8 * black linting * update modules * update modules * fix local modules * bump * eclint * update genome in docs * update vcfanno configs retina and rpe * fix rpe bed file in config * adjust test to new data * remove unused data from workflows * remove simple event annotation * update modules config * remove unused modules * fix compile error * another compile error * remove comments in config * guess what! another compile error * small fixes to annotsv * update viola * circumvent a annotsv bug * add gridss genotyping * filter out variants with 0/0 genotype from gridss * move ref variants filtering to before annotsv * update tests * fix linting and add meta to references * black * install expansionhunter * fix merge conflict issues * fix linting * fix config * fix stub * add expansionhunter * some concurrency debugging * add nf-validation support * revert to using linkedhashmap for now * fix jasmine issue * update tests * fix typos * fix linting * there you go editorconfig * let's make it pretty * update nf-test config * fix even more tests * add concat output and fix tests * fix schema * now be nice please * i'm pretty again * update big test samplesheet [no ci] * fix max_time pattern [no ci] * add bcftools sort to single runs * only apply viola on gridss VCFs and change prefixes * remove unused comment [no ci] * fix input pattern * improve the efficiency of viola * black * added a sort step to gridss * updated the gridss label * patch gridss module * remove estimate_read_length * remove unused code * small typo * add -ends to vcfanno * add full test config * fix full test description * update samplesheet * add exists tags to the samplesheet schema * specify advised resources for gridss * possible fix for gridss OOM? * remove code duplication * remove an unused parameter * added a check for callers support being higher than the amount of sv callers * update metro map * increase gridss memory * try to optimize gridss part 2 * try to optimize gridss part 3 * oops * oops 2 * oops 3 * update to advised amounts * increase viola time * discourage the use of gridss for now * typo * linting fix * rename SV subworkflow * fix expansionhunter catalog and add qdnaseq ref * add qdnaseq * add a check for the qdnaseq reference * fixed some issues with qdnaseq * add cram merging and index creation * update resources for qdnaseq * update resources for qdnaseq * update resources for qdnaseq * fix resources qdnaseq * add wisecondorx * updated the metro map * fix background of metro map * update resolution * update resolution * remove old samplesheet conversion script * moved available callers to a groovy script * removed the manual check for file exists (now fully uses nf-validation) * fix a bug with concat when a cnv caller has been supplied * added some comments for the last fix * update optional input handling * fix small issue with annotsv annotations * fix a no process matching selector warning * revert last changes * temp fix for warning * improve vep cache handling + update modules * typo * fix container declaration * fix for manta issue? * undo last commit * version bump expansionhunter * added support for manta configs * made qdnaseq references gender specific * update manta resources * add contig input to manta * moved the contigs file creation to the manta subwf * fix vep params in schema * fix linting with no template update * fix nf-test tests * fix eclint * fix eclint * change gender to sex * typo * added the sex arg to expansionhunter * fix nf-test config for v0.8.0 * revert nf-test to 0.7.3 * prettier * set default sex to female instead of male * fix tests samplesheet * Fix vep container issue (#52) * add dynamic container fetching for vep * linting fix * moved the function to the process itself * fix conda issue * eclint * fix params schema * fix linting * fix for vep issue? * fix for missing singularity container * Add filtering on annotations + fix linting (#55) * Add filtering on annotations * fix linting * begone trailing whitespace * add annotation filter to test * CNV VCFs (#58) * add vcf creation to wisecondorx * add qdnaseq vcfs * update tests * add a simple qdnaseq filter * small fix in the wisecondorx config * small naming fix * add jasmine * fix for config? * fix tests * prettier * fix tests again * fix output logic * fix jasmine + add annotation * eclint * more output logic fixes * eclint (again) * more output logic fixes * fix cnv outputs * remove obsolete if statement * fix issue with meta joining * Family merging (#61) * add vcf creation to wisecondorx * add qdnaseq vcfs * update tests * add a simple qdnaseq filter * small fix in the wisecondorx config * small naming fix * add jasmine * fix for config? * fix tests * prettier * fix tests again * fix output logic * fix jasmine + add annotation * eclint * more output logic fixes * eclint (again) * more output logic fixes * fix cnv outputs * remove obsolete if statement * fix issue with meta joining * add family name to the samplesheet and meta * changes to jasmine subwf + add family merging subwf * add correct reheadering * add family merging (does not work rn) * some more work * fix repeat VCF error * add z-score to VCF header * small fixes to sex defining * Add proper testing + fix some issues found (#64) * add vcf creation to wisecondorx * add qdnaseq vcfs * update tests * add a simple qdnaseq filter * small fix in the wisecondorx config * small naming fix * add jasmine * fix for config? * fix tests * prettier * fix tests again * fix output logic * fix jasmine + add annotation * eclint * more output logic fixes * eclint (again) * more output logic fixes * fix cnv outputs * remove obsolete if statement * fix issue with meta joining * add family name to the samplesheet and meta * changes to jasmine subwf + add family merging subwf * add correct reheadering * add family merging (does not work rn) * some more work * fix repeat VCF error * first commit * add z-score to VCF header * small fixes to sex defining * add test for bam_cnv_calling * test bam_prepare_samtools * test bam_repeat_estimation_expansionhunter * test bam_sv_calling * test bam_variant_calling_delly * test bam_variant_calling_gridss * test bam_variant_calling_manta * test bam_variant_calling_qdnaseq * test bam_variant_calling_smoove * test bam_variant_calling_wisecondorx * uniformize config * test vcf_annotate_vep_annotsv_vcfanno * test vcf_concat_bcftools * test vcf_merge_callers_jasmine * fix header * update vep annotations * oops * add gnomad to vep * revert vep container changes * add sift * fix merge crams with families * fix join duplication for replicates * fully test jasmine family merge * uniformize tests * fix duplication glitch * add pipeline tests for callers * add families tests * add duplicates tests * remove old tests and add new tests to ci * fix linting * use nf-core dev for linting * update minimum nextflow version * revert nf-core version to latest * upload artifacts * fix artifacts * only upload nf-test folder * fix artifact again? * fix artifact again? * fix artifact again? * prettier * only get artifacts on failure * only get artifacts on failure * only get artifacts on failure * fix qdnaseq test * set nf-test to v0.8.1 * try to fix permission errors * update family jasmine tests * small clarification in the header * Fix annotsv TCL error (#69) * add vcf creation to wisecondorx * add qdnaseq vcfs * update tests * add a simple qdnaseq filter * small fix in the wisecondorx config * small naming fix * add jasmine * fix for config? * fix tests * prettier * fix tests again * fix output logic * fix jasmine + add annotation * eclint * more output logic fixes * eclint (again) * more output logic fixes * fix cnv outputs * remove obsolete if statement * fix issue with meta joining * add family name to the samplesheet and meta * changes to jasmine subwf + add family merging subwf * add correct reheadering * add family merging (does not work rn) * some more work * fix repeat VCF error * first commit * add z-score to VCF header * small fixes to sex defining * add test for bam_cnv_calling * test bam_prepare_samtools * test bam_repeat_estimation_expansionhunter * test bam_sv_calling * test bam_variant_calling_delly * test bam_variant_calling_gridss * test bam_variant_calling_manta * test bam_variant_calling_qdnaseq * test bam_variant_calling_smoove * test bam_variant_calling_wisecondorx * uniformize config * test vcf_annotate_vep_annotsv_vcfanno * test vcf_concat_bcftools * test vcf_merge_callers_jasmine * fix header * update vep annotations * oops * add gnomad to vep * revert vep container changes * add sift * fix merge crams with families * fix join duplication for replicates * fully test jasmine family merge * uniformize tests * fix duplication glitch * add pipeline tests for callers * add families tests * add duplicates tests * remove old tests and add new tests to ci * fix linting * use nf-core dev for linting * update minimum nextflow version * revert nf-core version to latest * upload artifacts * fix artifacts * only upload nf-test folder * fix artifact again? * fix artifact again? * fix artifact again? * prettier * only get artifacts on failure * only get artifacts on failure * only get artifacts on failure * fix qdnaseq test * set nf-test to v0.8.1 * try to fix permission errors * update family jasmine tests * split annotsv input files by svtype and merge them back * small clarification in the header * fix bcftools concat issue * fix linting * don't lint .prettierignore * Add Svync standardization + other fixes (#72) * add vcf creation to wisecondorx * add qdnaseq vcfs * update tests * add a simple qdnaseq filter * small fix in the wisecondorx config * small naming fix * add jasmine * fix for config? * fix tests * prettier * fix tests again * fix output logic * fix jasmine + add annotation * eclint * more output logic fixes * eclint (again) * more output logic fixes * fix cnv outputs * remove obsolete if statement * fix issue with meta joining * add family name to the samplesheet and meta * changes to jasmine subwf + add family merging subwf * add correct reheadering * add family merging (does not work rn) * some more work * fix repeat VCF error * first commit * add z-score to VCF header * small fixes to sex defining * add test for bam_cnv_calling * test bam_prepare_samtools * test bam_repeat_estimation_expansionhunter * test bam_sv_calling * test bam_variant_calling_delly * test bam_variant_calling_gridss * test bam_variant_calling_manta * test bam_variant_calling_qdnaseq * test bam_variant_calling_smoove * test bam_variant_calling_wisecondorx * uniformize config * test vcf_annotate_vep_annotsv_vcfanno * test vcf_concat_bcftools * test vcf_merge_callers_jasmine * fix header * update vep annotations * oops * add gnomad to vep * revert vep container changes * add sift * fix merge crams with families * fix join duplication for replicates * fully test jasmine family merge * uniformize tests * fix duplication glitch * add pipeline tests for callers * add families tests * add duplicates tests * remove old tests and add new tests to ci * fix linting * use nf-core dev for linting * update minimum nextflow version * revert nf-core version to latest * upload artifacts * fix artifacts * only upload nf-test folder * fix artifact again? * fix artifact again? * fix artifact again? * prettier * only get artifacts on failure * only get artifacts on failure * only get artifacts on failure * fix qdnaseq test * set nf-test to v0.8.1 * try to fix permission errors * update family jasmine tests * split annotsv input files by svtype and merge them back * small clarification in the header * fix bcftools concat issue * fix linting * don't lint .prettierignore * deprecate gridss for now * implement delly svync * implement manta svync * implement smoove svync * add better headering to merge callers * small fix to bcftools annotate * fix headers for family merging * remove unused assets * fix some stability issues * simplify expansionhunter handling * reheader with bcftools/reheader again * fix the headering once and for all * add a quick view statement * change view to dump * rename dump tag * extra dump * fix join issue * fix header issues with annotsv * add missing header line for annotsv * fix callers info field * remove some views * add views for hpc debugging * a workaround for double variants in annotsv * a workaround for double variants in annotsv try 2 * remove view statements * fix join error? * fix some linting issues * don't test gridss * drop pinned nf-test version * disable gridss tests for real * fix some tests * update subwf tests * update pipeline tests * fix annotate tests? * fix annotate tests again? * add views to annotation test * fix join error + fix test jasmine * revert join error changes? * another try to fix weird join error * join error fix try 3 * join error fix try 4 * join error fix try 5 * join error fix try 6 * join error fix try 7 * Template v2.13.1 sync + update all modules (#73) * Template update for nf-core/tools version 2.6 * Template update for nf-core/tools version 2.7.2 * update pipeline name * update test-data repo name * update test data config name * update pipeline name * update pipeline name * update nf-core yaml * Template update for nf-core/tools version 2.13.1 * Merge branch 'TEMPLATE' into template-v2.13.1-sync * fix some linting issues * update all modules * fix subwf in modules json * remove unused code * remove unused code * fix jasminesv * fix eclint * prettier * have nf-test in the CI * fix samtools convert stub * prettier * fix tabix outputs + tests * update test snapshots * remove views * rearrange joins * revert last commit * another try 🤞 * another try 2 🤞 * try adding by * fix wrong versions yml * patch bcftools concat * fix bcftools concat versions * fix delly svync config * use midnighter's approach of joining channels * fix linting * fix test * Create beautiful docs with mkdocs (#74) * create beautiful docs * some small fixes * set dev version to beta version * Docs 0.1.0dev (#75) * update docs * fix linting * update description of pipeline * docs-output (#76) * docs * parameters.md adapted * relative links * comments for docs-output PR * parameters.md correction * Last fixes before v0.1.0 release (#77) * fix tests * some esthetic fixes * move the logo in the metro map * made the metro map logo a bit smaller * update parameter docs * bump to version 0.1.0 * update to dev version * update docs building * try to fix the doc building action * merge master into dev * Add keyword shortcuts to the `--callers` parameter (#85) * add more keywords + update docs * update tests * prettier * fix tests * bump wisecondorx to v1.2.6 (#87) * bump wisecondorx to v1.2.6 * add missing arguments to wisecondorx predict * add seed 0 * Fix a wisecondorx arg typo * Fix smoove output when using `--output_callers` (#89) * fix smoove output * fix copy paste error * fix smoove tests * update changelog * Make the workflow pluggable (#91) * make main workflow pluggable * update svync config handling * update bedgovcf config handling * pluggable annotation workflow * update bam_cnv_calling test * update all modules * another wave of module updates * let the pipeline run again * fix last modules * make editorconfig happy * fix tests * Update/fix annotsv + add HPO terms (#93) * make main workflow pluggable * update svync config handling * update bedgovcf config handling * pluggable annotation workflow * update bam_cnv_calling test * update all modules * another wave of module updates * let the pipeline run again * fix last modules * make editorconfig happy * fix tests * update annotsv * add hpo terms * re-add samples to samplesheet * fix the annotsv tests * update changelog * bump version to 0.2.0 * fix wrongly merged conflict in modules.config * fix another weird issue * use latest vep version * bump to 0.3.0dev * remove double nf-validation declaration * Bug/sex determination (#97) * update unknown sex handling * update changelog * prettier * fix a couple linting errors * use nf-test 0.8.4 for now * Ben made me do this (+ nf-schema migration) (#98) * ben made me do this part 1 * ben made me do more stuff * ben made me refactor my configs and tests * i made myself add nf-schema * possible fix for the tests * bump nextflow versions to enable resourceLimits * fix wcx snap * fix qdnaseq snap * readlines > readLines * fix annot snap * update wcx version (#99) * update wcx predict (#100) * update wcx predict * fix snap * fix another snap * update all pipeline snaps * nf-core template 3.2.0 (#101) * Template update for nf-core/tools version 2.6 * Template update for nf-core/tools version 2.7.2 * update pipeline name * update pipeline name * Template update for nf-core/tools version 2.13.1 * Template update for nf-core/tools version 3.2.0 * Merge branch 'TEMPLATE' into template/3.2.0 * make the pipeline run again * fix linting * fix linting * upload artifacts to v4 * bye bye fastqc * set the correct min nextflow version in the ci * Update conf/modules.config * Fix/language server (#102) * Template update for nf-core/tools version 2.6 * Template update for nf-core/tools version 2.7.2 * update pipeline name * update pipeline name * Template update for nf-core/tools version 2.13.1 * Template update for nf-core/tools version 3.2.0 * Merge branch 'TEMPLATE' into template/3.2.0 * make the pipeline run again * fix linting * fix linting * upload artifacts to v4 * bye bye fastqc * set the correct min nextflow version in the ci * update main.nf * Update conf/modules.config * update structural.nf * update bwa index module * update ngsbits samplegender module * update subwfs * update modules.json * update changelog * fix subwf test * fix copy paste error in tests * Feat/workflow output definitions (#103) * Template update for nf-core/tools version 2.6 * Template update for nf-core/tools version 2.7.2 * update pipeline name * update pipeline name * Template update for nf-core/tools version 2.13.1 * Template update for nf-core/tools version 3.2.0 * Merge branch 'TEMPLATE' into template/3.2.0 * make the pipeline run again * fix linting * fix linting * upload artifacts to v4 * bye bye fastqc * set the correct min nextflow version in the ci * update main.nf * Update conf/modules.config * update structural.nf * update bwa index module * update ngsbits samplegender module * update subwfs * update modules.json * update changelog * fix subwf test * fix copy paste error in tests * move to workflow output definitions * fix concat outputs * make output dir dynamic * fix pipeline tests * fix subwf tests * fix pre-commit * change latest-everything to latest-stable * bump minimal nextflow version * use correct version in ci * fix linting * fix manta subwf * fix genomes fetching * improve the efficiency of samplesheet handling (#104) * improve the efficiency of samplesheet handling + add samplesheet to output * fix tests * fix doc building * fix build docs * fix samplesheet copying * use outdir instead of workflow.outputDir * Fix empty jasmine file (#105) * fix empty jasmine file * update changelog * fix pre-commit lint * Detach `vcfanno` from the `--annotate` parameter (#108) * split annotation subwf to make vcfanno runnable without --annotate * update tests * prettier * update changelog * make sure new tests do run * Parallelize the delly execution on SV type (#111) * parallelize delly on SV type * removed the delly_sv_types param * fix concat subwf after module update * fix bam_sv_calling tests * Add BEDPE output (#112) * add bedpe output * add tests for bedpe output * pre-commit * fix family merge tests * Replace `--annotations_filter` with `--filter` (#109) * move the filter outside of the annotations * no longer use permissive overlaps in vcfanno * fix tests * update changelog and docs * fix linting * make toml channel a value channel * Update CHANGELOG.md * sort annotsv VCFs (#114) * sort annotsv VCFs * changelog * add missing contig to header * use fai instead of contig addition * revert last commit * small fix in reheader * small fix in reheader * small fix in reheader * Update worklow output definitions to 25.04.0 (#115) * update workflow-output-defs to 25.04.0 * update tests * update changelog * fix annotsv issues (#116) * fix issue when sex field in samplesheet is empty (#118) * Add GATK4_SVANNOTATE (#117) * fix annotsv issues * add svannotate * update svync for compatilbility * fix test file locations * fix svannotate output name * update changelog * fix tests * Bump annotation module versions (#119) * bump vep * bump svannotate * changelog * latest-everything -> latest-stable * fix annotation tests * Add StrVCTVRE scoring (#120) * rework annotation structure * bump changelog * add StrVCTVRE * pre-commit * add tests * run new test * remove failing ci test * first linting fixes * fix nf-core lint * fix vcfanno usage when no valid toml is present * bump nf-core version * fix vcf_annotate tests * nf-core template v3.5.1 (#122) * Template update for nf-core/tools version 2.6 * Template update for nf-core/tools version 2.7.2 * update pipeline name * update pipeline name * Template update for nf-core/tools version 3.5.1 * fix merge issues * pre-commit * ignore the test_data param * remove stdout from tests and update snapshots * Strict syntax (#123) * Template update for nf-core/tools version 2.6 * Template update for nf-core/tools version 2.7.2 * update pipeline name * update pipeline name * Template update for nf-core/tools version 3.5.1 * fix merge issues * pre-commit * ignore the test_data param * remove stdout from tests and update snapshots * Channel -> channel * remove old gridss and annotsv code * remove old gridss and annotsv code * fix first syntax problems * latest syntax fixes * fix default snap * fix the last language server issues * bump to 0.3.0 * fix release lint * fix changelog * remove a reverted change from the changelog * update metro map * Remove/small variants (#125) * remove a reverted change from the changelog * update metro map * remove `small_variants` key * fix snap and pre-commit * fix some conda declarations * Update all modules (#126) * bump modules * fix workflow to adjust to updated modules * pre-commit * fix repeat flow + more shards * fix tests * sort order of callers in VCF + fix test * fix qdnaseq env * fix environment of fix_callers --------- Co-authored-by: mvheetve <57952494+mvheetve@users.noreply.github.com>
1 parent b4e4028 commit 5f3dbe1

File tree

399 files changed

+15830
-9100
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

399 files changed

+15830
-9100
lines changed

.devcontainer/devcontainer.json

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
{
22
"name": "nfcore",
3-
"image": "nfcore/gitpod:latest",
4-
"remoteUser": "gitpod",
5-
"runArgs": ["--privileged"],
3+
"image": "nfcore/devcontainer:latest",
64

7-
// Configure tool-specific properties.
8-
"customizations": {
9-
// Configure properties specific to VS Code.
10-
"vscode": {
11-
// Set *default* container specific settings.json values on container create.
12-
"settings": {
13-
"python.defaultInterpreterPath": "/opt/conda/bin/python"
14-
},
5+
"remoteUser": "root",
6+
"privileged": true,
157

16-
// Add the IDs of extensions you want installed when the container is created.
17-
"extensions": ["ms-python.python", "ms-python.vscode-pylance", "nf-core.nf-core-extensionpack"]
18-
}
8+
"remoteEnv": {
9+
// Workspace path on the host for mounting with docker-outside-of-docker
10+
"LOCAL_WORKSPACE_FOLDER": "${localWorkspaceFolder}"
11+
},
12+
13+
"onCreateCommand": "./.devcontainer/setup.sh",
14+
15+
"hostRequirements": {
16+
"cpus": 4,
17+
"memory": "16gb",
18+
"storage": "32gb"
1919
}
2020
}

.devcontainer/setup.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/usr/bin/env bash
2+
3+
# Customise the terminal command prompt
4+
echo "export PROMPT_DIRTRIM=2" >> $HOME/.bashrc
5+
echo "export PS1='\[\e[3;36m\]\w ->\[\e[0m\\] '" >> $HOME/.bashrc
6+
export PROMPT_DIRTRIM=2
7+
export PS1='\[\e[3;36m\]\w ->\[\e[0m\\] '
8+
9+
# Update Nextflow
10+
nextflow self-update
11+
12+
# Update welcome message
13+
echo "Welcome to the nf-cmgg/structural devcontainer!" > /usr/local/etc/vscode-dev-containers/first-run-notice.txt

.editorconfig

Lines changed: 0 additions & 37 deletions
This file was deleted.

.github/CONTRIBUTING.md

Lines changed: 13 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# nf-cmgg/structural: Contributing Guidelines
1+
# `nf-cmgg/structural`: Contributing Guidelines
22

33
Hi there!
44
Many thanks for taking an interest in improving nf-cmgg/structural.
@@ -16,7 +16,7 @@ If you'd like to write some code for nf-cmgg/structural, the standard workflow i
1616
1. Check that there isn't already an issue about your idea in the [nf-cmgg/structural issues](https://github.com/nf-cmgg/structural/issues) to avoid duplicating work. If there isn't one already, please create one so that others know you're working on this
1717
2. [Fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) the [nf-cmgg/structural repository](https://github.com/nf-cmgg/structural) to your GitHub account
1818
3. Make the necessary changes / additions within your forked repository following [Pipeline conventions](#pipeline-contribution-conventions)
19-
4. Use `nf-core schema build` and add any new parameters to the pipeline JSON schema (requires [nf-core tools](https://github.com/nf-core/tools) >= 1.10).
19+
4. Use `nf-core pipelines schema build` and add any new parameters to the pipeline JSON schema (requires [nf-core tools](https://github.com/nf-core/tools) >= 1.10).
2020
5. Submit a Pull Request against the `dev` branch and wait for the code to be reviewed and merged
2121

2222
If you're not used to this workflow with git, you can start with some [docs from GitHub](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests) or even their [excellent `git` resources](https://try.github.io/).
@@ -37,7 +37,7 @@ There are typically two types of tests that run:
3737
### Lint tests
3838

3939
`nf-core` has a [set of guidelines](https://nf-co.re/developers/guidelines) which all pipelines must adhere to.
40-
To enforce these and ensure that all pipelines stay in sync, we have developed a helper tool which runs checks on the pipeline code. This is in the [nf-core/tools repository](https://github.com/nf-core/tools) and once installed can be run locally with the `nf-core lint <pipeline-directory>` command.
40+
To enforce these and ensure that all pipelines stay in sync, we have developed a helper tool which runs checks on the pipeline code. This is in the [nf-core/tools repository](https://github.com/nf-core/tools) and once installed can be run locally with the `nf-core pipelines lint <pipeline-directory>` command.
4141

4242
If any failures or warnings are encountered, please follow the listed URL for more documentation.
4343

@@ -52,42 +52,38 @@ These tests are run both with the latest available version of `Nextflow` and als
5252

5353
:warning: Only in the unlikely and regretful event of a release happening with a bug.
5454

55-
- On your own fork, make a new branch `patch` based on `upstream/master`.
55+
- On your own fork, make a new branch `patch` based on `upstream/main` or `upstream/master`.
5656
- Fix the bug, and bump version (X.Y.Z+1).
57-
- A PR should be made on `master` from patch to directly this particular bug.
58-
59-
## Getting help
60-
61-
For further information/help, please consult the [nf-core/structural documentation](https://nf-co.re/structural/usage) and don't hesitate to get in touch on the nf-core Slack [#structural](https://nfcore.slack.com/channels/structural) channel ([join our Slack here](https://nf-co.re/join/slack)).
57+
- Open a pull-request from `patch` to `main`/`master` with the changes.
6258

6359
## Pipeline contribution conventions
6460

65-
To make the nf-cmgg/structural code and processing logic more understandable for new contributors and to ensure quality, we semi-standardise the way the code and other contributions are written.
61+
To make the `nf-cmgg/structural` code and processing logic more understandable for new contributors and to ensure quality, we semi-standardise the way the code and other contributions are written.
6662

6763
### Adding a new step
6864

6965
If you wish to contribute a new step, please use the following coding standards:
7066

71-
1. Define the corresponding input channel into your new process from the expected previous process channel
67+
1. Define the corresponding input channel into your new process from the expected previous process channel.
7268
2. Write the process block (see below).
7369
3. Define the output channel if needed (see below).
7470
4. Add any new parameters to `nextflow.config` with a default (see below).
75-
5. Add any new parameters to `nextflow_schema.json` with help text (via the `nf-core schema build` tool).
71+
5. Add any new parameters to `nextflow_schema.json` with help text (via the `nf-core pipelines schema build` tool).
7672
6. Add sanity checks and validation for all relevant parameters.
7773
7. Perform local tests to validate that the new code works as expected.
78-
8. If applicable, add a new test command in `.github/workflow/ci.yml`.
74+
8. If applicable, add a new test in the `tests` directory.
7975
9. Update MultiQC config `assets/multiqc_config.yml` so relevant suffixes, file name clean up and module plots are in the appropriate order. If applicable, add a [MultiQC](https://https://multiqc.info/) module.
8076
10. Add a description of the output files and if relevant any appropriate images from the MultiQC report to `docs/output.md`.
8177

8278
### Default values
8379

84-
Parameters should be initialised / defined with default values in `nextflow.config` under the `params` scope.
80+
Parameters should be initialised / defined with default values within the `params` scope in `nextflow.config`.
8581

86-
Once there, use `nf-core schema build` to add to `nextflow_schema.json`.
82+
Once there, use `nf-core pipelines schema build` to add to `nextflow_schema.json`.
8783

8884
### Default processes resource requirements
8985

90-
Sensible defaults for process resource requirements (CPUs / memory / time) for a process should be defined in `conf/base.config`. These should generally be specified generic with `withLabel:` selectors so they can be shared across multiple processes/steps of the pipeline. A nf-core standard set of labels that should be followed where possible can be seen in the [nf-core pipeline template](https://github.com/nf-core/tools/blob/master/nf_core/pipeline-template/conf/base.config), which has the default process as a single core-process, and then different levels of multi-core configurations for increasingly large memory requirements defined with standardised labels.
86+
Sensible defaults for process resource requirements (CPUs / memory / time) for a process should be defined in `conf/base.config`. These should generally be specified generic with `withLabel:` selectors so they can be shared across multiple processes/steps of the pipeline. A nf-core standard set of labels that should be followed where possible can be seen in the [nf-core pipeline template](https://github.com/nf-core/tools/blob/main/nf_core/pipeline-template/conf/base.config), which has the default process as a single core-process, and then different levels of multi-core configurations for increasingly large memory requirements defined with standardised labels.
9187

9288
The process resources can be passed on to the tool dynamically within the process with the `${task.cpus}` and `${task.memory}` variables in the `script:` block.
9389

@@ -100,7 +96,7 @@ Please use the following naming schemes, to make it easy to understand what is g
10096

10197
### Nextflow version bumping
10298

103-
If you are using a new feature from core Nextflow, you may bump the minimum required version of nextflow in the pipeline with: `nf-core bump-version --nextflow . [min-nf-version]`
99+
If you are using a new feature from core Nextflow, you may bump the minimum required version of nextflow in the pipeline with: `nf-core pipelines bump-version --nextflow . [min-nf-version]`
104100

105101
### Images and figures
106102

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,10 @@ body:
4141
id: system
4242
attributes:
4343
label: System information
44-
description: "* Nextflow version _(eg. 23.10.0)_
45-
44+
description: |
45+
* Nextflow version _(eg. 23.04.0)_
4646
* Hardware _(eg. HPC, Desktop, Cloud)_
4747
* Executor _(eg. slurm, local, awsbatch)_
48-
49-
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud,
50-
or Apptainer)_
51-
48+
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud, or Apptainer)_
5249
* OS _(eg. CentOS Linux, macOS, Linux Mint)_
53-
5450
* Version of nf-cmgg/structural _(eg. 1.1, 1.5, 1.8.2)_
55-
56-
"

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,16 @@ These are the most common things requested on pull requests (PRs).
88
99
Remember that PRs should be made against the dev branch, unless you're preparing a pipeline release.
1010
11-
Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-cmgg/structural/tree/master/.github/CONTRIBUTING.md)
11+
Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-cmgg/structural/tree/main/.github/CONTRIBUTING.md)
1212
-->
1313

1414
## PR checklist
1515

1616
- [ ] This comment contains a description of changes (with reason).
1717
- [ ] If you've fixed a bug or added code that should be tested, add tests!
18-
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-cmgg/structural/tree/master/.github/CONTRIBUTING.md)
19-
- [ ] Make sure your code lints (`nf-core lint`).
20-
- [ ] Ensure the test suite passes (`nf-test test`).
18+
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-cmgg/structural/tree/main/.github/CONTRIBUTING.md)
19+
- [ ] Make sure your code lints (`nf-core pipelines lint`).
20+
- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`).
2121
- [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir <OUTDIR>`).
2222
- [ ] Usage Documentation in `docs/usage.md` is updated.
2323
- [ ] Output Documentation in `docs/output.md` is updated.
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: "Get number of shards"
2+
description: "Get the number of nf-test shards for the current CI job"
3+
inputs:
4+
max_shards:
5+
description: "Maximum number of shards allowed"
6+
required: true
7+
paths:
8+
description: "Component paths to test"
9+
required: false
10+
tags:
11+
description: "Tags to pass as argument for nf-test --tag parameter"
12+
required: false
13+
outputs:
14+
shard:
15+
description: "Array of shard numbers"
16+
value: ${{ steps.shards.outputs.shard }}
17+
total_shards:
18+
description: "Total number of shards"
19+
value: ${{ steps.shards.outputs.total_shards }}
20+
runs:
21+
using: "composite"
22+
steps:
23+
- name: Install nf-test
24+
uses: nf-core/setup-nf-test@v1
25+
with:
26+
version: ${{ env.NFT_VER }}
27+
- name: Get number of shards
28+
id: shards
29+
shell: bash
30+
run: |
31+
# Run nf-test with dynamic parameter
32+
nftest_output=$(nf-test test \
33+
--profile +docker \
34+
$(if [ -n "${{ inputs.tags }}" ]; then echo "--tag ${{ inputs.tags }}"; fi) \
35+
--dry-run \
36+
--ci \
37+
--changed-since HEAD^) || {
38+
echo "nf-test command failed with exit code $?"
39+
echo "Full output: $nftest_output"
40+
exit 1
41+
}
42+
echo "nf-test dry-run output: $nftest_output"
43+
44+
# Default values for shard and total_shards
45+
shard="[]"
46+
total_shards=0
47+
48+
# Check if there are related tests
49+
if echo "$nftest_output" | grep -q 'No tests to execute'; then
50+
echo "No related tests found."
51+
else
52+
# Extract the number of related tests
53+
number_of_shards=$(echo "$nftest_output" | sed -n 's|.*Executed \([0-9]*\) tests.*|\1|p')
54+
if [[ -n "$number_of_shards" && "$number_of_shards" -gt 0 ]]; then
55+
shards_to_run=$(( $number_of_shards < ${{ inputs.max_shards }} ? $number_of_shards : ${{ inputs.max_shards }} ))
56+
shard=$(seq 1 "$shards_to_run" | jq -R . | jq -c -s .)
57+
total_shards="$shards_to_run"
58+
else
59+
echo "Unexpected output format. Falling back to default values."
60+
fi
61+
fi
62+
63+
# Write to GitHub Actions outputs
64+
echo "shard=$shard" >> $GITHUB_OUTPUT
65+
echo "total_shards=$total_shards" >> $GITHUB_OUTPUT
66+
67+
# Debugging output
68+
echo "Final shard array: $shard"
69+
echo "Total number of shards: $total_shards"

.github/actions/nf-test/action.yml

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
name: "nf-test Action"
2+
description: "Runs nf-test with common setup steps"
3+
inputs:
4+
profile:
5+
description: "Profile to use"
6+
required: true
7+
shard:
8+
description: "Shard number for this CI job"
9+
required: true
10+
total_shards:
11+
description: "Total number of test shards(NOT the total number of matrix jobs)"
12+
required: true
13+
paths:
14+
description: "Test paths"
15+
required: true
16+
tags:
17+
description: "Tags to pass as argument for nf-test --tag parameter"
18+
required: false
19+
runs:
20+
using: "composite"
21+
steps:
22+
- name: Setup Nextflow
23+
uses: nf-core/setup-nextflow@v2
24+
with:
25+
version: "${{ env.NXF_VERSION }}"
26+
27+
- name: Set up Python
28+
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6
29+
with:
30+
python-version: "3.14"
31+
32+
- name: Install nf-test
33+
uses: nf-core/setup-nf-test@v1
34+
with:
35+
version: "${{ env.NFT_VER }}"
36+
install-pdiff: true
37+
38+
- name: Setup apptainer
39+
if: contains(inputs.profile, 'singularity')
40+
uses: eWaterCycle/setup-apptainer@main
41+
42+
- name: Set up Singularity
43+
if: contains(inputs.profile, 'singularity')
44+
shell: bash
45+
run: |
46+
mkdir -p $NXF_SINGULARITY_CACHEDIR
47+
mkdir -p $NXF_SINGULARITY_LIBRARYDIR
48+
49+
- name: Conda setup
50+
if: contains(inputs.profile, 'conda')
51+
uses: conda-incubator/setup-miniconda@505e6394dae86d6a5c7fbb6e3fb8938e3e863830 # v3
52+
with:
53+
auto-update-conda: true
54+
conda-solver: libmamba
55+
channels: conda-forge
56+
channel-priority: strict
57+
conda-remove-defaults: true
58+
59+
- name: Run nf-test
60+
shell: bash
61+
env:
62+
NFT_WORKDIR: ${{ env.NFT_WORKDIR }}
63+
run: |
64+
nf-test test \
65+
--profile=+${{ inputs.profile }} \
66+
$(if [ -n "${{ inputs.tags }}" ]; then echo "--tag ${{ inputs.tags }}"; fi) \
67+
--ci \
68+
--changed-since HEAD^ \
69+
--verbose \
70+
--tap=test.tap \
71+
--shard ${{ inputs.shard }}/${{ inputs.total_shards }}
72+
73+
# Save the absolute path of the test.tap file to the output
74+
echo "tap_file_path=$(realpath test.tap)" >> $GITHUB_OUTPUT
75+
76+
- name: Generate test summary
77+
if: always()
78+
shell: bash
79+
run: |
80+
# Add header if it doesn't exist (using a token file to track this)
81+
if [ ! -f ".summary_header" ]; then
82+
echo "# 🚀 nf-test results" >> $GITHUB_STEP_SUMMARY
83+
echo "" >> $GITHUB_STEP_SUMMARY
84+
echo "| Status | Test Name | Profile | Shard |" >> $GITHUB_STEP_SUMMARY
85+
echo "|:------:|-----------|---------|-------|" >> $GITHUB_STEP_SUMMARY
86+
touch .summary_header
87+
fi
88+
89+
if [ -f test.tap ]; then
90+
while IFS= read -r line; do
91+
if [[ $line =~ ^ok ]]; then
92+
test_name="${line#ok }"
93+
# Remove the test number from the beginning
94+
test_name="${test_name#* }"
95+
echo "| ✅ | ${test_name} | ${{ inputs.profile }} | ${{ inputs.shard }}/${{ inputs.total_shards }} |" >> $GITHUB_STEP_SUMMARY
96+
elif [[ $line =~ ^not\ ok ]]; then
97+
test_name="${line#not ok }"
98+
# Remove the test number from the beginning
99+
test_name="${test_name#* }"
100+
echo "| ❌ | ${test_name} | ${{ inputs.profile }} | ${{ inputs.shard }}/${{ inputs.total_shards }} |" >> $GITHUB_STEP_SUMMARY
101+
fi
102+
done < test.tap
103+
else
104+
echo "| ⚠️ | No test results found | ${{ inputs.profile }} | ${{ inputs.shard }}/${{ inputs.total_shards }} |" >> $GITHUB_STEP_SUMMARY
105+
fi
106+
107+
- name: Clean up
108+
if: always()
109+
shell: bash
110+
run: |
111+
sudo rm -rf /home/ubuntu/tests/

0 commit comments

Comments
 (0)