A collection of unexpected challenges and learnings with nextflow and nf-core. The provided examples reflect my journey in learning nextflow and generally assume an intermediate familiarity with nextflow.
The gotchas are typically provided as minimal, reproducible examples (MREs) with additional explanations. What is a minimal, reproducible example?
As explained very well on StackOverflow:
Your code examples should be
- Minimal – Use as little code as possible that still produces the same problem
- Complete – Provide all parts someone else needs to reproduce your problem in the question itself
- Reproducible – Test the code you're about to provide to make sure it reproduces the problem
Nextflow error messages and stack traces can, in all honesty, be quite maddening. Hopefully, yours is among the common ones that we describe here.
Contributions are most welcome and I very much aim for this to be a community-driven project. In fact, most of the solutions provided here came from discussions on the nextflow or nf-core Slack. Both are incredible communities and I can only recommend that you join. Phil Ewels and I are already talking about how to best integrate these examples into the nf-core website. Please open an issue on the repository or message me on either of the Slack teams linked in the footer regarding any examples, ideas, or suggestions that you may have.
Thanks go to these wonderful people (emoji key):
James A. Fellows Yates
This project follows the all-contributors specification. Contributions of any kind welcome!
As mentioned, nextflow has an amazing community. I want to mention a few people here who have been especially helpful in my interactions. In alphabetical order:
- Friederike Hanssen
- Harshil Patel
- Jose Espinosa-Carrasco
- Mahesh Binzer-Panchal
- Maxime U. Garcia
- Phil Ewels
- Pontus Freyhult
- Robert Syme
If you feel that I forgot you in this list. Please let me know, it's not intentional!
All examples and descriptions are licensed under the Creative Commons Attribution-ShareAlike 4.0 International License.