Skip to content

Standardize vcpkg.json following ecosystem conventions #203

Description

@kcenon

Summary

Standardize vcpkg.json to follow the unified_system ecosystem conventions established in common_system.

Parent Epic

Part of kcenon/common_system#251 (Epic: vcpkg.json Standardization Across Unified System Ecosystem)

Current Issues

Field Current Expected
name container-system kcenon-container-system
$schema missing add
port-version missing add (0)
supports missing add "!(uwp | xbox)"
homepage missing add
benchmark in dependencies default dep move to testing feature
kcenon-common-system dependency missing add

Required Changes

  1. Package name: container-systemkcenon-container-system
  2. Add: $schema, port-version, supports, homepage fields
  3. Move: benchmark from default dependencies to testing feature
  4. Add: kcenon-common-system as ecosystem dependency
  5. Rename: tests feature to testing for consistency

vcpkg.json Template

{
  "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json",
  "name": "kcenon-container-system",
  "version": "2.0.0",
  "port-version": 0,
  "description": "Thread-safe serializable container library with advanced features",
  "homepage": "https://github.com/kcenon/container_system",
  "license": "BSD-3-Clause",
  "supports": "!(uwp | xbox)",
  "dependencies": [
    "kcenon-common-system"
  ],
  "features": {
    "testing": {
      "description": "Build unit tests and benchmarks",
      "dependencies": [
        { "name": "gtest", "features": ["gmock"] },
        "benchmark"
      ]
    },
    "fmt-support": {
      "description": "Use fmt library for formatting (fallback for compilers without std::format)",
      "dependencies": ["fmt"]
    }
  }
}

Acceptance Criteria

  • vcpkg.json follows ecosystem standard template
  • README reflects correct C++ standard and dependencies
  • vcpkg manifest mode build succeeds

Metadata

Metadata

Assignees

Labels

architectureArchitectural changes and design

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions