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)