ReleaseNotes16r1:SDK

From innovaphone wiki
Jump to navigation Jump to search
There are also other versions of this article available: ReleaseNotes13r1 | ReleaseNotes13r2 | ReleaseNotes13r3 | ReleaseNotes14r1 | ReleaseNotes14r2 | ReleaseNotes15r1 | ReleaseNotes16r1 (this version)

This is the SDK 16r1 Release Notes Document.

Service Releases are planned for the second monday each month.

Please see the disclaimer before using the information presented here!


SDK 16r1

16r1 Main Improvements

198426 - JS SDK: Support for queueMicrotask

The function can be used to queue a callback that shall be executed after the current code and all other microtasks have been completed but before yielding control to main event loop.

For details see: https://sdk.innovaphone.com/16r1/doc/javascript/Global.htm#queueMicrotask

209472 - JS SDK: Support for UTF-8 surrogates

UTF-8 surrogates like emojis were not fully supported, yet.

212027 - SMTP: Added OAuth2 for E-Mail

16r1 Other Improvements

204691 - Added libasan support for builds

Additional notes:
  • Debug builds will use libasan by default.
  • To create a release build with libasan, ASAN=1 must be passed to make. The asan release builds will be written to a seperate output folder with an -asan suffix.
  • In case of an error, the asan log will be written to /var/log/apps/<appname>/asan.<appname>.<pid of process>.
  • For Debug builds, the asan log will be printed to stdout when executed using gdb.

208489 - AppWebsocketClient: fixed occasional trap with async authenticator login

If the result of the asynchronous authenticator login triggered after the underlying websocket connection was closed and this connection was reestablishing, the App crashed due to a wrong state in the websocket client.

209428 - C++ SDK: New functions for conversion between CESU-8 and UTF-8 encoding

dword str::from_cesu8(const char * in, char * out, dword len);

dword str::from_cesu8(char * inout);
dword str::to_cesu8(const char * in, char * out, dword len);

212680 - DBfiles: fixed handling of files larger than 2GB

The length parameter was an unsigned 32bit value.

Added 64bit aware functions in 14r2 and 15r1, while these functions are mandatory in 16r1.

Affected functions:

IDbFilesPathInfo::Get
IDbFilesEntryInfoGet::Get
IDbFilesList::Get
IDbFiles::Get

210211 - Generate NOTICE.TXT with open source licenses

208062 - mySQL: GetStringValueWithNull returned nullptr for empty strings

It might happen that GetStringValueWithNull returned a nullptr for empty strings instead an empty string.

204579 - New function ICertificateInformation::GetKeyType

certificate_key_type_t ICertificateInformation::GetKeyType()

To determine if the certificate is RSA or EC.

CertificateKeyTypeToStr can be used to convert enum to const char *

203341 - PostgreSQL: fixed potential crash on query errors

If a query triggered an error, there might have been a crash under certain circumstances.

206889 - SDK Docu: "com.innovaphone.phone" - CallInfo

added new parameter "autoshow".

200351 - SDK Docu: Add library documentation for Statistics()

Add library documentation for Statistics() as availabe service library for Javascript Generic Apps

207659 - SDK Docu: AppWebsocket: Add example for determining the base URL of an app instance

See: https://sdk.innovaphone.com/16r1/sdk/common/lib/appwebsocket.htm#ExampleBaseURL

205147 - SDK Docu: Use SettingsPlugin instead of PbxManager

206686 - SDK: Added start.visible and start.onvisiblechanged

  • start.visible tells if the app is currently visible to the user. This is the case if it's the current app in the main window of myApps or if it is running in a detached window.
  • start.onvisiblechanged fires if start.visible has changed.

201424 - SDK: debug function SaveLogs

The function SaveLogs allows to copy the current logs to a log file with fileNameSuffix inside its name to preserve the logs for special use cases.

The App Platform Manager marks App services with such files and allows to download them in an archive.

206011 - SDK: fixed IFilesWrite/IFilesRead on direct failure in Start

If Start already fails, the TaskFailed callback is now triggered asynchronously, as a synchronous call often leads to memory violations as the calling object is deleted too early.

207217 - SDK: support for MTLS client connections with DN requests

MTLS client connections did not work if the server requested certain Distinguished Names and the local client certificate didn't match.

Now no certificate is sent at all if no DN matches. If one matches or the server didn't request any DN in the Certificate Request message, the client certificate is sent.

196234 - UI1: Support for multiple translations at same node

addTranslation can now be called multiple times for different attributes.

199611 - Use system font in apps

Use system font in apps instead of Titillium

212307 - Visual Studio Plugin - disable app ID check on upload

The App Manager checks for the App ID (with manufacturer and app name) in new firmware versions. That let to issues during development so the check has been deactivated.