Skip to content

Commit cd82cce

Browse files
committed
Merge branch 'release/3.8.0'
2 parents 40f72fd + 61518dc commit cd82cce

File tree

14 files changed

+907
-45
lines changed

14 files changed

+907
-45
lines changed

.licenserc.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ header:
8080
- 'tests/htmlcov/'
8181
- '.eggs/'
8282
- 'c++/*.cpp' # not ours, distributed via agreement
83+
- 'nextflow.config'
8384
- 'perl/t/'
8485
- 'perl/rules/'
8586
- 'perl/pm_to_blib'

CHANGES.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
11
# CHANGES
22

3+
## 3.8.0
4+
5+
- Adds `-noflag` option to `pindel.pl` for use cases where flagging needs to be executed separately or not at all.
6+
- Add `-range` option to `pindel_np_from_vcf.pl`
7+
- Creates `bed.gz` using pindel call range instead of legacy `gff3.gz`
8+
- Adds new flag FF021, normal panel filtering using pindel call range
9+
- Legacy normal panel filtering remove variants with any overlap with normal panel, looses larger events that we have more confidence in with longer reads.
10+
- This is not included by default in any flag set
11+
- A different normal panel needs to be constructed to use this (`bed.gz`)
12+
- Nextflow DSL2 worflows
13+
- `pindel_pl` - wraps `pindel.pl`, subworkflow included for later use.
14+
- `np_generation` - Generate a normal panel from a list of input BAMs
15+
- Handles the complete data generation and conversion to bed/gff3.
16+
317
## 3.7.0
418

519
- Corrects counting of BWA reads supporting a pindel call

README.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@ Contents:
2222

2323
- [Docker, Singularity and Dockstore](#docker-singularity-and-dockstore)
2424
- [Dependencies/Install](#dependenciesinstall)
25+
- [Nextflow](#nextflow)
26+
- [Setup personal nextflow](#setup-personal-nextflow)
27+
- [Profiles](#profiles)
28+
- [Workflow entry points](#workflow-entry-points)
29+
- [`pindel_pl`](#pindel_pl)
30+
- [`np_generation`](#np_generation)
31+
- [Sub-workflows](#sub-workflows)
2532
- [Developers](#developers)
2633
- [Updating licence headers](#updating-licence-headers)
2734
- [Code changes](#code-changes)
@@ -68,6 +75,98 @@ are installed into the target area.
6875

6976
Please be aware that this expects basic C compilation libraries and tools to be available.
7077

78+
## Nextflow
79+
80+
Initial Nextflow bindings for cgpPindel.
81+
82+
### Setup personal nextflow
83+
84+
If you don't have a central nextflow install this will get you running with a limited environment:
85+
86+
```bash
87+
# seems silly but a python venv is a nice way to handle this during dev
88+
python3 -m venv .venv
89+
source .venv/bin/activate
90+
# compute head nodes may need you to limit Java accessing all memory
91+
export NXF_OPTS="-Xms500M -Xmx2G"
92+
curl get.nextflow.io | bash
93+
mv nextflow .venv/bin/.
94+
```
95+
96+
If you have any issues installing refer to Nextflow documentation, not the issue tracker for this repo.
97+
98+
### Profiles
99+
100+
Refer to nextflow for an explanation of profiles. The following are available:
101+
102+
- Job management
103+
- local
104+
- spawned jobs use execution host
105+
- lsf
106+
- spawned jobs are submitted via `bsub`
107+
- Execution method
108+
- `<none>`
109+
- Expects to find programs in `PATH`
110+
- singularity
111+
- Provide image file via `-with-singularity [singularity image]`
112+
- docker
113+
- Provide image via `-with-docker [docker image]`
114+
115+
For example to run on a LSF farm with singularity the profile would be:
116+
117+
```
118+
... -profile lsf,singularity ...
119+
```
120+
121+
While native install with lsf would be:
122+
123+
```
124+
... -profile lsf ...
125+
```
126+
127+
### Workflow entry points
128+
129+
There are 2 top level entry points:
130+
131+
```
132+
... -entry pindel_pl ...
133+
# or
134+
... -entry np_generation ...
135+
```
136+
137+
#### `pindel_pl`
138+
139+
Executes a tumour/normal paired analysis.
140+
141+
CPU and memory are controlled via `nextflow.config`, configs are additive, see nextflow documentation.
142+
143+
For the workflow options run:
144+
145+
```
146+
nextflow -entry pindel_pl --help
147+
```
148+
149+
#### `np_generation`
150+
151+
Executes pindel with a "dummy" tumour for a file listing of input BAMs.
152+
153+
CPU and memory are controlled via `nextflow.config`, configs are additive, see nextflow documentation.
154+
155+
For the workflow options run:
156+
157+
```
158+
nextflow -entry np_generation --help
159+
```
160+
161+
### Sub-workflows
162+
163+
The nextflow code has been implemented with DSL2 so that the workflows can be composed into larger components.
164+
165+
The items above can be addressed for this purpose via:
166+
167+
- `subwf_pindel_pl`
168+
- `subwf_np_gen`
169+
71170
## Developers
72171

73172
Please use `pre-commit` on this project. You can install to `$HOME/bin` via:

0 commit comments

Comments
 (0)