Allow SCMClients to specify their diff tool requirements and instantiate.
Review Request #12602 — Created Sept. 14, 2022 and submitted
This introduces a new
which can be set to indicate the
To indicate that any available diff tool can be used, this should be set
To indicate that a particular diff tool or tools are required, this can be
set to a
listof diff tool IDs.
To indicate that a tool diff is not needed (if, for example, the SCM's
native diff tool is used), this can remain at the default of
BaseSCMClient.get_diff_tool()method is used to attempt to fetch
the right diff tool based on this setting. It will raise a
MissingDiffToolErrorif one is unavailable.
Unit tests pass.
Tested with in-progress changes making use of this new functionality.