@@ -4,29 +4,76 @@ All notable changes to this project will be documented in this file.
44The format is based on [ Keep a Changelog] ( https://keepachangelog.com/en/1.0.0/ ) ,
55and this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html ) .
66
7- ## [ Unreleased ]
7+ ## [ 0.16.0 ] 2024-11-25
88
99### Breaking Changes:
1010
11+ - All asynchronous callbacks now have both a ` status ` member and a
12+ ` coap_rsp_code ` member to replace the ` response ` member. All of the
13+ same information remains accessible. Update callback functions to
14+ match the new declaration and change any ` response->status ` checks to
15+ ` status ` .
1116- ` golioth_ota_download_component() ` has a new `uint32_t
1217 * next_block_idx` parameter. Use this to resume block download. Set to
1318 ` NULL ` to use previous functionality in existing code.
1419- The parameters for ` ota_component_block_write_cb() ` have changed to
1520 include ` block_buffer_len ` for the actual length of data and
1621 ` negotiated_block_size ` to indicate the maximum block size (may be
17- used along with ' block_idx' to calculate a byte offset).
22+ used along with ` block_idx ` to calculate a byte offset).
1823- ` golioth_ota_component->hash ` is now stored as an array of bytes
1924 instead of as a hex string.
20- - All asynchronous callbacks now have both a ` status ` member and a
21- ` coap_rsp_code ` member to replace the ` response ` member. All of the
22- same information remains accessible. Update callback functions to
23- match the new declaration and change any ` response->status ` checks to
24- ` status ` .
25+
26+ ### Highlights:
27+
28+ - Zephyr port updated to Zephyr v4.0
29+ - NCS port updated to NCS v2.8
30+ - Improved OTA stablility
31+
32+ ### Added:
33+
34+ - ESP-IDF: optional ipv6 support enabled by
35+ ` CONFIG_LIBCOAP_ENABLE_IPV6_SUPPORT `
36+ - LightDB/OTA/RPC: log message when an error response is received from
37+ server
38+ - CoAP: Server-negotiated block size for blockwise uploads
39+ - CoAP: optionally call a ` set_cb ` callback at the end of a blockwise
40+ upload operation
41+ - OTA: ability to resume a component download
42+ - ` golioth_sys_sha256_*() ` API for calculating OTA component hash
43+ - ` CONFIG_GOLIOTH_OTA ` to enable OTA component separately from fw_update
44+ component
45+ - Numerous hardware-in-the-loop (HIL) testing improvements for both code
46+ samples and integration tests
47+
48+ ### Changed:
49+
50+ - Certificates: Replace ISRG Root X2 CA certificate with Golioth
51+ Root X1 CA certificate.
52+ - Zephyr: Samples: kconfig and devicetree settings common to an SoC
53+ moved from ` boards ` directory to ` socs ` directory.
54+
55+ ### Fixed:
56+
57+ - Zephyr: Golioth coap client log messages now honor changes to the
58+ logging level.
59+ - Zephyr: Fixed off-by-one error in Golioth backend logging message
60+ length limit.
61+ - Zephyr: Connection ID is now properly enabled by Kconfig setting.
62+ - Zephyr: Run user callbacks when cancelling requests.
63+ - Linux: Error checks and max PEM size for certificate_auth sample.
2564
2665### Removed:
2766
2867- OTA compression was removed as the feature is currently unsupported on
2968 the servers side.
69+ - Golioth Basics sample removed from Zephyr and ESP-IDF. Existing
70+ per-feature sample code for these platforms covers everything
71+ demonstrated in that sample.
72+
73+ ### Known Issues:
74+ - [ Zephyr only] examples won't build for esp32_devkitc_wrover with
75+ support for certificates due to bugs in Zephyr that prevent all RAM
76+ banks from being made available to the application.
3077
3178## [ 0.15.0] 2024-09-04
3279
0 commit comments