[Cython] cython tests and py3k hash randomization

mark florisson markflorisson88 at gmail.com
Thu Feb 23 22:39:13 CET 2012


On 23 February 2012 20:52, Vitja Makarov <vitja.makarov at gmail.com> wrote:
> Recent py3k version has new feature "hash randomization" it solves
> some security issues.
> But has some drawbacks, for instance, dict.items() order is now
> unknown. So it breaks
> randomly some doctests that rely on exact order of dict items.
>
> vitja at mchome:~/python$ ./py3k/bin/python -c  "print({'a':1, 'b':2})"
> {'b': 2, 'a': 1}
> vitja at mchome:~/python$ ./py3k/bin/python -c  "print({'a':1, 'b':2})"
> {'a': 1, 'b': 2}
>
> As a workaround we can set PYTHONHASHSEED environment variable to zero
> for all cyhon-*-tests targets
>
> This also affects generated code it internally depends on order of
> items returned by dict.items()

Any code or test that relies on dictionary order is wrong, really. So
I assume any pyregr issues will be fixed by the CPython test suite? If
there are any such failing tests in Cython we should simply fix them.

> --
> vitja.
> _______________________________________________
> cython-devel mailing list
> cython-devel at python.org
> http://mail.python.org/mailman/listinfo/cython-devel


More information about the cython-devel mailing list