refactor: merge samples/ into examples/ canonical directory#1094
Merged
Conversation
Consolidate the two parallel example trees into a single canonical examples/ directory, matching the ecosystem convention from Master EPIC #657 (pacs_system precedent). Merge map: - Move unique samples files (basic_usage, concepts_example, http2_server_example, memory_profile_demo, quic_client/server_example, simple_http_client/server) into examples/. - Move samples/messaging_system_integration/ and samples/migration/ subdirectories under examples/ preserving their READMEs. - Drop redundant samples files where examples/ already had a better facade-API equivalent (connection_pool_example, grpc_service_example, http_client_demo (deprecated API), run_all_samples, tcp_server_client (deprecated API), udp_echo_demo). Build flag consolidation: - Remove BUILD_SAMPLES option from root CMakeLists.txt and CMakePresets. - BUILD_EXAMPLES is now the single switch (default ON, since samples were ON by default and examples is the merged superset). - Update all CI workflows, install/build scripts, and Windows PowerShell install script to reference BUILD_EXAMPLES. examples/CMakeLists.txt: - Register the newly migrated targets, including the OpenSSL/network-quic link rules previously in samples/CMakeLists.txt for HTTP/2 and QUIC. Documentation: - README.md, README.kr.md, docs/PROJECT_STRUCTURE.{md,kr.md}, docs/README.kr.md, docs/FEATURES.md, docs/advanced/MIGRATION.md, docs/ARCHITECTURE_OVERVIEW.md, docs/guides/BUILD{,kr}.md updated to point at examples/ and BUILD_EXAMPLES. - examples/README.md rewritten to cover the merged superset and to remove the back-reference to samples/. Closes #1091
Contributor
Coverage Report
Coverage DetailsFull HTML report is available as a build artifact. |
This was referenced May 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1091
Summary
Consolidate the two parallel example trees (
samples/+examples/) into a single canonicalexamples/directory, matching the ecosystem convention from Master EPIC kcenon/common_system#657 (pacs_system precedent).Two parallel example trees confused newcomers ("which one is current?") and doubled maintenance cost when an API changed.
Merge map
After the merge, samples/ is removed and examples/ contains 22 .cpp files plus the two integration subdirectories.
Build flag consolidation
BUILD_SAMPLESremoved from root CMakeLists.txt, CMakePresets.json, scripts, CI workflows, install scripts, and docs.BUILD_EXAMPLESis now the single switch with default ON (samples were ON by default; examples is the merged superset).-DBUILD_SAMPLES=*to-DBUILD_EXAMPLES=*(CI explicitly sets OFF since the new default would otherwise pull examples in).network-quiclink rules previously living in samples/CMakeLists.txt (HTTP/2, QUIC examples).Documentation
Updated to reference examples/ instead of samples/ and BUILD_EXAMPLES instead of BUILD_SAMPLES:
CHANGELOG entries are historical record and intentionally not rewritten.
Test Plan
cmake -DBUILD_EXAMPLES=ONconfigures and builds; new examples (basic_usage, concepts_example, http2_server_example, memory_profile_demo, quic_example, simple_http) all compile through their dedicated targets.BUILD_EXAMPLES=OFF).Verification