[PATCH 5 of 6 py3] dispatch: enforce bytes when converting boolean flags to config items
Durham Goode
durham at fb.com
Tue Mar 7 22:07:10 EST 2017
On 3/7/17 8:25 AM, Augie Fackler wrote:
> # HG changeset patch
> # User Augie Fackler <raf at durin42.com>
> # Date 1488570207 18000
> # Fri Mar 03 14:43:27 2017 -0500
> # Node ID 4801067dee2c77ff4e720c931d8b19cf32515beb
> # Parent a6e8bb19707e0c7505ccfdf44f7e1b19a0f65d48
> dispatch: enforce bytes when converting boolean flags to config items
>
> This fixes --verbose on Python 3.
>
> diff --git a/mercurial/dispatch.py b/mercurial/dispatch.py
> --- a/mercurial/dispatch.py
> +++ b/mercurial/dispatch.py
> @@ -744,6 +744,8 @@ def _dispatch(req):
> if options['verbose'] or options['debug'] or options['quiet']:
> for opt in ('verbose', 'debug', 'quiet'):
> val = str(bool(options[opt]))
> + if pycompat.ispy3:
> + val = val.encode('latin1')
Should we have a util function for turning str() output into bytes? Or
event a strbytes() function? On py2 it could just return str. My
encoding knowledge is approximately zero, which is why I'd love to be
able to choose from some easy functions like `util.tobytesfromstr()`
instead of knowing that encode('latin1') is how I get ascii bytes.
More information about the Mercurial-devel
mailing list