nf-core / scrnaseq

A single-cell RNAseq pipeline for 10X genomics data
https://nf-co.re/scrnaseq
MIT License
209 stars 166 forks source link

The cellrangerarc cannot start successfully #297

Closed wzheng0520 closed 6 months ago

wzheng0520 commented 8 months ago

Description of the bug

Based on newest update on the pipeline, I am using --aligner cellrangerarc to perform my analyzing for 10X multiome GEX+10X multiome ATAC. However, the pipeline cannot started successfully and provide the following error message ERROR ~ Cannot invoke method containsKey() on null object . I review the code and found this error might cause by protocol_config = WorkflowScrnaseq.getProtocol(workflow, log, params.aligner, params.protocol) which is located in the scrnaseq.nf at line 73. Therefore, I went to protocols.json files which is located at assets folder and found there is no cellrangerarc in there. From my understanding, in the getProtocol function, the aligner cannot be find through the json files and the error shows up.

Also on the line 74 to 75 in scrnaseq.nf,

if (protocol_config['protocol'] == 'auto' && params.aligner != "cellranger") {
    error "Only cellranger supports `protocol = 'auto'`. Please specify the protocol manually!"
}

looks like it only allow the cellranger to choose auto, however, from my understanding, the cellrangerarc should be the same, maybe it is good to add params.aligner != "cellrangerarc" also on here.

Command used and terminal output

ERROR ~ Cannot invoke method `containsKey()` on null object

Relevant files

No response

System information

N E X T F L O W ~ version 23.10.0 nf-core/scrnaseq 2.5.1

heylf commented 7 months ago

Should be fixed with this PR

grst commented 6 months ago

Fixed in dev