Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
267 commits
Select commit Hold shift + click to select a range
deebdd2
Make linter happier
itrujnara Oct 10, 2024
eb14c59
Make linter happy about subworkflows
itrujnara Oct 10, 2024
f431750
Change Nextflow version for tests again
itrujnara Oct 10, 2024
85c9529
Update test configs to use resourceLimits
itrujnara Oct 10, 2024
d2858b6
Put resource limits where they should be
itrujnara Oct 10, 2024
e1a6d24
Update conf/test_full.config
itrujnara Oct 10, 2024
a0dd1d7
Add nf-schema utils to modules.json
itrujnara Oct 10, 2024
f102a12
Change resource limits in custom tests to match defaults
itrujnara Oct 10, 2024
eb270c1
Template update for nf-core/tools version 3.0.2
nf-core-bot Oct 11, 2024
98a77b6
Merge pull request #61 from itrujnara/merge-template-3-0-1
itrujnara Oct 14, 2024
33d98d2
Template update for nf-core/tools version 3.0.1
itrujnara Oct 14, 2024
9ffb7ee
Merge template version 3.0.2
itrujnara Oct 14, 2024
4afc381
Correct version of changelog
itrujnara Oct 14, 2024
a9e84e3
Make prettier happy
itrujnara Oct 14, 2024
d711525
Make prettier happy again
itrujnara Oct 14, 2024
2d153fe
Update .github/CONTRIBUTING.md
itrujnara Oct 14, 2024
b0f8e7d
Update CITATIONS.md
itrujnara Oct 14, 2024
43b7529
Merge pull request #63 from itrujnara/dev
itrujnara Oct 14, 2024
26bada9
Split the orthologs subworkflow in preparation for new modules
itrujnara Oct 16, 2024
751f07b
Start adding new sequence fetch scripts
itrujnara Oct 17, 2024
6e390db
Add utilities for list-to-file writing and sequence information
itrujnara Oct 18, 2024
3599094
Tweak OMA and Uniprot sequence fetching to the new design
itrujnara Oct 18, 2024
0ea28c6
Rewrite Ensembl fetching to match the new format
itrujnara Oct 18, 2024
48093f8
Add refseq fetch script
itrujnara Oct 22, 2024
6a5b74f
Change sequence fetch module to OMA specific
itrujnara Oct 22, 2024
52f080a
Add nf-core cat/cat module
itrujnara Nov 4, 2024
3cea4d2
Add module to fetch ensembl idmap
itrujnara Nov 4, 2024
dcb7306
Add module to split IDs by format
itrujnara Nov 4, 2024
309c46f
Add module to fetch ensembl sequences
itrujnara Nov 4, 2024
85925d9
Add module to fetch RefSeq sequences
itrujnara Nov 4, 2024
b71c65a
Update python scripts for sequence management
itrujnara Nov 4, 2024
04f0c38
Add module to fetch Uniprot sequences
itrujnara Nov 4, 2024
15a0cd1
Change main and config for new modules
itrujnara Nov 4, 2024
e63a8cc
Update container for convert_fasta
itrujnara Nov 4, 2024
0eca787
Create get_sequences subworkflow
itrujnara Nov 4, 2024
79cdb0f
Remvoe redundant empty file
itrujnara Nov 4, 2024
e47d07c
Remove irrelevant process from config
itrujnara Nov 4, 2024
b77cee0
Change .gitignore to match template
itrujnara Nov 4, 2024
6b0dc15
Update subworkflows/local/get_sequences.nf
itrujnara Nov 4, 2024
1db0fbf
Update modules/local/fetch_refseq_sequences.nf
itrujnara Nov 4, 2024
6aad2b1
Change channel name for consistency
itrujnara Nov 7, 2024
5324b8a
Remove addressed fixme
itrujnara Nov 7, 2024
abe1807
Make linter happy
itrujnara Nov 7, 2024
ca107f4
Make liner happy again
itrujnara Nov 7, 2024
5102efd
Fix tool version in CI workflow
itrujnara Nov 7, 2024
6591b6b
Add minor Python linting correction
itrujnara Nov 7, 2024
cae681d
Fix typo in Python utils
itrujnara Nov 7, 2024
05bf32b
Merge pull request #67 from itrujnara/dev
JoseEspinosa Nov 8, 2024
95a4f9e
Update config to always output merged FASTA file
itrujnara Nov 11, 2024
ba3242d
Add config for new modules
itrujnara Nov 11, 2024
a65d06b
Fix typo in modules config
itrujnara Nov 11, 2024
9883334
Tweak local modules to match new Nextflow linting
itrujnara Nov 12, 2024
8c68a5a
Add diamond/cluster to modules
itrujnara Nov 12, 2024
d2fd060
Add split_taxids local module
itrujnara Nov 12, 2024
a7fd046
Update modules.json
itrujnara Nov 12, 2024
9eb3807
Add merge_fasta_ids local module
itrujnara Nov 12, 2024
0f8734c
Add merge_ids local subworkflow
itrujnara Nov 12, 2024
d1aaf44
Add new subworkflow to main workflow
itrujnara Nov 12, 2024
8cd0dbd
Add gawk nf-core module
itrujnara Nov 14, 2024
bf07cdc
Remove local module replaced with gawk
itrujnara Nov 14, 2024
88a73d2
Update merge subworkflow to include new modules
itrujnara Nov 14, 2024
9af0a57
Update config for merge_ids modules
itrujnara Nov 14, 2024
157fd78
Add dark mode logo
itrujnara Nov 14, 2024
6c85f78
Add module to filter single-id rows in merge_ids
itrujnara Nov 14, 2024
821d0c1
Add parameter to skip sequence-based merge
itrujnara Nov 15, 2024
900299e
Add versions output in MERGE_IDS
itrujnara Nov 15, 2024
16c8420
Skip online-only subworkflows in offline run
itrujnara Nov 15, 2024
2f83479
Make linter happy
itrujnara Nov 15, 2024
663550a
Fix mismatched braces in main workflow
itrujnara Nov 15, 2024
3e814ac
Add missing config option
itrujnara Nov 15, 2024
a522779
Add hex logo
itrujnara Nov 15, 2024
2732fb0
Merge pull request #68 from itrujnara/dev
itrujnara Nov 15, 2024
16abccd
Add id map to score table module
itrujnara Nov 15, 2024
72eb986
Add "orthologs" to spellchecker
itrujnara Nov 21, 2024
deafe23
Fix mismatched parameter name
itrujnara Nov 21, 2024
da12715
Fix scoring when merging is disabled
itrujnara Nov 21, 2024
532a3ae
Fix group_diamond awk + add comments to config
itrujnara Nov 21, 2024
593ddc1
Tweak score table module to work without id map
itrujnara Nov 21, 2024
b587a8c
Update template version in .nf-core.yml
itrujnara Nov 21, 2024
bb2a389
Remove alignment and phylogeny steps
itrujnara Dec 4, 2024
00a2287
Remove redundant modules and subworkflows
itrujnara Dec 4, 2024
4e7650e
Merge branch 'nf-core:dev' into dev
itrujnara Dec 4, 2024
b0f6453
Update modules/local/make_score_table.nf
itrujnara Dec 5, 2024
b370123
Change argument name in script
itrujnara Dec 5, 2024
f04ec98
Template update for nf-core/tools version 3.1.0
nf-core-bot Dec 12, 2024
9bbb8e8
Fix GET_SEQUENCES output reference issues
itrujnara Dec 17, 2024
28991cc
Remove redundant config entries
itrujnara Dec 17, 2024
1cf5d56
Merge pull request #69 from itrujnara/dev
itrujnara Dec 17, 2024
d89bbbb
Merge branch 'dev' into nf-core-template-merge-3.1.0
itrujnara Dec 17, 2024
9471447
Update settings.json
itrujnara Dec 17, 2024
a0fb477
Update nextflow.config
itrujnara Dec 17, 2024
8bb9f7e
Update nextflow.config
itrujnara Dec 17, 2024
28655b4
Update main.nf
itrujnara Dec 17, 2024
4ae9745
Merge pull request #72 from nf-core/nf-core-template-merge-3.1.0
itrujnara Dec 18, 2024
7774029
Update output paths in modules config
itrujnara Dec 24, 2024
cfdd236
Merge pull request #73 from itrujnara/dev
itrujnara Jan 7, 2025
6c637c3
Add nf-test and first pipeline-level test
itrujnara Jan 8, 2025
da24a15
Add test for offline run
itrujnara Jan 17, 2025
f719efb
Update nftignore to skip more unstable files
itrujnara Jan 17, 2025
28492e8
Draft readme and changelog
itrujnara Jan 17, 2025
d02caf2
Template update for nf-core/tools version 3.1.2
nf-core-bot Jan 20, 2025
08a8b20
Template update for nf-core/tools version 3.2.0
nf-core-bot Jan 27, 2025
d4266d8
Merge branch 'nf-core:dev' into dev
itrujnara Feb 5, 2025
bd83690
Merge branch 'dev' into nf-core-template-merge-3.2.0
itrujnara Feb 5, 2025
f5cbf2a
Add more unstable files to nftignore
itrujnara Feb 5, 2025
1e3fdbc
Fix version file name in default tests
itrujnara Feb 5, 2025
15e3741
Update test snapshot
itrujnara Feb 5, 2025
4061889
Update version file name in default test
itrujnara Feb 17, 2025
1041a84
Merge branch 'dev' of https://github.com/itrujnara/reportho into dev
itrujnara Feb 17, 2025
a99c44a
Tweak bug report and prettierignore to match template
itrujnara Feb 17, 2025
8556db8
Adjust subworkflow version passing for nf-test compliance
itrujnara Feb 17, 2025
a2f2885
Remove unused nf-core modules
itrujnara Feb 17, 2025
70522ab
Change CI to use nf-test
itrujnara Feb 17, 2025
8761de3
Reorder .gitignore to pass lint
itrujnara Feb 17, 2025
7f88076
Update default test snapshot (will be changed later)
itrujnara Feb 17, 2025
cac74ea
Auto-fix files-unchanged lint
itrujnara Feb 17, 2025
64cc551
Update CI workflow to recognize main branch
itrujnara Feb 17, 2025
8a2e2dc
Make linter happy
itrujnara Feb 17, 2025
543a4a8
Merge branch 'TEMPLATE' into dev
itrujnara Feb 17, 2025
4ba70b0
Update linting comment to make linter happy
itrujnara Feb 17, 2025
472955c
Make linter happy again
itrujnara Feb 17, 2025
6a8c2f8
Change branch name back in the pull request template
itrujnara Feb 17, 2025
c54b01d
Change pipeline name in the CI workflow to make it run
itrujnara Feb 17, 2025
cf871ed
Update .github/workflows/ci.yml
itrujnara Feb 18, 2025
0f17508
Revert setup-nf-test version
itrujnara Feb 18, 2025
d6385cc
Set nf-test version in the CI workflow
itrujnara Feb 18, 2025
9be1c23
Add pipeline test tags
itrujnara Feb 18, 2025
e2c0bfd
Merge branch 'dev' of https://github.com/itrujnara/reportho into dev
itrujnara Feb 18, 2025
428c5c9
Update snapshots after code changes
itrujnara Feb 18, 2025
8639a13
Add merge params to schema
itrujnara Mar 25, 2025
e8dca13
Add merge params to config
itrujnara Mar 25, 2025
ac42d1d
Add merge table script and module
itrujnara Mar 25, 2025
e9e80d6
Add new params to DUMP_PARAMS
itrujnara Mar 25, 2025
7f68835
Add config for new modules
itrujnara Mar 25, 2025
6aa8736
Remove obsolete parameters from the report workflow
itrujnara Mar 25, 2025
1dfb231
Add merge table management to the scoring subworkflow
itrujnara Mar 25, 2025
19b6229
Merge branch 'dev' of https://github.com/itrujnara/reportho into dev
itrujnara Mar 25, 2025
8f47efd
Fix test config
itrujnara Mar 25, 2025
7cdad42
Format make_merge_table script
itrujnara Mar 25, 2025
18e9a8e
Add coverage to Diamond config
itrujnara Mar 25, 2025
e6575c0
Fix output file name in MAKE_MERGE_TABLE
itrujnara Mar 25, 2025
88aee40
Restructure input into the report module
itrujnara Mar 25, 2025
49e9546
Handle merge stats in the scoring subworkflow
itrujnara Mar 25, 2025
a92af1d
Fix skipped process bug in SCORE_ORTHOLOGS
itrujnara Mar 25, 2025
f30bd0e
Skip merging in offline test
itrujnara Mar 25, 2025
ea4f080
Update snapshots
itrujnara Mar 25, 2025
3d434c4
Add unstable files to .nftignore
itrujnara Mar 25, 2025
a62be85
Merge pull request #76 from itrujnara/dev
itrujnara Mar 25, 2025
71385ec
Merge branch 'dev' into nf-core-template-merge-3.2.0
itrujnara Mar 25, 2025
660884e
Merge pull request #75 from nf-core/nf-core-template-merge-3.2.0
itrujnara Mar 25, 2025
e47d566
Update tube map for 1.1.0
itrujnara Mar 25, 2025
9076b80
Fix legend text alignment in tube map
itrujnara Mar 26, 2025
7f2c064
Tweak merge results publishing in modules config
itrujnara Mar 26, 2025
8402906
Update output.md to describe the new structure
itrujnara Mar 26, 2025
47637a0
Update container version in the report module
itrujnara Mar 26, 2025
db50799
Add merging info to usage.md
itrujnara Mar 26, 2025
50c4f0e
Add version name and description to the changelog
itrujnara Mar 26, 2025
b12c334
Add intro to usage.md
itrujnara Mar 26, 2025
c582f91
Update container in the report module
itrujnara Mar 26, 2025
d331ead
Update test snapshot
itrujnara Mar 26, 2025
578a68c
Ignore unstable files in nf-test
itrujnara Mar 26, 2025
5b3f5ed
changed labels and reduced resources for modules for online query
alessiovignoli Mar 26, 2025
cb6d271
Ignore one more file
itrujnara Mar 26, 2025
f2506c2
Merge pull request #83 from itrujnara/dev
itrujnara Mar 26, 2025
084539d
added array config for temporary hotfix, testfull conf now runs all o…
alessiovignoli Mar 26, 2025
cce9142
tested reduced resource requests on sequence query processes
alessiovignoli Mar 26, 2025
47f5fc1
Add merge information to MultiQC report
itrujnara Mar 27, 2025
533e17a
Add contributors
itrujnara Mar 27, 2025
9f652e5
Remove addressed todos
itrujnara Mar 27, 2025
ba3025c
Update test snapshots
itrujnara Mar 27, 2025
aa615c0
updated usage-md for array profile description, fixed linting indenta…
alessiovignoli Mar 27, 2025
6c0ab46
Merge branch 'dev' into improve_resource_request
alessiovignoli Mar 27, 2025
95ba600
fix prettier try_1
alessiovignoli Mar 27, 2025
44f132b
Merge pull request #84 from alessiovignoli/improve_resource_request
alessiovignoli Mar 27, 2025
119664c
Merge branch 'dev' into dev
itrujnara Mar 27, 2025
5782cdd
Ignore unstable MultiQC files
itrujnara Mar 27, 2025
9691ad8
Merge branch 'dev' of https://github.com/itrujnara/reportho into dev
itrujnara Mar 27, 2025
f2b2188
Merge pull request #85 from itrujnara/dev
itrujnara Mar 27, 2025
bdea46f
Bump version to 1.1.0
itrujnara Mar 27, 2025
85347ef
Remove superfluous lines from config to make linter happy
itrujnara Mar 27, 2025
bd8dfd2
Add proper release heading to changelog
itrujnara Mar 27, 2025
4ba9b23
Run prettier
itrujnara Mar 27, 2025
55f197b
Update snapshots with new pipeline version
itrujnara Mar 27, 2025
fb4359a
Merge pull request #88 from itrujnara/dev
itrujnara Mar 27, 2025
e412dab
Fix container and conda in split_taxids
itrujnara Mar 28, 2025
f32bf4b
Update software versions in split_id_format
itrujnara Mar 28, 2025
6883b08
Switch fetch_ensembl_idmap to Seqera Containers
itrujnara Mar 28, 2025
dc3309e
Set correct default values for diamond clustering (0-100 instead of 0-1)
itrujnara Mar 28, 2025
2c20807
Update test snapshots
itrujnara Apr 5, 2025
6aea1c2
Update citations with new tools, remove old tools
itrujnara Apr 5, 2025
26aaa42
Add output channel in fetch_ensembl_sequences
itrujnara Apr 5, 2025
07a97bc
Fix Harshil alignment in modules
itrujnara Apr 5, 2025
f0dd1a4
Add documentation to sequence fetch scripts
itrujnara Apr 5, 2025
5e9f516
Remove irrelevant scripts
itrujnara Apr 5, 2025
47bd29c
Fix docstrings to follow PEP-257
itrujnara Apr 5, 2025
0fdf9f1
Merge branch 'nf-core:dev' into dev
itrujnara Apr 5, 2025
85e008a
Fix default values in nextflow.config
itrujnara Apr 5, 2025
3dbb5a9
Update snapshots
itrujnara Apr 12, 2025
88df644
Merge pull request #91 from itrujnara/dev
itrujnara Apr 12, 2025
dd27bc1
Fix spelling in changelog
itrujnara Apr 12, 2025
95cf871
Fix Harshil alignment in the main workflow
itrujnara Apr 12, 2025
db28005
Remove duplicate nf-schema code in nextflow.config
itrujnara Apr 12, 2025
9f8e7f2
Fix data path in test_offline.config
itrujnara Apr 12, 2025
03ec5a2
Merge branch 'nf-core:dev' into dev
itrujnara Apr 12, 2025
40f50b0
Merge pull request #92 from itrujnara/dev
itrujnara Apr 26, 2025
d6e7025
Template update for nf-core/tools version 3.2.1
nf-core-bot Apr 30, 2025
85d90ca
Merge branch 'dev' into nf-core-template-merge-3.2.1
itrujnara Apr 30, 2025
3b255fd
Merge pull request #93 from nf-core/nf-core-template-merge-3.2.1
itrujnara Apr 30, 2025
8c420cd
Template update for nf-core/tools version 3.3.1
nf-core-bot Jun 3, 2025
d4a5373
Update VS Code settings
itrujnara Jun 12, 2025
6602773
Merge branch 'dev' into nf-core-template-merge-3.3.1
itrujnara Jun 12, 2025
6b40911
Merge branch 'dev' into nf-core-template-merge-3.3.1
itrujnara Jun 12, 2025
6c760e9
Apply suggestions from code review
itrujnara Jun 13, 2025
6654485
Update awsfulltest.yml
itrujnara Jun 13, 2025
2d8b0bc
Make linter happy
itrujnara Jun 13, 2025
5316341
Fix rocrate metadata with linter
itrujnara Jun 13, 2025
cb64cbd
Make pre-commit happy
itrujnara Jun 13, 2025
512e8c0
Update nf-test snapshots
itrujnara Jun 16, 2025
ab93845
Update .github/workflows/nf-test.yml
itrujnara Jun 17, 2025
4e46b5a
Merge pull request #94 from nf-core/nf-core-template-merge-3.3.1
itrujnara Jun 17, 2025
4d8afe8
Enable custom configs
itrujnara Jun 17, 2025
4d5aab9
Replace mulled containers with Seqera Containers
itrujnara Jun 17, 2025
e56ecce
Update DIAMOND/CLUSTER module
itrujnara Jun 17, 2025
ef1373b
Update DIAMOND/CLUSTER again
itrujnara Jun 17, 2025
04a3397
Fix nf-test config to skip testing nf-core modules
itrujnara Jun 17, 2025
c06a94a
Update test snapshot after module update
itrujnara Jun 17, 2025
017db56
Merge pull request #95 from itrujnara/dev
itrujnara Jun 17, 2025
0ad4cf1
Update csvtk/join
itrujnara Jun 18, 2025
b130df3
Update csvtk/concat
itrujnara Jun 18, 2025
db20518
Update tests to work correctly with Conda
itrujnara Jun 20, 2025
436e860
Make linter happy
itrujnara Jun 20, 2025
a765013
Change Conda check
itrujnara Jun 20, 2025
3ea35de
Test detecting Conda profile with custom env variable in runners
itrujnara Jun 20, 2025
2f52324
Remove Conda testing from CI
itrujnara Jul 3, 2025
58e8494
Fix rocrate linting
itrujnara Jul 3, 2025
841f398
Merge pull request #96 from itrujnara/dev
itrujnara Jul 3, 2025
70cb955
Template update for nf-core/tools version 3.3.2
nf-core-bot Jul 8, 2025
ce13c17
Merge branch 'dev' into nf-core-template-merge-3.3.2
itrujnara Jul 8, 2025
38c7a25
[automated] Fix code linting
nf-core-bot Jul 8, 2025
45b0ad9
Make linter happy
itrujnara Jul 8, 2025
5e370f9
Update snapshots after multiqc update
itrujnara Jul 8, 2025
26170ae
Merge pull request #98 from nf-core/nf-core-template-merge-3.3.2
itrujnara Jul 8, 2025
3f5d84e
Template update for nf-core/tools version 3.4.1
nf-core-bot Oct 16, 2025
b1b6649
Merge branch 'dev' into nf-core-template-merge-3.4.1
itrujnara Oct 16, 2025
d0ad552
Fix rocrate lint
itrujnara Oct 16, 2025
8407ca3
Update nf-test snapshots
itrujnara Oct 16, 2025
66f1651
Update nf-test snapshots again
itrujnara Oct 17, 2025
e89dbb8
Third time's the charm (update nf-test snapshot)
itrujnara Oct 17, 2025
00f357c
Merge pull request #99 from nf-core/nf-core-template-merge-3.4.1
itrujnara Oct 17, 2025
43d1f6b
Update CHANGELOG for v1.1.0 release
itrujnara Oct 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 14 additions & 14 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
{
"name": "nfcore",
"image": "nfcore/gitpod:latest",
"remoteUser": "gitpod",
"runArgs": ["--privileged"],
"image": "nfcore/devcontainer:latest",

// Configure tool-specific properties.
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Set *default* container specific settings.json values on container create.
"settings": {
"python.defaultInterpreterPath": "/opt/conda/bin/python"
},
"remoteUser": "root",
"privileged": true,

// Add the IDs of extensions you want installed when the container is created.
"extensions": ["ms-python.python", "ms-python.vscode-pylance", "nf-core.nf-core-extensionpack"]
}
"remoteEnv": {
// Workspace path on the host for mounting with docker-outside-of-docker
"LOCAL_WORKSPACE_FOLDER": "${localWorkspaceFolder}"
},

"onCreateCommand": "./.devcontainer/setup.sh",

"hostRequirements": {
"cpus": 4,
"memory": "16gb",
"storage": "32gb"
}
}
13 changes: 13 additions & 0 deletions .devcontainer/setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/usr/bin/env bash

# Customise the terminal command prompt
echo "export PROMPT_DIRTRIM=2" >> $HOME/.bashrc
echo "export PS1='\[\e[3;36m\]\w ->\[\e[0m\\] '" >> $HOME/.bashrc
export PROMPT_DIRTRIM=2
export PS1='\[\e[3;36m\]\w ->\[\e[0m\\] '

# Update Nextflow
nextflow self-update

# Update welcome message
echo "Welcome to the nf-core/reportho devcontainer!" > /usr/local/etc/vscode-dev-containers/first-run-notice.txt
33 changes: 0 additions & 33 deletions .editorconfig

This file was deleted.

26 changes: 13 additions & 13 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# nf-core/reportho: Contributing Guidelines
# `nf-core/reportho`: Contributing Guidelines

Hi there!
Many thanks for taking an interest in improving nf-core/reportho.
Expand All @@ -19,7 +19,7 @@ If you'd like to write some code for nf-core/reportho, the standard workflow is
1. Check that there isn't already an issue about your idea in the [nf-core/reportho issues](https://github.com/nf-core/reportho/issues) to avoid duplicating work. If there isn't one already, please create one so that others know you're working on this
2. [Fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) the [nf-core/reportho repository](https://github.com/nf-core/reportho) to your GitHub account
3. Make the necessary changes / additions within your forked repository following [Pipeline conventions](#pipeline-contribution-conventions)
4. Use `nf-core schema build` and add any new parameters to the pipeline JSON schema (requires [nf-core tools](https://github.com/nf-core/tools) >= 1.10).
4. Use `nf-core pipelines schema build` and add any new parameters to the pipeline JSON schema (requires [nf-core tools](https://github.com/nf-core/tools) >= 1.10).
5. Submit a Pull Request against the `dev` branch and wait for the code to be reviewed and merged

If you're not used to this workflow with git, you can start with some [docs from GitHub](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests) or even their [excellent `git` resources](https://try.github.io/).
Expand All @@ -40,7 +40,7 @@ There are typically two types of tests that run:
### Lint tests

`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.
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 pipelines lint <pipeline-directory>` command.

If any failures or warnings are encountered, please follow the listed URL for more documentation.

Expand All @@ -55,42 +55,42 @@ These tests are run both with the latest available version of `Nextflow` and als

:warning: Only in the unlikely and regretful event of a release happening with a bug.

- On your own fork, make a new branch `patch` based on `upstream/master`.
- On your own fork, make a new branch `patch` based on `upstream/main` or `upstream/master`.
- Fix the bug, and bump version (X.Y.Z+1).
- A PR should be made on `master` from patch to directly this particular bug.
- Open a pull-request from `patch` to `main`/`master` with the changes.

## Getting help

For further information/help, please consult the [nf-core/reportho documentation](https://nf-co.re/reportho/usage) and don't hesitate to get in touch on the nf-core Slack [#reportho](https://nfcore.slack.com/channels/reportho) channel ([join our Slack here](https://nf-co.re/join/slack)).

## Pipeline contribution conventions

To make the nf-core/reportho code and processing logic more understandable for new contributors and to ensure quality, we semi-standardise the way the code and other contributions are written.
To make the `nf-core/reportho` code and processing logic more understandable for new contributors and to ensure quality, we semi-standardise the way the code and other contributions are written.

### Adding a new step

If you wish to contribute a new step, please use the following coding standards:

1. Define the corresponding input channel into your new process from the expected previous process channel
1. Define the corresponding input channel into your new process from the expected previous process channel.
2. Write the process block (see below).
3. Define the output channel if needed (see below).
4. Add any new parameters to `nextflow.config` with a default (see below).
5. Add any new parameters to `nextflow_schema.json` with help text (via the `nf-core schema build` tool).
5. Add any new parameters to `nextflow_schema.json` with help text (via the `nf-core pipelines schema build` tool).
6. Add sanity checks and validation for all relevant parameters.
7. Perform local tests to validate that the new code works as expected.
8. If applicable, add a new test command in `.github/workflow/ci.yml`.
8. If applicable, add a new test in the `tests` directory.
9. Update MultiQC config `assets/multiqc_config.yml` so relevant suffixes, file name clean up and module plots are in the appropriate order. If applicable, add a [MultiQC](https://https://multiqc.info/) module.
10. Add a description of the output files and if relevant any appropriate images from the MultiQC report to `docs/output.md`.

### Default values

Parameters should be initialised / defined with default values in `nextflow.config` under the `params` scope.
Parameters should be initialised / defined with default values within the `params` scope in `nextflow.config`.

Once there, use `nf-core schema build` to add to `nextflow_schema.json`.
Once there, use `nf-core pipelines schema build` to add to `nextflow_schema.json`.

### Default processes resource requirements

Sensible defaults for process resource requirements (CPUs / memory / time) for a process should be defined in `conf/base.config`. These should generally be specified generic with `withLabel:` selectors so they can be shared across multiple processes/steps of the pipeline. A nf-core standard set of labels that should be followed where possible can be seen in the [nf-core pipeline template](https://github.com/nf-core/tools/blob/master/nf_core/pipeline-template/conf/base.config), which has the default process as a single core-process, and then different levels of multi-core configurations for increasingly large memory requirements defined with standardised labels.
Sensible defaults for process resource requirements (CPUs / memory / time) for a process should be defined in `conf/base.config`. These should generally be specified generic with `withLabel:` selectors so they can be shared across multiple processes/steps of the pipeline. A nf-core standard set of labels that should be followed where possible can be seen in the [nf-core pipeline template](https://github.com/nf-core/tools/blob/main/nf_core/pipeline-template/conf/base.config), which has the default process as a single core-process, and then different levels of multi-core configurations for increasingly large memory requirements defined with standardised labels.

The process resources can be passed on to the tool dynamically within the process with the `${task.cpus}` and `${task.memory}` variables in the `script:` block.

Expand All @@ -103,7 +103,7 @@ Please use the following naming schemes, to make it easy to understand what is g

### Nextflow version bumping

If you are using a new feature from core Nextflow, you may bump the minimum required version of nextflow in the pipeline with: `nf-core bump-version --nextflow . [min-nf-version]`
If you are using a new feature from core Nextflow, you may bump the minimum required version of nextflow in the pipeline with: `nf-core pipelines bump-version --nextflow . [min-nf-version]`

### Images and figures

Expand Down
1 change: 0 additions & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ body:

- [nf-core website: troubleshooting](https://nf-co.re/usage/troubleshooting)
- [nf-core/reportho pipeline documentation](https://nf-co.re/reportho/usage)

- type: textarea
id: description
attributes:
Expand Down
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/repo
- [ ] If you've fixed a bug or added code that should be tested, add tests!
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/reportho/tree/master/.github/CONTRIBUTING.md)
- [ ] If necessary, also make a PR on the nf-core/reportho _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository.
- [ ] Make sure your code lints (`nf-core lint`).
- [ ] Make sure your code lints (`nf-core pipelines lint`).
- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`).
- [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir <OUTDIR>`).
- [ ] Usage Documentation in `docs/usage.md` is updated.
Expand Down
69 changes: 69 additions & 0 deletions .github/actions/get-shards/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: "Get number of shards"
description: "Get the number of nf-test shards for the current CI job"
inputs:
max_shards:
description: "Maximum number of shards allowed"
required: true
paths:
description: "Component paths to test"
required: false
tags:
description: "Tags to pass as argument for nf-test --tag parameter"
required: false
outputs:
shard:
description: "Array of shard numbers"
value: ${{ steps.shards.outputs.shard }}
total_shards:
description: "Total number of shards"
value: ${{ steps.shards.outputs.total_shards }}
runs:
using: "composite"
steps:
- name: Install nf-test
uses: nf-core/setup-nf-test@v1
with:
version: ${{ env.NFT_VER }}
- name: Get number of shards
id: shards
shell: bash
run: |
# Run nf-test with dynamic parameter
nftest_output=$(nf-test test \
--profile +docker \
$(if [ -n "${{ inputs.tags }}" ]; then echo "--tag ${{ inputs.tags }}"; fi) \
--dry-run \
--ci \
--changed-since HEAD^) || {
echo "nf-test command failed with exit code $?"
echo "Full output: $nftest_output"
exit 1
}
echo "nf-test dry-run output: $nftest_output"

# Default values for shard and total_shards
shard="[]"
total_shards=0

# Check if there are related tests
if echo "$nftest_output" | grep -q 'No tests to execute'; then
echo "No related tests found."
else
# Extract the number of related tests
number_of_shards=$(echo "$nftest_output" | sed -n 's|.*Executed \([0-9]*\) tests.*|\1|p')
if [[ -n "$number_of_shards" && "$number_of_shards" -gt 0 ]]; then
shards_to_run=$(( $number_of_shards < ${{ inputs.max_shards }} ? $number_of_shards : ${{ inputs.max_shards }} ))
shard=$(seq 1 "$shards_to_run" | jq -R . | jq -c -s .)
total_shards="$shards_to_run"
else
echo "Unexpected output format. Falling back to default values."
fi
fi

# Write to GitHub Actions outputs
echo "shard=$shard" >> $GITHUB_OUTPUT
echo "total_shards=$total_shards" >> $GITHUB_OUTPUT

# Debugging output
echo "Final shard array: $shard"
echo "Total number of shards: $total_shards"
111 changes: 111 additions & 0 deletions .github/actions/nf-test/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
name: "nf-test Action"
description: "Runs nf-test with common setup steps"
inputs:
profile:
description: "Profile to use"
required: true
shard:
description: "Shard number for this CI job"
required: true
total_shards:
description: "Total number of test shards(NOT the total number of matrix jobs)"
required: true
paths:
description: "Test paths"
required: true
tags:
description: "Tags to pass as argument for nf-test --tag parameter"
required: false
runs:
using: "composite"
steps:
- name: Setup Nextflow
uses: nf-core/setup-nextflow@v2
with:
version: "${{ env.NXF_VERSION }}"

- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6
with:
python-version: "3.14"

- name: Install nf-test
uses: nf-core/setup-nf-test@v1
with:
version: "${{ env.NFT_VER }}"
install-pdiff: true

- name: Setup apptainer
if: contains(inputs.profile, 'singularity')
uses: eWaterCycle/setup-apptainer@main

- name: Set up Singularity
if: contains(inputs.profile, 'singularity')
shell: bash
run: |
mkdir -p $NXF_SINGULARITY_CACHEDIR
mkdir -p $NXF_SINGULARITY_LIBRARYDIR

- name: Conda setup
if: contains(inputs.profile, 'conda')
uses: conda-incubator/setup-miniconda@505e6394dae86d6a5c7fbb6e3fb8938e3e863830 # v3
with:
auto-update-conda: true
conda-solver: libmamba
channels: conda-forge
channel-priority: strict
conda-remove-defaults: true

- name: Run nf-test
shell: bash
env:
NFT_WORKDIR: ${{ env.NFT_WORKDIR }}
run: |
nf-test test \
--profile=+${{ inputs.profile }} \
$(if [ -n "${{ inputs.tags }}" ]; then echo "--tag ${{ inputs.tags }}"; fi) \
--ci \
--changed-since HEAD^ \
--verbose \
--tap=test.tap \
--shard ${{ inputs.shard }}/${{ inputs.total_shards }}

# Save the absolute path of the test.tap file to the output
echo "tap_file_path=$(realpath test.tap)" >> $GITHUB_OUTPUT

- name: Generate test summary
if: always()
shell: bash
run: |
# Add header if it doesn't exist (using a token file to track this)
if [ ! -f ".summary_header" ]; then
echo "# 🚀 nf-test results" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "| Status | Test Name | Profile | Shard |" >> $GITHUB_STEP_SUMMARY
echo "|:------:|-----------|---------|-------|" >> $GITHUB_STEP_SUMMARY
touch .summary_header
fi

if [ -f test.tap ]; then
while IFS= read -r line; do
if [[ $line =~ ^ok ]]; then
test_name="${line#ok }"
# Remove the test number from the beginning
test_name="${test_name#* }"
echo "| ✅ | ${test_name} | ${{ inputs.profile }} | ${{ inputs.shard }}/${{ inputs.total_shards }} |" >> $GITHUB_STEP_SUMMARY
elif [[ $line =~ ^not\ ok ]]; then
test_name="${line#not ok }"
# Remove the test number from the beginning
test_name="${test_name#* }"
echo "| ❌ | ${test_name} | ${{ inputs.profile }} | ${{ inputs.shard }}/${{ inputs.total_shards }} |" >> $GITHUB_STEP_SUMMARY
fi
done < test.tap
else
echo "| ⚠️ | No test results found | ${{ inputs.profile }} | ${{ inputs.shard }}/${{ inputs.total_shards }} |" >> $GITHUB_STEP_SUMMARY
fi

- name: Clean up
if: always()
shell: bash
run: |
sudo rm -rf /home/ubuntu/tests/
Loading
Loading