• 
      

    Rewrite the RB Gateway support to leverage the new client support.

    Review Request #10629 — Created July 16, 2019 and submitted

    Information

    Review Board
    release-4.0.x
    534d174...

    Reviewers

    Review Board 4.0 has a better architecture for writing hosting service
    client implementations, which takes care of a lot of cross-Python
    compatibility issues, simplifies code, and reduces the need for certain
    hacks and workarounds and specialized HTTP access wrappers we had
    before.

    This change rewrites RB Gateway to leverage the new client support. The
    ReviewBoardGatewayClient class is responsible now for all API
    communication, handling errors and headers in consistent ways. The
    ReviewBoardGateway hosting service class simply calls into it and
    converts payload results into Review Board objects.

    This will improve maintenance as we go forward, and also takes care of
    some differences in behavior between Python 3.x releases that we were
    previously hitting.

    Unit tests pass.

    Manually tested authenticating, linking a repository, browsing commits,
    posting for review, and viewing diffs. Aside from some bugs within
    RB Gateway itself, this all works.

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