Skip to content

Commit

Permalink
Merge pull request #58 from nf-core/dev
Browse files Browse the repository at this point in the history
Dev > Master
  • Loading branch information
drpatelh authored Nov 5, 2019
2 parents c8d57b5 + a1a7ff2 commit fa1e3f8
Show file tree
Hide file tree
Showing 53 changed files with 2,113 additions and 1,264 deletions.
10 changes: 6 additions & 4 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,9 @@ We try to manage the required tasks for nf-core/atacseq using GitHub issues, you

However, don't be put off by this template - other more general issues and suggestions are welcome! Contributions to the code are even more welcome ;)

> If you need help using or modifying nf-core/atacseq then the best place to ask is the nf-core `atacseq` channel on [Slack](https://nf-core-invite.herokuapp.com/).
> If you need help using or modifying nf-core/atacseq then the best place to ask is on the pipeline channel on [Slack](https://nf-co.re/join/slack/).


## Contribution workflow
If you'd like to write some code for nf-core/atacseq, the standard workflow
Expand All @@ -24,13 +26,13 @@ If you're not used to this workflow with git, you can start with some [basic doc


## Tests
When you create a pull request with changes, [Travis CI](https://travis-ci.org/) will run automatic tests.
When you create a pull request with changes, [Travis CI](https://travis-ci.com/) will run automatic tests.
Typically, pull-requests are only fully reviewed when these tests are passing, though of course we can help out before then.

There are typically two types of tests that run:

### Lint Tests
The nf-core has a [set of guidelines](http://nf-co.re/guidelines) which all pipelines must adhere to.
The nf-core has a [set of guidelines](https://nf-co.re/developers/guidelines) which all pipelines must adhere to.
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.

If any failures or warnings are encountered, please follow the listed URL for more documentation.
Expand All @@ -42,4 +44,4 @@ If there are any failures then the automated tests fail.
These tests are run both with the latest available version of Nextflow and also the minimum required version that is stated in the pipeline code.

## Getting help
For further information/help, please consult the [nf-core/atacseq documentation](https://github.com/nf-core/atacseq#documentation) and don't hesitate to get in touch on the nf-core `atacseq` channel on [Slack](https://nf-core-invite.herokuapp.com/).
For further information/help, please consult the [nf-core/atacseq documentation](https://github.com/nf-core/atacseq#documentation) and don't hesitate to get in touch on the [nf-core/atacseq pipeline channel](https://nfcore.slack.com/channels/atacseq) on [Slack](https://nf-co.re/join/slack/).
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ A clear and concise description of what you expected to happen.
#### Container engine:
- Engine: [e.g. Conda, Docker or Singularity]
- version: [e.g. 1.0.0]
- Image tag: [e.g. nfcore/imcyto:1.0.0]
- Image tag: [e.g. nfcore/atacseq:1.0.0]

#### Additional context
Add any other context about the problem here.
4 changes: 0 additions & 4 deletions .github/markdownlint.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
# Markdownlint configuration file
default: true,
line-length: false
no-multiple-blanks: 0
blanks-around-headers: false
blanks-around-lists: false
header-increment: false
no-duplicate-header:
siblings_only: true
8 changes: 4 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ matrix:

before_install:
# PRs to master are only ok if coming from dev branch
- '[ $TRAVIS_PULL_REQUEST = "false" ] || [ $TRAVIS_BRANCH != "master" ] || ([ $TRAVIS_PULL_REQUEST_SLUG = $TRAVIS_REPO_SLUG ] && [ $TRAVIS_PULL_REQUEST_BRANCH = "dev" ])'
- '[ $TRAVIS_PULL_REQUEST = "false" ] || [ $TRAVIS_BRANCH != "master" ] || ([ $TRAVIS_PULL_REQUEST_SLUG = $TRAVIS_REPO_SLUG ] && ([ $TRAVIS_PULL_REQUEST_BRANCH = "dev" ] || [ $TRAVIS_PULL_REQUEST_BRANCH = "patch" ]))'
# Pull the docker image first so the test doesn't wait for this
- docker pull nfcore/atacseq:dev
# Fake the tag locally so that the pipeline runs properly
# Looks weird when this is :dev to :dev, but makes sense when testing code for a release (:dev to :1.0.1)
- docker tag nfcore/atacseq:dev nfcore/atacseq:1.0.0
- docker tag nfcore/atacseq:dev nfcore/atacseq:1.1.0

install:
# Install Nextflow
Expand All @@ -30,7 +30,7 @@ install:
- sudo apt-get install npm && npm install -g markdownlint-cli

env:
- NXF_VER='0.32.0' # Specify a minimum NF version that should be tested and work
- NXF_VER='19.10.0' # Specify a minimum NF version that should be tested and work
- NXF_VER='' # Plus: get the latest NF version and check that it works

script:
Expand All @@ -39,4 +39,4 @@ script:
# Lint the documentation
- markdownlint ${TRAVIS_BUILD_DIR} -c ${TRAVIS_BUILD_DIR}/.github/markdownlint.yml
# Run the pipeline with the test profile
- nextflow run ${TRAVIS_BUILD_DIR} -profile test,docker
- nextflow run ${TRAVIS_BUILD_DIR} -profile test,docker -ansi-log false
72 changes: 70 additions & 2 deletions CHANGELOG.md
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,4 +1,72 @@
# nf-core/atacseq: Changelog

## v1.0dev - [date]
Initial release of nf-core/atacseq, created with the [nf-core](http://nf-co.re/) template.
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## [1.1.0] - 2019-11-05

### `Added`

* [#35](https://github.com/nf-core/atacseq/issues/35) - Add deepTools plotFingerprint
* [#46](https://github.com/nf-core/atacseq/issues/46) - Missing gene_bed path in igenomes config
* Merged in TEMPLATE branch for automated syncing
* Update template to tools `1.7`
* Add `CITATIONS.md` file
* Capitalised process names
* Add parameters:
* `--seq_center`
* `--trim_nextseq`
* `--fingerprint_bins`
* `--broad_cutoff`
* `--min_reps_consensus`
* `--save_macs_pileup`
* `--skip_diff_analysis`
* `--skip_*` for skipping QC steps

### `Fixed`

* **Change all parameters from `camelCase` to `snake_case` (see [Deprecated](#Deprecated))**
* [#41](https://github.com/nf-core/atacseq/issues/41) - Docs: Add example plot images
* [#44](https://github.com/nf-core/atacseq/issues/44) - Output directory missing: macs2/consensus/deseq2
* [#45](https://github.com/nf-core/atacseq/issues/45) - Wrong x-axis scale for the HOMER: Peak annotation Counts tab plot?
* [#46](https://github.com/nf-core/atacseq/issues/46) - Stage blacklist file in channel properly
* [#50](https://github.com/nf-core/atacseq/issues/50) - HOMER number of peaks does not correspond to found MACS2 peaks
* Fixed bug in UpSetR peak intersection plot
* IGV now uses relative instead of absolute paths
* Smaller logo for completion email
* Renamed all channels to start with `ch_` prefix
* Increase default resource requirements in `base.config`
* Increase process-specific requirements based on user-reported failures

### `Dependencies`

* Update Nextflow `0.32.0` -> `19.10.0`
* Add preseq `2.0.3`
* Add deeptools `3.2.1`
* Add r-xfun `0.3`
* Add gawk `4.2.1`

### `Deprecated`

| Deprecated | Replacement |
|------------------------------|---------------------------|
| `--design` | `--input` |
| `--singleEnd` | `--single_end` |
| `--saveGenomeIndex` | `--save_reference` |
| `--skipTrimming` | `--skip_trimming` |
| `--saveTrimmed` | `--save_trimmed` |
| `--keepMito` | `--keep_mito` |
| `--keepDups` | `--keep_dups` |
| `--keepMultiMap` | `--keep_multi_map` |
| `--skipMergeReplicates` | `--skip_merge_replicates` |
| `--saveAlignedIntermediates` | `--save_align_intermeds` |
| `--narrowPeak` | `--narrow_peak` |

## [1.0.0] - 2019-04-09

### `Added`

Initial release of nf-core/atacseq
Created with version 1.1 of the [nf-core](http://nf-co.re/) template.
100 changes: 100 additions & 0 deletions CITATIONS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
# nf-core/atacseq: Citations

## Pipeline tools

* [Nextflow](https://www.ncbi.nlm.nih.gov/pubmed/28398311/)
> Di Tommaso P, Chatzou M, Floden EW, Barja PP, Palumbo E, Notredame C. Nextflow enables reproducible computational workflows. Nat Biotechnol. 2017 Apr 11;35(4):316-319. doi: 10.1038/nbt.3820. PubMed PMID: 28398311.
* [BWA](https://www.ncbi.nlm.nih.gov/pubmed/19451168/)
> Li H, Durbin R. Fast and accurate short read alignment with Burrows-Wheeler transform. Bioinformatics. 2009 Jul 15;25(14):1754-60. doi: 10.1093/bioinformatics/btp324. Epub 2009 May 18. PubMed PMID: 19451168; PubMed Central PMCID: PMC2705234.
* [BEDTools](https://www.ncbi.nlm.nih.gov/pubmed/20110278/)
> Quinlan AR, Hall IM. BEDTools: a flexible suite of utilities for comparing genomic features. Bioinformatics. 2010 Mar 15;26(6):841-2. doi: 10.1093/bioinformatics/btq033. Epub 2010 Jan 28. PubMed PMID: 20110278; PubMed Central PMCID: PMC2832824.
* [SAMtools](https://www.ncbi.nlm.nih.gov/pubmed/19505943/)
> Li H, Handsaker B, Wysoker A, Fennell T, Ruan J, Homer N, Marth G, Abecasis G, Durbin R; 1000 Genome Project Data Processing Subgroup. The Sequence Alignment/Map format and SAMtools. Bioinformatics. 2009 Aug 15;25(16):2078-9. doi: 10.1093/bioinformatics/btp352. Epub 2009 Jun 8. PubMed PMID: 19505943; PubMed Central PMCID: PMC2723002.
* [BamTools](https://www.ncbi.nlm.nih.gov/pubmed/21493652/)
> Barnett DW, Garrison EK, Quinlan AR, Strömberg MP, Marth GT. BamTools: a C++ API and toolkit for analyzing and managing BAM files. Bioinformatics. 2011 Jun 15;27(12):1691-2. doi: 10.1093/bioinformatics/btr174. Epub 2011 Apr 14. PubMed PMID: 21493652; PubMed Central PMCID: PMC3106182.
* [UCSC tools](https://www.ncbi.nlm.nih.gov/pubmed/20639541/)
> Kent WJ, Zweig AS, Barber G, Hinrichs AS, Karolchik D. BigWig and BigBed: enabling browsing of large distributed datasets. Bioinformatics. 2010 Sep 1;26(17):2204-7. doi: 10.1093/bioinformatics/btq351. Epub 2010 Jul 17. PubMed PMID: 20639541; PubMed Central PMCID: PMC2922891.
* [preseq](https://www.ncbi.nlm.nih.gov/pubmed/23435259/)
> Daley T, Smith AD. Predicting the molecular complexity of sequencing libraries. Nat Methods. 2013 Apr;10(4):325-7. doi: 10.1038/nmeth.2375. Epub 2013 Feb 24. PubMed PMID: 23435259; PubMed Central PMCID: PMC3612374.
* [deepTools](https://www.ncbi.nlm.nih.gov/pubmed/27079975/)
> Ramírez F, Ryan DP, Grüning B, Bhardwaj V, Kilpert F, Richter AS, Heyne S, Dündar F, Manke T. deepTools2: a next generation web server for deep-sequencing data analysis. Nucleic Acids Res. 2016 Jul 8;44(W1):W160-5. doi: 10.1093/nar/gkw257. Epub 2016 Apr 13. PubMed PMID: 27079975; PubMed Central PMCID: PMC4987876.
* [MACS2](https://www.ncbi.nlm.nih.gov/pubmed/18798982/)
> Zhang Y, Liu T, Meyer CA, Eeckhoute J, Johnson DS, Bernstein BE, Nusbaum C, Myers RM, Brown M, Li W, Liu XS. Model-based analysis of ChIP-Seq (MACS). Genome Biol. 2008;9(9):R137. doi: 10.1186/gb-2008-9-9-r137. Epub 2008 Sep 17. PubMed PMID: 18798982; PubMed Central PMCID: PMC2592715.
* [HOMER](https://www.ncbi.nlm.nih.gov/pubmed/20513432/)
> Heinz S, Benner C, Spann N, Bertolino E, Lin YC, Laslo P, Cheng JX, Murre C, Singh H, Glass CK. Simple combinations of lineage-determining transcription factors prime cis-regulatory elements required for macrophage and B cell identities. Mol Cell. 2010 May 28;38(4):576-89. doi: 10.1016/j.molcel.2010.05.004. PubMed PMID: 20513432; PubMed Central PMCID: PMC2898526.
* [featureCounts](https://www.ncbi.nlm.nih.gov/pubmed/24227677/)
> Liao Y, Smyth GK, Shi W. featureCounts: an efficient general purpose program for assigning sequence reads to genomic features. Bioinformatics. 2014 Apr 1;30(7):923-30. doi: 10.1093/bioinformatics/btt656. Epub 2013 Nov 13. PubMed PMID: 24227677.
* [MultiQC](https://www.ncbi.nlm.nih.gov/pubmed/27312411/)
> Ewels P, Magnusson M, Lundin S, Käller M. MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics. 2016 Oct 1;32(19):3047-8. doi: 10.1093/bioinformatics/btw354. Epub 2016 Jun 16. PubMed PMID: 27312411; PubMed Central PMCID: PMC5039924.
* [FastQC](https://www.bioinformatics.babraham.ac.uk/projects/fastqc/)

* [Trim Galore!](https://www.bioinformatics.babraham.ac.uk/projects/trim_galore/)

* [picard-tools](http://broadinstitute.github.io/picard)

* [pysam](https://github.com/pysam-developers/pysam)

* [ataqv](https://github.com/ParkerLab/ataqv)

## R packages

* [R](https://www.R-project.org/)
> R Core Team (2017). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria.
* [DESeq2](https://www.ncbi.nlm.nih.gov/pubmed/25516281/)
> Love MI, Huber W, Anders S. Moderated estimation of fold change and dispersion for RNA-seq data with DESeq2. Genome Biol. 2014;15(12):550. PubMed PMID: 25516281; PubMed Central PMCID: PMC4302049.
* [vsn](https://bioconductor.org/packages/release/bioc/html/vsn.html)
> Wolfgang Huber, Anja von Heydebreck, Holger Sueltmann, Annemarie Poustka and Martin Vingron. Variance Stabilization Applied to Microarray Data Calibration and to the Quantification of Differential Expression. Bioinformatics 18, S96-S104 (2002).
* [UpSetR](https://CRAN.R-project.org/package=UpSetR)
> Nils Gehlenborg (2017). UpSetR: A More Scalable Alternative to Venn and Euler Diagrams for Visualizing Intersecting Sets.
* [ggplot2](https://cran.r-project.org/web/packages/ggplot2/index.html)
> H. Wickham. ggplot2: Elegant Graphics for Data Analysis. Springer-Verlag New York, 2016.
* [reshape2](http://www.jstatsoft.org/v21/i12/)
> Hadley Wickham (2007). Reshaping Data with the reshape Package. Journal of Statistical Software, 21(12), 1-20.
* [scales](https://CRAN.R-project.org/package=scales)
> Hadley Wickham (2018). scales: Scale Functions for Visualization.
* [pheatmap](https://CRAN.R-project.org/package=pheatmap)
> Raivo Kolde (2018). pheatmap: Pretty Heatmaps.
* [lattice](https://cran.r-project.org/web/packages/lattice/index.html)
> Sarkar, Deepayan (2008) Lattice: Multivariate Data Visualization with R. Springer, New York. ISBN 978-0-387-75968-5.
* [RColorBrewer](https://CRAN.R-project.org/package=RColorBrewer)
> Erich Neuwirth (2014). RColorBrewer: ColorBrewer Palettes.
* [optparse](https://CRAN.R-project.org/package=optparse)
> Trevor L Davis (2018). optparse: Command Line Option Parser.
* [xfun](https://CRAN.R-project.org/package=xfun)
> Yihui Xie (2018). xfun: Miscellaneous Functions by 'Yihui Xie'.
## Software packaging/containerisation tools

* [Bioconda](https://www.ncbi.nlm.nih.gov/pubmed/29967506/)
> Grüning B, Dale R, Sjödin A, Chapman BA, Rowe J, Tomkins-Tinch CH, Valieris R, Köster J; Bioconda Team. Bioconda: sustainable and comprehensive software distribution for the life sciences. Nat Methods. 2018 Jul;15(7):475-476. doi: 10.1038/s41592-018-0046-7. PubMed PMID: 29967506.
* [Anaconda](https://anaconda.com)
> Anaconda Software Distribution. Computer software. Vers. 2-2.4.0. Anaconda, Nov. 2016. Web.
* [Singularity](https://www.ncbi.nlm.nih.gov/pubmed/28494014/)
> Kurtzer GM, Sochat V, Bauer MW. Singularity: Scientific containers for mobility of compute. PLoS One. 2017 May 11;12(5):e0177459. doi: 10.1371/journal.pone.0177459. eCollection 2017. PubMed PMID: 28494014; PubMed Central PMCID: PMC5426675.
* [Docker](https://www.docker.com/)
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ This Code of Conduct applies both within project spaces and in public spaces whe

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team on [Slack](https://nf-core-invite.herokuapp.com/). The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team on [Slack](https://nf-co.re/join/slack/). The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.

Expand Down
14 changes: 10 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
FROM nfcore/base
LABEL authors="[email protected]" \
description="Docker image containing all requirements for the nfcore/atacseq pipeline"
FROM nfcore/base:1.7
LABEL authors="Harshil Patel" \
description="Docker image containing all requirements for nf-core/atacseq pipeline"

# Install the conda environment
COPY environment.yml /
RUN conda env create -f /environment.yml && conda clean -a
ENV PATH /opt/conda/envs/nf-core-atacseq-1.0.0/bin:$PATH

# Add conda installation dir to PATH (instead of doing 'conda activate')
ENV PATH /opt/conda/envs/nf-core-atacseq-1.1.0/bin:$PATH

# Dump the details of the installed packages to a file for posterity
RUN conda env export --name nf-core-atacseq-1.1.0 > nf-core-atacseq-1.1.0.yml
Loading

0 comments on commit fa1e3f8

Please sign in to comment.