Hi,

I am the maintainer of the Perl5 Sereal related modules. Recently
while digging into why my package does not always build correctly on
OpenBSD when not built under ports I noticed that the description of
the two packages, p5-Sereal-Encoder and p5-Sereal-Decoder in ports did
not include what I consider to be an important warning that when
upgrading to a more recent version of Sereal the *p5-Sereal-Decoder*
package should always be upgraded *first*.

We package the Sereal decoder and encoder independently because it
ensures that users can safely update the decoder before they upgrade
the encoder. This is done to ensure that people using Sereal in a
multi-host context can safely upgrade without downtime or data
corruption while also ensuring users get the benefits of the most
recent release. We ensure that the decoder can always read data
created by previous or equivalent versions of the encoder. This means
the decoder can be installed on all hosts using Sereal before rolling
out and upgrading  the encoder which could lead to a heterogenious mix
of different  encoder versions being in use during the rollout. By
upgrading the decoder first there is no issue with a host writing the
new format while another has not been upgraded to the latest encoder.
(This was a key design objective and motivation to create Sereal.)

I have created a patch to the DESCR files to state this explicitly. It
can be found here: https://github.com/openbsd/ports/pull/12

I can produce a more conventional patch if that is required, please
just let me know. If this isn't an appropriate use of the DESCR file
then please let me know and I will close the PR.

Thanks in advance,

cheers,
Yves
-- 
perl -Mre=debug -e "/just|another|perl|hacker/"

Reply via email to