Commit 5152cb4
Reduce binary footprint and support embedding the SDK as a CMake subproject (#1499)
* Add BUILD_CURL_HTTP_CLIENT option to build Linux without curl/TLS
On the CPP11/curl path (non-Apple, non-Windows), the built-in libcurl
HTTP client was always compiled and curl was a hard find_package(CURL
REQUIRED) dependency -- pulling in curl and a TLS backend (OpenSSL/mbedTLS)
even for hosts that already have their own HTTP stack.
Add option(BUILD_CURL_HTTP_CLIENT ON). When OFF, the curl block is skipped
(no find_package(CURL), no link, no -DHAVE_MAT_CURL_HTTP_CLIENT) and the
build instead defines -DMATSDK_NO_DEFAULT_HTTP_CLIENT. mat/config.h then
undefines HAVE_MAT_DEFAULT_HTTP_CLIENT centrally (regardless of the config
preset), which the SDK already handles end-to-end: HttpClientFactory and
HttpClient_Curl.cpp compile out, and LogManagerImpl's existing
!HAVE_MAT_DEFAULT_HTTP_CLIENT branch requires the host to supply an
IHttpClient via CFG_MODULE_HTTP_CLIENT.
Default ON keeps existing behavior unchanged. Apple/Windows are unaffected
(they use native HTTP stacks and never enter the curl block).
Validated on WSL x64-linux: with OFF, libmat has no curl symbols and a
consumer links with no -lcurl/-lTLS (1.43 MB stripped, vs 4.39 MB with
curl+mbedTLS and 10.65 MB with curl+OpenSSL).
Files changed:
- CMakeLists.txt: BUILD_CURL_HTTP_CLIENT option + gating
- lib/include/mat/config.h: central HAVE_MAT_DEFAULT_HTTP_CLIENT opt-out
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Add MATSDK_MINIMAL_SQLITE: private feature-stripped SQLite to cut footprint
The SDK uses SQLite only for its offline event-storage cache (plain tables,
transactions, WAL, autovacuum/VACUUM, a few PRAGMAs, and one custom UTF-8
function), so most SQLite subsystems are dead weight. Add an option to compile a
private SQLite from the vendored amalgamation with a set of amalgamation-safe
strip flags (single source of truth: MATSDK_SQLITE_MINIMAL_DEFS), removing the
external sqlite3 dependency and shrinking SQLite ~10.2% (.text) / ~12.5% (object).
- Root CMakeLists.txt: add option(MATSDK_MINIMAL_SQLITE) (default OFF). In vcpkg
mode, skip find_package(unofficial-sqlite3) when bundling, and emit a clear
FATAL_ERROR pointing at the system-sqlite/minimal-sqlite features when neither
provides SQLite (e.g. a bare [core] install).
- lib/CMakeLists.txt: define MATSDK_SQLITE_MINIMAL_DEFS, compute MATSDK_BUNDLE_SQLITE
(minimal OR vendored-Android), and build a single sqlite3_bundled. The strip
flags are applied ONLY when MATSDK_MINIMAL_SQLITE is ON, so the default Android
legacy build keeps its existing unstripped bundled SQLite. Warnings are disabled
on the vendored target (/w on MSVC, -w on GCC/Clang for the stripped build) so
the SDK's -Werror/-WX does not fire on amalgamation code. A static mat propagates
the PRIVATE sqlite3_bundled through its link interface, so export+install it.
- MSTelemetryConfig.cmake.in: skip find_dependency(unofficial-sqlite3) when bundled.
- vcpkg port: add a minimal-sqlite feature (-DMATSDK_MINIMAL_SQLITE=ON) and move
sqlite3 into a default system-sqlite feature so [core,minimal-sqlite] drops it.
- docs/building-with-vcpkg.md: document the feature, the size win, and the
static-absorption symbol-visibility caveat.
SQLITE_OMIT_AUTOINIT and SQLITE_DEFAULT_MEMSTATUS=0 are deliberately NOT stripped:
the former because skipSqliteInitAndShutdown lets the host skip the SDK's explicit
sqlite3_initialize() (which the host cannot do against a private SQLite), the
latter because the SDK arms a soft heap limit via sqlite3_soft_heap_limit64() that
is only enforced while memory statistics are enabled.
Validated: vendored Linux Debug (77 offline-storage/SQLite unit tests pass on the
debug amalgamation), vcpkg [core,minimal-sqlite] consumer (links
MSTelemetry::sqlite3_bundled, runs 10/10, external sqlite3 dropped), default vcpkg
path regression (system-sqlite intact), and MSVC compile/link of sqlite3_bundled+mat.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Address Copilot review: scope bundled-SQLite export to static mat
- lib/CMakeLists.txt: only add sqlite3_bundled to the install/export set when mat
is a STATIC_LIBRARY. A shared mat absorbs the private SQLite into libmat and does
not propagate the PRIVATE dependency, so exporting the separate archive there was
unnecessary and could let a consumer link a second SQLite copy. For a static mat
the archive must stay exported because the static library propagates its PRIVATE
dependency through its link interface (\$<LINK_ONLY:...>).
- CMakeLists.txt: make the vcpkg dependency-mode status message reflect whether the
external sqlite3 package or the private minimal SQLite is used.
Verified with an isolated CMake export test: static mat exports m+sq (consumer
linking only the namespaced lib resolves sq); shared mat exports only m and
install(EXPORT) succeeds with sq excluded. Re-ran the vcpkg [core,minimal-sqlite]
consumer (static x64-linux): 10/10.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Clarify sqlite3_bundled PRIVATE-link comment (Copilot review)
Correct the inline comment: a PRIVATE link of the bundled SQLite suppresses
propagation of its include dirs / compile definitions, but a static mat still
propagates the archive for linking via \$<LINK_ONLY:...> (hence it is exported for
static builds); a shared mat absorbs it.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* vcpkg port: selectable TLS backend (curl-openssl/curl-mbedtls) + no-default-http-client feature
Make the HTTP-client footprint a consumer choice instead of hardcoding
curl[openssl]:
- vcpkg.json: replace the base curl[openssl] dependency with three features --
curl-openssl (default; libcurl + OpenSSL), curl-mbedtls (libcurl + mbedTLS), and
no-default-http-client (omit the built-in client). curl-openssl is a default
feature so a plain install keeps current behavior; [core,no-default-http-client]
drops curl entirely.
- portfile.cmake: map the no-default-http-client feature to -DBUILD_CURL_HTTP_CLIENT=OFF
via INVERTED_FEATURES.
- CMakeLists.txt: when the built-in client is enabled in vcpkg mode but libcurl is
not found, emit a clear FATAL_ERROR pointing at the curl-openssl/curl-mbedtls/
no-default-http-client features (instead of a bare find_package failure).
- docs: document the size ladder (OpenSSL ~10.6MB / mbedTLS ~4.4MB / no-curl
~1.4MB) and the exact mbedTLS recipe -- crucially, the consumer must ALSO list
curl with default-features:false at the top level, because vcpkg only honors
curl's default-features:false for top-level dependencies (otherwise curl's ssl
default pulls OpenSSL in transitively alongside mbedTLS).
Validated on WSL with vcpkg: default resolves curl[openssl]+sqlite3; the documented
mbedTLS recipe builds with mbedTLS only (no libssl/libcrypto, libcurl carries no
OpenSSL symbols) and the consumer runs; [core,no-default-http-client] drops curl
from the graph; [core,minimal-sqlite,no-default-http-client] drops curl and the
external sqlite3.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Harden HTTP-client features: CURL CONFIG mode + mutual-exclusivity guard (Copilot review)
- CMakeLists.txt: in vcpkg mode use find_package(CURL CONFIG QUIET) and gate on
TARGET CURL::libcurl. Forcing CONFIG selects the vcpkg-provided CURLConfig (which
defines the imported target) rather than the module FindCURL, which on some CMake
versions does not define CURL::libcurl and would fail at link.
- portfile.cmake: fail fast when more than one of curl-openssl/curl-mbedtls/
no-default-http-client is selected. vcpkg cannot express mutual exclusivity, so a
consumer requesting e.g. curl-mbedtls without [core] keeps the default
curl-openssl and would union both TLS backends; the guard now errors with guidance
to use the [core,...] form.
Validated: the guard passes single selections and fires on curl-openssl+curl-mbedtls
and curl-openssl+no-default-http-client; the default (curl-openssl) vcpkg consumer
still configures via CURL CONFIG, links, and runs.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Remove the no-curl (no-default-http-client) option
Drop the ability to build without the built-in libcurl HTTP client. That option
only benefited consumers that already ship their own IHttpClient; the SDK's named
consumers (and Apple/Windows, which use NSURLSession/WinInet) never needed it, and
it added a fragile feature plus a config-flow opt-out. The TLS-backend selection
(curl-openssl default / curl-mbedtls) and minimal-SQLite remain.
- CMakeLists.txt: remove option(BUILD_CURL_HTTP_CLIENT) and the no-curl else
branch; the curl HTTP client is always built on the CPP11/curl path again
(keeping the find_package(CURL CONFIG) + TARGET CURL::libcurl hardening).
- lib/include/mat/config.h: remove the MATSDK_NO_DEFAULT_HTTP_CLIENT ->
HAVE_MAT_DEFAULT_HTTP_CLIENT opt-out.
- vcpkg.json: remove the no-default-http-client feature.
- portfile.cmake: remove the INVERTED_FEATURES mapping; the mutual-exclusivity
guard now covers just curl-openssl vs curl-mbedtls.
- docs: drop the no-curl row/section; note the size figures are worst-case
(without consumer-side --gc-sections).
Validated: vcpkg.json parses, CMake configures cleanly, and the mat target builds
and links with the curl client compiled in.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* vcpkg: use Apple's system libsqlite3/libz on macOS/iOS instead of vcpkg packages
macOS/iOS ship libsqlite3 and libz as system libraries, so pulling and statically
linking the vcpkg sqlite3 + zlib packages added ~1 MB of redundant code to Apple
binaries. Link the system libraries instead -- consistent with the SDK's own Swift
Package (which links .linkedLibrary("sqlite3"/"z")) and with how analogous telemetry
SDKs (e.g. sentry-native) gate these deps off Apple platforms.
- vcpkg.json: gate the zlib dependency and the system-sqlite feature's sqlite3
dependency to "!osx & !ios" so they are not installed on Apple.
- CMakeLists.txt: on APPLE in vcpkg mode, find_package(SQLite3)/find_package(ZLIB)
(CMake's modules resolve to the OS libraries) and set MATSDK_APPLE_SYSTEM_DEPS.
- lib/CMakeLists.txt: link SQLite::SQLite3 + ZLIB::ZLIB on Apple; never bundle a
private SQLite on Apple (MATSDK_MINIMAL_SQLITE is a no-op there since the system
lib is already smaller).
- MSTelemetryConfig.cmake.in: re-find system SQLite3 on Apple, the vcpkg
unofficial-sqlite3 elsewhere.
- docs: note the Apple system-lib behavior.
Validated: non-Apple paths unchanged -- Linux vendored mat builds, and the Linux
vcpkg consumer's generated config resolves unofficial-sqlite3 (if(OFF)) and runs.
The Apple build itself needs validation on macOS/iOS CI (no Mac available here);
the risk is whether find_package(SQLite3) resolves the system lib under the vcpkg
Apple triplets' find-root settings.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Clarify mbedTLS guidance: [core,...] drops system-sqlite too
The curl-openssl/curl-mbedtls guidance in the port's fatal-error messages
and docs recommended cpp-client-telemetry[core,curl-mbedtls], but the
[core,...] form (default-features:false) drops ALL default features --
including system-sqlite -- not just curl-openssl. That example yields a
config-time failure with no SQLite backend selected.
Update both FATAL_ERROR messages (portfile.cmake mutual-exclusivity guard,
CMakeLists.txt libcurl-not-found) and the docs prose to show a complete,
working feature set ([core,curl-mbedtls,system-sqlite]) and to note that
[core,...] also drops system-sqlite, so a SQLite backend must be re-selected.
Files: tools/ports/cpp-client-telemetry/portfile.cmake, CMakeLists.txt,
docs/building-with-vcpkg.md
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Fix misleading curl 'optional' label and mbedTLS feature description
Two doc/manifest accuracy fixes from Copilot review:
- The dependency table labeled libcurl 'optional' for non-Windows/non-Apple,
but since the no-curl option was removed, Linux/Android vcpkg builds always
require curl (only the TLS backend is selectable). Relabel as required.
- The curl-mbedtls feature description recommended [core,curl-mbedtls], which
drops all defaults (incl. system-sqlite); note that a SQLite backend must be
re-selected to avoid a configure-time failure.
Files: docs/building-with-vcpkg.md, tools/ports/cpp-client-telemetry/vcpkg.json
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Harden [core,...] guidance and fix exported CURL find_dependency mode
Five fixes from the Copilot review on the curl/SQLite feature interactions
(all stem from vcpkg's [core,...] form dropping ALL default features, not
just one):
- portfile.cmake: fail fast on Linux/Android when no curl TLS backend is
selected (verified: a real vcpkg install of [core,minimal-sqlite] now stops
at the portfile with a complete [core,curl-openssl,system-sqlite] example,
instead of a later, opaque libcurl-not-found error).
- CMakeLists.txt libcurl message: show how to re-select a curl backend (not
only mbedTLS) under [core,...], alongside a SQLite backend.
- CMakeLists.txt SQLite message: include the valid [core,system-sqlite] path,
not only [core,minimal-sqlite].
- MSTelemetryConfig.cmake.in: find_dependency(CURL CONFIG) so the exported
package config uses the vcpkg CURLConfig that defines CURL::libcurl (the
target MSTelemetryTargets references), matching the unofficial-sqlite3/
nlohmann_json CONFIG siblings and the root CMakeLists CURL CONFIG lookup.
- docs: minimal-sqlite manifest example re-selects curl-openssl so the
Linux/Android manifest actually configures.
Files: CMakeLists.txt, cmake/MSTelemetryConfig.cmake.in,
docs/building-with-vcpkg.md, tools/ports/cpp-client-telemetry/portfile.cmake
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Scope curl TLS-backend guards to Linux/Android only
The mutual-exclusivity check (curl-openssl vs curl-mbedtls) previously ran on
all platforms. Since curl-openssl is a default feature and the curl dependency
is platform-filtered to linux|android, a cross-platform manifest that enables
curl-mbedtls without [core] would falsely fail the port on Windows/macOS/iOS --
where curl is not used (WinInet / Apple HTTP) and neither feature pulls curl.
Wrap both the mutual-exclusivity (count>1) and no-curl (count==0) checks in a
single VCPKG_TARGET_IS_LINUX/ANDROID block so they only fire where the curl
backend selection is actually meaningful. Verified on x64-linux: [core,minimal-
sqlite] still fails with the no-curl message, and [curl-mbedtls] (no core) still
fails with the mutual-exclusivity message.
Files: tools/ports/cpp-client-telemetry/portfile.cmake
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* vcpkg port tests: build the working tree, not a pinned release
The port tests built the SDK from the portfile's pinned vcpkg_from_github REF
(v3.10.161.1), so they never exercised the PR's own source -- and the macOS/iOS
jobs failed because this PR's manifest drops the Apple sqlite3/zlib packages
while the old pinned source still calls find_package(unofficial-sqlite3)
unconditionally (the Apple system-libs branch only exists in the PR source).
Add an opt-in MATSDK_VCPKG_SOURCE_DIR hook to portfile.cmake: when set, the port
builds that local source; when unset (production installs), the pinned release is
downloaded as before, so the published port behavior is unchanged. The five
tests/vcpkg/* scripts set it to the repo root so the port tests validate the
actual source + manifest together.
Verified on Linux (x64-linux): the port now builds the working-tree SDK and the
consumer passes 10/10; the macOS/iOS jobs will exercise the Apple system-libs
branch (find_package(SQLite3)/ZLIB) instead of the dropped vcpkg packages.
Files: tools/ports/cpp-client-telemetry/portfile.cmake,
tests/vcpkg/test-vcpkg-{linux,macos,ios,android}.sh,
tests/vcpkg/test-vcpkg-windows.ps1
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Fix Windows vcpkg test to actually build the working tree
On Windows, vcpkg runs portfiles in a sanitized environment and strips custom
variables unless allow-listed via VCPKG_KEEP_ENV_VARS. Without it the portfile
never saw MATSDK_VCPKG_SOURCE_DIR and silently fell back to the pinned release
(v3.10.161.1), so the Windows port test validated the old release instead of the
PR source while still reporting PASS. Allow-list the variable so the test builds
the working tree, matching the Linux/macOS scripts (POSIX vcpkg passes the
variable through, so they need no change).
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Gate test suites on top-level project (default OFF for consumers)
BUILD_UNIT_TESTS/BUILD_FUNC_TESTS defaulted to ON unconditionally, so a
downstream project consuming this repo via add_subdirectory()/FetchContent
built the whole test suite and required the third_party/googletest submodule.
Default them ON only when this repo is the top-level project
(PROJECT_IS_TOP_LEVEL on CMake >= 3.21, source-dir comparison on older CMake)
and OFF when consumed as a subproject. Direct/CI builds are unchanged
(top-level => ON) since build scripts rely on the default; verified
BUILD_UNIT_TESTS/BUILD_FUNC_TESTS=ON for a top-level configure and OFF via
add_subdirectory.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Address Copilot review: validate source dir, append VCPKG_KEEP_ENV_VARS
- portfile.cmake: validate MATSDK_VCPKG_SOURCE_DIR points at a real checkout
(CMakeLists.txt present) and fail early with a clear message instead of a
confusing downstream CMake error.
- test-vcpkg-windows.ps1: append MATSDK_VCPKG_SOURCE_DIR to VCPKG_KEEP_ENV_VARS
instead of overwriting it, preserving any entries the caller/CI already set.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Support consuming SDK as a CMake subproject in legacy mode
Applies the two changes the ONNX Runtime consumer patch carried so they can
be dropped from the downstream patch set.
Change 1 (CMakeLists.txt): use CMAKE_CURRENT_SOURCE_DIR instead of
CMAKE_SOURCE_DIR for the vendored sqlite/zlib/nlohmann include path, so the
headers still resolve when the SDK is added via add_subdirectory/FetchContent
(where CMAKE_SOURCE_DIR points at the consumer's root, not this repo).
Change 2 (lib/CMakeLists.txt): extend the Android bundled-deps legacy path to
also cover iOS. A cross-compile cannot reliably find a system libsqlite3, and
the vendored zlib renames its exports to act_z_* (zlib/names.h) so a system
libz cannot satisfy those symbols. iOS now builds the vendored sqlite
amalgamation + bundled zlib, matching Android. Only affects legacy mode
(MATSDK_USE_VCPKG_DEPS=OFF); the vcpkg Apple path still links system libs.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Explicitly disable warning-as-error for the vendored SQLite TU on MSVC
Address Copilot review comment on lib/CMakeLists.txt:470. The comment claimed
the build drops /WX for the vendored SQLite translation unit, but the code only
added /w. /w disables all warnings, but MSVC can still promote a non-suppressible
warning to an error under an inherited /WX. Add /WX- so the code literally
matches the comment's stated intent and cannot be broken by such a warning.
Verified cl.exe accepts /w /WX- together.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Clarify MATSDK_MINIMAL_SQLITE-on-Apple comment for the iOS legacy path
Address Copilot review comment on lib/CMakeLists.txt:446. Adding iOS to the
legacy bundled-SQLite path means MATSDK_MINIMAL_SQLITE is no longer a strict
no-op on all Apple builds: iOS in legacy mode (MATSDK_USE_VCPKG_DEPS=OFF)
bundles the amalgamation and applies the strip definitions to it, matching
Android legacy. Clarify the comment so it no longer reads as a blanket
'no effect on Apple' statement. No behavior change.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Link system sqlite3 + zlib on Apple legacy builds (match repo convention)
Take further inspiration from the ONNX Runtime consumer patch, verified against
what the repo already does on Apple.
The SDK's own iOS Xcode projects link libsqlite3.tbd + libz.tbd from the SDKROOT,
Package.swift links .linkedLibrary("sqlite3")/("z"), and #1499 already links the
system libsqlite3/libz on the vcpkg Apple path. Bundling is an Android-only
convention (the NDK ships no system zlib). So the earlier change that made iOS
legacy bundle sqlite+zlib was the inconsistent one; this aligns iOS with the rest
of the repo.
- Apple legacy (macOS + iOS) now links system `sqlite3 z` by portable names in a
single elseif(APPLE) branch. macOS moves off find_package(ZLIB) + hardcoded
Homebrew .a paths (non-relocatable) onto the same portable link names, so
exported static packages stay relocatable. iOS no longer bundles.
- iOS dropped from the MATSDK_BUNDLE_SQLITE gating and the bundled-zlib branch,
which are now Android-only.
- Exclude iOS from include_directories(/usr/local/include): that host (macOS) path
must not be injected into an iOS cross-compile's search path where it can shadow
the iOS SDK's own headers.
- Linux legacy simplified to find_package(SQLite3) (the Homebrew .a fallbacks were
macOS-only and are now handled by the Apple branch).
Verified: Linux top-level and add_subdirectory legacy builds both produce
libmat.so. The Apple legacy path is exercised by the macOS-latest CI leg
(build-posix-latest, legacy mode); iOS cannot be built on this host.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Drop redundant ZLIB include dir on the Linux legacy path
target_include_directories(mat PRIVATE ${ZLIB_INCLUDE_DIRS}) was redundant: mat
already links ZLIB::ZLIB (and SQLite::SQLite3), imported targets that propagate
their own include directories. Verified: Linux legacy mat build still resolves
<zlib.h> and produces libmat.so.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* vcpkg port: bump pinned REF to v3.10.173.1 to match the SDK version
The port pinned v3.10.161.1 while the SDK source on this branch is at
v3.10.173.1 (Version.hpp), leaving production installs two releases behind.
Bump the portfile REF + SHA512 and the vcpkg.json version to v3.10.173.1;
the SHA512 is computed from the release source tarball.
Note: the port's minimal-sqlite and Apple system-sqlite features depend on
CMake changes introduced by this PR that are not yet in any release tag. The
in-repo port tests exercise them against local source via
MATSDK_VCPKG_SOURCE_DIR, and the pinned REF must be advanced again to the
release that includes these changes once it is cut.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Validate vcpkg release bump production port path
After updating the vcpkg port REF/SHA512/version for a new SDK release,
exercise the real production port path with MATSDK_VCPKG_SOURCE_DIR unset.
This catches mismatches where the port manifest assumes source changes that
are not present in the release tag the port downloads.
When the new footprint features are present, validate the opt-in
minimal-sqlite + curl-openssl feature set so release automation covers both
release pinning and feature wiring before opening the vcpkg PR.
Validation:
- Parsed .github/workflows/vcpkg-release-bump.yml with PyYAML.
- Verified the feature-selection expression resolves to
cpp-client-telemetry[core,minimal-sqlite,curl-openssl] for the current port.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Remove vcpkg release-bump production validation
Remove the release-bump production-port validation added in 93dd36e.
The vcpkg port update will instead rely on the explicit release sequencing:
merge the SDK source changes, cut a new SDK tag, then bump the vcpkg REF,
SHA512, and version to that tag.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Revert "Remove vcpkg release-bump production validation"
This reverts commit dd6007a.
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>1 parent fa2734c commit 5152cb4
12 files changed
Lines changed: 552 additions & 70 deletions
File tree
- .github/workflows
- cmake
- docs
- lib
- tests/vcpkg
- tools/ports/cpp-client-telemetry
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
147 | 147 | | |
148 | 148 | | |
149 | 149 | | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
150 | 175 | | |
151 | 176 | | |
152 | 177 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
14 | 24 | | |
15 | 25 | | |
16 | 26 | | |
| |||
327 | 337 | | |
328 | 338 | | |
329 | 339 | | |
330 | | - | |
331 | | - | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
332 | 354 | | |
333 | 355 | | |
334 | 356 | | |
| |||
363 | 385 | | |
364 | 386 | | |
365 | 387 | | |
366 | | - | |
367 | 388 | | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
368 | 404 | | |
369 | 405 | | |
| 406 | + | |
370 | 407 | | |
371 | 408 | | |
372 | 409 | | |
| |||
383 | 420 | | |
384 | 421 | | |
385 | 422 | | |
386 | | - | |
387 | | - | |
388 | | - | |
389 | | - | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
390 | 457 | | |
391 | | - | |
392 | | - | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
393 | 463 | | |
394 | 464 | | |
395 | 465 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | | - | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
7 | 13 | | |
8 | 14 | | |
9 | 15 | | |
| |||
14 | 20 | | |
15 | 21 | | |
16 | 22 | | |
17 | | - | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
18 | 28 | | |
19 | 29 | | |
20 | 30 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
145 | 145 | | |
146 | 146 | | |
147 | 147 | | |
148 | | - | |
149 | | - | |
| 148 | + | |
| 149 | + | |
150 | 150 | | |
151 | | - | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
152 | 166 | | |
153 | 167 | | |
154 | 168 | | |
| |||
230 | 244 | | |
231 | 245 | | |
232 | 246 | | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
233 | 295 | | |
234 | 296 | | |
235 | 297 | | |
| |||
256 | 318 | | |
257 | 319 | | |
258 | 320 | | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
259 | 380 | | |
260 | 381 | | |
261 | 382 | | |
| |||
0 commit comments