On Sat, Apr 03, 2004 at 03:04:49PM -0800, Ovid wrote: > 2. Hash ordering is now guaranteed to be random (unless you specify different > compile time > options to Perl, something I chose not to do). Many of our tests assume that hash > order is > deterministic -- which it appeared to be prior to 58 (remember, "not guaranteed to > return in a > particular order" is not the same as "non-deterministic"). I had to rewrite much of > our test > suite (which takes around two hours to run!) to find and fix all of these.
5.8.2 and later have hashes that are deterministic until the data is pathological. And the pathological checks kick in very late. Only 5.8.1 has true random hashes (not 5.8.0) and even without compile time changes (IIRC) you can always force deterministic hashes with environment variables. > 5. Localizing tied arrays and hashes is broken in 5.8. We tie and localize %ENV. I wasn't aware of this. Or at least, it doesn't ring a bell. Is perl5-porters aware of this? Is this a known change in behaviour? Not that this invalidates your reasons for needing to stick to 5.6.x Nicholas Clark