• 
      

    Further improve SVN path normalization and fix test regressions.

    Review Request #11042 — Created June 11, 2020 and submitted — Latest diff uploaded

    Information

    Review Board
    release-3.0.x

    Reviewers

    My previous change for SVN path normalization didn't actually work as
    well as I had thought. It was tested in the CI environment that
    originally unveiled the problems we had with quoting behavior, but those
    tests were performed against a svn+ssh:// URL rather than the
    file:// URL that the patch was ultimately written against.

    It turns out that these two types of URLs have different restrictions. A
    file:// URL cannot use non-printable characters (character codes 0
    through 31), even if escaped, whereas other URLs can.

    This change updates our tests to check against both. We now check
    character codes 32+ for file:// URLs and 0+ for others. We also
    validate that non-printable character codes aren't provided in a file
    path, catching errors before it hits Subversion.

    Unit tests pass on Python 2.7 and 3.x (when applied to the release-4.0.x
    branch).

    Unit tests also pass with this patch in the CI environment.

    Commits

    Files