BREAKING CHANGES:
- Changed license of the free version to AVSystem-5-clause
- Refactored the attr_storage module as a core feature
- Names of the relevant CMake options and configuration macros have changed
- anjay_attr_storage_install() has been removed; Attribute Storage is now
always installed if enabled at compilation time
- Behavior of anjay_attr_storage_restore() has been changed - this function
now fails if supplied source stream is empty
- The "con" attribute is now included in anjay_dm_oi_attributes_t, as it has
been standardized for LwM2M TS 1.2
- Refactored public headers to consistently use conditional compilation; APIs
for disabled features are no longer accessible
- Removed previously deprecated APIs
- avs_commons 5.0 refactor the API for providing PSK credentials. Please refer
to the change log there, or the document below for details:
https://avsystem.github.io/Anjay-doc/Migrating/MigratingFromAnjay215.html
Features:
- LwM2M TS 1.1 support and related features are now available in the open source
version; the features include:
- Support for TCP binding
- Support for SenML JSON, SenML CBOR and raw CBOR content formats
- Support for the Send operation
- Possibility for automatically moving security credentials provisioned by the
Bootstrap Server or the bootstrapper module onto hardware security engines
(note: no hardware security engine implementation is provided in the open
source version)
- Security credentials provisioned by the Bootstrap server or bootstrapper
module and automatically moved onto hardware security engine can now be marked
as "permanent" to prevent them from being removed
- (commercial feature only) Experimental support for some LwM2M TS 1.2 features
Improvements:
- Refactored incoming message handling to make use of the
AVS_NET_SOCKET_HAS_BUFFERED_DATA feature added in avs_commons 5.0
- Refactored and simplified internal flow of calling data model handlers
- Refactored internal handling of communication state
- Commercial features are now available for separate inclusion, described in the
documentation more clearly and feature code examples
- Various improvements in the documentation
Bugfixes:
- Fixed some uninitialized variables in IPSO object implementations
- Fixed some compilation warnings in unit tests
- Fixed compatibility of integration tests with OpenSSL 3
- Fixed socket flag handling in tests that were breaking with some versions of
Python
- Fixed some obsolete information in Doxygen documentation
- (commercial feature only) Added a validity check for the certificate
provisioned via EST; previous code could lead to an assertion failure if the
server misbehaved or the system clock was not set correctly