Skip to content

feat(vcpkg): standardize vcpkg.json following ecosystem conventions#266

Merged
kcenon merged 4 commits into
mainfrom
feature/264-standardize-vcpkg-ecosystem-deps
Dec 29, 2025
Merged

feat(vcpkg): standardize vcpkg.json following ecosystem conventions#266
kcenon merged 4 commits into
mainfrom
feature/264-standardize-vcpkg-ecosystem-deps

Conversation

@kcenon

@kcenon kcenon commented Dec 29, 2025

Copy link
Copy Markdown
Owner

Summary

  • Standardize vcpkg.json following unified_system ecosystem conventions
  • Clarify spdlog relationship (benchmark comparison only, not core dependency)
  • Update README with vcpkg installation instructions

Changes

vcpkg.json Standardization

  • Rename package: loggersystemkcenon-logger-system
  • Add JSON schema for IDE validation
  • Add metadata: description, homepage, license (BSD-3-Clause), port-version, supports
  • Move spdlog to benchmarks feature (comparison only)
  • Add testing feature with gtest dependency
  • Add fmt with version constraint (>=10.0.0)

Documentation Updates

  • Add vcpkg installation commands with feature flags
  • Clarify spdlog is NOT used internally
  • Update fmt to required dependency with version
  • Update both English and Korean README
  • Note that ecosystem deps (common_system, thread_system) require CMake build until vcpkg registration

vcpkg Features

Feature Description
(default) Core logging with fmt
testing Unit tests with gtest/gmock
benchmarks Performance comparison (includes spdlog)

Blocked Dependencies

The following ecosystem dependencies will be added once registered in vcpkg:

Test Plan

  • Validate vcpkg.json JSON syntax
  • Verify documentation accuracy
  • CI builds pass

Closes #264
Related to #265

- Rename package from 'loggersystem' to 'kcenon-logger-system'
- Add JSON schema for IDE validation and autocompletion
- Add metadata: description, homepage, license, port-version, supports
- Add kcenon-common-system as required dependency
- Add 'async' feature with kcenon-thread-system dependency
- Move spdlog to 'benchmarks' feature (comparison only, not core)
- Add 'testing' feature with gtest dependency
- Add fmt with version constraint

Resolves #264
- Add vcpkg installation commands with feature flags
- Clarify that spdlog is NOT used internally (benchmark comparison only)
- Update fmt dependency to required with version constraint
- Add note explaining spdlog's role in both EN/KO README

Related to #264
- Remove kcenon-common-system and kcenon-thread-system from vcpkg.json
  (not yet registered in vcpkg registry, blocked by common_system#252)
- Remove async feature (depends on unregistered kcenon-thread-system)
- Update README to note ecosystem deps require CMake build for now
- Keep vcpkg.json standardization (schema, metadata, license, etc.)

These dependencies will be added once registered in vcpkg:
- kcenon-common-system (blocked by: kcenon/common_system#252)
- kcenon-thread-system (blocked by: kcenon/thread_system#348)
gtest@1.14.0 integrates gmock by default, separate feature no longer exists.
This fixes Windows CI build failure.
@kcenon kcenon merged commit be48128 into main Dec 29, 2025
29 checks passed
@kcenon kcenon deleted the feature/264-standardize-vcpkg-ecosystem-deps branch December 29, 2025 09:45
kcenon added a commit that referenced this pull request Apr 13, 2026
…266)

* feat(vcpkg): standardize vcpkg.json following ecosystem conventions

- Rename package from 'loggersystem' to 'kcenon-logger-system'
- Add JSON schema for IDE validation and autocompletion
- Add metadata: description, homepage, license, port-version, supports
- Add kcenon-common-system as required dependency
- Add 'async' feature with kcenon-thread-system dependency
- Move spdlog to 'benchmarks' feature (comparison only, not core)
- Add 'testing' feature with gtest dependency
- Add fmt with version constraint

Resolves #264

* docs: clarify spdlog role and add vcpkg installation guide

- Add vcpkg installation commands with feature flags
- Clarify that spdlog is NOT used internally (benchmark comparison only)
- Update fmt dependency to required with version constraint
- Add note explaining spdlog's role in both EN/KO README

Related to #264

* fix(vcpkg): remove unregistered ecosystem deps for CI compatibility

- Remove kcenon-common-system and kcenon-thread-system from vcpkg.json
  (not yet registered in vcpkg registry, blocked by common_system#252)
- Remove async feature (depends on unregistered kcenon-thread-system)
- Update README to note ecosystem deps require CMake build for now
- Keep vcpkg.json standardization (schema, metadata, license, etc.)

These dependencies will be added once registered in vcpkg:
- kcenon-common-system (blocked by: kcenon/common_system#252)
- kcenon-thread-system (blocked by: kcenon/thread_system#348)

* fix(vcpkg): remove gmock feature from gtest dependency

gtest@1.14.0 integrates gmock by default, separate feature no longer exists.
This fixes Windows CI build failure.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

vcpkg: Add ecosystem dependencies and clarify spdlog relationship

1 participant