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

Add BISCUIT #186

Closed
wants to merge 64 commits into from
Closed

Add BISCUIT #186

wants to merge 64 commits into from

Conversation

ekushele
Copy link

@ekushele ekushele commented Feb 15, 2021

nf-core/methylseq pull request

This is a continuation-improved PR of this PR: #147

PR checklist

  • This comment contains a description of changes (with reason)
  • Ensure the test suite passes (nextflow run . -profile test,docker).
  • Make sure your code lints (nf-core lint .).
  • Documentation in docs is updated
  • CHANGELOG.md is updated
  • README.md is updated

Learn more about contributing: CONTRIBUTING.md

ekushele and others added 30 commits March 25, 2020 11:40
…ate multiqc accordingly, added picard CollectInsertSizeMetrics and CollectGcBiasMetrics for all aligners, added Samtools sort for bismark aligner. The fasta is assumed to contain the assembly name, not just genome.fa. DOCKERFILE, enviroment.yml, parameters.settings.json, bin/scrape_software_versions.py, conf/base.config, README.md were changed accordingly. Bin/biscuit_QC.sh, bin/setup.sh were added for biscuit_QC step
… Update enviroment.yml to newer version. Change main.nf slightly, on definision of publish output directory
Co-Authored-By: Patrick Hüther <patrick.huether@gmail.com>
Co-Authored-By: Patrick Hüther <patrick.huether@gmail.com>
Co-Authored-By: Patrick Hüther <patrick.huether@gmail.com>
Co-Authored-By: Patrick Hüther <patrick.huether@gmail.com>
Co-Authored-By: Patrick Hüther <patrick.huether@gmail.com>
Co-Authored-By: Patrick Hüther <patrick.huether@gmail.com>
Co-Authored-By: Patrick Hüther <patrick.huether@gmail.com>
Co-Authored-By: Patrick Hüther <patrick.huether@gmail.com>
…d a process to build biscuitQC_assets, and running biscuit_QC.sh and built_biscuit_QC_assets.pl from within bioconda recipe
…d qualimap), fix skip_deduplication for biscuit, change environment.yml file
CHANGELOG.md Outdated Show resolved Hide resolved
CHANGELOG.md Outdated Show resolved Hide resolved
Copy link
Member

@phue phue left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @ekushele,

Nice work 👍 ! I have added a few comments and questions, see below

CHANGELOG.md Outdated Show resolved Hide resolved
bin/epiread_pairedEnd_convertion.cpp Outdated Show resolved Hide resolved
conf/base.config Outdated Show resolved Hide resolved
conf/base.config Outdated Show resolved Hide resolved
docs/usage.md Outdated Show resolved Hide resolved
main.nf Outdated Show resolved Hide resolved
main.nf Outdated Show resolved Hide resolved
main.nf Outdated Show resolved Hide resolved
nextflow.config Outdated Show resolved Hide resolved
nextflow.config Outdated
skip_deduplication = false
non_directional = false
nondirectional_library = false
Copy link
Member

@phue phue Feb 22, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the bismark workflow also has params.non_directional, could reuse that for BISCUIT aswell

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's what I did in the beginning, but then I had a problem witth the nextflow_schema.json file, so I added this and min_coverage (instead of min_depth) for the BISCUIT aligner

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What was the problem? That the parameter can't be in the schema twice and so you have to choose between the Bismark and Biscuit groups?

If so then in other cases I have made a new group at the top called "Common" etc. for parameters like this.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, but there are two parameters: params.non_directional which is common between Bismark and BISCUIT, and params.min_coverage which is common between bwa-meth and BISCUIT.
Would you still do "Common" group for such a case?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah I think so - better to restructure the schema / docs rather than have similar but differently named parameters in my opinion 👍🏻

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done 👍
Though there's a problem in the help message, I don't know how to solve it.
Copying here the "common option" group help message:

common options
  --min_depth                       [integer] Specify a minimum read coverage for MethylDackel to report a methylation call in bwa-meth workflow, or a minimum
                                              read coverage for information extraction from the VCF file to bed file in BISCUIT workflow.
  --non_directional                 [boolean] Run alignment against all four possible strands.

There's a whitespace between "minimum" and "read" and I don't know what causes this problem

Copy link
Member

@ewels ewels left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couple of minor points

main.nf Outdated Show resolved Hide resolved
main.nf Outdated Show resolved Hide resolved
@ewels
Copy link
Member

ewels commented Mar 30, 2021

Hi @ekushele,

I just had a quick look over your PR here and fixed the merge conflicts that had arisen / did a tiny bit of whitespace tidying.

So to recap, where are we this now?

Is that right? I'm trying to work out whether we should try to get this done before the DSL2 conversion of the pipeline (#199). In some ways the DSL2 conversion could actually make things easier - separate containers means less trouble with conflicting conda environment packages. But it will require a substantial rewrite of this code, notably to use centralised DSL2 module wrappers in nf-core/modules. This will need to be done for the DSL2 conversion anyway though, it's just a question of whether we try to get it merged and released prior to this.

Given that the bioconda issue would be solved by DSL2, I'm inclined to do that first. What do you think? Would that be ok?

Phil

@github-actions
Copy link

github-actions bot commented Apr 4, 2021

nf-core lint overall result: Passed ✅ ⚠️

Posted for pipeline commit 26de2f1

+| ✅ 171 tests passed       |+
#| ❔   1 tests were ignored |#
!| ❗   6 tests had warnings |!

❗ Test warnings:

  • conda_env_yaml - Conda dep outdated: conda-forge::python=3.8.8, 3.9.2 available
  • conda_env_yaml - Conda dep outdated: bioconda::samtools=1.11, 1.12 available
  • conda_env_yaml - Conda dep outdated: bioconda::preseq=2.0.3, 3.1.2 available
  • conda_env_yaml - Conda dep outdated: bioconda::multiqc=1.10, 1.10.1 available
  • conda_env_yaml - Conda dep outdated: bioconda::bcftools=1.9, 1.12 available
  • conda_env_yaml - Conda dep outdated: conda-forge::parallel=20201122, 20210222 available

❔ Tests ignored:

  • files_unchanged - File ignored due to lint config: lib/NfcoreSchema.groovy

✅ Tests passed:

Run details

  • nf-core/tools version 1.13.3
  • Run at 2021-04-04 08:06:28

@ekushele
Copy link
Author

ekushele commented Apr 4, 2021

Replying to this: #186 (comment)
@ewels Yes, I think it would be OK

Edit:
@ewels Should I do anything in order to help with the DSL2 conversion or other people work on it?

@ewels ewels added the dsl1 label Nov 8, 2022
@sateeshperi
Copy link
Contributor

closing this in favor of #295

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants