Serhiy Storchaka <storchaka+cpyt...@gmail.com> added the comment:

Is AIX big-endian?

On *BSD systems uuid_t is a structure of integers with platform-depending 
endianess. Thus on little-endian platform UUID should be called with the 
bytes_le argument. This doesn't fix test on OpenBSD and NetBSD, but at least 
the result is stable (version=4).

Using bytes_le on Linux breaks tests. Seems uuid_generate_time_safe() always 
returns bytes in big-endian order.

PR 7098 adds _uuid.little_endian which is true on little-endian platforms using 
uuid_create(), and false otherwise. Actually there are many ways of solving 
this problem, the choice of this design was arbitrary. 
_uuid.generate_time_safe() could return a 3-tuple instead of 2-tuple, or there 
could be two separate functions: _uuid.generate_time_safe() and _uuid.create().

----------
stage: patch review -> needs patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32493>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to