Skip to content

Commit d4acb14

Browse files
committed
Rename repository to slick-logger; update version to 1.0.4; refactor CMake and documentation; adjust CI and release workflows
1 parent 762b444 commit d4acb14

File tree

16 files changed

+115
-95
lines changed

16 files changed

+115
-95
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,5 +35,5 @@ jobs:
3535
if: matrix.build_type == 'Release' && matrix.os == 'ubuntu-latest'
3636
uses: actions/upload-artifact@v4
3737
with:
38-
name: slick_logger-package
38+
name: slick-logger-package
3939
path: build/dist/*.zip

.github/workflows/release.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ jobs:
4444
4545
- name: Create header archive
4646
run: |
47-
zip -r ./slick_logger-${{ steps.get_version.outputs.VERSION }}.zip include/
47+
zip -r ./slick-logger-${{ steps.get_version.outputs.VERSION }}.zip include/
48+
tar -czf ./slick-logger-${{ steps.get_version.outputs.VERSION }}.tar.gz include/
4849
4950
- name: Create Release
5051
uses: softprops/action-gh-release@v1
@@ -59,4 +60,5 @@ jobs:
5960
prerelease: false
6061
generate_release_notes: false
6162
files: |
62-
slick_logger-${{ steps.get_version.outputs.VERSION }}.zip
63+
slick-logger-${{ steps.get_version.outputs.VERSION }}.zip
64+
slick-logger-${{ steps.get_version.outputs.VERSION }}.tar.gz

BENCHMARK_SETUP.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ This guide helps you build and run the comprehensive benchmark suite to compare
88

99
```bash
1010
# Clone the repository
11-
git clone https://github.com/SlickQuant/slick_logger.git
12-
cd slick_logger
11+
git clone https://github.com/SlickQuant/slick-logger.git
12+
cd slick-logger
1313

1414
# Create build directory
1515
mkdir build && cd build

CHANGELOG

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
# v1.0.4 - 01-11-2026
2+
- Updated to slick-queue v1.2.2
3+
- Try find slick-queue using CONFIG mode first before falling back to fetching it manually
4+
- Renamed repository from slick_logger to slick-logger (hyphenated naming follows recommended convention)
5+
- Changed export name from slick::slick_logger to slick::logger
6+
- Refactored repository name in CMake configuration files
7+
- Updated documentation and build references to use new repository name
8+
19
# v1.0.3 - 01-08-2026
210
- Fix crash when logging empty string_view values
311
- Add length check before memcpy in store_string_in_queue() to handle empty strings safely

CMakeLists.txt

Lines changed: 37 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,27 @@
11
cmake_minimum_required(VERSION 3.20)
22

3-
project(slick_logger
4-
VERSION 1.0.3
3+
project(slick-logger
4+
VERSION 1.0.4
55
LANGUAGES CXX)
66

77
set(CMAKE_CXX_STANDARD 20)
88
set(CMAKE_CXX_STANDARD_REQUIRED ON)
99

10-
include(FetchContent)
10+
find_package(slick-queue 1.2.2 CONFIG QUIET)
1111

12-
# Disable tests for slick_queue
13-
set(BUILD_SLICK_QUEUE_TESTS OFF CACHE BOOL "" FORCE)
14-
FetchContent_Declare(
15-
slick_queue
16-
GIT_REPOSITORY https://github.com/SlickQuant/slick_queue.git
17-
GIT_TAG v1.2.1
18-
)
19-
FetchContent_MakeAvailable(slick_queue)
12+
if (NOT slick-queue_FOUND)
13+
message(STATUS "Fetching slick-queue...")
14+
include(FetchContent)
15+
16+
# Disable tests for slick_queue
17+
set(BUILD_SLICK_QUEUE_TESTS OFF CACHE BOOL "" FORCE)
18+
FetchContent_Declare(
19+
slick-queue
20+
GIT_REPOSITORY https://github.com/SlickQuant/slick-queue.git
21+
GIT_TAG v1.2.2
22+
)
23+
FetchContent_MakeAvailable(slick-queue)
24+
endif()
2025

2126
set(WARNING_MESSAGE "// ********** THIS FILE IS AUTO-GENERATED FROM src/logger.hpp **********
2227
// ********** DO NOT EDIT THIS FILE DIRECTLY **********
@@ -36,13 +41,18 @@ if (CMAKE_BUILD_TYPE MATCHES Release)
3641
endif()
3742

3843
# Add header-only library
39-
add_library(slick_logger INTERFACE)
40-
add_library(slick::slick_logger ALIAS slick_logger)
41-
target_include_directories(slick_logger INTERFACE
44+
add_library(slick-logger INTERFACE)
45+
add_library(slick::logger ALIAS slick-logger)
46+
# For backward compatibility with older versions
47+
add_library(slick_logger ALIAS slick-logger)
48+
add_library(slick::slick_logger ALIAS slick-logger)
49+
50+
target_include_directories(slick-logger INTERFACE
4251
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
4352
$<INSTALL_INTERFACE:include>
4453
)
45-
target_link_libraries(slick_logger INTERFACE slick::slick_queue)
54+
set_target_properties(slick-logger PROPERTIES EXPORT_NAME logger)
55+
target_link_libraries(slick-logger INTERFACE slick::queue)
4656

4757
if (MSVC)
4858
set(CMAKE_CXX_FLAGS_RELEASE "-O2")
@@ -71,35 +81,35 @@ endif()
7181
install(DIRECTORY include/ DESTINATION include)
7282

7383
# Install CMake package configuration files for vcpkg
74-
install(TARGETS slick_logger EXPORT slick_loggerTargets)
84+
install(TARGETS slick-logger EXPORT slick-loggerTargets)
7585

76-
install(EXPORT slick_loggerTargets
77-
FILE slick_loggerTargets.cmake
86+
install(EXPORT slick-loggerTargets
87+
FILE slick-loggerTargets.cmake
7888
NAMESPACE slick::
79-
DESTINATION lib/cmake/slick_logger
89+
DESTINATION lib/cmake/slick-logger
8090
)
8191

8292
include(CMakePackageConfigHelpers)
8393

8494
# Generate the config file
8595
configure_package_config_file(
86-
${CMAKE_CURRENT_SOURCE_DIR}/cmake/slick_loggerConfig.cmake.in
87-
${CMAKE_CURRENT_BINARY_DIR}/slick_loggerConfig.cmake
88-
INSTALL_DESTINATION lib/cmake/slick_logger
96+
${CMAKE_CURRENT_SOURCE_DIR}/cmake/slick-loggerConfig.cmake.in
97+
${CMAKE_CURRENT_BINARY_DIR}/slick-loggerConfig.cmake
98+
INSTALL_DESTINATION lib/cmake/slick-logger
8999
)
90100

91101
# Generate version file
92102
write_basic_package_version_file(
93-
${CMAKE_CURRENT_BINARY_DIR}/slick_loggerConfigVersion.cmake
103+
${CMAKE_CURRENT_BINARY_DIR}/slick-loggerConfigVersion.cmake
94104
VERSION ${PROJECT_VERSION}
95105
COMPATIBILITY SameMajorVersion
96106
)
97107

98108
# Install config files
99109
install(FILES
100-
${CMAKE_CURRENT_BINARY_DIR}/slick_loggerConfig.cmake
101-
${CMAKE_CURRENT_BINARY_DIR}/slick_loggerConfigVersion.cmake
102-
DESTINATION lib/cmake/slick_logger
110+
${CMAKE_CURRENT_BINARY_DIR}/slick-loggerConfig.cmake
111+
${CMAKE_CURRENT_BINARY_DIR}/slick-loggerConfigVersion.cmake
112+
DESTINATION lib/cmake/slick-logger
103113
)
104114

105-
message(STATUS "slick_logger: ${PROJECT_VERSION}")
115+
message(STATUS "slick-logger: ${PROJECT_VERSION}")

README.md

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
# slick_logger
1+
# slick-logger
22

33
[![C++20](https://img.shields.io/badge/C%2B%2B-20-blue.svg)](https://en.cppreference.com/w/cpp/20)
44
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
55
[![Header-only](https://img.shields.io/badge/header--only-yes-brightgreen.svg)](#installation)
66
[![Lock-free](https://img.shields.io/badge/concurrency-lock--free-orange.svg)](#architecture)
7-
[![CI](https://github.com/SlickQuant/slick_logger/actions/workflows/ci.yml/badge.svg)](https://github.com/SlickQuant/slick_logger/actions/workflows/ci.yml)
8-
[![GitHub release](https://img.shields.io/github/v/release/SlickQuant/slick_logger)](https://github.com/SlickQuant/slick_logger/releases)
7+
[![CI](https://github.com/SlickQuant/slick-logger/actions/workflows/ci.yml/badge.svg)](https://github.com/SlickQuant/slick-logger/actions/workflows/ci.yml)
8+
[![GitHub release](https://img.shields.io/github/v/release/SlickQuant/slick-logger)](https://github.com/SlickQuant/slick-logger/releases)
99

1010
A high-performance, cross-platform **header-only** logging library for C++20 using a multi-producer, multi-consumer ring buffer with **multi-sink support** and **log rotation** capabilities.
1111

@@ -31,11 +31,11 @@ A high-performance, cross-platform **header-only** logging library for C++20 usi
3131
## Installation
3232

3333
### Option 1: Direct Copy
34-
For manual installation, you need both slick_logger and its dependency:
34+
For manual installation, you need both slick-logger and its dependency:
3535

3636
1. Copy the `include/slick/` directory to your project
37-
2. Download `queue.h` from https://raw.githubusercontent.com/SlickQuant/slick_queue/main/include/slick/queue.h
38-
3. Place `queue.h` in your include path or alongside the slick_logger headers
37+
2. Download `queue.h` from https://raw.githubusercontent.com/SlickQuant/slick-queue/main/include/slick/queue.h
38+
3. Place `queue.h` in your include path or alongside the slick-logger headers
3939

4040
Your project structure should look like:
4141
```
@@ -62,25 +62,25 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
6262
6363
include(FetchContent)
6464
65-
# Disable examples, tests, and benchmarks for slick_logger
65+
# Disable examples, tests, and benchmarks for slick-logger
6666
set(BUILD_SLICK_LOGGER_EXAMPLES OFF CACHE BOOL "" FORCE)
6767
set(BUILD_SLICK_LOGGER_TESTING OFF CACHE BOOL "" FORCE)
6868
set(BUILD_SLICK_LOGGER_BENCHMARKS OFF CACHE BOOL "" FORCE)
6969
7070
FetchContent_Declare(
71-
slick_logger
72-
GIT_REPOSITORY https://github.com/SlickQuant/slick_logger.git
71+
slick-logger
72+
GIT_REPOSITORY https://github.com/SlickQuant/slick-logger.git
7373
GIT_TAG main
7474
)
7575
76-
FetchContent_MakeAvailable(slick_logger)
76+
FetchContent_MakeAvailable(slick-logger)
7777
7878
add_executable(your_app main.cpp)
79-
target_link_libraries(your_app slick_logger)
79+
target_link_libraries(your_app slick::logger)
8080
```
8181

8282
#### Using find_package
83-
If you've installed slick_logger system-wide:
83+
If you've installed slick-logger system-wide:
8484

8585
```cmake
8686
cmake_minimum_required(VERSION 3.20)
@@ -89,10 +89,10 @@ project(your_project)
8989
set(CMAKE_CXX_STANDARD 20)
9090
set(CMAKE_CXX_STANDARD_REQUIRED ON)
9191
92-
find_package(slick_logger REQUIRED)
92+
find_package(slick-logger REQUIRED)
9393
9494
add_executable(your_app main.cpp)
95-
target_link_libraries(your_app slick_logger)
95+
target_link_libraries(your_app slick::logger)
9696
```
9797

9898
#### Manual Integration
@@ -103,8 +103,8 @@ project(your_project)
103103
set(CMAKE_CXX_STANDARD 20)
104104
set(CMAKE_CXX_STANDARD_REQUIRED ON)
105105
106-
# Add slick_logger include directory
107-
include_directories(path/to/slick_logger/include, path/to/slick_queue/include)
106+
# Add slick-logger include directory
107+
include_directories(path/to/slick-logger/include, path/to/slick-queue/include)
108108
109109
add_executable(your_app main.cpp)
110110
```
@@ -135,7 +135,7 @@ int main() {
135135

136136
### String Formatting with std::format
137137

138-
slick_logger uses C++20's `std::format` for type-safe and efficient string formatting:
138+
slick-logger uses C++20's `std::format` for type-safe and efficient string formatting:
139139

140140
```cpp
141141
#include <slick/logger.hpp>

benchmarks/CMakeLists.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,11 @@ endif()
4747

4848
# Simple working benchmark
4949
add_executable(simple_benchmark simple_benchmark.cpp)
50-
target_link_libraries(simple_benchmark slick_logger spdlog::spdlog fmt::fmt)
50+
target_link_libraries(simple_benchmark slick::logger spdlog::spdlog fmt::fmt)
5151

5252
# Quick benchmark for testing
5353
add_executable(quick_benchmark quick_benchmark.cpp)
54-
target_link_libraries(quick_benchmark slick_logger spdlog::spdlog fmt::fmt)
54+
target_link_libraries(quick_benchmark slick::logger spdlog::spdlog fmt::fmt)
5555

5656
# Main benchmark executable
5757
add_executable(slick_logger_benchmark
@@ -62,7 +62,7 @@ add_executable(slick_logger_benchmark
6262
)
6363

6464
target_link_libraries(slick_logger_benchmark
65-
slick_logger
65+
slick::logger
6666
benchmark_utils
6767
${SPDLOG_LIBRARIES}
6868
${FMT_LIBRARIES}
@@ -85,21 +85,21 @@ endif()
8585
# Individual micro-benchmarks
8686
add_executable(latency_benchmark latency_benchmark.cpp)
8787
target_link_libraries(latency_benchmark
88-
slick_logger
88+
slick::logger
8989
benchmark_utils
9090
${SPDLOG_LIBRARIES}
9191
)
9292

9393
add_executable(throughput_benchmark throughput_benchmark.cpp)
9494
target_link_libraries(throughput_benchmark
95-
slick_logger
95+
slick::logger
9696
benchmark_utils
9797
${SPDLOG_LIBRARIES}
9898
)
9999

100100
add_executable(memory_benchmark memory_benchmark.cpp)
101101
target_link_libraries(memory_benchmark
102-
slick_logger
102+
slick::logger
103103
benchmark_utils
104104
${SPDLOG_LIBRARIES}
105105
)

benchmarks/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ This benchmark suite provides detailed performance analysis across multiple dime
3434
```bash
3535
# Clone and build with benchmarks enabled
3636
git clone <your-repo-url>
37-
cd slick_logger
37+
cd slick-logger
3838
mkdir build && cd build
3939

4040
# Enable benchmarks during cmake configuration

benchmarks/benchmark_main.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ class BenchmarkScenario {
9393
class SlickLoggerScenario : public BenchmarkScenario {
9494
public:
9595
SlickLoggerScenario(MessageSize msg_size = MessageSize::SMALL)
96-
: BenchmarkScenario("slick_logger"), msg_size_(msg_size) {}
96+
: BenchmarkScenario("slick-logger"), msg_size_(msg_size) {}
9797

9898
void setup() override {
9999
slick::logger::Logger::instance().reset();

benchmarks/latency_benchmark.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ void measure_slick_logger_latency() {
152152
analyzer.add_measurement(
153153
std::chrono::duration_cast<std::chrono::nanoseconds>(start.time_since_epoch()).count(),
154154
std::chrono::duration_cast<std::chrono::nanoseconds>(end.time_since_epoch()).count(),
155-
"slick_logger"
155+
"slick-logger"
156156
);
157157
}
158158

0 commit comments

Comments
 (0)