1 |
Revision history for Perl extension CBOR::XS |
2 |
|
3 |
TODO: pack_keys? |
4 |
TODO: document encode_cbor_sharing? |
5 |
TODO: weaken cyclic structures? |
6 |
TODO: allowed_classes or so? |
7 |
|
8 |
TODO: Fredrik Ljunggren, document utf8_strings/keys |
9 |
- the Math::BigFloat maintainer apparently thinks that changing |
10 |
documented maths function to suddenly yield different results or |
11 |
to fail completely on valid input is cool. Try to work around |
12 |
this madness - if Math::BigFloat changes its API too much, |
13 |
future versions will have to remove support for bignums |
14 |
(bugreport by zdm@softvisio.net). |
15 |
- remove some weird dead code that was duplication (%FILTER). |
16 |
|
17 |
1.41 Thu 25 Feb 15:22:03 CET 2016 |
18 |
- avoid perl panics on nested FREEZE/THAW calls (testcase by |
19 |
Victor Efimov). |
20 |
|
21 |
1.4 Mon Feb 8 05:10:15 CET 2016 |
22 |
- buffer overflow fix: a fast path during decoding did not check |
23 |
remaining length when decoding hash keys, found by fuzzing. |
24 |
This can potentially leak information in the error message |
25 |
or crash the process. |
26 |
- use C style { 0 } struct initializer. |
27 |
- upgrade libecb. |
28 |
|
29 |
1.3 Mon Apr 27 22:21:04 CEST 2015 |
30 |
- the incremental parser didn't properly parse tagged values |
31 |
(testcase by Mons Anderson). |
32 |
- slightly speed up encoding of plain (nonmagical) arrays. |
33 |
- try to clarify further that effectively all 32 bit architectures |
34 |
have 64 bit integer support. |
35 |
- upgrade libecb. |
36 |
|
37 |
1.26 Sat Oct 25 08:35:44 CEST 2014 |
38 |
- update the t/57_incr.t subtest that would rely on 64 bit ints. |
39 |
- disable t/50_rfc.t test that fails because of broken data::dumper. |
40 |
|
41 |
1.25 Sun Jan 5 15:19:14 CET 2014 |
42 |
- map key decoding was pretty much botched due to the recent cleanups. |
43 |
- work around Time::Piece->epoch returning a string value, avoid encoding |
44 |
this as a tag 1 string. |
45 |
- enable more testcases in t/50_rfc.t, now that they work :) |
46 |
|
47 |
1.2 Tue Dec 10 22:06:42 CET 2013 |
48 |
- implement an incremental decoder. |
49 |
|
50 |
1.12 Tue Dec 3 11:23:22 CET 2013 |
51 |
- work around broken Time::Piece (in old versions of the module, %z doesn't |
52 |
work as documented, gives different results on different platforms(!)). |
53 |
|
54 |
1.11 Sun Dec 1 18:00:00 CET 2013 |
55 |
- new setting: validate_utf8, for when you can't trust your cbor data. |
56 |
- do not leak memory on decoding errors, when allow_cycles is enabled. |
57 |
- add default filters for tags 0 and 1, using Time::Piece. |
58 |
- more tests added. |
59 |
|
60 |
1.1 Sat Nov 30 19:14:27 CET 2013 |
61 |
- INCOMPATIBLE CHANGE: new decoder setting: allow_cyclic, needed to decode |
62 |
cyclic data structures (to avoid memleaks in unsuspecting code). |
63 |
- no longer "share" references that aren't, i.e. true/false/null/error/tagged. |
64 |
- fix stringref w.r.t. indefinite-length strings. |
65 |
- verify indefinite-length string chunk types. |
66 |
- do not allow extremely large arrays - assume an array element |
67 |
requires at least one CBOR byte, to avoid memory exhaustion attacks. |
68 |
- major code overhaul. |
69 |
|
70 |
1.0 Thu Nov 28 16:43:31 CET 2013 |
71 |
- use the now official tag values for extensions. remove the |
72 |
experimental notice. it's the real thing now, with real bugs. |
73 |
- renamed allow_stringref to pack_strings. |
74 |
- port to perl <= 5.16. |
75 |
- slightly improve the documentation. |
76 |
|
77 |
0.09 Fri Nov 22 16:54:18 CET 2013 |
78 |
- bignum/bigfloat/decimal support. |
79 |
- uri support. |
80 |
- tag filter functions support for decoding. |
81 |
- do not support reference-to-1/0/undef anymore, you need to use |
82 |
the Types::Serialiser objects now. |
83 |
- experimental sharable extension support (http://cbor.schmorp.de/value-sharing). |
84 |
- experimental stringref extension support (http://cbor.schmorp.de/stringref). |
85 |
- implement indirection tag (http://cbor.schmorp.de/indirection). |
86 |
|
87 |
0.08 Wed Oct 30 11:10:43 CET 2013 |
88 |
- defused another too fragile test. |
89 |
|
90 |
0.07 Tue Oct 29 23:04:07 CET 2013 |
91 |
- don't crash in decode when silly values are passed in. |
92 |
- considerably speed up map decoding when map keys |
93 |
are utf-8 or byte strings. |
94 |
- raising an exception in THAW should now work without |
95 |
leaking. |
96 |
|
97 |
0.06 Tue Oct 29 16:56:07 CET 2013 |
98 |
- do not leak when deserialiasing via THAW. |
99 |
- implement and document CBOR::XS creation/access/mutate |
100 |
methods. |
101 |
|
102 |
0.05 Mon Oct 28 22:27:47 CET 2013 |
103 |
- do not leak hash keys on decoding. |
104 |
|
105 |
0.04 Sun Oct 27 23:47:47 CET 2013 |
106 |
- implement TO_CBOR/FREEZE/THAW serialisation protocols. |
107 |
- requested perl-object and generic-object tags from iana. |
108 |
- switched to Types::Serialiser for true, false and error. |
109 |
- disabled some fragile tests (thanks, andk). |
110 |
|
111 |
0.03 Sun Oct 27 00:28:41 CEST 2013 |
112 |
- improve 32 bit platform compatibility. |
113 |
- take more advantage of ecb.h. |
114 |
- preliminary and bare-bones tagged support. |
115 |
- improved docs. |
116 |
|
117 |
0.02 Sat Oct 26 13:08:05 CEST 2013 |
118 |
- no aborts left. |
119 |
- add $CBOR::XS::MAGIC. |
120 |
- preliminary tagged decoding to arrayref. |
121 |
- indefinite encoding fixed. |
122 |
- half float decoding implemented. |
123 |
- t/50_rfc.t adds test vectors from the rfc, which |
124 |
are checked as applicable. |
125 |
|
126 |
0.01 Fri Oct 25 21:39:56 CEST 2013 |
127 |
- original version; cloned from JSON-XS |
128 |
|