2 Commits

Author SHA1 Message Date
leftibot
92abd226a9
Fix #660: Windows builds are broken (#661)
* Fix #660: Fix Windows builds, remove Appveyor, add sanitizer CI builds

Add missing #include <chrono> to src/main.cpp which caused MSVC build
failures since high_resolution_clock and duration_cast were used without
the header (GCC/Clang included it transitively). Remove obsolete
appveyor.yml (superseded by GitHub Actions). Add ASAN+UBSAN build
jobs for Linux and macOS in the CI workflow.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Address review: add Windows ASAN+UBSAN sanitizer support

- Add MSVC-native ASAN support in CMakeLists.txt (/fsanitize=address)
  with /RTC removal and /INCREMENTAL:NO (both incompatible with ASAN)
- Add Windows MSVC ASAN CI job
- Add Windows ClangCL ASAN+UBSAN CI job (UBSAN requires Clang, not
  available in native MSVC)
- Fix sanitizer guard to include AppleClang (macOS sanitizer jobs were
  silently not enabling sanitizers)

Requested by @lefticus in PR #661 review.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Address review: remove Windows sanitizers, add TSAN for Linux/macOS

Remove windows-sanitizers and windows-clangcl-sanitizers CI jobs.
Add linux-tsan and macos-tsan CI jobs using ENABLE_THREAD_SANITIZER.

Requested by @lefticus in PR #661 review.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: leftibot <leftibot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 15:06:33 -06:00
leftibot
bc771ab8ba
[WIP] Issue #615 — Switch to GitHub Actions (#658)
* Fix #615: Switch from Travis CI to GitHub Actions

Add a GitHub Actions CI workflow with a full build matrix covering
linux, macOS, and Windows with both GCC and Clang compilers, Debug
and Release build types, and optional ASan+UBSan sanitizers (24 builds
total). Windows builds use MSYS2 for GCC/Clang toolchains. The workflow
relies on CMake and CTest to drive configuration, building, and testing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Address review: use native compilers, remove MSYS/MinGW

Use Visual Studio (MSVC) on Windows, Apple Clang on macOS, and GCC on
Linux. Remove MSYS2/MinGW toolchain setup entirely. Split into three
separate jobs for clarity. Fix workflow validation issues.

Requested by @lefticus in PR #658 review.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Address review: add workflow_dispatch to enable manual CI runs on fork

Add workflow_dispatch trigger so the workflow can be manually run on the
leftibot fork to verify that GitHub Actions are working correctly.

Requested by @lefticus in PR #658 review.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: leftibot <leftibot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 13:40:04 -06:00