5.17.6: "The seed used by Perl's hash function is now random. This means that the order which keys/values will be returned from functions like keys(), values(), and each() will differ from run to run."
Wait, what?
5.8.1: "Mainly due to security reasons, the "random ordering" of hashes has been made even more random. Previously while the order of hash elements from keys(), values(), and each() was essentially random, it was still repeatable. Now, however, the order varies between different runs of Perl." - http://search.cpan.org/~jhi/perl-5.8.1/pod/perldelta.pod#Has... , Sept 25 2003
When did that get undone?
Edit: Admittedly, I just tried to verify that this actually happened in 5.8.1 and none of 5.8.8, 5.10.0, or 5.14.2 appear to be actually randomizing key order, at least according to the keys function.
Thank you. That explains why my quick test (the obvious one) did not reveal anything in the older versions, I did not trigger the defensive behavior in my casually-chosen keys.
Wait, what?
5.8.1: "Mainly due to security reasons, the "random ordering" of hashes has been made even more random. Previously while the order of hash elements from keys(), values(), and each() was essentially random, it was still repeatable. Now, however, the order varies between different runs of Perl." - http://search.cpan.org/~jhi/perl-5.8.1/pod/perldelta.pod#Has... , Sept 25 2003
When did that get undone?
Edit: Admittedly, I just tried to verify that this actually happened in 5.8.1 and none of 5.8.8, 5.10.0, or 5.14.2 appear to be actually randomizing key order, at least according to the keys function.