py3: require values in changelog extras to be bytes
I don't know what happened here because
b436059c1cca (py3: use
pycompat.bytestr() on extra values because it can be int, 2019-02-05)
came about
b44a47214122 (py3: use string for "close" value in commit
extras, 2018-02-11). Whatever happened, we shouldn't need to convert
the values to bytes now. It's better to not convert because that might
cover up bugs where someone sets a unicode value in the extras and
that works until the unicode value happens to contain non-ascii (at
which point it will fail because `bytestr()` expects its argument to
be ascii if it's unicode).
Differential Revision: https://phab.mercurial-scm.org/D8332
py3: make setup.py's hgcommand() consistently return bytes
Before this patch, it returned unicode when the command failed. That
made e.g. `make local PYTHON=python3` fail on an obsolete commit.
Differential Revision: https://phab.mercurial-scm.org/D8331
pvec: drop an unused `from __future__ import division`
This module only uses the `//` operator (for integer division).
Differential Revision: https://phab.mercurial-scm.org/D8326