diff --git a/README.md b/README.md index 7c6a3645fe39fd101c7f5a07dbbf46f312d69dd5..12b1e482024663a957e4eb687a01ad697af86296 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ On release, automated continuous integration tests run the pipeline on a full-si ## Quick Start -1. Install [`Nextflow`](https://www.nextflow.io/docs/latest/getstarted.html#installation) (`>=21.04.0`) +1. Install [`Nextflow`](https://www.nextflow.io/docs/latest/getstarted.html#installation) (`>=21.10.3`) 2. Install any of [`Docker`](https://docs.docker.com/engine/installation/), [`Singularity`](https://www.sylabs.io/guides/3.0/user-guide/) (you can follow [this tutorial](https://singularity-tutorial.github.io/01-installation/)), [`Podman`](https://podman.io/), [`Shifter`](https://nersc.gitlab.io/development/shifter/how-to-use/) or [`Charliecloud`](https://hpc.github.io/charliecloud/) for full pipeline reproducibility _(you can use [`Conda`](https://conda.io/miniconda.html) both to install Nextflow itself and also to manage software within pipelines. Please only use it within pipelines as a last resort; see [docs](https://nf-co.re/usage/configuration#basic-configuration-profiles))_. diff --git a/lib/WorkflowHic.groovy b/lib/WorkflowHic.groovy index c6945ae2c9956f80f02d4d956b0a9d4f304c3c0f..be8324b62b86f8dbdef3dcea81c4dda7206aa508 100755 --- a/lib/WorkflowHic.groovy +++ b/lib/WorkflowHic.groovy @@ -56,19 +56,11 @@ class WorkflowHic { // private static void genomeExistsError(params, log) { if (params.genomes && params.genome && !params.genomes.containsKey(params.genome)) { -<<<<<<< HEAD - log.error "=============================================================================\n" + - " Genome '${params.genome}' not found in any config files provided to the pipeline.\n" + - " Currently, the available genome keys are:\n" + - " ${params.genomes.keySet().join(", ")}\n" + - "===================================================================================" -======= log.error "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n" + " Genome '${params.genome}' not found in any config files provided to the pipeline.\n" + " Currently, the available genome keys are:\n" + " ${params.genomes.keySet().join(", ")}\n" + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ->>>>>>> TEMPLATE System.exit(1) } } diff --git a/lib/WorkflowMain.groovy b/lib/WorkflowMain.groovy index cafb54c35236256cfd15b259782498b839a340ed..fd70920b4cc9807708cac168f754d1ae661ab073 100755 --- a/lib/WorkflowMain.groovy +++ b/lib/WorkflowMain.groovy @@ -60,12 +60,9 @@ class WorkflowMain { // Print parameter summary log to screen log.info paramsSummaryLog(workflow, params, log) -<<<<<<< HEAD -======= // Check that a -profile or Nextflow config has been provided to run the pipeline NfcoreTemplate.checkConfigProvided(workflow, log) ->>>>>>> TEMPLATE // Check that conda channels are set-up correctly if (params.enable_conda) { Utils.checkCondaChannels(log) @@ -74,12 +71,6 @@ class WorkflowMain { // Check AWS batch settings NfcoreTemplate.awsBatch(workflow, params) -<<<<<<< HEAD - // Check the hostnames against configured profiles - NfcoreTemplate.hostName(workflow, params, log) - -======= ->>>>>>> TEMPLATE // Check input has been provided if (!params.input) { log.error "Please provide an input samplesheet to the pipeline e.g. '--input samplesheet.csv'" diff --git a/modules.json b/modules.json index 4a090fd6e6f1a31b03ba0a8e2fbe9ea1f2633747..53a88ac19cc1c065bb8d6d2f1b1b29040d5ddc44 100644 --- a/modules.json +++ b/modules.json @@ -23,4 +23,4 @@ } } } -} +} \ No newline at end of file diff --git a/modules/nf-core/modules/multiqc/main.nf b/modules/nf-core/modules/multiqc/main.nf deleted file mode 100644 index 1264aac1ebfc902ae6633862472b412cd929656a..0000000000000000000000000000000000000000 --- a/modules/nf-core/modules/multiqc/main.nf +++ /dev/null @@ -1,31 +0,0 @@ -process MULTIQC { - label 'process_medium' - - conda (params.enable_conda ? 'bioconda::multiqc=1.12' : null) - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/multiqc:1.12--pyhdfd78af_0' : - 'quay.io/biocontainers/multiqc:1.12--pyhdfd78af_0' }" - - input: - path multiqc_files - - output: - path "*multiqc_report.html", emit: report - path "*_data" , emit: data - path "*_plots" , optional:true, emit: plots - path "versions.yml" , emit: versions - - when: - task.ext.when == null || task.ext.when - - script: - def args = task.ext.args ?: '' - """ - multiqc -f $args . - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - multiqc: \$( multiqc --version | sed -e "s/multiqc, version //g" ) - END_VERSIONS - """ -} diff --git a/modules/nf-core/modules/multiqc/meta.yml b/modules/nf-core/modules/multiqc/meta.yml deleted file mode 100644 index 6fa891efc2c607fa6e1d081171b1bf2a710443ab..0000000000000000000000000000000000000000 --- a/modules/nf-core/modules/multiqc/meta.yml +++ /dev/null @@ -1,40 +0,0 @@ -name: MultiQC -description: Aggregate results from bioinformatics analyses across many samples into a single report -keywords: - - QC - - bioinformatics tools - - Beautiful stand-alone HTML report -tools: - - multiqc: - description: | - MultiQC searches a given directory for analysis logs and compiles a HTML report. - It's a general use tool, perfect for summarising the output from numerous bioinformatics tools. - homepage: https://multiqc.info/ - documentation: https://multiqc.info/docs/ - licence: ["GPL-3.0-or-later"] -input: - - multiqc_files: - type: file - description: | - List of reports / files recognised by MultiQC, for example the html and zip output of FastQC -output: - - report: - type: file - description: MultiQC report file - pattern: "multiqc_report.html" - - data: - type: dir - description: MultiQC data dir - pattern: "multiqc_data" - - plots: - type: file - description: Plots created by MultiQC - pattern: "*_data" - - versions: - type: file - description: File containing software versions - pattern: "versions.yml" -authors: - - "@abhi18av" - - "@bunop" - - "@drpatelh" diff --git a/nextflow.config b/nextflow.config index edcb3878a573997467f9964f645479fe8aecf62f..2a010be8d32879513280943f75f3a54a11555fd0 100644 --- a/nextflow.config +++ b/nextflow.config @@ -10,14 +10,14 @@ params { // Input options - input = null + input = null // References - genome = null - igenomes_base = 's3://ngi-igenomes/igenomes' - igenomes_ignore = false - chromosome_size = false - restriction_fragments = false + genome = null + igenomes_base = 's3://ngi-igenomes/igenomes' + igenomes_ignore = false + chromosome_size = null + restriction_fragments = null save_reference = false // Mapping @@ -32,7 +32,7 @@ params { min_mapq = 10 // Digestion Hi-C - digestion = false + digestion = null ligation_site = null restriction_site = null digest { @@ -67,7 +67,7 @@ params { // Contact maps save_raw_maps = false bin_size = '1000000' - res_zoomify = false + res_zoomify = null hicpro_maps = false ice_max_iter = 100 ice_filter_low_count_perc = 0.02 diff --git a/nextflow_schema.json b/nextflow_schema.json index ad0cab5329262ca66476703c6f93ca0ca441a811..9aa880757ed6ecc8d684371152194ab365f7ba8f 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -93,27 +93,29 @@ "properties": { "digestion": { "type": "string", - "default": "hindiii", - "description": "Name of restriction enzyme to automatically set the restriction_site and ligation_site options" + "default": null, + "description": "Name of restriction enzyme to automatically set the restriction_site and ligation_site options (hindiii, mboi, dpnii, arima)" }, "restriction_site": { "type": "string", - "default": "'A^AGCTT'", + "default": null, "description": "Restriction motifs used during digestion. Several motifs (comma separated) can be provided." }, "ligation_site": { "type": "string", - "default": "'AAGCTAGCTT", + "default": null, "description": "Expected motif after DNA ligation. Several motifs (comma separated) can be provided." }, "chromosome_size": { "type": "string", + "format": "file-path", "description": "Full path to file specifying chromosome sizes (tab separated with chromosome name and size)`.", "fa_icon": "far fa-file-alt", "help_text": "If not specified, the pipeline will build this file from the reference genome file" }, "restriction_fragments": { "type": "string", + "format": "file-path", "description": "Full path to restriction fragment (bed) file.", "fa_icon": "far fa-file-alt", "help_text": "This file depends on the Hi-C protocols and digestion strategy. If not provided, the pipeline will build it using the --restriction_site option" @@ -214,9 +216,13 @@ "save_interaction_bam": { "type": "boolean", "description": "Save a BAM file where all reads are flagged by their interaction classes" + }, + "save_pairs_intermediates": { + "type": "boolean", + "description": "Save all types of non valid read pairs in distinct output files" } } - }, + }, "contact_maps": { "title": "Contact maps", "type": "object", @@ -257,7 +263,11 @@ "type": "string", "default": "5000", "description": "Maximum resolution to build mcool file" - } + }, + "save_raw_maps": { + "type": "boolean", + "description": "Save raw contact maps" + } } }, "downstream_analysis": { @@ -311,7 +321,7 @@ "description": "Do not run TADs calling" }, "skip_compartments": { - "type": "string", + "type": "boolean", "description": "Do not run compartments calling" }, "skip_balancing": { @@ -527,6 +537,7 @@ { "$ref": "#/definitions/generic_options" }, + { "$ref": "#/definitions/institutional_config_options" }, { @@ -536,4 +547,4 @@ "$ref": "#/definitions/generic_options" } ] -} + }