Ensure Unicode arguments for file fetching and bytes for results.

Review Request #10503 — Created April 3, 2019 and submitted — Latest diff uploaded

Information

Review Board
release-4.0.x

Reviewers

This adds some type safety for Repository.get_file() and
Repository.get_file_exists(), ensuring that the arguments coming in
are all Unicode strings. It then checks that the results from the
hosting service or SCMTool are bytes. This ensures we're always working
with the data types we're expecting.

This required some fixes in a few of the hosting services and SCMTools,
casting string types for comparisons and for the results.

Unit tests pass on Python 2.7 and 3.7 (with other in-progress changes).

Commits

Files