Symlink-tolerant path filtering and related Boost.Capy fixes#1228
Merged
Conversation
The error-on-empty-corpus option compared the corpus against empty(), but the global namespace is always extracted and protected from pruning, so the corpus is never truly empty after a successful build, and the option never triggered.
✨ Highlights
🧾 Changes by Scope
🔝 Top Files
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## develop #1228 +/- ##
===========================================
+ Coverage 81.97% 83.16% +1.18%
===========================================
Files 34 35 +1
Lines 3179 3658 +479
Branches 743 843 +100
===========================================
+ Hits 2606 3042 +436
- Misses 392 409 +17
- Partials 181 207 +26
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
An automated preview of the documentation is available at https://1228.mrdocs.prtest2.cppalliance.org/index.html If more commits are pushed to the pull request, the docs will rebuild at the same URL. 2026-06-11 05:50:20 UTC |
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.
These are a few small, urgent fixes we needed for the Boost.Capy reference docs. The changes are small and simple. The main one is the exception: the fix is short, but the bug behind it was subtle, and figuring out what was going wrong took far longer than fixing it.
The compilation database was describing each file under the symlinked path, while MrDocs resolved paths to their real location. The path filters compared those two spellings literally, so nothing matched and the corpus was empty. The new policy is that inclusion is now generous (resolved path or as spelled) and exclusion stays strict (written path only).
Changes
error-on-empty-corpusoption now also accepts corpora of size 1 (global namespace only).makeRealPathandisResolvedSubpathOf.Typeslist mixes records and typedefs in the wrong order #1226).Testing
Unit tests for the new path functions. The other fixes are covered by the existing golden suites.
Documentation
The configuration help for the input and exclude filters now explicitly explains the policy.