Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
cf562a7
Modernize GitHub Actions workflows and fix CI issues
bmehta001 Mar 18, 2026
0cb07fc
Fix iOS CI: use simulator UUID for unambiguous xcodebuild destination
bmehta001 Mar 18, 2026
12a0d09
Fix iOS HTTP client crashes and test flakiness
bmehta001 Mar 18, 2026
90958a7
Fix data race in TransmissionPolicyManager and memory leak in WorkerT…
bmehta001 Mar 18, 2026
1d3c37f
Fix static-destruction-order crash in Logger destructor
bmehta001 Mar 18, 2026
a014233
Fix Android build: correct __ANDROID__ macro and suppress warnings
bmehta001 Mar 18, 2026
c08dd6e
Fix flaky tests: use 127.0.0.1 and relax CI timing tolerances
bmehta001 Mar 18, 2026
0d5637e
Fix WorkerThread: only clean up queues after successful join
bmehta001 Mar 18, 2026
e28c84e
Make m_runningLatency atomic to eliminate data races
bmehta001 Mar 18, 2026
48b0107
Revert m_runningLatency move into LOCKGUARD (now atomic, lock unneces…
bmehta001 Mar 18, 2026
cc259a3
Restore original m_runningLatency position to match main
bmehta001 Mar 18, 2026
c64663d
Fix MSVC build: use .load() for atomic in variadic LOG_TRACE calls
bmehta001 Mar 18, 2026
d8674bb
Fix compiler warnings: split GCC/Clang flags and add -fno-finite-math…
bmehta001 Mar 18, 2026
c129c88
Fix flaky functional tests: increase timeouts for iOS simulator
bmehta001 Mar 18, 2026
7c89cf6
Fix MultipleLogManagersTests: atomic counter and relaxed timeouts
bmehta001 Mar 18, 2026
c57e7d6
Increase upload timeout in DebugEventListener test for slow CI
bmehta001 Mar 18, 2026
1872937
Skip network-dependent test section on iOS simulator
bmehta001 Mar 18, 2026
e85c822
Revert HttpClientManager, HttpResponseDecoder, WorkerThread to main
bmehta001 Mar 19, 2026
43eeaec
Restore to known-good state (7c89cf6c)
bmehta001 Mar 19, 2026
2e22dcb
Simplify Apple HTTP: keep session alive across SDK reinitializations
bmehta001 Mar 25, 2026
8d894fe
Fix stale comment in HttpClient_Apple destructor
bmehta001 Mar 25, 2026
2d72372
Fix iOS simulator test flakiness: clean SQLite journals, increase ret…
bmehta001 Mar 26, 2026
6005eee
Widen PalTests timing tolerances for iOS simulator CI
bmehta001 Mar 26, 2026
f2e5d17
Fix APITest CleanStorage to remove SQLite journal files
bmehta001 Mar 26, 2026
9d16a44
Fix AISendTests CleanStorage to remove SQLite journal files
bmehta001 Mar 26, 2026
3a37981
Fix APITest: separate DB for DebugEventListener Phase 2, fix BadNetwo…
bmehta001 Mar 26, 2026
4476082
Fix flaky DebugEventListener test: add delay before phase2 DB setup
bmehta001 Mar 27, 2026
db1ee62
Fix DebugEventListener: use unique phase2 DB paths instead of sleep
bmehta001 Mar 27, 2026
b78c988
Fix multi-batch upload flakiness in BasicFuncTests
bmehta001 Mar 27, 2026
666c546
Fix cross-test config contamination and tighten timing tolerances
bmehta001 Mar 27, 2026
3907354
Set faster retry backoff for localhost tests
bmehta001 Mar 27, 2026
710a531
Remove explicit production upload from DebugEventListener Phase 2
bmehta001 Mar 27, 2026
79342fe
Make m_scheduledUploadTime atomic for explicit thread safety
bmehta001 Apr 1, 2026
c049bc2
Add 30-minute timeout to iOS CI to prevent deadlock hangs
bmehta001 Apr 1, 2026
9656195
Fix Linux/Windows test regressions
bmehta001 Mar 19, 2026
a12cb11
Revert LogSessionDataDBTests to match main
bmehta001 Mar 19, 2026
bbc278d
Fix flaky functional tests: increase timeouts for iOS simulator
bmehta001 Mar 18, 2026
0aaca47
Remove stale header references from project files
bmehta001 Mar 18, 2026
2de6959
Apply CMake best practices to build and test files
bmehta001 Mar 18, 2026
2ad69b2
Modernize Visual Studio toolset detection
bmehta001 Mar 18, 2026
e0c5dc5
Apply CMake best practices to root and lib CMakeLists.txt
bmehta001 Mar 18, 2026
7d664c1
Sync to known-good state from ci-fixes (7c89cf6c)
bmehta001 Mar 19, 2026
816078a
Fix misquoted if(EXISTS) in lib/CMakeLists.txt
bmehta001 Mar 23, 2026
46e4666
Restore INSTALL_LIB_DIR for deb/rpm package builds
bmehta001 Mar 23, 2026
9a91839
Fix waitForEvents: use sleep(10) instead of yield() for iOS simulator
bmehta001 Apr 1, 2026
db8f155
Rearchitect CMake build for vcpkg port submission
bmehta001 Apr 1, 2026
f2abaa3
Add vcpkg port test infrastructure and CI workflow
bmehta001 Apr 1, 2026
2322404
Update examples and docs for vcpkg-based consumption
bmehta001 Apr 1, 2026
0996e5b
Update wrappers and misc files for vcpkg compatibility
bmehta001 Apr 1, 2026
0d9bb76
Add 30-minute timeout to iOS CI to prevent deadlock hangs
bmehta001 Apr 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,12 @@ GNUmakefile text
*.xml text
*.cfg text

## Exclude vcpkg port and test scaffolding from GitHub tarballs.
## This avoids a chicken-and-egg problem: the portfile contains a SHA512
## of the tarball, so changes to the portfile must not change the tarball.
tools/ports/ export-ignore
tests/vcpkg/ export-ignore

## Self-reference =)
.gitignore text
.gitattributes text
16 changes: 10 additions & 6 deletions .github/workflows/build-android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,18 @@ on:
- main
- dev


concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
runs-on: windows-latest
name: Build for Android
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: false
- name: Update submodules
Expand All @@ -32,22 +37,21 @@ jobs:
git config --global submodule.lib/modules.update none
git -c protocol.version=2 submodule update --init --force --depth=1
- name: Setup Java
uses: actions/setup-java@v3
uses: actions/setup-java@v5
with:
distribution: 'adopt'
java-version: '17'
- name: Remove default github maven configuration
# Workaround for: 'Unable to decrypt local Maven settings credentials'
run: rm $Env:USERPROFILE\.m2\settings.xml
- name: Setup Android SDK
uses: android-actions/setup-android@v2
uses: android-actions/setup-android@v3
- name: Install NDK
run: |
java -version
gci env:* | sort-object name
new-item "C:\Users\runneradmin\.android\repositories.cfg" -ItemType "file"
echo yes | .\sdkmanager.bat "ndk-bundle" "cmake;3.10.2.4988404" "ndk;27.0.12077973" --sdk_root=$Env:ANDROID_SDK_ROOT
working-directory: ${{ env.ANDROID_SDK_ROOT }}\cmdline-tools\7.0\bin
new-item "$Env:USERPROFILE\.android\repositories.cfg" -ItemType "file"
echo yes | sdkmanager "ndk-bundle" "cmake;3.10.2.4988404" "ndk;27.0.12077973" --sdk_root=$Env:ANDROID_SDK_ROOT
- name: Chocolatey
run: |
choco install --no-progress -y ninja
Expand Down
18 changes: 12 additions & 6 deletions .github/workflows/build-ios-mac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,37 +19,43 @@ on:
schedule:
- cron: 0 2 * * 1-5


concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
strategy:
matrix:
os: [macos-13, macos-15]
os: [macos-14, macos-15]
config: [release, debug]
simulator: ["'iPhone 15'", "'iPad Pro (11-inch) (4th generation)'", "'iPhone 16'", "'iPad Air 11-inch (M2)'"]
exclude:
- os: macos-13
- os: macos-14
simulator: "'iPhone 16'"
- os: macos-13
- os: macos-14
simulator: "'iPad Air 11-inch (M2)'"
- os: macos-15
simulator: "'iPhone 15'"
- os: macos-15
simulator: "'iPad Pro (11-inch) (4th generation)'"
runs-on: ${{ matrix.os }}
timeout-minutes: 30
env:
CMAKE_POLICY_VERSION_MINIMUM: "3.5"
steps:
- name: Grant write permissions to /usr/local
run: |
sudo chown -R $USER:staff /usr/local
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
submodules: 'true'
continue-on-error: true
- name: build
run: |
if [[ "${{ matrix.os }}" == "macos-13" ]]; then
export IOS_DEPLOYMENT_TARGET=13.0;
if [[ "${{ matrix.os }}" == "macos-14" ]]; then
export IOS_DEPLOYMENT_TARGET=14.0;
elif [[ "${{ matrix.os }}" == "macos-15" ]]; then
export IOS_DEPLOYMENT_TARGET=15.0;
fi
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/build-posix-latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,11 @@ on:
schedule:
- cron: 0 2 * * 1-5


concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:

Expand All @@ -32,7 +37,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v1
uses: actions/checkout@v4
continue-on-error: true
- name: Test ${{ matrix.os }} ${{ matrix.config }}
run: ./build-tests.sh ${{ matrix.config }}
7 changes: 6 additions & 1 deletion .github/workflows/build-ubuntu-2204.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,11 @@ on:
schedule:
- cron: 0 2 * * 1-5


concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:

Expand All @@ -32,7 +37,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v1
uses: actions/checkout@v4
continue-on-error: true
- name: Test ${{ matrix.os }} ${{ matrix.config }}
run: ./build-tests.sh ${{ matrix.config }}
2 changes: 1 addition & 1 deletion .github/workflows/build-windows-clang.yaml.off
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
steps:

- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
continue-on-error: true

- name: Setup Tools
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-windows-vs2017.yaml.off
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
steps:

- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
continue-on-error: true

- name: Setup Tools
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-windows-vs2022.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
steps:

- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
continue-on-error: true

- name: Build
Expand Down
18 changes: 11 additions & 7 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,11 @@ on:
schedule:
- cron: '0 8 * * 1'


concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
analyze:
name: Analyze
Expand All @@ -34,7 +39,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
continue-on-error: true

# Initializes the CodeQL tools for scanning.
Expand Down Expand Up @@ -87,7 +92,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
continue-on-error: true

- name: Update submodules
Expand All @@ -102,21 +107,20 @@ jobs:
languages: java

- name: Setup Java
uses: actions/setup-java@v3
uses: actions/setup-java@v5
with:
distribution: 'adopt'
java-version: '17'
- name: Remove default github maven configuration
run: rm $Env:USERPROFILE\.m2\settings.xml
- name: Setup Android SDK
uses: android-actions/setup-android@v2
uses: android-actions/setup-android@v3
- name: Install NDK
run: |
java -version
gci env:* | sort-object name
new-item "C:\Users\runneradmin\.android\repositories.cfg" -ItemType "file"
echo yes | .\sdkmanager.bat "ndk-bundle" "cmake;3.10.2.4988404" "ndk;27.0.12077973" --sdk_root=$Env:ANDROID_SDK_ROOT
working-directory: ${{ env.ANDROID_SDK_ROOT }}\cmdline-tools\7.0\bin
new-item "$Env:USERPROFILE\.android\repositories.cfg" -ItemType "file"
echo yes | sdkmanager "ndk-bundle" "cmake;3.10.2.4988404" "ndk;27.0.12077973" --sdk_root=$Env:ANDROID_SDK_ROOT
- name: Chocolatey
run: |
choco install --no-progress -y ninja
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/spellcheck.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,19 @@ on:
pull_request:
branches: [ master, main ]


concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-latest

steps:

- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
continue-on-error: true

- name: install misspell
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test-android-mac.yml.off
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
steps:

- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: true
depth: 1
Expand All @@ -42,7 +42,7 @@ jobs:
script: ./testandlog
- name: Upload
if: ${{ always() }}
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: logcat
path: ./lib/android_build/logcat.txt
111 changes: 111 additions & 0 deletions .github/workflows/test-vcpkg.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
name: Vcpkg port tests

on:
push:
branches:
- master
- main
- dev
- dev/*
- release/*
- buildme/*

pull_request:
branches:
- master
- main
- dev


concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
windows:
runs-on: windows-latest
name: Windows (x64-windows-static)
steps:
- uses: actions/checkout@v4

- name: Bootstrap vcpkg
run: |
git clone https://github.com/microsoft/vcpkg.git ${{ runner.temp }}\vcpkg
& "${{ runner.temp }}\vcpkg\bootstrap-vcpkg.bat" -disableMetrics
shell: pwsh

- name: Run vcpkg port test
run: .\tests\vcpkg\test-vcpkg-windows.ps1 -VcpkgRoot "${{ runner.temp }}\vcpkg"
shell: pwsh

linux:
runs-on: ubuntu-latest
name: Linux (x64-linux)
steps:
- uses: actions/checkout@v4

- name: Bootstrap vcpkg
run: |
git clone https://github.com/microsoft/vcpkg.git "${{ runner.temp }}/vcpkg"
"${{ runner.temp }}/vcpkg/bootstrap-vcpkg.sh" -disableMetrics

- name: Run vcpkg port test
env:
VCPKG_ROOT: ${{ runner.temp }}/vcpkg
run: |
chmod +x tests/vcpkg/test-vcpkg-linux.sh
./tests/vcpkg/test-vcpkg-linux.sh

macos:
runs-on: macos-latest
name: macOS (native)
steps:
- uses: actions/checkout@v4

- name: Bootstrap vcpkg
run: |
git clone https://github.com/microsoft/vcpkg.git "${{ runner.temp }}/vcpkg"
"${{ runner.temp }}/vcpkg/bootstrap-vcpkg.sh" -disableMetrics

- name: Run vcpkg port test
env:
VCPKG_ROOT: ${{ runner.temp }}/vcpkg
run: |
chmod +x tests/vcpkg/test-vcpkg-macos.sh
./tests/vcpkg/test-vcpkg-macos.sh

ios:
runs-on: macos-latest
name: iOS (arm64-ios cross-compile)
steps:
- uses: actions/checkout@v4

- name: Bootstrap vcpkg
run: |
git clone https://github.com/microsoft/vcpkg.git "${{ runner.temp }}/vcpkg"
"${{ runner.temp }}/vcpkg/bootstrap-vcpkg.sh" -disableMetrics

- name: Run vcpkg port test (device)
env:
VCPKG_ROOT: ${{ runner.temp }}/vcpkg
run: |
chmod +x tests/vcpkg/test-vcpkg-ios.sh
./tests/vcpkg/test-vcpkg-ios.sh

android:
runs-on: ubuntu-latest
name: Android (arm64-v8a cross-compile)
steps:
- uses: actions/checkout@v4

- name: Bootstrap vcpkg
run: |
git clone https://github.com/microsoft/vcpkg.git "${{ runner.temp }}/vcpkg"
"${{ runner.temp }}/vcpkg/bootstrap-vcpkg.sh" -disableMetrics

- name: Run vcpkg port test
env:
VCPKG_ROOT: ${{ runner.temp }}/vcpkg
run: |
chmod +x tests/vcpkg/test-vcpkg-android.sh
./tests/vcpkg/test-vcpkg-android.sh arm64-v8a
Loading
Loading