1Revision history for Perl extension Sereal 2 3Sereal is a dependency package that pulls in the real Sereal::Encoder 4and Sereal::Decoder. For the actual changes between Sereal releases, 5please see the Encoder and Decoder changelogs: 6 * https://github.com/Sereal/Sereal/blob/master/Perl/Decoder/Changes 7 * https://github.com/Sereal/Sereal/blob/master/Perl/Encoder/Changes 8 9**************************************************************** 10* Warning: For a seamless upgrade, upgrade to version 4 * 11* of the decoder before upgrading to version 4 of the * 12* encoder! This may mean you should NOT install the * 13* Sereal package and instead install the Encoder or * 14* Decoder independently. * 15**************************************************************** 164.018 Thurs Aug 3, 2020 17 * Fix issue with gcc 10 with snappy compression. 18 194.017 Thurs July 9, 2020 20 * The build fixes in 4.016 didn't work correctly, this should fix them. 21 224.016 Thurs July 9, 2020 23 * Fix some dependency issues in build process 24 254.015 Weds July 8, 2020 26 * Build fixes (missing dependency) 27 * Hardening against corrupted data 28 * New thresholds to manage decoding process 29 304.014 Thurs June 11, 2020 31 * Fix build issue on non-win32 platforms. 32 * Update zstd to 1.4.5 33 344.012 Tues February 4, 2020 35 * Fix memory leak in looks_like_sereal(), thanks to Kirill Sysoev 36 374.011 Tues February 4, 2020 38 * Fix and test custom opcode logic for 5.31.2 and later. 39 404.010 Tues February 4, 2020 41 * Encoder/Decoder: Update miniz 42 * Encoder/Decoder: Update zstd 43 * Sereal/Encoder/Decoder: perltidy perl code to a standard style 44 454.009 Fri January 31, 2020 46 * Encoder/Decoder: Update ppport.h for modern perls. 47 484.008 Thurs Jan 30, 2020 49 * Encoder/Decoder: Build fixes for modern perls. 50 * Encoder/Decoder: Pod fixes 51 524.007 Tues Apr 9, 2019 53 * Sereal: restore write_sereal(), read_sereal() as aliases to write_sereal_file() 54 and read_sereal_file(). Better tests for exported subs. Add SRL_UNCOMPRESSED, 55 SRL_SNAPPY, SRL_ZLIB, SRL_ZSTD exports. 56 * Decoder: tweak docs for looks_like_sereal/scalar_looks_like_sereal 57 584.006 Mon Apr 8, 2019 59 * Sereal: fix read_sereal_file(), 60 614.005 Tues Jan 23, 2018 62 * Encoder: Document encode_to_file() 63 * Decoder: Document and fix decode_from_file() 64 * Sereal: fixup docs on write_sereal_file()/read_sereal_file() 65 664.004 Sun Nov 12 67 * Fix build issues from C++ style comments 68 * Fixup build_requires 69 704.003 Sun Nov 12 71 * Fixup Devel::CheckLib usage 72 * Do not compress using Snappy if the buffer is larger 2**32 73 * Build fixes 74 754.001_001 Mon Feb 6 11:13:40 CEST 2017 76 * Sereal v4 release with Zstandard compression support 77 https://github.com/facebook/zstd 78 793.015 Thu Sep 1 20:18:44 CEST 2016 80 * Fix builds under 5.25+ 81 * Fix various buffer overun bugs found using AFL (thanks to dgryski) 82 * Fix issue in decode_from_file() 83 843.014 Dec 7 2015 85 * Fix builds under 5.8.9 86 873.012 Dec 6 2015 88 * Yet another release related to broken META files. 89 ExtUtils::MakeMaker and CPAN::Meta need to be up to date 90 or the META files miss stuff. 91 923.011 Dec 6 2015 93 * No significant changes. Doc typo fixes, and build tweaks. 94 953.010 Nov 30 2015 96 * Fix silly build issue for Sereal. We do some magic so that things 97 "Just Work" when building from withing the git repo, but that magic 98 was failing due to a precedence issue in the magic detection logic. 99 This mean that users building in a git based .cpan dir would see 100 breakage. 101 1023.009 Nov 30 2015 103 * Re-relase 3.008 with updated META files. 104 1053.008 Nov 27 2015 106 * [ENCODER] FIX: Make sure that reserializing a data structure created 107 using alias_varint_under does not produce a corrupted dataset. 108 Thanks to Iskra for the report. 109 * [ENCODER] FIX: Precedence issue related to sort keys options. 110 Thanks to Petr Písař <ppisar@redhat.com> for the report and fix. 111 * [ENCODER/DECODER] FIX: Win32 build issues. 112 1133.007 Nov 26 2015 114 * [DECODER] Build fixes for boxes without any Sereal installed (it seems 115 to be common on certain types of smokers, and not on others). 116 * [ENCODER]: Base sort order changed, new sort orders added. 117 Rework sort logic to be more efficient, fix sorted tied hashes, 118 define new sort order. 119 See Sereal::Encoders CHANGES files. 120 * [ENCODER] Handle PVLV undefs 121 * [ENCODER] General optimizations. 122 * [ENCODER] Build fixes for 5.8.9 123 * [ENCODER] Doc patches 124 * Win32 build fixes. 125 1263.006 Nov 14 2015 127 * [DECODER] fix segfaults from heavily corrupted data. Guards 128 against various pathological cases which could cause segfaults 129 fixed. Thanks to Damian Gryski and "fuzzing sereal with afl" 130 for finding these cases. 131 * [ENCODER] Various subtle fixes to how we choose whether to serialize 132 the string or numeric version of a value, in particular to 133 ensure that "00" always round trips as "00", and related issues. 134 Note this fix has correctness and performance consequences. In 135 some cases values that used to serialized as integers (arguably 136 incorrectly) will be serialized as strings instead, and some code 137 maybe be slower to serialize. 138 NOTE: Some issues related to this subject are not fixable without 139 a protocol change. In particular this change may affect the behavior 140 of code that uses binary logical operators on values serialized 141 with Perl. 142 Thanks to Zefram, Tom, and others for help with this issue. 143 * Fixups for cast warnings under -Wint-to-ptr builds by using 144 using PTR2INT and INT2PTR for casting our objects. 145 * Win32 fixes 146 * Build improvements 147 * Changes to how we generate constants 148 1493.005 Jan 05 2015 150 * Build improvements related to char signedness being platform 151 dependent. 152 1533.004 Dec 27 2014 154 * Performance optimizations and other miscellaneous changes. 155 * Build improvements. 156 * Win32 fixes for weakrefs. 157 1583.003 Oct 19 2014 159 * Niko Tyni fixed the 64-bit big endian Sereal bug! (Yay Niko!) 160 * Setup META.yml correctly so that certain dependencies are 161 marked as being test dependencies and not build or run-time 162 dependencies. 163 * Allow one to build against an externally supplied version 164 of csnappy or miniz. Thanks to Petr Písař <ppisar@redhat.com> 165 1663.002 Aug 20 2014 167 Summary of changes from 3.001 - 3.002 168 - Encoder: Introduce "canonical" option to encoder 169 - Encoder: Introduce "canonical_refs" option to encoder 170 - Decoder: Introduce "set_readonly" option to decoder 171 - Decooder: Introduce "set_readonly_scalars" option to decoder 172 173 * Decoder Bug fixes 174 - Fix assertion fails in DEBUG perls (Brian Fraser) 175 - Fix segfault with "into" interface when decoding references and 176 strings into the same target SV. See new test t/550_decode_into.t 177 178 * Test Infra Changes 179 - Split up bulk tests to speed up testing and make it easier 180 to see when a failure is restricted to a specific option. 181 182 * Big-Endian Support 183 - Improved support for Big-Endian machines. We now build and pass test 184 on Sparc and HP-UX and other platforms with big-endian or strict 185 alignedness requirements. Much thanks to Jarkko Hietaniemi, 186 Gregor Herrmann, and H. Merijn Brand for for their assistance with 187 this. 188 - We still have issues with s390x (Z/Os) with Sereal. If someone wants 189 to help it would be appreciated. 190 1913.001 192 - Production release 1 of protocol version 3 193 - Zlib support 194 - CANONICAL_UNDEF, 195 - new magic header to make it easier to detect 196 UTF8 encoded data. 197 - Minor changes to how scalar values are serialized 198 to favour more compact representations. 199 200Full change history available at https://github.com/Sereal/Sereal 201