From 5970f60e334a0941afc4dc30510f9882acfe38aa Mon Sep 17 00:00:00 2001 From: nircoe Date: Sun, 27 Sep 2026 18:03:46 +0300 Subject: [PATCH 1/4] [Build]: Promote C++ standard to 23 --- CMakeLists.txt | 2 +- tests/CMakeLists.txt | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c197d4a..e3c5a1c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,7 +3,7 @@ project(datacoe VERSION 0.1.0 LANGUAGES CXX) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) option(BUILD_TESTS "Build the test suite" ON) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index a86666f..6ee5c3d 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -18,7 +18,7 @@ add_executable(all_tests ${TEST_FILES} ) -set_target_properties(all_tests PROPERTIES CXX_STANDARD 17) +set_target_properties(all_tests PROPERTIES CXX_STANDARD 23) target_include_directories(all_tests PRIVATE ${GTEST_INCLUDE_DIR} @@ -55,7 +55,7 @@ if(BUILD_INDIVIDUAL_TESTS) add_executable(${test_name} ${test_file}) # Set properties and include directories - set_target_properties(${test_name} PROPERTIES CXX_STANDARD 17) + set_target_properties(${test_name} PROPERTIES CXX_STANDARD 23) target_include_directories(${test_name} PRIVATE ${GTEST_INCLUDE_DIR} ${GMOCK_INCLUDE_DIR} From 34f59987eddbcd18f80247861f9517e166da84ad Mon Sep 17 00:00:00 2001 From: nircoe Date: Mon, 28 Sep 2026 18:44:13 +0300 Subject: [PATCH 2/4] Update docs --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 2651c78..a55922c 100644 --- a/README.md +++ b/README.md @@ -91,7 +91,7 @@ The library follows a layered architecture: ### Prerequisites - CMake 3.14 or higher -- C++17 compatible compiler +- C++23 compatible compiler - Git ### Build Steps @@ -363,7 +363,7 @@ Our CI pipeline automatically builds and tests the project with the following co - **macOS**: - Apple Clang -Each configuration compiles the project and runs the full test suite to verify compatibility and functionality. All supported platforms use C++17 features for maximum portability. +Each configuration compiles the project and runs the full test suite to verify compatibility and functionality. All supported platforms use C++23 features for maximum portability. Platform-specific code (such as file permissions handling) is wrapped in conditional compilation blocks to ensure proper behavior across different operating systems. From c9ea409ae9b16eb038acadc364797d98ba7f0e61 Mon Sep 17 00:00:00 2001 From: nircoe Date: Mon, 28 Sep 2026 18:48:54 +0300 Subject: [PATCH 3/4] Add refactor branch into CI --- .github/workflows/ci-linux.yml | 4 ++-- .github/workflows/ci-macos.yml | 4 ++-- .github/workflows/ci-windows.yml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci-linux.yml b/.github/workflows/ci-linux.yml index c89b976..5bb1c9d 100644 --- a/.github/workflows/ci-linux.yml +++ b/.github/workflows/ci-linux.yml @@ -2,10 +2,10 @@ name: Linux on: push: - branches: [ main ] + branches: [ main, refactor/generic_data ] pull_request: types: [ opened, synchronize, reopened, ready_for_review ] - branches: [ main ] + branches: [ main, refactor/generic_data ] jobs: build-and-test: diff --git a/.github/workflows/ci-macos.yml b/.github/workflows/ci-macos.yml index a24ffd0..715c761 100644 --- a/.github/workflows/ci-macos.yml +++ b/.github/workflows/ci-macos.yml @@ -2,10 +2,10 @@ name: macOS on: push: - branches: [ main ] + branches: [ main, refactor/generic_data ] pull_request: types: [ opened, synchronize, reopened, ready_for_review ] - branches: [ main ] + branches: [ main, refactor/generic_data ] jobs: build-and-test: diff --git a/.github/workflows/ci-windows.yml b/.github/workflows/ci-windows.yml index 2844df0..5270953 100644 --- a/.github/workflows/ci-windows.yml +++ b/.github/workflows/ci-windows.yml @@ -2,10 +2,10 @@ name: Windows on: push: - branches: [ main ] + branches: [ main, refactor/generic_data ] pull_request: types: [ opened, synchronize, reopened, ready_for_review ] - branches: [ main ] + branches: [ main, refactor/generic_data ] jobs: build-and-test: From 812837ad07affa325ad13b60981c226adf935161 Mon Sep 17 00:00:00 2001 From: nircoe Date: Mon, 28 Sep 2026 19:05:31 +0300 Subject: [PATCH 4/4] Remove unused colors from tester.cpp --- tests/tester.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/tests/tester.cpp b/tests/tester.cpp index d9d423e..507bf02 100644 --- a/tests/tester.cpp +++ b/tests/tester.cpp @@ -21,10 +21,6 @@ namespace color const std::string red = "\033[31m"; const std::string green = "\033[32m"; const std::string yellow = "\033[33m"; - const std::string blue = "\033[34m"; - const std::string magenta = "\033[35m"; - const std::string cyan = "\033[36m"; - const std::string white = "\033[37m"; const std::string bold = "\033[1m"; } // namespace color