Remove fixed UMI-tools seeds - #12662
Conversation
SPPearce
left a comment
There was a problem hiding this comment.
No, I disagree entirely, I think we should be hardcoding random seeds if not specified.
This confuses me. If a tool doesn't set a random seed by default, why should we? The variant you force by setting the seed isn't any more valid than a variant you'd get by setting another one. |
| # The generated launcher allows configuring heap size, but not stack size. | ||
| UMICOLLAPSE_JAR=\$(find "\$(dirname "\$(command -v umicollapse)")/../share" -maxdepth 2 -name umicollapse.jar -print -quit) | ||
|
|
||
| set -o pipefail |
There was a problem hiding this comment.
don't we have that in pipelines' nextflow.config already?
|
Not sure about the contentious part here. Test are stable through ext.args, the rest is up to the pipeline dev. Also, fixed random seeds should be 42 and not some sensible number like 100 EDIT: fixed butterfingers on mobile keyboard |
…random-seed # Conflicts: # modules/nf-core/umicollapse/main.nf # subworkflows/nf-core/bam_dedup_stats_samtools_umitools/tests/main.nf.test.snap
Agreed! |
Summary
--random-seed=100inumitools/dedupandumitools/groupPYTHONHASHSEED=0in production commandsRationale
UMI-tools chooses a representative read randomly when duplicate candidates tie. Hard-coding a production seed makes that arbitrary choice repeat without making it robust, and prevents fresh runs from exposing stochastic variability. Users can still request reproducibility by setting
--random-seedthroughtask.ext.args.Tests
ruff format --checkpassednf-core modules lint umitools/dedup: 61 passed, 3 existing metadata/container warningsnf-core modules lint umitools/group: 57 passed, 3 existing metadata/container warningsnf-core subworkflows lint bam_dedup_stats_samtools_umitools: 32 passednf-core subworkflows lint bam_dedup_umi: 33 passed