Skip to content

26.8.1

Latest

Choose a tag to compare

@turtledreams turtledreams released this 20 Oct 10:36
d04e5a1
  • ! Minor breaking change ! Builds now stop with a clear error when the SDK headers find a nlohmann/json older than 3.11 first on the include path, instead of mixing two versions of the library.

  • Added the COUNTLY_USE_SYSTEM_JSON CMake option for building against the application's own nlohmann/json (3.11 or newer) instead of the bundled copy (default OFF).

  • Added support for static library builds with the built-in HTTP client (libcurl) on Linux and macOS.

  • Added CMake package files: an installed SDK is found with find_package(countly CONFIG) and linked as countly::countly, the same target name as with add_subdirectory.

  • Added an in-memory fallback to SQLite builds: when no database path is set or the database cannot be opened, the SDK logs it and keeps events and requests in memory instead of not starting.

  • Added setDatabasePath to builds without SQLite; it logs a warning and ignores the path, so the same code works with both builds.

  • Mitigated an issue where session, view and timed event durations changed when the system clock was adjusted while the app was running.

  • Mitigated an issue where cmake --install produced an include folder that could not be compiled against.

  • Mitigated an issue where macOS builds replaced an OPENSSL_ROOT_DIR passed to CMake with Homebrew's OpenSSL.

  • Mitigated an issue where Android NDK builds failed with -Werror=format-security errors in constants.hpp.

  • Mitigated an issue where SQLite builds did not store events and requests that contained a single quote.

  • Mitigated an issue where the previous user's details were sent with the new user's session after a device ID change without merge.

  • Mitigated an issue where no requests were delivered when the server URL ended with a slash.

  • Mitigated an issue where, on Linux and macOS, a server that stopped answering held back all further requests; requests now time out after 30 seconds.

  • Mitigated an issue where apps using a SQLite-enabled SDK could crash unless they defined COUNTLY_USE_SQLITE themselves; the public headers no longer depend on it.