README
1NAME
2 Sereal - Fast, compact, powerful binary (de-)serialization
3
4SYNOPSIS
5 use Sereal qw(encode_sereal decode_sereal looks_like_sereal);
6
7DESCRIPTION
8 This is an experimental module. Before using it in production, please
9 get in touch with the authors!
10
11 *Sereal* is an efficient, compact-output, binary and feature-rich
12 serialization protocol. The Perl encoder is implemented as the
13 Sereal::Encoder module, the Perl decoder correspondingly as
14 Sereal::Decoder. They are distributed separately to allow for safe
15 upgrading without downtime. (Hint: Upgrade the decoder everywhere first,
16 then the encoder.)
17
18 This "Sereal" module is a very thin wrapper around both
19 "Sereal::Encoder" and "Sereal::Decoder". It depends on both and loads
20 both. So if you have a user of both encoder and decoder, it is enough to
21 depend on a particular version of "Sereal" and you'll get the most
22 recent released versions of "Sereal::Encoder" and "Sereal::Decoder"
23 whose version is smaller than or equal to the version of "Sereal" you
24 depend on.
25
26 The protocol specification and many other bits of documentation can be
27 found in the github repository. Right now, the specification is at
28 <https://github.com/Sereal/Sereal/blob/master/sereal_spec.pod>, there is
29 a discussion of the design objectives in
30 <https://github.com/Sereal/Sereal/blob/master/README.pod>, and the
31 output of our benchmarks can be seen at
32 <https://github.com/Sereal/Sereal/wiki/Sereal-Comparison-Graphs>.
33
34 EXPORTED FUNCTIONS
35 It is recommended to use the object-oriented interface of
36 "Sereal::Encoder" and "Sereal::Decoder" if you care about performance.
37
38 You can optionally import three functions from "Sereal". "encode_sereal"
39 is the same function as Sereal::Encoder's "encode_sereal" function.
40 "decode_sereal" and "looks_like_sereal" are the same as
41 Sereal::Decoder's functions of the same names.
42
43 After loading the "Sereal" module, both "Sereal::Encoder" and
44 "Sereal::Decoder" are guaranteed to be loaded, so you can use their
45 object-oriented interface.
46
47AUTHOR
48 Steffen Mueller <smueller@cpan.org>
49
50ACKNOWLEDGMENT
51 This module was originally developed for Booking.com. With approval from
52 Booking.com, this module was generalized and published on CPAN, for
53 which the authors would like to express their gratitude.
54
55COPYRIGHT AND LICENSE
56 Copyright (C) 2012, 2013 by Steffen Mueller
57
58