|
| 1 | +Next |
| 2 | +--------------------- |
| 3 | +- BUILD BREAKING: Use BUILD_SHARED_LIBS to determine how to build libraries (fixed Windows linkage) [[#148]](https://github.com/PJK/libcbor/pull/148) (by [intelligide@](https://github.com/intelligide)) |
| 4 | +- BREAKING: Fix `cbor_tag_item` not increasing the reference count on the tagged item reference it returns [[Fixes #109](https://github.com/PJK/libcbor/issues/109)] (discovered bt [JohnGilmour](https://github.com/JohnGilmour)) |
| 5 | + - If you have previously relied on the broken behavior, you can use `cbor_move` to emulate as long as the returned handle is an "rvalue" |
| 6 | + |
| 7 | +0.7.0 (2020-04-25) |
| 8 | +--------------------- |
| 9 | +- Fix bad encoding of NaN half-floats [[Fixes #53]](https://github.com/PJK/libcbor/issues/53) (discovered by [BSipos-RKF](https://github.com/BSipos-RKF)) |
| 10 | + - **Warning**: Previous versions encoded NaNs as `0xf9e700` instead of `0xf97e00`; if you rely on the broken behavior, this will be a breaking change |
| 11 | +- Fix potentially bad encoding of negative half-float with exponent < -14 [[Fixes #112]](https://github.com/PJK/libcbor/issues/112) (discovered by [yami36](https://github.com/yami36)) |
| 12 | +- BREAKING: Improved bool support [[Fixes #63]](https://github.com/PJK/libcbor/issues/63) |
| 13 | + - Rename `cbor_ctrl_is_bool` to `cbor_get_bool` and fix the behavior |
| 14 | + - Add `cbor_set_bool` |
| 15 | +- Fix memory_allocation_test breaking the build without CBOR_CUSTOM_ALLOC [[Fixes #128]](https://github.com/PJK/libcbor/issues/128) (by [panlinux](https://github.com/panlinux)) |
| 16 | +- [Fix a potential build issue where cJSON includes may be misconfigured](https://github.com/PJK/libcbor/pull/132) |
| 17 | +- Breaking: [Add a limit on the size of the decoding context stack](https://github.com/PJK/libcbor/pull/138) (by [James-ZHANG](https://github.com/James-ZHANG)) |
| 18 | + - If your usecase requires parsing very deeply nested structures, you might need to increase the default 2k limit via `CBOR_MAX_STACK_SIZE` |
| 19 | +- Enable LTO/IPO based on [CheckIPOSupported](https://cmake.org/cmake/help/latest/module/CheckIPOSupported.html#module:CheckIPOSupported) [[#143]](https://github.com/PJK/libcbor/pull/143) (by [xanderlent](https://github.com/xanderlent)) |
| 20 | + - If you rely on LTO being enabled and use CMake version older than 3.9, you will need to re-enable it manually or upgrade your CMake |
| 21 | + |
| 22 | +0.6.1 (2020-03-26) |
| 23 | +--------------------- |
| 24 | +- [Fix bad shared library version number](https://github.com/PJK/libcbor/pull/131) |
| 25 | + - **Warning**: Shared library built from the 0.6.0 release is erroneously marked as version "0.6.0", which makes it incompatible with future releases *including the v0.6.X line* even though they may be compatible API/ABI-wise. Refer to the documentation for the new SO versioning scheme. |
| 26 | + |
| 27 | +0.6.0 (2020-03-15) |
| 28 | +--------------------- |
| 29 | +- Correctly set .so version [[Fixes #52]](https://github.com/PJK/libcbor/issues/52). |
| 30 | + - **Warning**: All previous releases will be identified as 0.0 by the linker. |
| 31 | +- Fix & prevent heap overflow error in example code [[#74]](https://github.com/PJK/libcbor/pull/74) [[#76]](https://github.com/PJK/libcbor/pull/76) (by @nevun) |
| 32 | +- Correctly set OSX dynamic library version [[Fixes #75]](https://github.com/PJK/libcbor/issues/75) |
| 33 | +- [Fix misplaced 0xFF bytes in maps possibly causing memory corruption](https://github.com/PJK/libcbor/pull/82) |
| 34 | +- BREAKING: Fix handling & cleanup of failed memory allocation in constructor |
| 35 | + and builder helper functions [[Fixes #84]](https://github.com/PJK/libcbor/issues/84) |
| 36 | + - All cbor_new_* and cbor_build_* functions will now explicitly return NULL when memory allocation fails |
| 37 | + - It is up to the client to handle such cases |
| 38 | +- Globally enforced code style [[Fixes #83]](https://github.com/PJK/libcbor/issues/83) |
| 39 | +- Fix issue possible memory corruption bug on repeated |
| 40 | + cbor_(byte)string_add_chunk calls with intermittently failing realloc calls |
| 41 | +- Fix possibly misaligned reads and writes when endian.h is uses or when |
| 42 | + running on a big-endian machine [[Fixes #99](https://github.com/PJK/libcbor/issues/99), [#100](https://github.com/PJK/libcbor/issues/100)] |
| 43 | +- [Improved CI setup with Travis-native arm64 support](https://github.com/PJK/libcbor/pull/116) |
| 44 | +- [Docs migrated to Sphinx 2.4 and Python3](https://github.com/PJK/libcbor/pull/117) |
| 45 | + |
| 46 | +0.5.0 (2017-02-06) |
| 47 | +--------------------- |
| 48 | +- Remove cmocka from the subtree (always rely on system or user-provided version) |
| 49 | +- Windows CI |
| 50 | +- Only build tests if explicitly enabled (`-DWITH_TESTS=ON`) |
| 51 | +- Fixed static header declarations (by cedric-d) |
| 52 | +- Improved documentation (by Michael Richardson) |
| 53 | +- Improved `examples/readfile.c` |
| 54 | +- Reworked (re)allocation to handle huge inputs and overflows in size_t [[Fixes #16]](https://github.com/PJK/libcbor/issues/16) |
| 55 | +- Improvements to C++ linkage (corrected `cbor_empty_callbacks`, fixed `restrict` pointers) (by Dennis Bijwaard) |
| 56 | +- Fixed Linux installation directory depending on architecture [[Fixes #34]](https://github.com/PJK/libcbor/issues/34) (by jvymazal) |
| 57 | +- Improved 32-bit support [[Fixes #35]](https://github.com/PJK/libcbor/issues/35) |
| 58 | +- Fixed MSVC compatibility [[Fixes #31]](https://github.com/PJK/libcbor/issues/31) |
| 59 | +- Fixed and improved half-float encoding [[Fixes #5](https://github.com/PJK/libcbor/issues/5), [#11](https://github.com/PJK/libcbor/issues/11)] |
| 60 | + |
| 61 | +0.4.0 (2015-12-25) |
| 62 | +--------------------- |
| 63 | +Breaks build & header compatibility due to: |
| 64 | + |
| 65 | +- Improved build configuration and feature check macros |
| 66 | +- Endianess configuration fixes (by Erwin Kroon and David Grigsby) |
| 67 | +- pkg-config compatibility (by Vincent Bernat) |
| 68 | +- enable use of versioned SONAME (by Vincent Bernat) |
| 69 | +- better fuzzer (wasn't random until now, ooops) |
| 70 | + |
| 71 | +0.3.1 (2015-05-21) |
| 72 | +--------------------- |
| 73 | +- documentation and comments improvements, mostly for the API reference |
| 74 | + |
| 75 | +0.3.0 (2015-05-21) |
| 76 | +--------------------- |
| 77 | + |
| 78 | +- Fixes, polishing, niceties across the code base |
| 79 | +- Updated examples |
| 80 | +- `cbor_copy` |
| 81 | +- `cbor_build_negint8`, 16, 32, 64, matching asserts |
| 82 | +- `cbor_build_stringn` |
| 83 | +- `cbor_build_tag` |
| 84 | +- `cbor_build_float2`, ... |
| 85 | + |
| 86 | +0.2.1 (2015-05-17) |
| 87 | +--------------------- |
| 88 | +- C99 support |
| 89 | + |
| 90 | +0.2.0 (2015-05-17) |
| 91 | +--------------------- |
| 92 | + |
| 93 | +- `cbor_ctrl_bool` -> `cbor_ctrl_is_bool` |
| 94 | +- Added `cbor_array_allocated` & map equivalent |
| 95 | +- Overhauled endianess conversion - ARM now works as expected |
| 96 | +- 'sort.c' example added |
| 97 | +- Significantly improved and doxyfied documentation |
| 98 | + |
| 99 | +0.1.0 (2015-05-06) |
| 100 | +--------------------- |
| 101 | + |
| 102 | +The initial release, yay! |
0 commit comments