[Mesa-dev] [PATCH 1/2] compiler/glsl/tests: Make tests python3 safe
Dylan Baker
dylan at pnwbakers.com
Fri Aug 17 18:08:27 UTC 2018
Quoting Mathieu Bridon (2018-08-17 11:01:23)
> On Fri, 2018-08-17 at 10:45 -0700, Dylan Baker wrote:
> > Quoting Mathieu Bridon (2018-08-16 15:00:39)
> > > On Thu, 2018-08-16 at 14:21 -0700, Dylan Baker wrote:
> > > > ---
> > > >
> > > > I didn't see any patches from anyone else, so I wrote some real
> > > > quick. Please
> > > > point to them if other patches already exist.
> > >
> > > I was about to send mine, but you were faster. >_<
> > >
> > > They ar every similar though, except that you missed glcpp_test.py,
> > > which requires a few more changes. (I have them ready, and can send
> > > them separately)
> > >
> > > > diff --git a/src/compiler/glsl/tests/optimization_test.py
> > > > b/src/compiler/glsl/tests/optimization_test.py
> > > > index 577d2dfc20f..f40d0cee6bd 100755
> > > > --- a/src/compiler/glsl/tests/optimization_test.py
> > > > +++ b/src/compiler/glsl/tests/optimization_test.py
> > > > @@ -1,4 +1,4 @@
> > > > -#!/usr/bin/env python2
> > > > +#!/usr/bin/env python
> > > > # encoding=utf-8
> > > > # Copyright © 2018 Intel Corporation
> > > >
> > > > @@ -71,7 +71,9 @@ def main():
> > > > stdout=subprocess.PIPE,
> > > > stderr=subprocess.PIPE,
> > > > stdin=subprocess.PIPE)
> > > > - out, err = proc.communicate(source)
> > > > + out, err = proc.communicate(source.encode())
> > > > + out = out.decode()
> > > > + err = err.decode()
> > >
> > > I usually find it too unpredictable to use the default encoding,
> > > and
> > > prefer always specifying 'utf-8'. (even on Python 3, you can't be
> > > sure
> > > that will always be the default)
> >
> > That's true I guess. I've never seen anyone build python with utf-8
> > as not the default, but they can so we should do the right thing.
>
> That's not a build-time thing though:
>
> $ python3 -c 'print("é".encode())'
> b'\xc3\xa9'
> $ LC_ALL=C python3 -c 'print("é".encode())'
> Unable to decode the command from the command line:
> UnicodeEncodeError: 'utf-8' codec can't encode characters in position 7-8: surrogates not allowed
>
> This happens regularly in some containers-like environment or SSH-ing
> to a server which doesn't have your client locale.
>
>
> --
> Mathieu
>
Ah, I always have some kind of utf-8 encoding on machines I have access to, and
never need containers. I guess that explains why I've never seen that.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: signature
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180817/ff8c3a0b/attachment.sig>
More information about the mesa-dev
mailing list