3.5 KiB
Open Source components
These are the Open Source components used by Microsoft 1DS / C++ Client Telemetry SDK.
ZLib
ZLIB DATA COMPRESSION LIBRARY.
SDK maintains its own snapshot of the mainline ZLib with some Intel architecture performance optimizations here. It is the responsibility of product teams to ensure that a snapshot of zlib they use meets their product security and licensing requirements.
SQLite
SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine.
SDK maintains its own snapshot of the mainline SQLite, which is used for Windows builds here. Other platforms use platform-provided SQLite. It is the responsibility of product teams to ensure that a snapshot of zlib they use meets their product security and licensing requirements.
nlohmann/json
JSON for Modern C++.
SDK maintains its own snapshot of the mainline nlohmann/json
header-only library here.
libcurl
libcurl - the multiprotocol file transfer library.
SDK uses libcurl
provided as part of OS package on Linux, Mac, iOS; and as part of OS build tree on Android.
Google Test
Google's C++ test framework. Used only for tests and not included in products.
Google Benchmark
Google's C++ benchmarking framework. Used only for tests and not included in products.
Tony Million Reachability Framework
Reachability is a drop-in replacement for Apple's Reachability class. It is ARC-compatible, and it uses the new GCD methods to notify of network interface changes.
SDK maintains its own snapshot of the mainline tonymillion/Reachability
here. This code is not used nor included in the build of non-Apple OS.
Please note if customer product is adding dependency to this component, they should ensure it meets their product security and licensing requirements.
SHA-1 by Steve Reid
Classic implementation of SHA-1 (Public Domain). SDK maintains its own snapshot of it here. Note that this component is not included or compiled into any of the shipable bits of SDK. It is included for internal developer debug builds only. For example, SHA-1 may be used to calculate destination ETW Provider GUID based on ETW Provider name on Windows OS in developer trace tooling / instrumentation. Please note if customer product is adding dependency to this component, they should ensure it meets their product security and licensing requirements.
Other components and systems
Other Open Source components that may be indirectly included by Open Source build tooling, instrumentation and other SDKs (e.g. Apple SDK or Android SDK) used for a corresponding platform:
- CMake
- Gradle
- Android NDK
- OpenSSL
SDK does not compile these components from source. It uses the mainstream prebuilt packages as provided by corresponding development platform SDKs.
Please refer to original development platform SDKs for the original source code packages:
Please reach out to 1ds.sdk.cpp DL if you identified OSS component used by SDK that has not been listed. It will be added to this list.