Releases: DataDog/dd-sdk-cpp
Releases · DataDog/dd-sdk-cpp
Release list
0.5.0
Breaking Changes
dd_rum_start_view_obj()anddd_rum_stop_view_obj()functions have been removed. Usedd_rum_start_view()anddd_rum_stop_view()instead.datadog::CoreConfig::SetApplicationVersion()is renamed todatadog::CoreConfig::SetVersion()(anddd_core_config_set_application_version()is nowdd_core_config_set_version()).- The
datadog_install()CMake convenience function now requires keyword argumentsRUNTIME_DESTINATIONandLIBRARY_DESTINATION. Replacedatadog_install(bin)withdatadog_install(RUNTIME_DESTINATION bin).
Features
- Pre-built macOS release artifacts are now universal binaries containing both
arm64andx86_64slices. - Added support for the
us2-fedsite.
Fixes
datadog_install()now automatically deploys the SDK shared library alongside the application and configures the correct runtime search path (RPATH) on POSIX platforms.- Strings passed as
nameorkeyto the RUM Operations API are now safely copied, preventing potential crashes or undefined behavior if the original string is destroyed or modified after the call returns. - Fixed compilation errors when building for 32-bit ARMv7 targets caused by C++ type-deduction issues.
0.4.0
Breaking Changes
- When recording a log message via
dd_logger_<level>()ordatadog::Logger::<Level>(), the API allows anerrparameter to be passed regardless of log level. - The
errvalue passed in log calls now accepts amessagestring, which will be included in resulting log and RUM events aserror.message.
Fixes
- When a logger forwards error details to RUM, RUM now correctly populates
error.messagefrom the error message rather than the log message text.
0.3.0
Note
Initial preview release of the Datadog C++ SDK.
While at v0, breaking API changes may be introduced in minor-version releases.
Features
- The SDK may be incorporated into an existing CMake project via
FetchContentorfind_package. - APIs are available for both C and C++.
- The SDK may be configured and initialized via
datadog::Coreordd_core_t. - Diagnostic output will be written to
stderrby default; useSetDiagnosticHandler()to reroute or suppress this output. - Transient data will be stored under
.datadog/in the working directory; useSetApplicationStoragePath()to configure an explicit path that's unique to your application. - Support for user tracking consent is fully implemented: data will not be stored when consent is revoked, and data will only be uploaded once consent is granted.
- Use the RUM feature to track views, actions, resources, errors, and operations.
- Use the Logging feature to send remote log messages to Datadog.
- Use the Crash Reporting feature to detect crashes and report them as RUM Errors on next launch.