When are failOnDuplicate and failOnMismatch set to true by default?

Are failOnDuplicate and failOnMismatch of the join operator only set to true by default with the (deprecated) nextflow.enable.strict mode, or also with NXF_SYNTAX_PARSER=v2?

Having trouble determining this both from the documentation and from the code.

It’s an unfortunate name collision. These join options are only affected by the nextflow.enable.strict feature flag

Once the v1 syntax parser is removed, we will likely remove this “strict” mode as well to avoid confusion

We will likely remove these join options as well at some point, since they are a bit of a rough edge, but that’s a topic for another day

Alright. So, if I don’t want to use the “strict” mode (nextflow.enable.strict) since it’s being removed, but only the v2 parser, I would still need to set failOnDuplicate: true, failOnMismatch: true in every join?

Sorry I didn’t see your reply for some reason. Yes, you can just set those options to true if you need them, or you can use custom operator logic to check for duplicates/mismatches and raise an error yourself