Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

Re: Burned by Storable

by grinder (Bishop)
on Jun 11, 2008 at 06:28 UTC ( [id://691387]=note: print w/replies, xml ) Need Help??


in reply to Burned by Storable

What purpose does Storable serve if one can't rely on it to recover the data again?

Wow, you were using a really old version of Storable, and you upgraded to a not-quite-so-old version! The current version, 2.15, has various switches you can twiddle to configure just how much backward and forward compatibility you want.

The situation you encountered was a frequent complaint from users, but no-one stepped up for a long time to fix the problem. Code speaks louder than words. I think it was only in the run up to 5.10 that the issue was dealt with.

The best Perl solution is to use Data::Serializer, which will allow you to switch the underlying serialisation mechanism used with minimum changes to the client code. And better contenders to the serialisation crown would have to include JSON and YAML, since implementations for both exist in other programming languages.

• another intruder with the mooring in the heart of the Perl

Replies are listed 'Best First'.
Re^2: Burned by Storable
by ruzam (Curate) on Jun 12, 2008 at 02:11 UTC
    You had me going there for a minute :)

    I believe the v2.7 and v2.6 in the error message refer to the binary storage format used by Storable, and not the actual Storable module version. The version of Storable on my dev machine is 2.15 (according to CPAN, 2.18 is now the latest). The version of Storable on my failed test machine is 2.13. The Storable changelog doesn't say anything about the binary format version changes (except for binary format v2.5 in version 2.0).

    I don't think it's unreasonable to expect compatibility in a module between versions 2.13 and 2.15.

    Indeed, other than bug fixes, there doesn't appear to be anything in the change log (or reported bugs) that would prevent basic Storable use (I'm storing simple hashes, nothing funky) from being fully compatible all the way back to version 2.0. What's a guy to trust if he can't trust core?

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://691387]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (4)
As of 2024-04-25 06:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found