Skip to content

Commit 9b5fd10

Browse files
Merge pull request #57 from nf-core/dev
2.1.0 release
2 parents 9ed7c7b + 0420389 commit 9b5fd10

Some content is hidden

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

60 files changed

+799
-441
lines changed

.github/workflows/awsfulltest.yml

Lines changed: 10 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -4,44 +4,23 @@ name: nf-core AWS full size tests
44
# It runs the -profile 'test_full' on AWS batch
55

66
on:
7-
pull_request:
8-
branches:
9-
- main
10-
- master
117
workflow_dispatch:
128
pull_request_review:
139
types: [submitted]
10+
release:
11+
types: [published]
1412

1513
jobs:
1614
run-platform:
1715
name: Run AWS full tests
18-
# run only if the PR is approved by at least 2 reviewers and against the master branch or manually triggered
19-
if: github.repository == 'nf-core/pairgenomealign' && github.event.review.state == 'approved' && github.event.pull_request.base.ref == 'master' || github.event_name == 'workflow_dispatch'
16+
# run only if the PR is approved by at least 2 reviewers and against the master/main branch or manually triggered
17+
if: github.repository == 'nf-core/pairgenomealign' && github.event.review.state == 'approved' && (github.event.pull_request.base.ref == 'master' || github.event.pull_request.base.ref == 'main') || github.event_name == 'workflow_dispatch'
2018
runs-on: ubuntu-latest
2119
steps:
22-
- name: Get PR reviews
23-
uses: octokit/request-action@v2.x
24-
if: github.event_name != 'workflow_dispatch'
25-
id: check_approvals
26-
continue-on-error: true
27-
with:
28-
route: GET /repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/reviews?per_page=100
29-
env:
30-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
31-
32-
- name: Check for approvals
33-
if: ${{ failure() && github.event_name != 'workflow_dispatch' }}
34-
run: |
35-
echo "No review approvals found. At least 2 approvals are required to run this action automatically."
36-
exit 1
37-
38-
- name: Check for enough approvals (>=2)
39-
id: test_variables
40-
if: github.event_name != 'workflow_dispatch'
20+
- name: Set revision variable
21+
id: revision
4122
run: |
42-
JSON_RESPONSE='${{ steps.check_approvals.outputs.data }}'
43-
CURRENT_APPROVALS_COUNT=$(echo $JSON_RESPONSE | jq -c '[.[] | select(.state | contains("APPROVED")) ] | length')
44-
test $CURRENT_APPROVALS_COUNT -ge 2 || exit 1 # At least 2 approvals are required
23+
echo "revision=${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'release') && github.sha || 'dev' }}" >> "$GITHUB_OUTPUT"
4524
4625
- name: Launch workflow via Seqera Platform
4726
uses: seqeralabs/action-tower-launch@v2
@@ -51,12 +30,12 @@ jobs:
5130
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
5231
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
5332
compute_env: ${{ secrets.TOWER_COMPUTE_ENV }}
54-
revision: ${{ github.sha }}
55-
workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/pairgenomealign/work-${{ github.sha }}
33+
revision: ${{ steps.revision.outputs.revision }}
34+
workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/pairgenomealign/work-${{ steps.revision.outputs.revision }}
5635
parameters: |
5736
{
5837
"hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}",
59-
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/pairgenomealign/results-${{ github.sha }}"
38+
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/pairgenomealign/results-${{ steps.revision.outputs.revision }}"
6039
}
6140
profiles: test_full
6241

.github/workflows/ci.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,5 +83,6 @@ jobs:
8383
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
8484

8585
- name: "Run pipeline with test data ${{ matrix.NXF_VER }} | ${{ matrix.test_name }} | ${{ matrix.profile }}"
86+
continue-on-error: ${{ matrix.NXF_VER == 'latest-everything' }}
8687
run: |
8788
nextflow run ${GITHUB_WORKSPACE} -profile ${{ matrix.test_name }},${{ matrix.profile }} --outdir ./results

.nf-core.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
lint:
22
files_unchanged:
33
- assets/nf-core-pairgenomealign_logo_light.png
4-
- docs/images/nf-core-pairgenomealign_logo_light.png
5-
- docs/images/nf-core-pairgenomealign_logo_dark.png
6-
nf_core_version: 3.2.0
4+
nf_core_version: 3.2.1
75
repository_type: pipeline
86
template:
97
author: charles-plessy

CHANGELOG.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,38 @@
33
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
44
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
55

6+
## [v2.1.0](https://github.com/nf-core/pairgenomealign/releases/tag/2.1.0) "Goya champuru" - [May 16th 2025]
7+
8+
### `Added`
9+
10+
- New `--dotplot_filter` paramater to produce extra alignment plots where small off-diagonal signal is filtered out ([#35](https://github.com/nf-core/pairgenomealign/issues/35)).
11+
- New `--dotplot_width`, `--dotplot_height` and `--dotplot_font_size` parameters to control alignment plot size ([#38](https://github.com/nf-core/pairgenomealign/issues/38)).
12+
13+
### `Fixed`
14+
15+
- In alignment plots, contig names are now written with a nice scalable font instead of being pixellised ([#44](https://github.com/nf-core/pairgenomealign/issues/44)).
16+
- Conforms to nf-core template version 3.2.1 ([#54](https://github.com/nf-core/pairgenomealign/pull/54)).
17+
- Removed some old linting exceptions.
18+
- Removed the `gfastats` modules, which was actually not used.
19+
- Make sure the subworkflows collect all module versions.
20+
- Fix plot IDs for comptatibility with MultiQC 1.28.
21+
22+
### `Parameters`
23+
24+
| Old parameter | New parameter |
25+
| ------------- | --------------------- |
26+
| | `--dotplot_filter` |
27+
| | `--dotplot_font_size` |
28+
| | `--dotplot_height` |
29+
| | `--dotplot_width` |
30+
31+
### `Dependencies`
32+
33+
| Dependency | Old version | New version |
34+
| ---------- | ----------- | ----------- |
35+
| `LAST` | 1608 | 1611 |
36+
| `MultiQC` | 1.27 | 1.28 |
37+
638
## [v2.0.0](https://github.com/nf-core/pairgenomealign/releases/tag/2.0.0) "Naga imo" - [February 5th, 2025]
739

840
### `Breaking changes`

assets/multiqc_config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
report_comment: >
2-
This report has been generated by the <a href="https://github.com/nf-core/pairgenomealign/releases/tag/2.0.0"
2+
This report has been generated by the <a href="https://github.com/nf-core/pairgenomealign/releases/tag/2.1.0"
33
target="_blank">nf-core/pairgenomealign</a> analysis pipeline. For information about
4-
how to interpret these results, please see the <a href="https://nf-co.re/pairgenomealign/2.0.0/docs/output"
4+
how to interpret these results, please see the <a href="https://nf-co.re/pairgenomealign/2.1.0/docs/output"
55
target="_blank">documentation</a>.
66
report_section_order:
77
"nf-core-pairgenomealign-methods-description":
233 Bytes
Loading

conf/modules.config

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ process {
7777
withName: 'LAST_DOTPLOT' {
7878
// The number one cause of failure is absence of alignments.
7979
errorStrategy = { task.exitStatus in (130..145) ? 'retry' : task.exitStatus == 1 ? 'ignore' : 'finish' }
80-
ext.args = { "--rot2=h --sort2=3 --strands2=1 ${params.dotplot_options}" }
80+
ext.args = { "--rot2=h --sort2=3 --strands2=1 --width=${params.dotplot_width} --height=${params.dotplot_height} --fontsize=${params.dotplot_font_size} ${params.dotplot_options}" }
8181
}
8282

8383
withName: 'ALIGNMENT_DOTPLOT_O2O' {
@@ -96,6 +96,19 @@ process {
9696
ext.prefix = { "${meta.id}.m2m_plt" }
9797
}
9898

99+
withName: 'ALIGNMENT_DOTPLOT_O2O_FLT' {
100+
ext.prefix = { "${meta.id}.o2o_plt_filtered" }
101+
}
102+
withName: 'ALIGNMENT_DOTPLOT_M2O_FLT' {
103+
ext.prefix = { "${meta.id}.m2o_plt_filtered" }
104+
}
105+
withName: 'ALIGNMENT_DOTPLOT_O2M_FLT' {
106+
ext.prefix = { "${meta.id}.o2m_plt_filtered" }
107+
}
108+
withName: 'ALIGNMENT_DOTPLOT_M2M_FLT' {
109+
ext.prefix = { "${meta.id}.m2m_plt_filtered" }
110+
}
111+
99112
withName: 'MULTIQC' {
100113
ext.args = { params.multiqc_title ? "--title \"$params.multiqc_title\"" : '' }
101114
publishDir = [

conf/test.config

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,9 @@ params {
2929
target = params.pipelines_testdata_base_path + 'modules/data/genomics/sarscov2/genome/genome.fasta'
3030
lastal_args = '-C2' // Remove -D1e9 because the virus genomes are so small.
3131

32+
// Also test aligmnment export
33+
export_aln_to = 'sam'
34+
3235
// Genome references
3336
genome = 'R64-1-1'
3437
}

docs/output.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ Genomes are aligned witn [`lastal`](https://gitlab.com/mcfrith/last/-/blob/main/
6060

6161
</details>
6262

63-
Dot plots representing the pairwise genome alignments, produced with the [`last-dotplot`](https://gitlab.com/mcfrith/last/-/blob/main/doc/last-dotplot.rst) tool. In the one-to-one alignment example below, the `hg38` human genome (_target_) is represented on the horizontal axis and a monkey genopme (_Macaca mulatta_ accession number `GCA\_003339765.3`) on the vertical axis (_query_). Regions containing unknown (`N`) sequences are on pink background. Forward (+/+) alignments are plotted in red and reverse (+/– or –/+) in blue. _Target_ (human) contigs are displayed in their original order. _Query_ contigs (monkey) are reordered and possibly reverse-complemented to diagonalise the plot as much as possible. The names of reverse-complemented contigs are printed in blue.
63+
Dot plots are representing the pairwise genome alignments and produced with the [`last-dotplot`](https://gitlab.com/mcfrith/last/-/blob/main/doc/last-dotplot.rst) tool. By default, their maximal width is fixed to aproximately 1000 pixels, so that the _target_ genome is always represented at the same scale in all plots. In the one-to-one alignment example below, the `hg38` human genome (_target_) is represented on the horizontal axis and a monkey genopme (_Macaca mulatta_ accession number `GCA\_003339765.3`) on the vertical axis (_query_). Regions containing unknown (`N`) sequences are on pink background. Forward (+/+) alignments are plotted in red and reverse (+/– or –/+) in blue. _Target_ (human) contigs are displayed in their original order. _Query_ contigs (monkey) are reordered and possibly reverse-complemented to diagonalise the plot as much as possible. The names of reverse-complemented contigs are printed in blue.
6464

6565
![Example of a dot-plot produced by the pipeline after aligning human and macaque genomes](images/Homo_sapiens_GCA_000001405.29_GRCh38.p14___Macaca_mulatta_GCA_003339765.3.o2o_plt.png "Human–Monkey comparison")
6666

modules.json

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,57 +7,52 @@
77
"nf-core": {
88
"assemblyscan": {
99
"branch": "master",
10-
"git_sha": "666652151335353eef2fcd58880bcef5bc2928e1",
11-
"installed_by": ["modules"]
12-
},
13-
"gfastats": {
14-
"branch": "master",
15-
"git_sha": "666652151335353eef2fcd58880bcef5bc2928e1",
10+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
1611
"installed_by": ["modules"]
1712
},
1813
"last/dotplot": {
1914
"branch": "master",
20-
"git_sha": "b651d72024027c922b5014aec80add091df63831",
15+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
2116
"installed_by": ["modules"]
2217
},
2318
"last/lastal": {
2419
"branch": "master",
25-
"git_sha": "b651d72024027c922b5014aec80add091df63831",
20+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
2621
"installed_by": ["modules"]
2722
},
2823
"last/lastdb": {
2924
"branch": "master",
30-
"git_sha": "b651d72024027c922b5014aec80add091df63831",
25+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
3126
"installed_by": ["modules"]
3227
},
3328
"last/mafconvert": {
3429
"branch": "master",
35-
"git_sha": "b651d72024027c922b5014aec80add091df63831",
30+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
3631
"installed_by": ["modules"]
3732
},
3833
"last/mafswap": {
3934
"branch": "master",
40-
"git_sha": "b651d72024027c922b5014aec80add091df63831",
35+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
4136
"installed_by": ["modules"]
4237
},
4338
"last/split": {
4439
"branch": "master",
45-
"git_sha": "b651d72024027c922b5014aec80add091df63831",
40+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
4641
"installed_by": ["modules"]
4742
},
4843
"last/train": {
4944
"branch": "master",
50-
"git_sha": "29a99284f30fa0c5fd0f5dca192c94b80de0be30",
45+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
5146
"installed_by": ["modules"]
5247
},
5348
"multiqc": {
5449
"branch": "master",
55-
"git_sha": "f0719ae309075ae4a291533883847c3f7c441dad",
50+
"git_sha": "7b50cb7be890e4b28cffb82e438cc6a8d7805d3f",
5651
"installed_by": ["modules"]
5752
},
5853
"seqtk/cutn": {
5954
"branch": "master",
60-
"git_sha": "666652151335353eef2fcd58880bcef5bc2928e1",
55+
"git_sha": "05954dab2ff481bcb999f24455da29a5828af08d",
6156
"installed_by": ["modules"]
6257
}
6358
}

0 commit comments

Comments
 (0)