cmdutil: ensure PatchError messages are coerded to bytes, not str
Differential Revision: https://phab.mercurial-scm.org/D2613
tests: fix bytes literals in test-fncache.t
# skip-blame just b prefixes
Differential Revision: https://phab.mercurial-scm.org/D2612
scmutil: avoid using basestring and add explicit handling of unicodes
This resolves some Python 3 defects, and I don't think it is a
meaningful behavior change in Python 2.
Differential Revision: https://phab.mercurial-scm.org/D2611
tests: fix inline extension bytes in test-ssh-proto-unbundle.t
# skip-blame just b prefixes
Differential Revision: https://phab.mercurial-scm.org/D2610
hghave: fix up clang-libfuzzer regex to be bytes
Fixes this check on Python 3.
# skip-blame just a b prefix
Differential Revision: https://phab.mercurial-scm.org/D2607
py3: accept both unicode and byte strings as filename carried by IOError
Follows up
77f98867538f. We could assume there's no bytes filename in our
codebase, but it's probably better to not raise UnicodeError because of
a unicode filename.