From db7708b943f7ed4ca2169b99641ad3b65dba398f Mon Sep 17 00:00:00 2001 From: nircoe Date: Sun, 27 Sep 2026 17:19:49 +0300 Subject: [PATCH] [Build]: Promote C++ standard to 23 --- CMakeLists.txt | 4 ++-- README.md | 10 +++++----- docs/ARCHITECTURE.md | 2 +- docs/CONTRIBUTING.md | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index aca8234..777f3f6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.14) +cmake_minimum_required(VERSION 3.22) project(logcoe VERSION 0.1.0 LANGUAGES CXX) if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) @@ -6,7 +6,7 @@ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) endif() set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) add_library(logcoe STATIC src/logcoe.cpp) diff --git a/README.md b/README.md index 331a1e7..2a9a548 100644 --- a/README.md +++ b/README.md @@ -20,8 +20,8 @@ logcoe is a lightweight, thread-safe C++ logging library designed for high-perfo Perfect for applications requiring reliable logging across multiple threads with customizable output destinations. ## Dependencies -- **C++17 or later** - Modern C++ standard support -- **CMake 3.14+** - Build system +- **C++23 or later** - Modern C++ standard support +- **CMake 3.22+** - Build system ## Quick Start @@ -96,7 +96,7 @@ int main() { - **High Performance** - Minimal overhead with optional flushing control - **Customizable** - Configurable time formats and output streams - **Dynamic Configuration** - Change settings during runtime -- **Zero Dependencies** - Header-only public API, pure C++17 +- **Zero Dependencies** - Header-only public API, pure C++23 - **Cross-Platform** - Windows, Linux, macOS support ## API Reference @@ -194,8 +194,8 @@ int main() { ## Requirements -- **Compiler**: C++17 compatible (GCC 7+, Clang 5+, MSVC 2017+) -- **Build System**: CMake 3.14+ +- **Compiler**: C++23 compatible +- **Build System**: CMake 3.22+ - **Platforms**: Windows, Linux, macOS ## Performance Considerations diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 2154d6d..48885de 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -163,7 +163,7 @@ std::tm tm_now; ### Build System Integration - **CMake**: FetchContent compatible -- **Compiler Support**: C++17 standard requirements +- **Compiler Support**: C++23 standard requirements - **Library Type**: Static library ## Release Build Stripping diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index b6bd463..a55f8f7 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -5,8 +5,8 @@ Thank you for your interest in contributing to logcoe! ## Development Setup ### Prerequisites -- CMake 3.14+ -- C++17 compatible compiler +- CMake 3.22+ +- C++23 compatible compiler - Git ### Building from Source