Skip to content

Conversation

@konard
Copy link
Member

@konard konard commented Sep 11, 2025

🎯 Summary

This PR implements Conan package support for Platform.Data.Doublets, enabling it to be published as a Conan package as requested in issue #394.

📋 Issue Reference

Fixes #394

🔧 Implementation Details

Added Files:

  • cpp/conanfile.py: Main Conan recipe defining package metadata, dependencies, and build configuration
  • cpp/CONAN_README.md: Documentation for using the Conan package
  • examples/validate_conan_package.py: Validation script to test package structure

Modified Files:

  • cpp/CMakeLists.txt: Added install targets required for proper Conan packaging
  • cpp/conanfile.txt: Added missing platform.setters/0.1.0 dependency

Package Configuration:

  • Name: platform.data.doublets
  • Version: 0.1.0
  • Type: Header-only C++ library
  • C++ Standard: C++20

Dependencies:

The package includes all required Platform libraries:

  • platform.interfaces (0.3.41)
  • platform.collections.methods (0.3.0)
  • platform.collections (0.2.1)
  • platform.numbers (0.1.0)
  • platform.memory (0.1.0)
  • platform.exceptions (0.3.2)
  • platform.data (0.1.1)
  • platform.setters (0.1.0)
  • platform.ranges (0.2.0)
  • mio (cci.20201220)

Package Options:

  • tests: Build tests (default: False)
  • benchmarks: Build benchmarks (default: False)
  • shared: Build shared library (default: False)
  • fPIC: Position independent code (default: True)

✅ Validation

The implementation includes a validation script that confirms:

  • ✅ conanfile.py structure is valid
  • ✅ CMakeLists.txt has required Conan elements
  • ✅ Found 102 header files for packaging

🚀 Usage

Once published, users can consume the package by adding to their conanfile.txt:

[requires]
platform.data.doublets/0.1.0

[generators]
CMakeDeps
CMakeToolchain

Or using CMake:

find_package(Platform.Data.Doublets REQUIRED)
target_link_libraries(your_target Platform.Data.Doublets::Platform.Data.Doublets.Library)

🧪 Testing

The implementation was validated using the included validation script which passed all checks.


🤖 Generated with Claude Code

Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #394
@konard konard self-assigned this Sep 11, 2025
konard and others added 2 commits September 11, 2025 10:09
- Add conanfile.py with proper dependencies and configuration
- Update CMakeLists.txt with install targets for Conan packaging
- Add missing platform.setters dependency to conanfile.txt
- Create validation script for testing package structure
- Add CONAN_README.md with usage documentation

This enables Platform.Data.Doublets to be published as a Conan package
as requested in issue #394.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
@konard konard changed the title [WIP] Publish all packages to conan Add Conan package support for Platform.Data.Doublets Sep 11, 2025
@konard konard marked this pull request as ready for review September 11, 2025 07:14
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.

Publish all packages to conan

2 participants