Skip to content

Move source files and header files under namespace directories - #469

Merged
jbcoe merged 3 commits into
mainfrom
push-qymuqvmnmpnv
Oct 11, 2026
Merged

jbcoe merged 3 commits into
mainfrom
push-qymuqvmnmpnv

Conversation

@jbcoe

@jbcoe jbcoe commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Headers, tests and tutorials move under xyz/, and each directory's contents
live in the matching namespace, with xyz/detail in xyz::detail and
xyz/tests in xyz::tests. Includes are written from the repository root, so
consumers of the installed package include xyz/protocol.hh.

The xyz::reflection namespace is removed and protocol, protocol_view and
the rest of the public API are now in xyz. The name-mangling helpers, the
interface concepts and the is_protocol/is_protocol_view traits move into
xyz::detail and are no longer public.

Closes #470.
Closes #471.
Closes #472.
Closes #473.

@jbcoe
jbcoe marked this pull request as draft October 10, 2026 20:49
@codecov

codecov Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.95%. Comparing base (e9b02f5) to head (72bea8e).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #469      +/-   ##
==========================================
+ Coverage   93.54%   94.95%   +1.41%     
==========================================
  Files          11        9       -2     
  Lines         836      793      -43     
  Branches       41       25      -16     
==========================================
- Hits          782      753      -29     
  Misses         26       26              
+ Partials       28       14      -14     
Flag Coverage Δ
consteval 90.15% <ø> (ø)
runtime 97.21% <ø> (+2.19%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jbcoe
jbcoe force-pushed the push-qymuqvmnmpnv branch 2 times, most recently from 985d5d8 to ef43fca Compare October 10, 2026 21:29
@jbcoe jbcoe changed the title Move implementation headers to detail/ and tests to tests/ Move source files and header files under namespaced directories Oct 10, 2026
@jbcoe jbcoe changed the title Move source files and header files under namespaced directories Move source files and header files under namespace directories Oct 10, 2026
@jbcoe
jbcoe force-pushed the push-qymuqvmnmpnv branch from ef43fca to 04fe8af Compare October 10, 2026 21:42
@jbcoe
jbcoe force-pushed the push-qymuqvmnmpnv branch from 04fe8af to 72bea8e Compare October 10, 2026 21:44
@jbcoe
jbcoe marked this pull request as ready for review October 10, 2026 22:01
@jbcoe
jbcoe requested review from RyanJK5 and philipcraig October 10, 2026 22:01
@jbcoe

jbcoe commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner Author

This just re-org and cleanup. Adding you both (@philipcraig , @RyanJK5 ) as reviewers to catch any work in flight.

Comment thread scripts/consteval_coverage.py Outdated
Comment thread BUILD.bazel
Comment thread xyz/tutorials/03_reflection.cc Outdated
- Put the detail headers in a :detail Bazel target that the tests depend on
  directly, rather than private headers of :protocol.
- Find the coverage script's headers with one recursive glob under xyz/ and
  create each destination directory as files are copied, so any translation
  unit can be probed.
- Move consteval_check.h, shared by tests and tutorials, to xyz/testing.
The tutorials include only consteval_check.h; .bazelrc already enables
-freflection for every target.
@jbcoe
jbcoe enabled auto-merge (squash) October 11, 2026 17:13
@jbcoe
jbcoe merged commit a64f4d0 into main Oct 11, 2026
50 checks passed
@jbcoe
jbcoe deleted the push-qymuqvmnmpnv branch October 11, 2026 17:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants