• 
      

    Improve the editing experience when patching or landing commits.

    Review Request #10672 — Created Sept. 1, 2019 and submitted — Latest diff uploaded

    Information

    RBTools
    release-1.0.x
    1a48501...

    Reviewers

    This change reworks the code that handles creating a commit when
    patching (using rbt patch -c) or landing (using rbt land -e) to
    improve the editing experience and error handling.

    Both Git and Mercurial provide a custom filename for the editor,
    mirroring the format of the filenames normally used by those tools. This
    gives editors a change to perform syntax highlighting, line length
    limits, etc.

    If the user deletes the entire contents of the commit message, the
    commit won't be created. Instead, a message will be shown explaining the
    situation and next steps.

    There are also some fixes for command line arguments for specifying
    author information for Git and Mercurial, improved error handling all
    throughout, and better file tracking in Mercurial.

    In addition, we now have extensive test coverage for commit creation for
    both Git and Mercurial.

    Unit tests pass for Git and Mercurial.

    Manually tested locally patching changes from both Git and Mercurial
    in the commit editor mode. Verified that the correct message was used
    when editing the commit, and that a suitable set of instructions was
    provided when canceling the commit.

    Also verified tracking of edited and new files in Mercurial.