Hi I just reported <github.com/nf-core/mag/issues/...
# mag
c
Hi I just reported github.com/nf-core/mag/issues/1101 but it's a bit weird to me because, at least looking at the code, it should skip BUSCO just fine. So not sure if it has something to do with our setup or some weird interaction with
-resume
(was run with
--run_busco
before). So yeah, let me know if you need more info.
d
Hi! I think it could be because of this https://nf-co.re/blog/2026/parameter-types
c
Yeah I was thinking the same thing but I thought parameters were always typed if you have a schema...
It would make sense for the if statement though since it only checks with
if(params.run_busco)
.
d
Yeah, it was like that until the latest Nextflow version (26.04). From that version, converting the parameters from the string to the actual type requires defining the parameters using the new typing system. We still have not adopted that, but plan to do it on next release.
For now the best option is to use a YAML / JSON for the params
The default parameters work because they are defined with the correct type in
nextflow.config
, so they can be evaluated directly. The problem are the params passed as CLI args
c
Yeah I think you got it. In your linked blog post it actaully mentions this
After validation,
<http://params.my|params.my>_int
is still the string “42”, not the integer 42. Code that does arithmetic on
<http://params.my|params.my>_int
, or relies on
<http://params.my|params.my>_bool
being a real boolean in a Groovy truthiness check, will still misbehave under syntax parser v2.
I thought it would be fine because it validated but clearly not. It also needs a typed parameter block as described in the blog. Well at least it makes sense now.