• 
      

    Add a registry for managing and looking up diff tools.

    Review Request #12601 — Created Sept. 14, 2022 and submitted

    Information

    RBTools
    release-4.x

    Reviewers

    This implements DiffToolsRegistry, which tracks all available diff
    tools. It can be used to look up registered tool classes and instantiate
    available tool instances (which will be cached for reuse).

    New tools can also be registered dynamically, though this isn't
    something that will be useful outside of very specialized custom code.

    When looking up available tools, it will instantiate each tool, set it
    up and check for availability on the system, and then cache it.

    If an available tool can't be found, a MissingDiffToolError will be
    raised. This will contain a list of all tools tried, and any
    instructions that candidate tools may provide.

    Unit tests pass.

    Used this with in-progress changes to SCMClients.

    Summary ID
    Add a registry for managing and looking up diff tools.
    This implements `DiffToolsRegistry`, which tracks all available diff tools. It can be used to look up registered tool classes and instantiate available tool instances (which will be cached for reuse). New tools can also be registered dynamically, though this isn't something that will be useful outside of very specialized custom code. When looking up available tools, it will instantiate each tool, set it up and check for availability on the system, and then cache it. If an available tool can't be found, a `MissingDiffToolError` will be raised. This will contain a list of all tools tried, and any instructions that candidate tools may provide.
    0fa88510199d1665b9da93b763520f5c92575728
    Description From Last Updated

    Add a Version Added:.

    maubinmaubin

    Add a Version Added:.

    maubinmaubin
    maubin
    1. 
        
    2. Show all issues

      Add a Version Added:.

      1. We usually don't put this for test case classes because it's not really API in the same way as other stuff.

      2. Ah ok.

    3. Show all issues

      Add a Version Added:.

    4. 
        
    david
    1. Ship It!
    2. 
        
    chipx86
    david
    1. Ship It!
    2. 
        
    maubin
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-4.x (f1dcfa7)