Clean up, modernize, and document the the Perforce codebase.

Review Request #8944 — Created May 17, 2017 and submitted — Latest diff uploaded

Information

Review Board
release-2.5.x
a7e06fc...

Reviewers

The Perforce support has been around for a very long time, and there
were some warts and unused code that never got cleaned up.

This change removes some methods and parameters that weren't needed
anymore, rearranges some functions, removes unnecessary code, converts a
static method into a normal method, and adds documentation throughout
the file. It sets the stage for future work in this file.

Unit tests and real-world functionality work.

Built the docs (temporarily adding this file to the docs build -- it's
not by default) and made sure the docs were correct.