Iqtree3 ufboot guard - #8262
Conversation
IQ-TREE requires at least 4 distinct sequences for ultrafast bootstrap (--ufboot). By default IQ-TREE errors out when this threshold is not met. This new optional parameter, when enabled, silently skips --ufboot for FASTA inputs with fewer than 4 distinct sequences. Useful when mapping over collections of alignments that may include small ones. Default behavior (off) preserves IQ-TREE's native error. Also bumps version suffix to 1 and replaces dead iqtree.org URLs with iqtree.github.io/doc.
|
Lets wait for iqtree/iqtree3#195 The website will be back iqtree/iqtree2#538 |
| #if str($bootstrap_parameters.ultrafast_bootstrap.ufboot) != '' | ||
| --ufboot '$bootstrap_parameters.ultrafast_bootstrap.ufboot' | ||
| #if $bootstrap_parameters.ultrafast_bootstrap.skip_bootstrap_for_small_alignments and $general_options.s and $general_options.s.ext == 'fasta' | ||
| \$( [ "\$n_unique" -ge 4 ] 2>/dev/null && echo "--ufboot '$bootstrap_parameters.ultrafast_bootstrap.ufboot'" ) |
There was a problem hiding this comment.
This is still wrong as I said earlier. You are just executing iqtree3 ... && echo MORE_IQTREE_OPTIONS
If you really want to implement this (but IMO it should be done in iqtree itself, we should use the sequences metadata (which exists for fasta and phylip (unfortunately not for nex,clustal,msf which are just text from Galaxy's point of view).
There was a problem hiding this comment.
Sorry to chime in late. I'm infavor of this change. Iqtree is already yielding an error. From their side this seems ok. From our side this is suboptimal, as we would need to filter collections, rerun parts of a collection with different settings etc. So I thibk having an additional parameter that makes it very clear what's happening is a good way for us and more efficient
There was a problem hiding this comment.
@d-callan can you move the if out of the iqtree command? If you special conditions met in cheetah and the bash check is valid, set a env var, reuse the env var in the iqtree command later
There was a problem hiding this comment.
Does the limitation also affect normal bootstrap?
I would still suggest to use sequences metadata. The sequences can be made unique using other Galaxy tools, or?
|
@d-callan and @bgruening the iqtree devs would be willing to implement the change, but noted that there will be an error for less than 3 sequences anyway (ie of there is no tree). |
|
thats cool i guess. im happy enough to either fix this up or close for now if theyre handling it, either way. my opinions here arent that strong, so ill wait til i hear others. |
@bgruening thing i personally like least is its fasta specific
FOR CONTRIBUTOR:
There are two labels that allow to ignore specific (false positive) tool linter errors:
skip-version-check: Use it if only a subset of the tools has been updated in a suite.skip-url-check: Use it if github CI sees 403 errors, but the URLs work.To request a review once your PR is ready, comment "please review" on the PR. This will
automatically apply the
ready-for-reviewlabel if the PR is not a draft, all reviewthreads are resolved, and all CI checks have passed.