fix(MacOS CI): enable run on Mac OS#874
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #874 +/- ##
=========================================
Coverage 80.21% 80.21%
Complexity 615 615
=========================================
Files 93 93
Lines 10255 10255
Branches 1049 1049
=========================================
Hits 8226 8226
Misses 1789 1789
Partials 240 240
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
087f998 to
22d7106
Compare
|
|
|
fix: #873 |
| set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) | ||
| include_directories(${CMAKE_CURRENT_SOURCE_DIR}) | ||
| add_library(${PROJECT_NAME} INTERFACE) | ||
| target_compile_features(${PROJECT_NAME} INTERFACE cxx_std_17) |
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
…n Apache-Arrow version
There was a problem hiding this comment.
Pull request overview
This PR enables macOS CI builds by introducing dynamic C++ standard selection based on Apache Arrow version. The main issue being addressed is that Arrow 23.0.0+ requires C++20, while earlier versions can use C++17. The changes make the C++ standard configurable and automatically adapt to the Arrow version being used.
Changes:
- Introduced
GAR_CXX_STANDARDvariable (default 17) that dynamically updates to 20 when Arrow >= 23.0.0 is detected or built - Removed hardcoded
-std=c++17from CMAKE_CXX_FLAGS and interface library target features, replaced with per-targetcxx_std_${GAR_CXX_STANDARD}configuration - Added
brew list --versionsto macOS CI workflow for better debugging visibility
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| cpp/CMakeLists.txt | Introduces GAR_CXX_STANDARD variable and dynamic C++ standard selection based on Arrow version; updates all target_compile_features to use the variable; removes hardcoded C++17 flags |
| .github/workflows/ci.yml | Adds brew package version listing for debugging in macOS CI |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Jason <libevent@yeah.net>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Jason <libevent@yeah.net>
Signed-off-by: syaojun <libevent@yeah.net>
* fix(CI): Enable CI run success on Mac OS, change C++ standard based on Apache-Arrow version * Update cpp/CMakeLists.txt Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Jason <libevent@yeah.net> * Update cpp/CMakeLists.txt Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Jason <libevent@yeah.net> * chore: remove unnecessary comments Signed-off-by: syaojun <libevent@yeah.net> --------- Signed-off-by: Jason <libevent@yeah.net> Signed-off-by: syaojun <libevent@yeah.net> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Reason for this PR
What changes are included in this PR?
Are these changes tested?
Are there any user-facing changes?