Clean up Perforce change description rewriting and fix newline errors.

Review Request #13023 — Created May 8, 2023 and submitted — Latest diff uploaded

Information

RBTools
release-4.x

Reviewers

We've had code in the tree for a long while to stamp Perforce changes
with a review request URL, but it had a flaw. It left out a newline,
causing the first line to read:

Description:   Here is the first line.
        And here is the second line.

This was due to a missing newline after adding the "Description:" field.

This change fixes this up, reworks the logic and comments to be a bit
more clear about the states being kept and the newlines added, and adds
unit tests.

It also fixes up the amending portion, which didn't include a changenum
in the p4 change command (which meant it couldn't amend anything but
default).

A timeout is now set for the p4 change command, in case anything fails
during a hook script. Errors are outputted if anything goes wrong.

Unit tests passed.

Tested manually with updates to the trigger script.

Commits

Files