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

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

chipx86
RBTools
release-4.x
12571
rbtools

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
Update CVSClient for run_process(), type safety, and deprecations.
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)
     
     
     

    Can take this out.

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

    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: Closed (submitted)

Change Summary:

Pushed to release-4.x (ea8b6bf)
Loading...