• 
      

    Update CVSClient for run_process(), type safety, and deprecations.

    Review Request #12570 — Created Aug. 24, 2022 and submitted

    Information

    RBTools
    release-4.x

    Reviewers

    CVSClient now uses run_process() instead of execute() for all
    cvs interaction, giving us better type safety and safer execution.

    All methods have been updated with type annotations, ensuring compliance
    with BaseSCMClient requirements. Documentation has been updated where
    appropriate.

    Some deprecated calls have been updated, and dead code removed.

    Unit tests pass on Python 3.7-3.11.

    Summary ID
    Update CVSClient for run_process(), type safety, and deprecations.
    `CVSClient` now uses `run_process()` instead of `execute()` for all `cvs` interaction, giving us better type safety and safer execution. All methods have been updated with type annotations, ensuring compliance with `BaseSCMClient` requirements. Documentation has been updated where appropriate. Some deprecated calls have been updated, and dead code removed.
    93adeef17aa99a6a9988e0d83e607b9a24f4aa67
    Description From Last Updated

    Can take this out.

    maubinmaubin

    We should document the AssertionErrors in the description.

    maubinmaubin
    maubin
    1. 
        
    2. rbtools/clients/cvs.py (Diff revision 1)
       
       
       
      Show all issues

      Can take this out.

    3. rbtools/clients/cvs.py (Diff revision 1)
       
       
       
      Show all issues

      We should document the AssertionErrors in the description.

      1. If it's useful to the caller then it's worth doing (like a unit test helper method), but in this case it's truly an internal thing. A caller should never have to expect these to fire off, unless they've messed with what should be opaque state (in which case, tough).

        Sort of like how we don't document Exception as a possible exception unless we're explicitly making that part of the API contract (random things can break internally, but that's not the caller's responsibility).

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