Skip to content

Release v0.1.0 draft #8

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

Merged
merged 72 commits into from
Mar 5, 2025
Merged
Show file tree
Hide file tree
Changes from 30 commits
Commits
Show all changes
72 commits
Select commit Hold shift + click to select a range
30edead
Template update for nf-core/tools version 2.13.1
adamrtalbot May 3, 2024
f3cd395
Template re-fixed?
adamrtalbot May 3, 2024
1a558b0
Resolve all the TEMPLATE stuff
adamrtalbot May 3, 2024
317f5f8
Opt-in for FASTQC and MultiQC instead of opt-out
adamrtalbot May 3, 2024
0b76afa
Re-add CHANGELOG details
adamrtalbot May 3, 2024
229e9f2
Revert configuration for modules
adamrtalbot May 8, 2024
e534b0c
Expand stubs to include echoing the Dragen CLI
adamrtalbot May 8, 2024
508ec36
Optional index building based on input params
adamrtalbot May 8, 2024
0ba9671
Merge pull request #3 from seqeralabs/TEMPLATE
adamrtalbot May 8, 2024
4706f66
Remove additional variable
adamrtalbot May 8, 2024
6778b76
Complete optional indexing step
adamrtalbot May 8, 2024
9f7b22f
Update docs and improve consistency
adamrtalbot May 8, 2024
c597665
Apply suggestions from code review
adamrtalbot May 8, 2024
697b8a9
Merge pull request #4 from seqeralabs/optional_build_indexes
adamrtalbot May 8, 2024
16af879
Adds optional sample type, which will run DNA or RNA pipeline only ba…
adamrtalbot May 8, 2024
19d4535
Create single 'DRAGEN' workflow
adamrtalbot May 9, 2024
00568c7
Use branching to selectively run RNA or DNA pipeline
adamrtalbot May 9, 2024
55da40b
Add FASTQC files to MultiQC inputs
adamrtalbot May 9, 2024
60a60a1
Finish up some stuff
adamrtalbot May 9, 2024
bf5a250
Handle multiple FASTQ files per sample better
adamrtalbot May 9, 2024
6e49bbd
DRAGEN process handles a wider variety of inputs correctly
adamrtalbot May 9, 2024
69802ca
Remove transcript quantification because we need transcript models fo…
adamrtalbot May 9, 2024
3119bda
Update docs
adamrtalbot May 9, 2024
505001c
Code alignment
adamrtalbot May 10, 2024
873d5ab
Merge pull request #5 from seqeralabs/optional_sample_type
adamrtalbot May 10, 2024
3fb2f01
Miscellaneous fixes for dev
adamrtalbot May 10, 2024
dec7c14
Update main.nf
adamrtalbot May 10, 2024
709460e
Merge pull request #6 from seqeralabs/misc_fixes
adamrtalbot May 14, 2024
dccb152
Use '?' instead of glob to handle individual FASTQ files better
adamrtalbot May 15, 2024
d2f279b
Merge pull request #7 from seqeralabs/handle_single_fastq_files_better
adamrtalbot May 15, 2024
86797fd
Template update for nf-core/tools version 2.14.1
adamrtalbot May 29, 2024
f7e10f9
Merge branch 'TEMPLATE' into template_update
adamrtalbot Jan 13, 2025
d106949
feat(.nf-core.yml): Update nf-core template YAML
adamrtalbot Jan 13, 2025
13667a3
fixup
adamrtalbot Jan 13, 2025
b03c1d1
fixup
adamrtalbot Jan 13, 2025
12d0800
fixup
adamrtalbot Jan 13, 2025
8ee35a1
fixup
adamrtalbot Jan 13, 2025
92b8c5d
remove manifest.author
adamrtalbot Jan 13, 2025
d015eeb
remove manifest.author
adamrtalbot Jan 13, 2025
ad1dcc7
remove manifest.author
adamrtalbot Jan 13, 2025
659e933
use hyphen in pipeline name
adamrtalbot Jan 13, 2025
a547396
remove manifest.author
adamrtalbot Jan 13, 2025
77c283c
Add contributors
adamrtalbot Jan 13, 2025
68d316e
Add contributors
adamrtalbot Jan 13, 2025
82df52d
tidy before sync
adamrtalbot Jan 13, 2025
a403fc3
.nf-core.yml output current dir
adamrtalbot Jan 13, 2025
c8d9ce5
Template update for nf-core/tools version 3.1.2.dev0
adamrtalbot Jan 13, 2025
7db4521
Merge branch 'TEMPLATE' into template_update
adamrtalbot Jan 13, 2025
41af558
linting fixes
adamrtalbot Jan 13, 2025
9188754
fix for samplesheet parsing
adamrtalbot Jan 13, 2025
9493695
fix some channel handling and versions
adamrtalbot Jan 13, 2025
4d29a62
Apply suggestions from code review
adamrtalbot Jan 13, 2025
62097ae
bump resource requirements for Dragen process
adamrtalbot Jan 14, 2025
ec2b2b7
Increase minimum resource limits for test
adamrtalbot Jan 14, 2025
60a0993
Update nextflow.config
adamrtalbot Jan 14, 2025
002ee3d
pr response
adamrtalbot Jan 14, 2025
6998a4a
Revert CHANGELOG
adamrtalbot Jan 16, 2025
233bdb4
Template update for nf-core/tools version 3.1.2.dev0
adamrtalbot Jan 16, 2025
cd62eef
Merge branch 'TEMPLATE' into template_update
adamrtalbot Jan 16, 2025
06695e8
Revert CHANGELOG
adamrtalbot Jan 16, 2025
a4a7d65
Template update for nf-core/tools version 3.1.2.dev0
adamrtalbot Jan 16, 2025
c0c603e
Merge branch 'TEMPLATE' into template_update
adamrtalbot Jan 16, 2025
023c9ce
update CHANGELOG
adamrtalbot Jan 16, 2025
9ad5dd2
dragen to nf-dragen
adamrtalbot Jan 16, 2025
8f6af35
revert CHANGELOG.md
adamrtalbot Jan 16, 2025
8126772
Update main.nf
adamrtalbot Jan 16, 2025
9971bfb
CHANGELOG
adamrtalbot Jan 16, 2025
7585fb9
Merge pull request #10 from seqeralabs/template_update
adamrtalbot Jan 16, 2025
80e4c09
Revert license to MPL
adamrtalbot Jan 17, 2025
c5ecb3b
Replace MPL license with Apache 2.0
adamrtalbot Jan 17, 2025
e9ea23b
Merge pull request #12 from seqeralabs/update-license-to-apache
adamrtalbot Jan 17, 2025
3315523
Update .github/ISSUE_TEMPLATE/feature_request.yml
adamrtalbot Feb 19, 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
20 changes: 20 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"name": "nfcore",
"image": "nfcore/gitpod:latest",
"remoteUser": "gitpod",
"runArgs": ["--privileged"],

// 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"
},

// 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"]
}
}
}
20 changes: 15 additions & 5 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,30 @@ trim_trailing_whitespace = true
indent_size = 4
indent_style = space

[*.{yml,yaml}]
[*.{md,yml,yaml,html,css,scss,js}]
indent_size = 2

[*.json]
insert_final_newline = unset

# These files are edited and tested upstream in nf-core/modules
[/modules/nf-core/**]
charset = unset
end_of_line = unset
insert_final_newline = unset
trim_trailing_whitespace = unset
indent_style = unset
indent_size = unset
[/subworkflows/nf-core/**]
charset = unset
end_of_line = unset
insert_final_newline = unset
trim_trailing_whitespace = unset
indent_style = unset

[/assets/email*]
indent_size = unset

# ignore Readme
[README.md]
indent_style = unset

# ignore python
[*.{py,md}]
indent_style = unset
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
*.config linguist-language=nextflow
*.nf.test linguist-language=nextflow
modules/nf-core/** linguist-generated
subworkflows/nf-core/** linguist-generated
56 changes: 35 additions & 21 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,20 @@
# nf-core/dragen: Contributing Guidelines
# seqeralabs/nf-dragen: Contributing Guidelines

Hi there!
Many thanks for taking an interest in improving nf-core/dragen.
Many thanks for taking an interest in improving seqeralabs/nf-dragen.

We try to manage the required tasks for nf-core/dragen using GitHub issues, you probably came to this page when creating one.
We try to manage the required tasks for seqeralabs/nf-dragen using GitHub issues, you probably came to this page when creating one.
Please use the pre-filled template to save time.

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/dragen then the best place to ask is on the nf-core Slack [#dragen](https://nfcore.slack.com/channels/dragen) channel ([join our Slack here](https://nf-co.re/join/slack)).

## Contribution workflow

If you'd like to write some code for nf-core/dragen, the standard workflow is as follows:
If you'd like to write some code for seqeralabs/nf-dragen, the standard workflow is as follows:

1. Check that there isn't already an issue about your idea in the [nf-core/dragen issues](https://github.com/nf-core/dragen/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/dragen repository](https://github.com/nf-core/dragen) to your GitHub account
1. Check that there isn't already an issue about your idea in the [seqeralabs/nf-dragen issues](https://github.com/seqeralabs/nf-dragen/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 [seqeralabs/nf-dragen repository](https://github.com/seqeralabs/nf-dragen) 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).
5. Submit a Pull Request against the `dev` branch and wait for the code to be reviewed and merged
Expand All @@ -26,6 +23,12 @@ If you're not used to this workflow with git, you can start with some [docs from

## Tests

You have the option to test your changes locally by running the pipeline. For receiving warnings about process selectors and other `debug` information, it is recommended to use the debug profile. Execute all the tests with the following command:

```bash
nf-test test --profile debug,test,docker --verbose
```

When you create a pull request with changes, [GitHub Actions](https://github.com/features/actions) 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.

Expand All @@ -49,17 +52,13 @@ 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`.
* Fix the bug, and bump version (X.Y.Z+1).
* A PR should be made on `master` from patch to directly this particular bug.

## Getting help

For further information/help, please consult the [nf-core/dragen documentation](https://nf-co.re/dragen/usage) and don't hesitate to get in touch on the nf-core Slack [#dragen](https://nfcore.slack.com/channels/dragen) channel ([join our Slack here](https://nf-co.re/join/slack)).
- On your own fork, make a new branch `patch` based on `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.

## Pipeline contribution conventions

To make the nf-core/dragen 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 seqeralabs/nf-dragen 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

Expand All @@ -73,7 +72,7 @@ If you wish to contribute a new step, please use the following coding standards:
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`.
9. Update MultiQC config `assets/multiqc_config.yaml` 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.
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
Expand All @@ -86,14 +85,14 @@ Once there, use `nf-core schema build` to add to `nextflow_schema.json`.

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.

The process resources can be passed on to the tool dynamically within the process with the `${task.cpu}` and `${task.memory}` variables in the `script:` block.
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.

### Naming schemes

Please use the following naming schemes, to make it easy to understand what is going where.

* initial process channel: `ch_output_from_<process>`
* intermediate and terminal channels: `ch_<previousprocess>_for_<nextprocess>`
- initial process channel: `ch_output_from_<process>`
- intermediate and terminal channels: `ch_<previousprocess>_for_<nextprocess>`

### Nextflow version bumping

Expand All @@ -102,3 +101,18 @@ If you are using a new feature from core Nextflow, you may bump the minimum requ
### Images and figures

For overview images and other documents we follow the nf-core [style guidelines and examples](https://nf-co.re/developers/design_guidelines).

## GitHub Codespaces

This repo includes a devcontainer configuration which will create a GitHub Codespaces for Nextflow development! This is an online developer environment that runs in your browser, complete with VSCode and a terminal.

To get started:

- Open the repo in [Codespaces](https://github.com/seqeralabs/nf-dragen/codespaces)
- Tools installed
- nf-core
- Nextflow

Devcontainer specs:

- [DevContainer config](.devcontainer/devcontainer.json)
44 changes: 23 additions & 21 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -1,52 +1,54 @@

name: Bug report
description: Report something that is broken or incorrect
labels: bug
body:

- type: markdown
attributes:
value: |
Before you post this issue, please check the documentation:

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

- type: textarea
id: description
attributes:
label: Description of the bug
description: A clear and concise description of what the bug is.
validations:
required: true

- type: textarea
id: command_used
attributes:
label: Command used and terminal output
description: Steps to reproduce the behaviour. Please paste the command you used to launch the pipeline and the output from your terminal.
description: Steps to reproduce the behaviour. Please paste the command you used
to launch the pipeline and the output from your terminal.
render: console
placeholder: |
$ nextflow run ...
placeholder: "$ nextflow run ...


Some output where something broke

"
- type: textarea
id: files
attributes:
label: Relevant files
description: |
Please drag and drop the relevant files here. Create a `.zip` archive if the extension is not allowed.
Your verbose log file `.nextflow.log` is often useful _(this is a hidden file in the directory where you launched the pipeline)_ as well as custom Nextflow configuration files.
description: "Please drag and drop the relevant files here. Create a `.zip` archive
if the extension is not allowed.

Your verbose log file `.nextflow.log` is often useful _(this is a hidden file
in the directory where you launched the pipeline)_ as well as custom Nextflow
configuration files.

"
- type: textarea
id: system
attributes:
label: System information
description: |
* Nextflow version _(eg. 21.10.3)_
description: "* Nextflow version _(eg. 23.04.0)_

* Hardware _(eg. HPC, Desktop, Cloud)_

* Executor _(eg. slurm, local, awsbatch)_
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter or Charliecloud)_

* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud,
or Apptainer)_

* OS _(eg. CentOS Linux, macOS, Linux Mint)_
* Version of nf-core/dragen _(eg. 1.1, 1.5, 1.8.2)_

* Version of seqeralabs/nf-dragen _(eg. 1.1, 1.5, 1.8.2)_

"
7 changes: 0 additions & 7 deletions .github/ISSUE_TEMPLATE/config.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Feature request
description: Suggest an idea for the nf-core/dragen pipeline
description: Suggest an idea for the seqeralabs/nf-dragen pipeline
labels: enhancement
body:
- type: textarea
Expand Down
13 changes: 6 additions & 7 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,24 @@
<!--
# nf-core/dragen pull request
# seqeralabs/nf-dragen pull request

Many thanks for contributing to nf-core/dragen!
Many thanks for contributing to seqeralabs/nf-dragen!

Please fill in the appropriate checklist below (delete whatever is not relevant).
These are the most common things requested on pull requests (PRs).

Remember that PRs should be made against the dev branch, unless you're preparing a pipeline release.

Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/dragen/tree/master/.github/CONTRIBUTING.md)
Learn more about contributing: [CONTRIBUTING.md](https://github.com/seqeralabs/nf-dragen/tree/master/.github/CONTRIBUTING.md)
-->
<!-- markdownlint-disable ul-indent -->

## PR checklist

- [ ] This comment contains a description of changes (with reason).
- [ ] 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/dragen/tree/master/.github/CONTRIBUTING.md)
- [ ] If necessary, also make a PR on the nf-core/dragen _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository.
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/seqeralabs/nf-dragen/tree/master/.github/CONTRIBUTING.md)
- [ ] Make sure your code lints (`nf-core lint`).
- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker`).
- [ ] Ensure the test suite passes (`nf-test test main.nf.test -profile test,docker`).
- [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir <OUTDIR>`).
- [ ] Usage Documentation in `docs/usage.md` is updated.
- [ ] Output Documentation in `docs/output.md` is updated.
- [ ] `CHANGELOG.md` is updated.
Expand Down
36 changes: 0 additions & 36 deletions .github/workflows/awsfulltest.yml

This file was deleted.

30 changes: 0 additions & 30 deletions .github/workflows/awstest.yml

This file was deleted.

Loading